本校には,2足歩行ロボット Robovie-X がそこそこの台数導入されています.
専攻科の授業で使っているのかな? 詳しくは知りませんが,僕も1台遊びで手元に置かせてもらってます.
Robovie-X には,そのコントローラとして PS2 型のコントローラ VS-C1 が付属しています.
これを Zumo のコントローラとして利用できないかと考えました.
ネット検索してすごくわかりやすい画像を見つけました. 本家はこちらです. 消えるとまずいので,ダウンロードして貼り付けています.あざますあざます.
左の図を参考に Zumo への配線を下記のように決定しました. ホントは右図の基板付きを買えばよかった.失敗です.仕方なく空中配線. ライブラリでどこに何がつながっているか指定できるので Zumo の信号と被らなければ基本的にどこでも良いと思います.
data | D2(PD1) |
---|---|
command | D4(PD4) |
attention | D5(PC6) |
clock | D3(PD0) |
ついでに旋回時に首を振るようにサーボを載せてみました.Zumo32U4 でサーボを動かす方法はこちらです. 赤いボールは PixyPet の先導車両用ですね. 前方車両を追尾する自動運転技術のデモ機です.無線コントロールしたかったのはこのためでした(^o^).
VS-C1 の機能を使うので必要ありません.単3電池2本だけご用意を.
PS2X_lib を HOME のライブラリに追加してください.Arduino IDE のライブラリマネージャからできたかな? ちょっと忘れちゃいました. PS2X_lib のスケッチ例があるので参考にします. 上記のピン接続は,config_gamepad() 関数で指示します. アナログ量が取得できるので,スティックの傾き具合から Zumo モータの速度を変化させています.
PS2RC.ino(左スティック上下で前進後退,右スティック左右で方向)
PS2RC_LR.ino(左右のスティック上下で左右それぞれのモータの前進後退)
ライブラリを追加することで,驚くほど簡単にできました.先人たちの知恵に感謝.