Replies: 1 comment
-
Thanks for the feedback. We didn't spend much time exposing the inverseDynamics and skipped the base coordinates. Indeed, you may need to transform the queries in base frame coordinates first. In fact, for the deep_mimic implementation, we use a separate implementation of inverse dynamics/mass matrix (using flags=1) for floating base and spherical joints. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Dear @erwincoumans and PyBullet contributors,
I am trying to obtain joint accelerations (Forward Dynamics) from Inverse Dynamics and compare them to what is obtained from finite differences
(dq-dq_old)/dt
(similar to #2513).The difference is that now I am changing the robot baseOrientation.
The problem is that IFF I change baseOrientation, the joint acceleration
qdd_FinDiff
obtained from finite differences DOES NOT match anymore the accelerationddq_InvDyn
obtained from inverse dynamics.Do you know what could be the cause or how to fix this issue?
If I could guess... this could be a problem in the calculateJacobian method. I noticed that it actually returns a Jacobian in robot base frame coordinates, i.e.
B_x_dot = J_t * q_dot
is in robot base frame coordinates (B) and not in world coordinates. (If you want I can also post here a sample code that confirms this). Btw, this is also not described in the documentation.I thank you very much.
Bellow follows a MWE (pyBullet Version: 2.7.9):
Beta Was this translation helpful? Give feedback.
All reactions