n-shinichiのアイコン画像
n-shinichi 2022年07月03日作成 (2022年07月08日更新)
製作品 製作品 閲覧数 757
n-shinichi 2022年07月03日作成 (2022年07月08日更新) 製作品 製作品 閲覧数 757

M5stickCでESPNOW、IMU情報使って直感操縦シンクロラジコン(07/07追記)

M5stickCでESPNOW、IMU情報使って直感操縦シンクロラジコン(07/07追記)

キャプションを入力できます

Blynkを使ったラジコン・・・
スマホのIMU信号、加速度データを送信してスマホを傾けるなど、、、
スマホのジェスチャーで倒立振子を操縦するのを作ろうとしたけど
Blynk関数の戻りが遅すぎ(長い時は0.1秒程度)て
倒立振子が倒れてしまう問題があった。

Blynkを使うにおいてもボタン、スライダなどの外部入力ならmsオーダーで全く問題は
ありません。でも、スマホの内部信号、たとえばIMUの加速度センサデータを
取得するには非常に時間が掛かるようです。

M5stickCで作る小さな倒立振子は固有振動周期が短いのでPID制御周期は短くする必要があり、
ある程度のロバスト性を確保するには100Hz程度必要です。
なので、、、0.1秒ほど待ちを喰らうと制御は成立しません。

そこで、M5stickCのIMUを使ってM5のジェスチャーで検討してみることにしました。
M5どうしだと使いやすいBlynkは使えません。

なので、高速で消費電力が少ないとされる、
ESPNOWを使ってみることにしました。
Blynkより設定のスケッチは多くはなりますが期待大です。

ESPNOW、、、
通信自体は基本はWifiのハード構成を利用ですがプロトコルは極端に簡略化されていて
送信は受信側のMACアドレスに対してデータを投げ捨てといった感じです。
なのでBLEのようにペアリングも不要で一旦仕組みを作ってからは運用が非常に楽です。

使ってみるとIMU信号の送信もmsオーダーでおよそ
送れます。なので倒立制御にも支障なく利用できました。

写真 モニタ表示の、、
1行目・・・Espnow-TX が送信機、1行目・・・Espnow-RX が受信機倒立ロボです。

とりあえず簡単なラジコン操作・・・シンクロ回転動作が出来始めたので
紹介です。
こんな感じで動かせてます。
https://www.youtube.com/watch?v=nMwmYoOZys4

前後進も追加してみました。 荒地のカーペット走行でテスト (2022/07/07追記)
https://www.youtube.com/watch?v=R-wg9Zb1neo&t=39s

中身のスケッチはほぼ同じなので
どれかをマスターにして周りでシンクロ動作で踊る?ってのもできるかもです。

詳しくはこちらです。
https://n-shinichi.hatenablog.com/

M5stickCで作る超簡単構成倒立ロボの紹介、
 ケースフレームはメルカリでも販売してますので興味のある方はどうぞ。。。

1
n-shinichiのアイコン画像
こちらのブログで詳しい説明をしてる場合があります。      https://n-shinichi.hatenablog.com/
ログインしてコメントを投稿する