ESP-WROOM-02/32 Wi-Fi ラジコンカー(改2)
旧記事「ESP-WROOM-02/32 Wi-Fi ラジコンカー(改)」は、スマホのジャイロセンサーを使って操作するものでしたが、最新のブラウザからは操作できなくなっています(^-^;)
改修するのが難しそうなので、以前から考えていたジョイスチック風の操作画面に改変しました。
メインのスケッチは、ほぼそのままでスマホ上の操作画面だけを書き直しました。
旧記事と同様に iPhone または Android 端末から操作します。
ラジコンカー本体のハード構成は変更ありません。
操作アプリ画面
本体への組込み
ソースファイル内のライト、警笛、左右のモータードライバへの接続にこの記事と異なるポートを使用する場合は、該当のポート番号を変更してください、また、複数台のラジコンカーを作る場合はそれぞれのSSIDを重複しないように変更してください。
これらの変更を行った後に、コンパイルして、ESP-WROOM-02またはESP-WROOM-32へ書込みます。
起動
本体は電源オンで、Wi-Fiアクセスポイントとして起動します、スマホで本体のSSID(ESPCar02)へパスワード(ESP12345)を入力して接続します。
接続できたら、スマホブラウザのURLに本体のIPアドレス(http://192.168.4.1)を入力して接続します。
スマホに操作画面が表示され、操作できるようになります。
操作方法
起動したときに表示される大きな円の中央に表示されている赤い円ボタンをスライドさせるとスライドした方向にラジコンカー本体が移動します。
移動する速さは大きな円の中心からのスライド量に連動、また移動する方向はスライドする方向になります。
スライド方向やスライド量を変えて操作してください。
画面から指を離すと円ボタンは中央に戻り、ラジコンカーは停止します。
「クラクション」ボタンは押すと本体に接続した圧電スピーカーを鼓動します。
「ライト」は本体に接続したLEDを点灯/消灯します、このボタンはトグル動作です。
*本体のライトはスマホとの通信が途絶えた場合には、0.5秒間隔で点滅します。
ソースコード
# | 名前 | 内容 |
---|---|---|
1 | CarController2.ino | 本体 |
2 | AnalogWrite.ino | PWM内部関数 |
3 | index_html2.h | スマホ操作画面 |
コメント:2
ブラウザで接続した後数秒は値が送信されるのですが、少し経つと通信が切れserver startからやり直してしまいます。テストでarduinoのシリアルモニタで確認したときにそのようになってしまい、まだモータなどには接続してはいないのですが、原因がわかりません。電源はパソコンからusb給電しています。
2020/12/23 @ 01:56 PM
高校2年 より
>少し経つと通信が切れserver startからやり直してしまいます
1)使用したボードは ESP-WROOM-02 または、ESP-WROOM-32 どちら?
2)現象からすると、ボードが再起動しているように思います。
再起動前後のシリアルモニターの表示を見せてください。
(再起動の要因が表示されているのではないかと思います)
2020/12/23 @ 03:31 PM
goji より