なる研
>
電子工作小品集
>赤外線リモコンの解析
赤外線リモコンの解析
IRリモートコマンダーなる物を計画しているのですが、私は赤外線通信の知識を全く持っていません。そこで、とりあえず手元にあるリモコンを解析してみようってことで。
ココに書いたのは完全な我流ですので参考までにしておいてください。(うちのコンテンツはみんなそうですが(^^))
●SONYの場合
例のごとくパソコンにマイク入力からSONYリモコンの信号を無理矢理押し込んでキャプチャしました(右図)。
秋月で買った「赤外線リモコン受信モジュール」に付いていた資料によるとリモコンの赤外線信号はPPM(Pulse Position Modulation)という変調方式でLが長い所が"1"、Lが短い所が"0"を表すそうです。
他のボタンも調べてみると後半4bitが変化しないので、ココが機種コードと思われます。
●受信あるごりずむ1
まず、最初の立下りで割り込みを発生させ、300us(マイクロ秒)待って1回目の読み込みをします、300us待つのは電圧遷移時のノイズやクロック周波数の変動による影響を極力減らすためです。以後600us毎にピンを読み、1回目と併せて6回分が[LLLLHL]と変化しない場合は待機状態に戻します(1)。
次に600us待ってコマンドコードの0bit目を読みます、以降[H]の場合は1200us待って次のbitを読み、[L]の時は1800us待って次のbitを読みます。これを8bit分繰り返して、レジスタを論理反転すればコマンドコードとして取り出せます。
同じようにして機種コードを取り出し、適合しない時は何もせず待機状態に戻します。
この方法だと、最初の割り込みがノイズによるものだった時に(1)で待機状態に戻るため、ノイズ直後の命令にも応答できます。 また、信号受信の途中でノイズが入ってもピン読み込みの瞬間でないかぎり影響はありません。ただ、送受信双方のクロックがある程度正確でないと信号の最後の頃のデータが化けてしまいます。
SONYのリモコンのコマンドをAVRでコーディングしてLEDに表示する実験をしてみました。
プログラム(for AT90S2313 4MHz)
回路図
写真
SONYリモコン解析結果バイナリ
●AIWAの場合
上図はAIWAのリモコンの波形です、SONYと比べてとても長い信号です。
この信号のデータ部分がPPMを上下ひっくり返した物と考えると
[011101100000010001001111110000000011111111]
となります。
このコード眺めていると規則性が見えてきました。
[0111011000000 / 1000100111111 / 00000000 / 11111111]
[機種コード14bit / 反転機種コード14bit / コマンド8bit / 反転コマンド8bit]
のような気がしますが、一つのサンプルからの予想では頼りないので、他のボタンの信号も見ます。すると予想した規則を満たしているようです。
[0111011000000 1000100111111 00100000 11011111]
[0111011000000 1000100111111 10100000 01011111]
[0111011000000 1000100111111 01100000 10011111]
抽出方法ですが、こちらはクロックの誤差が大きすぎるのかパルス幅が半端で不正確です、よって「あるごりずむ1」は使えません。
●受信あるごりずむ2
まずはリーダ部の検査です、ピンの立下り割り込みで時間を計り始め、次の立ち上がりまでの時間が8700us〜9300usでないと待機状態に戻します。この範囲に納まった場合は再び時間を計り始め、次の立下りまでの時間が5100us〜5700usでないと待機状態に戻します。
次のデータ部は、ピンの立ち上がりで割り込みが発生するようにしておき、割り込みから900us待ってピンを読みます。読んでから次の割り込みまでが1800us以上だとエラーとして待機状態にもどします。これを14bit分だけ繰り返して、反転コードと比較します。一致しない場合はデータを捨てて待機状態に戻します。一致したらコマンド8bitも同じように読み込みます。
この方法は割り込みを多用して頻繁に同期を取るため、クロックのずれが多少あっても正常に動作するようになっています。ただ、それ故に信号の途中でノイズが入ると同期が取れなくなりデータが化けます、でも反転コードがあるので、お化けは探知して退治することができます。
こちらもAVRで実験してみました、aiwaのリモコンの機種コードを無視してコマンドだけを読み出してLEDに表示します。
プログラム(AT90S2313 4Mhz)
回路図(sonyと同じ)
AIWAリモコン解析結果バイナリ
●関連リンク
(直リンク失礼しますm_ _m)
赤外線リモコンやってみました。 By?
TOP AVR STK500
IRCS98.COM 赤外線リモコン関連 ByFEZ様
TOP FEZのほめぱげ
とられてたまるか! 赤外線リモコン作成編 Byわた様
TOP 電子回路で遊ぼう
赤外線の大御所 Ir Hack様
<<電子工作小品集へ戻る
Since 2003/03/30
LastUpdated 2003/04/01
Copyright 2003 Naru
今日
昨日