Main Content

Scenario Simulation

Author scenes, generate sensor data, test algorithms in simulated environments

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 uavScenario object.

  • 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.

Functions

expand all

uavScenarioGenerate UAV simulation scenario
uavSensorSensor for UAV scenario
uavPlatformUAV platform for sensors in scenario
extendedObjectMeshMesh representation of extended object
gpsSensorGPS receiver simulation model
insSensorInertial navigation system and GNSS/GPS simulation model
uavLidarPointCloudGeneratorGenerate point clouds from meshes
createCustomSensorTemplateCreate sample implementation for UAV custom sensor interface
uav.SensorAdaptorCustom UAV sensor interface
transformTreeDefine coordinate frames and relative transformations
getTransformGet relative transform between frames
getGraphGraph object representing tree structure
removeTransformRemove frame transform relative to its parent
updateTransformUpdate frame transform relative to its parent
infoList all frame names and stored timestamps
showShow transform tree

Blocks

UAV Guidance ModelReduced-order model for UAV
UAV AnimationAnimate UAV flight path using translations and rotations
Path ManagerCompute and execute a UAV autonomous mission
GPSSimulate GPS sensor readings with noise
INSSimulate INS sensor
Simulation 3D UAV VehiclePlace UAV vehicle in 3D visualization
Simulation 3D Scene ConfigurationScene configuration for 3D simulation environment
Simulation 3D CameraCamera sensor model with lens in 3D simulation environment
Simulation 3D LidarLidar sensor model in 3D simulation environment
Simulation 3D Fisheye CameraFisheye camera sensor model in 3D simulation environment
Video SendSend video stream to remote hardware
UAV Scenario ConfigurationConfigure and simulate UAV scenarios
UAV Scenario Get TransformGet transforms from UAV scenario platforms
UAV Scenario LidarSimulate lidar measurements based on meshes in scenario
UAV Scenario Motion ReadRead platform and sensor motions from UAV scenario simulation
UAV Scenario Motion WriteUpdate platform motion in UAV scenario simulation
UAV Scenario ScopeVisualize UAV scenario and lidar point clouds

Scenes and Vehicle Dimensions

expand all

US City BlockUS city block Unreal Engine environment
QuadrotorQuadrotor vehicle dimensions
Fixed Wing AircraftFixed wing aircraft dimensions

Topics

Simulation Basics

Unreal Engine Simulation for Unmanned Aerial Vehicles

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.

Unreal Engine Simulation Environment Requirements and Limitations

When simulating in the Unreal Engine environment, keep these software requirements, minimum hardware requirements, and limitations in mind.

How Unreal Engine Simulation for UAVs Works

Learn about the co-simulation framework between Simulink and the Unreal Engine and how block execution order affects simulation.

Coordinate Systems for Unreal Engine Simulation in UAV Toolbox

Understand the world and UAV coordinate systems when simulating in the Unreal Engine environment.

Simulation with Sensors

Simulate IMU Sensor Mounted on UAV

Create a sensor adaptor for an imuSensor from Navigation Toolbox™ and gather readings for a simulated UAV flight scenario.

Simulate Radar Sensor Mounted On UAV

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.

Choose a Sensor for Unreal Engine Simulation

Decide which camera, or lidar sensors to use during 3D simulation with the Unreal Engine.

Simulate Simple Flight Scenario and Sensor in Unreal Engine Environment

UAV Toolbox™ provides blocks for visualizing sensors in a simulation environment that uses the Unreal Engine® from Epic Games®.

Depth and Semantic Segmentation Visualization Using Unreal Engine Simulation

This example shows how to visualize depth and semantic segmentation data captured from a camera sensor in a simulation environment.

Stream Camera, Depth and Semantic Segmentation Data from Unreal Engine to NVIDIA Jetson

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®.

Scene Customization

Customize Unreal Engine Scenes for UAVs

Customize Unreal Engine scenes for UAV flight applications.

Apply Semantic Segmentation Labels to Custom Scenes

Apply labels to objects in a scene so that you can obtain semantic segmentation data from a camera sensor.

Prepare Custom UAV Vehicle Mesh for the Unreal Editor

Create custom vehicle mesh for the Simulation 3D UAV Vehicle block.

Featured Examples