-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Added laser data from map in nav2_loopback_sim #4617
Added laser data from map in nav2_loopback_sim #4617
Conversation
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
Codecov ReportAll modified and coverable lines are covered by tests ✅ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for taking this on! Largely looks great but a few bugs / nits that are good to have resolved that I think makes it even better :-)
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
Converting PR to draft for implementation of |
Thanks! Looks so much better already! :-) |
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
@SteveMacenski Should I change PR status then? |
I assume you tested this and see a reasonable laser scan that Nav2 can use? Just checking before I do my final pass through that 'this has shown to work' :-) |
nav2_loopback.mp4This is working of nav2_loopback_sim, laser scan with nav2 |
I generally approve except for the
Generally looks good! I think something is possibly going on (?) since the laser scan appears to be flickering between 2 solutions, even when the robot is still. These should perfectly line up since there's no source of error. If there's no error/noise and the robot's TF doesn't move, this should be completely deterministic. I'm wondering if that's from something in the ray tracing that the line iterator should resolve or the call to TF. You use TF lookups to get the map->laser frame, but we do have map->odom and odom->base_link transforms in the simulator exactly. I suppose if you looked up at startup base_link->laser frame and cached that, then it should be 100% aligned (if that's the error cause) |
Yea it's not due to ray tracing, while testing with nav2 Itested with nav2_bringup so amcl is also publishing another tf I think a parameter for publishing map to odom will be the solution for this |
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you try the line iterator method? Perhaps you didn't push this to origin
so I could see
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
I like this in concept. I'm a little unclear why they seem to "stack up" to so much thickness of the wall -- shouldn't it have hit one of the previous cells before being basically on the other side of the wall's thickness? We do this in the collision footprint checker in cell coordinates with 0.5 cell steps -- maybe that's worth a try instead of using world coordinates?
I also like this in concept, but the arcing is a bit unnatural and I think would cause some odd behaviors with some localization algorithms. I think like the previous LineIterator comment, perhaps there's a way to adapt this to be more natural and create a more clean "line" behavior. For example (though maybe not the best solution):
|
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Jatin Patil <[email protected]>
de6ee19
to
ee5db1d
Compare
This has been fixed. Now it is working perfectly loopback.mp4 |
Signed-off-by: Jatin Patil <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Thanks @JatinPatil2003 ! This is really nice to have + the option now for using other localizers with the 'perfect' data! |
* Added laser data from map Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed few requested changes Signed-off-by: Jatin Patil <[email protected]> * Fixed linting Signed-off-by: Jatin Patil <[email protected]> * Requested changes Signed-off-by: Jatin Patil <[email protected]> * Linting Signed-off-by: Jatin Patil <[email protected]> * Added parameters and fixed requested changes Signed-off-by: Jatin Patil <[email protected]> * linting Signed-off-by: Jatin Patil <[email protected]> * Added scan using LineIterator Signed-off-by: Jatin Patil <[email protected]> * LineIterator max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * min of max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * final updates working correctly Signed-off-by: Jatin Patil <[email protected]> * Fix lint Signed-off-by: Jatin Patil <[email protected]> * requested changes Signed-off-by: Jatin Patil <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Jatin Patil <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Steve Macenski <[email protected]>
* Updated README Table once Jazzy jobs turn over (#4482) * add new Jazzy matrix * missing header * test toolg * retry * done! * trim * trim * fix OS[0] * shutdown services in destructor of `ClearCostmapService` (#4495) Signed-off-by: GoesM_server <[email protected]> Co-authored-by: GoesM_server <[email protected]> * adjusting backup speed to be more reasonable (#4501) * Adding Costmap filters to system tests and cleaning up old gazebo classic files (#4502) * removing old files * removing old refs to gazebo classic * porting test body * including in root * Dock panel (#4458) * Initial docking panel Signed-off-by: Alberto Tudela <[email protected]> * Only one goal status Signed-off-by: Alberto Tudela <[email protected]> * Added dock pose Signed-off-by: Alberto Tudela <[email protected]> * Fix size of text Signed-off-by: Alberto Tudela <[email protected]> * Update rviz Signed-off-by: Alberto Tudela <[email protected]> * Update rviz config Signed-off-by: Alberto Tudela <[email protected]> --------- Signed-off-by: Alberto Tudela <[email protected]> * Fix default view (#4504) * Fix logo in nav2 panel (#4505) * Fix logo in nav2 panel Signed-off-by: Alberto Tudela <[email protected]> * Move icon Signed-off-by: Alberto Tudela <[email protected]> --------- Signed-off-by: Alberto Tudela <[email protected]> * Fix world to map coordinate conversion (#4506) Signed-off-by: HovorunBh <[email protected]> * Update README.md Signed-off-by: Steve Macenski <[email protected]> * Add dock id (#4511) * Implement dock id Signed-off-by: redvinaa <[email protected]> * Update tests Signed-off-by: redvinaa <[email protected]> * Update docs Signed-off-by: redvinaa <[email protected]> * Fix virtual override error Signed-off-by: redvinaa <[email protected]> --------- Signed-off-by: redvinaa <[email protected]> * fix(nav2_costmap_2d): make obstacle layer not current on enabled toggle (#4507) Signed-off-by: Kemal Bektas <[email protected]> Co-authored-by: Kemal Bektas <[email protected]> * min_turning_r_ getting param fix (#4510) * min_turning_r_ getting param fix Signed-off-by: Ivan Radionov <[email protected]> * Update nav2_mppi_controller/include/nav2_mppi_controller/motion_models.hpp Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: Ivan Radionov <[email protected]> --------- Signed-off-by: Ivan Radionov <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Ivan Radionov <[email protected]> Co-authored-by: Steve Macenski <[email protected]> * fixing gz sim launch file by using gz directly (#4514) * port wait behavior to new gazebo (#4471) Signed-off-by: stevedan <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Steve Macenski <[email protected]> * Completely rewritten spin, backup, and drive on heading tests to remove flakiness (#4515) * port backup behavior to new gazebo Signed-off-by: stevedan <[email protected]> * port drive on heading behavior to new gazebo Signed-off-by: stevedan <[email protected]> * completely rewritten spin test * lint * complete flaky test rewrite --------- Signed-off-by: stevedan <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: stevedan <[email protected]> * Return out of map update if frames mismatch. Signed-off-by Joey Yang (#4517) Signed-off-by: Joey Yang <[email protected]> * Fix error_code_id (#4522) Signed-off-by: redvinaa <[email protected]> * completely shutdown dyn_params_handler_ (s) (#4521) * completely shutdown dny_params_handler_ in nav2_amcl Signed-off-by: GoesM_server <[email protected]> * completely shutdown dyn_param_handler_ in controller_server Signed-off-by: goes <[email protected]> * compeletly shutdown dyn_params_handler in nav2_costmap_2d Signed-off-by: goes <[email protected]> * compeletly shutdown dyn_param_handler in nav2_docking Signed-off-by: goes <[email protected]> * completely shutdown dyn_params_handler in nav2_velocity_smoother Signed-off-by: goes <[email protected]> * compeletly shutdown dyn_param_handler in waypoint_follower Signed-off-by: goes <[email protected]> * typo fixed Signed-off-by: goes <[email protected]> * graceful-controller & dwb_controller Signed-off-by: goes <[email protected]> * mppi-controller Signed-off-by: goes <[email protected]> * navfn_planner & regulated_..controller Signed-off-by: goes <[email protected]> * rotation_..controller & samc_planners Signed-off-by: goes <[email protected]> * A*planner Signed-off-by: goes <[email protected]> * code style Signed-off-by: goes <[email protected]> * 1 Signed-off-by: goes <[email protected]> * fixed Signed-off-by: goes <[email protected]> * fix the usage of weak_ptr Signed-off-by: goes <[email protected]> * code-style Signed-off-by: goes <[email protected]> * weak_ptr released Signed-off-by: goes <[email protected]> * code style Signed-off-by: goes <[email protected]> * code style Signed-off-by: goes <[email protected]> * code style Signed-off-by: goes <[email protected]> * code style update Signed-off-by: goes <[email protected]> * back Signed-off-by: goes <[email protected]> * rebase conflict resovled Signed-off-by: goes <[email protected]> * rebase error fixed Signed-off-by: goes <[email protected]> * fixed2 Signed-off-by: goes <[email protected]> * rebase fixed 3 Signed-off-by: goes <[email protected]> * 33 Signed-off-by: goes <[email protected]> * shared_ptr into weak_ptr Signed-off-by: GoesM <[email protected]> * remove adundant node.resest() Signed-off-by: GoesM <[email protected]> --------- Signed-off-by: GoesM_server <[email protected]> Signed-off-by: goes <[email protected]> Signed-off-by: GoesM <[email protected]> Co-authored-by: GoesM_server <[email protected]> * check nullptr in smoothPlan() (#4544) * check nullptr in smoothPlan() Signed-off-by: GoesM <[email protected]> * code-style Signed-off-by: GoesM <[email protected]> * code-style Signed-off-by: GoesM <[email protected]> * simple change Signed-off-by: GoesM <[email protected]> --------- Signed-off-by: GoesM <[email protected]> Co-authored-by: GoesM <[email protected]> * check nullPtr in `computeControl()` (#4548) Signed-off-by: goes <[email protected]> Co-authored-by: goes <[email protected]> * Straight analytic expansions (#4549) * Add test to verify analytic expansions are straight Signed-off-by: James Ward <[email protected]> * Use continuous scaling of angle when performing analytic expansion Only applies to Hybrid A* - behaviour in lattice planner is unchanged Signed-off-by: James Ward <[email protected]> --------- Signed-off-by: James Ward <[email protected]> * Rviz tool to get cost of costmap cell (#4546) * Added GetCost srv Signed-off-by: Jatin Patil <[email protected]> * Added Service in costmap_2d Signed-off-by: Jatin Patil <[email protected]> * Added Rviz tool Signed-off-by: Jatin Patil <[email protected]> * Fixed Styling Signed-off-by: Jatin Patil <[email protected]> * Fixed Styles and Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Added Bool use_footprint to srv Signed-off-by: Jatin Patil <[email protected]> * Added unit test for costmap costcell cost service Signed-off-by: Jatin Patil <[email protected]> * Fixed unit test script Signed-off-by: Jatin Patil <[email protected]> * Added theta, Updated unit test, Updated rviz tool service call logic Signed-off-by: Jatin Patil <[email protected]> * Updated requested changes Signed-off-by: Jatin Patil <[email protected]> --------- Signed-off-by: Jatin Patil <[email protected]> * Switch to new-style static_transform_publisher arguments. (#4563) These arguments have been the preferred way to use things since at least Humble. This avoids warnings when running it for the tests. Signed-off-by: Chris Lalancette <[email protected]> * Updated slack link (#4565) Signed-off-by: Steve Macenski <[email protected]> * Update README.md (#4589) Signed-off-by: Steve Macenski <[email protected]> * fix flickering visualization (#4561) * Fix Flickering visualization Signed-off-by: Vladyslav Hrynchak <[email protected]> * Refactoring Costmap2DPublisher and Costmap2DROS Signed-off-by: Vladyslav Hrynchak <[email protected]> * Refactoring costmap_2d_ros.cpp Signed-off-by: Vladyslav Hrynchak <[email protected]> * Refactoring Costmap2DPublisher and Costmap2DROS Signed-off-by: Vladyslav Hrynchak <[email protected]> * Update costmap_2d_publisher.cpp Signed-off-by: Vladyslav Hrynchak <[email protected]> * Change map_vis_z from float to double Signed-off-by: Vladyslav Hrynchak <[email protected]> * Add comment to map_vis_z_ parameter Signed-off-by: Vladyslav Hrynchak <[email protected]> --------- Signed-off-by: Vladyslav Hrynchak <[email protected]> * Copy fix-terminate diff from opennav_docking repo (#4598) * Copy fix-terminate diff from opennav_docking repo Signed-off-by: redvinaa <[email protected]> * Lint Signed-off-by: redvinaa <[email protected]> --------- Signed-off-by: redvinaa <[email protected]> * Fix race condition in AMCL for #4537 (#4605) * Fixed timed_behavior.hpp (#4602) Signed-off-by: Vladyslav Hrynchak <[email protected]> * Adding new Nav2 loopback simulator (#4614) * adding Nav2 loopback sim Signed-off-by: Steve Macenski <[email protected]> * drop performance by half * lintin * Add multirobot usecase comment * fixing copy paste error * fixing review comments --------- Signed-off-by: Steve Macenski <[email protected]> * Added laser data from map in nav2_loopback_sim (#4617) * Added laser data from map Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed few requested changes Signed-off-by: Jatin Patil <[email protected]> * Fixed linting Signed-off-by: Jatin Patil <[email protected]> * Requested changes Signed-off-by: Jatin Patil <[email protected]> * Linting Signed-off-by: Jatin Patil <[email protected]> * Added parameters and fixed requested changes Signed-off-by: Jatin Patil <[email protected]> * linting Signed-off-by: Jatin Patil <[email protected]> * Added scan using LineIterator Signed-off-by: Jatin Patil <[email protected]> * LineIterator max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * min of max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * final updates working correctly Signed-off-by: Jatin Patil <[email protected]> * Fix lint Signed-off-by: Jatin Patil <[email protected]> * requested changes Signed-off-by: Jatin Patil <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Jatin Patil <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Steve Macenski <[email protected]> * Making base frame ID for map to base link transform based on base frame ID parameter (#4632) Signed-off-by: Steve Macenski <[email protected]> * Update Smac Planner for rounding to closest bin rather than flooring (#4636) * adding stamped option for loopbacks im (#4637) Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: GoesM_server <[email protected]> Signed-off-by: Alberto Tudela <[email protected]> Signed-off-by: HovorunBh <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Signed-off-by: redvinaa <[email protected]> Signed-off-by: Kemal Bektas <[email protected]> Signed-off-by: Ivan Radionov <[email protected]> Signed-off-by: stevedan <[email protected]> Signed-off-by: Joey Yang <[email protected]> Signed-off-by: goes <[email protected]> Signed-off-by: GoesM <[email protected]> Signed-off-by: James Ward <[email protected]> Signed-off-by: Jatin Patil <[email protected]> Signed-off-by: Chris Lalancette <[email protected]> Signed-off-by: Vladyslav Hrynchak <[email protected]> Co-authored-by: GoesM <[email protected]> Co-authored-by: GoesM_server <[email protected]> Co-authored-by: Alberto Tudela <[email protected]> Co-authored-by: Bohdan <[email protected]> Co-authored-by: Vince Reda <[email protected]> Co-authored-by: Kemal Bektas <[email protected]> Co-authored-by: Kemal Bektas <[email protected]> Co-authored-by: Ivan Radionov <[email protected]> Co-authored-by: Ivan Radionov <[email protected]> Co-authored-by: Stevedan Ogochukwu Omodolor <[email protected]> Co-authored-by: stevedan <[email protected]> Co-authored-by: Joey Yang <[email protected]> Co-authored-by: James Ward <[email protected]> Co-authored-by: Jatin Patil <[email protected]> Co-authored-by: Chris Lalancette <[email protected]> Co-authored-by: Vladyslav Hrynchak <[email protected]>
* Added laser data from map Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed Linting Signed-off-by: Jatin Patil <[email protected]> * Fixed few requested changes Signed-off-by: Jatin Patil <[email protected]> * Fixed linting Signed-off-by: Jatin Patil <[email protected]> * Requested changes Signed-off-by: Jatin Patil <[email protected]> * Linting Signed-off-by: Jatin Patil <[email protected]> * Added parameters and fixed requested changes Signed-off-by: Jatin Patil <[email protected]> * linting Signed-off-by: Jatin Patil <[email protected]> * Added scan using LineIterator Signed-off-by: Jatin Patil <[email protected]> * LineIterator max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * min of max_distance or range_max Signed-off-by: Jatin Patil <[email protected]> * final updates working correctly Signed-off-by: Jatin Patil <[email protected]> * Fix lint Signed-off-by: Jatin Patil <[email protected]> * requested changes Signed-off-by: Jatin Patil <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> * Update nav2_loopback_sim/nav2_loopback_sim/loopback_simulator.py Signed-off-by: Steve Macenski <[email protected]> --------- Signed-off-by: Jatin Patil <[email protected]> Signed-off-by: Steve Macenski <[email protected]> Co-authored-by: Steve Macenski <[email protected]> Signed-off-by: Joseph Duchesne <[email protected]>
Basic Info
Description of contribution in a few bullet points
Future work that may be required in bullet points
For Maintainers: