Prismatic Joint not working properly with ROS2 & Gazebo 11
I have been trying to make a robot model with a prismatic joint which moves in z axis. It has a lift link and uses joint state to actuate the motion. The whole setup worked great with ROS1 and loading robot description from .xacro
files (x.urdf.xacro
, x.transmission.xacro
and x.gazebo.xacro
) with spawn_urdf
form gazebo_ros
However, when I started porting the robot model for ROS2, I soon discovered that this no longer works properly and I had to create a standalone sdf 1.5
file. I managed to get almost everything working in this format, except the prismatic lift joint. The lift platform keeps dropping to the floor if z axis unit vector is selected. If we use x or y axis, the platform is on the correct position, but sheers in x or y direction.
This is the link to my robot's model in ROS2 and this is the robot description from ROS1.
I am using turtlebot3 and dolly as ideal examples of robots launching with gazebo in ROS2. The robot itself is based on turtlebot3 with 2x the size and additional lift joint.
What am I doing wrong here? Also, does anyone know any other ROS2 based gazebo models for such warehouse robots which I can refer to? Also, can we launch .xacro
files using xacro plugin in ROS2?
Thanks!
For reference: this is the video of my robot operating in ROS1