These PRs change the way the localization data is routed through our software architecture.
old: icp_tools → state_estimator → quadruped_tf_publisher → tf / topic for 3rd party usage
new: icp_tools → localization_manager → tf / topic for 3rd party usage
As discussed with , and , the state estimator does not process the localization data anymore. It is now sent to a localization manager, which in the future can take more data from other localization modules (RTK GPS, potentially visual odometry, etc.), and do some optimization and outlier detection. Overall performance should be improved, as the state estimator can save some CPU time. Also, the timing issue in the localization is solved by this change.
The quadruped state message and class do not contain information about the map frame anymore. This information now lies in the roco state.
Free gait is the only controller using the map frame. The free gait controller now takes the transformation from the roco state, the free gait rviz plugin subscribes to an additional localization topic.
The map_ga frame has been completely removed.
These changes have been tested in simulation and on Bany.
These PRs change the way the localization data is routed through our software architecture.
old: icp_tools → state_estimator → quadruped_tf_publisher → tf / topic for 3rd party usage
new: icp_tools → localization_manager → tf / topic for 3rd party usage
As discussed with , and , the state estimator does not process the localization data anymore. It is now sent to a localization manager, which in the future can take more data from other localization modules (RTK GPS, potentially visual odometry, etc.), and do some optimization and outlier detection. Overall performance should be improved, as the state estimator can save some CPU time. Also, the timing issue in the localization is solved by this change.
The quadruped state message and class do not contain information about the map frame anymore. This information now lies in the roco state.
Free gait is the only controller using the map frame. The free gait controller now takes the transformation from the roco state, the free gait rviz plugin subscribes to an additional localization topic.
The map_ga frame has been completely removed.
These changes have been tested in simulation and on Bany.
Related PRs:
https://bitbucket.org/leggedrobotics/any_gazebo/pull-requests/74/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal/pull-requests/144/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_b/pull-requests/35/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_bear/pull-requests/148/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_ctrl_staticwalk/pull-requests/18/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_ctrl_test/pull-requests/23/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_ctrl_trot/pull-requests/17/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_highlevel_controller/pull-requests/87/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/anymal_state_estimator/pull-requests/78/feature-new-localization-pipeline/diff
https://github.com/leggedrobotics/free_gait/pull/65
https://bitbucket.org/leggedrobotics/free_gait_anymal/pull-requests/83/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/icp_tools/pull-requests/18/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/loco_crawling/pull-requests/114/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/locomotion_planner/pull-requests/2/feature-new-localization-pipeline/diff
https://bitbucket.org/leggedrobotics/quadruped_common/pull-requests/147/feature-new-localization-pipeline/diff