osrf / vrx

Virtual RobotX (VRX) resources.
Apache License 2.0
421 stars 189 forks source link

Bug solution multi-vehicles in wamv_gazebo.urdf.xacro #644

Closed carvee1 closed 1 year ago

carvee1 commented 1 year ago

When trying to launch a second vessel with the name wamv2, the following error message was shown [ERROR] [launch]: Caught exception in launch (see debug for traceback): Error Code 20: Msg: Child frame with name[wamv/base_link] specified by joint with name[wamv_external_pivot_joint] not found in model with name[WAM-V] When inspecting the problem (also see problem #638), I found the problem in line 103 of the wamv_gazebo.urdf.xacro file, in which the namespace was not properly referenced to the namespace but only to the standard topic namespace of wamv/base_link. As a result without changing the child to $(arg namespace)/base_link, it is not possible to spawn a second vehicle with a different namespace. Therefore, without the change, it would not be possible to control the vessels independent of each other, as both subscribe to the same topic.

Tested the changes for ROS2

j-herman commented 1 year ago

@M1chaelM @caguero - tested with locked and unlocked wamv, runs fine

M1chaelM commented 1 year ago

@caguero Do you want to merge this bug fix into our upcoming release? @j-herman has reviewed, and the code change looks pretty straightforward, so I thought we might want to consider it even though we aren't focused on supporting multiple vehicles.