IR(赤外線)通信は、一般的で高価ではなく、使いやすい無線通信技術です。赤外線は可視光線とよく似ているが、波長がやや長い。つまり、赤外線は人間の目には検出されず、無線通信に最適なのです。例えば、テレビのリモコンのボタンを押すと、赤外線が1秒間に38,000回の周波数で点灯・消灯を繰り返し、テレビの赤外線フォトセンサーに情報(音量やチャンネルの制御など)を送信しています。
このチュートリアルでは、まず、一般的な赤外線通信プロトコルの内部働き説明します。次に、マイクロビットとIRコントローラーを使って、RGBモジュールを制御する方法を紹介します。
次のパーツが必要になります。
赤外線について
赤外線はなんですか
赤外線とは、特定の色を持つ通常の光のことです。赤外線の波長は約950nmで、可視光線よりも波長が短いため、私たち人間にはこの色が見えません。赤外線がリモコンに採用されている理由のひとつは、「使いたいけど、見られたくない」ということです。もうひとつの理由は、赤外線LEDは簡単に作ることができ、非常に安価であるため、私たちホビーユーザーが自分のプロジェクトに赤外線制御を利用するのに適しているからです。しかし、赤外線の光源は他にいろいろあることを知っておく必要があります。太陽は最も明るい光源ですが、電球、ロウソク、暖房システム、そして私たちの体からも赤外線が放射されています。
赤外線通信の一般的な変調方式は、38kHz変調と呼ばれるものです。自然界には38kHzのような規則性のある信号はほとんど存在しないため、この周波数でデータを送信する赤外線送信機は、赤外線の周囲の中でも目立つ存在となります。38kHz変調の赤外線データが最も一般的です、もちろん他の周波数も使用できます。
リモコンのキーを押すと、赤外線LEDが数分の1秒の速さで点滅し、エンコードされたデータが機器に送信される。
テレビのリモコンのIR LEDにオシロスコープを接続すると、上の図のような信号が表示されます。この変調された信号は、まさに受信システムが見ているものなのです。受信装置のポイントは、この信号を復調して、マイコンが読めるようなバイナリの波形を出力することです。上の波をVS1838BのOUT端子で読むと、2番目のようになります。
変調
熱を発するものはすべて、赤外線も発する。そのため、赤外線メッセージを間違いなく受信機に届けるためには、いくつかの注意を払う必要があります。信号をノイズから浮かび上がらせるには、信号をキャリア周波数で変調する必要があります。変調とは、特定の周波数で赤外線光源を点滅させることです。IRレシーバーは、その周波数に合わせて調整されているので、他のものを無視することができます。下の写真では、変調された信号が左側の送信機のIR LEDを操作しているのがわかります。
検出された信号は、反対側の受信機から出ています。
(Thanks to SBProjects.com for the gif and excellent IR resource!)
赤外線レシーバー「VS1838B」の技術的詳細
vs1838b IRレシーバーはピンアウトです。
赤外線リモコンについて
赤外線リモコンは、デバイスをワイヤレスで制御する最も安価な方法です。私たちは、小さく、非常にシンプルで、低コストのリモコンを設計しました。赤外線リモコンには様々な種類があります。これらのリモコンは、エンコード方法や物理的なボタンの数が異なり、ボタンが押されたときに受信するコードも異なります。
配線図
IRレシーバーの接続
IR receiver | Micro bit |
VCC | 3.3V |
– | GND |
S | P8 |
RBGモジュールとマイクロビットを以下のように接続します
RGB Module | Micro bit |
GND | GND |
R | P0 |
G | P1 |
B | P2 |
コードを作るのに慣れていない方もご安心ください。まず、このリンクを入力してください: https://makecode.microbit.org/reference マイクロビットブロックのリファレンスから取得します。
このプロジェクトでは、拡張URLは https://github.com/osoyoo/OSOYOO_IR です。
Micro: bit V2.0.をお使いの方は、この拡張子のURLを入れてください。
https://github.com/osoyoo/OSOYOO_IR_V2.0
以下のコードをコピー&ペーストするか、エディタウィンドウの右上にあるオープンアイコンをクリックして、ご自分のMake Codeエディタで編集してください。 また、コードウィンドウの右下にあるダウンロードボタンをクリックして、このサンプルをダウンロードすることもできます。
v1-v1.5:
https://makecode.microbit.org/_KtKCrkR1eLJ1
V2 :
https://makecode.microbit.org/_HDACU3b3fXwP
テストの結果
ダウンロードが完了した数秒後に、リモコンの「CH-」ボタンを押すと、RGB LEDが赤に変わり、リモコンの「CH」ボタンを押すと、RGB LEDが緑に変わり、リモコンの「CH+」ボタンを押すと、RGB LEDが青に変わります。
DownLoad Url osoyoo.com
You must be logged in to post a comment.
Works great. I verified the code and extension on Microsoft V1 and used Seeed Grove IR Receiver. Only issue is I get from the makecode on-line IDE a message “cannot read property of:pressed event” – surprised that it compiled and executed! Would like a similar project using the microbit as a IR transmitter.