Configuration Space for A Simple Robot

(Requires Java enabled browser)

This applet simulates the motion of a 2 link robot arm that you define.

There are two window areas:

In the left area of the window, LEFT click, drag, LEFT click to create the first robot link, then again to create the second robot link. This defines your robot arm. You can now RIGHT click anywhere to position the robot.

In the right area of the window is the configuration space, showing the arm configuration based on the angle of the first joint (X axis) and the angle of the second joint (Y axis). Any configuration of the robot arm in the left window corresponds to the a point in the configuration space. To test this, LEFT click anywhere in the configuration space window; the robot will move accordingly.

Obstacles: Things get fun when you start defining obstacles in the robot's environment. To do this, use your LEFT mouse button in the Left window to click, drag edges of a polygonal obstacle (end the obstacle by clicking anywhere near the first point). The corresponding obstacle will be computed and displayed in the right window.

You can now move the robot in either window as before, and add additional obstacles by LEFT clicking in the Left window area.

Applet History:
   The original version of this program was written in C by Jeff Wiegley at USC, working with Prof. Ken Goldberg.
   The Java version was written by Eric Lee at UC Berkeley, working with Prof. Goldberg.
   Modifications for cs188 demo purposes by Dan Klein, UC Berkeley.