How to use Articulation force sensors?

Hello,
I would like to create a force sensor with python in order to measure the forces exerted on a link.

I use this lines of code to create the sensor but I’m wondering what the different functions do? And do I need to set the values to True or False ?

        sensorAPI = PhysxSchema.PhysxArticulationForceSensorAPI.Apply(sensorXform.GetPrim())
        sensorAPI.CreateConstraintSolverForcesEnabledAttr().Set(True) 
        sensorAPI.CreateForwardDynamicsForcesEnabledAttr().Set(False)
        sensorAPI.CreateWorldFrameEnabledAttr().Set(False)

When reading the forces, I receive arrays with shape 6 but I’m wondering what are the components of this vector ? Are the first three elements the force and the last three elements the torque ? Do the forces correspond to the external forces exerted on the xform?

I viewed in https://github.com/NVIDIA-Omniverse/OmniIsaacGymEnvs#a-note-about-force-sensors that there was a bug in the force sensors. Is it still the case ? If so, is it also present in the class of the contact force sensors (omni.isaac.sensor._sensor)?

Hi alempereur,

Yes, we are currently working on an update to force sensing on articulations because there are issues with the current implementation.

In particular, we will switch to reporting joint forces as the transmitted force and torque (so 6 numbers) between parent and child link instead of the current force sensors.

We will add more information to the next major release, but I would recommend not using the current force sensors.

Philipp

Hello, may I know if the force sensor is available now? I saw this link below and followed the tutorial. However, there is an error (See the picture below). May I know how to fix it?

https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/isaac_sim_sensors_physics_articulation_force.html

Thank you!

Hi @berternats - not yet, but they will be in the next IsaacSim release.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.