METHOD AND CONTROL UNIT FOR CONTROLLING AN OVERDETERMINED SYSTEM, SYSTEM AND AIRCRAFT
20220374028 · 2022-11-24
Assignee
Inventors
Cpc classification
International classification
G05D1/10
PHYSICS
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.
Claims
1. A method for controlling an overdetermined system with multiple power-restricted actuators, wherein the actuators perform at least one primary task and a number of non-primary tasks, the method comprising: a) determining a pseudo-control command u.sub.p∈.sup.p′ based on a physical model of a system, said pseudo-control command represents the torques (L, M, N) and a total thrust force (F) acting on the system, b) determining a control matrix D, D∈
.sup.p′×k according to u.sub.p=Du, wherein u denotes actuator control commands, c) dissociating the control matrix D into sub control matrices D.sub.i according to
.sup.k comprises said actuator control commands which solve the primary task, with u.sub.1∈U:={u∈
.sup.k|u.sup.min≤u≤u.sup.max} e) projecting the non-primary tasks, i>1, into a null space of the primary task, i=1, and into respective null space of all of the non-primary tasks of higher priority, if present, so that D.sub.iu.sub.j=0, with u.sub.j∈
.sup.k, j>i, comprises actuator control commands for performing a non-primary task, and f) providing the actuator control commands from d) and e) at the actuators.
2. The method as claimed in claim 1, further comprising first calculating u.sub.2.sup.org∈.sup.k, in order to solve a first one of the non-primary tasks, according to u.sub.2.sup.org=D.sub.2.sup.#(u.sub.p,2−D.sub.2u.sub.1), and subsequently projecting u.sub.2.sup.org onto the null space N.sub.2(D.sub.1) of the sub control matrix D.sub.1 according to u.sub.2=N.sub.2u.sub.2.sup.org, wherein N.sub.2=I−D.sub.1.sup.T(D.sub.1.sup.#).sup.T.
3. The method as claimed in claim 2, further comprising subsequently calculating a complete actuator control command u as follows:
u=u.sub.1+u.sub.2.
4. The method as claimed in claim 3, wherein for u.sub.2.sup.org it is specified that u.sub.2.sup.org∈U.sub.2:={u.sub.2.sup.org∈.sup.k|u.sup.min−u.sub.1≤N.sub.2u.sub.2.sup.org≤u.sup.max−u.sub.1}.
5. The method as claimed in claim 2, further comprising subsequently calculating u.sub.3.sup.org∈.sup.k in order to solve a second one of the non-primary tasks, according to u.sub.3.sup.org=D.sub.3.sup.#(u.sub.p,3−D.sub.3(u.sub.1−u.sub.2)), and subsequently projecting u.sub.3.sup.org onto the null space N.sub.3(D.sub.1,D.sub.2) of the sub control matrices D.sub.1,D.sub.2 according to u.sub.3=N.sub.3u.sub.2.sup.org, wherein
6. The method as claimed in claim 5, further comprising subsequently calculating a complete actuator control command u as follows: u=u.sub.1+u.sub.2+u.sub.3.
7. The method as claimed in claim 6, wherein for u.sub.3.sup.org it is specified that u.sub.3.sup.org∈U.sub.3:={u.sub.3.sup.org∈.sup.k|u.sup.min−u.sub.1−u.sub.2≤N.sub.3u.sub.3.sup.org≤u.sup.max−u.sub.1−u.sub.2}.
8. The method as claimed in claim 1, further comprising calculating the null space N.sub.i(D), i>1 according to
9. The method as claimed in claim 8, further comprising for solving a non-primary task, i>1, calculating:
u.sub.i.sup.org=D.sub.i.sup.#(u.sub.p,i−D.sub.iΣ.sub.j=1.sup.i−1u.sub.j)
u.sub.i=N.sub.iu.sub.i.sup.org;
u=Σ.sub.i=1.sup.nu.sub.i; with
u.sub.i∈U.sub.i:={u.sub.i∈.sup.k|u.sup.min−u.sub.Σ≤N.sub.iu.sub.i≤u.sup.max−u.sub.Σ} and with
u.sub.Σ=Σ.sub.j=1.sup.i−1u.sub.j.
10. The method as claimed in claim 1, wherein the method is applied to an aircraft (1) with multiple propulsion units (3), and said propulsion units form at least some of the actuators of the system.
11. The method as claimed in claim 1, further comprising 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 claim 11, further comprising selecting D.sub.1∈.sup.2×k such that it represents a mapping of the actuator control commands u onto a rolling and pitching moment, with u.sub.p,1∈
.sup.2, and selecting D.sub.2∈
.sup.2×k such that it represents a mapping of the actuator control commands u onto a thrust and yawing moment, with u.sub.p,2∈
.sup.2.
13. The method as claimed in claim 10, further comprising prioritizing attitude control concerning rolling and pitching over directional control concerning yawing and a total thrust.
14. The method as claimed in claim 13, further comprising selecting D.sub.1∈.sup.2×k such that it represents a mapping of the actuator control commands u onto a rolling and pitching moment, with u.sub.p,1∈
.sup.2, selecting D.sub.2∈
.sup.1×k such that it represents a mapping of the actuator control commands u onto a yawing moment, with u.sub.p,2∈
, and selecting D.sub.3∈
.sup.1×k such that it represents a mapping of the actuator control commands u onto the total thrust, with u.sub.p,3∈
.
15. The method as claimed in claim 10, further comprising prioritizing a total thrust over attitude control concerning rolling and pitching, and over directional control concerning yawing.
16. The method as claimed in claim 15, further comprising selecting D.sub.1∈.sup.1×k such that it represents a mapping of the actuator control commands u onto the total thrust, with u.sub.p,1∈
.sup.2, selecting D.sub.2∈
.sup.1×k such that it represents a mapping of the actuator control commands u onto a pitching moment, with u.sub.p,2∈
, selecting D.sub.3∈
.sup.1×k such that it represents a mapping of the actuator control commands u onto a rolling moment, with u.sub.p,3∈
, and selecting D.sub.4∈
.sup.1×k such that it represents a mapping of the actuator control commands u onto a yawing moment, with u.sub.p,4∈
.
17. A control unit (2a) for controlling an overdetermined system 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 a) determining a pseudo-control command u.sub.p∈.sup.p′ based on a physical model of a system, said pseudo-control command represents torques (L, M, N) and a total thrust force (F) acting on the system, b) determining a control matrix D, D∈
.sup.p′×k, according to u.sub.p=Du, wherein u denotes actuator control commands, c) dissociating the control matrix into sub control matrices
.sup.k comprises said actuator control commands which solve the primary task, with u.sub.1∈U:={u∈
.sup.k|u.sup.min≤u≤u.sup.max}, e) projecting the non-primary tasks, i>1, into a null space of the primary task, i=1, and into respective null space of all of the non-primary tasks of higher priority, if present, so that D.sub.iu.sub.j=0, if u.sub.j∈
.sup.k, j>i, comprises the actuator control commands for performing a non-primary task, and f) providing the actuator control commands from d) and e) at the actuators.
18. The control unit (2a) as claimed in claim 17, wherein the controller is further configured such that it first calculates u.sub.2.sup.org∈.sup.k, in order to solve a first one of the non-primary tasks, according to u.sub.2.sup.org=D.sub.2.sup.#(u.sub.p,2−D.sub.2u.sub.1), and subsequently projects u.sub.2.sup.org onto the null space N.sub.2(D.sub.1) of the sub control matrix D.sub.1 according to u.sub.2=N.sub.2u.sub.2.sup.org, wherein N.sub.2=I−D.sub.1.sup.T(D.sub.1.sup.#).sup.T.
19. The control unit (2a) as claimed in claim 17, further comprising at least one of devices (4) for at least one of measuring or determining parameters and states of the system or the actuators which are required for the determination of the pseudo-control command according to step a) connected to the controller.
20. An overdetermined system comprising multiple actuators actively connected to the control unit (2a) as claimed in claim 17.
21. An aircraft (1) comprising the overdetermined system as claimed in claim 20, wherein the actuators multiple propulsion units (3).
Description
BREIF DESCRIPTION OF THE DRAWINGS
[0095] Further properties and advantages of the invention result from the following description of the figures.
[0096]
[0097]
[0098]
[0099]
[0100]
DETAILED DESCRIPTION
[0101]
[0102] The invention is in principle not limited in its application to aerial vehicles 1 as overdetermined systems.
[0103]
[0104] 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
[0105] If these aspects are combined, the result is that, in an extreme flying situation, as shown in
[0106] The control matrix is broken down (dissociated)—as shown in .sup.2 corresponds to the rolling moment and the pitching moment. Consequently, D.sub.1∈
.sup.2×k, k=1, . . . , 18, describes the mapping of the actuator commands u onto the rolling and pitching moments. u.sub.p,2∈
.sup.2 corresponds to the yawing moment and the total thrust, and D.sub.2∈
.sup.2×k, k=1, . . . , 18, correspondingly maps the actuator commands u onto the yawing moment and the thrust.
[0107] .sup.k, D.sub.1u.sub.2=0 represents a control command for the actuators for performing the non-primary task. This has also been described in detail further above and also applies correspondingly to the further, low-priority tasks.
[0108] 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 u.sub.3.sup.org 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: =u.sub.1+u.sub.2+ . . . , 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.