Hello Community,
I am struggling to figure out the correct damping value for my custom differential drive robot. In the action graph, I have set the following values:
Differential controller Node:
As shown in the image, I have deliberately set the maxLinearSpeed and maxAngularSpeed parameters to 0 because I do not want these cap values to influence the movement of my robot. Instead, I want the ROS2 Nav2 stack parameters to influence the movement so that I can tune them as needed.
Angular Drive:
I have attached the angular drive and set the damping value to 1e9. The issue arises when the maxLinearSpeed and maxAngularSpeed are set to zero in the differential controller node (DCN). The robot goes out of control as soon as I play the scene and publish velocities via ros2_teleop_twist_keyboard or Nav2 stack. I believe this is due to the very high value of the damping, i.e., 1e9. If I reduce the damping gradually, the robot stays in place but does not rotate or stop after receiving the initial velocity, with no DCN cap values and with a lower damping value in the angular drive.
On the other hand, if I set cap values, for example, maxLinearVelocity=0.5 or even higher, the robot moves perfectly fine with both teleop_twist_keyboard and Nav2. Since I want to control the robot via Nav2 stack, I would like the parameters from controller_server and velocity_smoother nodes to influence the movement of the robot. for example with desired acceleration and velocity paramters from nav2_param file.
I have properly configured ros2 topics in isaac sim to be controlled via ros2.
/clock
/cmd_vel
/odom
/parameter_events
/realtimefactor
/rosout
/scan
/tf
Other information for reference:
Isaac Sim Version: 4.5
ROS version: humble
Linux version: 22.04.5
NVIDIA GeForce RTX 3090
Can anyone please help me figure out how can i set the paramters in isaac sim such that I am able to control the robot movement via ros2 nav2 stack only?
Thank you in advance for the support!

