1. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
A biomor ph snake-like robot
Re s e a rch, D evelopment a nd Behav iour
by
Anthony Hsiao
Department of Electrical and Computer Engineering, National University of Singapore
Department of Electrical and Electronic Engineering, Imperial College London
Imperial College London, National University of Singapore, July - August 2006 1
2. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Abstract
The field of robotics is as buzzing as never before, as new technologies allow
for more computing power to be packed inside ever more compact
autonomous systems. Much of research is concerned with developing ever
more capable humanoid or animal-like bio-inspired robots, which become
more alike their natural counterparts thanks to ever more capable digital
systems.
Analogue biomorph robots however underlie a different design paradigm, and
were introduced in the mid 1990s. They have particular appeal to scientists,
engineers and toy manufacturers due to their ability to survive in unstructured
environments and display emergent (unexpected, but 'desirable') behaviours,
while requiring a minimal number of electronic components.
This report describes the research and development carried out towards
creating a biomorph snake-like robot. Its analogue nervous network controller
makes use of an equivalent of only 40 transistors in total, in a spinal-chord-like
nervous system architecture, which is sufficient for the 9 degree of freedom
robot to display snake-like undulating motion. Furthermore, the robot displays
emergent behaviour when used in a slightly different configuration: Turned on
its side, the robot moves and crawls like a worm, and is able to climb out of an
enclosure, which is higher than the robot itself.
There is a lot of scope and room for future work and research to be carried out
on the developed robot, and indeed on the relatively new academic field of
biomorph robotics itself.
Imperial College London, National University of Singapore, July - August 2006 2
3. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Acknowledgements
Thank you to all those people who have helped me get this far and further,
both academically and otherwise.
In particular, i would like to thank Dr. Christos Papavassiliou for enabling me
to participate at the pilot exchange program, and Adrian Hawksworth and
Susan Tan for organising the exchange so well, and helping me out and
looking after my welfare all along.
Many thanks to Dr. Vadakkepat for accepting me as a summer exchange
student, for his flexibility, support, direction giving and enthusiasm towards
my field of work. My appreciation also goes to Prof. Al Mamun, who was the
second supervisor of the project.
I would also like to thank Dr Tang Kok Zuea, Mr Tan Chee Siong, Li Yu and all
other members from the Mechatronics and Automation Laboratory for
welcoming me and for their kind support.
I would particularly like to thank Tan Shin Jiuh for all his help and his
undivided attention, whenever i needed it. Although he would be too humble
to admit it, he has guided and advised me on too many occasions, and without
him, my robot would probably not be crawling at all. Thank you for the
inspiring and motivating conversations over tea, with little sugar.
I would like to thank my parents, Wendy and Tien-Wen for their unconditional
support and for opening so many doors for me.
Finally, my thanks go out to all those friends i met during my stay in
Singapore, who have truly made the experience worthwhile. In particular, i
would like to thank Alvin F. Law, Lester t. M. Poon, Colin W. Enderoud and
Francesco C. Mazzocchi-Alemanni. Special thanks goes out to Gita M. Tanna,
for her continuous support and passion, and for choosing such an appropriate
name for the robot. May we all remember the times we spent together in
Singapore, transforming our lives, unleashing our minds!
Imperial College London, National University of Singapore, July - August 2006 3
4. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Table of Contents
INTRODUCTION................................................................................................................. 5
RATIONALE – SO WHY BUILD A BIOMORPH SNAKE-LIKE ROBOT?...................................................... 5
AIMS AND OBJECTIVES........................................................................................................... 7
Aims........................................................................................................................................ 7
Objectives................................................................................................................................8
Key challenges........................................................................................................................ 8
BACKGROUND...................................................................................................................9
SNAKES, VERTEBRATES AND THEIR NERVOUS SYSTEM......................................................................9
Lateral Undulation.................................................................................................................. 9
Concertina ............................................................................................................................10
Sidewinding ......................................................................................................................... 10
On vertebrate locomotion and their Central Nervous System............................................ 10
NERVOUS NETWORKS........................................................................................................... 12
The Nv Neuron..................................................................................................................... 12
The Bicore.............................................................................................................................13
The Suspended Bicore..........................................................................................................13
The Master-Slave dual Bicore.............................................................................................. 15
Implex Feedback in Nervous Network Controllers............................................................. 15
THE ROBOT.......................................................................................................................18
ABSTRACTION..................................................................................................................... 18
ANATOMY..........................................................................................................................20
MODELLING AND SIMULATION................................................................................................22
Lateral Undulation or general wave-like motion.................................................................22
MECHANICAL DESIGN.......................................................................................................... 24
ELECTRONIC DESIGN............................................................................................................ 27
General Circuit Design Guidelines.......................................................................................27
The Pacemaker..................................................................................................................... 29
The Motor Neuron Module ................................................................................................. 32
EVALUATION....................................................................................................................35
NORMAL OPERATION............................................................................................................35
Discussion............................................................................................................................. 38
WORM-LIKE OPERATION....................................................................................................... 41
CONCLUSION................................................................................................................... 46
FUTURE WORK.................................................................................................................47
REFERENCES.....................................................................................................................48
APPENDIX I – LIST OF COMPONENTS.......................................................................... 50
Imperial College London, National University of Singapore, July - August 2006 4
5. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
I nt ro duc t ion
This report describes the work carried out during the Undergraduate Research OPportuntiy
(UROP) exchange placement between the faculties of engineering at Imperial College London
(IC) and the National University of Singapore (NUS), at the Centre for Intelligent Control (CIC)
at NUS, under the supervision of Assistant Professor Dr. Prahlat Vadakkepat.
From the three core competencies of the robotics research group, humanoid soccer robotics,
cooperative (soccer) robotics and biomorph robots, the latter was chosen as a field to pursue a
project in. The task to explore the marriage of biomorph robotics and nervous network control
with the design of a robotic snake emerged and is described in the following sections of this
report.
At first, a brief Introduction to the topic, starting with the Rationale for pursuing biomorph
robotics and the concrete Aims and Objectives as well as Key Challenges of this project, is
given. This is followed by an overview of relevant Background material, in which the two key
areas Snakes, vertebrates and their nervous system and some theory on Nervous Networks are
described. The following section on The Robot itself draws together key inspirations gained
from preceding sections, and the Abstraction performed as well as the robot's Anatomy,
Modelling and Simulation carried out to verify its operation and its Mechanical and Electrical
Design are described in detail. Finally, the work is assessed critically in the Evaluation, and
some Future Work is suggested, after the Conclusion rounded off this report.
Rationale – So why build a biomorph snake-like robot?
Research on robotics is more diverse than ever before, with reports of successful new and ever
more complex and capable robots making the headlines. The improvement in technology,
continuous miniaturisation and ever more powerful information processing capabilities have
revived the field and it has picked up momentum. While most robots employed in industry and
manufacturing are merely sophisticated purpose made machines, and relatively dumb, industry
as well as academia have been making good progress on intelligent and autonomous robots
and systems. Existing robots include toy robots such as SONY's robotic dog AIBO or the
famous Robosapien by Wow Wee Ltd., Honda's humanoid robot ASIMO (which is employed
at the Honda Headquarters as a receptionist!) or various football playing robots such as the
Imperial College London, National University of Singapore, July - August 2006 5
6. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
FIRA RoboWorld Cup winning Manus-1 humanoid, developed at the National University of
Singapore. The military have developed numerous autonomous Unmanned Aerial Vehicles
(UAV), which can be thought of as autonomous purpose built flying robots. While recent
trends and developments have been very promising, the scientists and engineers are still far
away from creating anything close to human-like intelligent machines, let alone robots that can
be integrated into our society; scenarios as portrayed in films such as 'AI' (Spielberg, Cubrick)
or 'I, Robot' (Proyas) where humanoid robots play an integral role in our future lives, remain
science fiction, for now.
The benefits to man of such robots are clear, and arguably, it is worthwhile pursuing research
in this area; at this stage of robot development and sophistication, dangers and potential
threats they could pose to humanity are best left to writers and philosophers, discussing these
here would go beyond the scope of this work.
However, there is a different school of thought, pioneered by Mark Tilden and his paper on
'Living Machines' [20], which explores the creation of robots as an attempt to create artificial
life, starting from simple creatures. Rather than creating complex humanoid (or otherwise)
purposefully build slave or helper robots, building living machines is about creating robots that
display the basic characteristics of simple living creatures, which do not necessarily have to
have useful (to the human) abilities (yet).
In particular, these so called biomorphs are autonomous, analogue, electro-mechanical devices
that are biologically inspired and built using minimalistic circuitry without microprocessors,
which will be explained in more detail in the section on Nervous Networks. These creatures
can display complex behaviours, resembling that of real (simple) animals through their highly
non-linear interaction with their environment, and their simple analogue nature allows for an
adaptivity and survivability that 'normal' digital robots can hardly match. These robots, it is
hoped, can also help to gain a better understanding of simple biological creatures and the
origin of their behaviour, or at least provoke a discussion on whether machines can be alive.
Therefore, studying biomorphs is very worthwhile indeed, both from a biological as well as
from a robotics point of view.
Snakes have fascinated people for millennia, with their smooth, seemingly effortless and
elegant motion which captivates observers, and their deadly poison and threatening
appearance, which still frightens many people. However, snakes share a long and relatively
Imperial College London, National University of Singapore, July - August 2006 6
7. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
well documented history with man, including appearances in the old testament, ancient
Egyptian mythology or Chinese medicine.
However, snakes still have a lot to offer, and studying serpentine (i.e. snake-like) locomotion
and the underlying neural mechanisms is believed to fill gaps in evolutionary knowledge. It is
established knowledge that terrestrial legged locomotory gaits evolved from aquatic swimming
gaits, however details of this transition are still subject to controversy. Decoding the underlying
mechanisms of serpentine locomotion in itself can be interesting, but is also hoped to shed
light on the changes to the neural mechanisms that were necessary to enable life to make the
transition from aquatic swimming to terrestrial walking.
To date, most commercial applications that have derived from snakes have been in the luxury
goods industry, through skinning them and making expensive shoes, bags or purses. However,
serpentine locomotion can potentially find commercial applications in different fields of
robotics, where 'conventional' robots fail. Successful snake-like robots have many advantages
in terms of size or shape over wheeled and legged robots, for example in environments with
tight spaces, long narrow interior traverses such as pipelines, nuclear power plants or loose
terrains such as earthquake sites.
Advancing the studies of snake-like robots is indeed worthwhile for various reasons, although
the work as this stage is foundational and far from to being concerned with different robotic
applications.
Aims and Objectives
The initial task of exploring biomorph robotics and the application of nervous network
controllers on a snake-like robot is manifested in the following three project aims, which are
hoped to be achieved through completing the following objectives.
Aims
To build a simple, autonomous snake-like robotic platform to study nervous network
control for snake-like motion
To investigate a nervous network configuration able to achieve snake-like motion on
this robotic platform
To provoke the reader's thoughts on life and artificial life manifested through robots
Imperial College London, National University of Singapore, July - August 2006 7
8. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Objectives
1. Devise, and verify through simulation, a simple and realisable physical model for a
robot capable of displaying snake-like motion
2. Seek inspiration from biological systems and their nervous system to design a nervous
network controller to realise the physical model above
3. Manufacture hardware and assemble the robotic platform
4. Calibrate the controller to suit the underlying robotic platform
5. Assess the survivability of the artificial life form created
Key challenges
The existence of snakes and other snake-like creatures shows that it is possible to achieve this
kind of complex behaviour through neural control. The challenge for biomorph robotics is to
reveal or propose bio-inspired models of these underlying mechanisms, and to apply them to
real robots. As will be described in the section on Nervous Networks, a critical factor for
success is the harmonic interplay between robot body and controller, and unsuitable
mechanical design can deny an otherwise sound controller to be successful. For this heavily
time constrained project, the key challenges are believed to be as follows:
To find a simple enough biological model for an artificial nervous system (nervous
network) capable of achieving the desired behaviour
To design an appropriately simplified nervous architecture for the robot body
To complete the work, or achieve key milestones towards completion of the project, in
the short amount of time
Imperial College London, National University of Singapore, July - August 2006 8
9. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Backg round
There are two key areas of research that this work is sourcing from, the study of serpentine, i.e.
snake-like, locomotion and the field of biomorph robotics. The following section describes
relevant background material on both topics.
Snakes, vertebrates and their nervous system
The snake is a vertebrate, an animal with a backbone, and has the largest number of vertebrae
of any animal: between 100-400 vertebrae depending on the species. Unlike most other
vertebrae, their skeletal form and structure is quite simplified and only has three types of
bones: skull, vertebrae and ribs. This simplicity of a repeated structure and the relatively limited
motions between adjacent pieces can be compared to robot modularity, and are worthwhile to
keep in mind for later mechanical design.
Although snakes and other limbless animals have been studied for centuries, little research has
focused on the detailed mechanics of serpentine locomotion. However, qualitatively, there are
several broad classes of limbless locomotion, including concertina, lateral undulation or
sidewinding, amongst other less common forms, described below.
Lateral Undulation
The most frequently used form of snake locomotion is called
lateral undulation, which is also the most primitive, and is what
most people can relate to, when thinking of snake motion.
During lateral undulation, a wave propagates down the snakes
body, which pushes against irregularities of the ground it is
moving over to generate a forward force strong enough to
overcome sliding friction, as shown in Figure 1. All points
along the body of the snake follow a more or less identical
sinusoidal path [8]. It is unsuited for smooth, low-friction
Figure 1: During lateral undulation,
surfaces and narrow corridors, and not suited for shorter and the snake uses continuous sliding
contacts to propel the body
stouter, or large heavy-bodied snakes.
Imperial College London, National University of Singapore, July - August 2006 9
10. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Concertina
Concertina locomotion is usually performed in confined spaces
or tunnels, or other places where large amplitude undulation
cannot be performed, like tree trunks. During it, a part of the
snake's body is stable, for example wrapped around a trunk or
spread inside a tube, while the rest of the body is moving
forwards. It is best summarised by Figure 2. This motion
derives its name from the accordion like instrument, for
obvious reasons.
Figure 2: Concertina locomotion is
usually used in confined spaces
Sidewinding
Sidewinding is a type of locomotion most often used by snakes that move across lose grounds,
such as desert sands or tidal mud flats. The method of movement is derived from lateral
undulation, and is very similar, in spite of appearances. It is like lateral undulation in 3D, where
there are only a few points of contact between
the snake and the ground, where the contact is
not sliding, but static, rather like rolling a wheel
or bent rod over the surface. Thereby, the head
can appear to leap forwards. Because the
snake's body is in static contact with the ground,
imprints of the snake body can be seen in the
tracks, and each track is almost exactly as long
Figure 3: Sidewinding is like lateral undulation in 3D,
as the snake, as shown in Figure 3. A through with rolling contacts between a few points of the body
and the ground
review of snake motion can be found in [3].
On vertebrate locomotion and their Central Nervous System
Apart from studying snake's different locomotion gaits, it is necessary to have a closer look at
where these are generated: the nervous system.
The vertebrate central nervous systems (CNS) generally consist of two parts, the brain and the
spinal chord. Therein, the brain is generally attributed to, amongst others, higher level,
cognitive and decision making functions, for humans more so than for other vertebrates, while
the spinal chord performs routing and is responsible for our reflexes and motor functions. The
Imperial College London, National University of Singapore, July - August 2006 10
11. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
different animal locomotive gaits can be very complex and move many DOF through rhythmic
excitation of muscles.
This type of motion stands in stark contrast to most man made machines' forms of motion,
which tend to be continuous and have few DOF, like propellers, jet engines or wheels. Animal
locomotion needs to be well coordinated in order to work, and indeed it is, as we can see every
day in real life or on TV. In general, locomotion is controlled by the interaction of three
components: 1. spinal central pattern generators (CPGs), 2. sensory feedback, and 3.
descending supraspinal control [6].
CPGs are circuits which can generate rhythmic activity without rhythmic input, and can often
be initiated by simple electric or physiologic stimulation. These CPGs are located in the spinal
chord, distributed across different oscillatory centers. The lamprey, and eel like fish, for
example has a CPG chain of approximately 100 segmental oscillators distributed from head to
tail [6].
Sensory feedback is essential for shaping and coordinating the neural activity with the actual
mechanical movements. The main sensory feedback to the CPGs is provided by built-in sensory
receptors in joints and muscles. It is especially important in higher vertebrates with upright
posture such as mammals, because the limbs of those vertebrates play an important role in
posture control (i.e. supporting the body) in addition to locomotion. A whole set of reflexes
exist to coordinate neural activity with mechanical activity, which we observe literally with
every blink of an eye [6].
Supraspinal control, then, is the control that initiates and modulates locomotion through
descending pathways from higher order locomotor centers inside the brain or the spinal chord.
Put simply, when a certain locomotive gait is required, either dictated by a reflex or a higher
cognitive decision, a command sent by one or more of these locomotor centers propagates
down (e.g. from head to tail) a signal that addresses the right CPGs and thus initiates the
desired gait [6], [16].
The above paragraphs capture the relevant aspects of snake and vertebrate locomotion, and,
simplified, their underlying neural control mechanisms. By now, it should have become clear,
that the existence of reflexes, especially complex reflexes such as suddenly jerking back when
getting burned, demonstrate, that motion, or locomotion, does not necessarily require high
level cognitive processes, but can be a product of coordinated, but mechanistic, interaction of
Imperial College London, National University of Singapore, July - August 2006 11
12. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
CPGs within a nervous system.
Nervous Networks
Nervous network technology is based on a patent by Dr. Mark Tilden, which describes a self-
stabilizing control circuit that utilizes pulse delay circuits for controlling the limbs of a limbed
robot [21]. In the following sections, the reader will be introduced to the Nv Neuron, the
Bicore, the Suspended Bicore, the Master-Slave dual Bicore configuration and Implex
Feedback in nervous network controllers.
The Nv Neuron
The basic pulse delay circuit acts as an artificial neuron, also referred to as Nv Neuron (nervous
neuron), and is the basic building block of a nervous network controller, as shown in Figure 4.
It only consists of one resistor, one capacitor and an inverter (depicted with Schmitt trigger, but
that is not a necessity), and has a time constant = RC . Qualitatively, its operation is as
follows:
1. Assuming a stable initial condition, where the input has
been low for a long time, so that the capacitor is
uncharged, the input to the inverter is low, the output is
high, and there are no currents flowing. Figure 4: a nervous neuron
2. The input voltage changes from GND to Vcc and stays high. It will instantaneously raise
the resistor voltage to high, which is also the input to the inverter, so the output is low.
3. Now, as there is a voltage across the resistor, current starts flowing, charging the
capacitor. The voltage across the resistor decreases exponentially as the voltage across
the capacitor increases (assuming no current is flowing into the inverter).
4. Once the input voltage to the inverter has decreased to its switching threshold after a
time tp, it is pulled down low, and the output is high.
5. Resetting the input to low does not have an effect on the output of the neuron after it
has finished 'firing', whereas resetting the input while the neuron is firing would
immediately reset the output.
Essentially, what happened is that a step input to the neuron has stimulated it to fire an active
low pulse at its output, with duration tp, which is directly proportional to the time constant of
Imperial College London, National University of Singapore, July - August 2006 12
13. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
V i
the circuit, such that t p= RC ln . A more detailed analysis of this circuit is omitted here,
V th
as the actual circuit does not behave exactly as the equations predict, as will be outlined later,
and the qualitative understanding of it being a pulse delay element is sufficient to proceed. The
interested reader may consult [23], [9], [18] or [26] for more detailed information.
The Bicore
Of more interest here than the simple Nv neuron is the so called bicore, a self oscillating
arrangement of two Nv neurons connected together in a circular topology, as shown in Figure
5. Qualitatively, the analysis is similar to that of a single Nv neuron, but with the difference
that the input applied is not a step input, but a square wave. Let's consider a single Nv neuron
again, with a rectangular wave at its input:
1. Initially, the input is low, and the output is high.
2. The input goes high, the neuron fires and the output
is low for a time tp (proportional to the neuron's
time constant), and goes back high.
Figure 5: The Bicore is an arrangement
3. The input goes back low after a time greater than tp, of two Nv neurons connected in a circular
topology
where nothing happens to the output, it stays high.
4. If the above procedure repeats, it can be appreciated, how the output of the Nv neuron
is a rectangular wave with a certain period and duty cycle, that depends on the
rectangular input wave.
5. Now, if the input to the Nv neuron comes from another Nv neuron, which in turn is
driven by the original neuron, i.e. they are arranged in a ring like topology as shown in
Figure 5, then the output at either of the two neurons is a square wave (in antiphase), if
the capacitors and the resistors each have the same size. (changing the ratios of the two
time constants of the two neurons can change the duty cycle and period of the bicore,
but this is not of interest here).
The Suspended Bicore
A modification to the bicore is the so called suspended bicore, as shown in Figure 6.
Essentially, the suspended bicore has the same circuit as the normal bicore, but with the two
resistors connected together, instead of being grounded, generating square wave at the inverter
Imperial College London, National University of Singapore, July - August 2006 13
14. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
outputs. A brief but more thorough analysis of its operation here (a comprehensive description
of the circuit can be found in [2]):
1. Initially, both capacitors are completely discharged, Vi1 is
low, therefore Vo1 is high, and Vi2 is high, therefore Vo2
is low. C1 and C2 are equal.
2. There is a potential difference across the resistor, so a
current starts to flow from Vi2 to Vi1, charging C1 and
C2.
Figure 6: The suspended bicore
3. The voltages Vi1 and Vi2 increase and decrease
respectively exponentially, until one of them reaches the threshold voltage (Vcc/2) and
triggers its respective inverter to change the output. For arguments sake, let Inv1
change (maybe only a fraction of a second) first, and Vo1 goes low, pulling Vi2 down
with it, which triggers Inv2, so that Vo2 is now high.
4. Assuming that voltages only move within the range of Vcc and GND, Vi1 and Vi2 are
now high and low respectively, and the whole process repeats, but with current flowing
the other way through the resistor, discharging the capacitors.
It can be appreciated, how the suspended bicore is also generating square waves at its neurons'
outputs, which have a period depending on the RC values. However, there are a few interesting
properties of this suspended bicore that are worth pointing out:
1. According to the mathematical model to describe the operation of the suspended
bicore, it actually should not work if C1 and C2 are equal, because the voltages at Vi1
and Vi2 would symmetrically approach Vcc/2 asymptotically, so never actually reach it.
2. In reality, there is some noise on the wires, which can indeed be just large enough to
push one of the input voltages over the inverters threshold.
3. In practice, no two Capacitors are of identical capacitance, so inevitably, one of them
will reach Vcc/2 before the other one.
4. Even if the capacitors are not the same, the duty cycle of the circuit is still 50%.
5. When the inverters just change their output, Vo1 and Vo2 are actually -Vcc/2 and
1.5Vcc/2, which is why input protection diodes, which are common in commercially
available logic chips, are essential to protect the device from over- or undervoltage.
Imperial College London, National University of Singapore, July - August 2006 14
15. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
6. The exact period of this circuit's output signal is very sensitive, and depends on the
configuration within which the suspended bicore is used. It is of the order of
magnitude of RC.
The Master-Slave dual Bicore
A popular use of the suspended bicore is in the Master-Slave configuration, Figure 7, where the
suspended bicore can be thought of as a pacemaker to the rest of the circuit. This arrangement
can be thought of as a normal bicore, with it's normally grounded resistors connected to the
output of a suspended bicore. The master is the suspended bicore, oscillating away at a fixed
period (which is different to when the same
suspended bicore was running in isolation), while
the slave is the normal bicore, with its operation
dictated by the master via the coupling resistors.
Again, a detailed account of the operation of this
circuit can be found in [2], and will not be
Figure 7: Master-Slave configuration with a
reproduced here. A qualitative understanding of suspended bicore
its operation is sufficient.
Both bicores produce square waves at their respective outputs, where the outputs of the slave
have a delay ∆t on the master outputs, that is given by the coupling resistors and capacitors (or
can be measured). Their frequencies and duty cycles are otherwise the same. It can be
appreciated, that the period of this circuit, i.e. the period of the master bicore, is shorter than if
the master was operated on its own, because the coupling resistors introduce an extra path for
the charging and discharging currents, thereby accelerating the charge or discharge of the
capacitors, and hence resulting in a faster oscillation, as the threshold voltages are reached
earlier. The master-slave arrangement is commonly used to control quadruped walking robots,
i.e. robots that have four legs.
Implex Feedback in Nervous Network Controllers
Using the basic building block of nervous networks, the Nv neuron, many different
conflagrations and control networks can be achieved, and popular arrangements go beyond the
bicore, but include networks with four, six, eight or more Nv neurons. But what is it, that make
Nv nets so special?
Imperial College London, National University of Singapore, July - August 2006 15
16. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
First of all, they are simple and cheap. Using a few standard components, complex control
patterns can be generated using nervous network technology.
Furthermore, these networks are so sensitive on their topology and external connections, in a
way that allows them to display adaptivity. As illustrated on the example of the master-slave
configuration, where the presence of the slave bicore reduces the oscillation period of the
suspended bicore (compared to isolated operation), the nervous network controllers react to
the load connected to their outputs; the slave bicore can be thought of as a non-linear load on
the suspended bicore.
The (non-linear) load of a nervous network controller, which commonly comprises mechanical
actuators such as motors, has an effect on the operation of the controller itself, which in turn
controls the way the load behaves. Also, the environment that the actuators interact with has
an effect on the actuators itself, for example moving up a steep slope has a different loading
condition on a motor than moving over horizontal ground. Then, for example, a motor would
draw more current from the supply rails, which has an effect on the Nv neurons, which are also
fed through the same supply rails (supply rail feedback). All this together results in a complex,
non-linear interplay between the controller of the robot and its environment, as depicted in
Figure 8, and it is adaptive, because the controller can react to the environment, e.g. by
increasing the period of oscillation of a pattern generator.
Actuators are a load Controller Drive
to the controller actuators
Actuators Actuators
Environment is Environ- Move robot within
loading the actuators ment environment
Figure 8: Complex, adaptive interaction between the nervous network controller and its
environment
Imperial College London, National University of Singapore, July - August 2006 16
17. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
The nervous network controller can be thought of as trying to converge towards an optimal
state, wherein the optimality condition is determined by the mechanical body of the robot, the
topology of the nervous network and the environment encountered. It is important to ensure
that the mechanical body is such, that it has a solution for the nervous network to converge to.
A badly (for example asymmetrically) designed robot body would not have a solution gait that
the nervous network could converge to.
Under certain circumstances, where the controller is in harmony with the mechanical
configuration and the encountered environment, a robot with a nervous network controller can
display emergent behaviour, which is unexpected, but desirable behaviour. This could include
the ability for a robot to climb or avoid obstacles, or to display other characteristics usually
attributed to living creatures such as dynamic group behaviour.
Furthermore, in the words of the inventor,
“Autonomous legged creatures, to move and react effectively within their environment,
require precise synchronizing control circuitry and the ability to adapt to new conditions
as they arise. [...] attempts to create such a device have involved elaborate
arrangements of feedback systems utilizing complex sensor inputs and extensive
control and sequencing circuitry hard-wired to one or more central processors. Such a
robot is extremely complex and expensive to build, even to accomplish very simple
tasks. Moreover, due to the complexity of such a device and its heavy reliance on a
central processing system, power requirements are enormous, and a relatively minor
problem, such as injury to a limb, is likely to cause total system failure. Such walking
devices are accordingly impractical for other than experimental or educational
uses.”[21]
Nervous network technology can be very powerful, and has several unchallenged advantages
over 'conventional' microprocessor control used for robotics. Through its adaptivity, it gives a
robot the most basic but also most important ability, which is the ability to survive in an
unstructured environment.
Imperial College London, National University of Singapore, July - August 2006 17
18. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
T he Rob ot
The underlying design principle for the robot is simplicity. The reason for choosing nervous
network technology to control it is twofold, its ability to display complex and adaptive
behaviours on one hand, and its tremendous simplicity on the other. The following sections
first describe abstractions performed to simplify the problem, the robot's anatomy, i.e. its
conceptual architecture, performed simulations to verify this architecture, and finally the
robot's detailed electrical and mechanical design.
Abstraction
In order to address the problem of building a biologically inspired snake like robot, an
appropriate abstraction from a real snake has to be performed. In particular, one motion
scheme shall be determined for implementation, and the robot's complexity in degrees of
freedom and approximate dimensions be chosen.
The section above introduced three common forms of snake locomotion, namely lateral
undulation, sidewinding and concertina motion. Out of these, sidewinding is too complex for
simple implementation, as it would require the robot to be able to leap forwards, and careful
balancing would have to be applied for it to move in 3D. It would also place a lot of emphasis
on mechanical design, and therefore goes beyond the scope of this work. Concertina is similar
to lateral undulation in some ways, but also more complex to implement on a robot. It would
also restrict the robot's motion to confined spaces. Lateral undulation however is potentially
suitable to be implemented using a simple controller, as it is the most simple motion scheme
observed on real snakes. Thus, the robot shall imitate lateral undulation as target motion
scheme. Indeed, not only one particular curve, but any snake-like undulating motion of the
robot’s body shall be a satisfactory form of motion.
Intuitively, any snake-like robot will consist of a chain of links coupled or hinged together. The
degrees of freedom the robot has is thus the number of moving joints between these links;
clearly, the more degrees of freedom it has, the higher its complexity is in general, and in this
case of a snake-like robot, the more smoothly the robot will be able to move. The robot body
with its links can be thought of as sampling a smooth snake-like curve, and the more samples
there are, the more closely to the original (i.e. the snake) it can be, and surely enough, in spirit
Imperial College London, National University of Singapore, July - August 2006 18
19. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
of the sampling theorem, there is a certain minimum number of links, below which the robot is
guaranteed to fail. However, it is not attempted here to find an equivalent expression.
Here, as the length or size of each link is not yet specified, the number of links in the model
does not affect the total length of the robot, as shown in Figure 9. In choosing an appropriate
number of links, there is a trade off between robot (and circuit) complexity and motion
smoothness. (An impressive resource for robotic snakes is given by [22], and Dr. Miller's S2
snake robot has a sufficient total of ten degrees of freedom allowing the robot to move very
smoothly). An educated guess is made, and nine links and thus nine degrees of freedom is
chosen, which is believed to be more than sufficient to allow for smooth snake-like robot
motion.
Intuitively, snake-like undulating motion can be achieved by such a chain of links and joints by
propagating a wave down the chain. Nervous network controllers are simple controllers, where
commonly used control signals include 'on-off'
(i.e. Vcc or GND) or 'forwards-backwards' signals,
suitable to drive DC motors, and are 'tapped' off
the output nodes of the network. In this
application, motors could be used directly as
joints, and the nervous network be used to
control these motors, e.g. switching them on and
off, or driving them clockwise and anticlockwise.
Such a chain of linked motors could then be used
to drive the robotic snake body, where each of
the joints in Figure 9 could represent a motor. Figure 9: A snake-like robot can be thought of as
sampling a snake-like curve. a) a snake like curve b)
The challenge then is to determine the correct set robot with high degree of freedom c) robot with small
degree of freedom, both sampling the snake-like curve
of control signals the nervous network has to
produce in order to liven up the robot. Once this is achieved, further investigation into turning
mechanisms as well as successful forward locomotion are necessary to complete the first
objective.
Assuming a robot is able to survive in a given environment, i.e. it does not need permanent
human intervention for maintenance or otherwise (otherwise there is not much autonomy to be
had), it will only need a navigation strategy (as there shall be no remote human control) and
Imperial College London, National University of Singapore, July - August 2006 19
20. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
sufficient power in order for it to be autonomous. As far as power requirements are concerned,
a suitable battery should be sufficient to enable the robot to survive, while the nervous network
controller is assumed to be able to handle and adapt to complex terrains, come what may
(within reason). This is coherent with [16], [17] and observable behaviour of most insects, fish,
worms or other 'simple' life forms; without clear (obvious) high level navigation strategy, these
animals appear to just exist; they roam around reacting to external events that trigger reflexes;
if there is an obstacle, they avoid or overcome it, if there is a threat, a reflex 'tells' them to flee
or confront. In a similar fashion, it is legitimate for the robot's navigation strategy to comprise
indeterminate roaming with robust terrain handling abilities, derived from the interaction of the
nervous network controller with the mechanical body and it's environment.
Anatomy
So what should the robot look like? The work done here tries to draw its inspirations from
nature, so the robot shall have an anatomy similar to a snake's anatomy. This is obvious, as it is
a snake-like robot, but what is meant here, is that the robot should, apart from looking like a
long flexible trunk, have a neural architecture that controls the behaviour of it. Disregarding
possible cognitive processes that happen within a snake's brain, and focusing purely on it's
locomotive mechanisms, the robot shall use a nervous network controller that serves as an
artificial CNS with central pattern generators dictating the locomotive reflexes, which,
combined, result in lateral undulating motion.
A variation of the master-slave bicore configuration, namely one master with nine slaves, one
slave CPG for every joint, can be used to achieve just that. Each slave bicore is a spinal CPG
itself and represents a local motor neuron dictating the motion of exactly one joint, while the
suspended bicore can be thought of as providing the supraspinal control necessary to initiate
and dictate the (motor-) neural activity; it functions as a pacemaker.
There are two obvious possible resulting neural architectures that could be adopted here, one is
a centralised, 'parallel' 'star' configuration, the other one a decentralised, 'serial' or 'line'
configuration, as shown in Figure 10. For each of the configurations, the pacemaker and the
CPGs interact with each other though certain relationships or coupling methods.
In the star configuration, the relationships all have to be different, so as to accommodate the
required phase that each CPG has to have with respect to its predecessor, while the line
Imperial College London, National University of Singapore, July - August 2006 20
21. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
configuration allows for the relationships to be identical. This allows the circuit, and the robot
itself, to be more modular and simple. Furthermore, the line configuration resembles the CNS
of a vertebrate more closely, with supraspinal control propagating down the links. Also, from a
circuit point of view, the decentralised line configuration may be more advantageous, as each
CPG is coupled to its two nearest neighbours and is the master of one slave, whereas in the star
configuration, there is no direct coupling between two consecutive CPGs, and only the
pacemaker is the superior master. It is intuitive, that an external factor which affects one link
should also affect the links closest to it; this feature can be advantageous.
Again, as there is no better knowledge about the exact topology of spinal CPGs in real animals,
an educated guess has to be made, and for the reasons and advantages mentioned above, the
serial line configuration is chosen as nervous architecture.
Following the nervous architecture, the output or control signals from the nervous network
controller are taken directly off each bicore (excluding the pacemaker), and are square waves
with a given phase, determined by the coupling resistances of the slaves. Conveniently, these
can be used to drive or control DC motors, and thereby switching them forwards and
backwards periodically. Is a chain of such switched DC motors, i.e. constant angular velocities
Alternative Nervous Architecture
A. Star Configuration B. Line Configuration
CPG Pacemaker
CPG
Rel 1
Rel 9 Rel 1
CPG
Rel 2 Rel 3
CPG Rel 2 CPG CPG CPG
Rel 8
Rel 4
Pacemaker CPG
Rel 7 Rel 3 Rel 6 Rel 5
CPG CPG CPG
CPG
Rel 6
Rel 5 Rel 4 Rel 7
CPG Rel 8 Rel 9
CPG CPG CPG CPG
CPG
Figure 10: Two alternative nervous architectures: A. a parallel star configuration, B. a serial line
configuration
Imperial College London, National University of Singapore, July - August 2006 21
22. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
(in the ideal case) sufficient for undulating motion? Indeed it is, on a basic but sufficient level,
as will be verified in the section on modelling and simulation.
Another important consideration about the robot's anatomy is the power supply. Again, two
obvious architectures are possible, namely to have one central battery or power supply where
all modules, i.e. CPGs and motors, source from, versus a decentralised power supply, where
each module has its own power supply. Here, the consensus is, that one power source is the
better choice, so as to make sure that enough power rail feedback and interaction can happen.
In a distributed power system, this would not be possible, which, to some extent, defeats the
purpose of using a nervous network controller.
Modelling and Simulation
Before diving into practical adventures with a soldering iron, an appropriate simulation can
help to verify or reveal flaws about the above abstraction. In this case, it is worth verifying
whether the chain of phase shifted square waves controlling DC motors would indeed result in
undulating motion. Furthermore, certain parameters such as required period or delay could be
extracted from the simulation, saving possibly tedious practical experimentation. This section
describes relevant efforts undertaken to verify that undulating motion can be achieved, some
relationships extracted from the model with regards to the delay necessary in order to achieve a
certain wave.
Lateral Undulation or general wave-like motion
From the abstraction above, the robot can be modelled as a chain of links joined together. At
each joint, a DC motor provides an alternating torque or angular velocity (depending on how
you look at it), which is controlled by a square wave signal, dictating it to go clockwise or
anticlockwise. To achieve the desired wave like motion from this, only a few parameters have
to be set. But first of all, the desired wave has to be determined.
Real snakes are very long and, when wound or curled up, feature several loops. Also, when
moving, real snakes have far more flexibility than the 9 DOF robot proposed here, and usually
display a propagating wave with several peaks and troughs. When thinking back of the analogy
to the sampling theorem however, it is obvious, that with 9 DOF, or nine samples, the wave on
the robot's body cannot be much shorter than it's length. So how long should the wave be?
Imperial College London, National University of Singapore, July - August 2006 22
23. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
To address this, the robot of unit length can be considered
as displaying a standing wave of wavelength λ. The
shorter it is, the more peaks and troughs are there on the
robot's body. As shown in Figure 11, this has significant
implications on the 'snake-like-ness'. A balance between
the robot's physical length and the wavelength has to be
found. Arbitrarily, but intuitively, a wavelength of about
0.66 robot lengths, such that there are 1.5 wavelengths
propagating through the robot's body, is chosen.
Figure 11: What wave should propagate the
The implications on the phase between the individual robot's body?
square waves are as follows. If the first joint is used as reference, then phase shift between
successive joints' square waves should be such, that they add up to 150% on the 9th link, if 1.5
waves worth are to be standing on the robot. Therefore, Joint Phase Shift
each shift is s = 150% / 8 = 18.75% between two 1 0.00%
successive joints, as shown in Figure 12. The time delay 2 18.75%
3 37.50%
between two square waves is then sT seconds, where T is
4 56.25%
the period of the square wave. As a matter of fact, the 5 75.00%
exact matching of these phases does not matter, but is a 6 93.75%
fair starting point. If the robot had 1.4 or 1.6 wavelengths 7 112.50%
8 131.25%
on its body, it would still be acceptable, especially as
9 150.00%
1.5λ was chosen arbitrarily. Figure 12: Phase relationship between joints
The symmetric and continuous wave motion displayed by the robot relies on the square wave
signal to be of 50% duty cycle. Every flat top or bottom of the signal represents the motor
going in either clockwise or anticlockwise direction for the given time (i.e. with 50% duty
cycle, the motors are turning in either direction for half the period of the signal). Clearly, the
period of the signal and the (assumed constant in an ideal case) speed of the motor have to be
balanced such, that the robot does not curl up at once (if the motors are too fast, or the period
too long, or both). On the other hand, the period and motor speed should not be too short or
slow either, otherwise, the robot body would hardly move, but only vibrate. Assuming that a
driven DC motor under no load generates a constant angular velocity, the whole system was
modelled using Nastran, a physical modelling software. Therein, a chain of blocks resembling
Imperial College London, National University of Singapore, July - August 2006 23
24. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
motors coupled together by joints with applied angular velocities would represent the robot.
The nervous network controller generates a square wave (ideal case), which drives the motors,
so each joint motor in the Nastran simulation receives an angular velocity square wave, as in
Figure 13, with given phase relationship as defined above, from an input file generated
manually.
Without going into unnecessary detail, inspection of the video generated by the simulation did
indeed display a propagating wave that enables the chain of blocks to move in a wavelike
form, with about 1.5 wavelengths displayed. The simulation was run using several different
periods, all yielding the same motion, but at different speeds, as expected.
Simulated Phase Shifted Signals
Figure 13: Simulated phase shifted signals to four joints/motors (not to scale)
Mechanical Design
The robot as abstracted should work; the simulation confirmed this. However, this was done
for a general case, and verified the concept (that a sequence of phase shifted square wave
signals driving DC motors should result in undulating motion) rather than any particular robotic
design. As mentioned earlier, the nervous network controller can be thought of as interacting
with the robot's environment through its body. For a moving robot, this means that a desired
Imperial College London, National University of Singapore, July - August 2006 24
25. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
and stable gait can only be achieved by the controller, if the mechanical body allows for one. If
that is the case, then the network will converge to a stable solution.
Some tolerances can be handled through its adaptivity. If, for example, the network and the
body are not exactly well matched, as it is likely to be the case (and it is very difficult to pre-
determine analytically what parameter settings are required to achieve a harmonic interplay
between controller, robot body and environment), then the network may still be able to
produce a useful gait, as the environment feeds back to the network through external loading
of the actuators, thereby affecting the state of the network. It should be noted, that to date,
there is no know methodology to design or engineer nervous network controllers to
mechanical bodies, which makes 'tuning', or rather 'manually evolving' the robot, as well as a
healthy amount of engineering gut feeling, rather useful.
Following the design philosophy of simplicity, it would be desirable to manufacture the robot
from as few mechanical parts as possible. Using 'hacked' servo motors, a modular and simple
but appropriate mechanical design was achieved, as follows.
Servomotors are widely used in robotics, due to their strength, accuracy, agility and
compactness. However, they also offer another advantage that shall be exploited here: their
casing. For the application here, a simple DC motor would do the job, as all that is required is
simple alternating rotational motion. However, ordinary DC motors are far too fast, and
possibly too weak for this application, while ordinary available geared motors are usually very
bulky. A servomotor on the other hand is basically a highly geared, compact DC motor with a
control unit. By hacking the servo and removing the control electronics, a simple highly geared,
slow, strong and, most importantly, conveniently packaged DC motor is obtained, which is
exactly what is required for this application.
The Futaba S3003 servo motor, Figure 14, was chosen, as it was the
slowest motor in its class, with a rated 0.23 sec/60° at 4.8V. The box-
like casing (41mm x 20mm x 36mm) of the motor hardly needs any
modifications, and nine of these can be used as the robot body
directly, when linked together. The flat side of the body is suitable for
attaching small circuit board to, and overall, a very modular design
can be achieved. In fact, as was determined experimentally, the motor Figure 14: Futaba S3003
servo motor, from
is still too fast at the rated 4.8V, which is why the supply voltage to www.futaba-rc.com
Imperial College London, National University of Singapore, July - August 2006 25
26. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
the robot will have to be reduced, slowing down the motor and reducing its torque by tolerable
amounts.
The mechanical links between the motors are made from
simple (scrap) pieces aluminium, cut to shape, and were
manufactured manually. Here, it is important to keep the links,
as short as possible, in order to minimise the distance between
two neighbouring servos, thereby reducing the torque coupling
of each motor to the rest of the body.
As it is, the robot body is very simple, consisting of nine
hacked servo motors linked together by short and light
aluminium links. It is desirable to attach wheels to the servo
cases, so as to provide differential friction, i.e. low, rolling
Figure 15: Mechanical aluminium
friction along the long side of the servo, and a lot of resistance links connecting the servos together
to motion (against the wheel) sideways to the servo. Without wheels, the robot just 'slides on
its belly', which is not very ideal. First of all, the servo casings are not suitable for sliding, and
secondly, and more importantly, there are no constraints for the motion. Without wheels, the
robot's lateral interaction with the environment is not constrained, and the solution space for
the nervous network controller is (essentially) infinitely large. It would be very unlikely that the
controller managed to converge towards a stable gait without any constraints on the
mechanical motion of the body. Adding wheels however would discourage motion in the
sideways direction, and encourage motion in the longitudinal direction, narrowing down the
solution space and thereby assisting the nervous network controller to converge. Unfortunately
however, there was not enough time to add wheels to the robot body, which is the first item
for future work. The consequences of the lack of wheels, and alternative solutions, will be
discussed in another section. A picture of the assembled robot body can be seen in Figure 16.
Figure 16: Nine servos linked together to form the basic robot body
Imperial College London, National University of Singapore, July - August 2006 26
27. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Electronic Design
The previous section on abstraction has developed the plan for the robot, the implementation
of the easy part was described in the section on mechanical design above. Here, the crucial
part, the nervous network controller, will be developed and described in detail.
The nervous network controller, also referred to as the Artificial Central Nervous System
(ACNS) of the robot, follows the line configuration as explained above, and consists, thanks to
its modularity, of only two different types of circuits: a pacemaker and a motor neuron module
(MNM). These are realised using a variation on the master-slave dual bicore arrangement,
where the pacemaker is a suspended bicore, and the MNMs are ordinary bicores, coupled to
the pacemaker or the predecessor MNM respectively. Each of the nine motors will have one
MNM, while the pacemaker is independent.
General Circuit Design Guidelines
There are some circuit design concepts, that are common to both pacemaker and MNM, and
are as follows:
Use LEDs for visual inspection
In total, the ACNS will consist of ten different circuit modules, and using a standard
measurement device such as an oscilloscope to verify its operation is impractical.
Instead, circuit modules shall feature LEDs that flash according to the generated motor
square wave, for visual inspection.
Keep circuits variable
As the controller will have to be fine tuned to suit the body, both the pacemaker and
each MNM should have some degree of flexibility. In particular, this means, that the
pacemaker should allow for its period, and the MNMs for the delay between them, to
be variable or reconfigurable. In other words, the individual circuits' time constants,
given by their resistors and capacitors, should be easy to modify.
Keep the ACNS modular
The robot body is very simple and modular, and every module (i.e. every servo with a
metal link) of the body is interchangeable. The circuit should have the same property, as
each MNM should be attached to one motor, comprising a functional robot module.
This is achieved by designing nine separate circuit boards, one for each body segment,
Imperial College London, National University of Singapore, July - August 2006 27
28. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
and using a bus structure made from ribbon wires to connect the modules together.
Fix capacitors, change resistors
In order to enable the above required variability, only the resistors should be made
variable. Capacitors to date still suffer from large manufacturing tolerances, and
variable trimmer capacitors even more so. Therefore, for the sake of accuracy and
simplicity, all capacitors in the circuits should be fixed. Resistors on the other hand can
can be obtained at 1% accuracy, and variable resistors or potentiometers of all different
sorts are readily available. To enable the circuits to be variable enough, time constants
should be changed by changing resistor values only.
Nv neurons are dedicated to the ACNS only
Due to the sensitivity of the ACNS, it is important to minimise the effect that peripheral,
non controlling, devices have on it. These include the LEDs and motor drivers, which
can be connected to the ACNS using other inverters (buffers) on the same IC chip. As
an inverter can be approximated as an ideal inverting amplifier, it will draw no current
from the output of a MNM, and therefore not (or only little) affect the coupling
between two successive MNMs.
Circuits should be compact
To keep the robot compact, and snake-like, efforts should be spent on trying to keep
the circuits as compact as possible. In particular, each MNM should be attached to the
side of a servomotor, i.e. the circuit should be smaller than 41mm x 36mm.
IC Logic series used
The ACNS requires 20 inverters for its operation, two per MNM and two for the
pacemaker. Additional inverters are used as buffers. The IC logic family used shall be
74HC series logic.
Power rails
As discussed earlier, the entire ACNS should source from the same power rails.
Therefore, as the line configuration is to implemented, a common Vcc and GND
connection should run throughout the entire circuit, from module to module and head
to tail (or tail to head?). This way, only one battery or power supply needs to be
connected at one connector to the robot. For experimental purposes, a DC power
Imperial College London, National University of Singapore, July - August 2006 28
29. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
supply instead of a battery is used. For reasons explained below, relating to the speed of
the motor, the potential difference across the power rails is 3.5V.
The Pacemaker
The pacemaker circuit is very simple. It is a suspended bicore, and has no inputs, and two
neuron outputs that link to the rest of the circuit through the first MNM's coupling resistors, in
addition to the power rail connectors.
The IC employed here is the 74HC04 (a generic datasheet can be found online) hex inverter
chip, featuring six independently usable inverters, although only four are used here. It uses two
0.3µF ceramic capacitors, and a 560kΩ bicore resistor in series with a 1MΩ potentiometer,
acting as a variable resistor to tune the circuit. It should be noted, that although the pot (or a
large enough pot) could have been used on its own, it allows for a 'zero' resistance setting, and
therefore a short circuit inside the bicore, which is undesirable. In order to avoid that, the
second fixed bicore resistor is used. Therefore, the circuit has a nominal (unloaded) time
constant ∈[0.168,0 .468] s . Once the entire ACNS is connected up, loading effects will
change this range, and so the achievable periods of oscillation of the pacemaker will change,
too.
The LEDs are driven through a separate pair of
Pacemaker
inverters, so as to minimise the effect that switching
IC Chip: 74HC04 hex inverter
them has on the ACNS, as explained in the guidelines.
Resistors: 1 bicore resistor 560kΩ, 1
They are rated at about 20mA to 25mA diode current bicore trimmer pot 1MΩ, 2
LED resistors 150Ω
Id, and as the output voltage of the inverter is 3.5V, a
Capacitors: 2 bicore capacitors, 0.3µF
150Ω driving resistor was chosen. The entire
LEDs: 2 HE red LEDs
pacemaker circuit is shown in Figure 18 below. Figure Inputs: None
19 Illustrates the compact circuit layout on the Outputs: 2 neuron outputs to first
MNM, 2 identical neuron
veriboard, where horizontal red lines represent the output measurement pins
metal strips on the board, interruptions of the red line Power: Vcc and GND rails
represent cuts made to the strips, and green lines Figure 17: The pacemaker in a nutshell
represent connecting wires on the board. Figure 20 shows a close-up photo of the actual
pacemaker circuit board, clearly showing the components and the connectors used.
With the entire ACNS connected together, the required oscillation period of the circuit was
Imperial College London, National University of Singapore, July - August 2006 29
30. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
determined experimentally. With a higher supply rail voltage than 3.5V, the motors would be
too fast, therefore any snake-like motion would have been similarly fast, resulting in an
unrealistic motion of the robot (imagine a fast forwarded video of a snake, clearly not
desirable). Then, at 3.5V, a suitable period of around 0.5 seconds (540ms) was chosen, so that
the motors turn less than 30 degrees each way within one period.
Imperial College London, National University of Singapore, July - August 2006 30
31. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Figure 18: Circuit diagram of the pacemaker
Figure 19: Veriboard layout of the Pacemaker Figure 20: Photo of the bicore circuit board
circuit. Red horizontal lines represent the metal
strips on the board, and green vertical lines
represent connecting wires.
Imperial College London, National University of Singapore, July - August 2006 31
32. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
The Motor Neuron Module
The core of each MNM circuit is a bicore, with its two coupling resistors acting as the only
inputs (apart from power supply rails). There are four output pins, two pairs of two, namely the
main two ACNS outputs pins from the bicore to the next MNM, and two output pins to drive
the motors.
MNM
The IC employed here is the 74HC240 (a generic
IC Chips: 74HC240 octal inverter,
datasheet can be found online) octal inverter, BAL 6686 H-Bridge
featuring eight separately usable inverters Resistors: 2 coupling resistors on sockets
(exchangable), 2 LED
arranged in two banks of four, which can be resistors 150Ω
separate enable or disabled by the corresponding Capacitors: 2 bicore capacitors, 0.1µF
one of the two enable inputs. This feature can be LEDs: 2 HE red LEDs
Inputs: 2 neuron inputs from preceding
used to enable/disable outputs to the motor, if MNM
turning abilities are to be implemented, but this is Outputs: 2 neuron outputs to next NMN,
2 DC motor outputs
not done here; only six inverters are used. The
Power: Vcc and GND rails
MNM features two ceramic capacitors of 0.1µF, Figure 21: The MNM in a nutshell
together with two coupling resistors of 1MΩ. In order to allow reconfigurations, single pin
female connectors are used to connect the resistors to the circuit, so that they are easily
exchangeable (see actual circuit). The circuit has a nominal time constant of =0.1s , which
corresponds to approximately 18.75% of the period (500ms - 540ms), as required for a 1.5
wavelengths propagating wave.
As in the case of the pacemaker, the LEDs are driven through a separate pair of inverters, so as
to minimise the effect that switching them has on the ACNS, and also have the same circuit.
The motors can require anything up to 600mA under high loading condition, although during
normal operation, less than 150mA are typical current requirements. The 74HC240 is not able
to deliver such an output current, which is why a separate motor driver, controlled by the
bicore, is required. Fir this is, a H-bridge IC, a common motor driver for this application, from
the servo control board was de-soldered, and conveniently used. It is powered by the supply
rails, takes its two inputs from an inverter pair, buffered from the ACNS's neuron outputs, and
connects to the motor connector output. The inverters driving the respective LEDs and H-
Bridge input are connected in parallel. The complete circuit is shown in Figure 22, while Figure
24 and Figure 23 show the compact veriboard layout and a close up photo of the MNM.
Imperial College London, National University of Singapore, July - August 2006 32
33. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Figure 22: Circuit diagram of a Motor Neuron Module
Figure 23: Veriboard
layout of a Motor
Neuron Module. Red
horizontal lines
represent the metal
strips on the board, and
green vertical lines
represent connecting
wires.
Figure 24: Photo of a
Motor Neuron Module
Imperial College London, National University of Singapore, July - August 2006 33
34. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
The entire ACNS was manufactured manually in the workshop. Due to the compactness of the
circuits, the H-Bridge had to be arranged in an unideal way. The circuit boards are stuck to the
side of each motor case using double sided adhesive pads. 4 bit wide bus connectors made
from ribbon cable were made to connect the modules together.
In total, the robot is about 50cm-60cm long, and a complete picture of it lying on its side, with
the ACNS clearly visible is shown in Figure 25.
Figure 25: The complete robot on its side, with the ACNS clearly visible
Imperial College London, National University of Singapore, July - August 2006 34
35. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Eva luat ion
The previous sections have described the underlying principle, and the mechanical and
electronic design of the biomorph snake-like robot. Whether it actually works, is described
here.
Normal Operation
Normal operation refers to the robot operated in the way for which it was designed, as a snake,
which is in contrast to operating it as a worm, where the robot displays emergent behaviour, as
described in the section after this.
In order to evaluate the robot, a rigid testing strategy to observe and describe the behaviour of
it under different conditions was developed. For each of the different set-ups, an evaluation
sheet with relevant criteria is filled out during the testing process. These different testing
conditions are the following:
1. Power up of head only, no body connected
2. Power up of entire controller/spinal chord, no motors connected
3. Power up with only individual motors connected one by one
4. Power up fully connected robot
The results are as follows.
1. Power up head only
1. Behaviour at fixed On power up, the circuit behaves about right. The duty cycle is
oscillation period ~50% [49.4%, 50.7%] and Vout is at 3.44V. The period can be
(533ms @ 3.5V) fixed at approximately 540ms.
2. Behaviour for The range of frequencies is [300ms,1160ms]
varying oscillation
Time to convergence It takes less than 3s for the Bicore to display the stable correct
signal at the right frequency.
Desired behaviour? Yes – Power up & Run
Other observations After having run stable for some time, the period suddenly drops
to 280ms.
When touching one of the output pins, the period decreases,
probably due to faster discharge of the capacitor through the
alternative path created. This is in contrast to loading, which
increases the period.
Imperial College London, National University of Singapore, July - August 2006 35
36. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
2. Power up entire spinal chord, no motors
1. Behaviour at fixed With the whole circuit connected, the period drops to a saturated
oscillation period mode with 189ms period, probably for a similar reason as above,
(533ms @ 3.5V) as the whole circuit is connected to the head’s output pins,
draining the capacitors faster.
Delay is still 85-90ms, which is within the expected (100ms).
2. Behaviour for The circuit appears to have discrete levels of ‘allowed’ periods, i.e.
varying oscillation changing the Bicore resistance does not alter the period of
oscillation in a linear way, but rather in a sudden step like way.
Observed levels of periods of oscillation are [672ms, 503ms,
346ms, 190ms].
Time to convergence Initially, after power up, neurons are in a random state, and it
takes some time (9 delays) for all the neurons to be driven by the
master’s wave.
Desired behaviour? The neurons all show the desired behaviour of stable oscillation
with very close to 50% duty cycle. Phase delay is also about
60deg as calculated. LEDs show a wavelike pattern.
Other observations none
3. Power up with only M1
1. Behaviour at fixed The circuit with only the first motor connected is capable of the
oscillation period right behaviour, oscillating at about the right frequency and duty
(533ms @ 3.5V) cycle, but a lot of disturbances and feedback make it difficult to
remain in the stable state (50% duty cycle) in a controlled fashion.
The oscillation period changes with the loading on the motor, and
tends to be proportional (more load longer period).
2. Behaviour for As expected, the motor turns in each direction for longer/shorter
varying oscillation amounts of time.
Time to convergence n/a
Desired behaviour? More or less
Other observations The effect of the motor feedback and loading on the oscillation
period is propagated down the spine, i.e. a loading feedback can
be seen on a MNM further down the spine.
In ‘unstable’ state, the duty cycle tends to be around 60% (or 40%
depending on where it is measured from), regardless of the
orientation of the motor (as it is a DC motor, it could be
connected either way). Thus, the head motor M1 will always tend
to curl in left (of the snake).
Imperial College London, National University of Singapore, July - August 2006 36
37. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
4. Power up with only M2
1. Behaviour at fixed Also capable of displaying the right behaviour with about 50%
oscillation period duty cycle at the right frequency, but it also tends to become
(533ms @ 3.5V) unstable as M1, with 60% (40%) duty cycles, curling in. However,
it is definitely more stable than M1 on its own, and remains stable
for most of the time.
Desired behaviour? More or less
Other observations The duty cycle is also independent of the direction of the motor
connection.
5. Power up with only M3, M4, M5, M6, M7, M8, M9
1. Behaviour at fixed In general, the closer to the center of the snake the motor is (i.e.
oscillation period M5 is the center of the snake), the better its performance, and the
(533ms @ 3.5V) closer to the desired result it performs, and the less often it leaves
the stable state. This is probably because in the center, the load as
seen by the motor, i.e. the weight or inertia of the robot, is more
balanced.
Time to convergence Fast
Desired behaviour? Mostly
Other observations When turned on the side, the loading of the motor increases,
which feeds back into the circuit, resulting in a longer period of
oscillation.
6. Power up fully connected robot
1. Behaviour at fixed The first motor M1 always tends to curl leftwards, as mentioned
oscillation period earlier, which is attributed to the imbalance of load as seen by the
(533ms @ 3.5V) first motor (i.e. there is no weight or inertia in front of it, and a lot
after it). Ditto the tail motor. Adding weight to the head and tail
may improve the problem. In fact, connecting the pacemaker to
the second motor and disconnecting the first one (so it is just a
weight at the end of the second motor) improves the performance,
and the ‘new head’ (i.e. the second motor) is more stable than
when the first motor is used as the head.
Other than that, the rest of the body displays a wavelike motion,
sliding more or less freely over the floor. However, it is not
absolutely regular, and is jerky from time to time. This is
attributed to the lack or mechanical constraints on the robot. If the
nervous network was to converge to a stable motion, there must
be a more constrained ‘problem space’ for it to search for a
solution. However, the fact that the body of the snake is just
sliding freely over the ground implies that there is not one optimal
Imperial College London, National University of Singapore, July - August 2006 37
38. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
solution, but any solution is as good as another. Adding
differential friction elements such as wheels is believed to impose
constructive constraints onto the solution space, and there should
be clear benefits of continuous wavelike motion over other more
erratic or irregular motion, a the network should converge.
2. Behaviour for Wave like motion changes accordingly over the short range of
varying oscillation achievable periods of oscillation. At its shortest, the robot more or
less vibrates, as a very fast oscillation is propagating the robot.
Time to convergence fast
Desired behaviour? In general, there is wavelike motion, but it is not smooth enough
at all times, and the first and last link tend to curl up.
Other observations When put on its side, the robot displays worm like backwards
motion, and varying the oscillation period changes the wave that
is travelling down the body of the robot.
7. Power up fully connected robot, restrained at both ends
1. Behaviour at fixed Using wires to loosely restrain the robot at its head and tail,
oscillation period without stretching it outwards too much, the motion is much more
(533ms @ 3.5V) smooth and closer to the desired motion. The curling of the first
and last link is reduced.
2. Behaviour for As the period changes, so does the wave on the robot body, but
varying oscillation the general behaviour is conserved.
Time to convergence Fast
Desired behaviour? Restraining both ends of the robot improves the motion of the
body compared to the robot let lose, which further underlines the
assumption that the uneven mechanical loading conditions of the
first and last motors compared to the other motors might be the
reason for the curling up behaviour. Adding a dedicated ‘head’ or
‘tail’ with appropriate weight could improve the performance.
Other observations
Discussion
The robot works partly as desired, but seeing it jerking to live and holding it's erratically
moving body certainly feels special, not like a machine. The ACNS works as it is supposed to,
and the oscillating LEDs clearly display a propagating wave, like a row of lights that go on and
off as on an airport's runway at night. Depending on its initial orientation, the fully connected
robot may curl up after power up. This is because it has not been 'initialised', for operation. If
the robot is arranged in a straight line initially, then it should, in theory, open and close, going
from an 'I' shape to a 'U' shape. To avoid this, the robot has to be pulled and stretched after
Imperial College London, National University of Singapore, July - August 2006 38
39. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
power up, 'overwriting' the commands of the ACNS and forcing the motors into position.
Then, if the robot is unrestrained, it does not stay in a wavelike shape, but tends to curl up.
This is because the duty cycle of the square waves are not balanced at about 50% on average
(it would be no problem, if it deviated from 50%, if the average was about 50%), but biased to
one side (either <50% on average, or >50% on average). It is difficult to determine the exact
reason for this, but there could be several, including mechanical irregularities, an uneven
surface or an insufficient match between the controller and its mechanical body. The first and
the last module tend to curl up more than others. This is attributed to the uneven load
distribution that these two motors see, and can be overcome. Indeed, the tail has one 'dead'
(i.e. unconnected and unused) servo motor attached to its end to act as a counterbalance,
which reduces the tendency to curl up. The robot is reduced to a jerking chain of motors,
which are just sliding over the surface with no observable snake-like pattern.
A sequence of rapidly taken photographs is shown in Figure 26, where the camera took 16
pictures in about one second. It can be observed, how the robot is curling in and how it fails to
display any remotely snake like motion. If this creature was to face the unforgiving nature and
evolution, it would not make it very far.
Figure 26: Unrestrained snake-like motion: the robot tends to curl up. Pictures taken over approximately 1 second
Imperial College London, National University of Singapore, July - August 2006 39
40. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Restraining the robot at its two ends loosely using wires or strings improves the performance a
lot. The first and last module, as well as the robot as a whole, are stopped from curling up, and
a smooth wave motion is achieved. This improvement is attributed to the fact that fixing the
body applies constraints to the way the robot is able to interact with its environment, thereby
changing and narrowing down the solution space that the nervous network is searching in.
Now, a more smooth and continuous wave like motion is more favourable solution than other
types of behaviour, for whatever reason (again, this is not yet understood, but the answer could
lie in the realm of non-linear dynamics). Figure 27 shows another sequence of photographs
taken within about one second, showing the snake-like motion displayed by the robot (note
how the sequence of photos starts at the bottom left, and works upwards to the top right).
Figure 27: Good snake motion with head and tail restrained loosely. Pictures taken over
approximately 1 second
Imperial College London, National University of Singapore, July - August 2006 40
41. A BIOMORPH SNAKE LIKE ROBOT ANTHONY HSIAO
Despite the smoother and more desirable motion of the robot, it still does not experience
locomotion, but only slides over the ground, as there are no wheels or other differential friction
elements employed.
Test 2 described how the period of oscillation of the ACNS without motors connected
appeared to be in discrete levels., i.e. linearly changing the resistance in the suspended bicore
of the pacemaker did not linearly change the period of oscillation. This is a prime example of
how the network would adapt to the external environment. Even though the network was
physically configured to oscillate at one frequency by the tuning resistor, it oscillated at a
different frequency, as that was the 'preferred' solution. This effect reappears in several areas
of physics, be it the 'electron-in-a-1D-box model' from quantum physics, the physics of an
organ pipe or the quantisation of current in carbon nanotubes. All these examples have to do
with a wave 'interacting' and interfering with its environment (and itself), where only certain
configurations (e.g. wavelengths or physical dimensions) allow for constructive interference. In
this case, the physical configuration, i.e. the circuit topology and the devices connected to it,
are such, that only certain periods of oscillation are stable, thereby forming what was observed
as discrete levels. Thus, the notion of the ACNS finding a 'preferred' state is slightly simplified,
it should be referred to as finding a constructive state, a stable state or even simply an existing
state.
In summary, the robot with its ACNS as described above can indeed display snake-like motion,
however, it is incapable of snake-like (forward) locomotion. Surprisingly though, the snake
robot is also a very capable worm robot, as described below.
Worm-like Operation
Throughout this report, the phenomenon of emergent behaviour is often mentioned, and
described as 'unexpected, but desirable behaviour'. In fact, emergent behaviour is usually used
in the context of swarm or multi-agent behaviour (e.g. a swarm of bees or fish, the stock
market, traffic, ...), where complex or advantageous collective behaviour is derived from simple
individual, often selfish, behaviour of an agent inside the system (e.g. grouping together in a
swarm of fish reduces the dangers of encountering predators for each fish).
In this context, emergent behaviour is referred to as the unexpected but advantageous
behaviour of the single robot. In particular, robust interaction with a changing environment
Imperial College London, National University of Singapore, July - August 2006 41