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.
|