Device PlusではArduinoを使ったさまざまな電子工作を紹介してきました。ただしほとんどがArduinoボードにLEDやホビー用のサーボモーター、センサーなどを接続してスケッチから制御するような、電源電圧が5Vの電子回路でした。
5Vの回路を中心に紹介しているのは、デスクライトなどの家庭用のコンセントに接続して使用する「家電」のような100Vもの大きい電圧はArduinoボードで直接制御できないからです。
今回はリレーと呼ばれる電子部品を使用して、Arduinoの電源電圧(5V)より高い電圧を制御するポイントを解説します。
本記事ではリレーをArduinoで簡単に使えるようにしたリレーシールドを使って、デスクライトをON/OFFする実験を行います。もちろんArduinoとリレーを使った制御方法はデスクライトだけでなく、コンセントに接続する多くの家電に応用できます。
目次
1. リレーの原理
Arduinoの電源電圧は5Vです。一般的に電源電圧と同じ電圧を制御するのは簡単なので、Device Plusで紹介してきた電子工作もほとんどは5Vで動作するデバイスを使ったものでした。
今回はArduinoの電源電圧(5V)より高い電圧を制御する方法を紹介します。
電源電圧より高い電圧を制御するにはリレーと呼ばれる電子部品を使用します。
リレーを使えば、ArduinoがON/OFFできる低い電圧(5V)から家庭用のコンセントに流れるAC100Vのような高い電圧を制御することができます。
仮にリレーを使わずArduinoからLEDの制御と同じ感覚で家庭用のコンセントにつながる機器をON/OFFしてしまうと、Arduinoボードが壊れるだけでなく感電や発火などの事故につながる恐れがあります。
こうした事故を防ぐにはArduinoがON/OFFする5Vの回路と、AC100Vが流れる回路を電気的に分離して安全を確保しなくてはいけません。
リレーの内部にはAC100VをON/OFFするスイッチが組み込まれています。自宅の壁に取り付けられている電灯のスイッチと同じような仕組みです。
リレーは安全に操作するために内部の電磁石でスイッチのON/OFFを切り替える電子部品です。Arduinoボードに電磁石を接続して、スケッチからデジタル入出力ピンをON/OFFすることで電磁石が動作します。
リレーの内部では電磁石とON/OFFのスイッチ接点は電気的に分離されているので、ArduinoとAC100Vは電気的に全く別の回路になり、Arduino(5V)で高電圧(AC100V)を安全に操作できます。
リレーのスイッチ側の端子には3本の端子が備わっています。
それぞれ「NC(Normally Closed)」「COM(Common)」「NO(Normally Open)」と呼ばれます。この呼び方はメーカーによって異なる場合がありますが機能は同一です。
Arduinoボードから操作する電磁石がOFFの時には、3本の端子のうち「NC === COM」間が接続されています。電磁石がONした時には「COM === NO」間が接続されます。
基本的に「NC === COM」間と「COM === NO」間のどちらを使用してもArduinoから家電のON/OFFを操作できますが、どちらが適しているかには一定の基準があります。
ポイントは「Arduinoの信号がOFFの時に家電の状態は?」です。
ArduinoがOFFしている際に家電がONしているほうが都合良い場合は、家電をNCとCOMに接続します。反対にArduinoがOFFしている際に家電がOFFの場合は、NOとCOMを使用します。
本記事では、ArduinoでLEDをON/OFFするようにデスクライトを制御したいので、NOとCOMを使います。
リレーの内部にある電磁石にはVccとGNDの2本の端子があるのが一般的です。Vccに電圧を加えると(Arduinoの場合は5V)電磁石がONします。
本記事ではリレーを4個実装したリレーシールドを使用します。
リレーが4個なので、電磁石を接続するVcc・GNDの端子も4組あります。ただしArduinoに重ねるだけで配線できるシールドなので端子を意識する必要はありません。
リレーはもちろん単体でも入手可能です。リレー単体を用意しても構いませんが、AC100V側の配線をしっかり行わないと感電の危険があります。リレーにあらかじめコネクタや端子台を取り付けたモジュールも販売されているので、配線に自信のない方はシールドやモジュールを選択すると良いでしょう。
2. 感電に注意!
本記事で紹介する電子工作はAC100Vを使用します。
AC100Vは取り扱いを間違えれば感電や火災などの事故を引き起こすため十分に注意してください。
特にコンセントにつながる電線をリレーに接続する部分は危険です。コンセントに接続している間は絶対に接続部分を触らないようにしてください。
また、全ての配線が完了するまでコンセントには接続しないでください。
3. 準備
以下のものを用意してください。
Arduino Uno
Arduino IDE
抵抗
330Ω(LEDの破損防止用)
リレーシールド
デスクライト
延長コード
今回の電子工作は、家電(デスクライト)をArduinoに接続したリレーでON/OFF制御します。リレーを使用した制御は家電のコンセントを抜き差しするのと同等なので、家電本体のスイッチでON/OFF制御を行う制御はできません。コンセントの抜き差しで「動作する/しない」がコントロールできる家電を選んでください。
延長コードは切断して使用します。電線の被覆が厚い製品は加工しにくいでしょう。
上記以外に以下のものが必要です。
- USBケーブル
- ワイヤーストリッパー、ナイフ(電線の被覆を除去するための工具)
4. スケッチ全体
以下がスケッチ全体です。スケッチのあとに解説が続きます。
void setup() { pinMode(8, OUTPUT); } void loop() { digitalWrite(8, HIGH); delay(10000); digitalWrite(8, LOW); delay(10000); }
setup()関数ではリレーを操作する入出力ピンの動作を設定します。
使用できるピン番号はリレーシールドによって異なるので、製品のマニュアルを確認してください。本記事で使用するリレーシールドにはリレーが4個実装されているので、それぞれ2、7、8、10番ピンで操作します。本記事では8番ピンにつながるリレーを操作します。
loop()関数ではリレーを10秒間隔でON/OFFします。ON/OFFする時間はdelay()関数の引数に指定する数字で決定します。
また、赤外線センサーなどを組み合わせてリレーをON/OFFさせる機能を追加する場合は、この部分を修正すると良いでしょう。
スケッチを修正する際は、思わぬ事故を防ぐためコンセントは抜いておきましょう。また、Arduinoの電源をOFFにする際も先にもコンセントから外しましょう。
5. 配線
回路はリレーシールドを使用しているので、今回の主な作業はリレーに接続できるよう延長コードを加工することです。以下の手順で加工を進めてください。
※※※ 延長コードがコンセントにつながっていないことを確認してください。 ※※※
一般的な延長コードは2本の電線で構成されています。どちらか片方の電線を延長コードの中間ぐらいで切断してください。もう1本はそのまま使用します。
延長コードの2本の電線(の被覆)がはっきりとわかるタイプのものであれば、電線と電線の間にナイフを挿せば1本に分割できるので加工しやすくなります。
2本の電線がわかりにくいタイプの場合は、延長コードをじっくりと観察してください。よく見ると電線が平たくなっているはずです。これは並行する2本の電線を、さらに被覆でカバーしているためです。このタイプの延長コードには2本の電線をまとめる外側の被覆にナイフで切り込みを入れます。切り込み部分を手で上下左右に何回か折り曲げると内側の2本の電線(の被覆)が見えるはずです。あとは内側の2本の電線(の被覆)を傷つけないように外側の被覆をナイフで20センチメートル程度切り取ってください。
2本の電線を1本に分割できたら、中間でカットします。
カットしたあとはワイヤーストリッパーを使って、被覆を1〜1.5センチメートル程度取り除いてください。
露出した電線をリレーのNOとCOMに接続します。
前述のように「NO === COM」間はArduinoからリレーをONしない限り電流は流れません。
本記事のようにリレーが複数実装されているリレーシールドを使っている場合は、スケッチで操作するArduinoボードのピン番号と、延長コードを接続するリレーの番号が合っているかを確認してください。本記事では8番ピンをスケッチから操作するので、対応するリレーは3番目です。
これで延長コードの加工は終了です。
※※※ まだコンセントには接続しないでください。 ※※※
リレーシールドをArduinoボードに接続していない場合は、ここで接続してください。
以上で配線は終了です。
念のため、コンセントの差し込みプラグをテスターで通電確認して、ショートしていないことを確認しましょう。
問題なさそうなら、ArduinoボードにUSBケーブルを接続して電源を供給します。そのあと延長コードをコンセントに接続します。
10秒間隔でデスクライトが点灯/消灯を繰り返せば成功です。
デスクライトが点灯しない場合は、デスクライトのスイッチを確認してください。もし、配線を確認する場合は必ず延長コードをコンセントから外したあとに行いましょう。
スケッチを修正する場合や、実験を終了する際も、必ず先に延長コードをコンセントから外してください。
6. まとめ
今回はArduinoが制御できる5Vの信号でAC100Vを操作するリレーの使い方を説明しました。
リレーは非常にシンプルな電子部品なので、耐電圧を間違えなければ取り扱いは難しくないはずです。
ただし扱う電圧が高くなるほど感電事故には十分注意する必要があります。
LEDのような低電圧で動作する電子部品を使用するのも楽しいですが、ライトなどの家電製品をArduinoからダイナミックに操作するのは電子工作の醍醐味でもあります。恐れずに挑戦していきましょう。