In the paper "State Estimation for Legged Robots - Consistent Fusion of Leg Kinematics and IMU", the authors describe the application of an extended kalman filter to estimate states of a quadruped robot, where the equations used in the prediction phase of the kalman filter were equations 30 to 37:

Prediction model equations

Where $(r,v,q,p_1..p_n,b_f,b_w)$ represent the states: position of the main body, velocity, quaternion of rotation from the inertial coordinate frame to the body coordinate frame, the absolute positions of the $N$ foot contact points, accelerometer bias and gyroscope bias respectively. in addition, $C_k$, $g$, $f_k$ and $w_k$ represent: the rotation matrix corresponding to quaternion orientation, the gravity vector, the measured quantities of the accelerometer and gyroscope respectively.

The discrete linearized error dynamics matrix $F_k$ is represented by equation 44: Discrete linearized error dynamic matrix

In addition, the authors introduce some auxiliary equations such as mappings and series, such as equation 13 which is a mapping of a rotation error vector in a quaternion, there is also the equation 20 where it is used to map the angular velocity in a matrix 4x4, and there are also equations 28 and 29 that are introduced to aid in the process of linearization and discretization of the models.

Mapping rotation vector in a quaternion (Equation 13)

Mapping of angular velocity in matrix 4x4 (Equation 20)

Exponencial Series (equation 28 and 29)

My first doubt is, what does this symbol below, used in the matrix $F_k$?

__Unknown symbol

My second doubt is, the symbol $\omega^\times$ represents a skew-symmetric matrix of angular velocity, the resulting matrix of mapping 20 is a skew-symmetric matrix, I would like to know if the matrix $\omega^\times$ used in equations 28 and 29 is the matrix resulting from mapping the angular velocity in a 4x4 matrix (equation 20)?

My third doubt is, how to apply equation 28-29? as it is a series of powers ranging from 0 to infinity. Do I need to truncate it?

  • 1
    $\begingroup$ Hi Bruno and welcome to Robotics, we are fortunate enough to have MathJax support enabled, allowing you to easily create subscripts, superscripts, fractions, square roots, greek letters and more. This allows you to add both inline and block element mathematical expressions in robotics questions and answers. For a quick tutorial, take a look at How can I format mathematical expressions here, using MathJax? $\endgroup$
    – N. Staub
    Nov 26, 2018 at 12:12

1 Answer 1

  • concerning the first symbol, it represents the identity matrix of the appropriate size.
  • then equation (20) is used for (14)-(19) and the matrix is $\Omega(\omega)$, it applies for continuous space, for the Extended Kalman filter formulation $(.)^\times$ is the classical operator turning a vector into a skew-symmetric matrix.
  • lastly (290is (28) for $n=0$ and for arbitrary $n$ a close formed solution can be numerically evaluated as stated in the paper
  • $\begingroup$ Thanks for your answer. I understand that there is a closed form expression for $\Gamma_n$ as shown in the article. But it shows the closed-form expression only when $\Gamma_0$ = $exp (\Delta t\omega^x)$. What would be the closed-form expression for $\Gamma_1$, $\Gamma_2$, $\Gamma_3$? $\endgroup$ Nov 30, 2018 at 12:45
  • $\begingroup$ Even if this close form exist the author suggest to use numerical evaluation, and list the method they used for that. $\endgroup$
    – N. Staub
    Dec 3, 2018 at 10:20
  • $\begingroup$ It can be noted that $\Gamma_n$ is the integral of $\Gamma_{n-1}$, so $\Gamma_0$ and $\Gamma_1$ can also be calculated using $$\begin{bmatrix}\Gamma_0 & 0 \\ \Gamma_1 & I\end{bmatrix} = \text{exp}\!\left(\begin{bmatrix}\Delta t\,\omega^\times & 0 \\ \Delta t\,\omega^\times & 0\end{bmatrix}\right).$$ $\endgroup$
    – fibonatic
    Dec 14, 2021 at 23:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.