Irai Virtual Universe 1.1, Virtual Universe 1.0 User Manual

V1.002
User manual
©opyright 2010 IRAI
Contents
Introduction ................................................................................................ 9
Organization .............................................................................................. 9
Installation ................................................................................................ 10
License..................................................................................................... 10
Registering the license ......................................................................... 10
Installation in a network ........................................................................... 11
Environment ............................................................................................. 12
Browsing and interactions ....................................................................... 15
The different types of objects ............................................................... 16
Universe ............................................................................................. 16
World .................................................................................................. 16
Camera .............................................................................................. 16
Light ................................................................................................... 16
3D Sprites .......................................................................................... 16
Behaviors ........................................................................................... 16
Basic concepts ......................................................................................... 17
3D rendering and sounds ..................................................................... 17
Physics engine ...................................................................................... 18
Dialogue ................................................................................................ 19
Script ..................................................................................................... 19
RUN/STOP mode ................................................................................. 19
Media manager ..................................................................................... 20
Properties ................................................................................................ 20
Universe ................................................................................................ 20
Connection ......................................................................................... 20
Driver ............................................................................................ 20
Server name or IP address ........................................................... 20
Virtual Universe 3
Port ............................................................................................... 20
Driver M340 mode ........................................................................ 20
Options ............................................................................................... 21
Automatic RUN ............................................................................. 21
Variable and state display ............................................................ 21
Wireframe ..................................................................................... 21
Debug mode for the physics engine ............................................. 21
World ..................................................................................................... 21
Name .................................................................................................. 21
Display ............................................................................................... 21
Window size .................................................................................. 21
Editable size ................................................................................. 21
Background color .......................................................................... 21
Environment light .......................................................................... 22
Show the shading ......................................................................... 22
Number of images displayed per second (read only)................... 22
Use the shader ............................................................................. 22
Maximum number of images per second ..................................... 22
Camera ................................................................................................. 22
Name .................................................................................................. 22
Position .............................................................................................. 22
Current position .................................................................................. 22
Light ...................................................................................................... 23
Name .................................................................................................. 23
Position .............................................................................................. 23
Color, type, etc. .................................................................................. 23
3d Sprite ................................................................................................ 23
Name .................................................................................................. 23
Drawing .............................................................................................. 23
Position and size ................................................................................ 23
Virtual Universe 4
Position and size (current values) ..................................................... 23
Material .............................................................................................. 23
Material (current values) .................................................................... 23
Browsing ............................................................................................ 24
Not selectable ............................................................................... 24
Physics ............................................................................................... 24
Use the physics engine ................................................................ 24
Use gravity .................................................................................... 24
The user can apply a force to the object ...................................... 24
Type of body ................................................................................. 24
Mass ............................................................................................. 26
Inertia force ................................................................................... 26
Automatically adjust the center of mass ....................................... 26
Coefficients… ............................................................................... 26
Speed ............................................................................................ 26
Penetration.................................................................................... 26
Physical joint with the parent ............................................................. 26
Joint .............................................................................................. 26
Pivot position ................................................................................ 27
Action line ..................................................................................... 27
Limits... .......................................................................................... 27
Joint power.................................................................................... 27
Joint strength ................................................................................ 27
Joint breaking strength ................................................................. 27
Physical joint with another 3D Sprite ................................................. 28
2D Sprite ............................................................................................ 28
Behaviors .............................................................................................. 29
Name .................................................................................................. 29
Type, etc. ........................................................................................... 29
Behavior type ................................................................................ 29
Virtual Universe 5
Strength ........................................................................................ 32
Apply to brothers ........................................................................... 33
Position / Rotation / Color ............................................................. 33
Links ................................................................................................... 33
Initial value .................................................................................... 33
Current value, internal current value, conversion of data, write
mode ............................................................................................. 33
Names of other 3D Sprites ........................................................... 33
Use the value of this Behavior ...................................................... 33
External link .................................................................................. 33
Sounds ............................................................................................... 34
Minimum distance ......................................................................... 34
Script .................................................................................................. 34
Script ..................................................................................................... 35
Write a script ...................................................................................... 36
Specific functions ............................................................................... 37
3D Sprite name syntax ................................................................. 37
Access functions to values associated to a 3D Sprite ................. 38
Behavior name syntax .................................................................. 39
Access functions to values associated to Behavior ..................... 39
Access functions to values associated to the Universe ............... 40
Other functions ............................................................................. 41
Object library ............................................................................................ 43
External links ........................................................................................... 43
Current value and internal current value .............................................. 43
Reading a Virtual Universe value from the external software ........... 44
Writing an external software value to Virtual Universe ...................... 45
Access to the external links of an object group .................................... 46
Examples ................................................................................................. 47
Conveyor ............................................................................................... 47
Virtual Universe 6
Operation ........................................................................................... 53
List of AUTOMGEN / AUTOSIM variable references ........................ 54
List of UNITY PRO variable references ............................................. 55
Robot and bottles .................................................................................. 56
Operation ........................................................................................... 60
List of AUTOMGEN / AUTOSIM variable references ........................ 60
NXT robot .............................................................................................. 61
Operation ........................................................................................... 66
The two wheels are controlled by motors whose power is controlled by numeric variables. Two numeric values are used to control the
motor in each direction. ..................................................................... 66
List of AUTOMGEN / AUTOSIM variable references ........................ 66
6 axis ABB Robot .................................................................................. 67
Operation ........................................................................................... 71
List of AUTOMGEN / AUTOSIM variable references ........................ 72
Vacuum robot........................................................................................ 73
Operation ........................................................................................... 75
List of AUTOMGEN / AUTOSIM variable references ........................ 75
Manipulator with cylinders and suction cup .......................................... 76
Operation ........................................................................................... 81
List of AUTOMGEN / AUTOSIM variable references ........................ 81
Virtual Universe 7
Introduction
Virtual Universe is a 3D world simulator dedicated to automaton and robotics. By integrating the latest technologies in 3D rendering, 3D sound, physical simulation and script, Virtual Universe can be used to create ultra realistic simulations. Virtual Universe can communicate with automaton software workshops (AUTOMGEN, UNITY, etc.) so that the virtual systems can be controlled like real systems.
Necessary system
Virtual Universe operates with the following operating systems: Windows XP, Windows Vista and Windows 7.
Virtual Universe is compatible with AUTOMGEN 8.015 or later versions.
Organization
Virtual Universe 9
Installation
To install Virtual Universe, simply run the execution of the installation package which has been delivered to you on a CD-ROM or by downloading. Visit our website (www.irai.com) to download the latest updates for Virtual Universe.
License
Registering the license
Virtual Universe operates as a demo version (for a 40 day trial) as long as you haven’t registered the license.
To register the license, click on the “License” button in the Virtual Universe configuration window.
Click on the “Enter a license” button.
Virtual Universe 10
Send the user code which is then generated by e-mail to the address francoise.saut.irai@orange.fr
You will receive a validation code by e-mail which you then enter in the “validation code” areas, then click on “Validate” to validate the license. You have 20 days after the user code is generated to enter the validation code.
Installation in a network
The Virtual Universe files can be installed on a file server. The licenses can also be managed by a network license manager (see the specific network license manager).
Virtual Universe 11
Environment
When Virtual Universe is started a 3D world rendering window appears:
The RUN/STOP button is used to run or stop the simulation. The SETUP button opens or closes the configuration window:
Virtual Universe 12
The items of the
sounds.
simulation: Camera, Light, Objects, etc.
Properties of the selected item
Open the media manager for media files used in the project: 3D files, bitmaps and
Project files management
Show or hide the extended properties of objects
Select browsing mode by objects list or by properties list
RIN/STOP mode selection
Manage the license
Virtual Universe 13
The same window in “by properties” mode is used to obtain the list of values of the same property for an object group. In this mode, the parent of the objects needs to be selected on the upper left and the property on the lower left.
Virtual Universe 14
Browsing and interactions
The following commands are used to browse and in 3D World or to interact with these:
- Mouse wheel or keyboard Up and Down keys: Zoom
- Right mouse button pressed and movement of mouse: orbit around the selected object.
- Movement of the mouse inside the rendering window: automatic selection of the browsed object to orbit around.
- Left click of the mouse on an object in STOP mode: selection of the object.
- Left mouse button pressed on an object and movement of mouse in RUN mode: interaction with the selected object: push, pull, move.
Virtual Universe 15
The different types of objects
The objects are organized hierarchically in child/parent.
Universe
This is the parent object of the entire Virtual Universe project, it contains one or more Worlds, its properties set which automaton Virtual Universe will dialogue with. The Universe object is always the parent of the hierarchy.
World
This is a subset of the Universe. Its properties define the rendering window aspect among other things. The World objects are always the children of the Universe.
Camera
The Cameras represent a user’s viewpoint in a 3D world. The camera objects are children of the World objects or 3d Sprites.
Light
The Lights are necessary, just like in the real World for being able to observe the objects. The Light objects are children of the World objects or 3d Sprites.
3D Sprites
These are the objects and their multiple physical and visual characteristics. 3D Sprite objects are children of the World objects or 3D Sprites.
Behaviors
Associated to a 3D Sprite or a Light, they will dynamically change their properties: for example to change their positions or their colors or even execute a script which can act on these objects. A Behavior can act as an engine to transmit a force to a 3D Sprite. The Behavior objects are children of the Light objects or 3D Sprites.
Virtual Universe 16
Basic concepts
3D rendering and sounds
The rendering engine used by Virtual Universe is Irrlicht which supports via DIRECTX 8 or 9 or OPENGL (based on what is available on the PC). The role of the 3D rendering engine is to display the 3D world objects lit by the Lights based on the viewpoint set by a camera. The Cartesian coordinates X/Y/Z govern the 3D world.
Virtual Universe 17
An axis identifier is displayed in the rendering window when the configuration window is open.
The 3D sounds increase the realism of the simulations. The sounds are emitted in the virtual world at the position of the objects and are thus perceived based on the camera position.
Physics engine
Newton Physic Engine is the physics engine used by Virtual Universe for physical object management: for example gravity, but also much more than that.
To get the most out of the physics engine, it is important to be familiar with the basic concepts of physics, such as forces, velocities, frictions, mass, etc.
Virtual Universe 18
The physics engine parameters are associated to each 3d Sprite. A 3d Sprite can be managed or not by the physics engine. For example, an object only used visually may not be managed by the physics engine.
Dialogue
The dialogue with an external software is one of the essential elements used to control the simulations. The external software type and the connection parameter settings are found in the Universe properties. The links are then set in Behaviors. The Behavior type will determine the dialogue direction (reading from or writing to the external software).
Script
Scripts written in basic language can be associated to any object by a Behavior.
RUN/STOP mode
Virtual Universe can be in STOP mode (simulation stopped and initialized) or RUN (simulation in progress) mode. In RUN mode, the physics engine and dialogue with the external software are enabled. The Behaviors and scripts are enabled.
In RUN mode, rendering is performed as quickly as possible based on the PC performance, the physics engine and the scripts are called every 10 ms.
Virtual Universe 19
The objects possess a double entry for certain parameters (for example their positions). The first parameter set corresponds to their initial values, the second set to their current values. In STOP mode, the initial values are recopied in the current values.
Media manager
This is used to store the media files (3D files, bitmap files and sound files) used in a project. The objects can use files found in the media manager or outside it. The files located in the media manager will be saved in the project file. This latter method is recommended if the project needs to be shared or executed on another PC.
Properties
Universe
Connection
Driver
Determines the connection with an external software1 This is the case of connection with AUTOMGEN or AUTOSIM
Server name or IP address
Use “localhost” if the external software is run on the same PC. If the software is run on another network PC, enter its IP address or its name as seen on the network.
Port
Must be the same as the one selected in the AUTOMGEN / AUTOSIM properties in the TCP/IP Connection Execution tab, server, port.
This is the case of connection to UNITY (simulator PLC or API M340)
Driver M340 mode
Local simulator: Simulator PLC run on the same PC, API connected by USB: an API M340 connected to a USB port, API or simulator on IP : an
1
External software is the generic term used to define the software with which Virtual Universe
dialogues
Virtual Universe 20
API connected by Ethernet or a simulator run on another PC connected to the network. In this case, document the IP address of the API or PC.
Options
Automatic RUN
Causes it to go to RUN when the project is opened.
Variable and state display
Displays the variable names and the states for the Behaviors in the rendering window referred to a variable of the external software.
Wireframe
The group of project 3D Sprites will be displayed in “wireframe” mode if true.
Debug mode for the physics engine
If true, the volumes used by the physics engine are displayed in the rendering window (yellow lines). This is very useful in the development phase of a project using the physics engine to display the volumes handled by the physics engine.
World
Name
Used to indicate a World by its name.
Display
Window size
Determines the rendering window size in pixels.
Editable size
If true, the window size can be edited by the user.
Background color
Determines the color displayed for the background on the rendering window.
Virtual Universe 21
Environment light
Determines the color and intensity of the environment light (light lighting the group of objects no matter what their positions and their orientations).
Show the shading
If true, this manages display of shading, it requires that the properties of objects relative to shading also be positioned. The display of shading may significantly slow down the rendering.
Number of images displayed per second (read only)
Indicates the number of images displayed in a second in the rendering window.
Use the shader
Evolved 3D displaying technique reserved for specialists.
Maximum number of images per second
If different than 0, this limits the number of images displayed per second to the indicated value. Used to preserve the processor time.
Camera
Name
Used to indicate a Camera by its name.
Position
Determines the initial position of the Camera by the target coordinates (related to the Camera) as well as a rotation on the X and Y axes and a zoom.
Current position
The same as above but for the current position. The current position can be recopied in the initial position by clicking on
the down arrows appearing to the right of the initial position elements and selecting “Copy from current values”.
Virtual Universe 22
Light
Name
Used to indicate a Light by its name.
Position
Used to define the coordinates and direction of the Light (direction is only used for the Spot and Directional type lights).
Color, type, etc.
Determines the Light characteristics.
3d Sprite
Name
Used to indicate a 3d Sprite by its name
Drawing
Determines the 3D file used to set the 3D Sprite geometry and any texture files.
Position and size
Sets the position, rotation (as well as the axis) and the initial scale of the 3D Sprite. Rotations are expressed in degrees (from – 180 to + 180 degrees).
Position and size (current values)
The same as above but for current values, with more: the translation and relative rotation (based on the parent 3D Sprite), as well as the position of the object center and the absolute rotation based on the World.
Material
These properties group the characteristics of the material used to display the object. These characteristics are directly linked to the Irrlicht rendering engine.
Material (current values)
The same as above for current values.
Virtual Universe 23
Browsing
Not selectable
If true, the 3D Sprite does not affect browsing when it is browsed by the mouse cursor.
Physics
Groups the properties of an object concerning the physics engine.
Use the physics engine
If true the 3D Sprite will be handled by the physics engine, if not, the object will be completely ignored by the physics engine, in other words, the object will be only displayed in the 3D world, but it will have no physical interaction with the other objects.
Use gravity
If true the 3D Sprite will be submitted to gravity. Its mass cannot be zero.
The user can apply a force to the object
If true, the user can, in RUN mode, act on the object by keeping the right mouse button pressed when the cursor is on the 3D Sprite and by moving the cursor.
Type of body
Determines the 3D Sprite geometry type for the physics engine
- Any: a convex shape obtained from the 3D Sprite geometry;
- Box: a rectangle parallelepiped;
- Sphere: a sphere;
- Capsule: a capsule.
Attention, the “Any” type if used with a complex 3D Sprite (possessing very numerous faces), may use a lot of resources for the physical simulation. So, if possible use one of the other types.
Virtual Universe 24
It is possible and often useful during the set up phases to display the geometries handled by the physics engine by enabling the “Debug mode for the physics engine” option in the Universe properties. Example:
The volumes handled by the physics engine appear in yellow. Solution in the case of a complex 3D Sprite requiring an any shape:
- set a simplified 3D Sprite shape (with fewer facets), give it the “invisible” and “managed by physics engine” attributes;
- preserve the complex 3D Sprite shape and add it as child with the “visible” and “not managed by physics engine” attributes.
This solution is used in the “Conveyor” example.
Virtual Universe 25
Loading...
+ 56 hidden pages