Read data from virtual world to Simulink model
Simulink® 3D Animation™
Use the VR Source block to provide interactivity between a user navigating the virtual world and the simulation of a Simulink model. The VR Source block registers user interactions with the virtual world and passes that data to the model to affect the simulation of the model. The VR Source reads values from virtual world fields specified in the Block Parameters dialog box and inputs their values to a model.
Examples of some ways that you can use a VR Source block to input data from a virtual world to a Simulink model include:
Provide interactivity between user navigation and interaction in a virtual world and the simulation of the model.
Have a simulation react to virtual world events, such as time ticks or outputs from scripts.
Use static information from the virtual world, such as the size of a box, to control a simulation.
For example, you can specify setpoints in the virtual world, so that user can specify the location of a virtual world object interactively. The simulation then responds to the changed location of the object. The VR Source block can read into the model events from the virtual world, such as time ticks or outputs from scripts. The VR Source block can also read into the model static information about the virtual world (for example, the size of a box defined in the virtual world 3D file). For examples of models that use the VR Source block, see Virtual Control Panel and the
Set the Setpoint subsystem in the
The current internal viewer window (
vrfigure) properties are saved together with the Simulink model. The next time that you open the model, the internal viewer window opens with the same parameters that were saved, such as position, size, and navigation mode. When closing the viewer window, the Simulink software does not alert you if these properties have changed.
To open the Block Parameters dialog box VR Source block:
When you first add a VR Source block and it is still not associated with a virtual world, double-click the block.
Otherwise, in the Simulink 3D Animation Viewer, select SimulationBlock parameters. If the viewer is not already open, you can open it by double-clicking the VR Source block.
You cannot use the Simulink Coder™ software to compile a model that includes a VR Source block.
A VR Source block outputs signals of type double.
Source file — Virtual world 3D file name specifying the virtual world that connects to this block. By default, the full path to the associated virtual world 3D file appears in this text box. If you enter only the file name in this box, the software assumes that the virtual world 3D file resides in the same folder as the model file. You can specify a VRML file or an X3D file.
Click the New to open an empty default virtual world editor. When you either enter a source file name or use the Browse button, the New button becomes an Edit button.
Click the Edit button to launch the default virtual world editor with the source file open.
Click the View button to view the world in the Simulink 3D Animation Viewer or a Web browser.
Click the Reload button reloads the world after you change it.
Open Viewer automatically — If you select this check box, the default virtual world viewer displays the virtual world after loading the Simulink model.
Allow viewing from the Internet — If you select this check box, the virtual world is accessible for viewing on a client computer. If you do not select this check box, the world is visible only on the host computer. This parameter is equivalent to the
RemoteView property of a
Description — Description that is displayed in all virtual reality object listings, in the title bar of the Simulink
3D Animation Viewer, and in the list of virtual worlds on the Simulink
3D Animation HTML page. This parameter is equivalent to the
Description property of a
Sample time — Enter the sample time or
-1 for inherited sample time.
To achieve a smooth simulation, MathWorks® recommends that you explicitly set the Sample time parameter. You can change the value of this parameter to achieve the specific visual experience you want.
Allow variable-size output signals — Specify the type of signals allowed out of this port.
By default, the VR Source block does not allow variable-size signals. If you enable this parameter, then the VR Source block allows variable-size signals for fields that can change dimensions during simulation. These fields include MFxxx fields that can have a variable number of elements (typically, MFFloat or MFVec3f). The SFImage is the only SFxxx field that can map to a variable-size signal. For details about these data types, see Field Data Types.
The signal dimensions of a variable-size output signal of a VR Source block must be the same size as, or smaller than, the initial state of the signal.
Virtual World Tree — This box shows the structure of the virtual world 3D file and the virtual world itself.
Nodes that have names are marked with red arrows. You can access them from the MATLAB® interface. Nodes without names, but whose children are named, are also marked with red arrows. This marking scheme makes it possible for you to find all accessible nodes by traversing the tree using arrows. Other nodes have a blue dot before their names.
Fields with readable values have check boxes. Use these check boxes to select the fields that you want the Simulink software to monitor and to use to input values. For each field that you select in the Virtual World Tree box, Simulink creates an output port in the VR Source block. Simulink creates the output ports in the same order as the selected fields appear in the virtual world 3D file.
Transform nodes, the tree includes an Extensions branch that contains two Simulink
3D Animation extensions for converting rotation and translation values into global coordinates:
translation_abs. These fields are read-only, and do not appear in the 3D World Editor tree structure pane. For more information, see Input Virtual World Data to a Model.
Fields whose values cannot be read (because their parent nodes do not have names, or because their values cannot be imported to Simulink) have an X-shaped icon.
Show node types — If you select this check box, node types are shown in the virtual scene tree.
Show field types — If you select this check box, field types are shown in the virtual scene tree.