はじめに
ArduinoでリレーをON/OFFさせます。
スイッチをon/offするとリレーがON/OFFするようにします。
リレーモジュールを使いました。
リレーとは電気信号でON/OFFできるスイッチです。違う電圧をON/OFFさせる時によく使います。リレー自体は5Vで動作しますが、接点側ではAC100Vが使用できます。コンセントをON/OFFさせるような使い方も出来ます。(リレーによって仕様は異なる為、使用するリレーのスペックは確認してください)
スイッチの入力はプルダウン回路で作成しています。
タクトスイッチを押すごとにリレーがON/OFFを繰り返す回路を作成します。
・入力はプルダウン回路(スイッチを押したときに入力がHIGH(on)になる)
・ON/OFFを繰り返すプログラム(オルタネイト動作)
使用部品
・Arduino uno
・リレーモジュール 1個 PETTOYA 554(1チャンネル 高低レベルトリガー付き)
・タクトスイッチ
・抵抗 10KΩ
・ブレッドボード、配線6本、ジャンパーピン1本
接続図
プログラム
void setup() {
pinMode(2,INPUT); //タクトスイッチをD2に設定
pinMode(11,OUTPUT); //D11をデジタル出力に設定
}
int i=0; //スイッチを押した回数格納
int RelayOut=0; //出力用
void loop() {
if(chtsw(2)==HIGH) //chtswはチャタリング防止関数呼び出し
i=i+1; //スイッチを押すごとにiを+1する
if(i>=2) //ボタンを押すごとに0と1を繰り返す
i=0;
if(i==0) //i=0の時の動作
RelayOut=1; //リレー用出力をon
else if(i==1) //i=1の時の動作
RelayOut=0; //リレー用出力をoff
digitalWrite(11,RelayOut); //出力
}
boolean chtsw(byte dx){
boolean tsw = digitalRead(dx);
while(tsw==digitalRead(dx));
delay(300);
return !tsw;
}
結果
スイッチを押すごとにリレーモジュールがカチカチと音が鳴り、リレーが動作することが分かります。リレーモジュール上のLEDが光り動作が分かります。
リレーモジュールには5VでリレーがONするタイプと、5VでリレーがOFFするタイプがあります。今回使用したタイプはジャンパーピンでどちらにでも切り替えが可能でした。以前、知らずに5VでOFFするタイプを購入し失敗したことがあります>< 購入する場合は注意ください。
プログラムはスイッチを押すごとにON/OFFする動作をif文で作りました。あまりスマートではないような。。。動作はするので、まぁいいかと。。。
今回はリレーを動作させるだけです。接点側は何もつなげていませんが、次は何かを動作させたいと思います。
コメント