AbudoriLab.

自律ロボットで誰でも遊べるよう試行錯誤するブログです。

ROS JP UG LT大会 ご注文はクローラですか?

AbudoriLabです。

先日のROS JPの勉強会(第45回 2022/2/20)でクローラの使用感について解説してきました。自律走行にクローラは果たして使えるのか?所感について触れていきたいと思います。

結論としては以下のような知見を得られたと思っています。それではスタート!

  • 少なくとも屋内環境では車輪型と全く同じ使用感で使えそう
  • 車輪と比べて接地面が広いため傾斜・段差にも強そう
  • 左右の組み立て差や抵抗差が大きいため、車輪とは違った制御が必要

f:id:abudori:20220221182712p:plain

ご注文はクローラですか?

ROS JP初参加!

今回、LT大会で共有した内容はクローラが自律ロボットで使用に耐えうるものなのか、という話題です。

rosjp.connpass.com

自律移動をするアルゴリズムは、ロボットの自己位置を推定し経路計画をするものが多いです。

現在の自己位置推定の手法は、車輪の回転数を積算して最終的な自己位置を推定するオドメトリの値を強く信じる傾向があります。

つまり、車輪型からクローラ型に変更した場合、どのくらい自律制御に影響が出るのだろうか、という疑問が湧くわけです。

 

f:id:abudori:20220221184205p:plain

CuGoV3諸元

使用するクローラはCuboRex製のCuGoV3です。

非常にコンパクトな上、片輪の耐荷重が50kgなので、差動二輪でロボットを組むことで搬送する荷物を含めて100kgのシステムを組むことができます。

詳しくはCuboRexのWebサイトをご覧ください。

cuborex.com

 

CuGoでオドメトリを出力してみました。

結論から言うと、車輪型より滑りが少なく、すくなくとも屋内環境では車輪型と全く同じ使用感で使えると思います。

屋外環境に関しては未検証なので、検証後、特有の問題がないかどうかなどまたシェアしたいと思います。

f:id:abudori:20220221184928p:plain

f:id:abudori:20220221184954p:plain

クローラでのオドメトリ取得結果

まずは一辺3mの四角形をコントローラ操作で走行させた結果ですが、とても綺麗な正方形となりました。

最終誤差は5,6cmくらいです。

ロボットのトレッド(車輪間の距離)設定がMisumiフレームで現物合わせなので誤差が比較的大きいです。

回転方向(今回は半時計周り側)の誤差はもっと小さくできる余地があるかもしれません。

何周もした結果からトレッドを微調整すればもう少しだけよくなるかもしれません。

いずれにせよ、悪くない精度です。

次に障害物を左側のクローラのみ踏ん付けさせた結果です。

オドメトリはぐねぐねしていますが、ラジコン操作自体がぐねぐね曲がっているので、このような走行をしていました。

左側のクローラが段差を乗り越えるため、平地だけを走っている右側のクローラより走行距離が長くなります(段差の高さの分だけ、左側のクローラの軌跡が右側のクローラより長くなります)。

そのため、オドメトリ に換算すると右側に逸れていくと思っていましたが、想像以上に正確にオドメトリが取れていました。

ちなみに段差は板が10mm、アルミフレームが10mmと20mm、最後のタイヤが60mmです。

クローラ特有なこと

f:id:abudori:20220223012905p:plain

クローラで段差を乗り越えるとき、どこかには引っかかってくれる

f:id:abudori:20220223014102p:plain

クローラの摩擦力を活かした利点

考えてみれば当然のことなのですが、クローラは車輪に比べて設置する面が非常に大きいので、段差では必ずどこかが引っかかってくれます。

そのため、単純な段差では空転するということが車輪型に比べて非常に少なくなります。

このクローラの摩擦力の大きさが活きてくるのは傾斜地です。

重量が重かったり、重心が中心でないロボットが傾斜地を走行すると谷側に引っ張られてしまいますが、その点クローラは楽勝です。

ほかにも窪地を抜け出すのはもちろん、砂地や草地の境界面で荷重や必要トルクが変わるような場面でも影響を受けにくいです。

f:id:abudori:20220225233245p:plain

クローラでの前後方向と回転方向の特性

しかし、クローラの摩擦が大きいという点はそのままデメリットにもなります。

部品点数が多く圧倒的に複雑なクローラは組み立て誤差が無視できず、左右に差が生じます。

そのため、直進するために同じ出力をしても回転し始めの制御が収束するまでの間に速度差が生じ、少し曲がることがあります。

ほかにも、その場旋回で逆方向に回転させる時には、反対側のクローラの駆動力の影響をもろに受けます。

互いに逆回転させますが、その力を受け打ち消し合います。

何も対策しなければ、PID制御のIゲインが貯まるまで発進できないくらいの影響を受けるのが実情です。

このように車輪ではいままで見えなかった抵抗方向を考慮した制御が必要になるのがクローラですが、人間が操作する戦車やショベルカーなどはVisualOdomで誤差を直したりIMUで補正したりしているのが普通なので、ロボットに適用する場合でも必要なのかもしれません。

 

皆さんはクローラを自律制御に使いたいですか?

f:id:abudori:20220223020202p:plain

クローラは自律制御にあり?なし?

以上、つらつらとクローラをROS対応していた過程での気づきを述べましたが、いかがでしょうか。

ロボットフレンドリーな施設であれば、メリットがメリットと感じられず、デメリットが目立つかもしれません。

しかし、自動化したいタスクの大半は整っていない環境だと思いますので、おおいにメリットが勝つと思います。

(個人的には自己位置を強く信じる手法よりも、相対的な位置や意味情報による論理的なプランニングになってからが本番かなと思いますので、そこまでロボティクス が進化したときはこのデメリットがデメリットにならないのではないか、と空想します笑)

また、段差があるからと言っていたずらにクローラにして解決!というのは短絡的すぎるというご指摘(意図が間違っていたらごめんなさい!)がありましたが、まったくもってそうだと思います。

部品点数もものすごく多いですし、それによって故障率も車輪に比べて段違いに高いです。

しかし、段差を乗り越えられるような車輪の装備(大きな車輪や全方位車輪、アクティブなダンパーなど)が手軽に手に入らない、または普及していないためそれに変わる回答が現在非常に少ないというのも実情です。

CuGo 自律ロボット開発キット発売予定!

f:id:abudori:20220223021419p:plain

f:id:abudori:20220223021518p:plain

CuGo自律ロボット開発キット内容

こちらの知見は自律キットに生かされますので、お問い合わせはこちらまで。

cuborex.base.shop