US12189402B2
Method and control unit for controlling an overdetermined system, system and aircraft
Publication
Application
Classifications
IPC Classifications
CPC Classifications
Applicants
Volocopter GmbH
Inventors
Burak Yüksel, Johannes Stephan
Abstract
A method for controlling an overdetermined system with multiple power-restricted actuators that perform a primary task and non-primary tasks, including: a) determining a pseudo-control command based on a physical model of the system, which pseudo-control command represents the torques and a total thrust force acting on the system, b) determining a control matrix, c) dissociating the control matrix into sub control matrices, wherein the sub control matrices and the corresponding sub pseudo-control commands correspond to the primary task for i=1 and for i>1 correspond to the non-primary task(s) and a priority of the non-primary tasks decreases with increasing index i, d) determining actuator control commands for solving the primary task, e) projecting the non-primary tasks into the null space of the primary task, and into respective null spaces of all of the non-primary tasks of higher priority, if present, and f) providing the actuator control commands from d) and e) at the actuators.
Figures
Description
INCORPORATION BY REFERENCE
[0001]The following documents are incorporated herein by reference as if fully set forth: German Patent Application No. 10 2021 111 104.8, filed Apr. 29, 2021.
TECHNICAL FIELD
[0002]The invention relates to a method for controlling an overdetermined system with multiple actuators, for example an aircraft with multiple propulsion units.
[0003]The invention also relates to a control unit for controlling an overdetermined system with multiple actuators, for example an aircraft with multiple propulsion units.
[0004]The invention further relates to an overdetermined system with multiple actuators.
[0005]Finally, the invention also relates to an aircraft with multiple propulsion units and optionally further actuators, such as movable flaps or winches, which together form an overdetermined system.
BACKGROUND
[0006]Airplanes, aerial vehicles or aircraft with overdetermined actuation (“over-actuation”, i.e. the airplane has a larger number of actuators than is necessary for the execution of so-called primary tasks in its control volume) offer the possibility of realizing a primary task with more than one solution. This intuitively implies that, depending on the airplane type, the actuator type and the tasks defined in the control volume, there may be additional room to perform one or more other (non-primary) tasks.
[0007]Depending on the airplane maneuver, environmental conditions, failure scenarios or other effects, it may happen that the airplane is operated close to the limits of its control volume. This means that the physical forces and moments (torques) that can be provided by the actuators and control surfaces (flaps, wings, etc.) are possibly not sufficient to control all of the control axes of the airplane at all points in time—in the case of the “VoloCity” multicopter produced by the applicant these are the rolling axis (longitudinal axis), the pitching axis (transverse axis), the yawing axis (vertical axis) and the (total) thrust. Another airplane type may, depending on the arrangement of the actuators, have different control axes, in particular two additional horizontal thrust axes. In such situations, the safety and controllability of the airplane can be ensured by one or more control axes being prioritized over the others, for example the rolling and pitching axes over the yawing axis. It is in this case important to ensure that a control axis with low priority does not adversely affect the control axis (axes) with high priority (for example if yawing has a lower priority than rolling and pitching, the yawing control must not lead to an adverse effect on rolling and pitching).
[0008]This isolation of different priorities in the control is not a trivial task. Generally, combining different tasks with a respective priority in such a way that low-priority tasks do not affect high-priority tasks is a complex challenge. The way secondary or third-level (tertiary or generally non-primary) tasks are added to a control and allocation problem (assignment problem) can substantially affect the available performance for solving a primary task and the stability of that solution.
[0009]In European patent application 19 212 935.1, the applicant proposes a method for operating an eVTOL aerial vehicle with 18 rotors, in which the primary control assignment finds a solution with so-called “L-2” minimization for the provision of the required thrusts and torques, while imposing a secondary and lower priority (not primary) compulsion to reduce the maximum LTU (lift thrust unit) power. This is carried out by changing the gain parameters of the assignment problem as a function of the deviation of an LTU value (the revolution rate—RPM) from the corresponding average value of the total LTUs (so-called “L-inf” minimization). Two tasks are carried out in one step, which makes it impossible to assign a different priority or criticality to the different goals. In addition, a failure or erroneous behavior when achieving a goal with lower criticality (for example a secondary goal) can negatively affect solving a task with higher criticality (for example a primary goal).
SUMMARY
[0010]The invention is based on the object of remedying the situation here and specifying a method, a control unit, a system and an aerial vehicle or an aircraft of the respective type mentioned, with which, in addition to the solution of at least one primary task, the solution of at least one non-primary task is possible without adversely affecting the primary task or its solution. The same is generally intended to apply to relatively higher-priority tasks over relatively lower-priority tasks.
[0011]This object is achieved by a method with one of more of the features disclosed herein, by a control unit with one of more of the features disclosed herein, by a system with one of more of the features disclosed herein, and by an aircraft with one of more of the features disclosed herein.
[0012]Preferred further developments are defined below and in the claims.
- [0014]a) determining a pseudo-control command up∈
p′ based on a physical model of the system, which pseudo-control command represents in particular the torques (L, M, N) and a total thrust force (F) acting on the system,
- [0015]b) determining a control matrix D, D∈
p′×k, according to up=Du, wherein u denotes actuator control commands,
- [0016]c) dissociating the control matrix D into sub control matrices Di according to
- [0014]a) determining a pseudo-control command up∈
[0017]
q≤p′, so that
[0018]
- [0020]d) determining the actuator control commands for solving the primary task according to u1=D1#up,1, where #denotes a matrix inversion and u1∈
k comprises those actuator control commands which solve the primary task, with u1∈U:={u∈
k|umin≤u≤umax},
- [0021]e) projecting the non-primary tasks, i>1, into the null space of the primary task, i=1, and into the respective null space of all of the non-primary tasks of higher priority, if present, so that Diuj=0, with uj∈
k, j>i, comprises actuator control commands for performing a non-primary task, and
- [0022]f) providing the actuator control commands from d) and e) at the actuators.
- [0020]d) determining the actuator control commands for solving the primary task according to u1=D1#up,1, where #denotes a matrix inversion and u1∈
[0023]The term “restricted” or “power-restricted” means in this context that the actuators have physical power limits, that is to say cannot perform every conceivable technical task (which applies in principle to any machine).
- [0026]a) determining a pseudo-control command up∈
p′ based on a physical model of the system, which pseudo-control command represents in particular the torques (L, M, N) and a total thrust force (F) acting on the system,
- [0027]b) determining a control matrix D, D∈
p′×k, according to up=Du, wherein u denotes actuator control commands,
- [0028]c) dissociating the control matrix into sub control matrices
- [0026]a) determining a pseudo-control command up∈
[0029]
q≤p′, so that
[0030]
- [0032]d) determining the actuator control commands for solving the primary task according to u1=D1#up,1, where #denotes a matrix inversion and u1∈
k comprises those actuator control commands which solve the primary task, with u1∈U:={u∈
k|umin≤u≤umax},
- [0033]e) projecting the non-primary tasks, i>1, into the null space of the primary task, i=1, and into the respective null space of all of the non-primary tasks of higher priority, if present, so that Diuj=0, if uj∈
k, j>i, comprises actuator control commands for performing a non-primary task, and
- [0034]f) providing the actuator control commands from d) and e) at the actuators.
- [0032]d) determining the actuator control commands for solving the primary task according to u1=D1#up,1, where #denotes a matrix inversion and u1∈
[0035]The control unit may be further designed and set up to carry out further developments described below of the method according to the invention.
[0036]Furthermore, the control unit may be actively connected to devices for measuring and/or determining parameters and states of the system and/or the actuators which are required for the determination of the pseudo-control command according to step a), in particular by a main flight control unit of an aircraft.
[0037]An overdetermined system according to the invention comprises multiple actuators actively connected to a control unit according to the invention.
[0038]An aircraft according to the invention comprises multiple propulsion units and optionally further actuators, such as movable flaps or winches, which together form an overdetermined system according to the invention, in particular in the form of a multicopter with a number of preferably electrically driven rotor units.
[0039]“Actuators” are understood in the present case to mean in particular, but not exclusively, propulsion units, such as rotor units or the like. In addition, depending on the design of the system (the aerial vehicle), there are other means, such as flaps, winches, etc. or generally means of operation, which the system needs to perform certain physical tasks.
[0040]A method for assigning control priorities to overdetermined systems, and specifically airplanes, in which low-priority tasks are projected into the null space of higher-priority tasks is proposed. This ensures that the low-priority tasks do not adversely affect the high-priority tasks.
[0041]A method for prioritizing control axes of a system (airplane) with overdetermined actuators by using its null space is proposed here in particular. With the method presented here, in the case of an airplane the control of the rolling axis can be prioritized over the control of the pitching axis, or the control of the rolling and pitching axes over the control of the yawing axis, or the control of the rolling and pitching axes over the control of the yawing axis over the altitude control, and so on. The combination of the priorities may be chosen as desired, and an underlying algorithm, which may preferably be implemented in software form in one configuration of the control unit according to the invention, can be applied to all such combinations.
[0042]It can be seen as a preferred feature that, on account of the use of the null space of the control matrix, a goal/task with lower priority cannot affect the task(s) with higher priority. For example, a tertiary task cannot affect the secondary and primary tasks, and a secondary task cannot affect the primary task.
[0043]The presented method can also be used for quaternary, quinary or other tasks if there is still appropriate room in the null space. If there is no more room in the null space, lower-priority tasks are advantageously simply ignored due to the definition of the null space.
[0044]In the present case, “null space” is to be understood as the core of a (linear) mathematical representation. The core of a linear representation f: V→W between vector spaces V, and W consists of those vectors in V which are mapped onto the zero vector in W; it is therefore the solution set of the homogeneous linear equation f(x)=0 and is therefore also referred to as a null space.
[0045]Looking at the example from EP 19 212 935.1, the primary task may be to find the solution of the control assignment to generate the required (total) thrust and the required torques with “L-2 minimization”. Accordingly, a secondary, i.e. non-primary, task can be the reduction of the maximum LTU power with “L-inf minimization”. If this secondary task is projected into the null space of the primary task according to the present invention, it is ensured that it does not affect the solution of the primary task. This is desirable for safety reasons, as the primary task is essential, but the secondary task is only preferable. In addition, another subordinate (for example tertiary task) can be assigned, for example reducing the power of a particular (or multiple) LTU(s) to for example 75% because the propulsion unit in question has overheated or was classified as faulty. As part of a corresponding further development of the invention, the tertiary task is projected into the null space of the primary and secondary tasks, so that it does not adversely affect the higher-prioritized tasks.
[0046]In the example above, the secondary and tertiary tasks can swap places depending on the requirement and prioritization. Within the scope of the present application, the priorities of the individual (control) tasks result from the respective specific application (more details on this further below).
[0047]It should be emphasized that the idea proposed here provides an extremely advantageous separation of tasks according to their respective criticality, which can be used for assigning different design assurance levels (DAL) of functions with different criticalities and goals. This has a noticeable influence on the reduction of the development costs of safety-critical devices, such as specifically aerial vehicles.
[0048]Although reference has been repeatedly made here and below to aerial vehicles, the described method is also generally suitable for controlling overdetermined actuator systems of any kind.
[0049]At this point, first the mathematical-physical background of the invention—in particular with regard to aerial vehicles—will be briefly discussed in more detail in order to facilitate understanding.
M(x){umlaut over (x)}+c(x,{dot over (x)})+g(x)+G(x)up=ƒext, Equation 1
wherein x∈
up=Du, Equation 2
with u∈U:={u∈
u=D#(W,umin,umax)up, Equation 3
wherein this inversion is usually carried out taking into account a weight or weighting matrix Wi∈
[0056]The presence of more than one solution to the inversion problem creates the possibility of a “null space” different from zero which can be used for other (secondary or tertiary or generally lower-prioritized) tasks without affecting overarching goals (tasks or their solutions).
Definition of the Control Axes
[0057]The (control) matrix D establishes a relationship between the physical control axes up (for example torques and thrust) and the actual actuator commands u on the basis of the relationship up=Du. To allow prioritization of the control axes, the following division is proposed:
[0058]
where: up,i=Diu. Here, up,i denotes a subset of the control axis concerned. It may be a single control axis, if dim(up,i)=1, or multiple control axes, if 1<dim(up,i)<p.
[0059]For example, up,1 may be the rolling and pitching moment (dim(up,1)=2), up,2 may be the yawning moment (dim(up,2)=1), and up,3 may be the thrust (dim(up,3)=1).
Null Space
N(Di)={v|Div=0}.
Calculation of the Null Space
N(D)=I−DT(D#)T∈
wherein I∈
Task Prioritization by Means of Null Space Projection
[0062]The control matrix D can be divided into smaller matrices (dissociated), the number of this division, separation or dissociation depending on the number of tasks/goals to be accomplished:
D=[D1TD2TD3T . . . DqT]T,
where q≤p is the number of tasks or goals to be performed. The smaller its index, the more important it is for it to be performed, and the task concerned (the goal concerned) is prioritized over the other tasks/goals.
[0063]For example, the goal with the highest priority is assigned using D1 (corresponding to up,1). Accordingly, the secondary goal is assigned using D2 (corresponding to up,2), etc.
Example of an Application with Three Tasks/Goals:
Primary Goal
u1=D1#uP,1,
wherein u1∈
u1∈U:={u∈
Secondary Goal
u2org=D2#(up,2−D2u1),
N2=I−D1T(D1#)T,
u2=N2u2org.
u2org∈U:={u2org∈
[0069]The complete actuator command, which ensures that the primary goal is not affected by the secondary goal (if there is no tertiary goal), preferably looks as follows:
u=u1+u2.
[0070]A corresponding further development of the method according to the invention provides that a complete actuator control command u is calculated as follows: u=u1+u2.
Tertiary Goal
[0072]
[0074]
u3org∈U3:={u3org∈
[0077]The complete actuator command, which ensures that the primary goal is not affected by the secondary goal and the tertiary goal and the secondary goal for its part is not affected by the tertiary goal, is then preferably:
u=u1+u2+u3.
[0078]A corresponding further development of the method according to the invention therefore provides that subsequently a complete control command u is calculated as follows: u=u1+u2+u3.
[0079]This procedure can be generalized:
[0080]For the task with the highest priority it always applies that
u1=D1#up,1.
[0081]For the secondary task it applies that
u2org=D2190(up,2−D2u1),
N2=I−D1T(D1#)T,
u2=N2u2org.
[0082]For all other tasks (with i>2) it applies that
uiorg=Di#(up,i−DiΣj=1i−1uj),
[0083]
[0084]A corresponding further development of the method according to the invention therefore provides that the null space Ni(D), i>1 is calculated according to
[0085]
[0086]Finally, the following is obtained as the complete actuator command
u=Σi=1nui.
ui∈Ui:={ui∈
with uΣ=Σj=1i−1uj.
uiorg=Di#(up,i−DiΣj=1i−1uj)
ui=Niuiorg
u=Σi=1nui; with
ui∈Ui:={ui∈
and with
uΣ=Σj=1i−1uj
[0089]Preferably, the method according to the invention is applied to an aircraft with multiple, k, propulsion units, preferably 18 propulsion units, k=18, which propulsion units form at least some of the actuators of the system.
[0090]For example, it may be provided in a further development of the method according to the invention that attitude control concerning rolling (in particular rolling angles) and pitching (in particular pitching angles) is prioritized over directional control concerning yawing (in particular the yaw rate) and vertical control concerning the flying altitude (in particular the climbing and descending rate). This is specifically explained in even more detail further below on the basis of
[0092]In another further development of the method, it may be provided that attitude control concerning rolling and pitching (in particular rolling angles and pitching angles) is prioritized over directional control concerning a yawing motion (in particular the yaw rate) and a total thrust.
[0094]In yet another further development of the method, it may also be provided that a total thrust is prioritized over attitude control concerning rolling and pitching (in particular rolling angles and pitching angles) and over directional control concerning a yawing motion (in particular the yaw rate).
[0096]The first two variants are aimed at resuming a stable flying position as soon as rolling and pitching angles have returned to a reasonable level. Because this may involve a loss of altitude, the strategy is possibly not suitable for cases in which the aerial vehicle is close to the ground.
[0097]By contrast, the third variant is well suited for cases in which a collision is unavoidable, and so instead of prioritizing thrust it can be attempted to reduce a collision speed in order to minimize damage to the aerial vehicle. It may also be attempted to reduce the pitching angle, which increases the crash safety for the pilot and passengers. The same applies to the rolling angle, whereas the yawing angle (directional angle) or yaw rate only has low priority in this case.
BRIEF DESCRIPTION OF THE DRAWINGS
[0098]Further properties and advantages of the invention result from the following description of the figures.
[0099]
[0100]
[0101]
[0102]
[0103]
DETAILED DESCRIPTION
[0104]
[0105]The invention is in principle not limited in its application to aerial vehicles 1 as overdetermined systems.
[0106]
[0107]For a regular multicopter, the attitude of the aerial vehicle also determines the alignment of the thrust vector. Therefore, the thrust requirement for compensating the weight of the aerial vehicle increases greatly if the attitude angle assumes large values, cf. the illustration in
[0108]If these aspects are combined, the result is that, in an extreme flying situation, as shown in
[0111]Step S6 includes an inquiry as to whether still further subordinate (non-primary, for example tertiary) tasks are to be solved. If yes (y), steps S4 (or S4′) and S5 are correspondingly adapted (for example with u3org etc.) and repeated for the further task(s). As soon as the inquiry in step S6 is answered with no (n), the method jumps to after step S7, where the complete control command is determined: =u1+u2+ . . . , depending on the number of tasks solved (see above). In step S8, this complete control command is used for controlling the actuators, and the method ends with step S9.
Claims
The invention claimed is:
1. A method for controlling a system, which is overdetermined, with multiple power-restricted actuators, wherein the actuators perform at least one primary task and a number of non-primary tasks, the method comprising:
c) dissociating the control matrix D into sub control matrices Di according to
q≤p′, so that
and up,i=Diu,
wherein the sub control matrices Di and corresponding sub pseudo-control commands up,i for i=1 correspond to the primary task and for i>1 correspond to the at least one non-primary task and wherein a priority of the non-primary tasks decreases with increasing index i,
f) providing the actuator control commands from d) and e) at the actuators.
2. The method as claimed in
3. The method as claimed in
subsequently calculating a complete actuator control command u as follows:
u=u1+u2.
4. The method as claimed in
5. The method as claimed in
6. The method as claimed in
subsequently calculating a complete actuator control command u as follows: u=u1+u2+u3.
7. The method as claimed in
8. The method as claimed in
calculating the null space Ni(D), i>1 according to
9. The method as claimed in
for solving a non-primary task, i>1, calculating:
uiorg=Di#(up,i−DiΣj=1i−1uj)
ui=Niuiorg;
u=Σi=1nui; with
uΣ=Σj=1i−1uj.
10. The method as claimed in
11. The method as claimed in
prioritizing attitude control concerning rolling and pitching, over directional control concerning yawing and vertical control concerning a flying altitude.
12. The method as claimed in
13. The method as claimed in
prioritizing attitude control concerning rolling and pitching over directional control concerning yawing and a total thrust.
14. The method as claimed in
15. The method as claimed in
prioritizing a total thrust over attitude control concerning rolling and pitching, and over directional control concerning yawing.
16. The method as claimed in
17. A control unit (2a) for controlling a system, which is overdetermined, with multiple power-restricted actuators, wherein the actuators perform at least one primary task and at least one non-primary task, comprising a controller configured to
c) dissociating the control matrix into sub control matrices
q≤p′, so that
and up,i=Diu,
wherein the sub control matrices Di and corresponding sub pseudo-control commands up,i for i=1 correspond to the primary task and for i>1 correspond to the at least one non-primary task and wherein a priority of the non-primary tasks decreases with increasing index i,
f) providing the actuator control commands from d) and e) at the actuators.
19. The control unit (2a) as claimed in
20. An overdetermined system comprising multiple actuators actively connected to the control unit (2a) as claimed in
21. An aircraft (1) comprising the overdetermined system as claimed in