Tải bản đầy đủ (.pdf) (192 trang)

Modelling and Control of Snake Robots

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.54 MB, 192 trang )

Thesis for the degree of philosophiae doctor
Trondheim, September 2007
Norwegian University of
Science and Technology
Faculty of Information Technology, d Electrical
Department of Engineering Cybernetics
Aksel Andreas Transeth
Modelling and Control
of Snake Robots
Engineering
Mathematics and Electrical
NTNU
Norwegian University of Science and Technology
Thesis for the degree of philosophiae doctor
Faculty of Information Technology, Mathematics and Electrical Engineering
Department of Engineering Cybernetics
©Aksel Andreas Transeth
ISBN 978-82-471-4865-5 (printed ver.)
ISBN 978-82-471-4879-2 (electronic ver.)
ISSN 1503-8181
Theses at NTNU, 2008:2
Printed by Tapir Uttrykk
ITK Report 2007-3-W
Summary
Snake robots have the potential of contributing vastly in areas such as rescue
missions, …re-…ghting and maintenance where it may either be too narrow
or too dangerous for personnel to operate. This thesis reports novel results
within modelling and control of snake robots as steps toward developing
snake robots capable of such operations.
A survey of the various mathematical models and motion patterns for
snake robots found in the published literature is presented. Both purely


kinematic models and models including dynamics are investigated. More-
over, di¤erent approaches to both biologically inspired locomotion and ar-
ti…cially generated motion patterns for snake robots are discussed.
Snakes utilize irregularities in the terrain, such as rocks and vegetation,
for faster and more e¢ cient locomotion. This motivates the development of
snake robots that actively use the terrain for locomotion, i.e. obstacle aided
locomotion. In order to accurately model an d understand this phenomenon,
this thesis presents a novel non-smooth (hybrid) mathematical model for
2D snake robots, which allows the snake robot to push against external
obstacles apart from a ‡at ground. Subsequently, the 2D model is extended
to a non-smooth 3D model. The 2D model o¤ers an e¢ cient platform
for testing and development of planar snake robot motion patterns with
obstacles, while the 3D model can be used to develop motion patterns
where it is necessary to lift parts of the snake robot during locomotion. The
framework of non-smo oth dynamics and convex analysis is employed to be
able to systematically and accurately incorp orate both unilateral contact
forces (from the obstacles and the ground) and spatial friction forces based
on Coulomb’s law using set-valued force laws. Snake robots can easily be
constructed for forward motion on a ‡at surface by adding passive caster
wheels on the underside of the snake robot body. However, the advantage
of adding wheels su¤ers in rougher terrains. Therefore, the models in this
thesis are developed for wheel-less snake robots to aid future development
of motion patterns that do not rely on passive wheels.
ii Summary
For numerical integration of the developed models, conventional nu-
merical solvers can not be employed directly due to the set-valued force
laws and possible instantaneous velocity changes. Therefore, we show how
to implement the models for simulation with a numerical integrator called
the time-stepping method. This method helps to avoid explicit changes
between equations during simulation even though the system is hybrid.

Both the 2D and the 3D mathematical models are veri…ed through
experiments. In particular, a back-to-back comparison be tween numerical
simulations and experimental results is presented. The results compare
very well for obstacle aided locomotion.
The problem of model-based control of the joints of a planar s nake robot
without wheels is also investigated. Delicate operations such as inspection
and maintenance in industrial environments or performing search and res-
cue operations require precise control of snake robot joints. To this end,
we present a controller that asymptotically stabilizes the joints of a snake
robot to a desired refe rence trajectory. The 2D and 3D model ref erred to
above are ideal for simulation of various snake robot motion pattern. How-
ever, it is also advantageous to model the snake robot base d the standard
equations of motion for the dynamics of robot manipu lators. This latter
modelling approach is not as suited for simulation of a snake robot due to
its substantial number of degrees of freedom, but a large number of con-
trol techniques are developed within this framework and these can now be
employed for a snake robot. We …rst develop a process plant model from
the standard dynamics of a robot manipulator. Then we derive a control
plant model from the process plant model and develop a controller based
on input-output linearization of the control plant model. The control plant
model renders the controller independent of the global orientation of the
snake robot as this is advantageous for the stability analysis. Asymptotic
stability of the desired trajectory of th e closed-loop system is shown using a
formal Lyapunov-bas ed proof. Performance of the controller is, …rst, tested
through simulations with a smooth dynamical model and, second , with a
non-smooth snake robot model with set-valued Coulomb friction.
The three main models de veloped in this thesis all serve important
purposes. First, the 2D model is for investigating planar motion patterns
by e¤ective simulations. Second, the 3D model is for developing motion
patterns that require two degrees of freedom rotational joints on the snake

robot. Finally, the control plant model is employed to investigate stability
and to construct a model-based controller for a planar snake robot so that
its joints are accurately controlled to a desired trajectory.
Preface
This thesis contains the results of my doctoral studies from August 2004
to S ep tembe r 2007 at the Department of Engineering Cybernetics (ITK)
at the Norwegian University of Science and Technology (NTNU) under
the guidance of Professor Kristin Ytterstad Pettersen. The research is
funded by the Strategic University Program on Computational Methods in
Nonlinear Motion Control sponsored by The Research Council of Norway.
I am grateful to my supervisor Professor Kristin Ytterstad Pettersen for
the support and encouragement during my doctoral studies. She has been
a mentor in how to do research and our meetings have always been joyful
ones. I am thankful for her constructive feedback on my research results
and publications which have taught me how to convey scienti…c results in a
to-the-point manner. In addition, I am much obliged to her for introducing
me to various very skilled people around the world, which allowed me to
be a visiting researcher in Zürich and Santa Barbara.
I am thankful for the invitation of Dr. ir. habil. Remco I. Leine and
Professor Christoph Glocker to visit them at the Center of Mechanics at
the Eidgenössische Technische Hochschule (ETH) Zürich in Switzerland.
The introduction to non-smooth dynamics given to me by Dr. ir. habil.
Remco I. Leine together with the guidance I got during my stay there are
invaluable. In addition, I would like to thank the rest of the people at ETH
Center for Mechanics for making my stay th ere a pleasant one.
I thank Professor João Pedro Hespanha for having me as a visitor at the
Center for Control, Dynamical systems, and Computation (CCDC) at the
University of California Santa Barbara (UCSB) in the USA. I appreciate
the valuable advice and ideas I got from him. In addition, I would like
to thank Professor Nathan van de Wouw at the Eindhoven University of

Technology (TU/e) for a fruitfu l collaboration and fun time together at
UCSB together with the interesting time I had during my short visit at
TU/e.
I appreciate the discussions with my fellow PhD-students at NTNU,
iv Preface
and I would particularly like to point out the conversations with my former
o¢ ce mate Svein Hovland and current o¢ ce mate Luca Pivano. In addition,
I greatly acknowledge the constructive debates and advice concerning all
aspects of snake robots I have got from my friend Pål Liljebäck. Moreover,
I thank Dr. Øyvind Stavdahl for sharing his ideas on and enthu siasm for
snake robots.
I express my deepest gratitude to Dr. Alexey Pavlov for guiding me in
the world of non-linear control and for his numerous constructive comments
and valuable feedback on my thesis.
I thank all my colleagues at the department of Engineering Cybernetics
for providing me with a good environment in which it was nice to do re-
search. I thank Terje Haugen and Hans Jørgen Berntsen at the department
workshop for building the s nake robot emp loyed in the experiments, and for
sharing hand s-on knowledge in the design phase. Also, I thank the students
Kristo¤er Nyborg Gregertsen and Sverre Brovoll who were both involved
in the hardware and software design and implementation needed to get the
snake robot working. Finally, I would like to thank Stefano Bertelli f or al-
ways helping out with c amcorders and movie production for presentations
and Unni Johansen, Eva Amdahl and Tove K. B. Johnsen for taking c are of
all the administrative issues that arose during the quest for a PhD-degree.
Finally, I thank my parents for always believing in me, and I thank my
girlfriend Bjørg Riibe Ramskjell for all her love and support.
Trondheim, September 2007 Aksel Andreas Transeth
Publications
The following is a list of publications produced during the work on this

thesis.
Journal papers
 Transeth, A. A. and K. Y. Pettersen (2008). A survey on snake robot
modeling and locomotion. Robotica. Submitted.
 Transeth, A. A., R. I. Leine, Ch. Glocker and K. Y. Pettersen (2008a).
3D snake rob ot motion: Modeling, simulations, and experiments.
IEEE Transactions on Robotics. Accepted.
 Transeth, A. A., R. I. Leine, Ch. Glocker, K. Y. Pettersen and
P. Liljebäck (2008b). Snake robot obstacle aided locomotion: Model-
ing, simulations, and experiments. IEEE Transactions on Robotics.
Accepted.
Referred conference proceedings
 Transeth, A. A., R. I. Leine, Ch. Glocker and K. Y. Pettersen (2006a).
Non-smooth 3D modeling of a snake robot with external obstacles.
In: Proc. IEEE Int. Conf. Robotics and Biomimetics. Kunming,
China. pp. 1189–1196.
 Transeth, A. A., R. I. Leine, Ch. Glocker and K. Y. Pettersen (2006b).
Non-smooth 3D modeling of a snake robot with frictional unilateral
constraints. In: Proc. IEEE Int. Conf. Robotics and Biomimetics.
Kunming, China. pp. 1181–1188
 Transeth, A. A. and K. Y. Pettersen (2006). Developments in snake
robot modeling and locomotion. In: Proc. IEEE. Int. Conf. Control,
Automation, Robotics and Vision. Singapore. pp. 1393–1400.
vi Publications
 Transeth, A. A., N. van de Wouw, A. Pavlov, J. P. Hespanha and
K. Y. Pettersen (2007a), Tracking control for snake robot joints. In:
Proc. IEEE/RSJ Int. Conf. Intelligent Robots and Systems. San
Diego, CA, USA. pp. 3539–3546.
 Transeth, A. A., P. Liljebäck and K. Y. Pettersen (2007b). Snake ro-
bot obstacle aided locomotion: An experimental validation of a non-

smooth modeling approach. In: Proc. IEEE/RSJ Int. Conf. Intelli-
gent Robots and Systems. San Diego, CA, USA. pp. 2582–2589.
Contents
Summary i
Preface iii
Publications v
1 Introduction 1
1.1 Motivation and Background . . . . . . . . . . . . . . . . . . 1
1.2 Main Contributions of this Thesis . . . . . . . . . . . . . . . 7
1.3 Organization of this Thesis . . . . . . . . . . . . . . . . . . 10
2 Developments in Snake Robot Modelling and Locomotion 13
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Biological Snakes and Inchworms . . . . . . . . . . . . . . . 14
2.2.1 Snake Skeleton . . . . . . . . . . . . . . . . . . . . . 14
2.2.2 Snake Skin . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.3 Locomotion – The Source of Inspiration for Snake
Robots . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Design and Mathematical Modelling . . . . . . . . . . . . . 17
2.3.1 Kinematics . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Dynamics . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4 Snake Robot Locomotion . . . . . . . . . . . . . . . . . . . 28
2.4.1 Planar Snake Robot Locomotion . . . . . . . . . . . 30
2.4.2 3D Snake Robot Locomotion . . . . . . . . . . . . . 34
2.5 Discussion and Summary . . . . . . . . . . . . . . . . . . . 38
3 Non-smooth Model of a 2D Snake Robot for Simulation 41
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2 Summary of the Mathematical Model . . . . . . . . . . . . 42
3.3 Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
viii Contents
3.3.1 Snake Robot Description and Reference Frames . . . 44

3.3.2 Gap Functions for Obstacle Contact . . . . . . . . . 46
3.3.3 Bilateral Constraints: Joints . . . . . . . . . . . . . 48
3.4 Contact Constraints on Velocity Level . . . . . . . . . . . . 49
3.4.1 Relative Velocity Between an Obstacle and a Link . 49
3.4.2 Tangential Relative Velocity . . . . . . . . . . . . . . 51
3.4.3 Bilateral Constraints: Joints . . . . . . . . . . . . . 52
3.5 Non-smooth Dynamics . . . . . . . . . . . . . . . . . . . . . 53
3.5.1 The Equality of Measures . . . . . . . . . . . . . . . 53
3.5.2 Constitutive Laws for Contact Forces . . . . . . . . 56
3.6 Numerical Algorithm: Time-Stepping . . . . . . . . . . . . 61
3.6.1 Time Discretization . . . . . . . . . . . . . . . . . . 62
3.6.2 Solving for the Contact Impulsions . . . . . . . . . . 63
3.6.3 Constraint Violation . . . . . . . . . . . . . . . . . . 65
3.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4 3D Snake Robot Modelling for Simulation 67
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.2 Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.2.1 Model Description, Coordinates and Reference Frames 68
4.2.2 Gap Functions for Ground Contact . . . . . . . . . . 70
4.2.3 Gap Functions for Contact with Obstacles . . . . . . 71
4.2.4 Gap Functions for Bilateral Constraints . . . . . . . 73
4.3 Contact Constraints on Velocity Level . . . . . . . . . . . . 75
4.3.1 Unilateral Contact: Ground Contact . . . . . . . . . 75
4.3.2 Unilateral Contact: Obstacle Contact . . . . . . . . 80
4.3.3 Bilateral Constraints: Joints . . . . . . . . . . . . . 82
4.4 Non-smooth Dynamics . . . . . . . . . . . . . . . . . . . . . 83
4.4.1 The Equality of Measures . . . . . . . . . . . . . . . 83
4.4.2 Constitutive Laws for Contact Forces . . . . . . . . 85
4.4.3 Joint Actuators . . . . . . . . . . . . . . . . . . . . . 88
4.5 Accessing and Control of Joint Angles . . . . . . . . . . . . 89

4.6 Numerical Algorithm: Time-stepping . . . . . . . . . . . . . 91
4.6.1 Time Discretization . . . . . . . . . . . . . . . . . . 91
4.6.2 Solving for Contact Impulsions . . . . . . . . . . . . 93
4.6.3 Constraint Violation . . . . . . . . . . . . . . . . . . 95
4.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Contents ix
5 Obstacle Aided Locomotion 99
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
5.3 Understanding Obstacle Aided Locomotion . . . . . . . . . 100
5.4 Requirements for Intelligent Obstacle Aided Locomotion . . 102
5.5 Experimental Observation of Obstacle Aided Locomotion . 105
6 Modelling and Control of a Planar Snake Robot 107
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.2 Mathematical Modelling . . . . . . . . . . . . . . . . . . . . 109
6.2.1 Process Plant Model . . . . . . . . . . . . . . . . . . 110
6.2.2 Control Plant Model . . . . . . . . . . . . . . . . . . 116
6.3 Joints Control by Input-output Linearization . . . . . . . . 119
6.3.1 Control Plant Model Reformulation . . . . . . . . . 119
6.3.2 Controller Design . . . . . . . . . . . . . . . . . . . . 120
6.3.3 Final Results on Input-output Linearization . . . . . 121
6.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7 Simulation and Experimental Results 131
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.2 Simulation Parameters . . . . . . . . . . . . . . . . . . . . . 132
7.2.1 A Description of Aiko and Model Parameters . . . . 132
7.2.2 Simulation Parameters and Reference Joint Angles . 133
7.3 Simulations without Experimental Validation . . . . . . . . 136
7.3.1 3D Model: Drop and Lateral Undulation . . . . . . . 137
7.3.2 3D Model: U-shaped Lateral Rolling . . . . . . . . . 139

7.3.3 3D Model: Sidewinding . . . . . . . . . . . . . . . . 140
7.3.4 2D and 3D Model: Obstacle Aided Locomotion . . . 141
7.3.5 Robot Model: Comparison of Controllers . . . . . . 147
7.4 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . 152
7.5 Simulations with Experimental Validation . . . . . . . . . . 153
7.5.1 3D Model: Sidewinding . . . . . . . . . . . . . . . . 153
7.5.2 2D and 3D Model: Lateral Undulation with Isotropic
Friction . . . . . . . . . . . . . . . . . . . . . . . . . 155
7.5.3 2D and 3D Model: Obstacle Aided Locomotion . . . 156
7.5.4 Discussion of the Experimental Validation . . . . . . 159
7.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8 Conclusions and Further Work 163
x Contents
Bibliography 167
A An additional Proof and a Theorem for Chapter 6 177
A.1 Theorem on Boundedness . . . . . . . . . . . . . . . . . . . 177
A.2 Positive De…niteness of M
V
. . . . . . . . . . . . . . . . . . 178
Chapter 1
Introduction
1.1 Motivation and Background
The wheel is an amazing invention, but it does not roll everywhere. Wheeled
mechanisms constitute the backbone of most ground-based means of trans-
portation. On relatively smooth surfaces such mechanisms can achieve high
speeds and have good stee ring ability. Unfortunately, rougher terrain makes
it harder, if n ot impossible, for wheeled mechanisms to move. In n ature
the snake is one of the creatures that exhibit excellent mobility in various
terrains. It is able to move through narrow passages and climb on rough
ground. This mobility property is attempted to be recreated in robots that

look and move like snakes – snake robots. These robots most often have
a high number of degrees of freedom (DOF) and they are able to move
without using active whee ls or legs.
Snake robots may one day play a crucial role in search and rescue op-
erations, …re-…ghting and insp e ction and maintenance. The highly artic-
ulated body allows the snake robot to traverse di¢ cult terrains such as
collapsed buildings or the chaotic environment caus ed by a car collision in
a tunnel as visualized in Figure 1.1. The snake robot could move within
destroyed buildings looking for people while simultaneously bringing com-
munication equipment together with small amounts of food and water to
anyone trapped by the shattered building. A rescue ope ration involving a
snake robot is envisioned in Miller (2002). Moreover, the snake robot can
be used for inspection and maintenance of complex and possibly hazardous
areas of industrial plants such as nuclear facilities. In a city it could inspect
the sewer system lo oking for leaks or aid …re-…ghters. Also, snake robots
with one end …xed to a base may be used as robot manipulators that can
2 Introduction
Figure 1.1: Fire-…ghting snake robots to the rescue after a car accide nt in
a tunnel. Courtesy of SINTEF (www.sintef.no/Snakefighter).
reach hard-to-get-to places.
Compared to wheeled and legged mobile mechanisms, the snake robot
o¤ers high stability and superior traversab ility. Moreover, the exterior of a
snake robot can be completely sealed to keep dust and ‡uids out and this
enhances its applicability. Furthermore, the snake robot is more robust to
mechanical failures due to high redundancy and mo du larity. The downside
is its limited payload capacity, poor power e¢ ciency and a very large num-
ber of degrees of freedom that have to be controlled. For a more elaborate
overview of numerous applications of snake robots, the reader is referred to
Dowling (1997) and Choset et al. (2000).
The …rst qualitative research on snake locomotion was presented by

Gray (1946) while the …rst working biologically inspired snake-like robot
was constructed by Hirose almost three decades later in 1972 (Hirose, 1993).
He presented a two-meter long serpentine robot with twenty revolute 1 DOF
joints called the Active Cord Mechanism model ACM III, which is shown
in Figure 1.2. Passive casters were put on the underside of the robot so
that forward planar motion was obtained by moving the joints from side to
side in selected patterns.
Since Hirose presented his Active Cord Mechanism model ACM III,
many multi-link articulated robots intended for undulating locomotion have
been developed and they have been called by many names. Some ex-
amples are: multi-link mobile robot (Wiriyacharoensunthorn and Laowat-
tana, 2002), snake-like or snake robot (Kamegawa et al., 2004; Lewis and
1.1 Motivation and Background 3
Figure 1.2: The Active Cord Mechanism model ACM III Hirose (1993). By
permission of Oxford University Press.
Zehnpfennig, 1994; Lu et al., 2003; Ma, 1999; Ma et al., 2001a; Worst
and Linnemann, 1996; Xinyu and Matsuno, 2003), hyper-redundant robot
(Chirikjian and Burdick, 1994b) and G-snake (Krishnaprasad and Tsakiris,
1994). We employ the term ‘snake robot’to emphasize that this thesis deals
with robots whose motion mainly resembles the locomotion of snakes.
Research on snake robots has increased vastly during the past ten to
…fteen years and the published literature is mostly focused on snake robot
modelling and locomotion. In the reminder of this section we will present
a summary of the previously published results most relevant to this thesis.
A more thorough review on snake robot modelling and locomotion is given
in Chapter 2.
The fastest and most common serpentine motion pattern used by bi-
ological snakes is called lateral undulation. In short, forward motion is
obtained by this motion pattern by propagating waves from the front to
the rear of the snake while exploiting roughness in the terrain. This has also

been the most implemented motion pattern for snake robots. Note that by
a ‘motion pattern’or a ‘gait’of a snake robot, we mean an (often repeti-
tive) coordinated motion of the snake robot joints employed to move the
snake robot in some direction. Snake s exploit irregularities in the terrain to
push against to move forward by lateral undulation. This method of loco-
motion is attempted to be recreated for snake robots moving on a smooth
surface by adding passive caster wheels (Ma, 2001; Ma et al., 2003a; Os-
trowski and Burdick, 1996; Wiriyacharoensunthorn and Laowattana, 2002;
Ye et al., 2004a) or metal skates (Saito et al., 2002) on the underside of the
4 Introduction
snake robot body. Relatively fast locomotion is obtained for snake robots
with caster wheels travelling on a solid smooth surface. The dependency
on the surface is important since the friction property of the snake robot
links must b e such that the links slide easier forward and backward than
sideways for e¢ cient snake robot locomotion by lateral undulation.
The dependency on the ground surface can be relaxed by mimicking
biological snakes and utilizing external objects to move forward. This is
the motivation for developing snake robots that exploit obstacles for loco-
motion. We de…ne obstacle aided locomotion as the snake robot locomotion
where the snake robot utilizes walls or other external objects, apart from
the ‡at ground, for propulsion. Obstacle aided locomotion for snake robots
was …rst investigated by Hirose in 1976 an d expe riments with a snake robot
with passive caster wheels moving through a winding track were presented
in Hirose and Umetani (1976) and Hirose (1993). More recently, Bayrak-
taroglu and Blazevic (2005) and Bayraktaroglu et al. (2006) elaborated
on obstacle aided locomotion for wheel-less snake robots. The dynamics
of such locomotion was simulated with the dynamic simulation software
WorkingModel
r
in Bayraktaroglu and Blazevic (2005), where the rigid

body contact (i.e. the contact between an obstacle and the snake robot) is
represented by a spring-damper model (i.e. a compliant contact model).
Snake robots capable of 3D motion appeared more recently
(Chirikjian and Burdick, 1993, 1995; Hirose and Morishima, 1990; Lilje-
bäck et al., 2005; Mori and Hirose, 2002) and, together with the robots,
mathematical models of both the kinematics and the dynamics of snake
robots were also developed. Purely kinematic 3D mode ls were presented in
Burdick et al. (1993), Chirikjian and Burdick (1995) and Ma et al. (2003b).
In such models, friction is not considered in the contact between the snake
robot and the ground s urface . Instead, it is assumed in Ma et al. (2003b)
that a snake robot link can slide without friction forward and backward.
This can be achieved by adding passive caster wheels, which introduces
non-holonomic constraints, to the underside of the snake robot. A di¤erent
approach presented in Burdick et al. (1993) and Chirikjian and Burdick
(1995) is to assume that the parts of the snake robot in contact with the
ground are anchored to the ground surface. Then the other parts of the
snake robot body may move without being subjected to friction forces.
A model of the motion dynamics is needed to describe the friction forces
a snake robot is subjected to when moving over a surface. Most mathemat-
ical models that describe the dynamics of snake robot motion are limited to
planar (2D) motion (Ma, 2001; Ma et al., 2003a; McIsaac and Ostrowski,
1.1 Motivation and Background 5
2003b; Saito et al., 2002) while 3D models of snake robots have only recently
been developed (Liljebäck et al., 2005; Ma et al., 2004) where the contact
between a snake robot and the ground surface is modelled as compliant.
3D models facilitate testing and development of 3D serpentine motion pat-
terns such as sinus-lifting (similar to lateral undulation, but with an addi-
tional vertical wave) and sidewinding (a gait commonly employed by desert
snakes). There exists various software to model and simulate dynamical
systems. 3D simulations of a snake robot are presented in Dowling (1999,

1997) where such software is employed to de…ne and simulate a 3D snake
robot. However, details of this implementation are not presented and the
simulations are thus not easily reproducible by the reader.
On a ‡at surface the ability of a snake robot to move forward is de-
pendent on the friction between the ground surface and the body of the
snake robot. Hence, the friction forces and the unilateral (upward) con-
tact forces (which give rise to the friction force s) are important parts of
the mathematical model of a snake robot. The friction forces are usually
based on a Coulomb or viscous-like friction model (McIsaac and Ostrowski,
2003b; Saito et al., 2002), and the Coulomb friction is most often modelled
using the sign-function (Ma et al., 2004; Saito et al., 2002). The unilateral
contact forces as a result of contact with the ground surface are modelled
as a spring-damper system in Liljebäck et al. (2005), wh ere the centre of
gravity of each link is employed as the contact point.
We have focused mostly on modelling in the above review, and we now
proceed to give a short comment on snake robot locomotion. Many authors
base the choice and implementation of the most common serpentine motion
pattern called lateral undulation on the serpenoid curve found in Hirose
(1993). This is a curve that describes the motion of a biological sn ake while
moving by lateral undulation. A snake robot can follow an approximation to
this curve by setting its joint angles according to a sine-curve that is phase-
shifted between adjacent joints. This approach to snake robot locomotion is
widely implemented for snake robots that have either wheels (Ostrowski and
Burdick, 1996; Prautsch and Mita, 1999) or a friction property such that
each link of the snake robot glides easier forward and backward compared to
transversal motion (Ma, 2001; Saito et al., 2002). A no-slip constraint (i.e.
a non-holonomic velocity constraint) on each wheel is sometimes introduced
in the mathematical model and this results in that the snake robot links
cannot slip sideways. Such an approach is presented in Prautsch and Mita
(1999), where the no-slip constraint allows one to signi…cantly reduce the

model. A Lyapunov-based proof for this reduced model together with a
6 Introduction
proposed controller shows that the snake robot is able to move to a position
reference. A velocity controller for a wheel-less snake robot with the friction
property described above is presented in Saito et al. (2002). The simulation
and experimental results presented in that paper indicate that the snake
robot is able to stay within a reasonable o¤set of a desired speed. Results on
controllability based on a kinematic description of snake robot locomotion
are presented in Kelly and Murray (1995) and Ma et al. (2003b).
From the review above we see that very interesting and use fu l results
are published on snake robot modelling and locomotion. There are many
important aspec ts to consider when modelling a snake robot. The friction
model has to describe the frictional contact with the ground properly. More-
over, a model to describe a varying normal contact force with the ground
surface is needed to simulate some motion patterns. Other approaches to
snake robot locomotion rely on having objects to push against to move
forward and in this case the contact forces between the snake robot and
the obstacles have to be de…ned in some way. In addition, we need to de-
…ne some sort of exoskeleton for the snake robot for contact with obstacles
and the ground surface. In order to develop the previously published re-
sult on modelling of snake robots further, we note that only unidirectional
Coulomb friction can be described by a sign-function since the direction of
the friction force due to a snake robot link sliding on the ground surface
will not point in the correct direction relative to the direction of the sliding
velocity for spatial friction. Moreover, a sign-function with the commonly
employed de…nition sign (0) = 0 (i.e. not set-valued) will not give a non-
zero friction force for zero sliding velocity. However, such a non-zero friction
force is sometimes acting on rigid bodies in the stick-phase of Coulomb fric-
tion. Hence, a snake robot on a slightly inclined surface will slowly slide
downward even th ough it should stick to the surface due to the Coulomb

friction. This is because the friction force becomes zero every time the ve-
locity becomes zero. Hence, the above mentioned properties of Coulomb
friction cannot be modelled with the previously published friction models.
Furthermore, a very high spring coe¢ cient is needed to model a hard obsta-
cle (or ground surface) with a compliant contact model (which is employed
in the previously published literature) and this leads to sti¤ di¤erential
equations which in turn are cumbersome to solve numerically. Moreover,
it is not clear how to determine the dissipation parameters of the contact
unambiguously when using a compliant model (Brogliato, 1999). Hence,
there is a need for a alternative approach to describe Coulomb friction with
an accurate stick-phase, and normal contact forces due to impacts with the
1.2 Main Contributions of this Thesis 7
obstacles and the ground surface with a non-compliant model.
In addition, for 3D models of the dynamics of snake robots presented
in such a way that the model is possible to re-create by the reader, only
one point on each link (most often the centre of gravity) is considered as
the contact point with the ground. Hence, rotational motion around the
longitudinal axis of a snake robot link of such a point does not result in
any translational motion since the p oint do not have a circumference. This
makes the models unable to perform rolling gaits such as lateral rolling.
Hence, there is a need for a well-described model of a snake robot with some
sort of exoskeleton (instead of just a single stationary point) for contact with
the ground surface.
For wheel-less snake robots it is not su¢ cient to consider a purely kine-
matic model for the motion pattern lateral undulation, as the friction be-
tween the snake robot and the ground surface is essential for locomotion.
Therefore, the friction needs to be considered for wheel-less snake robots
and this motivates including the dynamics in the development of model-
based controllers for snake robots. Some controllers are developed for po-
sition control of a single link or a small selection of snake robot links.

Moreover, controllers are proposed for velocity and heading control of a
snake robot. However, for delicate operations such as inspection and main-
tenance in industrial plants, every point on the snake robot body need to
be accurately controlled so that the snake robot do not unintentionally col-
lide with objects on its path. Such operations require precise control of the
snake robot joints and this can be realized through a model-based design.
However, no such controller is found in the previously published literature.
1.2 Main Contributions of this Thesis
This thesis …rst presents a thorough review of snake robot modelling and
locomotion. Then various mathematical models of a sn ake robot, together
with a model-based control law are developed. Furthermore, we present
simulation results of a nu mbe r of motion patterns and some of these results
are experimentally validated.
Review: During the last ten to …fteen years, the published literature on
snake robots has increased vastly. This thesis gives an elaborate
overview and comparison of the various mathematical models and
locomotion principles for snake robots presented during this period.
Both purely kinematic models and models including dynamics are
investigated. Moreover, we provide an introduction to the source of
8 Introduction
inspiration of snake robots: biologically inspired crawling locomotion.
Furthermore, di¤erent approaches to both biologically inspired loco-
motion and arti…cially generated motion patterns for snake robots are
discussed.
2D model: Propulsion by some sort of obstacle aided locomotion enables
the snake robot to move forward in rough terrain. To this end, we
present a novel non-smooth (hybrid) mathematical model for planar
wheel-less snake robots that allows a snake robot to push against
external obstacles apart from the ‡at ground. The framework of non-
smooth dynamics and conve x analysis allows us to systematically and

accurately incorporate both unilateral contact forces (from the ob-
stacles) and friction forces based on Coulomb’s law using set-valued
force laws. Hence, stick-slip transitions with the ground and impacts
with the obstacles are modelled as instantaneous transitions. More-
over, the set-valued force law results in an accurate description of the
Coulomb friction which is important for snake robot locomotion on a
planar surface. Conventional numerical solvers can not be employed
directly for numerical integration of this model due to the set-valued
force laws and possible instantaneous velocity changes. Therefore, we
show how to implement the model for numerical treatment with a
numerical integrator called the time-stepping method. Even though
we model the snake robot as a hybrid system, in this framework we
avoid explicit switching between system equations (for example when
a collision occurs). The description of the model and the method for
numerical integration are presented in such a way that people who
are new to the …eld of non-smooth dynamics can use this thesis and,
in particular, Chapter 3 as an introduction to non-smooth mod elling
of robot manipulators with impacts and friction.
3D model: Many snake robot motion patterns require that the snake ro-
bot is able to perform more than just planar motion. Theref ore, the
2D mod el is extended to a non-smooth 3D mathematical model of
a snake robot (without wheels) where a particular choice of coordi-
nates results in an e¤ective way of writing the system equations. The
same framework of non-smooth dynamics and convex analysis as in
for the 2D model is employed for the 3D model. Hence, no explicit
changes between equations are necessary when collisions occur. This
is particularly advantageous for 3D motion since the snake robot links
repeatedly collide with the ground surface during, for example, loco-
1.2 Main Contributions of this Thesis 9
motion by sidewinding. Moreover, the set-valued force law employed

to model the normal contact between the snake robot and the ground
surface and obstacles is a bene…cial alternative to the compliant (e.g.
spring-damper) model employe d in previously published works. We
de…ne for each link a cylindrical exoskeleton for contact with the
ground surfac e and the external obstacles. Hence, a rolling motion
will result in a sideways motion which would not be the case if only
the centre of gravity is employed for contact with the environment.
This enables us to simulate motion patterns such as lateral rolling.
Validation of models with experimental results: Both the 2D and
the 3D mathematical model are veri…ed through experiments. In
particular, a back-to-back comparison between numerical simulations
and experimental results is presented. Such a quantitative compar-
ison is not found in any of the previously published works on snake
robots. The simulations show that the numerical treatment of b oth
models can handle both impacts with the ‡oor and obstacles. The
experiments are performed with the snake robot ‘Aiko’ depicted in
Figure 1.3, which is a wheel-less snake robot with cylindrical links.
Aiko has been developed at the NTNU/SINTEF Advanced Robotics
Laboratory in Trondheim, Norway.
A ‘robot model’and model-based control design: To be able to em -
ploy the model-based control techniques developed for robot manip-
ulators, we employ the standard dynamics of a robot manipulator
(found in, e.g., Spong and Vidyasagar (1989)) and develop a process
plant model based on this framework for a planar snake robot. Such a
representation is not favourable for simulation due to the high number
of degrees of freedom of a snake robot so the 2D model mentioned ear-
lier is still important for developing and testing new motion patterns.
We employ one group of the techniques available for the robot manip-
ulator model, called input-output linearization to develop a controller
for tracking control of the snake robot joints. In order to make the

stability analysis manageable, we develop a control plant mo d el from
the process plant model where the global orientation of the snake
robot is remove d from the model. This allows us to complete a for-
mal Lyapunov-based proof which shows that the joint angles converge
exponentially to their desired trajectory.
From the list of contributions given above, we see that several math-
ematical models of snake robots are presented in this thesis. All models
10 Introduction
Figure 1.3: The snake robot ‘Aiko’developed at the NTNU/SINTEF Ad-
vanced Robotics Laboratory. Aiko is used as a basis for the mathematical
models.
describe the same snake robot. However, di¤erent aspects of snake robot
locomotion is emphasized in the various models: The 2D model is for sim-
ulation of planar snake robot motion with or without obstacles to push
against, while the 3D model is for simulation of 3D gaits like sidewinding
or sinus-lifting where the use of obstacles can also be included. The 2D
model is much faster to simulate and easier to implement since less degrees
of freedom and contact points are considered. Hence, it should be employed
as an e¤ective test bed for the development of new planar motion patterns
and s nake robot controller testing. In addition, we have developed a 2D
model of a snake robot based on the standard formulation of the dynamics
of a robot manipulator. This model is denoted the ‘robot model’ and is
in its analytical form is not favourable for simulations due to the intricate
system matrices which arise from employing minimal generalized coordi-
nates for a snake robot (with such a high number of degrees of freedom).
However, the standard formulation provides us with a large range of tools
for controller synthesis and stability analysis for the snake robot.
1.3 Organization of this Thesis
Chapter 2: The main developments in snake robot modelling and loco-
motion are reviewed.

Chapter 3: A 2D non-smooth model of a snake rob ot with obstacles to
1.3 Organization of this Thesis 11
push against is developed. The model is based on the framework of
non-smooth dynamics and convex analysis. Instead of presenting the
background theory in a separate chapter, we use the 2D model of a
snake robot as an example and present the necessary theory when it
is appropriate throughout this chapter.
Chapter 4: A 3D non-smooth model of a snake rob ot with obstacles to
push against is developed. Those familiar with non-smooth dynamics
and convex analysis can read this chapter independently from Chap-
ter 3.
Chapter 5: The concept of obstacle aided locomotion for snake robots is
elaborated on, and we provide an overview of how a biological snake
moves by pushing against irregularities in the ground.
Chapter 6: A planar model of a snake robot based on the standard for-
mulation of the dynamics of a robot manipulator is developed. More-
over, an input-output linearizing controller for asymptotic tracking
for snake robot joints is designed and a formal stability proof is pro-
vided.
Chapter 7: Simulation results are given for all models. In addition, back-
to-back comparisons between experimental results and simulation re-
sults with the 2D and 3D model are presented for a selection of ser-
pentine motion patterns.
Chapter 8: Conclusions and suggestions to further work are presented.
Appendix A: An additional proof and a theorem employed in Chapter 6
are described.
12 Introduction
Chapter 2
Developments in Snake
Robot Modelling and

Locomotion
2.1 Introduction
During th e last ten to …fteen years, the published literature on snake robots
has increased vastly and the purpose of this chapter is to provide an elabo-
rate survey of the various mathematical models and locomotion principles
of snake robots presented during this period. Both purely kinematic models
and models including dynamics are investigated. Moreover, di¤erent ap-
proaches to both biologically inspired locomotion and arti…cially generated
motion patterns for snake robots are discussed. We also provide an intro-
duction to the source of inspiration for snake robot locomotion: serpentine
and crawling locomotion of biological creatures. The speci…c choices of
hardware for e.g. sensors and actuators for snake robots are beyond the
scope of this chapter and will not be discussed. In addition, we do not con-
sider snake robots with active wheels in this thesis. For more information
on such snake robots see, for example, Kamegawa et al. (2004), Yamada
and Hirose (2006a) and Masayuki et al. (2004).
Note that the notation in this chapter sometimes di¤ers from the rest
of this thesis. This is because in this chapter we strive to employ the same
notation as used in the papers we discuss to ease the transition for those
who want to explore these source papers further. However, we balance
between using the exact same notation as in the various original papers
and using a common notation for this chapter, so the corresp ond enc e is not

×