Self-Adaptive Horizontal Attitude Measurement Method based on Motion State Monitoring

Information

  • Patent Application
  • 20220326017
  • Publication Number
    20220326017
  • Date Filed
    June 20, 2022
    2 years ago
  • Date Published
    October 13, 2022
    a year ago
Abstract
Disclosed is a self-adaptive horizontal attitude measurement method based on motion state monitoring. Based on a newly established state space model, a horizontal attitude angle is taken as a state variable, an angular velocity increment Δωb for compensating a random constant zero offset is taken as a control input of a system equation, and a specific force fb for compensating the random constant zero offset is taken as a measurement quantity. Meanwhile, judgment conditions for a maneuvering state of a carrier are improved, and maneuvering information of the carrier is judged by comprehensively utilizing acceleration information and angular velocity information output by a micro electro mechanical system inertial measurement unit (MEMS-IMU), whereby a measurement noise matrix of a filter can be automatically adjusted, thereby effectively reducing the influence of carrier maneuvering on the calculation of a horizontal attitude. The method has no special requirement on the maneuvering state of the carrier, and can ensure that the system has high attitude measurement precision in different motion states without an external information assistance.
Description
TECHNICAL FIELD

The disclosure relates to a self-adaptive horizontal attitude measurement method based on motion state monitoring, and belongs to the technical field of inertia.


BACKGROUND

With the development of micro electro mechanical system technology, a low-cost micro electro mechanical system inertial measurement unit (MEMS-IMU) is more frequently applied in the field of navigation. By measuring motion parameters by using inertial sensors based on a micro electro mechanical system, a complex motion state of a vessel in the sea can be detected, and users can acquire motion data of a surface vessel. The MEMS-IMU is required to accurately output angular motion parameters and linear motion parameters of a carrier in real time.


Micro electro mechanical gyroscopes have random drift characteristics, and integral errors thereof are accumulated over time, while accelerometers do not have accumulated errors but are susceptible to carrier vibration. Common algorithms for fusing data of the gyroscopes and the accelerometers are Kalman filtering and complementary filtering. For example, in the patent application No. 201811070907.X, entitled “Horizontal Attitude Self-Correction Method for MEMS Inertial Navigation System based on Maneuvering State Judgment”, a carrier motion is divided into low, medium, and high dynamics by comparing an accelerometer output and a local gravity acceleration amplitude. In the low and medium dynamics, a measurement noise matrix is adjusted in real time. In the high dynamics, only time is updated. However, if the carrier is in the high dynamics for a long time, an attitude error will be increasing. For another example, in the patent application No. 202011092956.0, entitled “MARG Attitude Estimation Method for Small Unmanned Aerial Vehicle based on Self-Adaptive EKF Algorithm”, an adaptive filtering algorithm for an external acceleration analyzes residual errors of three axes and then self-adaptively adjusts corresponding measurement noises, thereby avoiding losing useful acceleration information and improving the precision of attitude estimation. According to most of the traditional methods of self-adaptive adjustment, by comparing a modulus output by an accelerometer of a carrier with a local gravity acceleration, a maneuvering state of the carrier can be judged without considering the interference of an angular motion of the carrier on acceleration measurement. It may be insufficient for some complex environments.


Summary

In view of the prior art, the technical problem to be solved by the disclosure is to provide a self-adaptive horizontal attitude measurement method based on motion state monitoring, which can improve the measurement precision of a horizontal attitude of a carrier in a maneuvering scene and provide accurate horizontal attitude information for the carrier.


In order to solve the above technical problem, a self-adaptive horizontal attitude measurement method based on motion state monitoring of the disclosure includes the following steps:


step 1: initially aligning a strapdown inertial navigation system, completing the calculation of a random constant zero offset of a device and the calculation of initial horizontal attitude angles, including a roll angle custom-character0 and a pitch angle ϕ0, and then entering a navigation working mode;


step 2: initializing a Kalman filter, and taking the initial horizontal attitude angles custom-character0 and ϕ0 obtained in step 1 as initial values of a Kalman filtering state quantity X0=[custom-character0 ϕ0]T, an initial mean square error being P0;


step 3: sampling MEMS-IMU data at a kth time, and compensating a random constant zero offset thereof to obtain a compensated specific force fkb and angular velocity ωkb;


step 4: performing a Kalman filtering one-step prediction by using an angular velocity increment Δωkb at the kth time as a known deterministic input uk−1, where Δωkbkb·T, T being a calculation period;


step 5: judging a maneuvering state of a carrier by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 3, and self-adaptively adjusting a Kalman filtering measurement noise covariance matrix Rk, where N is the size of a data window;


step 6: when the specific force is fkb=[fx,k fy,k fz,k]T at the kth time, selecting a measurement vector Zk=[fx,k fy,k ]T to perform measurement update so as to realize the correction of the state quantity, where fx,k, fy,k, and fz,k are components of the specific force fkb n x-axis, y-axis, and z-axis directions of a carrier system respectively; and


step 7: taking an estimated value of the state quantity at the kth time as an initial value of a state quantity at a next time, and repeatedly performing steps 3 to 6 until a navigation working state ends.


The method of the disclosure further includes the following operations:


1. The Kalman filtering one-step prediction in step 4 specifically is:






{






X
^



k
/
k

-
1


=



Φ


k
/
k

-
1





X
^


k
-
1



+


B

k
-
1




u

k
-
1











P


k
/
k

-
1


=



Φ


k
/
k

-
1




P

k
-
1




Φ


k
/
k

-
1

T


+

Q

k
-
1











where {circumflex over (X)}k−1 is a state optimal estimation at a k−1th time, Pk−1 is a mean square error matrix of a state estimation at the k−1th time, {circumflex over (X)}k/k−1 is a state one-step prediction at a kth time, Φk/k−1=I2 is a state one-step transition matrix at the kth time, I2 is a second-order unit matrix,







B
k

=

[



0



cos


ϕ

k
-
1







-
sin



ϕ

k
-
1







1



sin


ϕ

k
-
1



tan


k
-
1






cos


ϕ

k
-
1



tan


k
-
1






]





is an input coefficient matrix at the kth time, ϕk−1 and custom-characterk−1 are horizontal attitude optimal estimations at the k−1th time, uk−1 is an angular velocity increment Δωkb at the kth time, Pk/k−1 is a state one-step prediction mean square error matrix at the kth time, and Qk is a system noise variance matrix.


2. In step 5, the judging a maneuvering state of a carrier by using the specific force fb and the angular velocity ωb obtained in step 3 specifically is: calculating the maneuvering state of the carrier by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 3, and acquiring a maneuvering vector Tk to realize maneuvering judgment, Tk satisfying:







T
k

=

(



1

σ
f
2







f
k
b

-

g




f
_

k





f
_

k









+


1

σ
ω
2







ω
_

k





)








where






ω
_

k


=



1
N






i
=

k
-
N
+
1


k



ω
i
b



and




f
_

k




=


1
N






i
=

k
-
N
+
1


k


f
i
b








are mean values obtained by performing moving average on the specific force fb and the angular velocity ωb, which are output by an inertial measurement unit and used for compensating the random constant zero offset, from time k−N+1 to time k in step 3, respectively, the size of a data window being N, g being a local gravitational acceleration, and σf and σω being weighting coefficients respectively.


3. The self-adaptively adjusting a Kalman filtering measurement noise covariance matrix Rk in step 5 specifically is:







R
k

=

[





σ
r
2

+

T

k
,
1





0




0




σ
r
2

+

T

k
,
2






]





where Tk,i is an ith element of Tk , and σr2 is a variance corresponding to an accelerometer noise.


4. An update equation of the measurement update in step 6 is:






{







K
k

=


P


k
/
k

-
1






H
k
T

(



H
k



P


k
/
k

-
1




H
k
T


+

R
k


)


-
1











X
^

k

=



X
^



k
/
k

-
1


+


K
k

(


Z
k

-


H
k




X
^



k
/
k

-
1




)









P
k

=


(

I
-


K
k



H
k



)



P


k
/
k

-
1









where





H
k


=

[






-
g

·
cos



k




0







-
g

·
sin



ϕ
k


cos

k






g
·
cos



ϕ
k


cos


k





]






is a measurement matrix at time k, g is a local gravity acceleration, ϕk and custom-characterk are one-step prediction values of a horizontal attitude at time k, Kk is a filtering gain at time k, {circumflex over (X)}k is a state estimation at time k, and Pk is a state estimation mean square error matrix at time k.


The disclosure has the following beneficial effects. The disclosure relates to an attitude measurement unit using an MEMS-IMU as a core device. In the disclosure, a new state space model is established, a horizontal attitude angle is taken as a state variable, an angular velocity increment Δωb output by the MEMS-IMU is taken as a control input of a system equation, and a specific force fb output by the MEMS-IMU is taken as a measurement quantity. Meanwhile, maneuvering judgment conditions for a carrier are improved, and maneuvering information of the carrier is judged by comprehensively utilizing acceleration information and angular velocity information output by the MEMS-IMU, whereby a measurement noise matrix of a filter can be automatically adjusted, thereby effectively reducing the influence of carrier maneuvering on horizontal attitude information. The method has no special requirement on the maneuvering state of the carrier, can ensure that the system has high attitude measurement precision in different motion states without an external information assistance, and has a certain engineering application value.





BRIEF DESCRIPTION OF FIGURES


FIG. 1 is an implementation flowchart of the disclosure.



FIG. 2 is a flowchart of an implementation algorithm of the disclosure.



FIG. 3 is an algorithm calculation error according to the disclosure.





DETAILED DESCRIPTION

The disclosure will now be further described with reference to the accompanying drawings and specific embodiments.


The disclosure is implemented as follows:


An inertial measurement element of a strapdown inertial navigation system is fully pre-heated, and the calculation of a random constant zero offset of a device and the calculation of initial horizontal attitude angles are completed. Then a navigation working state may be entered. A horizontal attitude angle is taken as a state variable, an angular velocity increment Δωb output by an MEMS-IMU is taken as a control input of a system equation, and a specific force fb output by the MEMS-IMU is taken as a measurement quantity. A Kalman filtering equation is established, and maneuvering information of the carrier is judged by comprehensively utilizing acceleration information and angular velocity information output by the MEMS-IMU, whereby a measurement noise matrix of a filter can be automatically adjusted, thereby effectively reducing the influence of carrier maneuvering on the calculation of a horizontal attitude. The specific steps are as follows:


In step 1, an inertial measurement element of a strapdown inertial navigation system is fully pre-heated, the calculation of a random constant zero offset of a device and the calculation of initial horizontal attitude angles (a roll angle custom-character0 and a pitch angle ϕ0) are completed, and the element enters a navigation working state.


In step 2, the initial horizontal attitude angles custom-character0 and ϕ0 obtained in step 1 are taken as initial values of a Kalman filtering state quantity X0=[custom-character0 ϕ0]T, an initial mean square error is P0, and a Kalman filter is initialized.


In step 3, MEMS-IMU data is sampled at a kth time, and a random constant zero offset thereof is compensated to obtain a compensated specific force fkb and angular velocity ωkb.


In step 4, a Kalman filtering one-step prediction is performed by using an angular velocity increment Δωkb at the kth time as a known deterministic input uk−1, where Δωkbkb·T, T being a calculation period.


In step 5, a maneuvering state of a carrier is judged by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 2, and a Kalman filtering measurement noise covariance matrix Rk is self-adaptively adjusted, where N is the size of a data window.


In step 6, the specific force fkb at the kth time is used as a measurement vector Zk for measurement update so as to realize the correction of the state quantity.


In step 7, an estimated value of the state quantity at the kth time is taken as an initial value of a state quantity at a next time, and steps 3 to 6 are repeatedly performed until a navigation working state ends.


A correlated equation for Kalman filtering one-step prediction in step 4 is established:






{






X
^



k
/
k

-
1


=



Φ


k
/
k

-
1





X
^


k
-
1



+


B

k
-
1




u

k
-
1











P


k
/
k

-
1


=



Φ


k
/
k

-
1




P

k
-
1




Φ


k
/
k

-
1

T


+

Q

k
-
1











where {circumflex over (X)}k−1 is a state optimal estimation at a k−1th time, Pk−1 is a mean square error matrix of a state estimation at the k−1th time, {circumflex over (X)}k/k−1 is a state one-step prediction at a kth time, Φk/k−1=I2 is a state one-step transition matrix at the kth time, I2 is a second-order unit matrix,







B
k

=

[



0



cos


ϕ

k
-
1







-
sin



ϕ

k
-
1







1



sin


ϕ

k
-
1



tan


ϑ

k
-
1






cos


ϕ

k
-
1



tan


ϑ

k
-
1






]





is an input coefficient matrix at the kth time, ϕk−1 and custom-characterk−1 are horizontal attitude optimal estimations at the k−1th time, uk−1 is an angular velocity increment Δωkb at the kth time, Pk/k−1 is a state one-step prediction mean square error matrix at the kth time, and Qk is a system noise variance matrix.


In step 5, the maneuvering state of the carrier is judged, the maneuvering state of the carrier is calculated according to the specific force fb and the angular velocity ωb obtained in step 3, and a maneuvering vector Tk is acquired to realize maneuvering judgment:







T
k

=

(



1

σ
f
2







f
k
b

-

g




f
¯

k





f
¯

k









+


1

σ
ω
2







ω
_

k





)








where




ω
¯

k


=



1
N






i
=

k
-
N
+
1


k



ω
i
b



and




f
¯

k




=


1
N






i
=

k
-
N
+
1


k


f
i
b








are mean values obtained by performing moving average on the specific force fb and the angular velocity ωb from time k−N+1 to time k in step 3, respectively, the size of a data window being N, g being a local gravitational acceleration, and σf and σω are weighting coefficients respectively.


A self-adaptive rule for the Kalman filtering measurement noise covariance matrix Rk in step 5 is as follows:







R
k

=

[





σ
r
2

+

T

k
,
1





0




0




σ
r
2

+

T

k
,
2






]





where Tk,i is an ith element of Tk, and σr2 is a variance corresponding to an accelerometer.


In step 6, measurement update is performed. The specific force fkb=[fx,k fy,k fz,k]T at the kth time in step 3 is used as a measurement vector Zk=[fx,k fy,k]T for measurement update. An update equation is as follows:






{







K
k

=


P


k
/
k

-
1






H
k
T

(



H
k



P


k
/
k

-
1




H
k
T


+

R
k


)


-
1











X
ˆ

k

=



X
ˆ



k
/
k

-
1


+


K
k

(


Z
k

-


H
k




X
ˆ



k
/
k

-
1




)









P
k

=


(

I
-


K
k



H
k



)



P


k
/
k

-
1









where



H
k


=

{






-
g

·
cos



ϑ
k




0







-
g

·
sin



ϕ
k


cos


ϑ
k






g
·
cos



ϕ
k


cos


ϑ
k





}






is a measurement matrix at time k, ϕk and custom-characterk are one-step prediction values of a horizontal attitude at time k, Kk is a filtering gain at time k, {circumflex over (X)}k is a state estimation at time k, and Pk is a state estimation mean square error matrix at time k.


With reference to FIGS. 1 and 2, a specific embodiment of the disclosure includes the following steps:


In step 1, an inertial measurement element of a strapdown inertial navigation system is fully pre-heated.


In step 2, data of MEMS-IMU under a static state during a period of time is acquired, and it is considered that an average output value of an MEMS-IMU during the period of time is a random constant zero offset of a device, constant zero offset errors for a gyroscope and an accelerometer are corrected and compensated, and a specific force fb and an angular velocity ωb after compensating the constant zero offset errors are obtained.


In step 3, the strapdown inertial navigation system is initially aligned to obtain initial horizontal attitude angles (a roll angle custom-character0 and a pitch angle ϕ0) of a carrier system (b system) relative to a navigation coordinate system (n system, the navigation coordinate system herein being a geographical coordinate system), and then a navigation working state starts to be entered.


In step 4, a Kalman filtering equation is established:









{





X
k

=



Φ


k
/
k

-
1




X

k
-
1



+


B

k
-
1




u

k
-
1



+

W

k
-
1










Z
k

=



H
k



X
k


+

V
k










(
1
)







where Xk is a state vector, Φk/k−1 is a state one-step transition matrix, Bk−1 is an input coefficient matrix, I2 is a second-order unit matrix, uk−1 is a known deterministic input, Zk is a measurement vector, Hk is a measurement matrix, Wk−1 is a system noise vector, and Vk is a measurement noise vector.


In step 5, horizontal attitude angles are selected as a state quantity X=[custom-character ϕ]T (a roll angle custom-character and a pitch angle ϕ), the initial horizontal attitude angles custom-character0 and ϕ0 obtained in step 3 are taken as initial values of the state quantity X0=[custom-character0 ϕ0]T, an initial mean square error is P0, and a Kalman filter is initialized.


In step 6, MEMS-IMU data is sampled at a kth time, and a random constant zero offset thereof is compensated to obtain a compensated specific force fkb and angular velocity ωkb.


In step 7, a Kalman filtering one-step prediction is performed by using an increment Δωkbkb·T (T being a calculation period) within a ωkb sampling interval at the kth time in step 6 as a known deterministic input uk−1:









{






X
ˆ



k
/
k

-
1


=



Φ


k
/
k

-
1





X
ˆ


k
-
1



+


B

k
-
1




u

k
-
1











P


k
/
k

-
1


=



Φ


k
/
k

-
1




P

k
-
1




Φ


k
/
k

-
1

T


+

Q

k
-
1











(
2
)







where {circumflex over (X)}k−1 is a state optimal estimation at a k−1th time, Pk−1 is a mean square error matrix of a state estimation at the k−1th time, {circumflex over (X)}k/k−1 is a state one-step prediction at a kth time, Φk/k−1=I2 is a state one-step transition matrix at the kth time,







B
k

=

[



0



cos


ϕ

k
-
1







-
sin



ϕ

k
-
1







1



sin


ϕ

k
-
1



tan


ϑ

k
-
1






cos


ϕ

k
-
1



tan


ϑ

k
-
1






]





is an input coefficient matrix at the kth time, ϕk−1 and custom-characterk−1 are horizontal attitude optimal estimations at the k−1th time, uk−1 is an angular velocity increment Δωkb at the kth time, Pk/k−1 is a state one-step prediction mean square error matrix at the kth time, and Qk is a system noise variance matrix.


In step 8, a maneuvering state of a carrier is judged by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 6, and a maneuvering vector Tk is acquired, thereby self-adaptively adjusting a Kalman filtering measurement noise covariance matrix Rk.










T
k

=

(



1

σ
f
2







f
k
b

-

g




f
¯

k





f
¯

k









+


1

σ
ω
2







ω
_

k





)





(
3
)










where




ω
¯

k


=



1
N






i
=

k
-
N
+
1


k



ω
i
b



and




f
¯

k




=


1
N






i
=

k
-
N
+
1


k


f
i
b








are mean values obtained by performing moving average on the specific force fb and the angular velocity ωb from time k−N+1 to time k in step 6, respectively, the size of a data window is N, g is a local gravitational acceleration, σf is a weighting coefficient of the specific force (usually 0.5-5 for vessels and 1-3 for vehicles), and σω is a weighting coefficient of the angular velocity (usually 1-5 for vessels and 0.5-1 for vehicles).


A self-adaptive adjustment rule for the Kalman filtering measurement noise covariance matrix Rk is as follows:










R
k

=

[





σ
r
2

+

T

k
,
1





0




0




σ
r
2

+

T

k
,
2






]





(
4
)







where Tk,i is an ith element of Tk, and σr2 is a variance corresponding to an accelerometer.


In step 9, the specific force fkb=[fx,k fy,k fz,k]T at the kth time in step 6 is used as a measurement vector Zk=[fx,k fy,k ]T for measurement update. An update equation is as follows:









{







K
k

=


P


k
/
k

-
1






H
k
T

(



H
k



P


k
/
k

-
1




H
k
T


+

R
k


)


-
1











X
ˆ

k

=



X
ˆ



k
/
k

-
1


+


K
k

(


Z
k

-


H
k




X
ˆ



k
/
k

-
1




)









P
k

=


(

I
-


K
k



H
k



)



P


k
/
k

-
1









where



H
k


=

{






-
g

·
cos



ϑ
k




0







-
g

·
sin



ϕ
k


cos


ϑ
k






g
·
cos



ϕ
k


cos


ϑ
k





}






(
5
)







is a measurement matrix at time k, g is a local gravity acceleration, ϕk and custom-characterk are one-step prediction values of a horizontal attitude at time k, Kk is a filtering gain at time k, {circumflex over (X)}k is a state estimation at time k, and Pk is a state estimation mean square error matrix at time k.


In step 10, an estimated value of the state quantity at the kth time is taken as an initial value of a state quantity at a next time, and steps 6 to 9 are repeatedly performed.


The self-adaptive horizontal attitude measurement method based on motion state monitoring has been completed so far.


In order to illustrate the effectiveness of an algorithm, the algorithm is simulated. Simulation conditions are set as follows. A zero offset of a gyroscope of each axis is set to 1°/h, and a zero offset of an accelerometer is set to 1×10−4 g. A motion state is set as follows. A carrier is in an oscillating motion state. The oscillation of each axis follows the sine function law. Oscillation amplitudes of rolling, pitching, and heading are all 10°, oscillation periods are all 10S, and initial attitude angles and phase angles are all 0°. The simulation results are shown in FIG. 3. The horizontal attitude measurement error is small, and the precision is high.


Although examples and drawings of the disclosure have been disclosed for illustrative purposes, those skilled in the art will appreciate that: various substitutions, changes and modifications are possible without departing from the spirit and scope of the disclosure and the appended claims, and therefore the scope of the disclosure is not limited to the disclosure of the examples and drawings.

Claims
  • 1. A self-adaptive horizontal attitude measurement method based on motion state monitoring, comprising the following steps: step 1: initially aligning a strapdown inertial navigation system, completing the calculation of a random constant zero offset of a device and the calculation of initial horizontal attitude angles, comprising a roll angle 0 and a pitch angle ϕ0 , and then entering a navigation working mode;step 2: initializing a Kalman filter, and taking the initial horizontal attitude angles 0 and ϕ0 obtained in step 1 as initial values of a Kalman filtering state quantity X0=[0 ϕ0]T, an initial mean square error being P0;step 3: sampling micro electro mechanical system inertial measurement unit (MEMS-IMU) data at a kth time, and compensating a random constant zero offset thereof to obtain a compensated specific force fkb and angular velocity ωkb;step 4: performing a Kalman filtering one-step prediction by using an angular velocity increment Δωkb at the kth time as a known deterministic input uk−1, wherein Δωkb=ωkb·T, T being a calculation period;step 5: judging a maneuvering state of a carrier by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 3, and self-adaptively adjusting a Kalman filtering measurement noise covariance matrix Rk, wherein N is the size of a data window;step 6: when the specific force is fkb=[fx,k fy,k fz,k]T at the kth time, selecting a measurement vector Zk=[fx,k fy,k]T to perform measurement update so as to realize the correction of the state quantity, wherein fx,k, fy,k, and fz,k are components of the specific force fkb in x-axis, y-axis, and z-axis directions of a carrier system respectively; andstep 7: taking an estimated value of the state quantity at the kth time as an initial value of a state quantity at a next time, and repeatedly performing steps 3 to 6 until a navigation working state ends.
  • 2. The self-adaptive horizontal attitude measurement method based on motion state monitoring according to claim 1, wherein the Kalman filtering one-step prediction in step 4 comprises:
  • 3. The self-adaptive horizontal attitude measurement method based on motion state monitoring according to claim 1, wherein in step 5, the judging a maneuvering state of a carrier by using the specific force fb and the angular velocity ωb obtained in step 3 comprises: calculating the maneuvering state of the carrier by using the specific force fb and the angular velocity ωb from time k−N+1 to time k obtained in step 3, and acquiring a maneuvering vector Tk to realize maneuvering judgment, Tk satisfying:
  • 4. The self-adaptive horizontal attitude measurement method based on motion state monitoring according to claim 3, wherein the self-adaptively adjusting a Kalman filtering measurement noise covariance matrix Rk in step 5 comprises:
  • 5. The self-adaptive horizontal attitude measurement method based on motion state monitoring according to claim 1, wherein an update equation of the measurement update in step 6 is:
Priority Claims (1)
Number Date Country Kind
2021104286455 Apr 2021 CN national
Continuations (1)
Number Date Country
Parent PCT/CN2022/087805 Apr 2022 US
Child 17844224 US