A.L.I.B.E stands for Artificial LIfe BEing – is in the makings of becoming an autonomous land roving robot. The sole purpose of his life is to wander about land terrains in search of his “homebase”. At the skeletal structure, ALIBE is a modified all-wheel drive RC Truck retrofitted with various electronics components to give him the needed sensory and reactionary behaviors. Sensory components essentially help him gather data as he wanders about – such as temperature, light, touch, acceleration, inclination, compass heading, GPS location, object and obstacle range, Vision and other important pieces of data that will help him make the needed decisions to get to his homebase. Reactionary components essentially help him react upon to the data he gathers – such as motion, display and communication to-from him and the homebase.
ALIBE is also equipped with other components such as a communication module (powered by Aerocomm AC4790) that he uses to communicate two-way with the homebase. Essentially, responding to request-of-data and request-to-react. Both of these behaviors are important to ALIBE’s overall behavioral patterns. He needs to be able to send data to the homebase when requested and react to the commands sent by the homebase Command Center – such as overriding behaviors. Think of this as similar to the Command Center at NASA sending data over the air, thru the space to the Mars Rover and back – this one, only on a much shorter range and smaller scale.
ALIBE is equipped with battery packs to fuel all the electronics he runs or decides to run at behavioral time. Which also means, that he knows when to shutdown certain modules as needed or to boot up for use as demand rises.
The brains of ALIBE, are powered by an on-board 32-bit multi-processor based microcontroller chip called, “Propeller” made by Parallax. Propeller is made of a central “Hub” that knows how to control the surrounding 8 multi-processors called, “Cogs“. Each of the cogs can be programmed to take on a task that runs independantly of the others, yet centrally managed by the Hub. It is a very effective way of time-slicing ad processing command cycles. Propeller can be programmed either using Assembly or the proprietary SPIN language. Both of these are very attractive not just from programming structure, But, also from performance and efficiency standpoint.
ALIBE employs Propeller in a way that each of the 8 cogs are designated to handle a certain “wing” of the onboard responsibilities. More details can be found in this blog. From a high level however, a Cog is set to process Communication between ALIBE and the homebase Command Center, another is set to gather sensory data from less intensive sensors such as temperature, accelerometer, compass, CdS, Sonar Range detectors, etc., while another gathers data from the Vision enabling camera; And, another monitors the overall demand-need-status of devices to ensure switching on and off of the devices; another to handle motion; LCD displays, among other behaviors.
A bit more about the communication module in ALIBE; The AC4790 is made by a Aerocomm. It is a Transceiver – very user/developer friendly. AC4790 was chosen among other similar devices for a couple of reasons. One, it is fairly easy to work with compared to other competitive products in the market. It’s Pin layout and Pin characteristics are easy to follow. And, mostly, can be effectively functional just with 3-wires into the microcontroller. It has many featuers. However, for ALIBE, all he needs to do is wait for commands from homebase Command Center and either react to the commands or send data back. A very “Reactive” behavior. For something as simple as this, one is able to make this work with 3-wires. The second reason I chose this was, the range. In a clear Line-Of-Sight, ALIBE is able to keep the communication open for upto 4 mile radius – which is very useful for ALIBE’s behaviors and Thirdly, AC4790 supports not just “Peer-To-Homebase” but, also, “Peer-To-Peer”. So, if in case I were to build another ALIBE, the two will be able to communicate with each other and also with the homebase Command Center effectively. This last feature is very useful for the future of ALIBE.
The ultimate goal of ALIBE is to navigate about the neighborhood, and tackle obstacles and reach the homebase coordinates successfully. The project is on-going for the past 3 months now and I am hoping it will be completed in another 3 to 6 months.
This blog is here to keep and post updates on this project as it happens. You should find a lot of information here 1) background theory 2) electronics details such as parts, circuit diagrams, hardware assembly, etc 3) some level of source code 4) and of course a lot of pictures.
ciao
Nagi