はじめに
前回からの続きです。前回はRaspberry Piでリモコンの赤外線信号を受信して学習するところまで進めました。
今回は、学習したリモコンの赤外線信号をRaspberry Piから送信してエアコンを操作します。
※前回と同様、配線を間違えるとRaspberry Piが壊れる可能性があります。試す際は自己責任でお願いします。
参考リンク
- 格安スマートリモコンの作り方
- GPIO – Raspberry Pi Documentation
- pigpio library – IR Record and Playback
- pigpio library – pigs
- 赤外線LED
- MOSFET(2N7000)
- MOSFET(IRFU9024NPBF)
- 抵抗(1/2W 4.7kΩ)
- 抵抗(1W 27Ω)
- ジャンパーワイヤ
リモコンの赤外線信号送信用の回路作成
今回も前回と同様にブレッドボードを用いて動作確認を行います。
※画像右側の部分は前回使用した、赤外線リモコン受信部分の回路になります。今回追加するリモコンの赤外線信号送信部分の回路は画像左側の部分になります。
以下の部品をブレッドボードに接続します。
- 赤外線LED
- MOSFET(2N7000) ※画像手前側のMOSFET
- MOSFET(IRFU9024NPBF) ※画像奥側のMOSFET
- 抵抗(1/2W 4.7kΩ) ※画像手前側の抵抗
- 抵抗(1W 27Ω) ※画像奥側の抵抗
- ジャンパーワイヤ ※色違いで何種類か用意しておくと、あとから見た時分かりやすいです。
※参考サイトにも記載がありますが、赤外線LEDは目視出来ないため、動作確認を行うために最初は赤色LEDを接続したほうが分かりやすいです。正常に動作したら赤色に点滅するため、その後、赤外線LEDに入れ替えればOKです。
赤外線信号送信回路とRaspberry Piの接続
回路画像の上部に接続しているジャンパー線3本をそれぞれRaspberry PiのGPIOピンに接続します。
※GPIOピンについては前回記事を参照下さい
- 右側のジャンパー線:5V(GPIOの図の赤色ピン)に接続
- 中央のジャンパー線:前回記事で赤外線信号出力用に設定しているGPIOピン(今回はGPIOの図の22番ピンに接続)
- 左側のジャンパー線:Ground(GPIOの図の黒色ピン)に接続
学習したリモコンの赤外線信号を送信
以下のコマンドを実行すると学習したリモコンの赤外線信号をLEDから出力します。
python3 irrp.py -p -g22 -f codes power:on
- irrp.py : 前回ダウンロードした信号の送受信プログラム(IR Record and Playback)を保存したパスを指定
- -p -g22 : GPIO22からリモコンの赤外線信号を出力
- -f codes power:on : 前回リモコン信号を学習後に保存したファイル「codes」の中に「power:on」という名称で保存されている信号を送信。codesの部分は保存したパスを指定
この状態でエアコンから1.5m程度離れた場所からRaspberry Piでエアコンにリモコンの赤外線信号を送信可能なことを確認出来ました。
※もし、エアコンが反応しない場合は赤外線LEDをエアコンに近づけて試してみて下さい
おわりに
今回は、外部からエアコンの電源を入れるために、Raspberry Piで学習したリモコンの赤外線信号を送信するところまで進めました。
次回以降は引き続き以下の内容を進めていく予定です。
- Slackの投稿を監視し特定のキーワードのチャットを送るとエアコンの電源を入れる
- ブレッドボードでの配線だと使いにくいので基盤にハンダ付けして固定。また簡易的なケースを自作して固定。