I want to get force sensor data attached to finger-tip during simulating manipulator to grip object.
So I attached “Articulation Force Sensor” to Franka Panda usd model in /Isaac/Robots/Franka/franka.usd.
And I change usd_path in “franka.py” to sensor attached model folder like;
usd_path = “/home/yoonjunheon/Isaac_Sim/panda_controller/model/panda_arm_hand_rev.usd”
To check force data, I run “Franka Nut and Bolt” example in IsaacSim.
As you can see, after grsping object, there is no change in force sensor data. How can I get reliable force data?
Have you solved? I also have the same problem
Hi @yoonjh98 - To get the force sensor data from the fingertip of the Franka Panda manipulator, you need to access the sensor data from your script. Here’s a general way to do it:
- First, ensure that the force sensor is correctly attached to the fingertip in the USD model. The force sensor should be a child of the fingertip prim.
- In your script, get a reference to the force sensor prim. You can do this using the
GetPrimAtPath
method of the stage. For example:
force_sensor_prim = stage.GetPrimAtPath("/path/to/force_sensor")
Replace "/path/to/force_sensor"
with the actual path to the force sensor in the USD hierarchy.
- Once you have the force sensor prim, you can get the force data from its attributes. The exact attributes will depend on the type of force sensor you are using, but they typically include
force
and torque
. For example:
force = force_sensor_prim.GetAttribute("force").Get()
torque = force_sensor_prim.GetAttribute("torque").Get()
This will give you the force and torque being applied at the force sensor’s location, in the sensor’s frame of reference.
- You can then use this force and torque data in your control algorithm or for analysis purposes.
Thanks for your reply!
I had written a code in Python using the “ArticulationView” to retrieve force-torque (ft) sensor data with _physics_view.get_force_sensor_forces()
method. However, even in that script, I was getting force-torque data close to zero even after the manipulator gripped the object, just as described in the previous question. To investigate the issue, I performed a test using a sample scene(bolt and nut) just like previos video.
I attached ArticulationForceSensors to “panda_rightfinger” and “panda_leftfinger”. To verify if the sensors were receiving data before gripping the object, I manually dragged the fingers using the mouse to apply external forces. As shown in the video, forces were measured along the dragging axis.
However, as seen in the video after gripping the object, the measured force values remained close to zero, contrary to what I expected. It seems that the problem cannot be resolved simply by using the script to retrieve values, as you mentioned in your response.