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:
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
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:
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:
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:
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
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
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
[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:
[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:
[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:
[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:
[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:
[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:
[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,
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.
are positive constants and their values satisfy
and belong to Hurwitz, s is the complex frequency domain parameter. In one embodiment,
(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:
[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:
[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,
[0043] z.sub.y1, z.sub.y2, z.sub.y3 are the intermediate variables of the filter observer.
are positive constants and their values satisfy
and belong to Hurwitz. In one embodiment,
(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:
[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:
[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,
[0048] z.sub.z1, z.sub.z2, z.sub.z3 are the intermediate variables of the filter observer.
are positive constants and their values satisfy
and belong to Hurwitz. In one embodiment,
[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:
[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
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:
[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:
[0057] The position command of the three-dimensional reference trajectory to be followed by the unmanned helicopter at any time t is as follows:
[0058] The lumped disturbance term is set to:
[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:
[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
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
[0063] The response curves of the virtual control variable of the unmanned helicopter under the two control methods ARE shown in
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
[0065] The estimation error response curves of the two control methods for the lumped disturbance term are shown in
[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.