Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HSRの移動について #18

Open
TakahashiNanami opened this issue Dec 10, 2020 · 15 comments
Open

HSRの移動について #18

TakahashiNanami opened this issue Dec 10, 2020 · 15 comments

Comments

@TakahashiNanami
Copy link

/hsrb/command_velocityのトピックを使って真っ直ぐに進もうとすると少し回転して進んでしまうのですが、これはこのシミュレータの仕様でしょうか?

@yosuke
Copy link
Member

yosuke commented Dec 10, 2020

どの程度曲がるかにもよるのですが、シミュレーションを高速化するためにある程度物理演算を端折ってタイヤがスリップしやすくなっている環境を使っており、できればこの環境で本番も行いたい(シミュレーション速度を優先したい)と思っています。
ひどく曲がるようであれば対策を考えるので教えてください。

@akaitatitatisann
Copy link

物体把持を行う際、物体を掴める位置を算出し微調整を行うのですが、その際スリップしてしまい、物体把持が失敗してしまいます。可能であれば、スリップしにくくしていただけないでしょうか?

@yosuke
Copy link
Member

yosuke commented Dec 12, 2020

どの程度改善すればよいかわからないので、失敗する様子の動画を見させてもらえるでしょうか?
把持の際のズレの問題に関しては、 #11 も参考にしてください。

@akaitatitatisann
Copy link

こちらが把持失敗時の動画になります。プログラムの詳細としては、立ち位置を算出してから把持に移行するのですが、その際の調整の時に直進せずに少しずつ曲がってしまいます。ご確認よろしくお願い致します。
https://drive.google.com/file/d/108bNOUcaJc29TIuasoj1l3vDzjwUgDX-/view?usp=sharing

@yosuke
Copy link
Member

yosuke commented Dec 13, 2020

ハンドを前に出してからの動きが本来まっすぐのはずの動きだと思いますが、かなり曲がっていますね、、、。
こちらではこのような動きはなかったはずなのでちょっとおかしいです。
再現するか試してみます。

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

問題が再現しました。HSRの台車はアクティブキャスタ機構を使っているのですが、その機構がステアリング軸で回転するときに曲がってしまうようです。
動輪のスリップの問題だと思うので、少し調整してみます。

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

物理演算の高速化機能(fast_physics)をオフにしても曲がる症状あり。
gazeboの最近のアップデートだろうか?

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

Gazebo 9.16.0のリリース日が2020-11-24なので少し怪しい。
https://github.com/osrf/gazebo/blob/gazebo9/Changelog.md

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

一つ前のパッケージ(Gazebo 9.9.0)に戻したところひどく曲がる症状は多少改善された。
最近気になっていたシミュレーション速度低下の症状もなくなったのでまずはこれで様子見するか?

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

@TakahashiNanami @akaitatitatisann
最近アップデートされたGazeboの影響もあったようなのでダウングレードしました。docker-compose pullしてイメージを更新して試してみてください。
とはいえ、まだ多少は曲がります。HSRの動輪の幅を薄くすればさらに改善できることは確認したのですが、それだと実機と変わってしまうので今回は実施していません(実機でも同じ使い方をすると多少曲がると思います)。
基本的には自己位置推定を使って絶対座標に移動できるrosnavの移動を使うのがお勧めです。また、cmd_velを使う場合もスピードを抑えれば曲がりは多少改善します。

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

シミュレータの速度低下については、以下のissueで解決する。
hsr-project/tmc_gazebo_task_evaluators#1

@akaitatitatisann
Copy link

ありがとうございます。試してみます!

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

ご推察の通り0.1です。ただこれをこれ以上小さくすると収束しなかったような、、、。
https://github.com/hsr-project/hsrb_rosnav/blob/master/hsrb_rosnav_config/config/move_base.yaml#L69
通常の使い方だとここからMoveItの座標指定で誤差が吸収されるのですが、そうではない使い方なのですよね、、、。

@TakahashiNanami
Copy link
Author

ありがとうございます。説明していただいた使い方とは異なる使い方をしておりました。これを機に他の方法を試してみようと思います。様々対応していただき、ありがとうございました。

@yosuke
Copy link
Member

yosuke commented Dec 14, 2020

念のためxy_goal_toleranceを0.01に設定して動かしてみたのですが、やはり収束しないようで厳しそうです。
もし今回実装している戦略が実機で使っているのと同じもの(シミュレータだけで動かない)ようであれば、今後改善しなければならない課題になりますので教えてください。他のシミュレータ(SigVerseなど)で動いていたものの場合、それぞれのシミュレータが提供するタイヤのスリップなどが無い理想世界でのみ有効な戦略の可能性があるので、工夫を検討してください。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants