Home > Articles> 3 Significant Figures


 

Articles

The electronic and computing side of the design



It is an exciting time now to design intelligent machines and robots because the latest embedded processors are now running faster and are smaller than ever before. For example the Ubicom SX range runs up to 100MIPS (100 million instructions per second) wow! this means we can do a whole lot more in software and need very little hardware . It's not all rosy, though, because it's only an 8bit processor and there's no multiply or divide and each instruction uses a significant amount of a coulomb of electricity so the current is still quite high when running at 50MHz. Sooner, rather than later, manufacturers need to reduce significantly the charge per instruction because autonomous robots cannot tolerate too much power in driving the brain. The StrongArm processors are doing this and running at 200Mips and doing 32bit multiplication so maybe we should be looking at these guys.

Robots can have many on-board processors carrying out many tasks. For example one processor for a compact vision system and another for driving the motors and another to calculate complicated manouevres and another to measure the load being taken by the motors. On a very simplistic scale man is mimicking biological systems. Simplistic because, as an example take the retina inside an eyeball. This beautiful piece of engineering possesses something like 100 million light sensitive cells and 10 layers deep of computational hardware. The information gathered by the retina is compressed and transmitted via a bundle of less than 1 million wires out through the back of the eyeball where it is processed further by the brain. I think man has some way to go yet before we can make such wonderful computers which also take such little power.

In the meantime I use a simple recipe for building robots and that is to use (i) model aircraft servos which I prefer to call "integrated servos", (ii) Basic Stamp and Ubicom SX microcomputers, (iii) sensors ranging from tv cameras to simple switches and (iv) a specially designed mechanical robot body and (v) a new, highly efficient and fast, polynomial method to control the servos.

I try to keep the chip count as low as possible and do as much computing in software. In other words the ratio of software to electronic hardware is kept as high as possible. As an example 19 years ago I built a simple vision system which frame grabbed a tv greyscale composite video signal and then processed the frame to recognise images. In those days microprocessors didn't run very fast but dedicated digital chips did run fast. The vision system was designed to "zoom and move" which meant that it would always grab a 64x64 pixel image. This image could be composed from every fourth line and every equivalent horizontal fourth pixel and would thus represent a rough resoulution of the whole frame. Alternatively a higher resolution image could be extracted from every third, or second or every line and the equivalent horizontal pixel resolution. This represents the "zoom" component of the vision system. The "move" component is required because when you zoom and still keep a 64x64 pixel image then you have to specify where is the patch of interest since the 64x64 patch is smaller than the full frame.This circuitry required many many chips and a lot of board real estate area because most of the algorithm had to be implemented in hardware. Nineteen years later this vision system can now be implemented with 3 chips and the rest in software and I hope, from the chip manufacturers, that "we ain't seen nothin' yet" .


Robot with two eyeballs(cameras inside)


It can be said that the above described zoom and move vision system simulates an eyeball. This is because the resolution of the eyeball is highest near the centre of the retina (the fovea) and progressively decreases in resolution (density of light cells decreases) the further you go from the centre. As a consequence when you want to examine something in detail you swing the eyeball to place that image over the retina. Here you will see the image in great detail but you don't see things outside the fovea in such great detail. I guess Nature has engineered the eyeball like this because it's faster to recognise things in detail by swivelling the eyeball to place an image of interest over a central high resolution area than having a slower processing retina with many more light cells produced by a high density of light cells over the whole retina. Also the eyeball swivels very quickly to lock on to an image of interest. This is because the polar moment of inertia of the eyeball is much less than the polar moment of inertia of the head. If the eyeballs could not move around in a socket then the whole head would have to move to and this due to the higher inertia of the head is sluggish, would give us neck-ache, a headache and we couldn't fight effectively so we would become extinct I guess. Incidentally many birds due to their low inertia heads don't have moveable eyeballs.