配管の外周を移動する ヘビ型ロボットのモーション...

106
博士論文 配管の外周を移動する ヘビ型ロボットのモーション設計 2018 9 斉偉 岡山大学大学院 自然科学研究科

Upload: others

Post on 23-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

博士論文

配管の外周を移動する

ヘビ型ロボットのモーション設計

2018年 9月

斉 偉

岡山大学大学院

自然科学研究科

Page 2: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 3: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

配管の外周を移動するヘビ型ロボットのモーション設計

斉 偉

論文要旨 :

本研究では,ヘビ型ロボットが配管の外周に沿って移動するモーションの設計を

研究対象とする.特に,配管の外周にフランジや分岐点などの障害物があった場合

にヘビ型ロボットが障害物をすり抜ける振る舞いを提案し,新たな移動モーション

の設計ならびに実験の結果を示す.

ヘビ型ロボットは細長い体幹を活かして,人間の手や目の届かない場所へアクセ

スすることができる.例えば,プラント配管の外部や内部と言った狭隘で複雑な三

次元環境を移動して点検や調査をするロボットとして活用する期待がある.特に配

管の外部を移動することを考えた場合,ロボットには配管のフランジや分岐点 (T

字分岐点など) といった障害物をすり抜けることができる移動モーションが必要と

なる.しかしながら,ヘビ型ロボットにより配管の外周にある障害物を乗り越える

ことに関する研究報告は少ない.本研究ではヘビ型ロボットの多様な移動形態を生

かすため,ピッチとヨーの関節を交互に連結して構築されている一般的なヘビ型ロ

ボットを使用するが,一般的なヘビ型ロボットで配管外部の障害物を乗り越える研

究は世界初である.本研究では以下の二つの新たな移動モーションを提案する;

1. 生物の蛇が円柱形状の物体の上を移動する方法を参考にし,離散的に配管を

把持して体を支持し,把持する地点を順次送る動作を実現する螺旋尺取り方

式のモーション,

2. 配管外周にある分岐点を乗り越えるために,ヘビ型ロボットが配管に螺旋状

に巻き付いた状態で体幹の一部を配管から浮かせる縦波を作り,この縦波を

後方の関節から前方の関節へシフト制御により伝達する螺旋縦波方式のモー

ション.

ヘビ型ロボットの運動計画においては,先行研究で提案されているヘビ型ロボッ

トの体幹形状を曲率と捩率を用いて連続曲線モデルとして表現する手法を採用す

る.連続曲線で表現された体幹形状を離散化することで,ヘビ型ロボットの各関節

Page 4: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

の目標角度を与える.この際,ロール軸まわりの座標系の回転を与えることで,ヘ

ビ型ロボットに捻転運動をさせることができる.捻転運動はヘビ型ロボットを体幹

の法線方向に移動させるモーションとなる.また,ヘビ型ロボットの運動生成を行

う際に,角度指令を前方の関節ユニットから後方の関節ユニットへバケツリレー式

に伝達する「シフト制御」を導入する.シフト制御を用いることで,計画した形状

の接線方向に沿ってヘビ型ロボットの形状を変化させることができる.

さらに,本研究で新たな提案した二つの移動モーションの検証実験の結果につい

て示す.螺旋尺取り方式運動については,段差のある障害物を乗り越える実験を

行った.螺旋縦波方式運動については分岐点をすり抜ける実験を行った.提案手法

を実機に実装するにあたっては,関節の可動範囲やアクチュエータの出力を考慮し

たパラメータ設定が必要となる.また,実機実験においては,単にロボットの形状

の設計をするだけではなく,重力の影響などを考慮した実装が必要となる.これら

の実験において必要となる設計についても述べる.実験により,提案した二つの移

動モーションの有用性を確認できた.

Page 5: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 6: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 7: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 8: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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 θoffset

and βoffset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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

Page 9: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 10: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 11: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 12: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

 

Page 13: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

x

表 目 次

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

Page 14: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

1

第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の研究が最初とされて

いる.横うねり推進は体幹を S字状に左右にくねらせて進む移動方式であり,最も

効率よい移動方式と言われ,ほどんどの種類の蛇で観察されている [16, 32].サイド

ワインデング推進は砂漠の蛇に見られる移動形態であり,軟弱な環境を移動する

際に十分な摩擦を得ることができる [6, 17, 56].コンチェルティーナ運動は壁などに

囲まれた環境に閉じ込められた場合に,体幹の一部をアコーディオン状に屈曲させ

る移動形態である.直線運動は体幹をまっすくに伸ばして腹面を波状に運動させて

進む移動形態である [10].このように,生物の蛇は環境によって様々な形態を示し,

「足」がないのに高い走破性を持つ.生物の蛇の示す多様な機能を模倣したロボッ

トを開発することは大きな利点があり,Fig. 1.2に示すように,一般的な車輪型や

クローラ型の移動ロボットより高い走破性を実現することが可能であると考えら

れる.

本章では,まず,研究背景として生物の蛇の多様な移動形態を工学的に実現する

際になされた様々な研究を概観する.そして,本研究の位置付けに関して述べる.

最後に,本論文の構成を紹介する.

Page 15: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 16: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 1章 緒言 3

1.1.1 ヘビ型ロボットの運動学

ヘビ型ロボットの形状生成において,大きく分けて二つの考え方がある.一般的

なヘビ型ロボットはリンクと回転関節で構成されるため,シリアルリンクマニピュ

レータの運動学を利用して運動学の記述をすることができる.そして,ヘビ型ロ

ボットの運動学的冗長性の特徴を利用することで,軌道追従制御などの様々なタス

クを実現することができる.Matsunoらは二次元平面を移動する車輪型ヘビ型ロ

ボットの運動学モデルに基づいて制御系を構築し,うねり運動による推進の機能を

自然に発生させるメカニズムを提案した [34, 35, 36].Liljebackらは運動学の冗長性

を利用した障害物回避などを実現している [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).

Page 17: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 18: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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-シフト制御により実現した

Page 19: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)と呼ばれる

運動を生成し,円柱の内部や外部といった 3次元の環境を移動することが実現して

いる [9, 24, 25, 26] Rollinsonらは連続曲線モデルの考え方によりヘビ型ロボットの螺

旋曲線形状を生成し,その形状を基にして拡張カルマンフィルタを用いることで

個々の関節角度誤差から全体の形状を決定し,コンプライアンス制御やバーチャ

ルシャシーなどの機能をヘビ型ロボット (Fig. 1.9)に持たせることに成功している

[11, 12, 13, 14, 15, 52].螺旋捻転運動を用いることで配管の内部や外部といった 3次元

の環境を移動することができる.配管外周の場合,ロボットが配管に巻き付いた状

Page 20: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 1章 緒言 7

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

βoffset.

態で捻転運動をすることにより移動,配管内の場合配管の内壁に突っ張り力を与

え,その反力を得ることで滑らないように移動することができる.

ヘビ型ロボットの研究は平坦な床面や瓦礫などの不整地など限定されていたが,

螺旋捻転運動によって配管などの円柱体にも適応できるようになった.ヘビ型ロボッ

トを連続曲線モデルと考えることでより本質的な解析が行える点や簡略化された

モデルを得ることで計算量を抑えられる点などの有意点が考えられる.デメリット

として,この移動手法はロボットを円柱に巻き付かせた状態での大まかな移動に適

しているが,ロボットの正確な位置決めは難しい.また,ヒューリスティックな制御

手法であるため,運動学的冗長性を利用することはできないなどがあげられる.

一方で,Tanakaらはヘビ型ロボットを多リンク系としてモデル化し,円柱曲面上

における軌道追従制御則を提案したが [49],ロボットが滑り落ちないような十分な

摩擦力が得られることが前提となっているため,シミュレーション上は実現してい

るが実機で実現するのが困難である.

1.2 本研究の目的と位置づけ

本研究では,ヘビ型ロボットを用いてプラント配管の外周に巻き付いて移動し,

掃除や点検などの作業を行うことを想定する.ロボットの実用化を考えた場合,以

Page 21: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 22: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 1章 緒言 9

下の要件が求められると著者らが考える;

・移動形態:ロボットには配管のフランジや分岐点 (T字分岐点など) といった障

害物をすり抜けることができる移動モーションが必要

・配管を把持している部分で十分な摩擦力を発生させるためのハードウェア設

計が必要

・ロボットの移動中に周囲の環境との接触が複雑なので,接触を提示できるシ

ステムが必要

・防塵防水,無線遠隔操縦などを考慮したハードウェア設計が必要

・技術を共有できる仕組みが必要

そこで,本論文ではヘビ型ロボットが配管の外周に沿って移動するモーションの

設計を研究対象とする.特に,配管の外周にフランジや分岐点などの障害物があっ

た場合にヘビ型ロボットが障害物をすり抜ける振る舞いを提案し,新たな移動モー

ションの設計ならびに実験を行う.また,配管との摩擦力を増加するために,ロボッ

トの外周に特注のスポンジゴムを付けるなどのハードウェアの設計をした.さら

に,提案手法はピッチとヨーの関節を交互に連結して構築されている一般的なヘビ

型ロボットに対応できるため,ROSに基づいたソフトウェアシステムを構築した.

我々の研究グループは2015年から革新的研究開発推進プログラム (Impulsing Paradigm

Change through Disruptive Technologies Program, ImPACT)に参加し,ヘビ型ロボットの

実用化に注目して,現在まで 4種類のヘビ型ロボットを開発している.ハイパワー

タイプヘビ型ロボット,ノーマルタイプヘビ型ロボット,ノーマル V2タイプヘビ型

ロボットと防塵防水無線タイプヘビ型ロボットがある.本研究では,主にノーマル

V2タイプヘビ型ロボットを用いて実機実験を行った.

1.3 本論文の構成

本論文は,本章を含めて 6章により構成される.第 1章では,序論としてヘビ型ロ

ボットの研究において注目しているところを紹介し,特徴,メリットと実用化に向

かっての問題点を述べている.そして,本研究の位置付けについて述べている.第

Page 23: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 1章 緒言 10

Fig. 1.10:Expected application of snake robot

2章では,3次元空間内におけるヘビ型ロボットの連続的なモデルを決定する手法

について示し,その連続的なモデルに沿った形状を実機で実現する方法を示す.第

3章では,本研究グループで開発しているヘビ型ロボットを紹介した後先行研究で

実現してる移動形態の推進原理について述べる.そして,ヘビ型ロボットの移動形

態を再現する.第 4章では,本研究で新たに提案する二つの移動形態:螺旋尺取り

方式運動と螺旋縦波運動を紹介する.第 5章では螺旋尺取り方式運動と螺旋縦波運

動によリ円柱を移動する実験を示す.また,障害物を乗り越える実験について述べ

る.第 6章では,本論文を総括する.

Page 24: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

11

第2章

連続曲線モデルから目標関節角度の

導出

本研究では,運動計画をする際に,ヘビ型ロボットの体幹を連続曲線モデルとし

て表現する方法を採用する [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)

de2 (s) /ds = −κ (s) e1 (s) + τ (s) e3 (s)

de3 (s) /ds = −τ (s) e2 (s)

(2.1)

ここで 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になることを示している.

Page 25: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)

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

dey (s) /ds = κp (s) er (s)− τr (s) ep (s)

(2.2)

ここで,κ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) という3軸の成分を持

つ回転ベクトルで与えられる点である.本研究で使用するヘビ型ロボットはピッチ

軸,ヨー軸の二つの関節のみでロール軸は存在しないので τr(s) = 0 となる.

Page 26: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)

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

dey (s) /ds = κp (s) er (s)

(2.3)

Fig. 2.3に示すように,e2(s)と ep(s)の相対的な角度を表す関数を ψ(s)を導入する. ep(s) = e2(s) cosψ(s)− e3(s) sinψ(s)

ey(s) = e2(s) sinψ(s) + e3(s) cosψ(s)(2.4)

また,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)

−τ(s)e2(s) = κp(s)er(s)(2.6)

  

式 (2.6)から e2(s),e3(s)を求めて式 (2.4)に代入すると,

Page 27: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 2章 連続曲線モデルから目標関節角度の導出 14

Fig. 2.3:Definition of ψ(s)

κ(s) = κy(s) cosψ(s)− κp(s) sinψ(s)

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

  

また,式 (2.1),(2.3)と (2.4)から,

d(e2(s)ep(s))

ds=de2(s)

dsep(s) + e2(s)

dep(s)

ds

= −τ sinψ(s) (2.8)

e2(s) ・ ep(s) = cosψ(s)であるので,式 (2.8)に代入すると,

d cosψ(s)

ds=dψ(s)

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

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

従って,κp(s)と κy(s)を κ(s)と τ(s)で表すことができるようになったため,Frenet-Serret

の公式で与えられる曲線と背びれ曲線の関係は次式のようになる.

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

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

ψ (s) =

∫ s

0τ (s) ds+ψ (0)

(2.10)

Page 28: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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, ·とするとヘビ型ロボッ

トの各関節の目標角度は次のように与えられる. θdp = κp(iδs)2δs (i = 1, 3, 5, ...)

θdy = κy(iδs)2δs (i = 2, 4, 6, ...)(2.11)

ここで,θdp は pitch軸関節の目標角度,θdy は yaw軸関節の目標角度である.

本章では,連続曲線モデルでヘビ型ロボットの形状を表現し,それを離散化して

関節の角度を求める方法を述べた.本研究グループではヘビ型ロボットの形状設計

においてよく使用される手法である.一方で,ヘビ型ロボットの運動学をロボット

工学でしばしば使用されるDH法などを用いて論じることも可能であるが,多関節

で構成されるため通常の方法では記述が煩雑になる.連続曲線モデルの考え方を

用いることでロボットの形状を抽象化して考えることができ,複雑な形状を生成す

る場合,特に有効である.より本質的な解析が行える点や,簡略化されたモデルを

得ることで計算量を抑えられる点などの優位性が考えられる.

Page 29: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

16

第3章

先行研究で実現した移動形態

現在まで(2018年),本研究グループでは 5タイプのヘビ型ロボットを開発して

いる.本論文では筆者が開発に参加した 3種類のヘビ型ロボットを紹介する.各ロ

ボットにおいて,ROS(Robot Operating System)に基づいたシステムを構築している.

また,動力学シミュレータV-repとGazebo上にロボットモデルを作成してシミュレー

ション環境を構築している.ROSパッケージやシミュレーション環境に関しては付録

Bに記載する.

本章ではヘビ型ロボットの多様な移動形態の内,我々の研究グループで実現して

いる移動形態の形状モデルと移動形態の推進原理を説明する.そして,開発した

ヘビ型ロボットを用いて移動形態を再現する.

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]である.ヘビ型ロボットの最後尾にはスリップリ

Page 30: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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の関節を交互に連結して構築されている.サーボモータの特

徴はバックケース中央にある溝にはめられたカバーで,コネクタ部を保護すること

ができ,ケーブルの引き出し方向をガイドする役目もある.

著者らはロボットのサーボモータ間を物理的に連結するためにパーツを新たに

Page 31: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 32: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 19

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

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

Page 33: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 20

設計した.以前は XH430-W350のオプションパーツである FR12-H101Kと FR12-S102K

をボルトとナットで固定したものを使用していた.この純正品のフレームは 2つの

パーツをボルトとナットで固定しているために,その部分の緩みが発生しやすく,

かつその部分のボルトの締め直しは構造上手間がかかった.そこで,フレームの分

解防止ができるように 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のケーブルが接続されている.また,螺旋捻

転運動時にケーブルの捻じれ捩れを解消するために,ロボットの後部にソルトン社

Page 34: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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センサを搭載したマ

Page 35: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)と呼ばれる曲線に沿って移動

していることを明らかにし,摩擦の差を生じるメカニズムを受動車輪により工学

的にモデル化することで 2次元平面上を滑らかに移動するヘビ型ロボットを実現し

た.Fig. 3.8に示すように,サーペノイド曲線は「曲率が曲線に沿って正弦波に変化

する曲線」である.二次元平面上の横うねり推進をするヘビ型ロボットの体幹を

Page 36: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 23

Fig. 3.8:Serpenoid curve

yaw軸の曲率 κyaw(s)と pitch軸の曲率 κpitch(s)で表記すると,次式のように示される

[19, 20, 38].

κyaw(s)

κpitch(s)

=

απ2l sin(

sπ2l ) + bias

0

(3.1)

αは曲線のくねり角で,lは 1/4周期長さ,sは曲線上の位置である.biasは操舵量で

あリ,横うねり推進の移動方向を調整することができる.横うねり推進は平面上の

運動であるため,pitch軸の曲率 κpitch(s)を常に 0と設定する.

実機に実装する際に,計画したサーペノイド曲線に沿って移動する速度 ν を入力

量とする.速度 ν により単位時間内曲線に沿って移動する距離(曲線上の位置)s

を算出した後,(3.1)式により曲率を求め,(2.11)式により各関節の目標角度を算出

する.また,オペレータから各パラメータ調整することでロボットの形状を変化

させることができる.Fig.3.9に示すように,筆者らはサーペノイド曲線によるヘ

ビ型ロボットの推進実験を再現した.受動車輪により摩擦の異方性ができたため,

ロボットは前進することが確認された.推進中,受動車輪が横に滑らない (sideslip

constraints)と仮設すると,横うねり推進はロボットの体幹形状に沿って接線方向へ

移動する 2次元運動である.

Page 37: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 24

Fig. 3.9:Serpentine locomotion

3.2.2 Sinus-lifting推進

前節では,ヘビ型ロボットの横うねり推進を基本的に平面上の運動と考えで体

幹形状を設計した.一方で,生物蛇は全力で滑走する際に,Fig.3.10に示すような

「Sinus-lifting」という体幹の最大屈曲部分を地面から浮かせて推進する滑走様式が

観察されている.この滑走様式は法線方向の地面反力が最大となる変曲点付近に

体重を集中させて横滑りを防ぐための適応的な行動である [19, 46].先行研究によ

り,Sinus-lifting推進は半周期ごとに体幹の最大屈曲部分を地面から浮かせて推進す

るため,以下のように,横方向のうねりと縦方向うねりを加えることで実現する

ことができる.

κyaw(s)

κpitch(s)

=

αyawπ2l sin(2π sπ2l ) + biasyaw

αpitchπ2l sin(4π sπ2l ) + biaspitch

(3.2)

α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に示すよう

Page 38: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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推進

Page 39: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 26

Fig. 3.12:Target angles of sinus-lifting motion

を再現する.Pedal wave推進は以下のように定義することができる.

κyaw(s)

κpitch(s)

=

αyawπ2l sin(4π sπ2l ) + biasyaw

αpitchπ2l sin(2π sπ2l ) + biaspitch

(3.3)

α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

であり,さらに全身の荷重を僅かな接地部分に集中させたときの静止摩擦力を利

用できるため,摩擦係数が小さい環境でも推進が可能である.形状を以下の式に

よって設計できる.

Page 40: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 27

Fig. 3.13:Pedal wave motion

Fig. 3.14:Target angles of pedal wave motion

Page 41: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 28

Fig. 3.15:Sidewinding

Fig. 3.16:Sidewinding

κyaw(s)

κpitch(s)

=

αyawπ2l sin( sπ2l ) + biasyaw

αpitchπ2l sin( sπ2l + β) + biaspitch

(3.4)

α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次元運動である.

Page 42: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)

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

ここで,pθd (t)は pitch軸関節の目標角度,yθd (t)は yaw軸関節の目標角度,Aは振幅

である.振幅Aを大きくするほど,ロボットの体幹形状のなす円弧の曲率は大きく

なる.本論文ではノーマル V2ヘビ型ロボットを用いて Lateral rolling推進を再現す

る.Fig. 3.18に Lateral rolling推進の様子を示す.Fig. 3.19にはロボットの yaw軸と pitch

軸関節の目標角度を示す.Lateral rolling推進はロボットの体幹形状の法線方向へ移

動する 2次元運動である.

3.2.6 螺旋捻転運動

螺旋捻転運動 (Helical rolling motion)は,ヘビ型ロボットが円柱に巻きついて Lateral

rolling 推進のような捻転動作を行うことによりヘビ型ロボットが円柱昇降を行う

ものである.Fig. 3.21に螺旋捻転運動の様子を示す [24, 25].同様の移動形態により

Page 43: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 30

Fig. 3.18:lateral rolling

     

Fig. 3.19:Lateral rolling target angle

Helical rollingを行うヘビ型ロボットが文献 [27]でも紹介されている.しかし,これら

は受動車輪を持たないヘビ型ロボットにより実現されている.本研究の先行研究 [5]

では,受動車輪を備えたヘビ型ロボットを対象にしており,横うねり推進により平

面上を効率よく移動するヘビ型ロボットの構成はそのままで,螺旋捻転運動を実現

することは非常に有用であると考え, 受動車輪を備えたヘビ型ロボットを用いて配

管を昇ることを実現した.螺旋捻転運動はそれぞれの関節の目標角度を以下のよ

うに与えることで実現できる.

eθdi (i, t) = −2δsκ sin (τiδs+ ψ (t)) (i = even)

oθdi (i, t) = 2δsκ cos (τiδs+ ψ (t)) (i = odd)(3.6)

ここで,eθdi (i, t)はピッチ軸関節の目標角度,oθdi (i, t)はヨー軸関節の目標角度,i

は関節番号(i = 0, 1, 2 · · ·),δsは関節間距離,κは曲率,τ は捩率,ψ (t)は捻転量で

Page 44: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 31

Fig. 3.20:helical shapeg

ある.(3.6)式の曲率 κを小さくすると螺旋半径が大きくなり,捩率 τ を小さくする

と螺旋のピッチが大きくなる.Fig.3.19にはロボットの yaw軸と pitch軸関節の目標角

度を示す.螺旋捻転運動はロボットの体幹形状の法線方向へ移動する3次元運動で

ある.

3.3 まとめ

本章では,先行研究で実現できているヘビ型ロボットの移動形態を紹介し,実機

ロボットで再現することでヘビ型ロボットの多様な移動形態を検証できた.

横うねり推進の特徴としては生物の蛇の移動形態として最も典型的なスタイル

である.移動効率は良いが,薄いストレートパスや滑りやすい表面では適してな

い.受動車輪を有するヘビ型ロボットは硬く滑らかな床面では横うねり推進によっ

て効率的に移動することができるが,受動車輪が横滑りするような滑りやすい環

境では横うねり推進は不可能である.

Sinus-lifting推進は半周期ごとに体幹の最大屈曲部分を地面から浮かせて推進す

る移動方式である.

pedal waveは狭隘環境に進入可能で,不整地でも使用可能な移動方式である [58, 39].

しかしこれらの移動方式は,車輪を用いたほふく推進に比べると移動速度が遅く,

Page 45: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 3章 先行研究で実現した移動形態 32

Fig. 3.21:helical rolling

非効率的である.

Lateral rolling推進は生物の蛇には見られない移動形態である.横うねり推進は真

横に移動できないが,lateral rolling推進は真横に移動できるので,ヘビ型ロボットを

より自由に動かすことが可能となる.

螺旋捻転運動は配管などの円柱状物体の内側や外側に沿って移動することができ

る.この移動モーションを用いてヘビ型ロボットは配管や木などの円柱形状の環境

に沿って移動し,点検や監視などの作業をするといった産業への応用が期待されて

いる.そのような実用を考えた場合,ヘビ型ロボットは円柱の径などの円柱形状の

変化にある程度対応できることが望ましい.これまでに,螺旋捻転運動により円

柱の径が大きく変化しない場合には適応的に螺旋の半径を調整して円柱上を移動

するアルゴリズムは提案されている [12].しかしながら,産業用プラントの配管の

外周に巻きついて移動する場合には,配管の継ぎ目にあるフランジや分岐点 (T字

分岐点など)といった障害物を乗り越える必要がある.

本章で実現できた移動形態を以下の表にまとめて示す.

Page 46: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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

Page 47: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

34

第4章

螺旋尺取り方式運動と螺旋縦波方式運

動の設計

本研究では,ヘビ型ロボットの配管外周に沿って移動することに注目する.そし

て,配管の外周に金具やフランジ,分岐点などの障害物が取り付けられている場

合にヘビ型ロボットがどのような形状になり,どのような振る舞いをしたら障害物

をすり抜けることができるかを検討してきた.通常,円柱体の外周に巻き付いて

移動する場合,ヘビ型ロボットは螺旋捻転運動を用いることが多い [5, 12, 13, 14, 24].

従来の螺旋捻転運動は配管とヘビ型ロボットの接触点が多いためロボットの自重を

分散でき,接触点で配管に及ぼす力が小さくなるなどの利点が挙げられる.しか

しながら,螺旋捻転運動はロボットの体幹形状の従法線方向へ移動するので障害物

をすり抜けることが困難である.

以上の問題に対して,著者らは二つの新たな移動形態を提案している.一つ目は

段差のあるフランジを乗り越えるために設計した移動形態で,ロボットが螺旋曲線

状になって尺取り虫のように動くため,螺旋尺取り方式運動(Inchworm Gait)と名前

付けた [41].二つ目はパイプの分岐点を乗り越えるために設計した移動形態であり,

螺旋曲線状になったヘビ型ロボットの体幹の接線方向に沿って縦波を送って移動さ

せるため,螺旋縦波方式運動(Helical Wave Propagation Motion)と名前付けた [42, 43].

本章では,それぞれの移動形態の設計方法を説明した後,前章 2章に紹介した連続

曲線モデルの考え方を用いて形状生成を実現する.そして,設計した曲線の形状

を決定する各パラメータの設定指針について述べる.

4.1 螺旋尺取り方式の提案

生物の蛇は多様な移動形態を示す.Astleyらの実験結果により,蛇が円柱や木を

移動する場合 Fig. 4.1に示すような移動形態を見せる [1, 22, 23].特に,Fig. 4.1の A

Page 48: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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に提案する螺旋尺取り形状の一例を示す.このような特徴を再現すべく,ま

ずはデカルト座標系において目標形状を設計することを考える.ここで,目標形

状はデカルト座標系において次式で与えられる.

Page 49: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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

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

(4.1)

ここで,a,bは螺旋半径を決定するパラメータ,ωは螺旋半径が変化する周期を決

定するパラメータである.また,dは曲線が z方向に伸び縮みするときの送り幅を

調整するパラメータ,cは螺旋の z 軸方向の増加率である.なお,それぞれのパラ

メータは負の値をとらないものとする.tは媒介変数である.Fig. 4.2には目標形状

の一例を示す.この図から設計した螺旋曲線において把持部と伸展部が周期的出

現していることが確認できる.

Page 50: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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

a+ b = rp + rr + h(4.2)

つぎに,パラメータ ωの設計指針について述べる.ωは巻き数に対する把持部の

出現頻度とみなせるので,1より大きな値の場合は,把持部と伸展部がヘビ型ロ

ボットが円柱に 1周巻き付く間にどちらも出現することになり都合が悪い.さらに,

巻き数 n(ただし n > 1) に対して,少なくとも 1/n以上の値に設定しておかないと,

ヘビ型ロボットが尺取り動作を行なう最中に円柱を把持する領域がなくなる場合

が発生する.つまり,ωは,

1n < ω < 1 (4.3)

の範囲で値を決定することになる.

つぎに,パラメータ dの設計指針について述べる.このパラメータは伸展部の螺

旋の送り幅に影響を与える.基本的には伸展部において大きな送り幅であるほう

が障害物の乗り越え時などにおいて望ましいと考えられるが,dを大きな値に設定

しすぎるとリンク同士が干渉する恐れが生じる.リンク間の干渉を防ぐためには

媒介変数 tに対する z軸方向の増加率が常に正であればよい.すなわち,

dzdt = c(1− ωd sinωt) ≥ 2rr (4.4)

Page 51: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 38

Fig. 4.3:Parameter settings of inchworm gait.

の関係を常に満たすようにすればよいので,螺旋形状をなすために cは c > 0に設定

されることを加味すると,ωd < 1 という条件を満たす範囲でパラメータ dの値を決

定すればよい.

最後に,パラメータ cについての設定指針について述べる.簡単のため,ヘビ型

ロボットが円柱に常螺旋 (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の設定値の目安が得られる.

Page 52: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 39

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

4.1.2 曲率 κと捩率 τ の計算

以上により,デカルト座標系において螺旋尺取り形状の設計をした後に,幾何学

的な条件から目標形状を曲率 κと捩率 τ を使った空間曲線として表現することがで

きる.

κ(t) =

√(yz−zy)2+(zx−xz)2+(xy−yx)2

(x2+y2+z2)32

(4.6)

τ(t) = x(3)(yz−zy)+y(3)(zx+xz)+z(3)(xy+yx)(yz−zy)2+(zx−xz)2+(xy−yx)2 (4.7)

ここで,xや xはそれぞれ xの tに関する 1階微分と 2階微分,x(3)は xの tに関する 3

階微分である.

Fig. 4.4に,提案する螺旋尺取り曲線の曲率 κと捩率 τ の変化を一例として示す.

螺旋の曲率 κが小さくなる時に捩率 τ が大きくなり,螺旋の曲率 κが大きくなる時

に捩率 τ が小さくなっていることがわかる.なお,曲率と捩率の計算を付録 Aを参

照ください.以上で所望の螺旋形状をデカルト座標において設計できた.

ただし,(4.6)式と (4.7)式により求めた螺旋尺取り曲線をなす曲率 κと捩率 τ は媒

介変数 tを引数とする関数 κ(t),τ(t)である.ヘビ型ロボットの各関節の目標角度を

Page 53: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)dt )2 + (dy(t)dt )2 + (dz(t)dt )2dt (4.8)

(4.1)式と (4.8)式を連立して計算した結果の一例を Fig. 4.5に示す.Fig. 4.5の傾斜度

が変化しているところは螺旋縦波曲線の浮かせた縦波を表してる.媒介変数の値

tに対応する曲線の長さ s(t)を求めた後,参考文献 [42]と同様なシフト制御を用い

て,計画した螺旋尺取り曲線の軌道に沿ってヘビ型ロボットの形状が変化するよう

にシフト制御を導入する.媒介変数 sと曲線に沿った長さ sの関係を計算する際に,

Matlabの積分関数を使って簡単に計算できるが,実機のプログラムではC++を用い

るため,ルンゲクッタ法により数値解析的に求めたことに注意してください.

4.1.3 シフト制御により螺旋尺取り方式の形状生成

本研究では,計画した螺旋形状の軌道に沿ってヘビ型ロボットの形状が変化する

ようにシフト制御を導入する.ここでのシフト制御とは,計画した曲線形状の軌

Page 54: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 41

道に沿うようにヘビ型ロボット全体の形状を変化させるものである.ヘビ型ロボッ

トの先頭位置が曲線の長さのパラメータ sの増加に伴い移動したと仮定して,各関

節の目標値を sの値に応じて順次後方に送ることにより,事前に計画された螺旋形

状の一部を切り取った形をなして逐次更新されることになる.シフト制御により,

滑走方向の自由な操舵や移動形態間のスムーズな形状変化などが実現できる.本

研究では計画する曲線の形状パラメータである曲率 κ(s),捩率 τ(s)と捻転量 ψ(s)を

シフトする.

なお,本稿においては,空間内に設定した形状の軌道と実際のロボット位置の軌

跡との間の誤差のフィードバックなどは行なっておらず,事前に計画した軌道にロ

ボットが追従している保証はない.本研究では,下記のアルゴリズムによりシフト

制御を実装している(Fig. 4.6参照).

1. 各関節ごとに曲率と捩率を一定量保持するキューを用意する.このとき,刻

み幅 δsをリンク長 lとキューのサイズM に対して∆s = l/M となるように設定

する.

2. 螺旋形状に沿った移動速度の指令値 sに応じてロボットの先頭位置 shを更新す

る.ただし,本稿では移動速度は常に 0以上の値とし,後退はしないものと

する.

3. shが設定された刻み幅∆sを超えたら,刻み幅の位置の曲率 κ(s(t))と捩率 τ(s(t))

を求めて第 1関節のキューの先頭に保持する.また,キューの最後のデータを

つぎの関節のキューの先頭に渡す.

4. 各関節はキューの最終要素を参照し,目標角度 θを 2章の手順で計算して関節

を駆動する.

シフト制御により,第 1関節以後の関節は第 1関節と同じ関節角度に順次なってい

くので,ロボットの形状は (4.1)式で計画した連続曲線モデルに沿って再現され,前

方から後方への形状を伝える運動が実現される.また,ヘビ型ロボットは初期状態

においてすべての関節が角度 0[deg]の一直線の状態であるが,シフト制御を用いて

先頭関節から順次螺旋尺取り形状を成して後方の関節に目標角度を伝搬していく

Page 55: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 42

Fig. 4.6:Illustration of shift algorithm.

ことで,ロボットの形状は初期状態から一気に螺旋尺取り形状に変形するのではな

く,徐々に螺旋尺取り方式の移動形態へ推移させることができる.

Page 56: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)のように定義

する.

Page 57: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 44

Fig. 4.8:Hyperbolic function sech

x = a(t) cos(t)

y = a(t) sin(t)

z = b(t)

(4.9)

ここで,

    a(t) = ρ(t) + r

   b(t) = n2π t

   (4.10)

ρ(t) = Asech(ωt − ϕ)

{A ∈ R | A > 0}, {ω ∈ R | ω > 0}, ϕ ∈ R(4.11)

と定義する.式 (4.11)は双曲線関数のハイパボリック・セカントであり,媒介変数 tを

調整することで Fig. 4.8に示すような最大値が Aとなる山型の曲線が生成できる.

(4.11)式において,Aは “波”の最大値であり,ωは “波”の幅で,ϕは初期位相である.

(4.9)式,(4.10)式と (4.11)式により,生成する螺旋曲線の一例を Fig. 4.9に示す.この

図により常螺旋曲線の一部分に縦波が生成されていることが確認できる.各パラ

メータを調整することで曲線の形状変化や縦波を螺旋曲線に沿って移動させるこ

とができる.

Page 58: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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は次式により値を決定することができる.

      r = rr + rp   (4.12)

nは螺旋が一周曲がったときの z軸方向へ変化した距離を表す.Fig. 4.10に示すよ

うに,ロボット体幹の直径 2rrと障害物の幅wbの和より大きく設定する必要がある.

すなわち,

2πn ≥ wb + 2rr (4.13)

Page 59: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 46

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

の関係を満たすようにすればよい.

Aと ωに関してですが,螺旋縦波が生成されるときに螺旋半径は rから r +Aの間

で変化する.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と ωは実機実験に採

用できるパラメータである.

Page 60: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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 曲率 κと捩率 τ の計算

前節より,デカルト座標系において螺旋進行波曲線形状の設計をした後に,幾何

学的な条件から次式により目標形状を曲率 κと捩率 τ を使って空間曲線として表現

することができる.

Page 61: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 48

κ(t) =

√(yz−zy)2+(zx−xz)2+(xy−yx)2

(x2+y2+z2)32

(4.14)

τ(t) = x(3)(yz−zy)+y(3)(zx+xz)+z(3)(xy+yx)(yz−zy)2+(zx−xz)2+(xy−yx)2 (4.15)

ここで,xや xはそれぞれ 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)dt )2 + (dy(t)dt )2 + (dz(t)dt )2dt (4.16)

ここで,ルート内の部分を整理すると

(dx(t)dt )2 + (dy(t)dt )2 + (dz(t)dt )2 =

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

となる.

(4.9)式,(4.10)式,(4.11)式と (4.16)式連立して計算した結果の一例を Fig. 4.13に示

す.Fig. 4.13の傾斜度が変化しているところは螺旋進行波曲線の浮かせた縦波を表

してる.媒介変数の値 tに対応する曲線の長さ s(t)を求めた後,4.2.6節に紹介する

手法を用いて,計画した螺旋進行波曲線の軌道に沿ってヘビ型ロボットの形状が変

化するようにシフト制御を導入する.

媒介変数 sと曲線に沿った長さ sの関係を計算する際に,Matlabの積分関数を使っ

て簡単に計算できるが,実機のプログラムではC++を用いるため,ルンゲクッタ法

により数値解析的に求めたことに注意してください.

Page 62: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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)

螺旋進行波曲線をヘビ型ロボットに実装する際に,ロボット体幹の捻転を抑制す

Page 63: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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と記述する.

Page 64: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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

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

ψg = τg (0 ≤ s ≤ sc)

ψg = 0 (s < sc)

(4.22)

Page 65: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 52

4.2.6 シフト制御により螺旋縦波方式の形状生成

螺旋縦波方式の生成には 4.1.3節で紹介した方法と似たようなシフト制御を採用

するが,螺旋尺取り方式ではロボットの先頭からシフトすることに対して螺旋縦波

方式はロボットの末尾からシフトする.本研究では計画する曲線の形状パラメータ

である曲率 κ(s),捩率 τ(s),捻転量 ψ(s)と次節 4.2.5の重力落下補正 ψgをシフトする.

なお,本稿においては,空間内に設定した形状の軌道と実際のロボット位置の軌

跡との間の誤差のフィードバックなどは行なっておらず,事前に計画した軌道にロ

ボットが追従している保証はない.計画された形状Cの軌道に沿うように下記のア

ルゴリズムによりシフト制御を実装している(Fig. 4.16 参照).

1. 各関節ごとに曲率と捩率を一定量保持するキューを用意する.このとき,刻

み幅 δsをリンク長 LとキューのサイズMに対して δs = l/M となるように設定

する.

2. 計画された形状 C に沿って沿った移動速度の指令値 sに応じてロボットの末尾

の位置 sT を更新する.

3. 刻み幅∆sを超えたら,刻み幅の位置の曲率 κ(s),捩率 τ(s)と捩率 ψ(s)を求めて

しっぽの関節のキューの先頭に保存する.

4. キューの最後のデータを次の関節のキューの先頭に渡す.

5. 各関節はキューの最終要素を参照し,目標角度 θを第 2章の手順で計算して関

節を駆動する.

以上の考え方を使用して実機のプログラムを作成する.プログラムのフロー

チャートは Fig. 4.17に示す.

Page 66: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 4章 螺旋尺取り方式運動と螺旋縦波方式運動の設計 53

Fig. 4.16:Illustration of shift algorithm.

Fig. 4.17:Programming flowchart.

Page 67: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

54

第5章

実験

本章では,動力学シミュレータにおいて提案する移動形態の挙動を確認した次

第,実機実験を行った結果を示す.ロボットの挙動を確認するためには動力学シミュ

レータを使う場合が多い [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の実機と同

じになるようにモデルが構築されている.本実験では,ヘビ型ロボットは 9ユニッ

ト (18リンク)を連結した構成になっている.また,ヘビ型ロボットが移動する環境

Page 68: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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と設定し,螺旋形状に沿った移

動速度の指令値は s=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]であり,ヘビ型ロボットは螺旋尺取り方式で円柱上を移

動できたものの,把持部において十分な把持が達成されておらず,大きなすべりが

Page 69: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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ではヘビ型ロボットは十分に円柱を把持しており,すべりが発生せ

ずに効果的に螺旋尺取り方式で円柱上を移動できていることが確認された.さら

Page 70: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 5章 実験 57

に,パラメータ cの値をなるべく小さくするのではなくて,少し大きめに設定した

場合のヘビ型ロボットの挙動について確認する実験を行なった.ここでは,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とする

ことでヘビ型ロボットが螺旋尺取り方式で円柱を登ることが確認された.しかしな

がら,この摩擦係数の値は実際には大きな値であるので,実機においてはロボット

表面の材質を工夫したりトルクの大きなアクチュエータを使って把持力を向上させ

るなどして摩擦力を稼ぐ必要がある.

Page 71: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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 と同じ設定になっている.また,螺旋形状に沿った

移動速度の指令値は s = 0.5[m/s]とした.この際,ロボットの先頭リンクの円柱中心

軸方向の平均移動速度は 0.15[m/s]であった.この実験により,実機においてもシミュ

レーションと同様に螺旋尺取り方式で円柱上を移動できることが確認された.また

実機実験においても,ロボットが螺旋尺取り運動で移動することに加え,捻転運動

も生じていることが観察された.

Page 72: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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と設定している.結

Page 73: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 74: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 5章 実験 61

果として,ヘビ型ロボットは前半部分においては障害物を乗り越えることができた

ものの,後半部分において障害物を乗り越えることができず,また,前半部分が円

柱から脱落してしまった.これは,現状のヘビ型ロボットの全長においては,障害

物を乗り越えるように螺旋尺取り形状設計すると把持部が 1箇所しか生成できず,

そのため片持ち梁のようになった伸展部が重量の影響で下方にさがり,障害物への

乗り上げを困難にしていることが影響している.前半部分においては,障害物へ

の十分な押しつけ力が発生した状態において捻転動作の効果により障害物を乗り

越える結果となったが,後半部分は重力に打ち勝って体幹をもち上げることができ

なかった.さらに,ロボット螺旋形状の中心軸と円柱の中心軸の方向がずれる影響

により,ロボットが円柱から脱落する状況に至っている.この問題は,螺旋尺取り

方式で移動中に把持部をいつも 2箇所以上生成できる程度にロボットの全長を増や

し,伸展部が下方にさがることを防ぐことができれば解決されると考えている.

Page 75: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 76: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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]であった.シミュレーション結果より,ヘビ型

ロボットは十分に円柱を把持しており,すべりが発生することがなく効果的に螺旋

縦波方式で円柱上の分岐点を走破できることが確認された.

Page 77: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 78: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 5章 実験 65

5.2.2 螺旋縦波方式の実機実験

パラメータAを決定する実験

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回滑り落ちて失敗し

た.他の 6回実験では落下する現象が観察されたが,ロボットはパイプの底部まで

に滑り落ちなかった.Fig. 5.10(b)に示されている位置は成功した 6回の実験の平均

値である.

加えて,パラメータ Aが増加することにつれて x軸に沿った変位が増加すること

が確認できた.ロボットの前進速度を上げるために,Aの値を大きくすることが望

ましい.本研究では,ロボットと配管の間に十分な摩擦を維持し,所望の螺旋縦波

方式を実現するためにパラメータAを 0.02に設定した.

Page 79: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 5章 実験 66

Fig. 5.10:Experiments to determine parameter A.

Fig. 5.11:Experimental results of parameter A.

Page 80: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 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となる.しかしながら,配管に巻き付く際にロボットの外装に

付けられているスポンジゴムは変形するため,rは理論値より小さく設定すること

が必要である.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の中のグラフで破線で囲っ

ている部分が螺旋縦波が生じる際の関節角度の変動である.全体的にみると関節

角度は大きな周期的な波形になっていることが分かる.それは,捻転補正を実装し

たためである.実験により分岐点をすり抜けることができると確認できた.

Page 81: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 82: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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

Page 83: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 5章 実験 70

5.3 まとめ

本章では, 新た提案する移動形態をシミュレーションと実機実験により動作確認を

行った.螺旋捻転運動では乗り越えられない段差を乗り越える場合に螺旋尺取り方

式による移動が有利である結果を述べたが,配管の特に段差のない部分を移動す

る際には螺旋捻転運動で移動したほうが効率がよい.そのため,環境に応じて螺

旋捻転運動と螺旋尺取り方式とを切り替える方法を検討することが必要となる.

また,生物の蛇が円柱上を移動する際に頭部の向きを変えないまま移動するよう

に,先頭リンクの向きを一定に保ったまま螺旋尺取り方式で移動するための方策を

検討する予定である.さらに,事前に計画した移動経路をヘビ型ロボットが追従す

るような制御方策の開発や,ロボットが円柱を把持している部分で十分な摩擦力を

発生するための力を考慮した解析が今後の課題であ.

続いては提案する螺旋縦波方式をヘビ型ロボットに実装してその挙動を確認し,

従来の螺旋捻転運動ではすり抜けることができない分岐点のある配管を移動でき

ることを確認した. 実機実験の際に,サーボモータの剛性とガタにより重力の影響

でロボットの体幹が湾曲する現象が発生し,落下することが確認された.これに対

して重力補正を行い,落下した分を持ち上げるようにできた.

Page 84: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

71

第6章

結言

本論文では,ヘビ型ロボットが配管の外周に沿って移動するモーションの設計を

研究対象として,配管の外周にフランジや分岐点などの障害物があった場合にヘビ

型ロボットが障害物をすり抜ける振る舞いを提案した.新たな移動モーションの設

計ならびに実験の結果により提案手法の有用性を示した.また,提案する二つの

移動形態の形状生成,シフト制御の手法の適用できる範囲は pitchと yawの関節を

交互に連結して構築されている一般的なヘビ型ロボットには適用できる.

螺旋尺取り方式は段差のある障害物を乗り越えるために設計した移動形態であ

り,本研究では水平配管を移動させる実験と配管のフランジを模擬した段差のあ

る障害物を乗り越える実験を行った.垂直配管を昇ることができなかったが,螺旋

尺取り方式で移動中に把持部をいつも 2箇所以上生成できる程度にロボットの全長

を増やし,伸展部が下方にさがることを防ぐことができれば解決されると考えて

いる.

螺旋縦波方式は配管外周にある金具や配管の分岐をすり抜けるために設計した

ヘビ型ロボットの新たな移動形態である.配管の分岐点をすり抜けるヘビ型ロボッ

トの移動形態として世界初である.ロボットに実装する際に,シフト制御で生じた

ロボット体幹の捻転を抑制するために捻転補正を導入した.または,サーボモータ

の剛性とガタにより重力の影響ですり落ちる現象が観察されたが,重力補正を導

入して落下した分を補正できるようにした.捻転補正と重力補正は両方とも機体

座標系を回転されるため,ロボットへ螺旋縦波方式運動を実装する際に”波”が生

成するとともに捻転動作も生じる.捻転動作が生じるとロボット体幹と配管に対す

る相対位置が変化する.すなわち,モータの駆動軸の姿勢が配管に対して回転し,

レンチ (Wrench)が変化していると著者が判断している.そのため,螺旋縦波方式で

移動する際に,配管を強く把持したり,滑ったりする場合があった.同様な現象は螺

旋捻転運動でも観察された.

Page 85: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

第 6章 結言 72

今後の研究では,ロボットが捻転する場合にロボット体幹が配管に対する力学の

関係を解明し,その結論によりロボットの振る舞いを調整するなどが考えられる.

一方で,重力の影響で落下する現象に対して,今回は試行錯誤で補正量 ψg を決定

している.将来ではロボットの先頭と末尾の関節に IMU(Inertial Measurement Unit) が

取り付けて落下した分を自動的に補正できる制御策の実現などが考えられる.ま

た,T字分岐点の水平方向の分岐配管に沿って移動することなどが考えられる.

Page 86: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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.

Page 87: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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.

Page 88: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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

Page 89: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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] Liljeback, P., Kristin Ytterstad Pettersen, Oyvind Stavdahl, Jan Tommy Gravdahl:“Snake

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

[31] Liljeback, 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

Page 90: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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,

Page 91: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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.

Page 92: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 79

[60] 千木崎俊太郎,森淳,山田浩也,広瀬茂男:“水陸両用ヘビ型ロボット“ACM-R5”

の機構と制御の研究”,ロボティクス・メカトロニクス講演会 2005,ALL-N-020,

2005.

[61] ブリタニカ百科事典:“ https://kids.britannica.com/students/assembly/view/171904”.

Page 93: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

謝 辞

本論文は筆者が岡山大学大学院自然科学研究科生命医用工学専攻博士後期課

程に在籍中の研究成果をまとめたものである.本研究を遂行するにあたり,研究

会やゼミ等で適切な助言や指摘をしてくださり,日々の生活の中で研究を温かく

見守ってくださった岡山大学大学院自然科学研究科インタフェースシステム学研

究室の五福明夫教授に深く感謝いたします.また,本研究のテーマを与えて頂

き,研究の要所では必ず有益な助言と指導を下さいました,亀川哲志講師に心

より感謝いたします.研究会において私が見落としていた視点での沢山の有益

なコメントを与えて下さった,杉原太郎助教に深く感謝いたします.材料の加工

やロボット故障時に関する相談にも親切に対応してくださり,またその優れた加

工技術でシステム構築に協力してくださった,柴田光宣技術職員に感謝いたし

ます.適切な助言や親身になって協力してくださった須原大貴氏,松田絵梨子氏,

秋山太一氏,酒井聡志氏,宇根和志氏や共に研究活動に励んだヘビ型ロボット研

究グループの皆に深く感謝します.研究におけるアドバイスや実験等への協力

において多大な貢献をしてくれた,研究室の同期や後輩の皆様に謹んで感謝の

意を表します.日本政府(文部科学省)から奨学金を給付していただいたおかげ

で,研究に集中でき,本稿を書き上げることができました,心よりお礼申しあげ

ます.最後に,いつになったら役に立つのか分からない研究に打ち込む筆者を理

解し,支えてくれた家族に,感謝いたします.

Page 94: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

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. 亀川哲志,斉偉,須原大貴, 松田絵梨子, 秋山太一,酒井聡志,竹森達也,藤原始

史,松野文俊,鈴木陽介,坂東宜昭,奥乃博, “螺旋捻転運動で配管を走破する

Page 95: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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).

Page 96: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

参考文献 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.

Page 97: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録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

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

(A.1)

となる.(A.1)式を一回微分する,x(t) = − sin t(a− b sinωt)− bω cos t cosωt

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

z(t) = −c(dω sinωt− 1)

(A.2)

(A.1)式を二回微分する,x(t) = − cos t(a− b sinωt) + bω2 cos t sinωt+ 2bω sin t cosωt

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

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

(A.3)

(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

z(t)(3) = cdω3 sinωt

(A.4)

Page 98: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録A 85

(4.6)式と (4.7)式により,螺旋尺取り方式の曲率 κ(t)捩率 τ(t)は以下のように与え

られる.

κ(t) =

√A

B3/2(A.5)

τ(t) =C

A(A.6)

ここで,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)

Page 99: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録A 86

A.2 螺旋縦波方式の曲率κ (s)と捩率 τ (s)

螺旋縦波曲線は 4.9式により以下のように定義されている.x = a(t) cos(t)

y = a(t) sin(t)

z = b(t)

(A.7)

ここで,

    a(t) = ρ(t) + r

   b(t) = n2π t

   (A.8)

ρ(t) = Asech(ωt − ϕ)

{A ∈ R | A > 0}, {ω ∈ R | ω > 0}, ϕ ∈ R(A.9)

(A.7)式を一回微分する,

x(t) = −aω cos (t) sinh(ωt−ϕ)cosh (ωt−ϕ)2 − sin (t)

(a

cosh (ωt−ϕ) + r)

y(t) = cos (t)(

acosh (ωt−ϕ) + r

)− aω sin (t) sinh(ωt−ϕ)

cosh (ωt−ϕ)2

z(t) = n2π

(A.10)

(A.7)式を二回微分する,

x(t) = 2aω2 cos (t)sinh(ωt−ϕ)2

cosh (ωt−ϕ)3 + 2aω sin (t) sinh(ωt−ϕ)cosh (ωt−ϕ)2 − cos (t)

(a

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

cosh (ωt−ϕ)

y(t) = 2aω2 sin (t)sinh(ωt−ϕ)2

cosh (ωt−ϕ)3 − 2aω cos (t) sinh(ωt−ϕ)cosh (ωt−ϕ)2 − sin (t)

(a

cosh (ωt−ϕ) + r)− aω2 sin (t)

cosh (ωt−ϕ)

z(t) = 0

(A.11)

Page 100: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録A 87

(A.7)式を三回微分する,

x(t) = −6aω3 cos (t)sinh(ωt−ϕ)3

cosh (ωt−ϕ)4 − 6aω2 sin (t)sinh(ωt−ϕ)2

cosh (ωt−ϕ)3 + 5aω3 cos (t) sinh(ωt−ϕ)cosh (ωt−ϕ)2 + 3aω cos (t) sinh(ωt−ϕ)

cosh (ωt−ϕ)2

+sin (t)(

acosh (ωt−ϕ) + r

)+ 3aω2 sin (t)

cosh (ωt−ϕ)

y(t) = −6aω3 sin (t)sinh(ωt−ϕ)3

cosh (ωt−ϕ)4 + 6aω2 cos (t)sinh(ωt−ϕ)2

cosh (ωt−ϕ)3 + 5aω3 sin (t) sinh(ωt−ϕ)cosh (ωt−ϕ)2 + 3aω sin (t) sinh(ωt−ϕ)

cosh (ωt−ϕ)2

− cos (t)(

acosh (ωt−ϕ) + r

)− 3aω2 cos (t)

cosh (ωt−ϕ)

z(t) =  0

(A.12)

(4.14)式と (4.15)式により曲率 κ(t)捩率 τ(t)を計算することができる.

Page 101: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録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

Page 102: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録 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 シミュレーション環境におけるロボットモデル

Page 103: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録 B 90

Fig. B.2:jyanome2-Vrep-structure

Fig. B.3:normalV2-Vrep-structure

Page 104: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録 B 91

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

Page 105: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録C

検証実験

螺旋縦波を送る際にロボット体幹の円柱から離れた一部がサーボモータの剛性と

モータのガタにより落下する現象が確認された.前節の実機実験では,落下した

分をオペレータから捻転運動のコマンドを送って補正する方針で実施した.本節で

は,サーボモータの剛性とモータのガタによってロボットの体幹がどれほど湾曲す

るかを検証し,重力の影響で落下した部分を補正することを考える.

検証実験

ロボットの体幹がどれほど湾曲するかを検証するために Fig. c.1に示す実験を

行った;

・ロボットのモータをサーボオンにして,直線になるコマンドを送る.

・ロボットをしっぽ部から徐々に固定位置をずらして P 点の位置を記録する.

・ aと bの長さを測り,グラフ化する.

・P 点の近似式を求めて作成したグラフ化は Fig. c.2のようになる.

先頭部のモータの軸が床面に対して垂直・平行の各二種類の場合を実験した.P

点の近似式によって,aと bの関係が求められる.そして,arctanの関係から補正す

る角度となる α[rad]が求められる.床面に対して平行の軸に α[rad]を補正する.以

上の実験より,ロボットの体幹が重力の影響で湾曲することを検証し,湾曲した分

を補正することで修正可能であることを確認できた.

Page 106: 配管の外周を移動する ヘビ型ロボットのモーション …ousar.lib.okayama-u.ac.jp/files/public/5/56288/...付録B ROS (Robot Operating System) によるシステム構築

付録 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