頭と腕の動きの連動方法(リアルタイム操作:三点トラッキング)
- 頭部、両腕に取り付けたセンサにより、傾きをカルマンフィルタを用いて二軸分の予測値を計算する。
- 頭部:ヘッドフォンにAtom Marixを取り付ける
- 右腕、左腕:腕時計にAtom Marixを取り付ける
- 取得した値をESP-Now経由で、くまりん本体に取り付けたM5Stackに送信する。
- 受信した傾きに応じて、各関節に仕込まれたメカノイドのサーボモータの角度を動かす。
頭と腕の動きの連動方法(事前登録した動作の再生)
- 事前にくまりん本体に取り付けたM5Stackに、「おじぎ」や「バイバイ」などのモーションを登録しておく。
- 別のM5Stackのボタン操作により、再生するモーションをESP-Now経由でシグナルを送信する。
- 受信したシグナルに応じて、登録したモーションを再生して、サーボモータを動かす。
移動方法
- Wiiのヌンチャクのスティック操作した内容を、I2C通信でATOM Liteに送信する。
- 受信した値をESP-Now経由で、くまりん本体に取り付けたATOM Liteに送信する。
- 受信した傾きに応じて、脚部のタイヤに接続されたDCモータを回転させて移動する。
会話機能
- ATOM Camをスマートフォンで見れるようにインストールする。
- インストールしたアプリを使って、カメラの映像と音声をやり取りして会話する。
※ATOM Camは、ナイトビジョンの機能が実装されているので、そのままでも暗いところでも撮像可能。
サーボモータの制御方法:くまりん本体に取り付けたM5Stackの処理
受信した傾きの角度に即移動する事はしていません。
保存されたロール・ピッチの角度情報と、現在の角度情報を比較する
- ほぼ同じ場合(近似値は同一値とみなす)は、現状の角度を維持する。
- 異なる場合は、保存された値に近づくように、現状の角度を変更する。
この時、一気に同一の値にするのでなく、小さな角度を加減算して値に近づける。 こうすることで、急な角度変更は行われずに、人の動きに近い感じで動作して見えるようにしています。
くまりんパワーアップしてる!
(え、本体出てしまってよかったの?笑)
結構正確にトラッキングしていてすごい。
動画後編、、くまりんがキャタピラで移動しているよ。
暗闇にいくとナイトビジョンに切り替わるカメラなど、無駄(語弊)に高度な実装が素晴らしい。
見た目が圧倒的可愛さ。ずるい!
触り心地が気になります。。。
3点だけのトラッキングを、人間とは関節の動きが違うロボットで同じように動かすには腕を上げ下げする動きだけでも、2つの軸のサーボをそれっぽく制御しないと同じようには動かないのに、ラジオ体操までしちゃうとは驚きです♪