'Not Limited' is not applied to the revolute joint

Isaac Sim Version

4.5.0
4.2.0
4.1.0
4.0.0
4.5.0
2023.1.1
2023.1.0-hotfix.1
Other (please specify):

Operating System

Ubuntu 22.04
Ubuntu 20.04
Windows 11
Windows 10
Other (please specify):

GPU Information

  • Model: RTX 4060
  • Driver Version: 535.183.01

Topic Description

Detailed Description

Expected result
When given a control value of 720 degrees, rotate twice

Actual result
After rotate to about 360 degrees, the error occurs.

PhysX error: PxArticulationJointReducedCoordinate::setDriveTarget() only supports target angle in range [-2Pi, 2Pi] for joints of type PxArticulationJointType::eREVOLUTE

Steps to Reproduce

  1. Set the ‘Lower Limit’ and ‘Upper Limit’ of the revolute joint to ‘Not Limited’.
  2. Create position profile [0, 1, 2, …, 360, 361, 362, …718, 719, 720].
  3. Set the joint position as the value of the position profile. Using “ArticulationAction” API
  4. Apply action using “apply_action” API

    3-4 is repeated every physics step.
    The value of the input joint position gradually increases. (0 → 720)

Error Messages

PhysX error: PxArticulationJointReducedCoordinate::setDriveTarget() only supports target angle in range [-2Pi, 2Pi] for joints of type PxArticulationJointType::eREVOLUTE

Additional Information

Additional Context

I want to control the joint to move more than once with position control. (infinite revolute)
Is it impossible to control more than one turn with position control method?

Hi @jinkk.kim, thank you for posting your question. This issue is related to this other issue Cannot revolute beyond -2pi or 2pi using joint position control.

Have you had a chance to try my suggestion? Cannot revolute beyond -2pi or 2pi using joint position control - #3 by michalin

@michalin Thank you for your reply.

I will ask additional questions here. Cannot revolute beyond -2pi or 2pi using joint position control - #4 by jinkk.kim