JaViSS is a visual servoing simulation environment written in Java. Graphical rendering makes extensive use of Java 3D API. The calculus engine is implemented with the Colt libraries. Though JaViSS currently runs on a single computer, it has been heavily designed in a distributed manner, using the agent-based JADE platform. Finally, 3D models have been created with AC3D, and loaded with the Java 3D loader J3D-VRML97.
Manipulator kinematics code is based on the Robotics Toolbox for Matlab by Peter Corke.
JaViSS is executed by means of Java Web Start, just by clicking on the links below. You will be asked to accept a certificate (signed by me), in order to allow the application to full access your computer. Don't worry, the only needed permission is just for writing some log files with the task data, and some harmless files ("*.txt") written by the underlying agent platform, in the working directory. Anyway, if you don't trust me, what are you doing in this page? :-)
After a few seconds, you should see a window like this:
The target object, camera view, and observer view, can be moved by the button panel at the bottom of the window.
Features can be selected from a predefined set for each target object. Press the "Features..." button, and a dialog will appear, where each feature is individually selected.
For the default target object, the available feature set consists of the center point, and two segments (defined by the upper and lower points), each defined either by two points or by the center, length and orientation.
Just a final remark: this is a VERY preliminar demo; it is not harmful at all, but it lacks some error checking (out of view points, joint limits, etc).
If the application does not behave properly, please check first the Java Web Start console for error messages, then email me with comments.
Launch the visual servoing Cartesian demo
Launch the visual servoing Puma arm demo
The program stores some visual servoing data in text files on the current directory. Find below some gnuplot scripts to plot those data (for the default file names):
Also, here you can find a nice gnuplot tutorial.
Last modified by
on 25/02/2010 @ 14:05.