Overview
- - BondSim3DVisual is a 3D visualization environment, which enables creation of the virtual scenes. A virtual scene is 3D computer view of a part of the real space in which robots, or other mechanisms including humans, work. It include also the light sources and camera and is based on VTK© visualization technique in Windows environment. The current version of VTK the program uses needs that the graphic card of the comupter on which the program runs supports OpenGL version 3.2 or higher. When installing the program it checks if this is satisfied; otherwise the installation is rejected.
- - To define a 3D virtual scene a simple text based script are used. The kinematics of the problem is described first. Next the objects that populate the scene are described as 3D geometric objects. They can be constructed from the primitive bodies such as cylinders, cubes, spheres and others, but also CAD generated geometric models in form of .stl (stereo lithographic) files can be imported as well. The objects are defined in their initial position. Also rendering of the object is defined by the corresponing commands. The scripts are edited using Notepad program that program directly calls and are stored in the program database.
- - To create the virtual scene for a project the corresponing script is read in first, translated and the visualization objects are created in the computer memory. The generated objects are then rendered on the computer screen. The objects are shown in their initial positions. The camera view of the scene can be changed by mouse clicks.
- - The objects on the sceene can be moved manualy by a menu driven command. When the command is issued a dialog opens which enables setting the joint angles or displacemnts. By clicking the OK the program updates the scene. We can experiment with different values to check the behavior of the objects in the scene. To reset the scene we may click Reset button. By Close button we close the operations.
- - There is also IPC (Inter Process Communications) command, which enables driving of the objects in the virtual scene by an external program, typically BondSim. To enable the communications between these two programs Named Pipe technology is used. The BondSim3DVisual serves as a server, which creates the pipe and redraws the scene based on the messages received from the client (BondSim, see the figure below).
Interprocess communication between the server and client
- - To start the communication both BondSim 3D Visual and client program have to be loaded on the same, or distinct computers linked into a local net. When the virtual scene is created and the IPC command is issued the pipe is created. On the client side the corresponding dynamical (BondSim) model is opened and built. When the client connects to the server the process can start. By running the simulations the client sends messages to the server, which procesed them and redraw the scene. Thus, during the simulation it is possible to watch how the process evolves and the corresponing objects moves in the virtual scene. The process stops when the simulation finishes.
- - The motion can be recorded also as an AVI file, which can be later replayed by a suitable media player.