HomeMadeGarbage Loading

モーションコントローラ検討 ー二足歩行ロボットへの道4ー

ホーム
電子工作
Raspberry Pi
IOT
音楽

前回は二足歩行ロボットをMIDIコントローラで制御して楽しみました。

MIDIコントローラでモーション制御 ー二足歩行ロボットへの道3ー

ここでは更にモーション制御方法を検討しましたので報告いたします。

 

 

DAWソフトで制御

MIDIコントローラで歩行などの複雑な動作を実現するのは難しいと考え、
DAWソフトでの制御を思い立ちました。

DAWで動作シーケンスをかいて、再生で動作させるのです。

 

構成は以下の通りです。
loopMIDIで仮想MIDIポートをたてて、ほぼ前回のMIDIコントローラと同じ構成で制御しています。
DAWはReason11を使用しました。

 

しかし、やはりDAWを用いても歩行モーションを実現するには知識が必要で
それができれば そもそも歩行動作をあらかじめ書き込んで実行すれいいじゃないかという結論に至ってしまいました。

 

オリジナルコントローラ作製

次にオリジナルのコントローラ製作を思い立ちました。
二足歩行ロボットと同じ形のコントローラにしてモーション同期制御を目指します。

コントローラには二足歩行ロボットのサーボモータの数と同様に12個の可変抵抗を使用し、位置も同じように配置しました。
可変抵抗の値をESP32で読み取って通信します。

筐体は3Dプリンタで出力しました。
とりあえず上半身だけ結線してみました。

 

動作

これまでの通信方式を継承して、コントローラからはUSBケーブルで各可変抵抗の値をPCにシリアル送信して、
UDPで二足歩行ロボットに送信して動かしています。

UDPですとあまり高速にデータ送信すると二足歩行ロボット側のM5StackCが動作停止してしまい
高速な同期動作は実現できませんでした。

 

ESP-Now

コントローラ (ESP32) と ロボット (M5StackC) を直接通信させるべくESP-Nowを試してみました。

ESP-Nowによる通信は以前 確認済みです。

M5StickC 8Servos Hat でラジコンを堪能

動作

ESP-Nowで無線で直接通信しました。

 

UDPと比較して高速でデータ送信できるので非常にサクサク同期動作が実現できました。
しかもESP同士の直接通信なので環境に依存しないのも魅力です。

 

おわりに

ここではオリジナルのコントローラを製作してESP-Nowでの同期制御の実現を確認できました。

まだ上半身のみですので次回は全身で動作させてみたいと思います。

それでは次の道でお会いしましょう!

Related Posts

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください