Arduino で部屋のライトを自動点灯(失敗)(2)
(1からの続き)
部品が手に入ったところで、LED の点滅プログラムで Arduino デビューしたばかりだけど、赤外線リモコンの製作を始めた。
とはいっても、作り方の説明をしてあるサイトをそのまま真似て作るだけだ。
まず、以下のサイトが説明や図が分かりやすかったので、その通りにやってみた。
★ 参考サイト A
赤外線リモコンを作る | Make.
http://make.bcde.jp/arduino/%E8%B5%A4%E5%A4%96%E7%B7%9A%E3%83%AA%E3%83%A2%E3%82%B3%E3%83%B3%E3%82%92%E4%BD%9C%E3%82%8B/
図の通りに配線して USB ケーブルを Mac に接続。しかし、しばらくすると異臭がする! 慌てて USB ケーブルを引き抜いて停止したが、赤外線リモコン受信モジュールがすごく熱くなっている。このサイトの通りにやると壊れてしまいそう。
ということで、、今度は以下のサイトを参考にした。このサイトでは、リモコン信号の読み取りと、信号の発信でコードを別々にしている(先ほどのサイトは一つにまとめている)。
★ 参考サイト B
Arduinoでリモコン作成
http://eikatou.net/blog/2012/07/1796/
このサイト通りライトのリモコンを読み取ると、うまく信号を読み取れた! これは感動だった。最初サイトに書いてある「シリアル出力の速度を”57600 bps”に変更」の意味が分からなかったが、Tools > Serial Monitor で開くダイアログの右下で 57600 bps を選択すればいいと分かった。
ただ、読み取りはできるが、毎回数字が変わってしまう。信号に再現性がないのだ。これは、先ほど焼けかけた赤外線リモコン受信モジュールが壊れたせいだと思ったが、新しい赤外線リモコン受信モジュールと交換しても毎回信号が変わってしまう・・・。分かりません〜。
仕方ないので、計測したバラバラの信号をそれぞれ発信して試してみることにした。
サイトの指示通り、読み取った信号の数字を発信用のコードに書き込んで、いざ発信と思ったが、なぜか上手くいかない。信号が発信しないのだ。(赤外線が発信しているかどうかはデジカメやガラケーのカメラを通すと光っているかどうかを確認できる。参考: http://dokunabe.kir.jp/matome/irlook.html )
試しに、冒頭の参考サイト A のプログラムで発信をしてみると(type.h ファイルは、ソースコードと同じフォルダに入れる)、信号が出た!
どうやら、参考サイト B では信号の読み取りができ、参考サイト A のやり方だと発信がうまくできるようだ。B のコードで読み取り、A のコードで発信、という2段階で行うことにした。
配線はサイト A とサイト B を合わせたような、以下のように行った。
ただ、計測したどの信号を発信しても、リモコンが動かず・・・。
いろいろ調べたけど結局分からず、今回のプロジェクトは諦めることにした。