0% found this document useful (0 votes)
4 views106 pages

K0005828 Fulltext

Uploaded by

Soukaina G
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views106 pages

K0005828 Fulltext

Uploaded by

Soukaina G
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 106

2018 9

I would like to dedicate this thesis to my wife and my entire family.


:

(T

1.

2.
ii

1 1

1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.2 . . . . . . . . . . . . . . . . . . . . . . . . 5

1.1.3 . . . . . . . . . . . . . . . . 6

1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 11

2.1 Frenet-Serret . . . . . . . . 11

2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 16

3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.1.1 jyanome 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.1.2 V2 . . . . . . . . . . . . . . . . . . . . 17

3.1.3 . . . . . . . . . . . . . . . . . . . . 20

3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 Sinus-lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2.3 Pedal wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2.4 Sidewinding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.5 Lateral rolling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.2.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
iii

3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4 34

4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.1.2 κ τ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.1.3 . . . . . . . . . . . . 40

4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.2.3 κ τ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4.2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.2.6 . . . . . . . . . . . . . . 52

5 54

5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

5.1.1 . . . . . . . . . . . . . 54

5.1.2 . . . . . . . . . . . . . . . . . . . . . 58

5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

5.2.1 . . . . . . . . . . . . . . . 63

5.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . 65

5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

6 71

73

80

81
iv

A 84

A.1 κ (s) τ (s) . . . . . . . . . . . . . . . . . . . . . 84

A.2 κ (s) τ (s) . . . . . . . . . . . . . . . . . . . . . . 86

B ROS (Robot Operating System) 88

B.1 ROS . . . . . . . . . . . . . . . . . . . . . . . . 88

B.2 . . . . . . . . . . . . . . . . 89

C 92
v

1.1 Snakes move in different ways, depending on their species. The shading indicates

points where the snake’s ventral scales push against the ground[61].

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 The wheel or crawler-type robot has a simple structure and has a high moving

efficiency on a flat surface, low adaptability in case of a heavy rough surface.

In contrast, snake robots have the possibility of moving in various environments

using them cord-like body. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Serpenoid curve(left) and distribution of normal force(right). . . . . . . . . . . . 3

1.4 One of Hirose’s early Active Cord Mechanisms(ACM-III), which was the world’s

first snake robot(left). The snake robot ACM-R3 developed at Tokyo Institute of

Technology. The snake robot is covered with passive wheels(right). . . . . . . . 4

1.5 The snake robot Sam developed at Carnegie Mellon University. The robot has a

strong and compact joint mechanism and can climb trees(left). The snake robot

Kulko developed at the Norwegian University of Science and Technology. Each

joint module is covered by force sensors in order to measure contact force the

environment(right). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.6 Theory of s-shift control for helical rolling motion. . . . . . . . . . . . . . . . . . 6

1.7 Illustration of ν-shift control method and bend spiral curve that considered θof f set

and βof f set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.8 The snake robot Jyanome2 developed at Okayama University. The robot can

climb pipes with helical form. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.9 The snake robot Sam developed at Carnegie Mellon University. The robot has a

strong and compact joint mechanism and can climb trees. . . . . . . . . . . . . . 8

1.10 Expected application of snake robot . . . . . . . . . . . . . . . . . . . . . . . . . 10


vi

2.1 Coordinate system of Frenet-Serret . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2 Illustration of backbone curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Definition of ψ(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1 Overview of the jyanome2 snake robot showing its kinematic configuration. . . . 17

3.2 Outline of the jyanome2 snake robot’s control system. . . . . . . . . . . . . . . . 18

3.3 Overview of the normal V2 snake robot showing its kinematic configuration. The

solid green line is the pitch joint, and the dashed red line is the yaw joint. . . . . 18

3.4 System configuration of normal V2 snake robot. . . . . . . . . . . . . . . . . . . . 19

3.5 System configuration of normal V2 snake robot. . . . . . . . . . . . . . . . . . . . 19

3.6 Hight-Power type snake robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.7 System diagram of the hight power snake robot platform . . . . . . . . . . . . . . 22

3.8 Serpenoid curve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.9 Serpentine locomotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.10 Sinus lifting motion of a snake. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.11 Sinus-lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.12 Target angles of sinus-lifting motion . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.13 Pedal wave motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.14 Target angles of pedal wave motion . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.15 Sidewinding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.16 Sidewinding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.17 Target angles of sidewinding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.18 lateral rolling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.19 Lateral rolling target angle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.20 helical shapeg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.21 helical rolling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.22 Target angles of helical rolling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33


vii

4.1 The effects of perch incline on locomotor mode and movement. The tracings are

from dorsal view videos of a corn snake ( SVL =102 cm, mass=400 g, 4.1 cm

perch) and show seven consecutive images at equal time intervals within a single

cycle of concertina locomotion (A,B). The downhill sequence (C) is for the same

total time as A. The shaded areas indicate static contact with the perch. (A)

Uphill 90 . (B) Horizontal. (C) Downhill 90 . The times between successive

images of B and C are 0.53 s, and 0.7 s for A. . . . . . . . . . . . . . . . . . . . . 35

4.2 A shape of spiral inchworm in the case of a = 0.2, b = 0.02, c = 0.1, d = 3,

ω = 0.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.3 Parameter settings of inchworm gait. . . . . . . . . . . . . . . . . . . . . . . . . 38

4.4 Curvature κ and torsion τ of inchworm curve. . . . . . . . . . . . . . . . . . . . 39

4.5 The relationship between s and t around protrusion of helical wave curve (a =

0.09, b = 0.02, ω = 0.3, c = 0.04, d = 3). . . . . . . . . . . . . . . . . . . . . . . 40

4.6 Illustration of shift algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.7 Illustration of helical rolling motion: s = l is the head of the snake robot, and

s = 0 is the tail of the snake robot; B is the binormal direction, and T is the

direction tangential to the snake robot’s body. (a) State of a snake robot climbing

a pipe through helical rolling motion. (b) The state is projected in the z-rθ

plane; on this plane, the shape of the snake robot is a line. (right)Helical wave

propagation on z-rθ plane. . . . . . . . . . . . . . . . . . . . . 43

4.8 Hyperbolic function sech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.9 An example of a helical wave curve . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.10 The effects of perch incline on locomotor mode and movement. . . . . . . . . . . 46

4.11 The Curvature κ and torsion τ around the protrusion of the helical wave curve . 47

4.12 An example of value range of A and ω (r = 0.092, n = 0.029, ϕ = 2π). . . . . . . 47

4.13 The relationship between s and t around protrusion of helical wave curve (r = 0.1,

n = 0.02, A = 0.1, ω = 1, ϕ = 2π). . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4.14 Helical wave curve and snake robot shape: (a) planned curve; (b) application to

a snake robot at ∆t. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50


viii

4.15 (a) Explanation of phenomenon of robot dropping. The green part denotes the

snake robot’s trunk attached to the pipe. The yellow part is the part that begins

to form a helical wave curve. The yellow arrow shows the direction of gravity.

(b) Gravity compensation in the part of helical wave propagation. The red arrow

shows the direction of twisting by ψg . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.16 Illustration of shift algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

4.17 Programming flowchart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.1 Simulation results of movement distance along cylinder with three patterns of

parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.2 An example of simulation result with the parameters of pattern B (a = 0.090, b =

0.015, ω = 0.435, c = 0.038, d = 2.29). . . . . . . . . . . . . . . . . . . . . . . . . 56

5.3 An example of experimental result of moving on a pipe with the parameters of

pattern B (a=0.090, b=0.015, c=0.435, d=2.29, e=0.038). . . . . . . . . . . . . 58

5.4 An example of experimental result of stepping over 0.05[m] obstacle on the cylin-

der with helical rolling motion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

5.5 An example of experimental result of stepping over 0.03[m] obstacle on the cylin-

der with spiral inchworm motion with the parameters of pattern B (a=0.090,

b=0.015, c=0.435, d=2.29, e=0.038). . . . . . . . . . . . . . . . . . . . . . . . . 60

5.6 An example of experimental result of stepping over 0.05[m] obstacle on the cylin-

der with spiral inchworm motion with parameters of a = 0.106, b = 0.027, c =

0.417, d = 2.4, e = 0.0287. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.7 An example of a simulation sequence obtained using the helical wave propagation

motion. The figures are separated by intervals of approximately 22[sec]. . . . . . 64

5.8 The transition of angles of head and tail joints. . . . . . . . . . . . . . . . . . . 64

5.9 The positions of the head and tail links on the z-axis in the experiment. . . . . 64

5.10 Experiments to determine parameter A. . . . . . . . . . . . . . . . . . . . . . . . 66

5.11 Experimental results of parameter A. . . . . . . . . . . . . . . . . . . . . . . . . 66

5.12 Overview of the experimental pipe . . . . . . . . . . . . . . . . . . . . . . . . . . 68


ix

5.13 An example of actual machine experiment result of helical wave propagate motion.

In this figure, the snake robot goes through the branch point by using the helical

wave propagate motion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

5.14 Command angle and actual angle of head joint. The part surrounded by the

broken line is the waiting time at which set the parameter A is revised from 0.02

to 0.03. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5.15 Partial enlargement from 94[sec] to 108[sec]. The part surrounded by the broken

line is the joint angle at the time of generation of the helical wave curve. . . . . 69

B.1 ROS Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

B.2 jyanome2-Vrep-structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

B.3 normalV2-Vrep-structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

B.4 Overview of the experimental snake robot and its unit in Gazebo NormalV2 . 91

c.1 An example of experimental result of the influence of gravity . . . . . . . . . . . 93

c.2 Experimental results of the influence of gravity . . . . . . . . . . . . . . . . . . . 93


x

3.1 snake robot locomotions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33


1

1.1

Fig. 1.1 , serpentine locomotion

sidewinding locomotion concertina

locomotion rectilinear locomotion [2, 16, 17, 19, 20, 30, 32, 33, 51]

J.Gray

[16, 32]

[6, 17, 56]

[10]

Fig. 1.2
1 2

Fig. 1.1:Snakes move in different ways, depending on their species. The shading indicates points
where the snake’s ventral scales push against the ground[61].

Fig. 1.2:The wheel or crawler-type robot has a simple structure and has a high moving efficiency
on a flat surface, low adaptability in case of a heavy rough surface. In contrast, snake robots
have the possibility of moving in various environments using them cord-like body.
1 3

1.1.1

Matsuno

[34, 35, 36] Liljebäck

[3, 4, 31] Sato

[45, 48, 50]

[8]

[34]

Hirose

(Serpenoid

Curve) (Fig. 1.3 left)

Fig. 1.3:Serpenoid curve(left) and distribution of normal force(right).


1 4

(Fig. 1.3 right) 1972 2

(Fig. 1.4) [19, 20, 28, 38, 39]

2 3

Chirikjian

backbone curve reference set

[7]

Mori

3 3

ACM-R3(Fig. 1.4) sinus-lifting sidewinding

loop wheeling motion [37, 38]

Yamada

[38, 47, 53] Date

[8, 9, 53]

Mori Yamada

Fig. 1.4:One of Hirose’s early Active Cord Mechanisms(ACM-III), which was the world’s first
snake robot(left). The snake robot ACM-R3 developed at Tokyo Institute of Technology. The
snake robot is covered with passive wheels(right).
1 5

Fig. 1.5:The snake robot Sam developed at Carnegie Mellon University. The robot has a strong
and compact joint mechanism and can climb trees(left). The snake robot Kulko developed at
the Norwegian University of Science and Technology. Each joint module is covered by force
sensors in order to measure contact force the environment(right).

1.1.2

Hirose

[19] Mori 3

ACM-R3(Fig. 1.4) [38, 53, 54, 55, 57] Kamegawa

s- v- s-

Fig. 1.6

∆s

v- Fig. 1.7

Kamegawa v-
1 6

Fig. 1.6:Theory of s-shift control for helical rolling motion.

[25] s-

1.1.3

Kamegawa Frenet-Serret

(Fig. 1.8)

[9, 24, 25, 26] Rollinson

(Fig. 1.9)

[11, 12, 13, 14, 15, 52] 3


1 7

Fig. 1.7:Illustration of ν-shift control method and bend spiral curve that considered θof f set and
βof f set .

Tanaka

[49]

1.2
1 8

Fig. 1.8:The snake robot Jyanome2 developed at Okayama University. The robot can climb
pipes with helical form.

Fig. 1.9:The snake robot Sam developed at Carnegie Mellon University. The robot has a strong
and compact joint mechanism and can climb pipes.
1 9

(T )

ROS

2015 (Impulsing Paradigm

Change through Disruptive Technologies Program, ImPACT)

V2

V2

1.3

6 1
1 10

Fig. 1.10:Expected application of snake robot

2 3

6
11

[9, 38, 53, 60]

Frenet-Serret

2.1 Frenet-Serret

Fig. 2.1 c c

( )s Frenet-Serret

κ(s) τ (s) [59]




 dc (s) /ds = e1 (s)




 de1 (s) /ds = κ (s) e2 (s)
(2.1)

 = −κ (s) e1 (s) + τ (s) e3 (s)


de2 (s) /ds


 de (s) /ds = −τ (s) e2 (s)
3

c (s) = [(x (s) y (s) z (s)]T

s e1 (s) e2 (s) e3 (s)

e1 (s) e2 (s) e3 (s) e3 = e1 × e2

(2.1) τ (s) dse1 (s) + κ (s) dse3 (s)

e1 ds e1 e2 e3

c
2 12

Fig. 2.1:Coordinate system of Frenet-Serret

2.2

(2.1) Frenet-Serret

[8, 9, 24, 53, 54]

Fig. 2.2 ( ) er ep ey

er ep

ey

c


 dc (s) /ds = er (s)




 der (s) /ds = κy (s) ep (s) − κp (s) ey (s)
(2.2)

 dep (s) /ds = −κy (s) er (s) + τr (s) ey (s)




 de (s) /ds = κp (s) er (s) − τr (s) ep (s)
y

κp (s) κy (s) τr (s)

(2.2) Frenet-Serret (2.1)

er ep ey τ (s) dser (s) + κp (s) dsep (s) + κy (s) dsey (s)

τr (s) = 0
2 13

Fig. 2.2:Illustration of backbone curve



 dc (s) /ds = er (s)




 der (s) /ds = κy (s) ep (s) − κp (s) ey (s)
(2.3)

 dep (s) /ds = −κy (s) er (s)




 de (s) /ds = κp (s) er (s)
y

Fig. 2.3 e2 (s) ep (s) ψ(s)



 ep (s) = e2 (s) cos ψ(s) − e3 (s) sin ψ(s)
(2.4)
 e (s) = e (s) sin ψ(s) + e (s) cos ψ(s)
y 2 3

e1 (s) = er (s)

κ(s)e2 (s) = κy (s)ep (s) − κp (s)ey (s) (2.5)

(2.1) (2.2)

 κ(s)e1 (s) + τ (s)e3 (s) = κy (s)e1 (s)
(2.6)
 −τ (s)e (s) = κ (s)e (s)
2 p r

(2.6) e2 (s) e3 (s) (2.4)


2 14

Fig. 2.3:Definition of ψ(s)


 κ(s) = κy (s) cos ψ(s) − κp (s) sin ψ(s)
(2.7)
 0 = κ (s) sin ψ(s) + κ (s) cos ψ(s)
y p

(2.1) (2.3) (2.4)

d(e2 (s)ep (s)) de2 (s) dep (s)


= ep (s) + e2 (s)
ds ds ds

= −τ sin ψ(s) (2.8)

e2 (s) ep (s) = cosψ(s) (2.8)

d cos ψ(s) dψ(s)


= sin ψ(s) = −τ sin ψ(s)
ds ds

dψ(s)
ds = τ (s) (2.9)

κp (s) κy (s) κ(s) τ (s) Frenet-Serret



 κp (s) = −κ (s) sin (ψ (s))



κy (s) = κ (s) cos (ψ (s)) (2.10)

 ∫ s


 ψ (s) = τ (s) ds+ψ (0)
0
2 15

ψ(0)

ψ(0) = 0 (2.10) Frenet-Serret 3

κp (s) κy (s)

2.3

κp (s) κy (s)

δs s

κp (s)δs κy (s)δs

pitch yaw

pitch yaw δs, i = 1, 2, ·


 θd = κp (iδs)2δs (i = 1, 3, 5, ...)
p
(2.11)
 θd = κ (iδs)2δs (i = 2, 4, 6, ...)
y y

θpd pitch θyd yaw

DH
16

2018 5

ROS(Robot Operating System)

V-rep Gazebo

ROS

3.1

3.1.1 jyanome 2

1.1.1

[21]

jyanome 2

[24] Fig. 3.1 pitch yaw

1Unit

1Unit

1Unit 145[mm] 50[mm]

210[g] 88[mm]
3 17

Fig. 3.1:Overview of the jyanome2 snake robot showing its kinematic configuration.

(Dynamixel RX-28)

PC RS485 RX-28

15[V]

3.70[N·m]

Fig. 3.2 PC OS Ubuntu14.04

ROS indigo ( B )

3.1.2 V2

V2 Fig. 3.3

(Dynamixel XH-430R)

pitch yaw
3 18

Fig. 3.2:Outline of the jyanome2 snake robot’s control system.

Fig. 3.3:Overview of the normal V2 snake robot showing its kinematic configuration. The solid
green line is the pitch joint, and the dashed red line is the yaw joint.
3 19

Fig. 3.4:System configuration of normal V2 snake robot.

Fig. 3.5:System configuration of normal V2 snake robot.


3 20

XH430-W350 FR12-H101K FR12-S102K

2 Fig 3.4

A5052P (AL-Mn )

3D

ABS

±90◦ . 71.75[mm] 70[mm](

) 3.0[kg]

jyanome 2 ROS

PC RS485

15[V]

4.80[N·m]

3.1.3

2.0[m] 9.0[kg]

Fig. 3.6

EPDM 20[mm] 10[mm]

PC

10.4[mm]

10[m] 6 ×15AWG
3 21

Fig. 3.6:Hight-Power type snake robot

rotary630

GoPro HERO5 LED

NEEWER LED

Apple iPad Air2

20

ROBOTIS Dynamixel MX-106

Dynamixel

SUS304-CP 1

Dynamixel

20

Fig. 3.7

2 1 THK SEED MS1A

USB AE-FT234X

USB-CAN converter PC , IMU


3 22

Fig. 3.7:System diagram of the hight power snake robot platform

CAN

48[V] 1000[W]

TDK-Kambda HWS100-48 48[V] DCDC

COSEL CDS4004815 15[V]

COSEL CBS2004812 12[V]

3.2

3.2.1

jyanome2 Hirose

(serpenoid curve)

Fig. 3.8
3 23

Fig. 3.8:Serpenoid curve

yaw κyaw (s) pitch κpitch (s)

[19, 20, 38]

   
απ
κyaw (s) sin( sπ
2l ) + bias
 = 2l  (3.1)
κpitch (s) 0

α l 1/4 s bias

pitch κpitch (s) 0

ν s

(3.1) (2.11)

Fig.3.9

(sideslip

constraints)

2
3 24

Fig. 3.9:Serpentine locomotion

3.2.2 Sinus-lifting

Fig.3.10

Sinus-lifting

[19, 46]

Sinus-lifting

   
αyaw π
κyaw (s) sin(2π sπ
2l ) + biasyaw
 = 2l  (3.2)
αpitch π
κpitch (s) 2l sin(4π sπ
2l ) + biaspitch

αyaw αpitch yaw pitch l 1/4

s biasyaw biaspitch

biaspitch = 0

ν s

(3.3) (2.11)

(3.3) Fig. 3.12 Fig. 3.11


3 25

Fig. 3.10:Sinus lifting motion of a snake.

Fig. 3.11:Sinus-lifting

jyanome 2 sinus-lifting Sinus-lifting

3.2.3 Pedal wave

Pedal wave

Yamada

Pedal wave [58]

Pedal wave 2 3 Pedal wave 2 Pedal

wave 3.2.1 yaw

0 pitch 3 Pedal wave

sinus-lifting V2 2 Pedal wave


3 26

Fig. 3.12:Target angles of sinus-lifting motion

Pedal wave

   
αyaw π
κyaw (s) sin(4π sπ
2l ) + biasyaw
 = 2l  (3.3)
αpitch π
κpitch (s) 2l sin(2π sπ
2l ) + biaspitch

αyaw αpitch yaw pitch l 1/4

s biasyaw biaspitch

biaspitch = 0 Fig.

3.13 V2 pedal-wave

Fig.3.14 yaw pitch Pedal wave

3.2.4 Sidewinding

Sidewinding [6, 51, 56] Fig. 3.15

Sidewinding

Sidewinding 0
3 27

Fig. 3.13:Pedal wave motion

Fig. 3.14:Target angles of pedal wave motion


3 28

Fig. 3.15:Sidewinding

Fig. 3.16:Sidewinding

   
αyaw π
κyaw (s) sin( sπ
2l ) + biasyaw
 = 2l  (3.4)
αpitch π
κpitch (s) 2l sin( sπ
2l + β) + biaspitch

αyaw αpitch yaw pitch l 1/4

s biasyaw biaspitch

biaspitch = 0

ν s

(3.4) (2.11)

jyanome2 Sidewinding Fig. 3.17

yaw pitch Sidewinding

3
3 29

Fig. 3.17:Target angles of sidewinding

3.2.5 Lateral rolling

Lateral rolling U

yaw pitch 90[deg]

Lateral rolling

ω yaw cos pitch sin

p θ d (t) = A sin (ωt)


(3.5)
y θ d (t) = A cos (ωt)

p θ d (t) pitch y θ d (t) yaw A

V2 Lateral rolling

Fig. 3.18 Lateral rolling Fig. 3.19 yaw pitch

Lateral rolling

3.2.6

(Helical rolling motion) Lateral

rolling

Fig. 3.21 [24, 25]


3 30

Fig. 3.18:lateral rolling

Fig. 3.19:Lateral rolling target angle

Helical rolling [27]

[5]

e θ d (i, t)
i = −2δsκ sin (τ iδs + ψ (t)) (i = even)
(3.6)
o θ d (i, t) = 2δsκ cos (τ iδs + ψ (t)) (i = odd)
i

e θ d (i, t) o θ d (i, t) i
i i

i = 0, 1, 2 · · · δs κ τ ψ (t)
3 31

Fig. 3.20:helical shapeg

(3.6) κ τ

Fig.3.19 yaw pitch

3.3

Sinus-lifting

pedal wave [58, 39]


3 32

Fig. 3.21:helical rolling

Lateral rolling

lateral rolling

[12]

(T

)
3 33

Fig. 3.22:Target angles of helical rolling

2D/3D
2D
Sinus-lifting 3D
Pedal wave 3D
Sidewinding 3D
Lateral rolling
Helical rolling 3D
Inchworm gait 3D
Helical wave propagation 3D

Table 3.1:snake robot locomotions


34

[5, 12, 13, 14, 24]

Inchworm Gait

[41]

Helical Wave Propagation Motion [42, 43]

4.1

Astley

Fig. 4.1 [1, 22, 23] Fig. 4.1 A


4 35

Fig. 4.1:The effects of perch incline on locomotor mode and movement. The tracings are from
dorsal view videos of a corn snake ( SVL =102 cm, mass=400 g, 4.1 cm perch) and show seven
consecutive images at equal time intervals within a single cycle of concertina locomotion (A,B).
The downhill sequence (C) is for the same total time as A. The shaded areas indicate static
contact with the perch. (A) Uphill 90 . (B) Horizontal. (C) Downhill 90 . The times between
successive images of B and C are 0.53 s, and 0.7 s for A.

Fig. 4.1 B

(2.1) κ τ

κ τ

κ τ

Fig. 4.2
4 36

Fig. 4.2:A shape of spiral inchworm in the case of a = 0.2, b = 0.02, c = 0.1, d = 3, ω = 0.2



 x(t) = (a − b sin ωt) cos t


y(t) = (a − b sin ωt) sin t (4.1)



 z(t) = c(d cos ωt + t)

a b ω

d z

c z

t Fig. 4.2
4 37

4.1.1

(4.1)

(4.1) Fig. 4.3 z

(a − b) (a + b)

(a − b)

(a + b) rr

rp h

a b


 a − b = rp + rr
(4.2)
 a+b=r +r +h
p r

ω ω

n( n > 1) 1/n

1 (4.3)
n <ω<1

t z

dz
dt = c(1 − ωd sin ωt) ≥ 2rr (4.4)
4 38

Fig. 4.3:Parameter settings of inchworm gait.

c c>0

ωd < 1 d

(b = 0, d = 0)

L rr n t = 2πn

2πnrr

z 2πnc L

L2 = (2πnrr )2 + (2πnc)2 (4.5)

(4.5) c c
4 39

Fig. 4.4:Curvature κ and torsion τ of inchworm curve.

4.1.2 κ τ

κ τ


(ẏz̈−ż ÿ)2 +(ż ẍ−ẋz̈)2 +(ẋÿ−ẏẍ)2
κ(t) = 3 (4.6)
(ẋ2 +ẏ 2 +ż 2 ) 2

x(3) (ẏz̈−ż ÿ)+y (3) (ż ẍ+ẋz̈)+z (3) (ẋÿ+ẏẍ)


τ (t) = (ẏz̈−ż ÿ)2 +(ż ẍ−ẋz̈)2 +(ẋÿ−ẏẍ)2
(4.7)

ẋ ẍ x t 1 2 x(3) x t 3

Fig. 4.4 κ τ

κ τ κ

τ A

(4.6) (4.7) κ τ

t κ(t) τ (t)
4 40

Fig. 4.5:The relationship between s and t around protrusion of helical wave curve (a = 0.09,
b = 0.02, ω = 0.3, c = 0.04, d = 3).

s κ(s) τ (s) t=0

t=θ s

∫θ√
s(t) = 0 ( dx(t) 2 dy(t) 2 dz(t) 2
dt ) + ( dt ) + ( dt ) dt
(4.8)

(4.1) (4.8) Fig. 4.5 Fig. 4.5

t s(t) [42]

s s

Matlab C++

4.1.3
4 41

κ(s) τ (s) ψ(s)

Fig. 4.6

1.

δs l M ∆s = l/M

2. ṡ sh

3. sh ∆s κ(s(t)) τ (s(t))

4. θ 2

1 1

(4.1)

0[deg]
4 42

Fig. 4.6:Illustration of shift algorithm.


4 43

Fig. 4.7:Illustration of helical rolling motion: s = l is the head of the snake robot, and s = 0 is
the tail of the snake robot; B is the binormal direction, and T is the direction tangential to the
snake robot’s body. (a) State of a snake robot climbing a pipe through helical rolling motion.
(b) The state is projected in the z-rθ plane; on this plane, the shape of the snake robot is a line.
(right)Helical wave propagation on z-rθ plane.

4.2

(Helical Rolling Motion) [24, 15, 14] Fig. 4.7

(B )

[41]

Fig. 4.7(right)

4.2.1

(4.9)
4 44

Fig. 4.8:Hyperbolic function sech



 x = a(t) cos(t)


y = a(t) sin(t) (4.9)



 z = b(t)

a(t) = ρ(t) + r
(4.10)
n
b(t) = 2π t

ρ(t) = Asech(ωt − ϕ)
(4.11)
{A ∈ R | A > 0}, {ω ∈ R | ω > 0}, ϕ ∈ R

(4.11) t

Fig. 4.8 A

(4.11) A “ ” ω “ ” ϕ

(4.9) (4.10) (4.11) Fig. 4.9


4 45

Fig. 4.9:An example of a helical wave curve

4.2.2

(4.9) (4.10) r

Fig. 4.10 r rr rp

r = rr + rp (4.12)

n z Fig. 4.10

2rr wb

2πn ≥ wb + 2rr (4.13)


4 46

Fig. 4.10:The effects of perch incline on locomotor mode and movement.

A ω r r+A

1/ω A ω

Fig. 4.11 A ω

Fig. 4.11

ω=1 ω

ω 1

ω 1

[24, 38, 42]

±90

κ 13.08 κ 13.08 A ω

Fig. 4.12 A ω
4 47

Fig. 4.11:The Curvature κ and torsion τ around the protrusion of the helical wave curve

Fig. 4.12:An example of value range of A and ω (r = 0.092, n = 0.029, ϕ = 2π).

ϕ sech

t 0 ϕ 2π

ϕ = 2π

4.2.3 κ τ

κ τ
4 48


(ẏz̈−ż ÿ)2 +(ż ẍ−ẋz̈)2 +(ẋÿ−ẏẍ)2
κ(t) = 3 (4.14)
(ẋ2 +ẏ 2 +ż 2 ) 2

x(3) (ẏz̈−ż ÿ)+y (3) (ż ẍ+ẋz̈)+z (3) (ẋÿ+ẏẍ)


τ (t) = (ẏz̈−ż ÿ)2 +(ż ẍ−ẋz̈)2 +(ẋÿ−ẏẍ)2
(4.15)

ẋ ẍ x t 1 2 x(3) x t 3

Matlab κ τ Fig. 4.11

(4.14) (4.15) κ τ

t κ(t), τ (t)

s κ(s), τ (s) t=0

t=θ s

∫θ√
s(t) = 0 ( dx(t) 2 dy(t) 2 dz(t) 2
dt ) + ( dt ) + ( dt ) dt
(4.16)

( dx(t) 2 dy(t) 2 dz(t) 2


dt ) + ( dt ) + ( dt ) =
(4.17)
( da(t) 2 2 db(t) 2
dt ) + (a(t)) + ( dt )

(4.9) (4.10) (4.11) (4.16) Fig. 4.13

Fig. 4.13

t s(t) 4.2.6

s s Matlab

C++
4 49

Fig. 4.13:The relationship between s and t around protrusion of helical wave curve (r = 0.1,
n = 0.02, A = 0.1, ω = 1, ϕ = 2π).

4.2.4

Fig. 4.14

Fig. 4.14(a) C

S(0, 0) ∆t

S(−∆s, ∆t) ∆s

Fig. 4.14(b)

C s=0 t=0

κc (0, 0) ψc (0, 0)

T (0, 0) κs (0, 0) ψs (0, 0) t = ∆t

S κc (−∆s, ∆t) ψc (−∆s, ∆t)

Fig. 4.14(b) T (0, ∆t) κs (0, ∆t)

κs (0, ∆t) = κc (−∆s, ∆t) (4.18)


4 50

Fig. 4.14:Helical wave curve and snake robot shape: (a) planned curve; (b) application to a
snake robot at ∆t.

P (∆s, ∆t) ψs (∆s, ∆t) ψs (∆s, 0)

ψs (0, ∆t)

ψs (0, 0) + ψs (∆s, 0) = ψs (0, ∆t) + ψs (∆s, ∆t) (4.19)

ψs (∆s, ∆t)

ψs (∆s, ∆t) = −ψc (−∆s, ∆t) (4.20)

ψs (0, ∆t)

ψs (0, ∆t) = ψs (0, 0) + ψs (∆s, 0) + ψc (−∆s, ∆t) (4.21)

ψs (0, ∆t) ψs′


4 51

Fig. 4.15:(a) Explanation of phenomenon of robot dropping. The green part denotes the snake
robot’s trunk attached to the pipe. The yellow part is the part that begins to form a helical
wave curve. The yellow arrow shows the direction of gravity. (b) Gravity compensation in the
part of helical wave propagation. The red arrow shows the direction of twisting by ψg .

4.2.5

Fig. 4.15(a)

ψg

∫ s
ψ (s) = τ (s) ds+ψ (0) + ψg
0

 (4.22)
 ψg = τg (0 ≤ s ≤ sc )
 ψ = 0 (s < s )
g c
4 52

4.2.6

4.1.3

κ(s) τ (s) ψ(s) 4.2.5 ψg

Fig. 4.16

1.

δs L M δs = l/M

2. C ṡ

sT

3. ∆s κ(s) τ (s) ψ(s)

4.

5. θ 2

Fig. 4.17
4 53

Fig. 4.16:Illustration of shift algorithm.

Fig. 4.17:Programming flowchart.


54

[3, 29]

ROS(Robot Operating System)

ROS

[40, 44]

Gazebo V-rep(Virtual robot experimentation platform)

ODE(Open Dynamics Engine) [41]

jyanome2 V2

5.1

5.1.1

ODE(Open Dynamics Engine)

ODE

Fig. 3.3

(18 )
5 55

Fig. 5.1:Simulation results of movement distance along cylinder with three patterns of parame-
ters.

0.057[m] ODE

0.7 n

n = 2.3

ṡ=0.6[m/s]

(4.1) a, b, ω, c, d 4.1.1

(4.2) rc = 0.057 rr = 0.025 h = 0.03 a = 0.097 b = 0.015

ω (4.3)

ω = 0.435 c (4.5) c = 0.038 d

(4.4) d = 2.29

pattern A Fig. 5.1

pattern A Fig. 5.1

0.10[m/s]
5 56

Fig. 5.2:An example of simulation result with the parameters of pattern B


(a = 0.090, b = 0.015, ω = 0.435, c = 0.038, d = 2.29).

rc = 0.050

a a = 0.090

pattern A pattern B

Fig. 5.1 pattern B

0.21[m/s] Fig. 5.2

Fig. 5.2 0.1[sec]

pattern B
5 57

pattern

A ω ω = 0.600 d d = 1.67

a a = 0.080 pattern C

Fig. 5.1 pattern C

0.16[m/s] pattern C

ω d

(4.1)

(2.10) τ

5.5
5 58

Fig. 5.3:An example of experimental result of moving on a pipe with the parameters of pattern
B (a=0.090, b=0.015, c=0.435, d=2.29, e=0.038).

5.1.2

9 (18 )

0.057[m]

Fig. 5.3 (4.1) a, b, ω, c, d

pattern B

ṡ = 0.5[m/s]

0.15[m/s]
5 59

κ(s) τ (s)

0.01[m]

0.03[m]

Fig. 5.4

0.05[m]

(4.1) a, b, ω, c, d

pattern B

0.01[m]

0.03[m]

Fig. 5.5

0.05[m]

Fig. 5.6

a = 0.106, b = 0.027, ω = 0.417, d = 2.4, c = 0.0287


5 60

Fig. 5.4:An example of experimental result of stepping over 0.05[m] obstacle on the cylinder
with helical rolling motion.

Fig. 5.5:An example of experimental result of stepping over 0.03[m] obstacle on the cylinder
with spiral inchworm motion with the parameters of pattern B (a=0.090, b=0.015, c=0.435,
d=2.29, e=0.038).
5 61

2
5 62

Fig. 5.6:An example of experimental result of stepping over 0.05[m] obstacle on the cylinder with
spiral inchworm motion with parameters of a = 0.106, b = 0.027, c = 0.417, d = 2.4, e = 0.0287.
5 63

5.2

5.2.1

0.10[m] 6.00[m] 1.00[m]

0.10[m] Gazebo

Fig. B.4 Gazebo

V2

31

0.5

, (4.9) (4.10) (4.11) 4.2.2

r = 0.9 n = 0.027 A = 0.03 ω = 1 ϕ = 2π

Fig. 5.7 22[sec] Fig. 5.8

Fig. 5.9

z 0.003[m/s]
5 64

Fig. 5.7:An example of a simulation sequence obtained using the helical wave propagation
motion. The figures are separated by intervals of approximately 22[sec].

Fig. 5.8:The transition of angles of head and tail joints.

Fig. 5.9:The positions of the head and tail links on the z-axis in the experiment.
5 65

5.2.2

Fig. 4.12 A ω

Fig. 5.10(a)

10 10

Fig. 5.11

ψg

0 r = 0.087 n = 0.026 ω = 1 ϕ = 2π

A = 0.01

[43]

Fig. 5.10(b)

A = 0.02

Fig. 5.10(c)

A = 0.03 4

Fig. 5.10(b) 6

A x

A 0.02
5 66

Fig. 5.10:Experiments to determine parameter A.

Fig. 5.11:Experimental results of parameter A.


5 67

Fig. 5.12 0.057[m] PVC

2.12[m] 1[m]

rr = 0.035 rp = 0.057 4.2.2

r = 0.092 n = 0.029

Fig. 5.13 r = 0.085 n = 0.029 A = 0.020 ω = 1 ϕ = 2π

4.2.5 ψg = 0.0027

A 0.020 0.030

Fig. 5.14 83[sec]

90[sec] A

Fig. 5.15 Fig. 5.15


5 68

Fig. 5.12:Overview of the experimental pipe

Fig. 5.13:An example of actual machine experiment result of helical wave propagate motion. In
this figure, the snake robot goes through the branch point by using the helical wave propagate
motion.
5 69

Fig. 5.14:Command angle and actual angle of head joint. The part surrounded by the broken
line is the waiting time at which set the parameter A is revised from 0.02 to 0.03.

Fig. 5.15:Partial enlargement from 94[sec] to 108[sec]. The part surrounded by the broken line
is the joint angle at the time of generation of the helical wave curve.
5 70

5.3

.
71

pitch yaw

(Wrench)
6 72

ψg

IMU(Inertial Measurement Unit)

T
73

[1] H. Astley and B. Jayne: ”Effects of perch diameter and incline on the kinematics, per-

formance and modes of arboreal locomotion of corn snakes”, The Journal of Experimental

Biology, Vol. 210, pp. 3862-3872, 2007.

[2] Aksel Andreas Transeth and Kristin Ytterstad Pettersen: ”Developments in Snake Robot

Modeling and Locomotion”, Pro. of the 9th International Conference on Control, Automa-

tion, Robotics and Vision, ] ICARCV ’06., 2006

[3] Aksel Andreas Transeth, Kristin Ytterstad Pettersen and Pal Liljeback: ”3-D Snake Robot

Motion: Nonsmooth Modeling, Simulations, and Experiments”, IEEE TRANSACTIONS

ON ROBOTICS, Vol.24, No. 2, pp. 361-376, 2008.

[4] Aksel Andreas Transeth, Kristin Ytterstad Pettersen and Pal Liljeback: ”A survey on snake

robot modeling and locomotion”, Robotica, Vol. 27, pp. 999-1015, 2009.

[5] T. Baba, Y. Kameyama, T. Kamegawa and Akio Gofuku: ”A snake robot propelling inside

of a pipe with helical rolling motion”, Proc. of the SICE Annual Conf., pp.2319-2325, 2010.

[6] J.W. Burdick, J. Radford and G.S. Chirikjian : ”A ’sidewinding’ locomotion gait for hyper-

redundant robots”, Advanced Robotics, Vol. 9, pp. 195-216, 1995.

[7] Gregory S. Chirikjian,Joel W. Burdick: Parallel formulation of the inverse kinematics

of modular hyper-redundant manipulators”, Proc. of IEEE Int.Conf. on Robotics and Au-

tomation, vol.1, pp.708-713, 1991.

[8] :

8 , pp.244-249,

2003.
74

[9] Hisashi Date and Yoshihiro Takita: Control of 3D Snake-Like Locomotive Mechanism

Based on Continuum Modeling ASME2005 International Design Engineering Technical

Conf. Computers and Information in Engineering Conf. pp.1351-1359, 2005

[10] :

, Vol.53, No.12, pp.512-517, 2009.

[11] David Rollinson and Howie Choset : ”Virtual Chassis for Snake Robots”, In Proceedings

of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 221-226,

2011

[12] Rollinson, D. and Choset, H. : ”Gait-Based Compliant Control for Snake Robots”, Proc.

of the IEEE Int. Conf. on Robotics and Automation, pp.5123-5128, 2013.

[13] David Rollinson : ”Control and Design of Snake Robots”, PhD Thesis, Tech. Report,

CMU-RI-TR-14-13, Robotics Institute, Carnegie Mellon University, June 2014.

[14] David Rollinson and Howie Choset : ”Pipe Network Locomotion with a Snake Robot”,

Journal of Field Robotics, Vol. 33, pp. 322-336, 2016.

[15] Florian Enner, David Rollinson and Howie Choset : ”Motion Estimation of Snake Robots

in Straight Pipes”, In Proceedings of the IEEE International Conference on Robotics and

Automation (ICRA), pp.5168-5173, 2013.

[16] J. Gray: ”The Mechanism of Locomotion in Snakes”, Journal of Experimental Biology,

Vol.23, pp101-120, 1946.

[17] Hamidreza Marvi, Chaohui Gong, Nick Gravish, Henry Astley, Matthew Travers, Ross

L. Hatton, Joseph R. Mendelson III, Howie Choset, David L. Hu, Daniel I. Goldman:

Parameterized and Scripted Gaits for Modular Snake Robots , Science, Vol. 346, Issue

6206, pp. 224-229, 2014.

[18] M. Hines, J. J. Blum; ”Three-dimensional mechanics of eukaryotic flagella”, Biophysical

Journal, vol.41, No.1, pp.67-79. 1983.

[19] 1987.
75

[20] Shigeo Hirose and Hiroya Yamada: ”Snake-Like Robots Machine Design of Biologically

Inspired Robots”, IEEE Robotics & Automation Magazine , Vol.16, Issue:1, pp88-98, 2009.

[21] David L. Hu, Jasmine Nirody, Terri Scott, and Michael J. Shelley: ”The mechanics of

slithering locomotion”, Proceedings of the National Academy of Sciences USA, Vol.106,

No:25, pp. 10081-10085, 2009.

[22] Bruce C. Jayne, Justin T. Baum and Greg Byrnes: ”Incline and peg spacing have interactive

effects on the arboreal locomotor”, The Journal of Experimental Biology, Vol. 216, pp. 3321-

3331, 2013.

[23] Bruce C. Jayne, Steven J. Newman, Michele M. Zentkovich and H. Matthew Berns: ”Why

arboreal snakes should not be cylindrical body shape incline”, The Journal of Experimental

Biology, Vol. 218, pp. 3978-3986, 2015.

[24] Tetsushi Kamegawa, Takaaki Harada and Akio Gofuku: ”Realization of cylinder climbing

locomotion with helical form by a snake robot with passive wheels”, IEEE International

Conference on Robotics and Automation, pp.3067-3072, 2009.

[25] Tetsushi Kamegawa, Takaaki Harada and Akio Gofuku: ”V-shift control for snake robot

moving the inside of a pipe with helical rolling motion”, IEEE International Symposium on

Safety, Security and Rescue Robotics, pp.1-6, 2011.

[26]

28 pp. RSJ2010AC3N3-3

2010

[27] Kevin Lipkin, Isaac Brown, Aaron Peck, Howie Choset: ”Differentiable and Piecewise Dif-

ferentiable Gaits for Snake Robots”, Proceedings of the IEEE/RSJ International Conference

on Intelligent Robots and Systems, pp. 1864-1869, 2007.

[28] Eleni Kelasidi, Mansoureh Jesmani, Kristin Y. Pettersen and Jan Tommy Gravdahl : ”Lo-

comotion Efficiency Optimization of Biologically Inspired Snake Robots”, Applied Sciences,

DOI: 10.3390/app8010080, 2018


76

[29] N. Koenig and A. Howard, Design and Use Paradigms for Gazebo, An Open-source Multi-

Robot Simulator, Int. Conf. on Intelligent Robots and Systems, 2004.

[30] Liljebäck, P., Kristin Ytterstad Pettersen, Oyvind Stavdahl, Jan Tommy Gravdahl Snake

Robots: Modelling, Mechatronics, and Control Springer Science & Business Media, 2012.

[31] Liljebäck, P., Pettersen, K.Y., Stavdahl, O., Gravdahl, J.T. : ”Snake Robots Modelling,

Mechatronics, and Control”, Springer, 2013.

[32] Shugen Ma: Analysis of creeping locomotion of a snake-like robot”, Advanced Robotics,

Vol. 15, No. 2, pp. 205-224, 2001.

[33]

Vol.20 No.3 pp.261-264 2002.

[34] ,

, Vol.36, No.12, pp.1108-1116, 2000.

[35] Fumitoshi Matsuno and Kazutaka Mogi: Redundancy Controllable System and Control

of Snake Robots Based on Kinematic Model The 39th IEEE Conference on Decision and

Control Sydney, pp.4791-4796, 2000

[36] Fumitoshi Matsuno and Kazutaka Mogi: Trajectory Tracking Control of Snake Robots

Based on Dynamic Model The 2005 IEEE International Conference on Robotics and Au-

tomation, pp.3029-3034, 2005

[37] Makoto Mori and Shigeo Hirose Development of Active Cord Mechanism ACM-R3 with

Agile 3D mobility , IEEE RSJ International Conf. on Intelligent Robots and Systems, Vol.

3, pp. 1552-1557, 2001.

[38] ACM-R3

Vol.23 No.7 pp.886-897 2005.

[39] : ” ACM-R7

”, , Vol. 28 No. 7, pp. 880 888, 2010


77

[40] C. Pizarro, Patricio, T.V. Arredondo, and M.T. Torriti, Introductory Survey to Open-

Source Mobile Robot Simulation Software Robotics Symposium and Intelligent Robotic

Meeting (LARS), pp.150-155, 2010.

[41] T. Kamegawa, W. Qi, A. Gofuku: A Proposal of Spiral Inchworm Gait for a Snake Robot

Moving on a Cylinder Transactions of the Society of Instrument and Control Engineers,

Vol. 51, No. 1, pp. 8-15,2015 (Japanese).

[42] Wei QI, T. amegawa, A. Gofuku: Proposal of helical wave propagate motion for a snake

robot to across a branch on a pip Proc. of IEEE/SICE International Symposium on

System Integration, pp.821-826, 2016

[43] Wei QI, T. amegawa, A. Gofuku: Helical wave propagate motion on a vertical pipe with

a branch for a snake robot The 2nd International Symposium on Swarm Behavior and

Bio-Inspired Robotics, 2017

[44] M. Quigley et al, ROS: an open-source Robot Operating System, ICRA Workshop on Open

Source Software, vol.3, No.3.2, p.5, 2009.

[45] , ,

, Vol.42, No.6, pp.651-658, 2006.

[46] Satoshi Toyoshima, Motoyasu Tanaka, Fumitoshi Matsuno A Study on Sinus-Lifting

Motion of a Snake Robot With Sequential Optimization of a Hybrid System , IEEE

TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, Vol. 11 No. 1,

pp. 139-144, 2014.

[47]

Vol. 22 No. 5 pp.625-635 2004

[48] ”3 ”,

, Vol. 44, No. 12, pp.970-978, 2008.

[49] , ,

, Vol.48, No. 10, pp.664-67,


78

2012.

[50] Motoyasu Tanaka and Fumitoshi Matsuno: ”Modeling and Control of Head Raising Snake

Robots by Using Kinematic Redundancy”, Journal of Intelligent & Robotic Systems, Vol.

75, No. 1, pp. 53-69, 2014.

[51] Matthew Tesch, Kevin Lipkin, Isaac Brown, Ross Hatton, Aaron Peck, Justine Rembisz,

Howie Choset: Sidewinding with minimal slip: Snake and robot ascent of sandy slopes

, Advanced Robotics, Vol. 23, No. 9, pp. 1131-1158(28), 2009.

[52] Cornell Wright, Aaron Johnson, Aaron Peck, Zachary McCord, Allison Naaktgeboren,

Philip Gianfortoni, Manuel Gonzalez-Rivero, Ross Hatton, and Howie Choset : ”Design

of a Modular Snake Robot”, Pro. of the IEEE/RSJ International Conference on Intelligent

Robots and Systems, pp. 2609-264, 2007.

[53] H. Yamada and S. Hirose: Study on the 3D Shape of Active Cord Mechanism”, IEEE

Int. Conf. on Robotics and Automation, pp. 2890-2895, 2006.

[54] , : ”

”, , Vol. 26 No. 1, pp.110 120, 2008.

[55] , : ” ACM

sinus-lifting ”, , Vol. 26 No. 7, pp. 801 811, 2008.

[56] , : ” Sidewinding ”, 26

, ROMBUNNO.3A2-01, 2008.

[57] H. Yamada and S. Hirose: Approximations to Continuous Curves of Active Cord Mech-

anism Made of Arc-shaped joints or Double Joints”, IEEE Int. Conf. on Robotics and

Automation, pp. 703-708, 2010.

[58] Hiroya Yamada and Shigeo Hirose Steering of Pedal Wave of a Snake-like Robot by

Superposition of Curvatures , IEEE RSJ International Conf. on Intelligent Robots and

Systems, pp. 419-424, 2010.

[59] ” ”, 12 , 2007.
79

[60] ACM-R5

2005 ALL-N-020

2005

[61] : https://kids.britannica.com/students/assembly/view/171904 .
81

1. ,“

” , Vol.51 No.1 pp.8-15 2015 1

2. Wei Qi, Tetsushi Kamegawa, and Akio Gofuku, “Helical wave propagation motion for a

snake robot on a vertical pipe containing a branch”, Artificial Life and Robotics, Accepted.

3. Wei Qi, Tetsushi Kamegawa, and Akio Gofuku, “Implementation of helical wave prop-

agation motion in snake robot moving on exterior of a pipe”, International Journal of

Advanced Mechatronic Systems, Accepted.

( )

1. Wei Qi, Tetsushi Kamegawa, and Akio Gofuku, “Proposal of helical wave propagate mo-

tion for a snake robot to across a branch on a pipe”, IEEE/SICE International Symposium

on System Integration (SII), pp. 821-826, Dec 2016.

2. Wei Qi, Tetsushi Kamegawa, and Akio Gofuku, “Helical wave propagate motion on a

vertical pipe with a branch for a snake robot”, The 2nd International Symposium on

Swarm Behavior and Bio-Inspired Robotics, pp. 105-112, Oct 2017.

( )

1. , “

”, 14 ,

2H1-1 (2013-12).

2. , ,

,“
82

”, 1P2-Q02

( 2017-5).

3. ,“

”,

1P2-Q07 ( 2017-5).

4.

“ ” 8

C-4-3 (2017-12).

5. “

” 8

C-3-2 ( 2017-12).

6. “

” 62

(SCI’18), 211-2 ( 2018-5).

7.

” 62 (SCI’18) 211-5 ( 2018-5).

8.

“ImPACT

TRC ”

2A2-K05 ( 2018-6).

9. “

2A2-K05 ( 2018-6).
83

1. ,“

” 13

2013 12 .

2. Wei Qi, Tetsushi Kamegawa, and Akio Gofuku, “Helical wave propagate motion on a

vertical pipe with a branch for a snake robot” The 2nd International Symposium on Swarm

Behavior and Bio-Inspired Robotics (SWARM2017), Best paper award Nomination, Best

student paper award Nomination, Oct 2017.


A

κ(s(t)) τ (s(t))

Matlab

A.1 κ (s) τ (s)

(4.1)


 x(t) = (a − b sin ωt) cos t


y(t) = (a − b sin ωt) sin t (A.1)



 z(t) = c(d cos ωt + t)

(A.1)


 ẋ(t) = − sin t(a − b sin ωt) − bω cos t cos ωt


ẏ(t) = cos t(a − b sin ωt) − bω sin t cos ωt (A.2)



 ż(t) = −c(dω sin ωt − 1)

(A.1)


 ẍ(t) = − cos t(a − b sin ωt) + bω 2 cos t sin ωt + 2bω sin t cos ωt


ÿ(t) = − sin t(a − b sin ωt) + bω 2 sin t sin ωt + 2bω cos t cos ωt (A.3)



 z̈(t) = −cdω 2 cos ωt

(A.1)


 x(t)(3) = sin t(a − b sin ωt) − 3bω 2 sin t sin ωt + bω 3 cos t cos ωt + 3bω cos t cos ωt


y(t)(3) = − cos t(a − b sin ωt) − 3bω 2 cos t sin ωt + bω 3 sin t cos ωt + 3bω sin t cos ωt (A.4)



 z(t)(3) = cdω 3 sin ωt
A 85

(4.6) (4.7) κ(t) τ (t)


A
κ(t) = (A.5)
B 3/2

C
τ (t) = (A.6)
A
( (
A = (cos(t) (a − b sin(ω t)) − b ω cos(ω t) sin(t)) b ω 2 sin(ω t) cos(t) − cos(t) (a − b sin(ω t))

+2 b ω cos(ω t) sin(t) − (sin(t) (a − b sin(ω t)) + b ω cos(ω t) cos(t)) (sin(t) (a − b sin(ω t))
( (
−b ω 2 sin(ω t) sin(t) + 2 b ω cos(ω t) cos(t)2 + c (d ω sin(ω t) − 1) b ω 2 sin(ω t) cos(t)

− cos(t) (a − b sin(ω t)) + 2 b ω cos(ω t) sin(t) + c d ω 2 cos(ω t) (sin(t) (a − b sin(ω t))


( (
+b ω cos(ω t) cos(t)2 + c (d ω sin(ω t) − 1) sin(t) (a − b sin(ω t)) − b ω 2 sin(ω t) sin(t)

+2 b ω cos(ω t) cos(t) + c d ω 2 cos(ω t) (cos(t) (a − b sin(ω t)) − b ω cos(ω t) sin(t))2

B = c2 (d ω sin(ω t) − 1)2 + (sin(t) (a − b sin(ω t)) + b ω cos(ω t) cos(t))2

+ (cos(t) (a − b sin(ω t)) − b ω cos(ω t) sin(t))2

( ( )
C =− c (d ω sin(ω t) − 1) b ω 2 sin(ω t) cos(t) − cos(t) (a − b sin(ω t)) + 2 b ω cos(ω t) sin(t)
(
+ c d ω 2 cos(ω t) (sin(t) (a − b sin(ω t)) + b ω cos(ω t) cos(t)) 3 b ω 2 sin(ω t) cos(t)

- cos(t) (a − b sin(ω t)) + b ω 3 cos(ω t) sin(t) + 3 b ω cos(ω t) sin(t) − (c (d ω sin(ω t)


( )
- 1 sin(t) (a − b sin(ω t)) − b ω 2 sin(ω t) sin(t) + 2 b ω cos(ω t) cos(t)

+ c d ω 2 cos(ω t) (cos(t) (a − b sin(ω t))

- b ω cos(ω t) sin(t) (sin(t) (a − b sin(ω t))

+ b ω 3 cos(ω t) cos(t) − 3 b ω 2 sin(ω t) sin(t) + 3 b ω cos(ω t) cos(t)

- c d ω 3 sin(ω t) ((cos(t) (a − b sin(ω t))


(
- b ω cos(ω t) sin(t) b ω 2 sin(ω t) cos(t) − cos(t) (a − b sin(ω t))

+ 2 b ω cos(ω t) sin(t) − (sin(t) (a − b sin(ω t)) + b ω cos(ω t) cos(t)) (sin(t) (a − b sin(ω t))

- b ω 2 sin(ω t) sin(t) + 2 b ω cos(ω t) cos(t)


A 86

A.2 κ (s) τ (s)

4.9


 x = a(t) cos(t)


y = a(t) sin(t) (A.7)



 z = b(t)

a(t) = ρ(t) + r
(A.8)
n
b(t) = 2π t

ρ(t) = Asech(ωt − ϕ)
(A.9)
{A ∈ R | A > 0}, {ω ∈ R | ω > 0}, ϕ ∈ R

(A.7)
 ( )

 ẋ(t) = − aω cos (t) sinh(ωt−ϕ)
− sin (t) a
+ r

 cosh (ωt−ϕ)2 cosh (ωt−ϕ)





 ( )
ẏ(t) = cos (t) cosh (ωt−ϕ) + r − aω sin
a (t) sinh(ωt−ϕ)
(A.10)

 cosh (ωt−ϕ)2







 n
ż(t) = 2π

(A.7)
 ( )
 2aω 2 cos (t)sinh(ωt−ϕ)2 2aω sin (t) sinh(ωt−ϕ) aω 2 cos (t)

 ẋ(t) = + − cos (t) a
+ r − cosh

3 2 cosh (ωt−ϕ) (ωt−ϕ)
cosh (ωt−ϕ) cosh (ωt−ϕ)





 ( )
2 sin (t)sinh(ωt−ϕ)2 aω 2 sin (t)
ẏ(t) = 2aω cosh − 2aω cos (t) sinh(ωt−ϕ)
− sin (t) a
+ r − (A.11)

 (ωt−ϕ) 3
cosh (ωt−ϕ) 2 cosh (ωt−ϕ) cosh (ωt−ϕ)








ż(t) = 0
A 87

(A.7)



3
ẋ(t) = − 6aω cos (t)sinh(ωt−ϕ)3
− 6aω 2 sin (t)sinh(ωt−ϕ)2 3 cos (t) sinh(ωt−ϕ)
+ 5aω cosh + 3aω cos (t) sinh(ωt−ϕ)

 4 3 2
(ωt−ϕ)2


cosh (ωt−ϕ)( )
cosh (ωt−ϕ) (ωt−ϕ) cosh

 a 2
3aω sin (t)

 + sin (t) cosh (ωt−ϕ) + r + cosh


(ωt−ϕ)





3 sin (t)sinh(ωt−ϕ)3 6aω 2 cos (t)sinh(ωt−ϕ)2 5aω 3 sin (t) sinh(ωt−ϕ)
ẏ(t) = − 6aω cosh + + + 3aω sin (t) sinh(ωt−ϕ)
(A.12)

 (
(ωt−ϕ) 4
)
cosh (ωt−ϕ) 3
cosh (ωt−ϕ) 2
cosh (ωt−ϕ)2



 − cos (t) cosh (ωt−ϕ)
a
+ r − cosh 3aω 2 cos (t)

 (ωt−ϕ)








 ż(t) = 0

(4.14) (4.15) κ(t) τ (t)


B
ROS (Robot Operating System)

ROS

B.1 ROS

V2 Fig. B.1

ROS

joy handler hori

– Subscribe joy(sensor msgs::Joy)

– Publish : joy selected data

snake control

– Subscribe joy selected data (joy handler hori

::JoySelectedData)

– Publish : joint command

vrep control node


B 89

Fig. B.1:ROS Nodes

– V-rep

– Subscribe joint command (snake msgs ::snake joint command)

– Publish

dxl control node

– Dynamixel

– Subscribe joint command (snake msgs ::snake joint command)

– Publish : joint data (snake msgs::snake joint data)

B.2
B 90

Fig. B.2:jyanome2-Vrep-structure

Fig. B.3:normalV2-Vrep-structure
B 91

Fig. B.4:Overview of the experimental snake robot and its unit in Gazebo NormalV2 .
C

Fig. c.1

P .

a b

P Fig. c.2 .

a b arctan

α[rad] α[rad]
C 93

Fig. c.1:An example of experimental result of the influence of gravity

Fig. c.2:Experimental results of the influence of gravity

You might also like