What Is Drone Simulation?
Drone simulation is the behavioral modeling of a drone or unmanned aerial vehicle (UAV) and evaluating its performance in a virtual environment.
Simulation is an important step in the development of drones. MATLAB® and UAV Toolbox supports drone simulation by enabling you to:
- Understand the drone dynamics and perform tradeoff studies prior to building prototypes
- Tune parameters and models before uploading them to the drone
- Test the robustness of models and algorithms for edge conditions without risking the drone
- Create a virtual environment tailored to the test cases
- Run multiple scenarios and test cases rapidly
Creating a drone simulation typically consists of the following components, which can be built in MATLAB® and Simulink®:
- Drone dynamic model (plant model) consisting of the drone’s equations of motion
- Drone flight control model that models the control logic of the drone
- Sensor models simulating the sensors on the drone such as GPS and INS sensor
- Autonomous algorithms that perceive the environment and identify obstacles
- Simulation environment, such as Cuboid World and Unreal Engine®, which are virtual environments created to test the algorithms and visualize the flight behavior
Drone simulations can have different fidelity levels based on the algorithms you are testing and the stage of the development process.
Low-fidelity drone simulations are used very early in the development process, uses fewer computational resources, and run quickly. They can be used, for example, to tune flight control models or to test path planning algorithms.
![Figure 1: Low-fidelity drone simulation using MATLAB UAV Guidance Model block.](https://ww2.mathworks.cn/en/discovery/drone-simulation/_jcr_content/mainParsys/image.adapt.full.medium.jpg/1718279847368.jpg)
Low-fidelity drone simulation using MATLAB UAV Guidance Model block. (Code Example)
High-fidelity drone simulations test UAV applications in a virtual environment closer to the real world. They can be computationally intensive and take a longer time to run. They can be used, for example, to test lidar and camera based autonomous algorithms or test the behavior of the drone with weather conditions.
![Figure 2: High-fidelity drone simulation using Simulation 3D Scene Configuration block](https://ww2.mathworks.cn/en/discovery/drone-simulation/_jcr_content/mainParsys/image_copy.adapt.full.medium.jpg/1718279847382.jpg)
High-fidelity drone simulation using Simulation 3D Scene Configuration block. (Code Example)
Examples and How To
Software Reference
See also: UAV Toolbox, Computer Vision Toolbox™, Lidar Toolbox™, ROS Toolbox, Navigation Toolbox™, MATLAB and Simulink for Robotics, robot programming, path planning, Unmanned Aerial Vehicles with MATLAB and Simulink, PX4 Autopilot Support from UAV Toolbox