| Oricom Technologies
www.oricomtech.com |
+|| Nico || |
Nico has been designed to be easily extended and eminently hackable. The following describes the basic design plan for this project.
| Nico (circa June 2002) |
| (photo courtesy of Dennis L. Clark) |
<| Body Design
The body is a basic rectangle with legs mounted at the 4 corners. The upper and lower decks
were cut out of two 4.5" x 6.375" [114 x 161 mm] copper-clad pcbs purchased from Radio Shack
[p/n 276-1499].
These pcbs are actually a bit too short for Nico's current design, but are ok for the
final design - which will have a separate shoulder rotation carrier at the front.
The copper-clad pcbs were used mainly because they were sitting in a box in the shop - they
also give Nico a cool, shiny metallic finish. Isopropyl alcohol worked fine for cleaning
fingerprints off the copper.
Plastic or aluminum could also be used for the decks, although aluminum would probably
add extra weight. Plexiglass thick enough to resist flexing would probably also be
on the heavy side.
Regular 1/16" [un-drilled] fiber board could probably be used, but the copper cladding
adds significant strength. Pre-drilled fiber board would be too fragile.
The overall frame with servos mounted is quite rigid.
The 4 in-board servos are simply mounted between the upper and lower decks. More accurately,
they are the vertical structural members of the frame. Right-angle brackets connect the
servos and decks. 12 drilled holes in each pcb are all that is necessary to assemble the
entire unit. Complete fabrication took only one afternoon.
In the current design, the battery pack for the servos resides inside the frame in-between
the front and back set of servos, which is why the pcbs are slightly too short.
Since the front servos extend slightly beyond the end of the pcbs, a left-over piece of
pcb was used to form a front bracket to hold the servos rigid.
This also gives Nico the semblance of having eyes in the front.
The battery pack holds 4-5 NiMH rechargeable AA batteries, providing 4.8 - 6.0 vdc when
fully-charged.
In order to lengthen operating time between charges, there is also an arrangement to mount
a second battery pack on the under-belly of the frame beneath the inside pack.
A 9v battery is used to power the controller board here.
<| Leg Design
Each leg has 2 DOFs [degrees of freedom]. The front leg has shoulder and elbow joints,
while the back has hip and knee joints. The legs are designed to give mirror-image
movements, based upon natural animal movements.
8 standard R/C servos provide locomotion. These are Cirrus CS-71 ball-bearing Standard Pro
servos with Futaba J-connectors. They are 1.55"x1.40"x0.79", and provide 44 oz-in of torgue
at 6 vdc.
Since the weight of the unit is borne directly by the servo shafts, we chose servos with
dual ball-bearings, expecting them to hold up better than less expensive units with
simple bushings.
Eventually a ninth servo will be added for controlling body angulation during turns. At that
time, the upper and lower decks will be shortened, and a rotating carrier for the 2 front
servos will be mounted to the front of the frame. The ninth servo will operate this carrier.
The 4 out-board servos are mounted to the horns of the in-board servos using nylon ties.
In order to get correct leg movements, it was necessary to first position the in-board
servos to their proper angles before the horns were locked on. The lower leg segments,
at present, are simply #2 lead pencils connected to the horns of the out-board servos
using small #4 metal hose clamps. The erasers provide a modicum of traction on slippery
surfaces.
In addition, the patterns of wear are useful for evaluating asymmetries during development
of various gaits - similar to analysis of shoe bottom wear in humans.
Eventually the pencil legs will be replaced by something more sophisticated, with touch
sensors to signal when the ground or other objects are detected.
<| Weight Considerations
Measured Weights (using USPS scale):
Weigh is probably the critical factor in the design of a successful walker.
We haven't done a detailed analysis of forces and energy, but estimate the current lashup
should have a fair degree of headroom regards locomotive power.
The overall unit weighs 25 oz,
and the R/C servos provide 44 oz-in of torque. Considering that the legs always work in pairs,
this gives 88 oz-in to work with whenever movements are being performed.
As long as the limbs are kept under 4" in overall length, we should be able to move/lift
the unit fairly well with the legs in most orientations. And considering that the legs are
typically bent rather than straight out during most movements, we do not expect the servos
to encounter significant over-loading. We plan to test the limits soon.
It should be noted that successful locomotion in higher animals is partially due to the fact
that legs were "re-designed" along the way, and moved from an outward-projecting arrangement,
as found on arthropods and vertebrates like salamanders, to an orientation directly beneath
the body, as in dinosaurs, horses, dogs, and humans. This is discussed on our
comparative anatomy locomotion page.
When the legs can "accordion" and push directly upwards against gravity, movement is easier.
When the legs have to "lever" the body at a low angle, movement is more difficult.
This may be one reason why insects never grew to 200 pounds in weight.
Nico was designed with these considerations in mind. The legs are designed to work like
mammalian legs, pushing downwards against the force of gravity, rather than like
arthropod legs which essentially lever the body upwards. At rest when standing fully upright,
Nico's legs point straight downwards, and expend no energy.
The weight is borne by the axles, similar to mammals where it is borne by the bones of the
skeleton.
<| Controller Board
The controller board for Nico is mounted at the top rear
of the upper deck.
It was specifically designed by Oricom Technologies for use in small robotic projects
and for general embedded systems applications, and contains a 28-pin 2nd-generation PIC
controller chip - 16C62/63/72/73 or 16F873/876.
Low-level servo control is provided by a 28-pin PIC 16F876
multi-servo controller chip, also designed by Oricom
Technologies. It can control up to 16 servos simultaneously.
<| Distributed Nervous System-like Control
The firmware in the controller chip has been designed to give Nico a very large degree of
autonomous capability. An associated serial EEPROM stores routines for walking and
other complete movements.
A higher-level controller is actually not needed for basic operations.
The concept here is distributed control, similar to that occurring in the brain
and nervous systems of animals.
In the brain, successive layers of anatomy have been
added during animal evolution. Lower brain levels provide low-level control of muscles and
limbs and sensory organs. Higher brain levels sense the input from the lower, and in turn
send back control signals, which the lower centers translate into specific actions.
The highest brain centers do not specifically conduct detailed control, but rather orchestrate
the overall actions, which the lower centers carry out - similar to the difference between
the conductor controlling the overall actions of a symphony orchestra, and the players
performing the specific chords on their individual instruments.
Likewise, the firmware in Nico's on-board controller chip is being designed so that most of
the logic required for basic movements, such as standing, walking and turning, is contained
internally,
but so that global control of overall actions can eventually be bootstrapped to a higher-level
processor using
subsumption techniques.
<| Parts & Costs
So far, the costs for Nico have been as follows: 8 Cirrus CS-71BB servos at about
$12/ea, 5 NiMH batteries at about $2/ea, and under $10 for other materials.
Controller costs are separate - firmware development costs are significant if
considered on an hourly basis. A simple servo controller chip could be used here,
along with higher-level control using a Basic Stamp or OOPic.