How 3D Simulation for Aerospace Blockset Works
The aerospace models run programmable maneuvers in a photorealistic 3D visualization environment. Aerospace Blockset™ integrates the 3D simulation environment with Simulink® so that you can query the world around aerospace vehicles for virtually testing perception, control, and planning algorithms. The Aerospace Blockset visualization environment uses the Unreal Engine® by Epic Games®.
Understanding how this simulation environment works can help you troubleshoot issues and customize your models.
Communication with 3D Simulation Environment
When you use Aerospace Blockset to run your algorithms, Simulink co-simulates the algorithms in the visualization engine.
In the Simulink environment, Aerospace Blockset:
Determines the next position of objects by using 3D visualization environment feedback and aerospace vehicle dynamics models.
Configures the 3D visualization environment, specifically:
Scene capture cameras
Initial object positions
In the visualization engine environment, Aerospace Blockset positions the objects and uses ray tracing to query the environment.
The diagram summarizes the communication between Simulink and the visualization engine.
Block Execution Order
During simulation, the 3D simulation blocks follow a specific execution order:
The aerospace blocks initialize the vehicles and send their X, Y, and Yaw signal data to the Simulation 3D Scene Configuration block.
The Simulation 3D Scene Configuration block receives the vehicle data and sends it to the sensor blocks.
The sensor blocks receive the vehicle data and use it to accurately locate and visualize the vehicles.
The Priority property of the blocks controls this
execution order. To access this property for any block, right-click the block,
select Properties, and click the
General tab. By default, Simulation 3D
Aircraft blocks have a priority of
Simulation 3D Scene Configuration blocks have a priority of
0, and sensor blocks have a priority of
If your sensors are not detecting vehicles in the scene, it is possible that the 3D simulation blocks are executing out of order. Try updating the execution order and simulating again. For more details on execution order, see Control and Display Execution Order.
Also be sure that all 3D simulation blocks are located in the same subsystem. Even if the blocks have the correct Priority settings, if they are located in different subsystems, they still might execute out of order.
- Unreal Engine Simulation Environment Requirements and Limitations
- Customize 3D Scenes for Aerospace Blockset Simulations
- Customize Scenes Using Simulink and Unreal Editor
- Get Started Communicating with the Unreal Engine Visualization Environment (Vehicle Dynamics Blockset)
- Prepare Custom Vehicle Mesh for the Unreal Editor (Vehicle Dynamics Blockset)
- Place Cameras on Actors in the Unreal Editor (Vehicle Dynamics Blockset)