IO エキスパンダーで数百個のリレーを簡単制御・同期制御
必要な部品と材料
| 部品名 | 数量 |
|---|---|
| IO エキスパンダー | 2 |
| リレー エキスパンダー | 2 |
| 16 チャンネル リレーボード | 2 |
| Arduino Nano R3 | 1 |
プロジェクト概要
Arduino、ESP8266、Raspberry Pi、PC/Mac などから 数百個のリレーを同時に制御・同期 するには、IO エキスパンダーにリレー エキスパンダーを接続し、新機能「外部ラッチ(External Latching)」を使用します。
この機能により、新しいリレー設定を極めてコンパクトなビット形式で送信し、ラッチ準備完了状態にできます。その後、MCU または IO エキスパンダーの出力から単一の GPIO ラインを操作するだけで、すべてのラッチデータを同時に出力 できます。最大 65,280 個のリレー制御が可能です(関連プロジェクト参照)。
IO エキスパンダー外部ラッチの設定例
シンプルなコマンド構造で、16 チャンネルリレーボードを外部ラッチで制御する設定手順:
- GPIO ピン 4 を出力・High(1)に設定
- GPIO ピン 10 で立ち下がりエッジ検出を有効化
- リレー エキスパンダーの外部ラッチをピン 10 で有効化
>g4o1;g10n;el10
ok
ok
10
>
これでリレーの ON/OFF/SET コマンドを送信後、GPIO ピン 4 を 1ms だけ Low(0)にして High に戻すことで、全リレーが同時にラッチされます:
>e1o;e10o;e16o
ok
ok
ok
>g4o0,1
ok
>
拡張構成:2 枚の IO エキスパンダー、2 枚のリレー エキスパンダー、2 枚の 16ch リレーボード
2 枚の IO エキスパンダーを 9-bit マルチドロッププロトコルで接続(最大 255 枚まで拡張可能)。Arduino Nano で制御します。
外部ラッチ接続図
IO エキスパンダーの GPIO4 をラッチトリガーとして、2 枚のリレー エキスパンダーのラッチ入力へ共通接続。GPIO10 は立ち下がりエッジ検出用。
Arduino コード
/* IO Expander - Relay Expander External Latching */
#include
#include "IOExpander9Bit.h"
#include
#define MAX_BOARDS 2
void setup() {
Serial9Bit.begin(115200, SERIAL_9N1);
Serial9Bit.write(0); // 9-bit モード設定
wdt_enable(WDTO_8S);
for (uint8_t board = 1; board <= MAX_BOARDS; board++)
SerialCmdDone(board, "eb1"); // リレーエキスパンダー有効化
SerialCmdDone(1, "g4o1;g10n;el10"); // ボード1: GPIO4出力High、GPIO10立ち下がり検出、外部ラッチ有効
SerialCmdDone(2, "g10n;el10"); // ボード2: GPIO10立ち下がり検出、外部ラッチ有効
}
void loop() {
static uint16_t i = 0;
uint8_t r[2];
// ボード1へパターン送信
r[0] = ~(uint8_t)(i >> 8);
r[1] = ~(uint8_t)i++;
SerialWriteRelayExpander(1, r, 2);
delay(50);
// ボード2へ反転パターン送信
r[0] = ~r[0];
r[1] = ~r[1];
SerialWriteRelayExpander(2, r, 2);
delay(50);
// 外部ラッチ実行(GPIO4を1ms Lowパルス)
SerialCmdDone(1, "g4o0,1");
wdt_reset();
}
動作デモ
動画(RelayExpanderLatching.mp4)を参照。2 枚の 16ch リレーボードが完全に同期して切り替わる様子を確認できます。
回路図
IO エキスパンダー ×2、リレー エキスパンダー ×2、16ch リレーボード ×2、Arduino Nano の接続図。9-bit シリアルバスでデイジーチェーン接続。
製造プロセス
- 自動車のブレインボックス(ECU)が車を制御する仕組み
- 自動車用リレー完全解説:目的・種類・愛車を守る仕組み
- リレー完全ガイド:種類・用途・歴史から選定基準まで徹底解説
- 初めての自動車保険:お得に加入するためのステップバイステップガイド
- 電気制御盤:安全性とROIを高める設計の要点
- 購買サイクルの主導権を取り戻す:メーカーのための実証済み戦略
- レスポンシブロボットで効率向上:エナジーダイナミクスの選択
- Salesforce統合の隠れたコストを理解する
- SaaSをマスターする:クラウドを活用しながらコントロールを維持する戦略
- 21世紀のロボティクス:分散システム、テレプレゼンス、宇宙探査
- 倉庫が今すぐIoTを導入すべき理由:効率、精度、セキュリティの向上