中野島ロボット

小さなロボットの自作記事を書いています。

週刊中ロボ259 自作ロボットに赤外線コントロールを追加するには

はじめに
焼損したコントローラーを秋月電子に木曜日の深夜に発注して土曜日の午後に配達されたのですが、ちょうど不在だったので受け取れませんでした。今週は日曜日にウィンドサーフィンのワールドカップの観戦に行くので、ロボットに触れるのは土曜日だけなので、予定していた「座椅子」型ロボットの焼損したコントローラを交換することができませんでした。

代わりに3Dモデル共有サイトの Thingiverse に以前上げていた「よつあし」に 質問が来ていた赤外線コントロールの追加方法についてコードを確認して回答してみました。

www.thingiverse.com

赤外線コントロールについて
中野島ロボットでは多くの人にロボットを作って、同時に遊んで貰いたい、複数台だと混線してしまう赤外線リモコンは使わないようにしているのですが、やはりちょっと自作のロボットを動かすなら、赤外線コントロールは便利なのでしょう。最近はArduino用リモコンなら便利なライブラリが用意されているので、実装はとても簡単です。

準備
ライブラリは DIYables_IRcontroller をインストールして使います。

これをArduino IDEにインストールするときに ライブラリの依存関係をインストール画面が表示されますが、”全てインストール”を選択します。

するとあわせて IRremote という元になっているライブライも追加でインストールされれば準備は完了です。

配線
確認にはArduino用の赤外線リモコンの17キーを使います。

今回は赤外線レシーバーの出力を Arduino の D12に繋ぎます。

確認
ファイルー>スケッチ例->DIYables_IRcontroller->IRcontroller_17 を選択します。

今回はピンをD12を使うので
#define IR_RECEIVER_PIN 12

に変更します。

赤外線リモコンに電池 CR2025 を入れて、キーを押せば、シリアルモニタに押したキーが出力されれば、赤外線通信は成功です。
あとは、押されたキーに対応するロボットのモーションを追加するだけで、自作のロボットに赤外線リモコン機能が追加できます。
つづきに
ただし、「座椅子」に使っている、Seeed Studio XIAO nRF52840 Sense には対応していないので、こっちは当初の予定通り ブルートゥースでコントロールします。 
折角なので、来週は「よつあし」の赤外線コントロールのスケッチを仕上げて、Thingivers にアップしようと思います。

 

つづく

購入品情報
DIYables_IRcontroller ライブライには 21キーのリモコン用のサンプルコードも用意されているので、沢山モーションを使いたいときは、21キーでも良いと思います。