wroom-02をAPモードで使用する際は4台しか接続できない制限があり、多数のロボットを連動しようとするとうまく行かないので仕様を変更しました。
仕様
基本方針
・wroom02でサーボ制御させ、Wifi経由でスマホから操作する。マルチキャストを使って同ネットワークのコントローラーを連動。
インターフェイス
以下の2種を用意。
・HTML5で2軸(4CH)のプロポ模擬
・RCWController(スマホアプリ)に対応
Wifi設定
自機がAPになるモードと他のAPに接続するSTモードをDIP-SWで切替。(切替判断は起動時のみ)
・APモード:ESP_(チップID) という名前のSSIDになる。
・STモード:後述のSSID設定で保存されたAPに自動接続
設定の保存
・リバース、動作域設定、STモード時のSSIDをEEPROMに保存。
使い方
①DIP-SWを設定して電源ON
SW1: AP/STモード設定
SW2: 未使用
②スマホのWiFi設定でアクセスポイントをESP_(ID名)又はコントローラーと同じSSIDに設定
③スマホのブラウザでhttp://ESP_(ID名).local又はhttp://192.168.0.10(APモード時)を開く。RCWControllerの場合は IP:192.168.0.10(APモード時), PORT:10000 に接続
操作画面
メインページ(http://ESP_(ID名).local or http://192.168.0.10)
各CHのサーボを操作できます。ボリュームを操作するとSubmitボタンを押さなくてもサーボが動きます。
プロポモード(http://(IPアドレス)/Propo)
黒丸を操作するとサーボが操作できます。縦持ち横持ちに対応しています。http://ESP_(ID名).local/Propoでもアクセスできますが、名前解決に時間がかかり滑らかに動きません。
左(or上)のx軸,y軸、右(or下)のx軸,y軸の順にCH1~4が割り当てられています。左上の矢印は戻るボタンです。
設定
CH毎のサーボの可動域の制限、リバース、SSIDの設定ができます。また、BroadCastをONにすると同じネットワークの他のコントローラーが連動します。Submitボタンを押すと設定が保存されます。BroadCast以外は電源を切っても消えません。
動作例
結婚式余興用のロボットに組み込んだ例。11台を連動させています。
プログラムソース
GitHubに公開しました。
0コメント