The Simulink® 3D Animation™ product is a solution for interacting with virtual reality world models of dynamic systems over time. It extends the capabilities of your virtual world and Simulink, Simscape™ Multibody™, and MATLAB® software into the world of virtual reality graphics. The product provides a complete authoring, development, and working environment for carrying out 3-D visual simulations.
To use virtual reality worlds to visualize dynamic system simulations, you perform the following tasks:
As you refine your visualization, you often perform some of these tasks iteratively.
To work through an example that illustrates the building, linking, and viewing a virtual world, see Build and Connect a Virtual World.
Install the Simulink 3D Animation software in your MATLAB environment to build virtual reality worlds and to visualize dynamic simulations modeled in MATLAB, Simulink, or Simscape Multibody. If your computer does not already have a graphics card with hardware 3-D acceleration, consider installing such a card to enhance graphics performance.
You build and view the virtual reality world models using VRML (Virtual Reality Modeling Language) or X3D (Xtensible 3D).
In addition to the installed editor, the 3D World Editor, you can configure your environment to use:
The Ligos® V-Realm Builder, which is included in the Simulink 3D Animation software for Windows® platforms.
Any third-party virtual world editor
The MATLAB editor or a third-party text editor
In addition to the installed Simulink 3D Animation viewer (the default), you can use one of these viewers to display your virtual reality worlds:
Simulink 3D Animation Web Viewer
Orbisnap, on a client computer
Use joystick and space mouse input devices to provide input for dynamic simulation visualizations.
The Simulink 3D Animation product uses a TCP/IP connection
to a VR client for communicating with the Simulink 3D Animation Viewer,
as well for connecting to HTML5-enabled web browser. You can verify
the TCP/IP connection between the host and client computers by using
ping command from a command-line prompt. If
there are problems, fix the TCP/IP protocol settings according to
the documentation for your operating system.
If your system does not have the OpenGL® software properly installed when you run the Simulink 3D Animation Viewer, you might see a MATLAB error message like the following:
Invalid MEX-file 'matlab/toolbox/sl3d/sl3d/vrsfunc.mexglx': libGL.so: cannot open shared object file
If you see an error like this, set the
LD_LIBRARY_PATH environment variable
already exists, use a line like the following to add the new path
to the existing one:
setenv LD_LIBRARY_PATH matlabroot/sys/opengl/lib/<PLATFORM>:$LD_LIBRARY_PATH
LD_LIBRARY_PATH environment variable
does not already exist, use a line like the following:
setenv LD_LIBRARY_PATH matlabroot/sys/opengl/lib/<PLATFORM>
In both cases,
<PLATFORM> is the UNIX® platform
you are working in.
Use a virtual world editor to build a virtual reality world. A non-VRML or non-X3D CAD model created with another tool can be a good basis for a virtual reality world to use with Simulink 3D Animation. You can convert some CAD models to a VRML or X3D model.
You can use advanced features of the Simulink 3D Animation product such as:
Viewpoints, to highlight points of interest for quick browsing of a virtual reality world
Sensors, to input virtual reality world values to Simulink models
For more an overview of VRML and details about supported VRML features, see Virtual Reality Modeling Language (VRML). You can also use X3D, which provides several extensions, including additional nodes, fields, encoding, scene access interfaces, additional rendering control, and geospatial support. For details, see X3D Support.
As you add nodes with the 3D World Editor, you can use the viewer pane to see the virtual world that you are creating.
For a step-by-step example of building a virtual reality world with the 3D World Editor, see Build and Connect a Virtual World.
To use a dynamic system simulation to drive a virtual reality world, connect the virtual world to one of the following:
Simscape Multibody model
MATLAB virtual world object
The Simulink 3D Animation library provides blocks to connect Simulink signals with virtual worlds. This connection lets you visualize your model as a three-dimensional animation.
You can implement most of the software features with Simulink blocks. Once you include these blocks in a Simulink diagram, you can select a virtual world and connect Simulink signals to the virtual world. The software automatically scans a virtual world for available nodes that the Simulink software can drive.
All the node properties are listed in a hierarchical tree-style viewer. You select the degrees of freedom to control from within the Simulink interface. After you close a Block Parameters dialog box, the Simulink software updates the block with the inputs and outputs corresponding to selected nodes in the virtual world. After connecting these inputs to appropriate Simulink signals, you can view the simulation with a virtual world viewer.
The Simulink product provides communication for control and manipulation of virtual reality objects, using Simulink 3D Animation blocks.
For details, see Virtual World Connection to a Model.
You can use the Simulink 3D Animation product to view the behavior of a model created with the Simscape Multibody software. First, you build a model of a machine in the Simulink interface using Simscape Multibody blocks. Then, create a detailed picture of your machine in a virtual world. Connect this world to the Simscape Multibody body sensor outputs and view the behavior of the bodies in a virtual world viewer.
For details, see Link to Simulink and Simscape Multibody Models.
Simulink 3D Animation software provides a flexible MATLAB interface to virtual reality worlds. After creating MATLAB objects and associating them with a virtual world, you can control the virtual world by using functions and methods.
From the MATLAB software, you can set positions and properties of virtual world objects, create callbacks from graphical interfaces, and map data to virtual world objects. You can also view the virtual world with a viewer, determine its structure, and assign new values to all available nodes and their fields.
The software includes functions for retrieving and changing the virtual world properties and for saving the virtual world 3D files corresponding to the actual structure of a virtual world.
The MATLAB software provides communication for control and manipulation of virtual reality objects using MATLAB objects.
For details about interacting between MATLAB and virtual reality worlds, see MATLAB Interaction.
After you connect the virtual world to the model, use a virtual world viewer to view the virtual world representation of the dynamic system simulation.
In Simulink and Simscape Multibody, simulate the model that is connected to the virtual reality world.
In MATLAB, use the view function to view a
that the MATLAB code updates with data values.
While running a simulation, you can change the positions and properties of virtual world objects.
For information about using virtual world viewers to navigate a virtual reality world, see View Dynamic System Simulations.
You can share dynamic system simulation results with others by:
In addition to the single computer configuration (when MATLAB, Simulink, and the virtual reality representations run on the same host computer), Simulink 3D Animation software also allows a client-server configuration. In this configuration, an Orbisnap viewer on a remote client can connect to the server host on which Simulink 3D Animation software is running. This configuration allows others to view an animated virtual world remotely. Multiple clients can connect to one server. See Orbisnap Standalone Viewer.
Use the MATLAB Compiler™ to take MATLAB files as input and generate redistributable, standalone applications that include Simulink 3D Animation functionality, including the Simulink 3D Animation Viewer. See MATLAB Compiler Support