« PICマイコンを使った赤外線リモコン (1) | メイン | PICマイコンを使った赤外線リモコン (3) 最終回 »

PICマイコンを使った赤外線リモコン (2)

 まず走らせたいモデル・カーの仕様ですが、進行方向はサーボ・モータで、進行速度はスピード・コントローラを介してマブチモーターで、それぞれ制御することにしました。
 LEDを用いたライトの点灯も、リモコン操作でできると面白いと思い実装しました。この目的に沿って作成した赤外線リモコンの送信機の回路図を次に示します。

2-1.gif
 PICマイコンは、定番の16F84Aを用いました。サーボ・モータとスピード・コントローラの制御のためには、ジョイスティック内の二つの可変抵抗の値を、PICマイコンのB0とB7およびB1とB6の各ポートでの信号の時間変化を演算処理してディジタル化することで行いました。A-D変換機能のないPICマイコンでよく使われている方法です。
 ライトのON/OFFは、A3ポートにつながっているスイッチで制御するようにしました。
 PICマイコンの内部で各入力信号を演算処理した後、3チャネルの送信ディジタル信号としました。このA0ポートからの信号は、FETで増幅することにより12個の赤外LEDを用いて送信できるようにしています。
 PICマイコンのプログラムを下に示すので、どのような演算処理が行われているかをみてください。

リスト1 送信機用PICプログラム list1.txt2-5.gif
 では、送受信に使用したディジタル信号について詳しく説明します。次の図を見ながら読んでください。

2-2.jpg 赤外LEDと赤外受光素子の組み合わせを用いて送受信するシグナルは、38 kHzで変調したものを用います。つまり、26μsを1サイクルとする矩形波が送信されている場合が1、送信されていない場合が0です。
 この1組の1と0のセットが一つのチャネルで、CH1はスピード・コントローラに、次のCH2はサーボ・モータの制御に用います。この二つのチャネルに含まれる情報は、1のシグナルにあるのではなく、実は0が継続する時間(ギャップ時間)にあるのです。
 前半で示した送信機のプログラムと、次回に示す予定の受信機のプログラムをもう一度読んでいただくとさらに理解が深まると思います。
 一方、モデル・カーのライト(LED)を点滅させるCH3の情報は、逆に1が継続する時間に込めてあります。そしてこの三つのチャネルを送信後はしばらく0の状態が続いて、再び最初にもどってCH1を送信し始めます。
 18msごとに、そのときそのときの送信機の入力に応じた情報が送信されているわけです。

  そのようにして送信された赤外線のディジタル信号は、受信機の受光素子で受け取ります。この受光素子には、フォト・ダイオードとともにアンプや演算回路も組み込まれています。その結果、38kHzで変調された信号が入力されている間は受光素子の出力は0,信号が入力されていない間は出力が1という、「負論理の出力」が得られます。この受光素子からの出力を、受信機のPICで処理するわけです。

 次回は、受信機について紹介します。

塩山 洋

カテゴリ:

トラックバック

このエントリーのトラックバックURL:
http://www.eleki-jack.com/mt/mt-tb.cgi/1932

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

最近のエントリ

このブログのフィードを取得
[フィードとは]
会社案内
情報セキュリティおよび個人情報の取り扱いについて

コメントとトラックバックは、spamを予防するために、編集担当が公開の作業をするまで非公開になっています。
コメントはそれぞれ投稿した人のものです。

Powered by
Movable Type 4.1