KBKN-Autonomous-Robotics-Lab / IGVC2023-src

3 stars 0 forks source link

add no_map_navigation #57

Closed kengohozumi closed 1 year ago

kengohozumi commented 1 year ago

概要

その他

-gps_waypoints_north.yamlとgps_waypoints_south.yamlはadd/waypointsaveのブランチで追加を行います。

kengohozumi commented 1 year ago

すみません gps_goal_setter.pyとlocal_goal_setter.pyには gps_goal_setter1、gps_goal_setter2、 local_goal_setter1、local_goal_setter2、local_goal_setter3 とあるのですが何が違うのですか、、?

koki0624 commented 1 year ago

すみません gps_goal_setter.pyとlocal_goal_setter.pyには gps_goal_setter1、gps_goal_setter2、 local_goal_setter1、local_goal_setter2、local_goal_setter3 とあるのですが何が違うのですか、、?

全く覚えてないので、一応プログラムを見て思い出した範囲で回答しておきます。

Alpaca-zip commented 1 year ago

すみません gps_goal_setter.pyとlocal_goal_setter.pyには gps_goal_setter1、gps_goal_setter2、 local_goal_setter1、local_goal_setter2、local_goal_setter3 とあるのですが何が違うのですか、、?

前提として、逐次的にウェイポイントを生成して追従するlocal_goal_setter、gpsのウェイポイントに追従するためのgps_goal_setter、コース上のスロープを上って降りるまでの処理を実現するramp_detectの3つのノードがあります。 ※ramp_detectは本番では利用しませんでした。


local_goal_setter.py -> local_goal_setter2.py

主に以下を修正しています。

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/local_goal_setter2.py#L45-L53

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/local_goal_setter2.py#L262-L297

実際にはlocal_goal_settergps_goal_setterramp_detectの3つのノードをどの順番で実行するかを考える必要があります。local_goal_setter.pyでは、ソースコード内で次に実行するノードを指定していますが、local_goal_setter2.pyではノードの実行順番をパラメータとして持たせることで自由度の向上を実現しています。 https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/launch/no_map_navigation.launch#L49-L51


gps_goal_setter.py -> gps_goal_setter2.py

主に以下を修正しています。

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/gps_goal_setter2.py#L66-L89

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/gps_goal_setter2.py#L184-L192

こちらの変更も、local_goal_setter.py -> local_goal_setter2.pyと同様に、ノードの実行順番をパラメータとして持たせることで自由度の向上を実現しています。


gps_goal_setter2.py -> gps_goal_setter3.py

主に以下を修正しています。

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/local_goal_setter3.py#L110-L122

https://github.com/KBKN-Autonomous-Robotics-Lab/IGVC2023-src/blob/bab565335859927c7468d798819c6f2cb1ecca72/igvc2022/src/local_goal_setter3.py#L134-L171

ロボットがウェイポイントに向かって移動する際に、ロボットの前方にあるスペースが十分にあることを確認し、ロボットが進行方向に進むことができる場合にのみ、ロボットの周囲にある障害物を表示するスクリプトが追加されています。 どういう経緯でこの変更がなされたのかはよく覚えていませんが、おそらくデバッグ用ではないかと思います。


その他、小さな変更はいくつかありますが、そちらはソースコードを参照してください。

@koki0624 間違っている点や追加があれば教えてください。

kengohozumi commented 1 year ago

すみません lanchでコメントアウトされてたので使うときがあるかもしれないと思い、一応入れた程度でした。 waypoint_nav_igvc2023.cpp は使用予定ないので消去しました。

Alpaca-zip commented 1 year ago

一旦こちらは、マージしてしまいます。何か追加で問題が起きた場合にはissue出して対応してください。