pdf-icon

StamPLC コントローラー Home Assistant 連携ガイド

このガイドでは、IoT プログラマブルロジックコントローラー StamPLC を Home Assistant に連携させる方法について説明します。

Note
ESPHome コミュニティコントリビューター @Beormund による設定ファイルのご提供に深く感謝いたします。詳細については https://github.com/Beormund/esphome-m5stamplc をご参照ください。

必要なもの

  • Home Assistant ホスト。
  • Home Assistant への ESPHome Builder のインストールと有効化。

クイックスタート

下のボタンをクリックすることで、ファームウェアのワンクリック書き込みが完了します。画面の指示に従って設定を行うことで、StamPLC を Home Assistant に接続してすぐにお試しいただけます。

ご注意

  • 本チュートリアルでは、ESPHome 2025.10.3 でコンパイルおよびアップロードを行っています。コンパイル / アップロードに問題が発生した場合は、ESPHome をこのバージョンに切り替えることをご検討ください。

デバイスの追加

  1. Home Assistant で ESPHome Builder を開き、空の設定ファイルを作成します。

    • 右下の NEW DEVICE ボタンをクリックします。

    • ダイアログで CONTINUE をクリックします。

    • Empty Configuration を選択します。

    • ファイル名を入力します(任意)。

    • 新しく作成された設定ファイルの EDIT をクリックします。

  2. configurations.yaml の内容を設定ファイルにコピーします。

  3. 必要に応じてネットワーク設定や API 情報を変更します。たとえば、認証用の API Encryption Key を作成する場合は以下のように設定します:

yaml
1 2 3
api:
  encryption:
    key: "Your_Encryption_Key"
ヒント
Key が必要な場合は、native api にアクセスして生成できます(encryption セクションを参照)。

または、タイムゾーン設定を変更する場合:

yaml
1
timezone: Europe/London

適切なタイムゾーンに変更します:

yaml
1
timezone: Asia/Shanghai
  1. 右上の SAVEINSTALL を順にクリックし、Manual download を選択します。

コードが生成され、プロジェクトのコンパイルが開始されます。

ヒント
初回コンパイル時は、Home Assistant ホストの性能やネットワーク環境によっては、完了までに時間がかかる場合があります。
  1. コンパイルが完了したら、Factory format を選択してファームウェアをダウンロードします。

ファームウェアのダウンロードと書き込み

  1. ファームウェアのダウンロード:ESPHome Builder の Manual download を使用して Factory Format のファームウェアをダウンロードします。

  2. Web ツールを使用してファームウェアを書き込みます:

    • ブラウザを開き、ESPHome Web にアクセスしてファームウェアをアップロードします。

    • USB-C ケーブルで StamPLC をホストに接続し、CONNECT をクリックしてデバイスを選択します。

    • INSTALL をクリックし、先ほどダウンロードしたファームウェアを選択してアップロードし、再度 INSTALL をクリックしてファームウェアをデバイスに書き込みます。

    • 書き込みが完了すると、デバイスは自動的にリセットされます。

使い方

Home Assistant へのデバイス追加

  1. デバイスが再起動すると、設定済みのネットワークに自動接続します。通常は Settings -> Devices & services でデバイスが検出されます。

  2. Add をクリックして StamPLC を Home Assistant に統合します。事前に API Encryption Key を設定した場合は、ここで入力して認証を行う必要があります。 StamPLC の Dashboard サンプル:

  3. 実機動作の様子:

拡張

StamPLC は拡張をサポートしており、右側の 16 ピンコネクターを通じて各種拡張モジュールを接続できます。

StamPLC AC

  1. 製品概要:

    StamPLC AC は、StamPLC 本体に対応した AC リレー拡張モジュールです。AC 負荷制御と本体への電源供給機能を一体化しており、配線を大幅に簡略化します。接点式リレー(SPST - 常開型)を採用し、最大 AC 240V@10A の回路の開閉に対応します。内蔵の AC-DC 絶縁変換回路により AC 100〜240V 入力をサポートし、リレー負荷への電源供給と同時に DC 12V に降圧して本体に給電します。オンボードのプログラム可能な三色 LED により動作状態を視覚的に確認できます。StamPLC 本体は I2C プロトコル経由の IO 拡張 IC を通じてリレーおよび RGB LED を制御するため、IO リソースを効率的に節約できます。AC 負荷機器のスイッチング、電磁弁制御などの産業用途に適しています。

  2. StamPLC AC の設定: 既存の StamPLC 設定に加えて、YAML 設定ファイルにいくつかのコンポーネントを追加する必要があります:

    • IO Expander の追加:

      pi4ioe5v6408:
        - id: pi4ioe5v6408_1
          address: 0x43
        # Configuration of i2c GPIO Expander 2
        # on the StamPLC AC expansion
        - id: pi4ioe5v6408_2
          address: 0x44
    • AC リレー用スイッチの追加:

      switch:
        ...
        - platform: gpio
          restore_mode: RESTORE_DEFAULT_OFF
          name: "StamPLC AC Relay"
          id: ac_r1
          pin:
            pi4ioe5v6408: pi4ioe5v6408_2
            number: 2
            mode:
              output: true
          on_state:
            - component.update: vdu
    • AC リレー上部の LED カラー制御の追加:

      switch:
        ...
        # led indicator on StamPLC AC expansion
        - platform: gpio
          restore_mode: ALWAYS_OFF
          id: "ac_relay_led_red"
          pin:
            pi4ioe5v6408: pi4ioe5v6408_2
            number: 5
            inverted: true
            mode:
              output: true
      
        - platform: gpio
          restore_mode: ALWAYS_OFF
          id: "ac_relay_led_green"
          pin:
            pi4ioe5v6408: pi4ioe5v6408_2
            number: 6
            inverted: true
            mode:
              output: true
      
        - platform: gpio
          restore_mode: ALWAYS_OFF
          id: "ac_relay_led_blue"
          pin:
            pi4ioe5v6408: pi4ioe5v6408_2
            number: 7
            inverted: true
            mode:
              output: true
    • Display コンポーネントへの AC リレー UI の追加:

      display:
        ...
        lambda: |-
          ...
          it.print(5, 80, id(font1), Color(orange), "Relays 1-4");
          it.filled_rectangle(5, 99, 25, 25, id(r1).state ? id(red) : id(grey));
          it.filled_rectangle(34, 99, 25, 25, id(r2).state ? id(red) : id(grey));
          it.filled_rectangle(63, 99, 25, 25, id(r3).state ? id(red) : id(grey));
          it.filled_rectangle(92, 99, 25, 25, id(r4).state ? id(red) : id(grey));
          it.print(141, 80, id(font1), Color(orange), "AC Expansion");    // The AC Relay Expansion
          it.filled_rectangle(141, 99, 25, 25, id(ac_r1).state ? id(red) : id(grey));
        ...
  3. 設定が完了したら、ファームウェアを再コンパイルしてアップロードし、デバイスを Home Assistant に追加します。追加の AC リレースイッチで AC リレーを制御できるようになります。

  4. スイッチをオン / オフすると、LCD の状態が連動して切り替わります。

StamPLC PoE

  1. 製品概要:

    StamPLC PoE は、StamPLC 本体に対応したイーサネット制御モジュールで、PoE(Power over Ethernet)技術をサポートし、LAN ケーブル 1 本でデータ通信と給電を同時に実現します。W5500 組み込みイーサネットコントローラーを内蔵し、TCP/IP プロトコルスタックを統合。8 チャンネルの独立したハードウェアソケット、10/100M イーサネット MAC および PHY を備え、UDP・TCP などの主要なネットワーク通信方式に対応しています。

  2. StamPLC PoE の設定:

互換性に関する注意
PoE(W5500 Ethernet)コンポーネントは SPI ハードウェアリソースを占有するため、LCD Display と PoE は同一の SPI ピンを使用します。同時に定義するとコンフリクトが発生するため、ハードウェア上では PoE と Display のどちらか一方のみ使用できます。
また、ネットワークコンポーネントにおいて wifiethernet は排他的な選択肢であり、同時に使用することはできません。

PoE 機能を使用する場合は、wifidisplayspi コンポーネントを無効化(設定ファイルから該当の宣言 / 定義を削除)した上で、元の設定ファイルに以下を追加してください:

ethernet:
  id: ethernet_1
  type: W5500
  clk_pin: GPIO7
  mosi_pin: GPIO8
  miso_pin: GPIO9
  cs_pin: GPIO11
  clock_speed: 20MHz
  1. 設定を保存して再コンパイルし、プロジェクトをアップロードします。PoE 対応スイッチまたはルーターを使用してデバイスに給電しながらネットワーク接続を行います。

関連動画

On This Page