The robot uses a GPDD (general purpose device driver), which can receive any command from any authorized client, parse the command, and then forward the command to the appropriate device driver. Communications between the GPDD and specific drivers is made using sockets, which allows for the distribution of the system among different hardware platforms.
GPDD is a good way to isolate the hardware device drivers from the Internet clients issuing the commands.
The robot's moble platform has a rectangular shape and has four wheels. The two wheels in the rear are motorized and are computer controlled. The two front wheels are castors. Steering is achived by having different speeds in the motorized wheels.
The platform runs ALBATROS, a proprietary RTOS. ALBATROS commands from a host are sent to the platform by means of a 9600 baud serial line. The platform ALBATROS then interprets and executes the commands. A second serial line is used for communications between the host and any user defined application program, such as the control program to control steering.
From a point of view of control by the host, the mobile platform can be seen as a hardware device, requiring therefore the correspondent software device driver.