ラズベリー・パイ専用 学習リモコン基板 ADRSIRの使い方

Pocket

yoshitaku_jpです。

少し前にラズベリー・パイ専用 学習リモコン基板 ADRSIRを買って色々弄ったので、
今日はADRSIRの使い方をまとめておこうと思います

ラズベリー・パイ専用 学習リモコン基板 ADRSIRを買いました

  1. 物理的な操作編
    1. 赤外線を記憶させる
    2. ボタンからテレビの電源を付ける・消す
  2. プログラムでの操作編
    1. 記憶させている赤外線データを取得する
    2. Pythonからテレビを付ける・消す

1.赤外線を記憶させる

始まりの状態

真ん中のスイッチをLEARN状態に変更して、青いランプが光る。
そして記憶させたいボタンを1回押す
今回は5番ボタンにする

記憶させたいリモコンボタンを押す

緑のランプが光ったら成功!

2. ボタンからテレビの電源を付ける・消す

5番のボタンを押して、テレビのオン・オフをしています。

3. 記憶させている赤外線データを取得する

手順1で5番ボタンに記憶させた、テレビの電源赤外線データを取得してみます。

リモコンいじり放題!!ラズパイ専用 学習リモコン基板で使えるソフトウェア3種詰め合わせ公開
このページからダウンロードが出来るIR-remocon02-commandline.pyを使います。

ダウンロードした資材を
/home/pi/に置きます

物理ボタンは1,2,3,4,5,6,7,8,9,10で指定されていますが、
プログラムで指定する場合は0,1,2,3,4,5,6,7,8,9になります。

Python3で

python3 I2C0x52-IR/IR-remocon02-commandline.py r 4 > 5.dat

のコマンドを実行すると、
物理ボタン5に設定した赤外線データを/home/pi/5.datファイルに出力することが出来ます

デフォルトだと、下のような内容のファイルが出来ると思います

3
[8]
memo_no write= [8]
data_num = 50
[133, 0, 67, 0, 18, 0, 16, 0, 19, 0, 50, 0, 18, 0, 16, 0, 18, 0, 18, 0, 18, 0, 16, 0, 18, 0, 18, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 17, 0, 19, 0, 17, 0, 51, 0, 18, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 18, 0, 18, 0, 18, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 19, 0, 50, 0, 18, 0, 50, 0, 18, 0, 16, 0, 19, 0, 16, 0, 19, 0, 50, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 18, 0, 17, 0, 17, 0, 18, 0, 18, 0, 51, 0, 17, 0, 17, 0, 17, 0, 19, 0, 17, 0, 51, 0, 17, 0, 17, 0, 18, 0, 51, 0, 18, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 19, 0, 16, 0, 18, 0, 51, 0, 18, 0, 50, 0, 18, 0, 66, 5]
8500430012001000130032001200100012001200120010001200120012001100120011001200110012001100120011001200110011001300110033001200100013001000130010001300100013001000120012001200100013001000130010001300320012003200120010001300100013003200120011001200110012001100120011001200110012001100110012001200330011001100110013001100330011001100120033001200100013001000130010001300100013001000120033001200320012004205

必要なのは、配列より後ろの

8500430012001000130032001200100012001200120010001200120012001100120011001200110012001100120011001200110011001300110033001200100013001000130010001300100013001000120012001200100013001000130010001300320012003200120010001300100013003200120011001200110012001100120011001200110012001100110012001200330011001100110013001100330011001100120033001200100013001000130010001300100013001000120033001200320012004205

部分なので、他の部分は削除しても構いません。コマンドを実行すればすぐにとれますしね。

これで、赤外線データを取得することが出来ました。

4. Pythonからテレビを付ける・消す

まずは公式から提供されているプログラムを修正します笑
提供されているものはどう頑張っても動きません

202行目の

write_command(memo_no,block2)

trans_command(memo_no,block2)

に変更します

trans_commandの第二引数のblock2へ

8500430012001000130032001200100012001200120010001200120012001100120011001200110012001100120011001200110011001300110033001200100013001000130010001300100013001000120012001200100013001000130010001300320012003200120010001300100013003200120011001200110012001100120011001200110012001100110012001200330011001100110013001100330011001100120033001200100013001000130010001300100013001000120033001200320012004205

が流れます。

これで、

python3 I2C0x52-IR/IR-remocon02-commandline.py t `cat I2C0x52-IR/5.dat`

を実行すると、テレビの電源がつきます。
もう一回実行すると、テレビの電源が消えます。

まとめ

  • 物理ボタンでテレビをオン・オフしました
  • 赤外線コードを取得しました
  • Pythonからテレビをオン・オフしました

公式のコードに手を加えて、動かすようにしました。
もう少しわかりやすくコードを直して、誰でも使えるようにしたいです。

I2Cがよくわからないなぁ…
どうしたらいいんだろ。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です