6足歩行ロボットの制御

6足歩行ロボットの制御
箱木研究室
T22R007
山岡 由尚
はじめに
・災害救助などで凹凸の激しい地面に対応して
姿勢を保てるようにしていきたい
・ロボットの姿勢・歩行制御を目的とする
本体構成
・RCサーボ:GWSMICRO/2BBMG/F(フタバ)
電源 6[V] トルク 6.4[kg・cm]
重量 28[g] 速度 0.14[s/60°]
・mbedマイコン[32bit](NXP)
クロック 96[MHz] フラッシュ 512[kB]
SRAM 64[kB]
姿勢
・足を接地した状態で、胴体をねじったり、上下
左右に動かせるようにする
・坂や不整地でも、各足を個々に動かして姿勢
を安定させる
ロール軸
ヨー軸
ピッチ軸
足のリンク図
関節角度・座標の計算
y
3
T2
4
P4
P1
T1
L1

P0
F  mg
L2
P5
x1  L cos   x 0
1
x
L1
P2
L2
2
m:質量
T:モータ負荷トルク
L :関節間の長さ
1L 2
θ:関節の角度
φ:本体の傾き
P:関節部の座標
P0 P1
L:本体 間の長さ
P3
y1  L sin   y0
2
2
2
2
((
x

x
)

(
y

y
)

L

L
3
1
3
1
1
2)
 2  2  cos 1
2 L1 L 2
2
2
2
2
((
x

x
)

(
y

y
)

L

L
5
0
5
0
1
2)
4  cos 1
2L1L 2
y 3  y1
L 2 sin  2
)  tan 1 (
)
x 3  x1
L1  L 2 cos  2
y  y0
L 2 sin 4
3  tan 1 ( 5
)  tan 1 (
)
x5  x0
L1  L 2 cos 4
1  tan 1 (
x 2  x1  L1 cos 1 y 2  y1  L1 sin 1
x 4  x 0  L1 cos 3 y 4  y0  L1 sin 3
*P 5 P3 は地面に固定・原点をP 0
1.本体の傾きから P1 を求める
2.各足の関節角度を求める
3.関節角度から P 2 P 4 を求める
4.本体を動かしながら、1~3を繰
り返す
トルクの計算
姿勢毎のトルクを計算して、モータに負担がか
かりすぎないようにする。
F
2
T2 1
2
l2
F
2
T1
l1
F  mg
m:質量
T:モータ負荷トルク
l:間接間の長さ
θ:間接の角度
F
(l 2 cos(1   2 )  l1 cos 1 )
2
F
T2  l 2 cos( 1   2 )
2
T1 
歩行
・2軸で足を持ち上げて1軸で前後に動かす
・足を3本ずつ交互に接地して行う3点歩行を
メインに行う
歩行の例
旋回
・中心点を決め、その周りを円を描くように足を
動かせばその場での旋回ができる
・中央2つの足を支えとして、前後4つの足で円
を描くように動かす
今後の課題
・本体の姿勢制御のために加速度センサを取り
付ける
・足の接地を確かめるために足裏に圧力センサ
を取り付ける