Method of controlling an aircraft, flight control device for an aircraft, and aircraft with such flight control device
11921521 · 2024-03-05
Assignee
Inventors
Cpc classification
B64C29/005
PERFORMING OPERATIONS; TRANSPORTING
International classification
G05D1/00
PHYSICS
B64C13/16
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A method of controlling an aircraft having multiple configurations is provided, wherein each configuration is controlled by a different control law implemented by a flight control device and transition from one configuration to another configuration is achieved by gradually blending out a control law for one configuration and by gradually increasing an impact of a control law for another configuration in the flight control device based on an estimated flight condition of the aircraft by dynamically adjusting, in the flight control device, respective maximum and minimum limit values of control volumes, which control volumes are defined by parameter ranges of control parameters in connection with a corresponding control law for the one configuration and for the other configuration, respectively.
Claims
1. A method of controlling an aircraft having multiple configurations, the method comprising: controlling each said configuration by a control law implemented by a flight controller, wherein: a first configuration includes a copter mode of the aircraft controlled by a first control law, when in the copter mode the aircraft performs at least one of vertical take-off, landing, hover, turn on a spot, climb or descent, with relatively low horizontal velocities; a second configuration includes a jet mode of the aircraft controlled by a second control law, when in the jet mode the aircraft performs at least one of level flight, turn flights, climb or descent, with relatively higher horizontal velocities than in said copter mode; and a threshold value for said horizontal velocity in a forward direction is defined for differentiating between said copter mode and jet mode; measuring a horizontal velocity relative to surrounding air of the aircraft and using the horizontal velocity as a trigger for switching from the copter mode to the jet mode, and vice versa; and transitioning from the first configuration to the second configuration by gradually blending out the first control law for the first configuration and by gradually increasing an impact of the second control law for the second configuration in said flight controller based on an estimated or measured flight condition of the aircraft by dynamically adjusting, in said flight controller, respective maximum and minimum limit values of control volumes that are defined by parameter ranges of control parameters in connection with the corresponding control law for the second configuration.
2. The method of claim 1, further comprising reducing said control volume in the parameter range for leaving a current one of said configurations associated with said control volume, and expanding the control volume in the parameter range for switching to a desired one of said configurations associated with said control volume.
3. The method of claim 2, wherein said parameter ranges are defined between maximum and minimum limit values u.sub.p1.sup.max_p1{circumflex over ()}min respectively, for said first configuration, and maximum and minimum limit values u.sub.p2.sup.max_p2{circumflex over ()}min respectively, for said second configuration, with u.sub.p1 and u.sub.p2 being pseudo control inputs computed using the control laws for said first and second configurations, respectively, both for controlling the aircraft motion and prior to allocation to different actuators thereof.
4. The method of claim 3, wherein during the transitioning, both of the configurations are active and both u.sub.p1 and u.sub.p2 are actively being computed.
5. The method of claim 4, further comprising during the transitioning, for a given timestep ts, where dt denotes a temporal distance between timesteps, calculating a new maximum or minimum limit value u.sub.pi.sup.m**, where m** denotes maximum, max, or minimum, min, and i={1, . . . , n}, n being a number of available ones of the configurations, according to u.sub.pi.sup.m**(ts)=u.sub.pi.sup.m**(ts.sub.)+{dot over (u)}.sub.pi.sup.m**(ts)dt, ts.sub.1 being a previous timestep.
6. The method of claim 5, further comprising determining derivative {dot over (u)}.sub.pi.sup.m** from {dot over (u)}.sub.pi.sup.m**=K.sub.i.sup.m**(bu.sub.pi.sup.m**), K.sub.i.sup.m** being a positive constant and b a boundary value for u.sub.pi.sup.m**, b being either zero or equal to a maximum physical limit in case m** denotes maximum or equal to a minimum physical limit in case m** denotes minimum.
7. The method of claim 6, wherein boundary value b is equal to zero if the transitioning is for leaving a corresponding one of the configurations i.
8. The method of claim 6, wherein during an initiation phase. prior to any of the transitioning, at least one of the configurations is defined as a primary configuration by setting corresponding u.sub.pi.sup.min=.sub.pi.sup.min .sub.pi.sup.max=.sub.pi.sup.maxmin .sub.pi.sup.max a minimum physical limit and a maximum physical limit, respectively, and any other one of the configurations is defined as a secondary configuration by setting u.sub.pi.sup.min=u.sub.pi.sup.max=0.
9. The method of claim 8, further comprising, when leaving said primary configuration, performing a check on whether any control outputs from the control law of said primary configuration deviate from desired values thereof, and, if a deviation exceeds a predetermined value, .sub.1, a control volume of the primary configuration is expanded again.
10. The method of claim 9, further comprising calculating said deviation as a weighted squared error, according to e.sub.1=x.sub.1.sup.dx.sub.1, where x.sub.1 denotes outputs from the control law of said primary configuration and x.sub.1.sup.d denotes said desired values, and checking if e.sub.1.sup.TW.sub.1e.sub.1>.sub.1, where W.sub.1 is a weight matrix.
11. The method of claim 3, wherein when adapting maximum and minimum limit values of control volumes, performing a check on whether or not the adapted maximum and minimum limit values for a given one of the configurations, i, lie in a predefined area around zero, in that case u.sub.pi is set to zero.
12. The method of claim 1, further comprising estimating a horizontal velocity relative to surrounding air of the aircraft using a pilot control input relating to a forward motion, by: normalizing said pilot control input; low-pass filtering said pilot control input; using said low-pass filtered and normalized pilot input as an estimated normalized forward speed; and assigning a threshold for the estimated normalized forward speed in order to determine when to switch from the copter mode to the jet mode, and vice versa.
13. A method of controlling an aircraft having multiple configurations, the method comprising: controlling each said configuration by a control law implemented by a flight controller, wherein: a first configuration includes a copter mode of the aircraft controlled by a first control law, when in the copter mode the aircraft performs at least one of vertical take-off, landing, hover, turn on a spot, climb or descent, with relatively low horizontal velocities; a second configuration includes a jet mode of the aircraft controlled by a second control law, when in the jet mode the aircraft performs at least one of level flight, turn flights, climb or descent, with relatively higher horizontal velocities than in said copter mode; and a threshold value for said horizontal velocity in a forward direction is defined for differentiating between said copter mode and jet mode; estimating the horizontal velocity relative to surrounding air of the aircraft using a pilot control input relating to a forward motion, by: normalizing said pilot control input; low-pass filtering said pilot control input; using said low-pass filtered and normalized pilot input as an estimated normalized forward speed; and assigning a threshold for the estimated normalized forward speed in order to determine when to switch from the copter mode to the jet mode, and vice versa; and transitioning from the first configuration to the second configuration by gradually blending out the first control law for the first configuration and by gradually increasing an impact of the second control law for the second configuration in said flight controller based on an estimated or measured flight condition of the aircraft by dynamically adjusting, in said flight controller, respective maximum and minimum limit values of control volumes that are defined by parameter ranges of control parameters in connection with the corresponding control law for the second configuration.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Advantageous further embodiments of the invention will now be described in connection with the appended drawings.
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7)
(8)
(9) In
(10) In
(11) When performing the method, boundaries of the (pseudo) control volumes spanned by the elements of u.sub.p1,u.sub.p2 are adjusted as described on the right side of .sup.4, when it consists of control thrust and control torques around roll, pitch and yaw axes; hence by maximum and minimum values we consider different maximum and minimum values for each dimension or component. u.sub.pi.sup.min and u.sub.pi.sup.max denote a minimum physical limit and a maximum physical limit, respectively, i.e., a vector with a corresponding value for every dimension of pseudo control volume.
(12) First, during an init phase (initiation phase, INIT) that can be performed on the ground in the case of an aircraft, prior to any transition at least one mode (Mode-1 according to
(13) In
(14) When switching, i.e., during transition, derivatives {dot over (u)}.sub.pi.sup.m** with respect to time are used for calculating the new limit values u.sub.pi.sup.m**, which is equivalent to saying that the control volume is adjusted (expanded or shrunk). Throughout this text, m** denotes either maximum, max, or minimum, min. For a given timestep ts, where dt denotes a temporal distance between timesteps, a new maximum or minimum limit value u.sub.pi.sup.m**, where i={1, . . . , n}, n being a number of available modes, e.g. two, is calculated by using said time derivatives {dot over (u)}.sub.pi.sup.m** according to u.sub.pi.sup.m**(ts)=u.sub.pi.sup.m**(ts.sub.1)+{dot over (u)}.sub.pi.sup.m**(ts)dt, ts.sub.1 being a previous timestep. This represents an efficient and differentiable (smooth) way of adapting said limit values and thus transiting between control modes.
(15)
(16) Moreover, in Mode-2 (or when switching to Mode-2) a weighted squared error is used for the states or outputs that are actively controlled by the primary controller, since both controllers are active simultaneously. Consider e.sub.1=x.sub.1.sup.dx.sub.1, where x.sub.1 collects the states/outputs controlled by the primary controller, e.g., altitude, roll, pitch and yaw angles and their derivatives, and u.sub.p1.sup.4, when it consists of control thrust and control torques around roll, pitch and yaw axes. Said weighted squared error can be determined using e.sub.1.sup.TW.sub.1e.sub.1>.sub.1, where W.sub.1 is a weight matrix. Said weight matrix W.sub.1 differs from that in Eq. 3. It is weighting the errors in states that we are interested in controlling/tracking (e.g., 3D attitude and altitude states; in that case W.sub.1 is a 44 matrix, if the errors in the derivatives of these states are ignored). In Eq. 3, W.sub.1 was a k.sub.ik.sub.i matrix.
(17) If the weighted squared errors are greater than a predefined threshold (.sub.1), i.e., if the if condition in Mode-2 is fulfilled, then the control volumes of the primary controller are expanded again, as indicated, making the primary controller available for correcting the errors (in fact, in this case the time derivatives for u.sub.p1.sup.m**. correspond to those for Mode-1. If said errors are less or equal than this predefined threshold .sub.1, i.e., if the else condition in Mode-2 is fulfilled, then primary control option is not needed and hence the boundaries of its volume can be shrunk. Finally, its impact on the overall control will vanish.
(18) Note that both primary and secondary control options are active, i.e. the control laws for both are actively being computed. However, the boundaries of the allowed control volume, and hence their impact on the overall control of the aircraft, are actively adjusted. In this way we do not need to discretely switch from one control method to another, but transition occurs in a smooth and continuous way.
(19) Note that an error in derivatives of the controlled states can also be considered, e.g., .sub.1={dot over (x)}.sub.1.sup.d{dot over (x)}.sub.1, without loss of generality. Also note that in the proposed algorithm, the primary controller option controls the airborne vehicle (aircraft) and its states already in the initial phase, i.e., the airborne vehicle is initially controlled by the primary control option. Then, if a condition occurs for switching to Mode-2 the airborne vehicle is in a new mode.
(20) As already stated, for each mode there are different dynamics for adjusting the maximum and minimum values of primary and secondary pseudo control inputs (u.sub.p1.sup.max, u.sub.p1.sup.min, u.sub.p2.sup.max and u.sub.p2.sup.min) as shown on the right side of
(21) Also note the two last if conditions at the bottom of
(22) See
(23) In
(24) Further in
(25) In particular, for airborne vehicles of the type shown in
(26) As shown in
(27) In
(28) Note that the invention can also be used (and might be very useful) when the aircraft is flying autonomously. In that case, one would not be using the forward speed estimation based on pilot input.
(29) Actually, for a safe and performant autonomous flight, forward speed measurement (if available w.r.t. air) may be regarded as essential. Hence, in that case speed measurement (possibly supported with different types of estimates) could advantageously be used.