Isaac Sim Version
4.5.0
Operating System
Ubuntu 22.04
Topic Description
Detailed Description
I followed this tutorial Turtlebot3 and it works great. I am able to control Turtlebot3 as expected.
Now, I’m trying to control a new robot(A Forklift) similar to this. So, I followed the same tutorial. Now, I’m able to control the forklift using linear velocity but I’m not able to do the same for angular velocity.
Ex:
In the case of forklift, this command works as expected
ros2 topic pub /cmd_vel geometry_msgs/Twist '{linear: {x: 5, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}'
while this doesn’t
ros2 topic pub /cmd_vel geometry_msgs/Twist '{linear: {x: 0.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 5}}'
Additional Information
What I’ve Tried
I’ve used the same action graph as the one from the tutorial, just changed a couple of joint names.
Can someone please help me to control the forklift?
For reference, this is the forklift I’m using forklift_c.
Hey @siddharth.amaranth! Since forklift_c is a different robot, did you adjust the parameters of Differential Controller node accordingly?
Also what is your maxAngularSpeed in Differential Controller? If it is smaller than 5 (in your case, you send a twist message with angular speed 5), then the robot cannot move.
Yes, I adjusted the parameters of the Differential Controller. This the parameters in my case
When I give a twist message with the angular speed, I can see the back wheels to be moving. So, I thought I should input all the joint_names to the Articulation Controller node but then I got this issue with the shapes
[Warning] [omni.graph.core.plugin] /root/ActionGraph/articulation_controller: [/root/ActionGraph] OmniGraph Warning: shape mismatch: value array of shape (1,2) could not be broadcast to indexing result of shape (1,4)
Due to which now none of the wheels are moving
Hi @siddharth.amaranth! I noticed that the dt in your differential_controller is 0. Did you connect Delta Seconds in On Playback Tick to dt?
I followed the tutorial but with forklift_c (with left/right back wheel joints), but I am not able to reproduce your issue.
Here is my action graph
differential controller:
articulation controller:
If you can share your usd, I can take a closer look.
I looked at my usd file again and I noticed that the ground wasn’t even and it has many bumps in it. The wheels were getting stuck in them and that’s why the forklift wasn’t rotating. I changed the position and now it works as expected. I have my action graphs as the same as yours but I’m getting dt as 0. Is it an issue?
Thank you so much for your help!!
Great!
Here is the formula for differential controller so it looks like dt doesn’t affect it.
Document: [isaacsim.robot.wheeled_robots] Wheeled Robots — Isaac Sim
That’s great then. Thank you for your help.