Co-Simulation platform for geometric design, trajectory control and guidance of racing drones.
The simulation platform combines the advantages of computer-aided programs (Unigraphics NX/CAD-CAE) for the geometric definition of drone airframes and the extraction of the moments of inertia from these models. It includes a traditional cascade control strategy (PID) for the control and guidance strategy in Matlab/Simulink environment. Also, it integrates 15 racing drone models and visualises the flight trajectories performed. It is currently functional and stable. In addition, it is also mathematically stable so that typical analyses of controller stresses, applied forces and trajectories as a function of time are possible.
Specifically, the platform offers to study the racing models' behaviour according to the airframe structure's geometrical specifications. It allows for modifying all the design parameters and observing the response on the trajectory, simulation times and speeds achieved by the system with 15 different geometric alternatives, including a large majority of commercial airframes. It is possible to observe all the control loops to analyse the dynamic behaviour of the models related to accelerations and rate frequencies during the trajectory. It is also an open platform that allows new updates, such as input position references via vision systems or typical input sensor data in the case of real-time applications or hardware implementation.
The platform is composed of the following blocks in Simulink:
- Blocks of airframe geometric specifications:
These blocks define the mass distributions and moments of inertia of the racing drones that have been used:
- Symmetric airframes (SY)
- Non-symmetrical airframes (NSY)
- Hybrid airframes (HS)
- Block for racing drone dynamics: (High dynamic performance)
This block contains the equations of motion (translation and rotation) and the torque of the rigid body. The moments of inertia are generated from the NX CAD module, stored in an excel database and called through a MATLAB script. The torque is defined by thrust force, calculated in the CAE module of NX and identified as a plant for use in the control closed loop in Simulink.
- Blocks for guidance and trajectory tracking
These blocks define the degree of automation of the platform. It contains the following blocks:
- Block for planning the trajectory
- Block for generating position references
To operate the simulation platform go to the models tab, download all the files. Add them to a Matlab path. Open the Testbench.slx file. You can type in a MATLAB command window or make your own script.