Semi-physical Simulation System and Simulation Method for Fault-tolerant Cooperative Control of Cluster UAVs
Through the Raspberry Pi simulation drone and controller, real drone is simulated, combined with digital simulation, the problem that existing drone simulation systems cannot effectively combine single-machine and cluster simulation is solved, and efficient cluster drone simulation and fault-tolerant control are achieved, reducing costs and providing a basis for experiments.
Patent Information
- Application Number
- CN202410536198.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-30
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2044-04-30
AI Technical Summary
The existing drone simulation systems cannot effectively combine single-machine and cluster simulation, and the full digital simulation loses real-time performance, while the full physical simulation is expensive and inconvenient for the development of fault-tolerant control algorithms.
The fault-tolerant and coordinated control semi-physical simulation system of clustered drones based on Raspberry Pi is adopted. The Raspberry Pi simulated drones and controllers are simulated. Combined with digital simulation, information interaction and fault-tolerant control between drones are realized. The database server is used to simulate the drone communication network, and is equipped with a command upload terminal and a drone formation flight situation display terminal.
It realizes efficient cluster drone simulation, shortens the development cycle, reduces costs, and simulates information interaction and fault-tolerant control between drones, providing the experimental basis for the fault-tolerant control system of cluster drone.
Smart Images

Figure CN118584829B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the fault-tolerant simulation technology of swarm drones, and particularly to a hardware-in-the-loop simulation system for swarm drones. Background Art
[0002] In recent years, with technological progress and cost reduction, drones have become increasingly popular. Compared with single drones, a large number of drones forming a swarm can greatly increase the combat effectiveness of a single aircraft, reduce the cycle cost, and lower the risk of being intercepted, and can complete more complex and diverse tasks in various harsh environments. Multi-drone swarms exhibit advantages such as fast execution speed, high flexibility, and strong fault tolerance, can adapt to diverse mission scenarios, and have great development potential. For example, in the civilian field, drone swarms can be used in application scenarios such as disaster relief, transportation, agricultural services, and environmental monitoring.
[0003] Hardware-in-the-loop simulation, also known as hardware-in-the-loop simulation or semi-physical simulation, is a method of introducing a part of the simulated object system into the simulation loop in the form of a physical object (or physical model), describing the remaining part of the simulated object system with a mathematical model, and converting it into a simulation calculation model for joint simulation of real-time mathematical simulation and physical simulation. The hardware-in-the-loop simulation has a relatively high degree of authenticity and can be used to verify the correctness and feasibility of the control system scheme.
[0004] There are three existing drone-based simulation systems. The first one can only use single-aircraft simulation to verify the single-aircraft flight control law, but cannot be used for swarm system simulation to verify the multi-aircraft cooperative control law. The second simulation system realizes swarm system simulation, but this simulation is a full-digital simulation, and in order to ensure the normal operation of the system, many operations are processed on the server, resulting in a certain loss of real-time performance. The third one is physical simulation using real drones. This method has a high cost, a low safety factor, and is not convenient for the development of fault-tolerant control algorithms.
[0005] In view of the above problems, it is necessary to build a hardware-in-the-loop simulation platform for swarm drone fault-tolerant control for cluster fault-tolerant control algorithms by comprehensively considering aspects such as efficiency, economy, and safety. Summary of the Invention
[0006] In response to the above problems and technical requirements, the applicant of this application proposes a hardware-in-the-loop simulation system for swarm drone fault-tolerant cooperative control based on Raspberry Pi. The main technical solutions adopted in this application are as follows:
[0007] 1. A hardware-in-the-loop simulation system for swarm drone fault-tolerant cooperative control based on Raspberry Pi, characterized by comprising:
[0008] A cluster ground station computer is used to obtain the cooperative information and formation information of the unmanned aerial vehicles (UAVs) in the cluster, assist in simulating the information interaction between UAVs, configure each UAV in the formation, and configure the formation.
[0009] The semi-physical simulation system for fault-tolerant cooperative control of a cluster of UAVs based on Raspberry Pi includes a semi-physical UAV cluster simulation system, a command upload terminal, a database server neighbor calculation and communication module, and a UAV formation flight situation display terminal.
[0010] The semi-physical simulation UAV cluster simulation system is used to simulate a real UAV cluster system, which includes digitally simulated UAVs and UAVs simulated by Raspberry Pi. A single UAV simulated by Raspberry Pi consists of two Raspberry Pis: one Raspberry Pi is used to simulate the UAV model, and the other Raspberry Pi is used to simulate the UAV controller. The two Raspberry Pis communicate through a serial port. The Raspberry Pi simulating the UAV model uploads its own information to the database server neighbor calculation and communication module through a communication network. The Raspberry Pi simulating the UAV fault-tolerant controller receives neighbor information through the communication network, calculates and updates the fault-tolerant control law, and transmits it to the Raspberry Pi simulating the UAV through the serial port.
[0011] The command upload terminal is used to set the simulation step size of the entire cluster, the number of simulated UAVs, the initial state of each UAV, the formation shape, assist in completing the information interaction between UAVs, and set the fault situations of UAVs, etc.
[0012] The database server neighbor calculation and communication module includes a database server, a communication router, and a communication bus. The database server is used to store the information of each UAV in the cluster, and the communication router and communication bus are used for communication simulation. The semi-physical simulation UAV cluster simulation system communicates with the database server neighbor calculation and communication module through wireless SOCKET.
[0013] The UAV formation flight situation display terminal displays the formation flight situation and fault-tolerant effect of the cluster UAVs from a top-down perspective in the situation display software interface. The UAV formation flight situation display software can conveniently control the simulation process in the semi-physical simulation platform, observe the relevant flight data of the entire simulation system, realize the function of online adjustment of UAV fault situations and the intervention of fault-tolerant control algorithms, and ensure the normal operation of the simulation platform.
[0014] 2. In the single UAV system of the Raspberry Pi simulation system, a UAV is simulated using a Raspberry Pi, and the dynamic model of the UAV is:
[0015]
[0016] where, x i , y i , zi They are the positions of the i-th UAV on the x, y, and z axes in the inertial coordinate system, where i ∈ {1, 2,..., N}. V i , χ i , γ i represent the speed, heading angle, and track angle respectively.
[0017] The equation of force is expressed as:
[0018]
[0019] where m i and g are the mass and gravitational acceleration respectively. T i , D i , L i are the thrust, drag, and lift respectively. φ i is the tilt angle. The expressions for thrust and drag are as follows:
[0020]
[0021] where T max and δ ti represent the maximum engine thrust and the instantaneous thrust throttle setting respectively. represents the dynamic pressure, ρ is the air density, and s i is the wing area. C iD0 is the aerodynamic parameter.
[0022] 3. The method according to claim 2, characterized in that the fault is modeled by analyzing the fault mechanism. This patent considers actuator efficiency loss and thrust throttle setting deviation faults.
[0023] The actuator efficiency loss and thrust throttle setting deviation faults are expressed as:
[0024] δ ti =ρ ti δ t0i +δ bi (4)
[0025] where δ ti and δ t0i represent the applied and commanded thrust throttle setting input signals respectively. ρ ti ∈(0, 1] represents the control efficiency factor, and δ bi represents the control signal deviation amount.
[0026] Take the control input as u si =[u si1 , u si2 , u si3 T =[δ ti , Li sinφ i ,L i cosφ i T Take P fi =[x i ,y i ,z i T as the outer - loop position vector. Substitute Equation (4) into Equations (1) - (2) and transform them into affine form:
[0027]
[0028] where, ρ i =diag{ρ ti ,1,1}, (0 < ρ ti ≤1) is the throttle gain, u bi =[δ bi ,0,0] T is the actuation deviation, D i =G i (ρ i - I)u 0i +G i u bi is the fault - related term,
[0029]
[0030] u si1 ,u si2 ,u si3 are the virtual control variables. The conversion relationship between the actuator command and the virtual control variables is as follows:
[0031]
[0032] 4. According to the established UAV fault model, design a disturbance observer to observe and estimate the fault term D i and design a control law.
[0033] Let Define the auxiliary system V ir =V i - V iA ,then the designed disturbance observer is
[0034]
[0035] where, θ1 = Λ2V ir ,Λ1,Λ2,Λ3 are parameters to be designed, is the estimated value of V ir , is the estimated value of D i Estimated value
[0036] Define the position of each UAV relative to the leader as P ir =[x ir , y ir , h ir T , then the expected position of each UAV is P id =P0 + P ir , where P0 is the leader position. Define the tracking error of each UAV Define the synchronous tracking deviation e i as
[0037]
[0038] where b1, b2 are parameters to be designed, and the definition of a ij is: when the i-th UAV can receive the information of the j-th UAV, a ij >0, otherwise a ij =0. In particular, a ii =0.
[0039] Select λ i =diag{λ i1 , λ i2 , λ i3} as a parameter to be designed, then the control law is designed as follows:
[0040]
[0041] where k i =diag{k i1 , k i2 , k i3} is a parameter to be designed.
[0042] 5. Write the derived fault-tolerant control law into the Raspberry Pi for the simulation controller. After obtaining the information from the neighbor calculation communication module of the database server through wireless SOCKET communication in the communication network, calculate the fault-tolerant control law and send it to the Raspberry Pi of the simulated UAV through the serial port. The Raspberry Pi of the simulated UAV simulates the real UAV with the help of the configuration information input by the user and the kinematic and mechanical mathematical models of the UAV, and solves the kinematic and mechanical mathematical models of the UAV in real time, and sends the UAV state to the external receiving device.
[0043] The external receiving device includes a neighbor calculation communication module and a UAV formation flight situation display terminal.
[0044] 6. The instruction upload terminal contains a task management interface. The task list shows simulation tasks in different states, including five states: completed, initialized, queued, running, and in playback. Each simulation task shows the task name, number of drone flights, simulation duration, fault tolerance control algorithm, remarks, creation time, status, operations (fault settings, editing, and deletion operations can be performed on initialized simulation tasks, fault setting operations can be performed on running simulation tasks, and playback or deletion operations can be performed on completed simulation tasks), etc. Task search can be performed according to the task name, task status, and creation time, which is convenient for quickly finding the simulation task to be played back. At the same time, task creation, start, and termination buttons are set. When creating a task, the task name, number of drone formations, simulation duration, fault tolerance algorithm selection, remarks information, etc. can be set.
[0045] 7. The near-neighbor computing communication module of the database server includes a database server, a communication router, and a communication bus. The semi-physical simulation UAV cluster simulation system communicates with the near-neighbor computing communication module of the database server through wireless SOCKET communication. Each UAV exchanges data with the database through the communication bus. The computer accesses the database to calculate the information of neighboring UAVs and sends it to each UAV through the bus to achieve information interaction between UAVs.
[0046] 8. The UAV situation display terminal is used to display the flight situation of the UAV formation from a top-down perspective. The map selected is the map of Nanjing. Each UAV is numbered. In the case of no fault, the UAV is set to blue, and it will turn red after a UAV fails. The UAV number and fault injection situation injected through peripherals are displayed in the upper left corner of the main interface. In the upper right corner, there are a simulation progress bar, a termination button, a button to select the number to view the flight status information of a single UAV (after selecting the number, the specific flight status information and data of the UAV can be viewed by swiping up the interface, including the number of neighboring UAVs, roll angle, pitch angle, airspeed, throttle opening, altitude, heading angle, etc. and the intuitive diagram of the UAV attitude), a button for the flight situation interface to follow the center point of the formation, a button for the flight situation interface to follow with a fixed-number UAV as the center (after clicking, the UAV number can be selected), a button for the fault tolerance control algorithm to intervene, a button for the communication link display, a button for the fault situation display, a button for the number display, etc. The average yaw angle and average speed of the UAV formation flight are displayed in the lower right corner.
[0047] The beneficial technical effects of this application are:
[0048] The present application discloses a semi-physical simulation system for fault-tolerant cooperative control of a cluster of drones based on Raspberry Pi. By using two Raspberry Pis to form a drone, a real drone model is well simulated; each drone simulated by Raspberry Pi consists of two Raspberry Pis: one Raspberry Pi is used to simulate the physical drone model, and the other Raspberry Pi is used to simulate the controller of the physical drone. The two Raspberry Pis interact their own status information through serial communication and receive the status information of neighboring drones through the communication network. After receiving its own status and the status information of neighboring drones, the Raspberry Pi simulating the controller updates the fault-tolerant control law and sends it to the Raspberry Pi simulating the drone through the serial port, thus completing the control of the simulated drone.
[0049] By combining digital simulation with semi-physical simulation, the system can also perform simulations of large-scale cluster drones when the number of Raspberry Pis is insufficient; an instruction upload terminal is equipped to uniformly configure the drones in the cluster, and the communication network between drones is simulated by using the neighbor calculation and communication module of the database server, successfully simulating the information interaction between drones in the cluster. When the number of Raspberry Pis is insufficient, large-scale cluster simulations can be completed by adding digital simulation drones, so the system has good scalability.
[0050] The system realizes the simulation of the drone cluster, shortens the development cycle of the fault-tolerant control system for cluster drones, and reduces the development cost of the cluster drone system; it can test and study the flight and fault-tolerant control algorithms of cluster drones, and the finally obtained semi-physical simulation results can be applied to the development of the fault-tolerant control system for cluster drones, facilitating the subsequent design work of the fault-tolerant control system for cluster drones.
[0051] The observer designed in the present application can converge within a fixed time, and the convergence time is not affected by the initial error value. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] Figure 1 is the overall structure diagram of the semi-physical simulation system for fault-tolerant cooperative control of a cluster of drones based on Raspberry Pi;
[0053] Figure 2 is the design diagram of the semi-physical simulation system based on Raspberry Pi;
[0054] Figure 3 is the computer drone simulation flowchart designed in the present application;
[0055] Figure 4 is the Raspberry Pi drone simulation flowchart designed in the present application;
[0056] Figure 5 is the Raspberry Pi controller simulation flowchart designed in the present application;
[0057] Figure 6It is the system signal flow diagram designed in this application;
[0058] Figure 7 It is the flow chart of the instruction upload terminal;
[0059] Figure 8 It is the flow chart of the flight situation display terminal;
[0060] Figure 9 It is the formation diagram of the cluster UAVs during simulation. Detailed implementation manners
[0061] The following further describes the detailed implementation manners of this application with reference to the accompanying drawings.
[0062] This application discloses a semi-physical simulation system for fault-tolerant cooperative control of cluster UAVs based on Raspberry Pi. Please refer to Figure 1 , this system includes a semi-physical UAV cluster simulation system, an instruction upload terminal, a database server proximity computing and communication module, and a UAV formation flight situation display terminal.
[0063] 1. Construct a semi-physical simulation system based on Raspberry Pi, Figure 2 It is the design schematic diagram of the semi-physical simulation system based on Raspberry Pi. The specific design steps are as follows:
[0064] (1) Write the UAV model for simulation into the digital computer and the Raspberry Pi for simulating the UAV. The dynamic model of the UAV is:
[0065]
[0066] Among them, x i , y i , z i are the positions of the i-th UAV on the x, y, and z axes in the inertial coordinate system respectively, where i ∈ {1, 2,..., N}. V i , χ i , γ i represent speed, heading angle, and track angle respectively.
[0067] The equation of force is expressed as:
[0068]
[0069] Among them, m i and g are mass and gravitational acceleration respectively. T i , D i , L i are thrust, drag, and lift respectively. φ i is the tilt angle.
[0070] The expressions of thrust and drag are as follows:
[0071]
[0072] Among them, T max and δ ti respectively represent the maximum engine thrust and the instantaneous thrust throttle setting. represents the dynamic pressure, ρ is the air density, and s i is the wing area. C iD0 is the aerodynamic parameter.
[0073] Figure 3 This is the computer simulation flow chart designed in this patent. It can be seen from the figure that the computer runs two threads. One is the thread for calculating neighbor information and broadcasting: it loops to read data from the database, starts calculating neighbor information after obtaining the information of all UAVs at a certain simulation time, and broadcasts it to the Raspberry Pi controller after the calculation is completed; the other thread is the receiving and storing thread, which receives the UAV status information data sent by the controller through TCP and stores it in the database for facilitating real-time data acquisition and calculation of neighbor information. The information broadcast by the computer to each Raspberry Pi controller is neighbor information, including the neighbor numbers of each simulated UAV and their speed and position information. The designed data structure is {UAV #1: neighbor number; UAV #2: neighbor number; …; UAV #n: neighbor number; UAV #1: neighbor data information; …; UAV #n: neighbor data information}. The information received by the computer from the Raspberry Pi controller of the UAV includes: simulation time, UAV number, x, y, and z axis position information, and x, y, and z axis speed information.
[0074] Figure 4 This is the Raspberry Pi UAV simulation flow chart designed in this patent. After the Raspberry Pi of the simulated UAV completes initialization, it judges the simulation time. If the simulation end time is not reached, it requests the control law from the Raspberry Pi controller, conducts dynamic simulation according to the control law and updates the UAV status information, and then sends its own status information to the ground station computer through the communication network and updates the information in the database.
[0075] (2) Establish its fault model according to the UAV model and fault mechanism, deduce the fault-tolerant control law, and write the control law into the Raspberry Pi of the simulation controller.
[0076] This patent considers actuator efficiency loss and thrust throttle setting deviation faults. The actuator efficiency loss and thrust throttle setting deviation faults are expressed as:
[0077] δ ti =ρ ti δ t0i +δ bi (4)
[0078] Among them, δti and δ t0i respectively represent the thrust throttle setting input signals of the application and the command. ρ ti ∈(0, 1] represents the control efficiency factor, and δ bi represents the control signal deviation.
[0079] Take the control input as u si =[u si1 , u si2 , u si3 T =[δ ti , L i sinφ i , L i cosφ i T , and take P fi =[x i , y i , z i T as the outer-loop position vector. Substitute Equation (4) into Equations (1) - (2) and transform them into the affine form:
[0080]
[0081] where ρ i =diag{ρ ti , 1, 1}, (0 < ρ ti ≤1) is the throttle gain, u bi =[δ bi , 0, 0] T is the actuation deviation, D i =G i (ρ i -I)u 0i +G i u bi is the fault-related term,
[0082]
[0083] u si1 , u si2 , u si3 are the virtual control quantities. The conversion relationship between the actuator command and the virtual control quantity is as follows:
[0084]
[0085] According to the established UAV fault model, design a disturbance observer to observe and estimate the fault term D i and design the control law.
[0086] Let Define the auxiliary system V ir = V i - V iA , then the designed disturbance observer is
[0087]
[0088] where, θ1 = Λ2V ir , Λ1, Λ2, Λ3 are parameters to be designed, is the estimated value of V ir . is the estimated value of D i .
[0089] Define the position of each UAV relative to the leader as P ir = [x ir , y ir , h ir T , then the desired position of each UAV is P id = P0 + P ir , where P0 is the leader position. Define the tracking error of each UAV Define the synchronous tracking deviation e i as
[0090]
[0091] where, b1, b2 are parameters to be designed, a ij is defined as: when the i-th UAV can receive the information of the j-th UAV, a ij >, otherwise a ij = 0, especially, a ii = 0.
[0092] Select λ i = diag{λ i1 , λ i2 , λ i3} as a parameter to be designed, then the control law is designed as follows:
[0093]
[0094] where, k i = diag{k i1 , k i2 , k i3} is a parameter to be designed.
[0095] Write the derived fault-tolerant control law into the Raspberry Pi for the simulation controller. After obtaining the information from the neighbor calculation communication module of the database server through wireless SOCKET communication in the communication network, calculate the fault-tolerant control law and send it to the Raspberry Pi of the simulated UAV through the serial port. The flowchart of the Raspberry Pi of the simulation controller is as Figure 5 shown. It can be seen from the figure that after the initialization of the Raspberry Pi of the controller, two threads also run, involving information interaction with the computer and the Raspberry Pi of the dynamics. The broadcast receiving thread is responsible for receiving the neighbor information broadcast by the computer and calculating and updating the control law through the neighbor information. In the initialization, the control law is set as a global variable; in the thread for interacting with the Raspberry Pi of the dynamics, when receiving the data type sent by the Raspberry Pi of the dynamics through the serial port, judge the requirements of the Raspberry Pi of the dynamics. If the judged data is dynamics data, send it to the computer through the TCP protocol and the computer stores it in the database. If the judged data is a request for the control law, send the global variable control law through the serial port. If the control law is not updated in time, the Raspberry Pi of the dynamics will keep requesting until the control law update is completed. The information exchanged between the Raspberry Pi of the controller and the Raspberry Pi of the dynamics is the UAV state information and the control law. The UAV information includes: the number of simulation times, the UAV number, the three-axis position information, and the three-axis speed information.
[0096] (3) Build a neighbor calculation communication module of the database server to simulate the communication network of cluster UAVs. The neighbor calculation communication module of the database server includes a database server, a communication router, and a communication bus. Figure 6 is the signal flow diagram of the system. The cluster UAV semi-physical simulation system communicates with the neighbor calculation communication module of the database server through wireless SOCKET communication. Each UAV exchanges data with the database through the communication bus. The computer accesses the database, calculates the information of neighboring UAVs, and sends it to each UAV through the bus to realize the information interaction between UAVs.
[0097] 2. Through the above process, a semi-physical simulation system based on the Raspberry Pi has been constructed. Next, equip it with an instruction upload terminal and a cluster UAV flight situation display terminal.
[0098] The instruction upload terminal is used to set information such as the simulation duration, the number of cluster UAVs, the fault UAV number, the fault type, the fault degree, and the fault occurrence time of the simulated cluster UAVs of the semi-physical simulation system based on the Raspberry Pi. The flowchart of the instruction upload terminal is as Figure 7As shown in the figure. Each created simulation task includes task name, number of UAV flights, simulation duration, fault tolerance control algorithm, remarks, creation time, status, operations (initialized simulation tasks can perform fault setting, editing, and deletion operations; running simulation tasks can perform fault setting operations; completed simulation tasks can perform playback or deletion operations), etc. Multiple tasks can be retained in the instruction upload terminal, and tasks can be searched according to task name, task status, and creation time to facilitate quickly finding the simulation task that needs to be played back. At the same time, task creation, start, and termination buttons are set. When creating a task, task name, number of UAV formation flights, simulation duration, fault tolerance algorithm selection, remarks information, etc. can be set. After creating the task, the type of injected fault can be set. The fault type and model are set in the fault management interface, which is convenient for directly selecting the corresponding fault for injection when creating a simulation task.
[0099] As Figure 8 Shown is the flowchart of the cluster UAV flight situation display terminal, which shows the flight situation of the UAV formation from a top-down perspective. The map selected is the map of Nanjing. Each UAV is numbered. In the case of no fault, the UAV is set to blue, and when a faulty UAV is detected, its color is converted to red. The UAV number and fault injection situation injected through the peripheral device are displayed in the upper left corner of the main interface. The simulation progress bar, termination button, and the option to view the flight status information of a single UAV by selecting the number are set in the upper right corner (after selecting the number, the specific flight status information and data of the UAV can be viewed by swiping up the interface, including the number of neighboring UAVs, roll angle, pitch angle, airspeed, throttle opening, altitude, heading angle, etc., as well as the intuitive diagram of the UAV attitude, the button for the flight situation interface to follow the center point of the formation, the button for the flight situation interface to follow a fixed-number UAV as the center (after clicking, the UAV number can be selected), the button for the fault tolerance control algorithm to intervene, the communication link display button, the fault situation display button, the number display button, etc.). The average yaw angle and average speed of the UAV formation flight are shown in the lower right corner.
[0100] 3. To better understand the above semi-physical simulation system, the effectiveness of the proposed simulation platform is demonstrated below through specific simulation examples.
[0101] The simulation duration is set to 600s. In the simulation, 64 fixed-wing UAVs are set to fly in formation, and the formation is as Figure 9As shown in the figure, each drone is numbered, and every 8 drones are set as a row, with a total of 8 rows and 8 columns. The expected horizontal and vertical distances between neighboring drones are 60m, and they fly in formation at the same altitude of 1000m to form a square formation. Each drone exchanges information with various drones in front, behind, left, right and oblique directions, which are neighboring drones. The initial speed of each drone is set to a random value from 24m / s to 27m / s, and the initial yaw angle is a random value from -π / 6° to π / 6°. It is set that during the drone formation flight, the drone numbered #45 has a thrust throttle actuator efficiency loss fault (thrust loss fault), and the fault is injected through the push rod. The drone numbered #1 is set as the leader drone, and the remaining drones maintain the expected relative distance with the leader drone through formation collaborative control.
[0102] During the flight, the push rod position was adjusted, the thrust efficiency was set to 50.98%, and the fault was injected into the UAV No. 45. During the simulation, the position of the faulty UAV in the formation gradually fell behind the expected position. At this time, the fault-tolerant control algorithm did not intervene. After a period of time, the fault-tolerant button was clicked to allow the fault-tolerant algorithm to intervene. From the simulation, it can be found that the faulty UAV No. 45 accelerated its flight speed in a short period of time to return to the expected position of the formation, and then maintained a formation flight state with other UAVs again. After the fault occurs, the algorithm can estimate the value of the fault-related items and compensate for it in the control law.
[0103] In summary, this example proves that the above-mentioned simulation system can effectively realize the semi-physical simulation of the fault-tolerant control algorithm of cluster UAVs, and can test and study the flight and fault-tolerant control algorithm of cluster UAVs, providing a good experimental basis for actual UAV clusters, saving costs, and facilitating the subsequent design of fault-tolerant control systems for cluster UAVs.
[0104] The above is only a preferred embodiment of the present application, and the present application is not limited to the above embodiments. It is understood that other improvements and changes directly derived or associated by those skilled in the art without departing from the spirit and concept of the present application should be considered to be included in the protection scope of the present application.
Claims
1. Semi-physical simulation method for fault-tolerant cooperative control of swarm drones, characterized in that, The method includes the following processes: S1. Establish a drone model through a Raspberry Pi and establish a drone model through digital simulation; S2. Consider the efficiency loss of the drone and the thrust throttle setting deviation fault, and establish a drone fault model; S3. According to the UAV fault model, design a disturbance observer to observe and estimate the fault items. The disturbance observer is as follows: Let Define an auxiliary system V ir = V i - V iA , we have: where, θ1 = Λ2V ir , Λ1, Λ2, Λ3 are parameters to be designed, is the estimated value of V ir ; is the estimated value of Δ i ; P fi = [x i , y i , z i T is the outer loop position vector; x i , y i , z i are the positions of the i-th UAV on the x, y, and z axes in the inertial coordinate system respectively, i ∈ {1, 2,..., N}; T max represents the maximum engine thrust; V i is the speed; u i is a control signal; Δ i is an item related to the fault; D i is the resistance; χ i and γ i represent the course angle and the track angle respectively; m i m and g are the mass and gravitational acceleration respectively; Design a control law according to the observed estimation.
2. The simulation method according to claim 1, wherein The drone simulated through the Raspberry Pi, where the dynamic model of the drone is: where x i , y i , z i are the positions of the i-th drone on the x, y, and z axes in the inertial coordinate system, respectively, where i ∈ {1, 2,..., N}; V i represents the velocity; The equation of force is expressed as: where m i and g are the mass and gravitational acceleration respectively; T i , D i , L i are the thrust, drag and lift respectively; φ i is the tilt angle; The expressions of thrust and drag are as follows: where, T max and δ ti represent the maximum engine thrust and the instantaneous thrust throttle setting, respectively; represents the dynamic pressure, ρ is the air density, and s i is the wing area; C iD0 is the aerodynamic parameter.
3. The simulation method according to claim 2, wherein The efficiency loss of the drone and the thrust throttle setting deviation fault are expressed as: δ ti = ρ ti δ t0i + δ bi (4) where, δ ti and δ t0i represent the thrust throttle setting input signals of the application and the command respectively; ρ ti ∈(0, 1] represents the throttle gain, and δ bi represents the control signal deviation amount.
4. The simulation method according to claim 3, wherein Set the control input as u si =[u si1 , u si2 , u si3 T =[δ ti , L i sinφ i , L i cosφ i T , take P fi =[x i , y i , z i T as the outer - loop position vector. Substitute Equation (4) into Equations (1) - (2) and transform them into the affine form: where ρ i = diag{ρ ti , 1, 1}, 0 < ρ ti ≤ 1 is the throttle gain, u bi = [δ bi , 0, 0] T is the actuation deviation, Δ i = G i (ρ i - I)u 0i + G i u bi is the fault-related term, u si1 ,u si2 ,u si3 is a virtual control quantity, and the conversion relationship between the actuator instruction and the virtual control quantity is as follows: T i = T max u si1 φ i = arctan(u si2 / u si3 ) (7).
5. The simulation method according to claim 1, wherein Specifically, S3 is: The designed disturbance observer; Define the position of each UAV relative to the leader as P ir =[x ir , y ir , h ir T , then the expected position of each UAV is P id =P0 + P ir , where P0 is the leader position; define the tracking error of each UAV Define the synchronous tracking deviation e i as where b1 and b2 are parameters to be designed, and a ij is defined as: a > 0 when the i-th unmanned aerial vehicle can receive information from the j-th unmanned aerial vehicle, otherwise ij a ij = 0; a ii = 0; Select λ i = diag{λ i1 , λ i2 , λ i3} as the parameter to be designed, then the control law is designed as follows: Among them, k i = diag{k i1 , k i2 , k i3} is a parameter to be designed.
6. A semi-physical simulation system for fault-tolerant cooperative control of a cluster of drones based on Raspberry Pi, characterized in that, The simulation system is used to implement the semi-physical simulation method for fault-tolerant cooperative control of cluster drones as described in any one of claims 1 to 5. The system includes: A cluster ground station computer, which is used to obtain the cooperative information and formation information of the drones in the cluster and assist in simulating the information interaction between the drones, configure each drone in the formation, and configure the formation; A semi-physical drone cluster simulation system, an instruction upload terminal, a database server neighbor calculation communication module, and a drone formation flight situation display terminal; The semi-physical drone cluster simulation system is used to simulate a real drone cluster system, which includes drones simulated digitally and drones simulated through a Raspberry Pi; each drone simulated through a Raspberry Pi consists of two Raspberry Pis: one Raspberry Pi is used to simulate the drone model, and the other Raspberry Pi is used to simulate the drone controller. The two Raspberry Pis communicate through a serial port; among them, the Raspberry Pi simulating the drone model uploads its own information to the database server neighbor calculation communication module through a communication network; the Raspberry Pi simulating the drone fault-tolerant controller receives the neighbor information through the communication network, calculates and updates the fault-tolerant control law, and transmits it to the Raspberry Pi of the corresponding drone model through the serial port; The instruction upload terminal is used to set the simulation step length of the entire cluster, the number of simulated drone flights, the initial states of each drone, the formation shape, assist in completing the information interaction between the drones, and set the fault situations of the drones; The database server neighbor calculation communication module includes a database server, a communication router, and a communication bus; among them, the database server is used to store the information of each drone in the cluster, and the communication router and the communication bus are used for communication simulation; the semi-physical simulation drone cluster simulation system communicates with the database server neighbor calculation communication module through wireless SOCKET; The drone formation flight situation display terminal is used to display the formation flight situation and fault-tolerant effect of the cluster drones from a top-down perspective, control the simulation process in the semi-physical simulation platform, and observe the relevant flight data of the entire simulation system.
7. The system according to claim 6, wherein The Raspberry Pi in the simulated UAV model stores the fault-tolerant control law. After the Raspberry Pi of the simulation controller obtains the information from the neighbor calculation communication module of the database server, it calculates the fault-tolerant control law and sends it to the Raspberry Pi of the simulated UAV model through the serial port. The Raspberry Pi of the simulated UAV model simulates the real UAV according to the configuration information input by the user and the kinematic and mechanical mathematical models of the UAV, and solves the kinematic and mechanical mathematical models of the UAV in real time, and sends the UAV state to the external receiving device. The external receiving device includes a neighbor calculation communication module and a UAV formation flight situation display terminal.
8. The system according to claim 6, wherein The instruction upload terminal is provided with a task management interface, and the task management interface is provided with a task list. The task list displays simulation tasks in different states, including five states: completed, initialized, in queue, running, and in playback. Each simulation task displays the task name, UAV flight number, simulation duration, fault-tolerant control algorithm, remarks, creation time, status, and operation. The task management interface is provided with task creation, start, and termination buttons. When creating a task, set the task name, UAV formation flight number, simulation duration, fault-tolerant algorithm selection, and remarks information content.
9. The system according to claim 6, wherein The neighbor calculation communication module of the database server includes a database server, a communication router, a computing device, and a communication bus. The semi-physical simulation UAV cluster simulation system communicates with the neighbor calculation communication module of the database server through wireless SOCKET. Each UAV exchanges data with the database through the communication bus. The computing device accesses the database, calculates the information of neighboring UAVs, and sends it to each UAV through the bus to realize the information interaction between UAVs.
10. The system according to claim 6, wherein The UAV formation flight situation display terminal is used to display the UAV formation flight situation from a top-down perspective.
Citation Information
Patent Citations
Intelligent fault-tolerant control and path planning method for unmanned aerial vehicle formation
CN118092460A