愛知県稲沢市在住の【中小企業診断士✖️IoTプロフェッショナルコーディネーター】が、ものづくりの楽しさをお伝えする《がちゃラボ》です。
「トマトの自動水やりシステムを作ろう」ということで、その準備第1弾としてRaspberry piで定期実行を行う事に挑戦しました。久しぶりのブログ更新ですが、こうしている間も定期的にLEDはチカチカとしています。。。
そして、今回は水をくみ上げるポンプを駆動するためにリレー接点の使い方です。リレーは昔からある機構ではありますが、私自身 Raspberry pi (ラズベリーパイ、ラズパイ)でどのように制御するのか分からなかったので、すごく勉強になりました。
皆さんもぜひ参考にしてください。
準備するもの
- Rasbperry pi (ラズベリーパイ、ラズパイ)
- リレー
- その他、ジャンプワイヤとかブレッドボードとか
リレーは、KUMANのラズパイスタータキットに入っていた「SRD-05VDC-SL-C」というものを使います。リレーにも様々な種類がありますが、今回はLEDをON/OFFするくらいなのでスターターキットのこれで十分です。
リレーの接続方法
まずはリレーの構造を説明します。見た目は下記のような感じです。
端子名 | 説明 | |
① | Normal Open | リレー内部のコイルに電流が流れた時に繋がる端子 |
② | Common | NOとNC共通の端子 |
③ | Normal Close | リレー内部のコイルに電流が流れていないときに繋がる端子 |
④ | GND | 基準となる点。0Vとなる端子。 |
⑤ | Vcc(5V) | リレーを動かすための電圧。 |
⑥ | Signal | 接点をくっつける、離すための端子(スイッチをON・OFF操作するための端子) |
使い方としては、①NOと③NC、この2つの端子のどちらを繋ぐか⑥Signalで操作する、ということになります。
実際に手を動かした方が分かりやすいので、①NOと③NCに異なる2つのLEDをつなげて実験してみましょう。
手動でSignalをスイッチして、LEDをチカチカ点滅させてみよう
それで、NOとNCにLEDを使って動きを確認してみましょう。
端子名 | どこに繋ぐ?? | |
① | Normal Open | LEDの(ー)側に繋ぐ(GNDと繋ぐ) |
② | Common | LEDの(+)側に繋ぐ(5Vと繋ぐ) |
③ | Normal Close | LEDの(ー)側に繋ぐ(GNDと繋ぐ) |
④ | GND | ラズパイのGNDと接続 |
⑤ | Vcc(5V) | ラズパイの5Vと接続 |
⑥ | Signal | ラズパイの3.3Vと接続したり、離したりする(LEDの切り替えを制御する) 【未接続】①NO側のLED点灯 【接続】③NC側のLED点灯 |
この状態で⑥Signalを3.3Vと接続⇔切り離しをすると、点灯するLEDが変わります。これはLEDが点灯するために電流の流れるルートを①NO側とするか、③NC側とするかを切り替えているためです。
⑥Signalの状態を変えることで(スイッチすることで)、2つの端子①NOと③NCのどちらを有効とするか切り替えることができるのがリレーの特徴になります。
Cronを用いて定期的にLEDを切り替えよう
先ほどの実験では、手動で⑥Signalを操作することで点灯するLEDを切り替えました。そこで次は、Cronを使って定期的にLEDを切り替えるようにしましょう。
毎朝同じ時間にポンプを動かす、にちょっと近づきますね。
方法は簡単で、⑥SignalをRaspberry pi (ラズベリーパイ、ラズパイ)のGPIOに繋げましょう。前回の記事でGPIO02を定期的にONする方法を書いたので、そのまま⑥SignalをGPIO02に繋げます。
これを実行すると、
CronによりGPIO02がON・OFFするプログラムが実行され、⑥Signalに入力される信号が変わり①NO⇔③NCに繋いだLEDが切り替わります。
どうでしょう。これで、①NOもしくは③NCに何か動かしたいものを繋いでおけば、Raspberry pi とリレーを使って制御することができるようになりました。
ただこれだと複数のLEDを複数のGPIOを使ってチカチカさせるのと変わりません。リレーを使うのはポンプを動かすためで・・・
さいごに
ということで、今回はリレーを使ってものを制御するということを書きました。
農業IoT、スマート農業の自作にはまだほど遠いですが、一歩ずつ!次はポンプを買って水をくみ上げるところをやりたいと思います。そのためにはまずはポンプを買わないと、、、何買えばいいんだろう。
コメント