Simulation using realistic unmanned aerial vehicle (UAV) scenarios and sensor models is a crucial part of testing UAV algorithms. UAV Toolbox provides two simulation environments in which to test these algorithms. Both environments have their uses, and one environment is not a replacement for the other.
In the cuboid simulation environment, vehicles and other platforms in the scenario are represented as simple box shapes, or for lidar applications, as polygon meshes. Use this environment to rapidly author scenarios or generate sensor data. Test controllers, tracking algorithms, and sensor fusion algorithms in both MATLAB® and Simulink®. To get started authoring a scenario, use the
In the Unreal Engine® simulation environment, scenarios are rendered using the Unreal Engine from Epic Games®. Use this environment to visualize scenarios using more realistic graphics; to generate high-fidelity radar, camera, and lidar sensor data; and to test perception-in-the-loop systems. This environment is available in Simulink and runs on Windows® only. To learn more, see Unreal Engine Simulation for Unmanned Aerial Vehicles.
UAV Cuboid Scenarios
|Define coordinate frames and relative transformations|
|Get relative transform between frames|
|Graph object representing tree structure|
|Remove frame transform relative to its parent|
|Update frame transform relative to its parent|
|List all frame names and stored timestamps|
|Show transform tree|
|UAV Guidance Model||Reduced-order model for UAV|
|UAV Animation||Animate UAV flight path using translations and rotations|
|Path Manager||Compute and execute a UAV autonomous mission|
|GPS||Simulate GPS sensor readings with noise|
|INS||Simulate INS sensor|
|Simulation 3D UAV Vehicle||Place UAV vehicle in 3D visualization|
|Simulation 3D Scene Configuration||Scene configuration for 3D simulation environment|
|Simulation 3D Camera||Camera sensor model with lens in 3D simulation environment|
|Simulation 3D Lidar||Lidar sensor model in 3D simulation environment|
|Simulation 3D Fisheye Camera||Fisheye camera sensor model in 3D simulation environment|
|Video Send||Send video stream to remote hardware|
|UAV Scenario Configuration||Configure and simulate UAV scenarios|
|UAV Scenario Get Transform||Get transforms from UAV scenario platforms|
|UAV Scenario Lidar||Simulate lidar measurements based on meshes in scenario|
|UAV Scenario Motion Read||Read platform and sensor motions from UAV scenario simulation|
|UAV Scenario Motion Write||Update platform motion in UAV scenario simulation|
|UAV Scenario Scope||Visualize UAV scenario and lidar point clouds|
Scenes and Vehicle Dimensions
Learn how to use unmanned aerial vehicle algorithms in Simulink and visualize their performance in a virtual environment using the Unreal Engine from Epic Games.
When simulating in the Unreal Engine environment, keep these software requirements, minimum hardware requirements, and limitations in mind.
Learn about the co-simulation framework between Simulink and the Unreal Engine and how block execution order affects simulation.
Understand the world and UAV coordinate systems when simulating in the Unreal Engine environment.
Simulation with Sensors
Create a sensor adaptor for an
imuSensor from Navigation Toolbox™ and gather readings for a simulated UAV flight scenario.
The radar sensor enables a UAV to detect other vehicles in the airspace, so that the UAV can predict other vehicle motion and make decisions to ensure clearance from other vehicles.
Decide which camera, or lidar sensors to use during 3D simulation with the Unreal Engine.
UAV Toolbox™ provides blocks for visualizing sensors in a simulation environment that uses the Unreal Engine® from Epic Games®.
This example shows how to visualize depth and semantic segmentation data captured from a camera sensor in a simulation environment.
This example shows how to stream simulated camera, depth, and semantic segmentation label data from an Unreal Engine® scene to NVIDIA® Jetson hardware using the Video Send block in Simulink®.
Customize Unreal Engine scenes for UAV flight applications.
- STEP 1: Install Support Package for Customizing Scenes
- STEP 2: Migrate Projects Developed Using Prior Support Packages
- STEP 3: Customize Unreal Engine Scenes Using Simulink and Unreal Editor
- STEP 4: Package Custom Scenes into Executable
Apply labels to objects in a scene so that you can obtain semantic segmentation data from a camera sensor.
Create custom vehicle mesh for the Simulation 3D UAV Vehicle block.