Arduinoでプラレールを動かす(1)

赤外線リモコンでモーターを動かそう!

でも、ただモーターを動かすだけではつまらない!

そうだ!プラレールを動かそう!

と、言う事でプラレールを買いました。

 

E233系湘南色。東海道線でよく見ますね。

 

単2電池で動かしていたような記憶があったんだけど、単3電池1本で動きます。

 

先頭車がモーター車なので2両目に基板を入れよう。

電源は2両目に入らなければ3両目に。

 

電源は電池にする?モバイルバッテリー?

とりあえず、バラそう。

Arduinoで赤外線リモコンを受信する(4)

リモコンのデータを受信してLEDを光らせることができたので、次はモーターを動かしたいと思います。

Arduinoにモータードライバをつなげて、モータードライバからモータを動かします。電源もモバイルバッテリーなどで動かせたらいいと思い、USBケーブルを配線しました。

配線、はんだ付け後、プログラムを作成。基本的にはLEDを光らせるのとほとんど同じ。

モーターはまだつなげずに、テスターで電気が正しく流れるかを確認。

とりあえず、問題なさそうなので今回はここまで。

 

Arduinoで赤外線リモコンを受信する(3)

赤外線通信フォーマットと全ボタンの入力コードが分かったので、「リモコンのボタンが押されたらLEDが光る」プログラムを作ります。

その前に、LEDと抵抗を二つ配線しました。

赤外線を受信するプログラムとボタンに対応するLEDを光らせるプログラムを入力。

実行した結果が左の写真。

上矢印キーを押すと画面下側のLED、下矢印キーを押すと画面上側のLEDが光ります。

データ受信、結果の出力ができたので次はモーターを動かそうかな。

 

Arduinoで赤外線リモコンを受信する(2)

購入した赤外線リモコンセットには説明書など一切ありません。

ネット情報をたよりにブレッドボードに配線しました。

(右下の抵抗は、余った部品でどこにもつながっていません)

さっそく赤外線通信のソフトを作ろう思ったが、リモコンの通信フォーマットがわからない。

調べると、NECフォーマット、家電製品協会フォーマット、SONYフォーマット、などがあることが分かりました。

今回購入したリモコンには説明書がないので、当然フォーマットは不明。

Arduinoはいろいろなライブラリーが公開されているのでフォーマットを調べるライブラリーを探すことに。

...ここにありました。https://github.com/z3t0/Arduino-IRremote

インストールして実行。

リモコンをポチポチ。

このリモコンはNECフォーマットだとわかりました。

全ボタンの出力コードを調べて今回は終了です。

Arduinoで赤外線リモコンを受信する(1)

赤外線リモコンセットを購入しました。

Arduinoを使ってリモコンのデータを受信します。

 

このあと、Arduinoとブレッドボードを使って配線します。

ルナレスキューを参考にスクラッチプログラミング

スクラッチを使ってルナレスキューを作りました。

「ルナレスキューは1980年にタイトーから発売されたアーケードゲーム。月面にいる遭難者を救うシューティングゲームである(wikipediaより)」

ゲームは前後半に分かれていて、前半は母艦(画面上の宇宙船)から月面に着陸するゲーム。後半は母艦に帰艦するゲームとなっています。

オリジナルは縦画面ですが、横画面で作成。

その結果、移動距離が短くなり、母艦に戻るのが難しくなってしまった。

 

プログラミング教室ではレトロゲームを参考にゲーム作りを行います。