はじめに
アドベントカレンダー2023の記事として、Node-RED MCU Editionの作例を紹介します。
サーボモーター
サーボモーター(SG90)を2個組み合わせて、カメラのパン(Pan)/チルト(Tilt)機構を作成できます。
スイッチサイエンス(Switch Science)のサイトで購入可能です。
材料
Node-RED Dashboardのスライダーを使用してサーボモーターを動かすため、マイコンデバイスはディスプレイとタッチセンサーが搭載されているM5Stack Core2を使用しました。
マイコンデバイスとサーボモーターとの接続は、Grove - ジャンパ変換ケーブルを使用します。
サーボモーターを動かす場合、M5Stack Core2からの電源供給が大きく、電圧降下によりM5Stack Core2自体が落ちてしまいます。USB電源を分岐させ、直接サーボモーターへ電源供給するように配線します。
M5Stack Core2のPort AへGroveケーブルを接続し、ジャンパー(G32、G33)は2つのサーボモーターのPWM信号線へ接続します。
Node-REDフロー
Githubにフローファイル(flows.json)を置きます。
「slider」ノード
ダッシュボードのスライダーを動かした時の刻み幅(ステップ)を変更するため、「slider」ノードを設定します。
範囲: 1〜10
ステップ: 1
としました。
「range」ノード
サーボモーターによってPWMのデューティー比が異なるため、使用するサーボモーターの仕様(稼働範囲とデューティー比の値)を確認し、最終的には実際にサーボモーターを動作させて動きを確認する必要があります。
範囲: 0.025〜0.0725
としました。
「PWM Out」ノード
GPIOのピン番号と周波数(サーボモーターの仕様を確認)を設定する必要があります。
ピン: 32、または、33
周波数: 50 Hz
としました。
さいごに
マイコンデバイスでNode-RED Dashboardが動作するのは感動します。
Node-RED MCU Editionを始めるきっかけとして、ぜひ試してみてください!