Robot

The robots play important roles in our system. As a tangible, movable and friendly interactive component, a robot should meet the basic requirement as follows:

1) It should be small-sized and comfortably fit user's palm;
2) It needs to be highly maneuverable;
3) The base plate has to be as close to the table as possible because of the DI tracking;
4) It must be able to communicate with the system;
5) It should have a friendly looking and a good tactile impression.

To lower the base plate of the robot is a significant issue for robot design. Since the diffuser will blur objects above the surface, even though the fiducial pattern raises only 1mm, it will also be blurred and became unstable, easy to lose tracking. In our design, by precisely setting the position of the axle we lowered the base plate of the robot only 0.5mm far from the surface. The base plate is a circular plastic plate with a diameter of 100mm, on which we installed all the components within a half ball acrylic cover. We used the ReacTIVision fiducial for tracking a robot due to its fast processing speed. In our early prototypes, we tried to paste a piece of paper with a fiducial printed on the bottom of the robot. However, we found that the printed paper was easy to be discolored and becomes hard to track after several uses. To deal with this problem, we sprayed the bottom of the white base plate with black then carved a 0.2mm depth fiducial shape on it. The smallest dot of the fiducial has a diameter of 5mm which is equivalent to 3 pixels for the camera.

figure of robot

The robot has two separate motors and gearboxes, which provide a flexible mobility to the robot. It also has a Bluetooth module for communication. When a robot is placed on the surface, the system recognizes the fiducial and looks up the Bluetooth address in a table, then automatically negotiates a connection to the robot. If the robot is turned on, the connection is seamlessly established within seconds. The application is thus able to track the position and orientation of the robot on the surface while also giving the robots commands to control its movement.