Arduino入門

2. デバイス&サンプル

5. 拡張モジュール&サンプル

アクセサリー

6. アプリケーション

StamPLC AC Arduino チュートリアル

1. 準備

  • 環境構築: Arduino IDE 入門チュートリアル を参考に IDE のインストールを完了し、使用する開発ボードに応じて対応するボードマネージャーと必要なドライバライブラリをインストールしてください。

  • 使用するライブラリ:

  • 使用するハードウェア製品:

2. サンプルプログラム

  • 本チュートリアルでは、StamPLC をメインコントローラーとして使用し、StamPLC AC を組み合わせます。StamPLC AC は I2C でホストと通信します。内蔵の RGB LED とリレー スイッチは IO 拡張チップで制御されます。実際の回路接続に応じてプログラム内のピン定義を修正してください。デバイス接続後、対応する I2C IO は G15 (SCL)G13 (SDA)、RGB LED IO は P5 (SYS_LEDR)P6 (SYS_LEDG)P7 (SYS_LEDB)、リレースイッチ IO は P2 (REL_EN) です。

実際の接続と組み立ては下図の通りです:

cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
#include "M5StamPLC.h"

M5StamPLC_AC stamplc_ac;

void setup()
{
    /* Init M5StamPLC */
    M5StamPLC.begin();
    M5StamPLC.Display.setFont(&fonts::FreeMonoBold12pt7b);
    M5StamPLC.Display.drawCenterString("StamPLC AC", 120, 60);
    /* Init M5StamPLC-AC */
    while (!stamplc_ac.begin()) {
        printf("M5StamPLC-AC init failed, retry in 1s...\n");
        delay(1000);
    }
}

void loop()
{
    static bool relay_state = false;

    /* Toggle M5StamPLC-AC relay state */
    relay_state = !relay_state;
    stamplc_ac.writeRelay(relay_state);
    printf("Write M5StamPLC-AC Relay to %s\n", stamplc_ac.readRelay() ? "ON" : "OFF");
    if (relay_state)
    {
        stamplc_ac.setStatusLight(0, 1, 0);
        printf("Set M5StamPLC-AC status light to green\n");
    }
    else
    {
        stamplc_ac.setStatusLight(1, 0, 0);
        printf("Set M5StamPLC-AC status light to red\n");
    }
    delay(1000);
}

3. コンパイルと書き込み

  • StamPLC の Boot ボタンを長押しし、赤色 LED が点灯したら離します。デバイスはダウンロードモードに入り、書き込みを待機します。
  • デバイスのポートを選択し、Arduino IDE 左上のコンパイルと書き込みボタンをクリックして、プログラムのコンパイルとデバイスへの書き込みが完了するまで待ちます。

4. リレースイッチ制御

    • 電源投入後、StamPLC は自動的に StamPLC AC モジュールを初期化し、リレーのスイッチをオフ状態に設定します。ステータスインジケータは赤色で表示されます。その後 1 秒ごとにリレーのスイッチ状態が切り替わり、ステータスインジケータの色もそれに応じて変化します:リレーがオンのときはインジケータが緑色に点灯し、ランプが点灯します。リレーがオフのときはインジケータが赤色に点灯し、ランプが消灯します。

シリアルモニターの出力例:

Write M5StamPLC-AC Relay to ON
Set M5StamPLC-AC status light to green
Write M5StamPLC-AC Relay to OFF
Set M5StamPLC-AC status light to red
...
Page Tools
PDF
On This Page