Skip to content
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

Add COM Kalman Filter fusing kinematics, CoP and IMU measurements #340

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

prashanthr05
Copy link
Collaborator

@prashanthr05 prashanthr05 commented Jun 15, 2021

During some walking experiments, it was observed that the DCM velocity (Divergent Component of Motion) suffered from sudden spikes causing the walking controller to fail. This quantity is computed using the Center of Mass velocity which in turn in measured using robot momenta using kinematics. This boils down to computing link velocities using the joint velocity measurements which are usually noisy.
We may improve the CoM velocity estimation by either avoiding to use the joint velocities through a fusion of forward kinematics, Center of Pressure (CoP) and IMU or a complete fusion including, assuming a simplified model for COM evolution and that the IMU lies close to the CoM of the robot in most cases.
The former choice is the approach taken in the work "Center of Mass Estimator for Humanoids and its Application in Modelling Error Compensation, Fall Detection and Prevention, Xinjilefu et al".

In this PR, we implement this estimator for estimating the center of mass position, velocity and offset by fusing IMU and kinematics measurements with a constant COM height LIPM model.

Major assumptions,

  • constant height CoM LIPM model
  • CoM is always close to the same rigid body as the IMU and the velocity of the CoM wrt IMU is approximated to zero
  • constant angular velocity is assumed, making angular acceleration is zero (approximation used in transforming IMU acceleration to COM acceleration)

cc @GiulioRomualdi

@prashanthr05 prashanthr05 changed the title Add COM Kalman Filter fusing kinematics and IMU measurements Add COM Kalman Filter fusing kinematics, CoP and IMU measurements Jun 15, 2021
@GiulioRomualdi
Copy link
Member

Hi @prashanthr05, first of all, thank you for the contribution 😄 .

Is the PR ready to be reviewed?

@GiulioRomualdi GiulioRomualdi self-requested a review July 7, 2021 09:17
@GiulioRomualdi GiulioRomualdi added the enhancement New feature or request label Jul 7, 2021
@prashanthr05
Copy link
Collaborator Author

Hi @prashanthr05, first of all, thank you for the contribution .

Is the PR ready to be reviewed?

A suitable test is pending.

@GiulioRomualdi
Copy link
Member

This could be interesting for @G-Cervettini

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants