LoginSignup
7
6

More than 3 years have passed since last update.

ラズパイ4でエアコンを操作してみる

Posted at

この記事は0505Keitan's Blogからの移植記事です。
ちょっと付け足している部分もあります.

2020年最初の記事ですね。今年も色々作っていきます!

使用機材

pigpioの導入

まずはGPIOピンを制御するためにpigpioを導入

$ sudo apt install pigpio python3-pigpio

デーモンを起動する

$ sudo systemctl enable pigpiod.service
$ sudo systemctl start pigpiod

赤外線学習用のコードをダウンロード

終わったら赤外線学習用のコードをダウンロードする。

$ curl http://abyz.me.uk/rpi/pigpio/code/irrp_py.zip | zcat > irrp.py

なぜか私の環境だとタイムアウトするのでMacでダウンロード、unzipしてラズパイにscpした。
失敗した理由がわかりました。IP固定するために色々いじってた結果DNSサーバーの指定をしていなかった?っぽかったです。
多分このままでもうまくいきます。

配線

全景

ブレッドボード

配線細かく書きたいんですけどめんどくさいので割愛。写真見てなんとかしてください()

赤外線学習の準備

これで17ピンを出力に、18ピンを入力に設定する。

$ echo 'm 17 w   w 17 0   m 18 r   pud 18 u' > /dev/pigpio

信号記録

$ python3 irrp.py -r -g18 -f codes air_con:on --no-confirm --post 50
オプション 意味
-r 受信した信号を記録するモード
-g18 GPIO18を使って信号を受信する
-f codes 受信した信号を出力するファイル名を指定する
--no-confirm 確認のために同じ信号を2回要求しない
--post 50 50ms無信号の場合に信号が終わったと判断する
air_con:on 信号の識別子。わかりやすい名前をつける

参照元 : エアコンのリモコン信号を解析する ~デコード編~ - Qiita

信号発信

このコードだけネット上に落ちていたので参照先がなく、曖昧です。

$ python3 irrp.py -p -g17 -f codes air_con:on
オプション 意味
-p 送信モード?
-g17 GPIO17を使って信号を発信する?
-f codes 発信するファイル名を指定する
air_con:on 信号の識別子。さっきのやつ

参考

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6