前回、Arduino に赤外線受信モジュールをつなげ、なんらかのデータを受信していることを確認しました。今回はリモコンのデータの内容について調査をしましょう。赤外線リモコンの仕様について下記のサイトを参考にしました。

赤外線リモコンの通信フォーマット
http://elm-chan.org/docs/ir_format.html

リモコンフォーマット(秋月電子)
http://akizukidenshi.com/download/k4174_format.pdf

リモコンの出力は、HIGH(1)のとき38kHz (ソニーの場合は40kHz)でLEDを点滅させています。これはLEDの赤外線強度を上げるための工夫です。秋月さんの資料の下記の記述が参考になります。





赤外線受信モジュールPL-IRM0101-3 が信号を受けたとき、どのような出力をするのか確認しました。グーグル先生が教えてくれた下記のデータシートが参考になります。

INFRARED REMOTE CONTROL RECEIVER MODULE / PL-IRM0101-3
http://ledz.com/led.datasheet/PL-IRM0101-3.pdf


これを見ると、リモコンの出力がHIGH(点滅)の時に出力がLOWとなるようです。前回、波形が逆になっていると思ったのは合っていたようです。




気になる対応キャリア周波数ですが、データシートを見ると 38kHz でした。(ソニーフォーマットは正しく受けられるのかな?)




さて、問題はデータをどういう形で残して、どのように赤外線LEDに出力するかです。すでに学習リモコンをArduinoで実現した先駆者の方たちはたくさんいます。その中でも、@eiKatouさんのサイトのスケッチが読みやすく参考になりました。

ARDUINOでリモコンを作成 @eiKatouBlog
http://eikatou.net/blog/2012/07/arduino-remocon/


HIGHとLOWの期間をマイクロ秒で記録しているようです。下記のスケッチでリモコンのデータを確認しました。




回路は前回と同じものを使いました。




だいぶ前に使ったリモコンコンセントの電源ONのデータを受信してみました。


リモコンコンセントOCR-05 07-0155

  • 出版社/メーカー: オーム電機
  • メディア: ホーム&キッチン



データは比較的きれいに取得できたようです。



データの塊を拡大してみました。



プログラムの処理時間もあるので多少の誤差はあるにせよ、全体の波形はどのリモコンフォーマットにもおさまっていない気がします。。。独自のコードを使っているのかな?もう少し調べる必要がありそうです。
リモコンの世界は奥が深いです。
σ( ̄▽ ̄;)


関連記事
Arduino を学習リモコンにしてリモコンコンセントをON/OFFしてみた
http://makers-with-myson.blog.so-net.ne.jp/2014-04-05

Arduino に赤外線受信モジュールをつなげてみた(1)
http://makers-with-myson.blog.so-net.ne.jp/2014-03-26






Arduinoをはじめようキット

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス






リモコンコンセントOCR-05 07-0155

  • 出版社/メーカー: オーム電機
  • メディア: ホーム&キッチン