Page 445 - Mechatronics for Safety, Security and Dependability in a New Era
P. 445
Ch86-I044963.fm Page 429 Tuesday, August 1, 2006 5:29 PM
Tuesday, August
1, 2006
5:29 PM
Page 429
Ch86-I044963.fm
429
429
Figure 2, Neck movements (left), Head and Neck unit (center), and Atomi boards (right).
ATOMI MODULES
As the robot contains many actuators and sensors, a very complex electronic system is needed to
control the actuators and to transmit information from the sensors to the onboard computer. For
purposes of fast system development and prototyping, we have developed an object-oriented
embedded system development method, which is based on small embedded objects called Atomis.
Atomis are small electronic boards that contain some sensor circuits, actuator drivers, or other
functionality.
In Qutie we have tested the suitability of this development method in a real system. The available
'library' objects (i.e. ready-made Atomis) used in building Qutie were a stepper motor controller, a
servo controller, switch inputs, LED drivers, an LCD-display, AD converters, USB connection, a
DC motor controller, a powering module, and brain Atomis (brains are used for the control software
in an Atomi system). The design process for the neck device went as follows. As the neck is
actuated by stepper motors, we chose stepper motor Atomis to drive them. We used an USB Atomi
to connect the Atomi stack to main computer. Selected Atomis were then stacked together and
placed inside the Qutie's head.
To control the two DC-motors driving the wheels of the robot, we used a DC-motor. For connecting
Atomis together there are several options. As the communication between Atomis is based on a
field bus, they do not necessarily need to be stacked on top of each other, but can also be
interconnected with a cable. Thus, each module can be located inside the mechanical module that it
is controlling, which provides easy expandability of the robot's. Given this option, we could have
interconnected the DC motor Atomi to the other Atomis with a cable. Another option is to make a
separate device for driving the DC motors by attaching another Power and USB-Atomi to the DC
motor Atomi. Thus there needs to be another available USB port on the controlling computer for the
new device. In Qutie's case, there is a separate computer controlling head and the main computer
controls the rest of the robot. Thus, the most reasonable option was to make another control device
out of Atomis for the robot's base. This option is illustrated in Figure 2.
As the configuration of the robot can be varied by changing the set of sensors and actuators, the
robot's software architecture needs to be dynamic and modular. In our previous work, Mdenpdd,
Tikanmdki (2004), we described network-distributed software architecture for operating various
resources in the distributed system. In this Property Service, each device like a robot or a stand-
alone sensor provides a service containing a set of properties related to the device. In this work, the
internal communication of robot's resource has been done with Property Service architecture.