You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refactor Obstacle.msg to support obstacles represented in various forms. It currently has fields for BoundingBox3d bbox and serialized data. We could ideate other data ways to communicate obstacle presence (OccupancyGrid, octomap, bonxai, etc.) It might be better to also add a field and enum constants for users to indicate the type of obstacle populated in the msg.
A new message that the rmf_obstacle_server could publish with collated information on all the obstacles per level in the building. An OccupancyGrid field within the message may be helpful.
Add an API to RobotUpdateHandle to report the presence of obstacles. This information can be published to the rmf_obstacle_server which can then publish response commands to other fleet adapters.
init: To initialize the plugin with a ROS 2 node reference to create any pub/subs needed
obstacle_cb: To reach to obstacle infrormation
ObstacleReporter with methods
init: To initialize the plugin with a ROS 2 node reference to create any pub/subs needed
report: To report obstacle.
rmf_obstacle_reporter node that
initializes a publisher to publisher over /rmf_obstacles.
loads and initializes base classes of ObstacleReporter type using pluginlib.
Convert all existing rmf_X_detector packages in this repo into plugins for rmf_obstacle_reporter.
Generalize rmf_human_detector to detect other classes of objects.
rmf_obstacle_server
Create a new node that subscribes to /rmf_obstacles published by various "reporting" nodes, collate the information per level, and publish the unified data.
Have the node rely on pluginlib to load plugins of ObstacleBehavior base class.
Convert existing lane_blocker_node to a plugin that can be loaded by rmf_obstacle_server.
Switch to subscribing to collated obstacle information published by rmf_obstacle_server and visualize obstacles depending on which level is active in the view.
Visualize other types of obstacles (not just BoundingBox3D)
Before proceeding, is there an existing issue or discussion for this?
Description
This is a meta ticket that broadly summarizes improvements for the obstacle detection pipeline in Open-RMF.
Goal: Report and react to obstacles that impede mobility within the Open-RMF framework.
Background
Sources for reporting obstacles
Types of reactions
Checklist
rmf_obstacle_msgs
BoundingBox3D
message from vision_msgsBoundingBox3d bbox
and serializeddata
. We could ideate other data ways to communicate obstacle presence (OccupancyGrid
,octomap
,bonxai
, etc.) It might be better to also add a field and enum constants for users to indicate the type of obstacle populated in the msg.rmf_obstacle_server
could publish with collated information on all the obstacles per level in the building. AnOccupancyGrid
field within the message may be helpful.rmf_fleet_adapter
RobotUpdateHandle
to report the presence of obstacles. This information can be published to thermf_obstacle_server
which can then publish response commands to other fleet adapters.rmf_obstacle_ros2
ObstacleBehavior
with methodsinit
: To initialize the plugin with a ROS 2 node reference to create any pub/subs neededobstacle_cb
: To reach to obstacle infrormationObstacleReporter
with methodsinit
: To initialize the plugin with a ROS 2 node reference to create any pub/subs neededreport
: To report obstacle.rmf_obstacle_reporter
node that/rmf_obstacles
.ObstacleReporter
type using pluginlib.rmf_X_detector
packages in this repo into plugins forrmf_obstacle_reporter
.rmf_human_detector
to detect other classes of objects./rmf_obstacles
published by various "reporting" nodes, collate the information per level, and publish the unified data.ObstacleBehavior
base class.lane_blocker_node
to a plugin that can be loaded byrmf_obstacle_server
.rmf_visualization
rmf_obstacle_server
and visualize obstacles depending on which level is active in the view.BoundingBox3D
)rmf_demos
lane_closure_request
subscription callback to honor requests from approved requestors.rmf_obstacle
capabilities in a demo world.Bonus:
The text was updated successfully, but these errors were encountered: