cb4 : A Summary
Daniel Myall
daniel@westco.co.nz

Figure 1: cb4
Current configuration:
- Microcontroller: HC12B32
- Sensors: 2 x sonar, 2 x GP2D02, 4 x bump switches, 2 x photoresistors, 2 x
Hamamatsu P5587 encoders, pyroelectric sensor, microphone, and battery level monitor.
- Power system: 12V 3.2Ah SLA Battery. Power supply board has two 1A 5V
switchers for the uC and sensors.
- Drive system: Two LMD18200's driving 200rpm 12V gearhead motors.
- Language: SBASIC.
- Control Structure: Opinion Based Behaviour (each behaviour has a different
weighting that the arbitration function takes into account when selecting direction and
speed).
Under this configuration it can successfully navigate a dynamic environment. It's
highest level behaviour is to roam the house and find something living and follow it
around. If it gets 'bored' of this behaviour, it will switch to a stealth mode where it
hides in a dark place and waits until there is a loud sound or sudden movement - it then
becomes highly active. It lasts 4-7 hours before it needs a recharge.

Figure 2: Side view of cb4.
Improvements near completion:
- Bi-directional radio link to a PC using the Linx technologies SC modules. The sensor
data from the robot is encoded using Reed-Solomon codes (gives good error correction), and
a helper program under Linux implements more CPU intensive behaviours, as well as building
a world model to complement the reactive behaviours. The helper program sends
'suggestions' back to the robot about direction and velocity that have a relatively high
weighting in the arbitration function.
- Converting the code on the robot to C.
- Moving the electronics from the prototype body to a more robust and aesthetic body.
If you want more information on any of the above feel free to contact me at daniel@westco.co.nz
Pictures of robot subsystems:
Figure 3: Interface Board for Sensors

Figure 4: Microcontroller (HC12B32)

Figure 5: Power Subsystem