Last updated on 2020年1月23日
nintendo WiiUとRaspberry Piでラジコン作りました。WiiUを電子工作に応用したのは多分僕が初めてです。というかWiiUが流行らなかったせいかWiiUの拡張機能を使ってる例がまず稀ですね。。
WiiUゲームパッドの左右のスティックで操作できます。また、カメラはサーボモーターを使い、180度の範囲でゲームパッドの向きに合わせて動きます。ゲームパッドの+ボタンで正面にリセットできます。
また、カメラはストリーミングで表示しながら操作できます。
Raspberry Piを使って開発言語はjavascriptとpythonです。
大雑把なシステム概要
WiiUについて
WiiUでは標準で搭載されているブラウザを使っています。
WiiUのスティックとゲームパッドの姿勢の取得にはWiiUの搭載ブラウザの拡張機能を使用しました。
任天堂のWEBサイトで丁寧に説明されてます。
また、値の取得はjavascriptを使って取得しています。
こんな感じ
var wiiuData = window.wiiu.gamepad.update();//window.wiiu.gamepadオブジェクト var left= wiiuData.lStickY //左スティックの向きを取得,上向きが正, 値域-1.0~1.0 var right =wiiuData.rStickY //右スティックの向きを取得,上向きが正, 値域-1.0~1.0 var angle=wiiuData.angleY//ジャイロセンサの回転量
Raspberry Piについて
Raspberry PiはWebIOPiというものを使って開発しました。ブラウザ部分をhtmlとjavascriptで開発でき、javascriptの部分からRaspberry PiのGPIOを制御できます。また、細かい制御はpythonで書きます。
カメラのストリーミングはMJPEG-streamerというソフトウェアを使いUSBカメラの映像をストリーミング再生しています。
基板はモータードライバTA7291pを使っています。去年の大会で使った基板を流用しています。