-
Notifications
You must be signed in to change notification settings - Fork 90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Access joint limit violation force without using xml sensors. #126
Comments
One suggested way in this issue here, might help. Essentially, you measure the joint torque with qfrc_constraint and qfrc_smooth in the joint data structure, then manually check if your joint exceeds the limits. |
This would get you the total force acting on the joint, right? It’s a proxy, but not perfect. EDIT: Let me try, might be a solution |
The posted solution works when there ar eno additional constraints, e.g. an arm that is suspended in the air. Still have to test in the case of contact forces etc EDIT: Doesn't seem to work when other constraints are present. I think we would need to filter all constraints by joint limit constraints and assign the right joint to each one at each time step |
Got it:
|
Hi everyone,
several people have approached me to ask how to implement joint limit violation forces, as used in my recent preprint
My implementation uses limit force sensors embedded in the xml files. These are quite inconvenient and it's not always possible to edit the xml files for every model.
I'm wondering if there is a programmatic way of accessing this information? I think it would be a great service to the community to implement a function like
force_value = get_limitfrc(joint_name)
But I'm a bit unsure how to do it. I tried starting with
efc_type
andefc_force
, but it's unclear how you would relate this to the joint name.The text was updated successfully, but these errors were encountered: