PIC16F84Aで作るAQUOSのリモコンの製作
我が家のテレビはシャープ社製のアクオスなのですが自力で赤外線信号を解析してリモコンが出来ないものかという取り組みです。

PIC16F84Aで作るリモコン解析装置の製作
そのための第一歩としてリモコン解析装置を作ることにします。
赤外線は受信モジュールが安価に売られているのでそれを利用し、PICもPIC16F84Aを使用します。
解析結果の表示はパソコンのハイパーターミナルを利用しパソコンの画面に表示をさせます。
解析の結果をパソコン上で管理することが出来て便利だと思います。
パソコンとの通信はRS232CでUSB変換ケーブルを使用します。秋月電子で扱っている安価な物で結構です。
いろいろネットで調べてみるとリモコンの信号の種類(フォーマット)が数種類あることがわかりました。
シャープ、パナソニックなどは家電協フォーマットと呼ばれる方式のようです。
NEC、東芝、日立などはNECフォーマット、SONYは独自の方式を採用しているようです。
せっかく作るのですから出来ればこの3種類全てが解析出来るプログラムが出来上がるとうれしいですね。
家電協方式とNEC方式はよく似ていますがSONYだけはちょっと違うようなので少し難関がありそうです。
以前にホームセンターで購入した万能リモコンでいろいろなメーカーのデータに設定できるのですが
それでも検証する物がないので困ってしまいますが役には立ちそうです。

とりあえずネットで探せるリモコンに関する様々な内容をお勉強して出来たものがこれです。
とても簡単な回路です。

プログラムも本来はあっさりとした物なのですがいろいろな方式に対応させるために複雑になってしまいました。
プログラムを作るに当たってのフォーマットの内容は秋月電子の
http://akizukidenshi.com/catalog/g/gK-04174/ にあるフォーマット解説などが役にたちました。ほかにも詳しく説明されているサイトがたくさんありました。

さてさてこんな感じな仕上がりです。
[KDN]とあるのは家電協方式という意味でここではアクオスの電源、選局↑↓、音量↑↓を表しています。
[NEC]方式では東芝のブラウン管テレビの電源、音量↑↓を、[SONY]は万能リモコンをSONY用に設定しての表示です。
H:はリーダー部のオンの時間です。T(0.4mS)X9=3.6mSという意味ですが気温によって8になります。
リモコンの問題なのかこちらの問題なのかは不明です。
次のL:はオフの時間でT(0.4mS)X4=1.6mSです。
その後がデータとなり恐らくメーカー、機種、機能となっているのでしょう。

55とは「01010101」ということです。次の5Aは「01011010」です。
55 5A F1 48 68 8Bは
01010101 01011010 11110001 01001000 01101000 10001011 となります。
これを左から順番で送信していることになります。
そして最後にストップ用ビットを出して数10mS休止をしてまた繰り返されます。

パソコン側の表示ソフトはウィンドウズ同梱のハイパーターミナルでも良いのですが
いろいろなフリーソフトがありますので好きなソフトを使えば良いと思います。
ここに映っているのはSerister Version 1.2.5というソフトです。
ここからダウンロードできます。
通信の設定内容は
速度9600、データビット8、パリティなし、ストップビット1、フロー制御ハードウエア、です。
接続するポートはコントロールパネル>システム>ハードウェア>デバイスマネージャーの
ポート(COMとLPT)で確認出来ます。

写真の物は電源部分の7805やスイッチ、電源表示LEDなどが追加してあります。
操作方法ですがまずパソコンと接続し電源を入れるとタイトルが表示されます。そしてボタンを押します。
するとLEDが点灯しリモコン信号を待ちます。
そこでリモコンを操作するとその結果がパソコンに表示されLEDが消灯します。
家電協、NEC、SONYの切替はトグルスイッチで行います。うまく表示されるところが正解の場所です。
蛍光灯の光が強すぎると誤作動しますので注意が必要です。
ボタン電池CR2032では動作しませんでした。単3電池2個の場合は電圧が2.8Vでも正常に動作しました。

実は実際にリモコンの送信装置を作ってテストは済んでおります。
家電協方式でパナソニックとアクオス、NEC方式で東芝とバッファロー(BSチューナー)が送信成功しています。
SONYも成功しています。

PIC16F84Aで作るリモコン解析装置の回路図、ASM、HEXの詰め合わせ
ダウンロード
※家電協方式、NEC方式、SONY方式にに加えて三菱方式を追加した資料は下の方にありますので御利用ください。

この装置で解析させた主なアクオスのデータ
[KDN] H:09 L:04 DATA: 55 5A F1 48 68 8B 電源
[KDN] H:09 L:04 DATA: 55 5A F1 48 88 85 選局 UP
[KDN] H:09 L:04 DATA: 55 5A F1 48 48 89 選局 DOWN
[KDN] H:09 L:04 DATA: 55 5A F1 48 28 8F 音量 UP
[KDN] H:09 L:04 DATA: 55 5A F1 48 A8 87 音量 DOWN
[KDN] H:09 L:04 DATA: 55 5A F1 48 C8 81 入力切替
[KDN] H:09 L:04 DATA: 55 5A F1 48 91 41 地上D
[KDN] H:09 L:04 DATA: 55 5A F1 48 51 4D BS
[KDN] H:09 L:04 DATA: 55 5A F1 48 72 4C ch1
[KDN] H:09 L:04 DATA: 55 5A F1 48 F2 44 ch2
[KDN] H:09 L:04 DATA: 55 5A F1 48 0A 43 ch3
[KDN] H:09 L:04 DATA: 55 5A F1 48 8A 4B ch4
[KDN] H:09 L:04 DATA: 55 5A F1 48 4A 47 ch5
[KDN] H:09 L:04 DATA: 55 5A F1 48 CA 4F ch6
[KDN] H:09 L:04 DATA: 55 5A F1 48 2A 41 ch7
[KDN] H:09 L:04 DATA: 55 5A F1 48 AA 49 ch8
[KDN] H:09 L:04 DATA: 55 5A F1 48 6A 45 ch9
[KDN] H:09 L:04 DATA: 55 5A F1 48 EA 4D ch10
[KDN] H:09 L:04 DATA: 55 5A F1 48 1A 42 ch11
[KDN] H:09 L:04 DATA: 55 5A F1 48 9A 4A ch12
[KDN] H:09 L:04 DATA: 55 5A F1 48 06 4F 番組表
[KDN] H:09 L:04 DATA: 55 5A F1 48 27 80 戻る


PIC16F84Aで作るAQUOS リモコン
(AQUOSだけじゃなくPANASONIC TOSHIBA SONY MITSUBISHIもたぶん大丈夫)

さて、いよいよリモコンの製作です。
前の解析装置で家電協、NEC、SONYと3種類が解析出来ましたので
リモコンも3種類に対応する設計にしました。
リモコンの設定はプログラムの内容を変更して行いますのでMPLAB-IDEの扱いが出来て
PICへの書込みが出来る環境のある人に限ってしまいますのでご了承ください。

下はプログラム方法です。
[KDN] H:09 L:04 DATA: 55 5A F1 48 68 8B 00 00
これは解析装置で得られたアクオスの「電源」のデータです。
これをリモコンのプログラムのMAIN0〜MAIN7の任意の場所に書込みます。

[KDN] H:09 L:04 DATA: 55 5A F1 48 68 8B 00 00

MAIN0 ;<<CH_A>>

MOVLW KDN ;←★
CALL _SELECT_ ;フォーマット選択部

MOVLW 0x09 ;H←★
CALL _LEADER_H ;リーダーH部

MOVLW 0x04 ;L←★
CALL _LEADER_L ;リーダーL部

MOVLW 0x55←★
CALL _DATA_ ;データ部

MOVLW 0x5A←★
CALL _DATA_ ;データ部

MOVLW 0xF1←★
CALL _DATA_ ;データ部

MOVLW 0x48←★
CALL _DATA_ ;データ部

MOVLW 0x68←★
CALL _DATA_ ;データ部

MOVLW 0x8B←★
CALL _DATA_ ;データ部

CALL _TRAILER_ ;トレーラー部

GOTO MAIN_X

見づらいですが縦にデータを書き写していく要領です。
NECの方式も同様です。下は東芝の「電源」データです。

[NEC] H:10 L:08 DATA: 02 FD 48 B7 00 00 00 00

MAIN0 ;<<CH_A>>

MOVLW NEC ;←★
CALL _SELECT_ ;フォーマット選択部

MOVLW 0x10 ;H←★
CALL _LEADER_H ;リーダーH部

MOVLW 0x08 ;L←★
CALL _LEADER_L ;リーダーL部

MOVLW 0x02←★
CALL _DATA_ ;データ部

MOVLW 0xFD←★
CALL _DATA_ ;データ部

MOVLW 0x48←★
CALL _DATA_ ;データ部

MOVLW 0xB7←★
CALL _DATA_ ;データ部

; MOVLW 0x00←☆
; CALL _DATA_ ;データ部
; MOVLW 0x00←☆
; CALL _DATA_ ;データ部

CALL _TRAILER_ ;トレーラー部

GOTO MAIN_X

と、こんな感じです。
SONYはちょっと他と違います。SONYのデータは12ビットなので4ビットを3つと考えます。
解析装置に8BIT/4BITの切替があります。これはデータの表示を変更する物です。
例えば8BITで「A9」と表示された物を4BITで表すと「0A 09」となります。
SONYの「電源」のデータは4BITで「0A 09 00 00 00 」と表示されます。
12BITですので「09」の後の「00」もデータが無いのではなく「00」というデータなのです。
これは解析装置のプログラムの初期の設定の変更で無データを「00」ではなく
「FF」に変更して表すことが出来るのでそれを試すと「0A 09 00 FF FF」となるのでわかります。
SONYのデータは

[SONY] H:04 L:01 DATA: 0C 09 00 00 00 00 00 00

MAIN0 ;<<CH_A>>

MOVLW SONY ;←★
CALL _SELECT_ ;フォーマット選択部

MOVLW 0x04 ;H←★
CALL _LEADER_H ;リーダーH部

MOVLW 0x01 ;L←★
CALL _LEADER_L ;リーダーL部

MOVLW 0x0A←★
CALL _DATA_ ;データ部

MOVLW 0x09←★
CALL _DATA_ ;データ部

MOVLW 0x00←★
CALL _DATA_ ;データ部

; MOVLW 0x00←☆
; CALL _DATA_ ;データ部
; MOVLW 0x00←☆
; CALL _DATA_ ;データ部
; MOVLW 0x00←☆
; CALL _DATA_ ;データ部

CALL _TRAILER_ ;トレーラー部

GOTO MAIN_X

となります。プログラム冒頭のKDN、 NEC、 SONYもプログラム内容の一部なので
間違えることなく書いてください。
MAIN0にKDN(家電協)、MAIN1にNEC、MAIN2にSONYなどと混在しても問題なく使えます。
下記のプログラム関連のダウンロードの中に見やすい物を同梱しておきます。

回路はこんな感じです。飛距離は落ちますが簡易版の回路でも行けます。

下に回路図、ASM、HEXと設定の書込み例の詰め合わせを用意しました。
プログラムはアクオスで
RB0 電源
RB1 選局UP
RB2 選局DOWN
RB3 音量UP
RB4 音量DOWN
RB5 入力切替
RB6 地上D
RB7 BS
と設定してあります。

ダウンロード

押しボタンの数が多いのはRA2とRA3もスイッチにしているからです。
変更の方法は宿題とします。わからないときは連絡ください。



三菱のフォーマットがわかりました

これは赤外線受信モジュールの出力に10KΩ抵抗を接続しメディアプレイヤーで再生した画像です。
リーダー部分が無くいきなりデータがあるのがわかります。
各時間は推測ですがこの時間でリモコンを作って機器は認識しました。
三菱を追加した解析装置とリモコンの資料の詰め合わせも用意しました。
リモコンのファイルにはPANASONICのテレビと三菱のビデオデッキのデータとが入っています。
三菱のフォーマットにはリーダー部がありませんので解析で得たリーダー部の数値は無視してください。
ファイルの書き方を注意してください。

ビクターのフォーマットは[NEC]で解析出来ますがそのままリモコンに書き込んでも動作しない場合があります。
その場合はリーダー部を無くして書き込んでみてください。



家電協 NEC SONY 三菱フォーマット対応用解析装置及びリモコンのファイル
国内メーカーの殆どが解析出来るはず(?)です

ASM,HEX,回路図の詰め合わせ
ダウンロード




【おまけ】PIC16F84Aで作るAQUOSリモコン受信装置
(AQUOS以外でもお楽しみいただけます)

リモコンのデータも解析出来てそのデータでリモコンも作ることが出来たのだからそのリモコンの受信装置も作りました。
アクオスのリモコンの1CHから12CHに呼応するLEDが点灯します。選局ボタンで順番に移動もします。
音量ボタンではその点灯位置から16進法でLEDが上下します。電源ボタンで消灯です。

アクオスをお持ちでない方も他社のテレビリモコンで遊べる工夫をしました。
リモコンを当てると全てのLEDがランダムに点灯してイルミネーションになります。
リモコンを止めるとその位置でLEDは点灯を保持します。プログラムの変更は簡単です。

PICの書き込みソフトでEEPデータの最初の「FF」の部分をどんな数字でも良いので2桁を変更します。
絵では22に変更してあります。こうして書き込むとランダムイルミネーションに変更出来ます。
このプログラムはデータではなく赤外線の入力のみを扱っているので蛍光灯の強い光にも反応してしまいます。
それでもお楽しみいただけますが困る場合はセンサーの上に日よけを付けると良いと思います。
リモコンから光が出ているか確かめるリモコンチェッカーとしてもお使えいだだけそうです。

AQUOSリモコン受信装置の回路図、ASM、HEXの詰め合わせ。
ダウンロード



【参考動画】


【おまけのおまけ】PIC16F84Aで作る
国内メーカー14社分のリモコン受信装置の詰め合わせ


オーム電機製 簡単TVリモコン AV−R760Nを使って地デジテレビの受信装置を取り揃えました。
シャープ、パナソニック、東芝、日立、三菱、ビクター、サンヨー、ソニー、パイオニア、フナイ(DX)、ユニデン、
オリオン、by design、Mr Max、の地デジ用データです。
赤外線リモコンの解析には上記の解析装置を使用しました。
EEPROMデータの最初の2桁を任意の数値に変更すると赤外線の受信状況がわかります。
無信号状態でも赤外線を相当受信していることがわかります。これが多いと信号の受信状態が悪くなります。
ダウンロード





FRISKのケースで作ったアクオス用リモコン

【参考動画】

FRISK電子工作の項をご覧ください。





ご意見ご感想ご質問何でもどうぞのゲストブック(他の項の内容でもOKです)

 

内緒でお話がしたい人はこちらまで
picdetukuttemimasita@yahoo.co.jp

トップページへ戻る