工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduinoで最大65,280個のリレーを制御できます!

コンポーネントと消耗品

>
Arduino Nano R3
× 1
IOエキスパンダー
IOエキスパンダー
× 1
リレーエキスパンダー
× 1
IOエクステンダー
× 1
Arduino16リレーボード
× 1

アプリとオンラインサービス

>
Arduino IDE

このプロジェクトについて

IOエキスパンダーとリレーエキスパンダーを使用して、最大65,280個のリレーを制御します。

プロジェクトに多くのリレーを追加する必要がありますか?次に、リレーエキスパンダーを備えたIOエキスパンダーが必要です。各IOエキスパンダーは、最大16個のデイジーチェーン接続されたリレーエキスパンダーを制御して、合計256個のリレーを実行できます。次に、255個のIOエキスパンダーを接続すると、最大65,280個のリレーを選択的に制御できます。

単一のIOエキスパンダーを備えた制御リレー

<図>

機能リスト

  • 安価な<$ 15 Arduino16リレーボードを使用してください。
  • リレー制御コマンドを簡単に使用できます。
  • 一度に個々のリレーまたはバンクを制御します。
  • ドライバーは必要ありません。コードスペースを節約します。
  • リレー状態を維持するためのデータスペースがありません。
  • 追加の電源は必要ありません。

リレーバンクを構築するために必要な部品

  • IOエキスパンダー
  • IOエクステンダー
  • リレーエキスパンダー
  • Arduino16リレーボード

配線図

<図>

注: 上の配線図では、IOExpanderとArduinoNanoは最初のリレーボードから電力を供給されています。すべてのリレーエキスパンダーは、接続されているリレーボードから電力を供給されます。

  / * IOエキスパンダー
*
* 64個のリレーを制御
*
* /
#include
# include "IOExpander.h"
#include
//#define SERIAL_DEBUG
#define MAX_RELAYS 64
#ifdef SERIAL_DEBUG
SoftwareSerial swSerial( 8,7);
#endif
char cmd [10];
void setup()
{
Serial.begin(115200);
# ifdef SERIAL_DEBUG
swSerial.begin(115200);
swSerialEcho =&swSerial;
#endif
wdt_enable(WDTO_8S);
sprintf(cmd、 "eb%d"、 MAX_RELAYS / 16);
SerialCmdDone(cmd);
}
void loop()
{
static int i =1;
sprintf(cmd、 "e%df"、i);
SerialCmdDone(cmd);
if(i ++> =MAX_RELAYS)i =1;
sprintf(cmd、 "e%do"、i);
SerialCmdDone(cmd);
delay(100);
wdt_reset();
}

リレーを制御する複数のIOエキスパンダー

リレーを制御する別の方法は、複数のIOエキスパンダーを使用することです。これにより、センサーとリレーを中央ネットワークまたはスターネットワークに分散しながら、単一のシリアルバスですべてのIOエキスパンダーを相互接続することができます。最大4000フィートのIOエクスパンダーを分離する必要がある場合は、以下に示すように、標準の青いCat5ネットワークワイヤーでIOエクステンダーを使用します。

<図>

配線図

<図>

注: 上の配線図では、すべてのIOエキスパンダーとArduino Nanoは、シリアルバスを介して最初のリレーボードから電力を供給されています。すべてのリレーエキスパンダーは、接続されているリレーボードから電力を供給されます。

  / * IOエキスパンダー
*
* IOエキスパンダーでBonnazaを中継します!
*
* /
#include
#include "IOExpander9Bit.h"
#include
#define MAX_BOARDS 4
char cmd [10];
void setup()
{
Serial9Bit.begin(115200、SERIAL_9N1);
Serial9Bit.write(0); // IOエキスパンダーを9ビットに設定
wdt_enable(WDTO_8S);
for(int board =1; board <=4; board ++)
SerialCmdDone(board、 "eb1");
}
void loop()
{
static int board =1;
static int relay =1;
sprintf(cmd、 "e%df" 、relay);
SerialCmdDone(board、cmd);
if(++リレー> 16){
リレー=1;
if(++ボード> MAX_BOARDS)ボード=1;
}
sprintf(cmd、 "e%do"、relay);
SerialCmdDone(board、cmd);
delay(100);
wdt_reset( );
}

では、なぜこれほど多くのリレーを制御する必要があるのでしょうか?

そのようなアプリケーションの1つは、アクアポニックスまたは水耕栽培です。多くのセンサーとデバイスは、各栽培床または個々の植物に至るまで自動化する必要があります。これには極端なIOが必要であり、IOExpanderが提供します。

<図>

今すぐIOExpanderを入手して、システムを構築してください!

コード

  • 単一のエキスパンダーで64個のリレーを制御する
  • 複数のエキスパンダーで64個のリレーを制御する
単一のエキスパンダーで64個のリレーを制御する C / C ++
 / * IOエキスパンダー**コントロール64リレー** /#include  #include "IOExpander.h" #include  //#define SERIAL_DEBUG#define MAX_RELAYS 64#ifdef SERIAL_DEBUGSoftwareSerial swSerial(8,7); #endifchar cmd [10]; void setup(){Serial.begin(115200); #ifdef SERIAL_DEBUG swSerial.begin(115200); swSerialEcho =&swSerial; #endif wdt_enable(WDTO_8S); sprintf(cmd、 "eb%d"、MAX_RELAYS / 16); SerialCmdDone(cmd);} void loop(){static int i =1; sprintf(cmd、 "e%df"、i); SerialCmdDone(cmd); if(i ++> =MAX_RELAYS)i =1; sprintf(cmd、 "e%do"、i); SerialCmdDone(cmd); delay(100); wdt_reset();} 
複数のエキスパンダーを使用して64個のリレーを制御する C / C ++
 / * IOエキスパンダー** IOエキスパンダーでBonnazaを中継します! * * /#include  #include "IOExpander9Bit.h" #include  #define MAX_BOARDS 4char cmd [10]; void setup(){Serial9Bit.begin(115200、SERIAL_9N1); Serial9Bit.write(0); // IOエキスパンダーを9ビットに設定しますwdt_enable(WDTO_8S); for(int board =1; board <=4; board ++)SerialCmdDone(board、 "eb1");} void loop(){static int board =1; static int relay =1; sprintf(cmd、 "e%df"、リレー); SerialCmdDone(board、cmd); if(++リレー> 16){リレー=1; if(++ board> MAX_BOARDS)board =1; } sprintf(cmd、 "e%do"、relay); SerialCmdDone(board、cmd); delay(100); wdt_reset();} 

回路図


製造プロセス

  1. シーリングファンに対してAlexaコントロールを有効にする
  2. Arduinoでコインアクセプターを制御する
  3. Arduinoコントロールセンター
  4. LEDを制御するBluetoothを搭載したArduino!
  5. Arduino加湿器制御
  6. Arduino Nano:ジョイスティックで2つのステッピングモーターを制御
  7. CortanaでLEDを制御する
  8. ThimbleKrox-指でマウスを操作する
  9. スマートフォンを使用してライトシステムを制御する
  10. Arduinoでゴキブリを30ドル未満でコントロール
  11. ArduinoUnoを使用した25kHz4ピンPWMファン制御