I’m trying to model a custom contact sensor that can detect normal and shear forces based on the deformation of the sensor. However, the contact sensor class in the omniverse documentation only appears to allow access to the force, impulse, and normal information.
Are there methods of accessing the body collision information from:
the Python or Cython source code for the omni.issac.sensor _sensor class
For shear force you mean access to the tangential friction force? This is currently not possible, unfortunately, but it is on our list of features to add (I don’t have a timeline yet for you, unfortunately).
I’m having trouble getting normal force readings from adding the contact sensors to my robot. I think it may be due to the API’s I have applied to the prims in the USD because when I import the Ant USD and add contact sensors to the legs (like the contact sensor example) it works in my script.
This is the USD/link I’m trying to apply the contact sensor to:
I’ve tried comparing it to the Ant example, but because the ant USD is a .usd instead of .usda file, I have to open it in the Isaac Sim GUI application first and save it to a .usda file.
I believe this process changes the file in a potentially important way because when I try to import the new .usda into my scene in the contact sensor example extension using the same method as the original ant.usd file, it throws an error.
However, when just comparing the API’s and settings for the xforms and meshes/shapes in the ant and my robot USD files, I’ve already made the manual changes I think are necessary to have matching functionality to get the contact sensors to work on my robot.
I’ve attached the USD files for my robot that I think should work and the converted .usda ant if they would be useful:
Just to clarify the message above, I haven’t found a solution to why the contact sensor won’t work on my robot and I’ve attached the full USD files. Can you please take a look to see what the problem may be?
The spherical region is just a clipping plane for contact information - contacts will only happen in the surface of the collision mesh, and if they are within the spherical clipping plane they will count towards the contact sensor.
are you getting any errors when you try using it? what is the issue you are experiencing, specifically?