TRAJECTORY TRACKING CONTROL METHOD FOR UNMANNED HELICOPTERS BASED ON FILTER OBSERVER

20260010163 ยท 2026-01-08

Assignee

Inventors

Cpc classification

International classification

Abstract

A trajectory tracking control method for the unmanned helicopter based on the filter observer is provided. This method establishes a position system model of the disturbed unmanned helicopter including a lumped disturbance term and a measurement noise term, then, the state vector is constructed based on the actual position and actual speed of the unmanned helicopter, the position system model of the disturbed unmanned helicopter is transformed into the system state equation based on the state vector, according to the system state equation, the filter observer is designed based on the continuous-time Kalman filter, and the composite PID controller is designed for the position system model of the disturbed unmanned helicopter, the trajectory tracking control of the disturbed unmanned helicopter using the composite PID controller combined with the filter observer can perform dynamic real-time feedforward compensation for the lumped disturbance and achieve effective suppression of the measurement noise.

Claims

1. A trajectory tracking control method for an unmanned helicopter based on a filter observer, wherein the trajectory tracking control method for the unmanned helicopter comprises: establishing a position system model of a disturbed unmanned helicopter, the position system model of the disturbed unmanned helicopter comprises a position dynamic equation of the unmanned helicopter under an action of a control variable and a position measurement equation of a position measurement sensor in the unmanned helicopter, the position dynamic equation comprises a lumped disturbance term configured to characterize an external disturbance of the unmanned helicopter, the position measurement equation comprises a measurement noise term configured to characterize a measurement error disturbance of the position measurement sensor; constructing a state vector by an actual position and an actual speed of the unmanned helicopter, transforming the position system model of the disturbed unmanned helicopter into a system state equation based on the state vector, and designing the filter observer based on a continuous-time Kalman filter according to the system state equation; designing a composite proportion integration differentiation (PID) controller for the position system model of the disturbed unmanned helicopter; when a trajectory tracking control of the unmanned helicopter is performed, inputting the control variable of the unmanned helicopter and a position measurement value of the position measurement sensor into the filter observer to obtain an actual position estimated value and an estimated value of the lumped disturbance term, inputting a position error between the actual position estimated value and a three-dimensional reference trajectory and the estimated value of the lumped disturbance term into the composite PID controller, and controlling the unmanned helicopter according to a command value of the control variable output by the composite PID controller; the position dynamic equation of the unmanned helicopter is established as follows: { x .Math. = - k d m x + T m m ( cos sincos + sin sin ) + D x y .Math. = - k d m y + T m m ( cos sinsin - sin cos ) + D y z .Math. = - k d m z + T m m cos cos + g + D z the position measurement equation of the position measurement sensor in the unmanned helicopter is established as follows: { x m = x + v mx y m = y + v my z m = z + v m z wherein (x, y, z) is an actual position of the unmanned helicopter in three axis directions of an inertial coordinate system, (x.sub.m, y.sub.m, z.sub.m) is a position measurement value in the three axis directions of the inertial coordinate system obtained by the position measurement sensor in the unmanned helicopter, (v.sub.mx, v.sub.my, v.sub.mz) is the measurement noise term of the position measurement sensor in the unmanned helicopter in the three axis directions of the inertial coordinate system; (D.sub.x, D.sub.y, D.sub.z) is the lumped disturbance term in the three axis directions of the inertial coordinate system; the control variables of the unmanned helicopter comprise a main rotor lift force T.sub.m, roll angle , a pitching angle , and a heading angle ; m is a mass of the unmanned helicopter, g is an acceleration constant of gravity, k.sub.d is a velocity damping coefficient; the same three-channel composite PID controller is designed for the three axis directions of the inertial coordinate system: { T m m ( cos sincos + sin sin ) = - K p x ( x - x r ) - K ix ( x - x r ) - K d x ( x - x r ) - D x T m m ( cos sinsin - sin cos ) = - K py ( y - y r ) - K iy ( y - y r ) - K dy ( y . ^ - y . r ) - D y T m m cos cos + g = - K p z ( z - z r ) - K iz ( z - z r ) - K dz ( z ^ - z r ) - D z wherein (x.sub.r, y.sub.r, z.sub.r) is a position reference indicated by the three-dimensional reference trajectory to be followed by the unmanned helicopter; ({circumflex over (x)}, , {circumflex over (z)}) is an actual position estimated value in the three axis directions of the inertial coordinate system, and ({circumflex over (D)}.sub.x, {circumflex over (D)}.sub.y, {circumflex over (D)}.sub.z) is an estimated value of the lumped disturbance term in the three axis directions of the inertial coordinate system; K.sub.px, K.sub.ix, K.sub.dx are proportional coefficient, integral coefficient and differential coefficient in an x-axis direction of the inertial coordinate system, K.sub.py, K.sub.iy, K.sub.dy are proportional coefficient, integral coefficient and differential coefficient in a y-axis direction of the inertial coordinate system; K.sub.pz, K.sub.iz, K.sub.dz are proportional coefficient, integral coefficient and differential coefficient in a z-axis direction of the inertial coordinate system; K.sub.pj, K.sub.ij, K.sub.dj in any direction of j=x, y, z are positive constants and satisfy a polynomial P.sup.j(s)=s.sup.3+K.sub.djs.sup.2+K.sub.pjs+K.sub.ij=0 and belong to Hurwitz, s is a complex frequency domain parameter.

2. The trajectory tracking control method for the unmanned helicopter based on the filter observer according to claim 1, wherein the step of designing the filter observer comprises: constructing a state vector X=[x v.sub.x].sup.T and a derivative {dot over (X)}=[{dot over (x)} {dot over (v)}.sub.x].sup.T of the state vector of the unmanned helicopter in the x-axis direction of the inertial coordinate system, according to the position system model of the disturbed unmanned helicopter, the system state equation in the x-axis direction of the inertial coordinate system is { X = A x X + B x a x + B d x D x x m = H x X + v mx , and designing a filter observer in the x-axis direction of the inertial coordinate system to observe the actual position estimated value and the estimated value of the lumped disturbance term in the x-axis direction, wherein A x = [ 0 1 0 - k d m ] , B x = [ 0 1 ] , B dx = [ 0 1 ] , H x = [ 1 0 ] , a virtual control variable a x = T m m ( cos sincos + sin sin ) , v.sub.x={dot over (x)} denotes an actual speed of the unmanned helicopter in the x-axis direction of the inertial coordinate system; constructing a state vector Y=[y v.sub.y].sup.T and a derivative {dot over (Y)}=[{dot over (y)} {dot over (v)}.sub.y].sup.T of the state T vector of the unmanned helicopter in the y-axis direction of the inertial coordinate system, according to the position system model of the disturbed unmanned helicopter, the system state equation in the y-axis direction of the inertial coordinate system is { Y = A y Y + B y a y + B dy D y y m = H y y + v my , and designing a filter observer in the y-axis direction of the inertial coordinate system to observe the actual position estimated value and the estimated value of the lumped disturbance term in the y-axis direction, wherein A y = [ 0 1 0 - k d m ] , B y = [ 0 1 ] , B dy = [ 0 1 ] , H y = [ 1 0 ] , a virtual control variable a y = T m m ( cos sinsin - sin cos ) , v.sub.y={dot over (y)} denotes an actual speed of the unmanned helicopter in the y-axis direction of the inertial coordinate system; constructing a state vector Z=[z v.sub.z].sup.T and a derivative =[ {dot over (v)}.sub.z].sup.T of the state vector of the unmanned helicopter in the z-axis direction of the inertial coordinate system, according to the position system model of the disturbed unmanned helicopter, the system state equation in the x-axis direction of the inertial coordinate system is { Z = A z Z + B z a z + B dz D z z m = H z Z + v mz , and designing a filter observer in the z-axis direction of the inertial coordinate system to observe the actual position estimated value and the estimated value of the lumped disturbance term in the z-axis direction, wherein A z = [ 0 1 0 - k d m ] , B z = [ 0 1 ] , B dz = [ 0 1 ] , H z = [ 1 0 ] , a virtual control variable a z = T m m cos cos + g , v.sub.z= denotes an actual speed of the unmanned helicopter in the z-axis direction of the inertial coordinate system.

3. The trajectory tracking control method for the unmanned helicopter based on the filter observer according to claim 2, wherein the filter observer in the x-axis direction of the inertial coordinate system is designed as: { K x = P x H x T R x - 1 X ~ . = A x X ~ + B x a x + B dx D ^ x + K x ( x m - H x X ~ ) P . x = - P x H x T R x - 1 H x P x + A x P x + P x A x T + Q x { e Ox = z x 1 - x ~ z x 1 = z x 2 - 0 1 x e Ox z . x 2 = z x 3 - 0 2 x e Ox - k d m z x 2 + a x z x 3 = - 0 3 x e Ox x = z x 1 x . = z x 2 D x = z x 3 wherein K.sub.xR.sup.21 is a Kalman gain, P.sub.xR.sup.22 is a covariance matrix of a state vector estimation X, {tilde over (X)}=[{tilde over (x)} {tilde over (v)}.sub.x].sup.T is an estimated value of a system state in the x-axis direction obtained by the Kalman filter, {tilde over ({dot over (X)})}=[{tilde over ({dot over (x)})} {tilde over ({dot over (v)})}.sub.x].sup.T is a first derivative of the estimated value {tilde over (X)}, {tilde over (x)} denotes a position estimated value in the x-axis direction obtained by the Kalman filter, and, {tilde over (v)}.sub.x denotes a velocity estimated value in the x-axis direction obtained by the Kalman filter; {circumflex over (x)} denotes an estimated value of the actual position of the unmanned helicopter in the x-axis direction of the inertial coordinate system, and {circumflex over (v)}.sub.x={dot over ({circumflex over (x)})} denotes an actual velocity estimated value of the unmanned helicopter in the x-axis direction of the inertial coordinate system, {circumflex over (D)}.sub.x denotes the estimated value of the lumped disturbance term in the x-axis direction of the inertial coordinate system; Q.sub.xR.sup.22 denotes a covariance matrix of an estimated lumped disturbance term {circumflex over (D)}.sub.x; z.sub.x1, z.sub.x2, z.sub.x3 are area intermediate variables of the filter observer, 0 1 x , 0 2 x , 0 3 x are positive constants and values of the positive constants satisfy P x ( s ) = s 3 + 0 1 x s 2 + 0 2 x s + 0 3 x parameter, the measurement noise term v.sub.mx is Gaussian white noise, R.sub.x is a covariance of the measurement noise term v.sub.mx.

4. The trajectory tracking control method for the unmanned helicopter based on the filter observer according to claim 2, wherein the filter observer in the y-axis direction of the inertial coordinate system is designed as: { K y = P y H y T R y - 1 Y ~ . = A y Y ~ + B y a y + B dy D ^ y + K y ( y m - H y Y ~ ) P . y = - P y H y T R y - 1 H y P y + A y P y + P y A y T + Q y { e Oy = z y 1 - y ~ z y 1 = z y 2 - 0 1 y e Oy z . y 2 = z y 3 - 0 2 y e Oy - k d m z y 2 + a y z y 3 = - 0 3 y e Oy y = z y 1 y = z y 2 D y = z y 3 wherein K.sub.yR.sup.21 is a Kalman gain, P.sub.yR.sup.22 is a covariance matrix of a state vector estimation Y, {tilde over (Y)}=[{tilde over (y)} {tilde over (v)}.sub.y].sup.T is an estimated value of a system state in the y-axis direction obtained by the Kalman filter, {tilde over ({dot over (Y)})}=[{tilde over ({dot over (y)})} {tilde over ({dot over (y)})}.sub.y].sup.T is a first derivative of the estimated value {tilde over (Y)}, {tilde over (y)} denotes a position estimated value in the y-axis direction obtained by the Kalman filter, and {tilde over (v)}.sub.y denotes a velocity estimated value in the y-axis direction obtained by the Kalman filter; denotes an estimated value of the actual position of the unmanned helicopter in the y-axis direction of the inertial coordinate system, and {circumflex over (v)}.sub.y={dot over ()} denotes the actual velocity estimated value of the unmanned helicopter in the y-axis direction of the inertial coordinate system, {circumflex over (D)}.sub.y denotes the estimated value of the lumped disturbance term in the y-axis direction y of the inertial coordinate system; Q.sub.yR.sup.22 denotes a covariance matrix of the estimated lumped disturbance term {circumflex over (D)}.sub.y; z.sub.y1, z.sub.y2, z.sub.y3 are area intermediate variables of the filter observer; 0 1 y , 0 2 y , 0 3 y are positive constants and values of the positive constants satisfy P y ( s ) = s 3 + 0 1 y s 2 + 0 2 y s + 0 3 y and belong to Hurwitz, s is the complex frequency domain parameter, the measurement noise term v.sub.my is Gaussian white noise, R.sub.y is a covariance of the measurement noise term V.sub.mx.

5. The trajectory tracking control method for the unmanned helicopter based on the filter observer according to claim 2, wherein the filter observer in the z-axis direction of the inertial coordinate system is designed as: { K z = P z H z T R z - 1 Z ~ . = A z Z ~ + B z a z + B dz D ^ z + K z ( z m - H z Z ~ ) P . z = - P z H z T R z - 1 H z P z + A z P z + P z A z T + Q z { e Oz = z z 1 - z ~ z z 1 = z z 2 - 0 1 z e Oz z . z 2 = z z 3 - 0 2 z e Oz - k d m z z 2 + a z z z 3 = - 0 3 z e Oz z = z z 1 z = z z 2 D z = z z 3 wherein K.sub.zR.sup.21 is a Kalman gain, P.sub.zR.sup.22 is a covariance matrix of a state vector estimation Z, {tilde over (Z)}=[{tilde over (z)} {tilde over (v)}.sub.z].sup.T is an estimated value of a system state in the z-axis direction obtained by the Kalman filter, {tilde over ()}=[{tilde over ()} {tilde over ({dot over (v)})}.sub.z].sup.T is a first derivative of the estimated value {tilde over (Z)}, {tilde over (z)} denotes a position estimated value in the z-axis direction obtained by the Kalman filter, and {tilde over (v)}.sub.z, denotes a velocity estimated value in the z-axis direction obtained by the Kalman filter; {circumflex over (z)} denotes an estimated value of the actual position of the unmanned helicopter in the z-axis direction of the inertial coordinate system, and, {circumflex over (v)}.sub.z={dot over ({circumflex over (z)})} denotes the actual velocity estimated value of the unmanned helicopter in the z-axis direction of the inertial coordinate system, {circumflex over (D)}.sub.z denotes the estimated value of the lumped disturbance term in the z-axis direction of the inertial coordinate system; Q.sub.zR.sup.22 denotes a covariance matrix of the estimated lumped disturbance term {circumflex over (D)}.sub.z, z.sub.z1, z.sub.z2, z.sub.z3 are area intermediate variables of the filter observer; 0 1 z , 0 2 z , 0 3 z are positive constants and values of the positive constants satisfy P z ( s ) = s 3 + 0 1 z s 2 + 0 2 z s + 0 3 z parameter, the measurement noise term v.sub.mz is Gaussian white noise, R.sub.z is a covariance of the measurement noise term v.sub.mz.

6. The trajectory tracking control method for the unmanned helicopter based on the filter observer according to claim 1, wherein the step of obtaining the command value of the control variable of the unmanned helicopter comprises: on a basis of keeping the command value of the heading angle .sup.d=0, obtaining a command value of the main rotor lift force T m d , a command value of the roll angle .sup.d and a command value of the pitching angle .sup.d by using a designed filter observer combined with the composite PID controller: { T m d = m a x 2 + a y 2 + ( a z - g ) 2 d = arctan ( a x a z - g ) d = arcsin ( m a y T m d ) wherein { a x = T m m ( cos sin cos + sin sin ) a y = T m m ( cos sin sin - sin cos ) a z = T m m cos cos + g

Description

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] FIG. 1 is a control block diagram of the trajectory tracking control method for the unmanned helicopter in the embodiment of this invention.

[0014] FIG. 2 is a comparison diagram of the tracking trajectories of the two control methods in the simulation example.

[0015] FIGS. 3A-3C show a comparison diagram of the three-channel tracking error response curves of the two control methods in the simulation example.

[0016] FIGS. 4A-4C show a comparison diagram of the three-channel MAE response curves of the two control methods in the simulation example.

[0017] FIGS. 5A-5C show a comparison diagram of the response curves of the virtual control variable of the two control methods in the simulation example.

[0018] FIGS. 6A-6C show a comparison diagram of the response curves of the virtual control variable change rate of the two control methods in the simulation example.

[0019] FIGS. 7A-7C show a comparison diagram of the estimation errors of the three-channel lumped disturbance term of the two control methods in the simulation example.

DETAILED DESCRIPTION OF THE EMBODIMENTS

[0020] The following is a further explanation of the specific embodiment of this application in combination with the accompanying figures.

[0021] This application discloses a trajectory tracking control method for the unmanned helicopter based on the filter observer, combined with the control block diagram shown in FIG. 1, the trajectory tracking control method for the unmanned helicopter includes the following contents:

[0022] Step 1, the position system model of the disturbed unmanned helicopter is established, the position system model of the disturbed unmanned helicopter includes the position dynamic equation of the unmanned helicopter under the action of the control variable and the position measurement equation of the position measurement sensor in the unmanned helicopter.

[0023] The position dynamic equation indicates the position change of the unmanned helicopter, because the unmanned helicopter will be affected by external disturbance, the position dynamic equation contains a lumped disturbance term used to characterize the external disturbance of the unmanned helicopter. The position dynamic equation of unmanned helicopter is established as follows:

[00001] { x .Math. = - k d m x . + T m m ( cos sin cos + sin sin ) + D x y .Math. = - k d m y . + T m m ( cos sin sin - sin cos ) + D y z .Math. = - k d m z . + T m m cos cos + g + D z ( 1 )

[0024] where (x, y, z) is the actual position of the unmanned helicopter in the three axis directions of the inertial coordinate system, (D.sub.x, D.sub.y, D.sub.z) is the lumped disturbance term in the three axis directions of the inertial coordinate system.

[0025] {dot over (x)} denotes the first derivative of the actual position in the x-axis direction of the inertial coordinate system, that is, the actual speed in the x-axis direction of the inertial coordinate system. {umlaut over (x)} denotes the second derivative of the actual position in the x-axis direction of the inertial coordinate system. The first derivative and second derivative of other parameters are expressed in the same way, and they are not repeated one by one in the subsequent content.

[0026] m is the mass of the unmanned helicopter, g is the acceleration constant of gravity, k.sub.d is the velocity damping coefficient, these parameters are known parameters. In one embodiment, m=6 kg, g =9.8m/s.sup.2, k.sub.d=0.09.

[0027] The control variables of the unmanned helicopter include the main rotor lift force T.sub.m, the roll angle , the pitching angle and the heading angle .

[0028] In order to simplify the description and design, the virtual control variables of a.sub.x, a.sub.y, a.sub.z are introduced:

[00002] { a x = T m m ( cos sin cos + sin sin ) a y = T m m ( cos sin sin - sin cos ) a z = T m m cos cos + g ( 2 )

[0029] The position dynamic equation based on the control variable shown in Formula (1) can be rewritten as the position dynamic equation based on the virtual control variable as follows:

[00003] { x .Math. = a x - k d m x . + D x y .Math. = a y - k d m y . + D y z .Math. = a z - k d m z . + D z ( 3 )

[0030] The position measurement equation indicates the relationship between the position measurement value obtained by the position measurement sensor in the unmanned helicopter and the actual position, since the measurement sensor will be disturbed by the measurement error, the position measurement equation contains the measurement noise term used to characterize the measurement error disturbance of the position measurement sensor. The position measurement equation of the position measurement sensor in the unmanned helicopter is established as follows:

[00004] { x m = x + v m y m = y + v my z m = z + v mz ( 4 )

[0031] where (x.sub.m, y.sub.m, z.sub.m) is the position measurement value in the three axis directions of the inertial coordinate system obtained by the position measurement sensor in the unmanned helicopter, (v.sub.mx, v.sub.my, v.sub.mz) is the measurement noise term of the position measurement sensor in the unmanned helicopter in the three axis directions of the inertial coordinate system. The measurement noise term is usually Gaussian white noise satisfying v.sub.mx(0, R.sub.x), v.sub.my(0, R.sub.y) and v.sub.mz(0, R.sub.z), where R.sub.x is the covariance of the measurement noise term v.sub.mx, R.sub.y is the covariance of the measurement noise term v.sub.my, R.sub.z is the covariance of the measurement noise term v.sub.mz. In one embodiment, R.sub.x=R.sub.x=R.sub.x=0.04.

[0032] Step 2, the state vector is constructed based on the actual position (x, y, z) and actual speed ({dot over (x)}, {dot over (y)}, ) of the unmanned helicopter, the position system model of the disturbed unmanned helicopter is transformed into a system state equation based on the state vector, and the filter observer is designed based on the continuous-time Kalman filter according to the system state equation.

[0033] When designing the filter observer in this step, three-channel filter observers are designed for the three axis directions of the inertial coordinate system, including:

(1) For the X-Axis Direction of the Inertial Coordinate System

[0034] Firstly, the state vector X=[x v.sub.x].sup.T and the derivative {dot over (X)} =[{dot over (x)} {dot over (v)}.sub.x].sup.T of the state vector of the unmanned helicopter in the x-axis direction of the inertial coordinate system are constructed. v.sub.x={dot over (x)} denotes the actual speed of the unmanned helicopter in the x-axis direction of the inertial coordinate system, and {dot over (v)}.sub.x={umlaut over (x)} denotes the actual acceleration of the unmanned helicopter in the x-axis direction of the inertial coordinate system.

[0035] Then, according to (3) and (4) of the position system model of the disturbed unmanned helicopter, the system state equation in the x-axis direction of the inertial coordinate system is as follows:

[00005] { X = A x X + B x a x + B dx D x x m = H x X + v mx ( 5 ) where A x = [ 0 1 0 - k d m ] , B x = [ 0 1 ] , B dx = [ 0 1 ] , H x = [ 1 0 ] .

[0036] Then, based on the system state equation (5), a filter observer in the x-axis direction of the inertial coordinate system is designed to observe the actual position estimated value and the estimated value of the lumped disturbance term in the x-axis direction. The filter observer in the x-axis direction of the inertial coordinate system is designed as:

[00006] { K x = P x H x T R x - 1 X ~ . = A x X ~ + B x a x + B dx D ^ x + K x ( x m - H x X ~ ) P . x = - P x H x T R x - 1 H x P x + A x P x + P x A x T + Q x ( 6 ) { e Ox = z x 1 - x ~ z . x 1 = z x 2 - 0 1 x e Ox z . x 2 = z x 3 - 0 2 x e Ox - k d m z x 2 + a x z . x 3 = - 0 3 x e Ox x ^ = z x 1 x . ^ = z x 2 D ^ x = z x 3 ( 7 )

[0037] where K.sub.xR.sup.21 is the Kalman gain, P.sub.xR.sup.22 is the covariance matrix of the state vector estimation X. {tilde over (X)}=[{tilde over (x)} {tilde over (v)}.sub.x].sup.T is the estimated value of the system state in the x-axis direction obtained by the Kalman filter, {tilde over ({dot over (X)})}=[{tilde over ({dot over (x)})} {tilde over ({dot over (v)})}.sub.x].sup.T is the first derivative of the estimated value {tilde over (X)}, {tilde over (x)} denotes the position estimated value in the x-axis direction obtained by the Kalman filter, and {tilde over (v)}.sub.x denotes the velocity estimated value in the x-axis direction obtained by the Kalman filter, denotes the estimated value of the actual position of the unmanned helicopter in the x-axis direction of the inertial coordinate system, and {circumflex over (v)}.sub.x={dot over ({circumflex over (x)})} denotes the actual velocity estimated value of the unmanned helicopter in the x-axis direction of the inertial coordinate system, that is, the estimated value of the first derivative of the actual position. {circumflex over (D)}.sub.x denotes the estimated value of the lumped disturbance term in the x-axis direction of the inertial coordinate system. Q.sub.xR.sup.22 denotes the covariance matrix of the estimated lumped disturbance term {circumflex over (D)}.sub.x, in an embodiment,

[00007] Q x = [ 0 0 0 5 0 0 0 ] .

The estimated values of other parameters are also expressed in the same way, and they are not repeated one by one in the subsequent content.

[0038] z.sub.x1, z.sub.x2, z.sub.x3 are the intermediate variables of the filter observer.

[00008] 0 1 x , 0 2 x , 0 3 x

are positive constants and their values satisfy

[00009] P x ( s ) = s 3 + 0 1 x s 2 + 0 2 x s + 0 3 x

and belong to Hurwitz, s is the complex frequency domain parameter. In one embodiment,

[00010] 0 1 x = 18 , 0 2 x = 1 0 8 , 0 3 x = 216.

(2) For the Y-Axis Direction of the Inertial Coordinate System

[0039] The state vector Y=[y v.sub.y].sup.T and the derivative {dot over (Y)}=[{dot over (y)} {dot over (v)}.sub.y].sup.T of the state vector of the unmanned helicopter in the y-axis direction of the inertial coordinate system are constructed. v.sub.y={dot over (y)} denotes the actual speed of the unmanned helicopter in the y-axis direction of the inertial coordinate system, and {dot over (v)}.sub.y= denotes the actual acceleration of the unmanned helicopter in the y-axis direction of the inertial coordinate system.

[0040] Then, according to (3) and (4) of the position system model of the disturbed unmanned helicopter, the system state equation in the y-axis direction of the inertial coordinate system is as follows:

[00011] { Y . = A y Y + B y a y + B dy D y y m = H y Y + v my ( 8 ) where A y = [ 0 1 0 - k d m ] , B y = [ 0 1 ] , B dy = [ 0 1 ] , H y = [ 1 0 ] .

[0041] Based on the system state equation (8), a filter observer in the y-axis direction of the inertial coordinate system is designed to observe the actual position estimated value and the estimated value of the lumped disturbance term in the y-axis direction. The filter observer in the y-axis direction of the inertial coordinate system is designed as:

[00012] { K y = P y H y T R y - 1 Y ~ . = A y Y ~ + B y a y + B dy D y + K y ( y m - H y Y ~ ) P . y = - P y H y T R y - 1 H y P y + A y P y + P y A y T + Q y ( 9 ) { e Oy = z y 1 - y ~ z . y 1 = z y 2 - 01 y e Oy z . y 2 = z y 3 - 02 y e Oy - k d m z y 2 + a y z . y 3 = - 03 y e Oy y ^ = z y 1 y . ^ = z y 2 D ^ y = z y 3 ( 10 )

[0042] where K.sub.yR.sup.21 is the Kalman gain, P.sub.yR.sup.22 is the covariance matrix of the state vector estimation Y. {tilde over (Y)}=[{tilde over (y)} {tilde over (v)}.sub.y].sup.T is the estimated value of the system state in the y-axis direction obtained by the Kalman filter, {tilde over ({dot over (Y)})}=[{tilde over ({dot over (y)})} {tilde over ({dot over (v)})}.sub.y].sup.T is the first derivative of the estimated value {tilde over (Y)}, {tilde over (y)} denotes the actual position estimated value in the y-axis direction obtained by the Kalman filter, and {tilde over (v)}.sub.y denotes the velocity estimated value in the y-axis direction obtained by the Kalman filter, denotes the estimated value of the actual position of the unmanned helicopter in the y-axis direction of the inertial coordinate system, and {circumflex over (v)}.sub.y={dot over ()} denotes the actual velocity estimated value of the unmanned helicopter in the y-axis direction of the inertial coordinate system. {circumflex over (D)}.sub.y denotes the estimated value of the lumped disturbance term in the y-axis direction of the inertial coordinate system. Q.sub.yR.sup.22 denotes the covariance matrix of the estimated lumped disturbance term {circumflex over (D)}.sub.y, in an embodiment,

[00013] Q y = [ 0 0 0 5 0 0 0 ] .

[0043] z.sub.y1, z.sub.y2, z.sub.y3 are the intermediate variables of the filter observer.

[00014] 0 1 y , 0 2 y , 0 3 y

are positive constants and their values satisfy

[00015] P y ( s ) = s 3 + 0 1 y s 2 + 0 2 y s + 0 3 y

and belong to Hurwitz. In one embodiment,

[00016] 0 1 y = 1 8 , 0 2 y = 1 0 8 , 0 3 y = 216.

(3) For the Z-Axis Direction of the Inertial Coordinate System

[0044] The state vector Z=[z v.sub.z].sup.T and the derivative =[ {dot over (v)}.sub.z].sup.T of the state vector of the unmanned helicopter in the z-axis direction of the inertial coordinate system are constructed. v.sub.z= denotes the actual speed of the unmanned helicopter in the z-axis direction of the inertial coordinate system, and {dot over (v)}.sub.z={umlaut over (z)} denotes the actual acceleration of the unmanned helicopter in the z-axis direction of the inertial coordinate system.

[0045] Then, according to (3) and (4) of the position system model of the disturbed unmanned helicopter, the system state equation in the z-axis direction of the inertial coordinate system is as follows:

[00017] { Z . = A z Z + B z a z + B dz D z z m = H z Z + v mz ( 11 ) where A z = [ 0 1 0 - k d m ] , B z = [ 0 1 ] , B dz = [ 0 1 ] , H z = [ 1 0 ] .

[0046] Based on the system state equation (11), a filter observer in the z-axis direction of the inertial coordinate system is designed to observe the actual position estimated value and the estimated value of the lumped disturbance term in the z-axis direction. The filter observer in the z-axis direction of the inertial coordinate system is designed as:

[00018] { K z = P z H z T R z - 1 Z ~ . = A z Z ~ + B z a z + B dz D z + K z ( z m - H z Z ~ ) P . z = - P z H z T R z - 1 H z P z + A z P z + P z A z T + Q z ( 12 ) { e Oz = z z 1 - z ~ z . z 1 = z z 2 - 01 z e Oz z . z 2 = z z 3 - 02 z e Oz - k d m z z2 + a z z . z3 = - 03 z e Oz z ^ = z z 1 z . ^ = z z 2 D ^ z = z z 3 ( 13 )

[0047] where K.sub.zR.sup.21 is the Kalman gain, P.sub.zR.sup.22 is the covariance matrix of the state vector estimation Z. {tilde over (Z)}=[{tilde over (z)} {tilde over (v)}.sub.z].sup.T is the estimated value of the system state in the z-axis direction obtained by the Kalman filter, {tilde over ()}=[{tilde over ()} {tilde over ({dot over (v)})}].sup.T is the first derivative of the estimated value {tilde over (Z)}, {tilde over (z)} denotes the position estimated value in the z-axis direction obtained by the Kalman filter, and {tilde over (v)}.sub.z denotes the velocity estimated value in the z-axis direction obtained by the Kalman filter, {circumflex over (z)} denotes the estimated value of the actual position of the unmanned helicopter in the z-axis direction of the inertial coordinate system, and {circumflex over (v)}.sub.z={dot over ({circumflex over (z)})} denotes the actual velocity estimated value of the unmanned helicopter in the z-axis direction of the inertial coordinate system. {circumflex over (D)}.sub.z denotes the estimated value of the lumped disturbance term in the z-axis direction of the inertial coordinate system. Q.sub.zR.sup.22 denotes the covariance matrix of the estimated lumped disturbance term {circumflex over (D)}.sub.z, in an embodiment,

[00019] Q z = [ 0 0 0 5 0 0 0 ] .

[0048] z.sub.z1, z.sub.z2, z.sub.z3 are the intermediate variables of the filter observer.

[00020] 0 1 z , 0 2 z , 0 3 z

are positive constants and their values satisfy

[00021] P z ( s ) = s 3 + 0 1 z s 2 + 0 2 z s + 0 3 z

and belong to Hurwitz. In one embodiment,

[00022] 0 1 z = 1 8 , 0 2 z = 1 0 8 , 0 3 z = 216.

[0049] Step 3, a composite PID controller is designed for the position system model of the disturbed unmanned helicopter, the same three-channel composite PID controller is designed for the three axis directions of the inertial coordinate system:

[00023] { T m m ( cos sincos + sin sin ) = - K p x ( x - x r ) - K ix ( x - x r ) - K d x ( x - x r ) - D x T m m ( cos sinsin - sin cos ) = - K py ( y - y r ) - K iy ( y - y r ) - K dy ( y . ^ - y . r ) - D y T m m cos cos + g = - K p z ( z - z r ) - K iz ( z - z r ) - K dz ( z ^ - z r ) - D z ( 14 )

[0050] where (x.sub.r, y.sub.r, z.sub.r) is the position reference indicated by the three-dimensional reference trajectory to be followed by the unmanned helicopter. ({circumflex over (x)}, , {circumflex over (z)}) is the actual position estimated value in the three axis directions of the inertial coordinate system, and ({circumflex over (D)}.sub.x, {circumflex over (D)}.sub.y, {circumflex over (D)}.sub.z) is the estimated value of the lumped disturbance term in the three axis directions of the inertial coordinate system.

[0051] K.sub.px, K.sub.ix, K.sub.dx are the proportional coefficient, integral coefficient, and differential coefficient in the x-axis direction of the inertial coordinate system. K.sub.py, K.sub.iy, K.sub.dy are the proportional coefficient, integral coefficient and differential coefficient in the y-axis direction of the inertial coordinate system. K.sub.pz, K.sub.iz, K.sub.dz are the proportional coefficient, integral coefficient and differential coefficient in the z-axis direction of the inertial coordinate system. K.sub.pj, K.sub.ij, K.sub.dj in any direction of j=x, y, z are positive constants and satisfy the polynomial P.sup.j(s)=s.sup.3+K.sub.djs.sup.2+K.sub.pjs+K.sub.ij=0 and belong to Hurwitz. In one embodiment, K.sub.px=12, K.sub.py=K.sub.pz=18.75, K.sub.ix=8, K.sub.iy=K.sub.ix=15.625, K.sub.dx=6, K.sub.dy=K.sub.dz=7.5.

[0052] Step 4, when the trajectory tracking control of the unmanned helicopter is performed, the current control variable of the unmanned helicopter and the position measurement value (x.sub.m, y.sub.m, z.sub.m) of the position measurement sensor are input into the filter observer to obtain the actual position estimated value ({circumflex over (x)}, , {circumflex over (z)}) and the lumped disturbance term estimated value ({circumflex over (D)}.sub.x, {circumflex over (D)}.sub.y, {circumflex over (D)}.sub.z).

[0053] Then, the position error between the actual position estimated value ({circumflex over (x)}, , {circumflex over (z)}) and the three-dimensional reference trajectory (x.sub.r, y.sub.r, z.sub.r) and the estimated value of the lumped disturbance term ({circumflex over (D)}.sub.x, {circumflex over (D)}.sub.y, {circumflex over (D)}.sub.z) are input into the composite PID controller (14), and the unmanned helicopter is controlled according to the command value of the control variable output by the composite PID controller.

[0054] In the actual flight process of the unmanned helicopter, in order to facilitate the system control, it is always hoped that the heading angle of the unmanned helicopter is kept to zero, since this application mainly involves position control, the command value .sup.d of the heading angle can be set to 0, that is, the fixed =0 is substituted into Formula (14), and then the command value

[00024] T m d

of the main rotor lift force T.sub.m, the command value .sup.d of the roll angle , and the command value .sup.d of the pitching angle 0 can be obtained by the negative solution:

[00025] { T m d = m a x 2 + a y 2 + ( a z - g ) 2 d = arctan ( a x a z - g ) d = arcsin ( m a y T m d ) ( 15 )

[0055] In order to illustrate the effect of the trajectory tracking control method for the unmanned helicopter applied in this invention, the model of the unmanned helicopter is built by the Simulink toolbox in the simulation software MATLAB R2020b for simulation verification. In the case of fully considering the system lumped disturbance and measurement noise, in addition to the parameter settings provided in the above embodiment, other parameters in the simulation scenario are set as follows:

[0056] In the simulation example, m=6 kg, g=9.8 m/s.sup.2, k.sub.d=0.09 are set and the initial state of the unmanned helicopter as:

[00026] { x ( 0 ) = 0 , y ( 0 ) = 0 , z ( 0 ) = 0 v x ( 0 ) = 0 , v y ( 0 ) = 0 , v z ( 0 ) = 0

[0057] The position command of the three-dimensional reference trajectory to be followed by the unmanned helicopter at any time t is as follows:

[00027] { x r ( t ) = cos ( 0 . 2 t ) y r ( t ) = sin ( 0 . 2 t ) z r ( t ) = t

[0058] The lumped disturbance term is set to:

[00028] { D x = D y = 3 , D z = 2 0 s < t < 20 s D x = - 3 , D y = D z = - 2 20 s < t < 5 0 s

[0059] In order to make the simulation results closer to the real situation, in the control process, the value range of the virtual control variable and its change rate in each channel direction is limited as follows:

[00029] { - 3 0 a x 3 0 , - 5 0 a . x 5 0 - 3 0 a y 3 0 , - 5 0 a . y 5 0 - 3 0 a z 3 0 , - 5 0 a . z 5 0

[0060] In the same simulation scenario, the traditional method of composite PID controller combined with an extended state observer (denoted as PID+ESO) and the method of composite PID controller combined with a filter observer (denoted as PID+KFESO) are used to control the trajectory tracking of the unmanned helicopter, and then the two control methods are compared and verified.

[0061] The three-dimensional space trajectory tracking response curve of the unmanned helicopter under the two control methods is shown in FIG. 2, and the three-channel tracking error response curve is shown in FIGS. 3A-3C. It can be seen from FIGS. 3A-3C, the steady-state tracking accuracy of the proposed PID+KFESO control method is higher than that of the traditional PID+ESO method. In order to show the steady-state tracking accuracy of the two control methods more intuitively, the mean absolute value of tracking error (MAE) is introduced to quantify the steady-state tracking accuracy. When the system reaches a steady state (t>30 s), the three-channel MAE response curve of trajectory tracking under the two control methods is shown in FIGS. 4A-4C, the statistical comparison results are as follows:

TABLE-US-00001 x -axis MAE(m) y -axis MAE(m) z -axis MAE(m) PID + ESO 0.0336 0.0346 0.0422 PID + KFESO 0.0397 0.0295 0.0373

[0062] It can be clearly seen from the above table data and FIGS. 4A-4C that the steady-state tracking accuracy of the proposed control method is better than that of the traditional PID+ESO method.

[0063] The response curves of the virtual control variable of the unmanned helicopter under the two control methods ARE shown in FIGS. 5A-5C. From FIGS. 5A-5C, it can be seen that the smoothness of the control variable of the PID+KFESO control method applied in this application is better than that of the traditional PID+ESO method, indicating that the method applied in this application can reduce the frequency of the reciprocating motion of the actuator, which is more in line with the engineering practice. In order to more intuitively show the control smoothness of the two control methods, the mean absolute value of acceleration change rate (MAR) is introduced to quantify the control smoothness. The three-channel MAR response curve of the control volume change rate under the two control methods is shown in FIGS. 6A-6C, the statistical comparison results are as follows:

TABLE-US-00002 x -axis MAR y -axis MAR z -axis MAR PID + ESO 43.5975 44.5635 45.4097 PID + KFESO 5.4346 6.6564 7.2974

[0064] It can be clearly seen from the above table data and FIGS. 6A-6C that the smoothness of the control variable of this application control method is better than that of the traditional PID+ESO method.

[0065] The estimation error response curves of the two control methods for the lumped disturbance term are shown in FIGS. 7A-7C. From the estimation error response curve of FIGS. 7A-7C, it can be seen that the proposed control method improves the estimation accuracy of the lumped disturbance term compared with the traditional PID+ESO method.

[0066] The above is only the preferred embodiment of this application, and this application is not limited to the above embodiment. Understandably, other improvements and changes directly derived or associated by technicians in this field without deviating from the spirit and conception of this application should be considered to be included in the scope of protection of this application.