ラズパイで4chリレーモジュール(5V)を動かしてみる。
WOLに対応していない自作PCの電源をラズパイで制御したいと思い試行錯誤していたところ、リレーを使えばなんとかなりそうな事が分かったため、早速購入してみました。
説明書はついていないのですが、なんとか動かせたので記事にします。
4チャンネル5Vリレーモジュール
2018/9/3現在primeで¥435でした。Prime以外だと中国からの配送になるのでいつ届くか分かりません。一週間~二週間ぐらいはかかるようなので注意しましょう。
外観
製品はこのような感じです。リレーはJQC3F-05VDC-Cという型番でした。仕様はこちらのHPにありました。
制御するためのピン
左から
- GND
- IN1
- IN2
- IN3
- IN4
- VCC
と6本並んでいます。
また、アイソレーション設定用のピンがあります。JD-VCCとVCCと書かれているところで、購入時はジャンパピン(黄色)でショートされています。
LEDでテストしてみる。
LEDを4つ制御する回路を作成してテストを行いました。
配線する
NC,NOの動作も確認したかったので、IN1とIN2はNC、IN3とIN4はNOで接続しました。
※NC、NOとは
通常時(リレーが作動していない時)の振る舞いを示します。
NCはNormal Close:リレーが作動していない時は回路が閉じた状態
NOはNormal Open:リレーが作動していない時は回路が開いた状態
となります。
下記のように配線します。(Fritzingに4CHリレーモジュールのパーツがなかったので簡略化しています。)
★リレーモジュールとラズパイの接続
- GND:GND(PIN6)
- IN1:GPIO4(PIN7)
- IN2:GPIO17(PIN11)
- IN3:GPIO27(PIN13)
- IN4:GPIO22(PIN15)
- VCC:5V(PIN2)
実際に配線してみた様子
ブレッドボード用の電源をONにする
ブレッドボード用の電源をONにすると、IN1・IN2は点灯、IN3・IN4は消灯となります。
GPIOの電圧をLOWにする
GPIOをLOWにするとリレーをONすることができます。4つの端子を全部LOWにするとIN1とIN2は消灯、IN3とIN4は点灯します。
★リレーが作動する際に、リレーモジュール基板の赤色LEDが点灯します。
制御用のサンプルプログラム(Python)
5秒おきに4ch全部のON、OFFを繰り返すサンプルです。終了はCrtl+Cを押してください。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
from time import sleep
GPIO.setmode(GPIO.BCM)
# GPIOの接続先を指定する。
channel1 = 4 # IN1
channel2 = 17 # IN2
channel3 = 27 # IN3
channel4 = 22 # IN4
channels = [ channel1, channel2, channel3, channel4]
GPIO.setwarnings(False)
GPIO.setup(channels, GPIO.OUT)
try:
while True:
GPIO.output(channels, GPIO.HIGH)
sleep(5)
GPIO.output(channels, GPIO.LOW)
sleep(5)
except KeyboardInterrupt:
pass
finally:
GPIO.cleanup()
動作している様子
このような感じで交互に切り替わります。
今回の記事で用意したもの
Raspberry Pi Zero WH コンプリートスターターキット
3Bや3B+でも動きます。
初心者向けの学習キット
キットから以下のものを使用します。
- LED 4本
- 1kΩの抵抗 4本
- ブレッドボード
- ブレッドボード用の電源
- ジャンパワイヤ メスーメス 6本
- ジャンパワイヤ オスーオス 8本
9VのACアダプタ
ブレッドボード用電源を動かすために必要です。
4チャンネル5Vリレーモジュール
2018/9/3現在primeで¥435でした。Prime以外だと中国からの配送になるのでいつ届くか分かりません。一週間~二週間ぐらいはかかるようなので注意しましょう。
アイソレーションについて
JD-VCCとVCCのジャンパピンが気になったので調べてみたところアイソレーション(分離、絶縁)を設定するために使うようです。今回購入したリレーモジュールにはフォトカプラが有り、それを有効にできるようです。また、3.3VのESP32やESP8266(ESP-WROOM-02)などで使う場合もアイソレーションを使います。
アイソレーションとは?高周波リレーの用語について – 制御機器知恵袋 – パナソニック
接続するためには5Vの別電源が必要です。
配線図
ジャンパピンを外し、JD-VCCに5Vを接続します。GNDは共通で、下記のようになります。
ケース
専用ではありませんがダイソーに大きさが丁度よいものがありました。冷蔵庫をスッキリ整頓miniパックです。
おわりに
これでラズパイから、他の回路を制御できるようになりました。まずはPCの電源スイッチをコントロールしてみようと思います。
成功したら別記事で紹介します。
モータードライバーでスイッチありのa接点の配線方法を知りたいです