mi-lib / roki

RoKi - Robot Kinetics library
MIT License
12 stars 7 forks source link

A driving torque is not reflected in particular situations #6

Closed n-wakisaka closed 5 years ago

n-wakisaka commented 5 years ago

A driving torque of a revolute joint that is connected to the world may not be reflected.

The reason is that rkJointABIDrivingTorque that is the setter of a joint torque, e.g., _rkc(prp)->_u is skipped in _rkLinkABIUpdateBackward when the joint has no parent. The computation of accelerations uses _rkc(prp)->_u in _rkLinkABIUpdateForward even if no parent.

@n-wakisaka tries to debug it and creates tests to reproduce the bug.

n-wakisaka commented 5 years ago

@n-wakisaka added a test and fixed the bug with the ABI method.