Hello. I was simulating a Franka robot arm in Isaac Sim 2023.1.1 and followed the tutorial from this page.
I need to assume perfect joint velocity tracking for the robot, so for every time step I tried to directly set the joint velocities with:
robot.write_joint_state_to_sim(position=..., velocity=..., joint_ids=robot_entity_cfg.joint_ids)
But this function requires joint position as input, and if I set position as the current joint position and velocity as the desired joint velocity, the robot hardly moves as expected in simulation (I recorded the joint velocities from robot.data.joint_vel[:, robot_entity_cfg.joint_ids] and they are different from the reference value). Is there a way to directly set joint velocity (like set_joint_velocities) so that the robot can start moving from the current joint position with the set joint velocity during one control loop?
Question
Hello. I was simulating a Franka robot arm in Isaac Sim 2023.1.1 and followed the tutorial from this page.
I need to assume perfect joint velocity tracking for the robot, so for every time step I tried to directly set the joint velocities with:
robot.write_joint_state_to_sim(position=..., velocity=..., joint_ids=robot_entity_cfg.joint_ids)
But this function requires joint position as input, and if I setposition
as the current joint position andvelocity
as the desired joint velocity, the robot hardly moves as expected in simulation (I recorded the joint velocities fromrobot.data.joint_vel[:, robot_entity_cfg.joint_ids]
and they are different from the reference value). Is there a way to directly set joint velocity (like set_joint_velocities) so that the robot can start moving from the current joint position with the set joint velocity during one control loop?Thanks.