Skip to main content
. 2021 Jul 15;21(14):4823. doi: 10.3390/s21144823
Algorithm 2. Specific steps of the MFCKF.
      Input:Xk, Pk, Qk
      Output:Xk+1, Pk+1, Qk+1
      1. Decompose Xk and Pk and obtain sub-states (i.e., Xkimu, Xkuwb, and Xkodm)
   and their covariance (i.e., Pkimu, Pkuwb, and Pkodm);
      2. Filter the sub-filters based on the sub-states and sub-covariances as well as the measured values and
          obtain the sub-states and sub-covariances at time k+1 (Xk+1imu, Xk+1odm, Xk+1uwb and Pk+1imu, Pk+1odm, Pk+1uwb, Qk+1)
   (based on the filter shown in Algorithm 1);
      3. Eliminate redundant information and get sub-states for fusion (i.e., Xk+1imu, Xk+1uwb, and Xk+1odm)
          and their variances (i.e., Pk+1imu, Pk+1uwb, and Pk+1odm);
      4. Fuse the sub-states and covariance based on the FKF framework and thus obtain Xk+1Velocity and Xk+1Position
          as well as their covariance Pk+1Velocity and Pk+1Position;
      5. Recombine Xk+1imu, Xk+1Velocity and Xk+1Position to obtain the final status update Xk+1;
      6. Recombine Pk+1imu, Pk+1Velocity and Pk+1Position to obtain the final status update Pk+1;
      7. Output Xk+1, Pk+1, Qk+1 as the initial value for the next moment, and repeat Steps 1–6.
      End.