CMM-22 / a2

CMM Assignment 2 - Kinematic walking controller
1 stars 0 forks source link

Analytic jacobian #20

Closed Memphis99 closed 2 years ago

Memphis99 commented 2 years ago

Hello, I am doing the task 4. I am failing the test because the jacobian of the base angles is wrong, except for the rotation on y axis. I believe it is because the FD jacobian puts 0 when you change angles on x and z axis (as the robot rotates only on y axis), while the analytical one consider also those rotations. Do I have to put the jacobian manually to zero for those rotations also in the analytical jacobian? Because it would be less scalable to a generic robot controller. Thanks.

eastskykang commented 2 years ago

You should not set the roll, pitch components to zero manually. Your analytic jacobian implementation should not assume that pitch and roll are zero always.

I don't quite understand why your FD jacobian gives zeros for roll, pitch components. You have to make your fk(q) function as a function base roll and pitch too.

Memphis99 commented 2 years ago

It's not exactly 0, but it's really small. Anyway it's really different from the analytical jacobian when I don't put the roll and pitch values at 0. Instead, when I put them at 0, the jacobian passes the test. For example, here, the analytical has 0.491446 and the estimated has 1.28869e-09.

jac
Memphis99 commented 2 years ago

Ok I solved the problem, I was considering the heading in the FK instead of the whole orientation. Thank you!