「33日2足歩行ロボ」タグアーカイブ

SHISEIGYO-2 Walker の歩行を再検討3

すき 0
0

前回はSHISEIGYO-2 Walkerで逆運動学による歩行を確認しました。

33日後に2足歩行ロボットを完成させたい俺

上下前後を正弦波形で回転するように移動させる歩行から、もう少し人間らしい歩行を目指してみました。

 

 

足の前後

まずは片足で足をどれほど前後できるのか確認してみました。

足の高さ30mmで ゆっくりとですが前後 10mm ~ -10mm 移動できました。

支点動かして機体傾けるこの動作は面白いですね。
今後なにかに応用できそう。

 

歩行検討

片足を上げて前方に下げると同時に他方を後ろに下げて前進する人間っぽい歩行を目指します。

足の座標は以下のように動かしてみます。

動作

片足接地時にも足を後方に下げているので常に前進しており、割と自然な歩行になったのではないでしょうか?
足の高さ30mmで前後 5mm ~ -5mm 移動で歩行できました。

リアクションホイールの制御ゲインや回転検出ロータリエンコーダの4逓倍化などでオートバランスの精度向上を図りましたが前後移動は ±5~6mmが限界でした。
これ以上大股で歩くには足高さを低くしたりフライホイールのトルクを上げるしかなさそうです。

 

おわりに

ここではSHISEIGYO-2 Walkerの方向の再検討を実施いたしました。

安定性や歩幅の向上が実現され大変喜んでいます。

 
でも以前のほうがロボットらしくていいかなとも思わなくもない(;^ω^)

SHISEIGYO-2 Walker の歩行を再検討2

0
0

前回は2足歩行ロボット SHISEIGYO-2 Walker の足を逆運動学で位置指定して動かせるようにしました。

SHISEIGYO-2 Walker の歩行を再検討1

ここでは逆運動学での歩行について検証しました。

 

 

歩行検証

逆運動学による足先座標の指定動作を両足に展開して歩行動作を確認します。

足踏み

まずは両足の高さのみを正弦波形で変化させて足踏み動作の確認をしました。
他方を逆相で動かせば足踏みとなります。

リニアにサーボ角度を変えていた時よりも柔らかな動作になりました。
逐次足の高さを指定できるようなったことによる恩恵ですね。

歩行

足踏みが確認できましたので、いよいよ歩行に挑戦します。

座標は以下のように前後方向をX軸、上下方向をY軸としました。

以下のようにX軸、Y軸を正弦波形で変化させて足の座標を指定して動かします。
他方の足はこれと逆相で動かします。

 

動作

使用したミニサーボ FT1117Mではトルクが足りないようで異音がでて、良い感じの歩行になりませんでした。。

足をこまかに前後することでサーボ単体にかかる負荷が増したためと考えられます。

 

サーボ交換

トルク向上のためサーボを以下に変更します(ちょっとオーバースペックでサイズがでかいのが難点ですが。。)。

足踏み

ミニサーボと同様に正弦波で足踏み動作確認。

大変力強くいい感じ!

歩行

ミニサーボと同様に正弦波で歩行動作確認。

こちらは問題なく元気に歩行できました。

以前のように線形的にサーボの角度を直接動かしていたより、柔らかく生物的になった気がします。

 

おわりに

ここではSHISEIGYO-2 Walkerで逆運動学による歩行を確認しました。

次は前後方向のバランス耐性をリアクションホイールの調整含めて確認してみたいと思います。

それではまた

次の記事

SHISEIGYO-2 Walker の歩行を再検討3

SHISEIGYO-2 Walker の歩行を再検討1

0
0

以前製作したリアクションホイールを用いた2足歩行ロボットSHISEIGYO-2 Walker の歩行について再度検討したいと思います。

33日後に2足歩行ロボットを完成させたい俺

 

 

SHISEIGYO-2 Walker

バランスを2個のリアクションホイールでとって、二足歩行するロボットです。
片足を2個、合計4個のサーボモータで足を動かします。

これまでSHISEIGYO-2 Walkerの歩行は直接サーボの角度を指定して操作しておりました。

今後より精度よく足を操作するために逆運動学による制御を検討しました。

 

逆運動学

足の座標 (x, y) からサーボの角度 ($θ_1$, $θ_2$)を導出します。
片足の座標は以下で定義しました。

サーボのアームの長さは$L_1$、下肢の長さは$L_2$、サーボの軸間の長さを$l$とします。

 

各サーボの角度$θ_1$, $θ_2$は以下で導出されます。

$$θ_1=θ_a-θ_b$$

$$θ_2=θ_c-θ_d$$

$θ_a$, $θ_b$, $θ_c$, $θ_d$は三角比や余弦定理より以下で導出できます。

$θ_a = \tan^{-1} \left(\frac{y}{x-l/2} \right)$

${L_2}^2 = {L_1}^2 + {l_a}^2 – 2{L_1}{l_a}\cos{θ_b}  $
$θ_b=\cos^{-1} \left(\frac{ {L_1}^2+ {l_a}^2- {L_2}^2}{2{L_1}{l_a}} \right)$

$π-θ_c = \tan^{-1} \left(\frac{y}{x+l/2} \right)$
$θ_c =π- \tan^{-1} \left(\frac{y}{x+l/2} \right)$

${L_2}^2 = {L_1}^2 + {l_b}^2 – 2{L_1}{l_b}\cos{θ_d}  $
$θ_d=\cos^{-1} \left(\frac{ {L_1}^2+ {l_b}^2- {L_2}^2}{2{L_1}{l_b}} \right)$

 
よってサーボの角度$θ_1$, $θ_2$は足先の座標 (x, y)より以下で導出できる。

$$θ_1=\tan^{-1} \left(\frac{y}{x-l/2} \right)-\cos^{-1} \left(\frac{ {L_1}^2+ {l_a}^2- {L_2}^2}{2{L_1}{l_a}} \right)$$

$$θ_2=π- \tan^{-1} \left(\frac{y}{x+l/2} \right)-\cos^{-1} \left(\frac{ {L_1}^2+ {l_b}^2- {L_2}^2}{2{L_1}{l_b}} \right)$$

$$      但し、l_a = \sqrt{\left(x-l/2\right)^2 + y^2}$$

$$         l_b = \sqrt{\left(x+l/2\right)^2 + y^2}$$

 

動作

導出した逆運動学の式に基づいて、片足の座標を指定して動かしてみました。

 

スマホアプリBlynkで座標をジョイスティックで指定してBLEでSHISEIGYO-2 Walkerのコントローラ (ESP32)に送っています。

 

おわりに

ここでは2足歩行ロボット SHISEIGYO-2 Walkerの足を逆運動学での制御を検討しました。

制御関数が導出できましたので、次回は歩行座標を検討して歩かせてみたいと思います。

次の記事

SHISEIGYO-2 Walker の歩行を再検討2

33日後に2足歩行ロボットを完成させたい俺

0
0

HomeMadeGarbage Advent Calendar 2021 |24日目

これまで2軸の姿勢制御モジュール SHISEIGYO-2を用いて、特殊球体ホイール バランスロボット一脚 屈伸ロボを製作してまいりました。

 

 

ここではSHISEIGYO-2を用いて2足歩行ロボットの製作に挑戦しましたので報告いたします。

33日以内に製作するという縛りを自分に設けて実施しました。

 

 

サーボで足を構築

まずは1脚屈伸ロボを応用してサーボモータでの足製作を検討しました。

1日目

一脚 屈伸ロボ でも使用したサーボで片足を構築してみました。
滑り防止のため先はTPUフィラメントで出力しました。

2日目

足先がTPUだとフニャフニャ過ぎたのでPLAフィラメントで一体出力することにしました。

サーボはスマホアプリBlynkを用いてBLEで通信して制御しています。

3日目

もう片方の足用のサーボが届きました。

4日目

追加した足の動きもばっちりです。

5日目

両足の動作確認OK。
コントローラにはESP32を使用。

 

リアクションホイールと連結

リアクションホイール部と製作した足を繋げて倒立動作の実現を目指します。

6日目

作製した足をリアクションホイール部と接続しました。

問題なく点倒立が実現できました!

7日目

屈伸運動を確認。
問題ないようです。

8日目

片足立ちもできました。

9日目

足踏み動作を作りこみ。

10日目

リアクションホイール部と接続しての足踏み。
問題なく動作。

 

歩行に挑戦

サーボモータによる足での倒立が確認できましたので歩行に挑戦します。

11日目

前進動作を作りこみ。

12日目

2足歩行による前進が確認できました!

 

コードレス化

歩行動作が確認できましたので、制御線や電源線を内蔵化します。

13日目

これまではリアクションホイール部をM5Stack CORE2で制御し、足はESP32の評価ボードで制御していました。

足の制御をM5Stack ATOM Liteに変更しました。

14日目

M5Stack ATOM Lite とサーボ配線をユニバーサル基板でまとめて、足部をコンパクトにしました。

15日目

リアクションホイール部と結合し動作確認。
問題なし。

16日目

特殊球体ホイール バランスロボットと同様に電源供給をDCDCコンバータとLiPoバッテリで実施します。

17日目

外部からの電源線や制御線無しで独立動作を実現できました。

 

歩行検討

歩行動作の詳細検証を実施します。

18日目

後進も確認できました。

19日目

歩行スピードを可変にして動作確認。

20日目

坂道歩行もできちゃいました!

 

SDGs

マイコンを2個使っていたり、高トルクのサーボの使用などちょっと贅沢なので部品を再検討しました。

21日目

リアクションホイール部と足部でコントローラを分けていたのですが、専用ボードを製作してマイコンを一本化します。

基板は11/30に設計・発注しました。数千円で10日ほどの期間で基板が作れてしまう。
なんてすばらしいことでしょうか。

マイコンとしてESP32の評価ボードを用いてIMUセンサMPU6050とOLEDディスプレイも実装します。

22日目

新コントローラ基板での動作を確認。

23日目

サーボを 25kg・cm のものから 3.5 kg・cmのミニサーボ FT1117M に変更してみました。
問題なく動作いたしました。

高級動作検討

完成に向けて、さらに動作に磨きをかけていきます。

24日目

起き上がり動作も確認できました!

25日目

ホイールにカバーも付けて、歩行のスピードも上げて動作確認。

26日目

サーボ1個が軸がブレて高負荷時に異音がするようになったので追加購入しました。
到着までおあずけ。。

27日目

購入したサーボが届くまで25kg・cmサーボに戻して、動作検証を進めておきます。

左右の旋回が可能になり自由自在に行きたいとこに行けるようになりました。
旋回は片方の足を擦り付けるようにして回っています。

28日目

ホイールカバーと試しにニワトリ頭を付けてみました。

ニワトリは以下のモデルの頭を拝借して油性ペンで色付けしてみましたw
 https://www.thingiverse.com/thing:832722

29日目

購入したサーボが出荷されました。
早く来ーい!

30日目

サーボ到着!

 

仕上げ

部品がそろったので仕上げに入ります。

31日目

ミニサーボ FT1117M での足でも旋回動作を確認しました。
縦横無尽に動けます!

32日目

高速移動も確認!

 

完成

33日目

 

2足歩行ロボットと私

電子工作を趣味でやるようになってから結構経ちますが、
2足歩行ロボットを作るなんて夢のまた夢な状況でございました。

 

2足歩行ロボットに着手しだしたのは約半年前から

 

以下の書籍を参考に自分なりにアレンジして、自身と2足歩行ロボットとの距離を詰めてまいりました。

 

ここでの研究で気づいたのは、2足歩行ロボットは足を大きく重くして重心をそれなりに制御すればそこそこ歩けるということです。

 

実際、書籍の歩行プログラムそのままで上手に歩けています。

 

あとは人間のように自然に歩くにはサーボやセンサを増やして、自由度と感度を増やしていく方向になるかと思います。
2足歩行ロボットの歩行理論なんかも成熟しているかと存じます。

私がそこにお金をかけたところで理論を理解して人間のようなロボットを作れる確証は全くございません
(トラ技あたりが特集組んでくれればワンチャンあるかもしれないけど、今はとにかく専門書を読む気にはなれない)。

そこで、今回のようにリアクションホイールを用いた2足歩行ロボットの製作に至りました。
SHISEIGYO-2によるオートバランスシステムはすでにSHISEIGYO-2 Go屈伸ロボで確証済みでしたので、かなり実現確度が高いと踏んでおりました。

今後は足の高さや自由度の向上と考えております。
33日間でここまでやれました。333日、3333日と積み上げればドンドン進化するはずです。

とにかく継続
エンジニアリングは継続と好奇心であると思っております。

 

所感

#33日2足歩行ロボ をやってみて良かったです。

実際に思い描いた面白いモノができたことも当然良かったのですが、
ツイッターでの反応がとても良かったことも大変驚き 多くの喜びを得ることができました。
説明なく始めて説明なく淡々と動画や画像をあげるだけという実験的な試みであったので、どうなることかと思っていましたが うまくいってとにかく良かったです。

Twitterフォロワーもこの試みによって1300名以上増えました。
ありがたいことです。思いついたら なんでもやってみるものだなと改めて思いました。

あとこのロボットの名前は “SHISEIGYO-2 Walker” と命名いたします。

さて次は33日後に何を完成させようかしら

 

追記

2021/12/10

ねとらぼ様に取り上げていただきました。