Field of the Invention
The invention relates to a control method of an aircraft, and particularly relates to a multiple rotors aircraft based on a non-Lipschitzian characteristic and a control method thereof.
Description of Related Art
Along with quick development of technology, development cost of unmanned aerial vehicles (UAV) (which are also referred to as unmanned aircraft systems (UAS), etc.) originally applied in military field is also decreased, and various electronic companies actively involve in the UAV market. Regarding applications of good and food delivery and sports photography, the electronic companies try to implement the above applications through the UAVs recently. The UAV market is expected to bring a lot of job opportunities, and its economic output is limitless.
On the other hand, most of the UAVs on the market adopt a design of multiple rotors aircraft. The multiple rotors aircraft has characteristics of high mobility, simple design, high security, etc., and is adapted to carry on operations in surveillance, reconnaissance, exploration, transportation, etc., in near ground environment. Generally, a change in a flight attitude of the aircraft may cause a change in a flight direction of the aircraft, so as to change a direction and a magnitude of a thrust force. However, most of the current multiple rotors aircrafts have characteristics of high nonlinearity and coupling, which brings a great challenge in design of a system controller, and parameter uncertainty causes a log of influences on a dynamic behavior of the multiple rotors aircraft.
The invention is directed to a multiple rotors aircraft and a control method thereof, in which control gains for driving rotors in the multiple rotor aircraft are adjusted based on a convergence property of differential equations, so as to achieve fast, stable and robust effects.
The invention provides a control method, which is adapted to a multiple rotors aircraft, and includes following steps. Current motion information of the multiple rotors aircraft is obtained. Then, at least one control gain is adjusted through a gain adjustment function according to the current motion information, so as to control at least one rotor of the multiple rotors aircraft according to the control gain. The gain adjustment function conforms to a non-Lipschitzian characteristic.
In an embodiment of the invention, after the step of adjusting the at least one control gain through the gain adjustment function according to the current motion information, the method further includes adjusting a target attitude parameter through an attitude estimation function according to the current motion information and the control gain, where the attitude estimation function is
In an embodiment of the invention, before the step of adjusting the at least one control gain through the gain adjustment function according to the current motion information, the method further includes defining an error function, where the error function is
b is a length constant, and the error function conforms to the non-Lipschitzian characteristic.
In an embodiment of the invention, the current motion information further includes a current position, the step of obtaining the current motion information of the multiple rotors aircraft includes obtaining the current position, a current pitch angle, a current yaw angle and a current roll angle through at least one inertial navigation element.
According to another aspect, the invention provides a multiple rotors aircraft, which includes at least one rotor, at least one inertial navigation element and a processing unit. The rotors are respectively controlled by at least one control gain. The inertial navigation element is configured to obtain current motion information of the multiple rotors aircraft. The processing unit is coupled to the rotors and the inertial navigation element, and obtains the current motion information of the multiple rotors aircraft through the inertial navigation element, and adjusts the at least one control gain through a gain adjustment function according to the current motion information. The gain adjustment function conforms to a non-Lipschitzian characteristic.
In an embodiment of the invention, the non-Lipschitzian characteristic represents that a convergence value of a function is only zero, and the convergence value is not varied after being converged to zero.
In an embodiment of the invention, the current motion information includes a current pitch angle, a current yaw angle and a current roll angle, and the gain{dot over (h)}x=−hx(1/2 n+1)[Ũ1(−θd+cos ψ sin θ cos φ+sin ψ sin φ)Sx] adjustment function is {dot over (h)}y=−hy(1/2n+1)[Ũ1(−φd+sin ψ sin θ cos φ−cos ψ sin φ)Sy], where
hx, hy are control gains,
is a target pitch angle in a target attitude parameter, φd is a target yaw angle in the target attitude parameter, ψ is the current roll angle, θ is the current pitch angel, φ is the current yaw angle, Sx=ėx+kxex, ex=x−xd, Sy=ėy+kyey, ey=x−xd, Sz=ėz+kzez, ez=z−zd, (x,y,z) is a current position, (xd,yd,zd) is a target position, kx, ky, and kz are control coefficients, Kz is an aerodynamic damping coefficient, n is hierarchy, g is the acceleration of gravity, Θi=Ũ1{tilde over (H)}iSi, {tilde over (H)}x=−θd+cos ψ sin θ cos φ+sin ψ sin φ, {tilde over (H)}y=−φd+sin ψ sin θ cos φ−cos ψ sin φ, and σ is a micro constant.
In an embodiment of the invention, the processing unit adjusts the target attitude parameters through an attitude estimation function according to the current motion information and the control gain, where the attitude estimation function is
In an embodiment of the invention, the processing unit defines an error function, where the error function is
b is a length constant, and the error function conforms to the non-Lipschitzian characteristic.
According to the above descriptions, in the multiple rotors aircraft and the control method thereof provided by the invention, the error function, the gain adjustment functions and the attitude estimation functions are determined according to the non-Lipschitzian characteristic, so as to adjust the control gains used for driving the rotors and the target attitude parameters. In this way, the embodiment of the invention may accurately control the multiple rotors aircraft to reach a target position, so as to provide a robust adaptive control system.
In order to make the aforementioned and other features and advantages of the invention comprehensible, several exemplary embodiments accompanied with figures are described in detail below.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
In conditions of stability analysis of conventional differential equations, it is known that exponential solutions are convergent. A multiple rotors aircraft and a control method thereof provided by the embodiments of the invention are adapted to quickly estimate an actual state (for example, a flight attitude) through specific differential equations, so as to achieve a quick convergence effect. Moreover, through stability analysis, stability of the system is proved. A plurality of embodiment complying with the spirit of the invention is provided below, and users may suitably adjust the embodiments according to an actual requirement without being limited to the following described content.
Each of the rotors 1101-110N may at least include (but not limited to) components of blades, a blade hub, propellers, a torque arm, a rotor shaft, etc. The rotors 1101-110N are respectively driven by a control gain, and the multiple rotors aircraft 100 may accordingly implement operations of hovering, maintaining attitude, levelling off, etc. Based on a different number of the rotors 1101-110N, the multiple rotors aircraft 100 may have a different term (for example, a quacioter, a hexacopter, an oetocopter, etc.), and the number of the rotors 1101-110N is not limited by the invention.
The inertial navigation element 130 (or an inertial measurement unit (IMU)) includes an accelerometer, a gyro sensor, an E-compass, a G-sensor, a geomagnetic sensor, etc., and is configured to obtain current motion information (for example, a current position, a current pitch angle, a current yaw angle, a current roll angle, etc.) of the multiple rotors aircraft 100. It should be noted that according to a different design requirement, the multiple rotors aircraft 100 may also include a satellite navigation system such as a global positioning system (GPS), an assisted global positioning system (AGPS), a Galileo positioning system or a global navigation satellite system (GLONASS), etc., to assist obtaining position of geodesic coordinates (or geographical position).
The processing unit 150 is coupled to the rotors 1101-110N and the inertial navigation element 130, and is a central processing unit (CPU), or other programmable general purpose or special purpose microprocessor, a digital signal processor (DSP), a programmable controller, an application specific integrated circuit (ASIC) or other similar devices or a combination of the above devices. In the present embodiment, the processing unit 150 is configured to execute all of operations of the multiple rotors aircraft 100. For example, the processing unit 150 has a proportional-integral-differential (PID) controller, which controls rotation speeds of the rotors 1101-110N based on the control gain, and adjusts the control gains and a flight attitude, etc., according to a control method of the invention, which is described in detail later.
It should be noted that according to a different design requirement, the multiple rotors aircraft 100 may further include a motor (for example, a brushless direct current (BLDC) motor, an electric motor, a frame, a bracket, a power module, etc., and appearances, configuration positions and sizes of the above components are not limited by the invention.
In order to facilitate understanding of an operation flow of the invention, a plurality of embodiments is provided below to describe a control method of the multiple rotors aircraft 100 of the invention in detail.
In step S210, the processing unit 150 obtains current motion information of the multiple rotors aircraft 100 through the inertial navigation element 130. In the present embodiment, the current motion information of the multiple rotors aircraft 100 includes a current pitch angle φ, a current yaw angle θ, a current roll angle ψ (or referred to as an Euler angle coefficient in a rotation sequence Ey-Ez-Ex) and a current position. To be specific, in order to further understand the flight attitude of the multiple rotors aircraft 100, a dynamic model of a four-rotor aircraft is taken as an example for preliminary derivation.
The processing unit 150, for example, obtains sensing information (for example, an azimuth angle, an acceleration, a speed, a displacement, etc.) through the inertial navigation element 130 such as a gyro sensor, an accelerometer, an E-compass, etc., and calculates the current position and the current pitch angle φ, the current yaw angle θ and the current roll angle ψ according to the sensing information.
Moreover, a basic principle of navigation is to ensure correct transformation of two coordinate systems (i.e. on-vehicle coordinates and the geodesic coordinates). Then, referring to
and a dynamic model can be defined as
where m is a mass of the four-rotor aircraft 300, g is an acceleration of gravity (9.8 km/s), and [Ax Ay Az] is an aerodynamic forces vector.
It should be noted that in an actual practice, the processing unit 150 may directly obtain a geodesic position (or a geographical position) through the satellite positioning system. In order to ensure the correct transformation of the two coordinate systems, the processing unit 150 requires to perform calibration at all the time. For example, the processing unit 150 corrects the current roll angle ψ based on the E-compass and the geomagnetic sensor, corrects the current pitch angle φ and the current yaw angle θ based on the accelerometer and the G-sensor. After the correct transformation of the two coordinate systems is ensured, the processing unit 150, for example, performs an integral operation based on the gyro sensor to obtain attitude information based on the on-vehicle coordinate system (i.e. the current pitch angle φ, the current yaw angle θ and the current roll angle ψ).
In step S220, the processing unit 150 adjusts a control gain through a gain adjustment function according to the current motion information, so as to control the rotors 1101-110N of the multiple rotors aircraft 100 through the control gain. The gain adjustment function conforms to a non-Lipschitzian characteristic. The non-Lipschitzian characteristic represents that a convergence value of the function is only zero, and the convergence value is varied after being converged to zero. To be specific, derivation of the gain adjustment function is described below. First, a translational kinetic energy Ttrans and a rotation kinetic energy Trot can be respectively represented by following equations (1) and (2):
Where, ζ=(x,y,z)εR3, η=(φ,θ,ψ)εS3, J is a rotation inertia matrix. A potential energy U of the four-rotor aircraft 300 in
U=mgz (3)
A Lagrangian function can be represented in a following equation (4):
Where, q=[φθψ]′. By applying the above equations (1)-(3) to L(q,{dot over (q)}), a following equation (5) is obtained:
Where,
Where, f1, f2, f3, f4 are respectively thrust forces (corresponding to a B3 axis direction of the on-vehicle coordinate system, or a direction perpendicular to the blades of the rotors 3101, 3102, 3103, 3104) of the rotors 3101, 3102, 3103, 3104, l is a length from a motor shaft to a mass center.
By organizing the above equations, following equations (9) and (10) are obtained:
Where, C(η,{dot over (η)}) is a Coriolis term.
In order to overcome a rotation moment produced when the four sets of rotors 3101, 3102, 3103, 3104 simultaneously rotate, the four-rotor aircraft 300 may adopt a symmetric rotation direction design (for example, rotation directions M1, M2, M3, M4 of the rotors 3101, 3102, 3103, 3104 in
Therefore, deduced according to a robust adaptive control in collaboration with the non-Lipschitzian characteristic (i.e. the finite time is converged to zero), it is known that in the technique of the multiple rotors aircraft, a position control is a rather important link. A main purpose of the position control is to control the current position of the multiple rotors aircraft 100 to move to a target position (xd, yd, zd) within a certain time. Since the processing unit 150 is required to calculate target attitude parameters (a target pitch angle θd, a target yaw angle φd, a target roll angle ψd) required by the multiple rotors aircraft 100 according to the required target position during the calculation process, so as to drive the multiple rotors aircraft 100 to move to the target position, (to facilitate description, the four-rotor aircraft 300 of
Where, Ω1, Ω2, Ω3, Ω4 are respectively rotation speeds of the four sets of rotors in the four-rotor aircraft 300, b is a frame related length coefficient, and {tilde over (H)}x, {tilde over (H)}y are respectively defined as following equations (12), (13):
{tilde over (H)}x=−θd+cos ψ sin θ cos φ+sin ψ sin φ (12)
{tilde over (H)}y=−φd+sin ψ sin θ cos φ−cos ψ sin φ (13)
In order to ensure the multiple rotors aircraft 100 to fly to the target position, a position tracking trajectory error function is defined as a following equation (14):
Sζ=ėζ+kζeζ (14)
Where, S70=└Sx Sy Sz┘=└ėx+kxex ėy+kyey ėz+kzez┘ and eζ=[ex ey ez]T=[x−xd y−yd z−zd]T, and
kx, ky, and kz are control coefficients (real numbers).
According to the position tracking trajectory error function (14), it is known that when Sζ=0, it represents that the error dynamically reaches a sliding surface, and such result is similar to a variable structure system well known by those skilled in the art, and each time when the error reaches the sliding surface to make Sζ=0, the tracking trajectory error is ensured to be zero, so as to achieve an effect of position control.
Then, the target position ζd(t) is set as a bounded function, and a differential of the target portion (i.e. the target speed) ζd(i)(t)εR, i=1,2,3 is bounded and conforms to ζd(i)(t)εL∞.
It should be noted that a main design purpose of the position control is to make the current position of the aircraft to reach the target position, i.e.
Therefore, a primary condition is to ensure the processing unit 150 to obtain the current position of the multiple rotors aircraft 100 (i.e. the step S210). Then, the processing unit 150 defines an error function (15) as follows:
and defines Ũ1 as the main thrust force of the multiple rotors aircraft 100. For example, the main thrust force of the four-rotor aircraft 300 of
It should be noted that rules of a non-Lipschitzian autonomous system include following theorems. Considering that the autonomous system {dot over (x)}=f(x), where f:D→Rn is non-Lipschitzian continuous on an origin open neighborhood D⊂Rn of an origin of Rn. The origin of {dot over (x)}=f(x) is a finite time convergence if there exists an origin N⊂D of the origin and a function Tx:N\{0}→(0, ∞) calls a setting time function such that every solution a trajectory x(t,x0) of {dot over (x)}=f(x) starting from an initial point x0ε[0,Tx(x0)), and
In other words, a condition of a differential equation being differentiable is that it is continuous and smooth. If the unique solution to the differential equation is 0 and continuous but not smooth, it is undifferentiable. However, if the solution to the differential equation does not vary after reaching 0, it indicates that the differential equation converges to 0.
Then, based on height control, the main thrust force can be modified to a following equation (16):
Where, Kz is an aerodynamic damping coefficient (a real number).
Regarding the control gains for the Ex axis and the Ey axis, the gain adjustment functions (17), (18), (19) can be deduced based on the non-Lipschitzian characteristic, a Kalman filter and a sliding mode observer:
Where hx, hy are the control gains, n is hierarchy, g is the acceleration of gravity, Θi=Ũ1{tilde over (H)}iSi, i is x or y, and σ is a small constant.
It should be noted that the processing unit 150 changes the control gains by adjusting the hierarchy n, so as to adjust the convergence time of the gain adjustment functions (17) and (18).
Then, the processing unit 150 adjusts the target attitude parameters through attitude estimation functions according to the current motion information and the control gains (i.e. hx, hy), where the attitude estimation functions (20), (21) are defined as follows:
In other words, the processing unit 150 adjusts the control gains according to the gain adjustment functions (17), (18), (19), so as to control each set of the rotors 1101-110t, such that a flight attitude of the multiple rotors aircraft 100 is adjusted to the target pitch angle θd and the target yaw angle φd, and the multiple rotors aircraft 100 may accurately fly to the target position.
{tv}v=1∞ is conformed to a measure zero condition, such that hi(tv)=0, v=1,2,3, . . . ∞. Moreover, through theoretical analysis of stability conditions of Lyapunov and Kurzweil theory, it is learned that based on the equations (15)-(20), an error of position control of the multiple rotors aircraft 100 may reach an asymptotically stable condition. On the other hand, in the aforementioned descriptions, the derivation of the four-rotor aircraft is taken as an example for descriptions, and the multiple rotors aircraft with other number of the rotors can also be derived to calculate the corresponding error function (15), the gain adjustment functions (17), (18), (19) and the attitude estimation functions (20), (21).
The processing unit 150 obtains the current motion information (for example, an acceleration and an angular acceleration of each axis) through the accelerometer and the gyro sensor in the inertial navigation element 130 (step S510), and performs a transformation procedure on the current motion information (step S530). The processing unit 150 processes the value of the current motion information through a low-pass filter to obtain a required value, and further calculates through an integrator to obtain current speeds along three axial directions ({dot over (x)}{dot over (y)}ż), the current pitch angle φ, the current yaw angle θ and the current roll angle ψ (step S531). The processing unit 150 performs correction, transformation and estimation on the current speed ({dot over (x)}{dot over (y)}ż) through matrix adjustment (step S532), moving average calculation (step S535), a Kalman Filter (step S537) and a sliding mode observer (step S539) to calculate the current position (x,y,z). On the other hand, the processing unit 150 performs matrix adjustment on the current pitch angle φ, the current yaw angle θ and the current roll angle ψ (step S532) to transform each of the Euler angle coefficients into the geodesic coordinate system. Then, the processing unit 150 applies the above results to the equations (15)-(20) to respectively generate (for example, the error function (15), the gain adjustment functions (17), (18), (19) and the attitude estimation functions (20), (21)) (step S540), such that the current position (x,y,z) is conformed to the target position (xd,yd,zd) and the current attitude parameters (i.e. the current pitch angle φ, the current yaw angle θ and the current roll angle ψ) are conformed to the target attitude parameters (i.e. the target pitch angle θd, the target yaw angle φd and the target roll angle ψd) (steps S550, S555). The processing unit 150 transforms a system input into a trust input matrix form (step S570) to drive a brushless DC motor driver (step S580). Then, the processing unit 150 transforms a trust input into the trust input matrix form (step S591) to control the multiple rotors aircraft 100 (step S593). The aforementioned operation flow is repeatedly performed to converge the error value between the current position and the target position to zero.
It should be noted that according to a different design requirement, the transformation procedure of the step S530 can be varied along with different algorithms, and the embodiment of the invention is not limited to the flow of
In summary, in the multiple rotors aircraft and the control method thereof provided by the invention, the inertial navigation element is applied to measure the flight attitude of the multiple rotors aircraft (for example, the current pitch angle φ, the current yaw angle θ and the current roll angle ψ), and the error function based on the on-Lipschitzian characteristic is adopted to derive the attitude estimation functions and the gain adjustment functions, so as to adjust the control gains and the flight attitude. In this way, the error value between the current position and the target position may reach a fast convergence effect according to embodiment of the invention, so as to provide a robust adaptive control system.
It will be apparent to those skilled in the art that various modifications and variations can be made to the structure of the invention without departing from the scope or spirit of the invention. In view of the foregoing, it is intended that the invention cover modifications and variations of this invention provided they fall within the scope of the following claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
20030018929 | Bardsley | Jan 2003 | A1 |
20100308178 | Gemmati | Dec 2010 | A1 |
20120072056 | Hasan | Mar 2012 | A1 |
20160348533 | Ficklscherer | Dec 2016 | A1 |
Number | Date | Country |
---|---|---|
573293 | Jan 2004 | TW |
I290633 | Dec 2007 | TW |
I463284 | Dec 2014 | TW |
Number | Date | Country | |
---|---|---|---|
20170153650 A1 | Jun 2017 | US |