Closed chalkchalk closed 2 years ago
There are different ways to derive swing leg controller. Our approach is a simplified workspace dynamics.
Empirically they are the same when the robot is slow. When the robot moves very fast, the dynamic effects of legs need to be considered so the original paper's approach may works better.
RT. In swing leg control, the code uses the inverse kinematics for torque calculation
Eigen::Vector3d force_tgt = state.km_foot.cwiseProduct(state.foot_forces_kin.block<3, 1>(0, i)); joint_torques.segment<3>(i * 3) = jac.lu().solve(force_tgt);
While in the original paperthe transpose of jacobian is used to calculate the PD control torque in Eq.(8). What is the difference between these two approaches? Feel free to use Chinese.