Closed webvenky closed 2 years ago
That's certainly an odd issue.
There are a few things about your description that I'm not clear on. How are you setting up the simulation? Are you using the standard RMF "slotcar" plugin to simulate the robot, or are you generating robot states out of your simulation some other way?
For the standard slotcar plugin we have this block that prevents potential race conditions that may happen if the simulation is up and running before it gets any messages from the building map server. If you're not using the standard slotcar plugin then you might need something similar.
I see that your fleet state contains level_name
field, but (for better or worse) the current design of the full_control
fleet adapter will permanently block any robot that sends an initial state with an invalid level_name
value. Even if you're publishing valid states later, it won't accept those if the first state it received was an invalid one. We could make this less strict, but we find it's helpful for identifying system integration mistakes as early as possible.
Sorry. I realized I was inadvertently using an old version of the rmf_fleet_msgs package in one of the workspaces and the message definition had changed for Location.msg. I fixed it and is now able to run. Thanks for your time @mxgrey .
docker pull ghcr.io/open-rmf/rmf/rmf_demos:latest
)I use
free_fleet_server_ros2
node to publish the/fleet_states
. It looks like below:But I get this message from the full_control fleet adapter, when I run the simulation:
I checked the nav_graph/0.yaml and it has
B1
level. The fleet adapter is able to get therobot_name
andpose: x,y,yaw
information correctly though.Do I need to publish any other details on the
fleet_states
message?