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

rmf_visualization v2.0 #44

Merged
merged 41 commits into from
Sep 7, 2022
Merged

rmf_visualization v2.0 #44

merged 41 commits into from
Sep 7, 2022

Conversation

Yadunund
Copy link
Member

@Yadunund Yadunund commented May 19, 2022

Depends on

image

This PR is a complete overhaul of most of the packages in this repository without breaking behavior in any of the rmf_demos launch files. The only public facing API is in rmf_visualization_schedule but no API + ABI breaking changes should have been made. In addition, it adds the following new packages

  1. rmf_visualization_navgraphs : Visualize the navigation graphs of each fleet along with lane closures and speed limits. Previously, the rmf_visualization_schedule was publishing the navgraphs for the entire building. This has been removed as it does not support updates to lane markers since it lacks mapping to the navgraphs used by the fleet adapters

  2. rmf_visualization_obstacles: Visualize obstacles published over /rmf_obstacles.

  3. rmf_visualization_floorplans: Publish floorplan images. (Separated from rmf_visaulization_schedule).

Build instructions

colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to rmf_visualization

Test

Launch any of the demo worlds in rmf_demos_gz or rmf_demos_ign. No other changes needed.

Detailed changelogs are provided below

rmf_visualization_obstacles

image

  • ROS 2 component for publishing obstacle markers
  • Markers are published to /fleet_markers but under the obstacles namespace. This prevents the need to update every single .rviz config file out there to subscribe to a new marker topic.

rmf_visualization_schedule

  • Re-written as ROS 2 Component
  • Runs on a single executor
  • Argparse parameters replaced with ROS 2 params
  • Navgraph and floorplan marker publishing separated into rmf_visualization_navgraphs and rmf_visualization_floorplans resp.

rmf_visualization_fleet_states

  • Re-written with rclcpp as a ROS 2 Component
  • Reduce memory footprint
  • Fix bug with lingering robot markers despite switching maps
  • FLEET_NAME_radius param can be set to provide accurate scale of robot markers. Relative scale of nose marker used to indicate robot heading can also be set as ROS 2 param.

rmf_visualization_navgraphs

  • ROS 2 Component publishing lane markers representing navgraphs published by the fleet adapters. Lanes and waypoints + text have matching colors.
  • Closed lanes turn grey
  • Speed limited lanes have narrower widths
  • Lane width, waypoint size, lane transparency can be set via ROS 2 params
navgraphs.viz.mp4

rmf_visualization_floorplans

  • ROS 2 component to publish the floorplan for a level as an OccupancyGrid. The images from BuildingMap msg is used.
  • If multiple images are provided, they will be fused into a single one

rmf_visualization_building_systems

  • No changes yet

rmf_visualization

  • Updated visualization.launch.xml launch file with suitable executables and parameters

Yadunund and others added 2 commits May 11, 2022 03:01
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
@codecov
Copy link

codecov bot commented May 19, 2022

Codecov Report

Merging #44 (e32f363) into main (fb1b97a) will not change coverage.
The diff coverage is 0.00%.

❗ Current head e32f363 differs from pull request most recent head a6c2699. Consider uploading reports for the commit a6c2699 to get more accurate results

@@          Coverage Diff          @@
##            main     #44   +/-   ##
=====================================
  Coverage   0.00%   0.00%           
=====================================
  Files         21      21           
  Lines       4230    4207   -23     
=====================================
+ Misses      4230    4207   -23     
Flag Coverage Δ
tests 0.00% <0.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...alization_schedule/src/ScheduleMarkerPublisher.hpp 0.00% <0.00%> (ø)

Yadunund and others added 8 commits May 19, 2022 18:13
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
@Yadunund Yadunund marked this pull request as draft June 23, 2022 03:37
Yadunund and others added 18 commits June 23, 2022 18:40
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
@Yadunund Yadunund changed the title rmf_visualization_obstacles rmf_visualization v2.0 Jun 30, 2022
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
@Yadunund Yadunund marked this pull request as ready for review June 30, 2022 04:59
Signed-off-by: Yadunund <yadunund@openrobotics.org>
This was referenced Jul 2, 2022
Copy link
Member

@luca-della-vedova luca-della-vedova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New schedule visualization looks ✨ , a few minor comments around, I don't really know how to test the obstacle visualization, any input? Maybe some sample ros2 topic pubs?

rmf_visualization_floorplans/CMakeLists.txt Show resolved Hide resolved
rmf_visualization_schedule/src/ScheduleVisualizer.cpp Outdated Show resolved Hide resolved
Yadunund and others added 4 commits July 5, 2022 17:51
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Signed-off-by: Luca Della Vedova <luca@openrobotics.org>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
Signed-off-by: Yadunund <yadunund@gmail.com>
@Yadunund Yadunund merged commit 24c00a4 into main Sep 7, 2022
@Yadunund Yadunund deleted the feature/rmf_obstacle branch September 7, 2022 16:24
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

Successfully merging this pull request may close these issues.

None yet

2 participants