• 検索結果がありません。

ロボティクス基礎

N/A
N/A
Protected

Academic year: 2021

シェア "ロボティクス基礎"

Copied!
28
0
0

読み込み中.... (全文を見る)

全文

(1)

ロボティクス基礎

担当:平田 健太郎

1

学期 木

Ⅲ・Ⅳ限 11

00-13

10 1

号館 大講義室

5/16

5

回 運動学・動力学

(2)

例題:

𝑥𝑥

0

𝑦𝑦

0

𝑧𝑧

0

𝑎𝑎 = 3,0,0

𝑇𝑇

𝑎𝑎′

𝑎𝑎′′

𝑎𝑎

𝑧𝑧

0 軸まわりに

𝜋𝜋/2

回転し

, 𝑥𝑥

0 軸まわりに

𝜋𝜋

回転したときの

( 𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0 座標系における

)

座標 を求める.

(3)

𝑥𝑥

0

𝑦𝑦

0

𝑧𝑧

0

𝑎𝑎 = 3𝑥𝑥

0

𝑥𝑥

1

𝑦𝑦

1

𝑧𝑧

1

𝑥𝑥

2

𝑦𝑦

2

𝑧𝑧

2

𝑎𝑎′ = 3𝑥𝑥

1

𝑎𝑎′′ = 3𝑥𝑥

2

𝑧𝑧

0 軸まわりに

𝜋𝜋/2

回転

𝑥𝑥

0 軸まわりに

𝜋𝜋

回転

𝑦𝑦

1 軸まわりに

−𝜋𝜋

回転

(4)

例題:

𝑥𝑥

0

𝑦𝑦

0

𝑧𝑧

0

𝑎𝑎 = 3,0,0

𝑇𝑇

𝑎𝑎′

𝑎𝑎′′

𝑎𝑎

𝑧𝑧

0 軸まわりに

𝜋𝜋/2

回転し

, 𝑥𝑥

0 軸まわりに

𝜋𝜋

回転したときの

( 𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0 座標系における

)

座標 を求める.

それぞれの回転後の座標系を

𝑥𝑥

1

, 𝑦𝑦

1

, 𝑧𝑧

1

, 𝑥𝑥

2

, 𝑦𝑦

2

, 𝑧𝑧

2 とすると

𝑥𝑥

1

, 𝑦𝑦

1

, 𝑧𝑧

1

= 𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0

𝑅𝑅 𝑥𝑥

0

, 𝜋𝜋

2

𝑥𝑥

2

, 𝑦𝑦

2

, 𝑧𝑧

2

= 𝑥𝑥

1

, 𝑦𝑦

1

, 𝑧𝑧

1

𝑅𝑅 𝑦𝑦

1

, −𝜋𝜋

(5)

𝑥𝑥

0

𝑦𝑦

0

𝑧𝑧

0

𝑎𝑎 = 3,0,0

𝑇𝑇

𝑎𝑎′

𝑎𝑎′′

ベクトル

𝑎𝑎

は座標系ごと回転しているので

𝑥𝑥

2

, 𝑦𝑦

2

, 𝑧𝑧

2 座標系でも

3,0,0

𝑇𝑇 と表される.

𝑥𝑥1,𝑦𝑦1,𝑧𝑧1 = 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 𝑅𝑅 𝑧𝑧0,𝜋𝜋 2 𝑥𝑥2,𝑦𝑦2,𝑧𝑧2 = 𝑥𝑥1,𝑦𝑦1,𝑧𝑧1 𝑅𝑅 𝑦𝑦1,−𝜋𝜋 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 𝑎𝑎′′ = 𝑥𝑥2,𝑦𝑦2,𝑧𝑧2 3

00 𝑎𝑎′′ = 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 −1 𝑥𝑥2,𝑦𝑦2,𝑧𝑧2 3

00 = 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 −1 𝑥𝑥1,𝑦𝑦1,𝑧𝑧1 𝑅𝑅 𝑦𝑦1,−𝜋𝜋 3 00

= 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 −1 𝑥𝑥0,𝑦𝑦0,𝑧𝑧0 𝑅𝑅 𝑥𝑥0,𝜋𝜋

2 𝑅𝑅 𝑦𝑦1,−𝜋𝜋 3 00

=

cos𝜋𝜋

2 −sin𝜋𝜋 2 0 sin𝜋𝜋

2 cos𝜋𝜋 0 02 01

cos(−𝜋𝜋) 0 sin(−𝜋𝜋)

0 1 0

−sin(−𝜋𝜋) 0 cos(−𝜋𝜋) 30

0 = 0 −1 0

1 0 0

0 0 1

−1 0 0

0 1 0

0 0 −1 30 0

= 0 −1 0

−1 0 0

0 0 −1

30

0 = 0

−30

(6)

座標系の逐次変換

回転行列を

𝐴𝐴 𝜃𝜃

𝑖𝑖 で表すと

𝑥𝑥

𝑖𝑖

, 𝑦𝑦

𝑖𝑖

, 𝑧𝑧

𝑖𝑖

= 𝑥𝑥

𝑖𝑖−1

, 𝑦𝑦

𝑖𝑖−1

, 𝑧𝑧

𝑖𝑖−1

𝐴𝐴 𝜃𝜃

𝑖𝑖

= 𝑥𝑥

𝑖𝑖−2

, 𝑦𝑦

𝑖𝑖−2

, 𝑧𝑧

𝑖𝑖−2

𝐴𝐴 𝜃𝜃

𝑖𝑖−1

𝐴𝐴 𝜃𝜃

𝑖𝑖

= 𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0

𝐴𝐴 𝜃𝜃

1

𝐴𝐴 𝜃𝜃

2

⋯ 𝐴𝐴 𝜃𝜃

𝑖𝑖−1

𝐴𝐴 𝜃𝜃

𝑖𝑖

⋯ (𝑎𝑎. 2)

𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0

= 𝐼𝐼

(7)

 R-P-P

ロボットの例

𝑥𝑥0

Rotation-Pivot-Pivot

型の

3

自由度 ロボットアーム

𝑧𝑧0

𝑦𝑦0

𝑥𝑥1

𝑧𝑧1 𝑦𝑦1

𝜃𝜃1

𝑥𝑥2 𝑧𝑧2

𝑦𝑦2 𝑥𝑥3

𝑧𝑧3 𝑦𝑦3

𝜃𝜃2

𝜃𝜃3

𝜃𝜃1 = 𝜃𝜃2 = 𝜃𝜃3 = 0 のとき, 各リンク座標系の方向と 姿勢は基準座標系と一致 しているものとする.

(8)

例題:

𝑥𝑥

1

, 𝑦𝑦

1

, 𝑧𝑧

1

, 𝑥𝑥

2

, 𝑦𝑦

2

, 𝑧𝑧

2

, 𝑥𝑥

3

, 𝑦𝑦

3

, 𝑧𝑧

3 を求めよ

.

(9)

𝑥𝑥1

𝑧𝑧1 𝑦𝑦1

𝜃𝜃1

𝑥𝑥2 𝑧𝑧2

𝑦𝑦2 𝑥𝑥3

𝑧𝑧3 𝑦𝑦3

𝜃𝜃2

𝜃𝜃3

回転軸

: 𝑞𝑞

1

= 𝑧𝑧

0

, 𝑞𝑞

2

= 𝑦𝑦

1

, 𝑞𝑞

3

= 𝑦𝑦

2

𝐴𝐴(𝜃𝜃1) = 𝑅𝑅(𝑧𝑧0,𝜃𝜃1) 𝐴𝐴(𝜃𝜃2) = 𝑅𝑅(𝑦𝑦1,𝜃𝜃2) 𝐴𝐴(𝜃𝜃3) = 𝑅𝑅(𝑦𝑦2,𝜃𝜃3)

𝑥𝑥

1

, 𝑦𝑦

1

, 𝑧𝑧

1

= 𝑥𝑥

0

, 𝑦𝑦

0

, 𝑧𝑧

0

𝐴𝐴 𝜃𝜃

1

= 𝐴𝐴 𝜃𝜃

1

= cos 𝜃𝜃

1

−sin 𝜃𝜃

1

0

sin 𝜃𝜃

1

cos 𝜃𝜃

1

0

0 0 1 ⋯ (𝑎𝑎. 3)

𝑥𝑥

2

, 𝑦𝑦

2

, 𝑧𝑧

2

= 𝐴𝐴 𝜃𝜃

1

𝐴𝐴 𝜃𝜃

2

= cos 𝜃𝜃

1

−sin 𝜃𝜃

1

0 sin 𝜃𝜃

1

cos 𝜃𝜃

1

0

0 0 1

cos 𝜃𝜃

2

0 sin 𝜃𝜃

2

0 1 0

−sin 𝜃𝜃

2

0 cos 𝜃𝜃

2

= c 𝜃𝜃

1

c 𝜃𝜃

2

−s 𝜃𝜃

1

c 𝜃𝜃

1

s 𝜃𝜃

2

s 𝜃𝜃

1

c 𝜃𝜃

2

c 𝜃𝜃

1

s 𝜃𝜃

1

s 𝜃𝜃

2

−s 𝜃𝜃

2

0 c 𝜃𝜃

2

⋯ (𝑎𝑎. 4)

cos sin → → c s

と略記

(10)

𝑥𝑥1

𝑧𝑧1 𝑦𝑦1

𝜃𝜃1 𝑥𝑥2 𝑧𝑧2

𝑦𝑦2 𝑥𝑥3

𝑧𝑧3 𝑦𝑦3

𝜃𝜃2

𝜃𝜃3

𝑥𝑥

3

, 𝑦𝑦

3

, 𝑧𝑧

3

= 𝐴𝐴 𝜃𝜃

1

𝐴𝐴 𝜃𝜃

2

𝐴𝐴 𝜃𝜃

3

= c 𝜃𝜃

1

c 𝜃𝜃

2

+ 𝜃𝜃

3

−s 𝜃𝜃

1

c 𝜃𝜃

1

s 𝜃𝜃

2

+ 𝜃𝜃

3

s 𝜃𝜃

1

c 𝜃𝜃

2

+ 𝜃𝜃

3

c 𝜃𝜃

1

s 𝜃𝜃

1

s 𝜃𝜃

2

+ 𝜃𝜃

3

−s 𝜃𝜃

2

+ 𝜃𝜃

3

0 c 𝜃𝜃

2

+ 𝜃𝜃

3

⋯ (𝑎𝑎. 5)

cos sin → → s c

と略記

𝐴𝐴 𝜃𝜃

2

𝐴𝐴 𝜃𝜃

3

= 𝑅𝑅(𝑦𝑦

1

, 𝜃𝜃

2

+ 𝜃𝜃

3

)

に注意

(11)

例題:

𝑖𝑖

リンク先端位置を

𝑝𝑝

𝑒𝑒𝑖𝑖 と表す

. 𝑝𝑝

𝑒𝑒1

= 𝑙𝑙

1

𝑧𝑧

1

, 𝑝𝑝

𝑒𝑒2

= 𝑙𝑙

1

𝑧𝑧

1

+ 𝑙𝑙

2

𝑧𝑧

2 より 手先位置

𝑝𝑝

𝑒𝑒3

= 𝑙𝑙

1

𝑧𝑧

1

+ 𝑙𝑙

2

𝑧𝑧

2

+ 𝑙𝑙

3

𝑧𝑧

3 となる

. 𝑝𝑝

𝑒𝑒3 の座標を求めよ

.

(12)

運動学・動力学

(13)

座標変換による物理量の漸化式とラグランジュ法を用 いれば

, (3

次元空間内の

)

ロボットの運動方程式が導出 できるので

,

ロボットのモデリングに関しての議論は一 段落

.

次にロボットの制御を考えるにあたって

,

運動学・

動力学の概念を整理しておく

.

(14)

運動学

(Kinematics)

ロボットの手先の位置・速度と各関節の角度・角速度の 間の幾何学的関係

動力学

(Dynamics)

ロボットに加える力(トルク)とその結果生じる動きの間の 関係

.

常微分方程式(運動方程式)によって記述される

.

通常

,

(ロボティクス以外の)制御で考えるのはこちら

(15)

𝑥𝑥1

𝑧𝑧1 𝑦𝑦1

𝜃𝜃1 𝑥𝑥2 𝑧𝑧2

𝑦𝑦2 𝑥𝑥3

𝑧𝑧3 𝑦𝑦3

𝜃𝜃2

𝜃𝜃3

𝑙𝑙

1

= 𝑙𝑙

2

= 𝑙𝑙

3

= 2

とするとき

,

先の例題(

R-P-P

マニピュレータ)のロボットの手先位置は次のように求められる

.

𝑎𝑎1 𝑙𝑙1

𝑚𝑚1 𝐺𝐺1 𝑎𝑎2

𝑙𝑙2

𝑚𝑚2 𝐺𝐺2

𝑎𝑎3 𝑙𝑙3

𝑚𝑚3 𝐺𝐺3

𝑝𝑝

𝑒𝑒3

= 𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

= 2 c 𝜃𝜃

1

s 𝜃𝜃

2

+ 2c 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

) 2 s 𝜃𝜃

1

s 𝜃𝜃

2

+ 2s 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

)

2 + 2 c 𝜃𝜃

2

+2c(𝜃𝜃

2

+ 𝜃𝜃

3

)

(16)

-

順運動学

各関節の角度・角速度

ロボットの動きの関係

-

逆運動学

(Inverse Kinematics)

手先位置・速度

各関節の角度・角速度の関係

(17)

𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

= 2 c 𝜃𝜃

1

s 𝜃𝜃

2

+ 2c 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

) 2 s 𝜃𝜃

1

s 𝜃𝜃

2

+ 2s 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

)

2 + 2 c 𝜃𝜃

2

+2c(𝜃𝜃

2

+ 𝜃𝜃

3

)

𝜃𝜃

1

, 𝜃𝜃

2

, 𝜃𝜃

3 を与えると

𝑥𝑥

𝑒𝑒3

, 𝑦𝑦

𝑒𝑒3

, 𝑧𝑧

𝑒𝑒3 が定まる

.

順運動学

𝑥𝑥 ≔ 𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

, 𝑞𝑞 ≔ 𝜃𝜃

1

𝜃𝜃

2

𝜃𝜃

3

, 𝑥𝑥 = ̅𝑥𝑥 + Δ𝑥𝑥, 𝑞𝑞 = �𝑞𝑞 + Δ𝑞𝑞

とすると 逆運動学

𝑥𝑥 ≔ 𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

, 𝑞𝑞 ≔ 𝜃𝜃

1

𝜃𝜃

2

𝜃𝜃

3

とおくと

, 𝑥𝑥 = 𝑓𝑓 𝑞𝑞 .

𝑞𝑞 = 𝑓𝑓

−1

𝑥𝑥

を解析的に求めるのは困難

.

各動作点近傍で 線形近似して求める.

(18)

𝑦𝑦 = 𝑓𝑓(𝑥𝑥)

𝑥𝑥 = 𝑎𝑎

のまわりで多項式によって近似することをいう

.

関数のテーラー展開

𝑦𝑦 = 𝑓𝑓 𝑎𝑎 + 1

1! 𝑓𝑓

𝑎𝑎 𝑥𝑥 − 𝑎𝑎 + 1

2! 𝑓𝑓

′′

𝑎𝑎 𝑥𝑥 − 𝑎𝑎

2

+ ⋯

= �

𝑘𝑘=0

𝑓𝑓

𝑘𝑘

𝑎𝑎

𝑘𝑘! 𝑥𝑥 − 𝑎𝑎

𝑘𝑘

(19)

𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

= 2 c 𝜃𝜃

1

s 𝜃𝜃

2

+ 2c 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

) 2 s 𝜃𝜃

1

s 𝜃𝜃

2

+ 2s 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

)

2 + 2 c 𝜃𝜃

2

+2c(𝜃𝜃

2

+ 𝜃𝜃

3

)

̅𝑥𝑥

𝑒𝑒3

+ Δ𝑥𝑥

𝑒𝑒3

= 2 c(

1

̅𝜃𝜃 +Δ𝜃𝜃

1

) s( ̅𝜃𝜃

2

+Δ𝜃𝜃

2

) + 2c( ̅𝜃𝜃

1

+Δ𝜃𝜃

1

) s( ̅𝜃𝜃

2

+Δ𝜃𝜃

2

+ ̅𝜃𝜃

3

+Δ𝜃𝜃

3

)

≃ 2 c ̅𝜃𝜃

1

− s ̅𝜃𝜃

1

Δ𝜃𝜃

1

s ̅𝜃𝜃

2

+ c ̅𝜃𝜃

2

Δ𝜃𝜃

2

+2 c

1

̅𝜃𝜃 − s

1

̅𝜃𝜃 Δ𝜃𝜃

1

s ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

+c

2

̅𝜃𝜃 +

3

̅𝜃𝜃 Δ𝜃𝜃

2

+Δ𝜃𝜃

3

≃ 2 c

1

̅𝜃𝜃 s ̅𝜃𝜃

2

− 2s

1

̅𝜃𝜃 s ̅𝜃𝜃

2

Δ𝜃𝜃

1

+ 2 c

1

̅𝜃𝜃 c

2

̅𝜃𝜃 Δ𝜃𝜃

2

+2 c ̅𝜃𝜃

1

s ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

+ 2s

1

̅𝜃𝜃 s ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

Δ𝜃𝜃

1

+ 2 c

1

̅𝜃𝜃 c ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

Δ𝜃𝜃

2

+Δ𝜃𝜃

3

= ̅𝑥𝑥

𝑒𝑒3

+ 2 s

1

̅𝜃𝜃 s ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

− s ̅𝜃𝜃

1

s ̅𝜃𝜃

2

Δ𝜃𝜃

1

+2 c

1

̅𝜃𝜃 c

2

̅𝜃𝜃 + c

1

̅𝜃𝜃 c ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

Δ𝜃𝜃

2

+ 2 c

1

̅𝜃𝜃 c ̅𝜃𝜃

2

+ ̅𝜃𝜃

3

Δ𝜃𝜃

3

=: ̅𝑥𝑥

𝑒𝑒3

+ 𝑎𝑎

11

Δ𝜃𝜃

1

+ 𝑎𝑎

12

Δ𝜃𝜃

2

+ 𝑎𝑎

13

Δ𝜃𝜃

3

各三角関数の1次までの テーラー展開をとる

高次項は無視する

Δ𝜃𝜃𝑖𝑖 の係数を整理

(20)

同様にして

, Δ�𝑦𝑦

𝑒𝑒3

= 𝑎𝑎

21

Δ𝜃𝜃

1

+ 𝑎𝑎

22

Δ𝜃𝜃

2

+ 𝑎𝑎

23

Δ𝜃𝜃

3

,

Δ ̅𝑧𝑧

𝑒𝑒3

= 𝑎𝑎

31

Δ𝜃𝜃

1

+ 𝑎𝑎

32

Δ𝜃𝜃

2

+ 𝑎𝑎

33

Δ𝜃𝜃

3 を求める

.

̅𝐽𝐽 = 𝑎𝑎

11

𝑎𝑎

12

𝑎𝑎

13

𝑎𝑎

21

𝑎𝑎

22

𝑎𝑎

23

𝑎𝑎

31

𝑎𝑎

32

𝑎𝑎

33 とおくと

, Δ𝑥𝑥 = ̅𝐽𝐽Δ𝑞𝑞 .

これより

Δ𝑞𝑞 =

−1

̅𝐽𝐽 Δ𝑥𝑥

とすれば

,

現在の手先位置の微小変化に対応する関節角度の操作量が 分かる.

速度の対応は

Δ𝑞𝑞/Δ𝑡𝑡 =

−1

̅𝐽𝐽 Δ𝑥𝑥/Δ𝑡𝑡

𝜕𝜕𝑓𝑓

𝜕𝜕𝑞𝑞 =: 𝐽𝐽 𝑞𝑞

ヤコビアン

𝐽𝐽 𝑞𝑞 = 𝜕𝜕𝑓𝑓

𝜕𝜕𝑞𝑞 = Δ𝑥𝑥 Δ𝑞𝑞 = ̅𝐽𝐽 𝑑𝑑𝑞𝑞

𝑑𝑑𝑡𝑡 = 𝐽𝐽

−1

𝑞𝑞 𝑑𝑑𝑥𝑥 𝑑𝑑𝑡𝑡 𝑑𝑑𝑞𝑞

𝑑𝑑𝑡𝑡 =

−1

̅𝐽𝐽 𝑑𝑑𝑥𝑥

現在の動作点近傍では

𝑑𝑑𝑡𝑡

一般論

(21)

𝑥𝑥 = 𝑥𝑥

𝑒𝑒3

𝑦𝑦

𝑒𝑒3

𝑧𝑧

𝑒𝑒3

, 𝑞𝑞 = 𝜃𝜃

1

𝜃𝜃

2

𝜃𝜃

3

別の言い方をすれば, これはベクトル変数に対してベクトル値を返す 関数

𝑓𝑓

のテーラー展開

𝑥𝑥 = 𝑓𝑓 𝑞𝑞 = 𝑓𝑓

1

(𝑞𝑞) 𝑓𝑓

2

(𝑞𝑞) 𝑓𝑓

3

(𝑞𝑞)

̅𝑥𝑥 = 𝑓𝑓 �𝑞𝑞 ̅𝑥𝑥 + Δ𝑥𝑥 = 𝑓𝑓 �𝑞𝑞 + Δ𝑞𝑞 ≃ 𝑓𝑓 �𝑞𝑞 + ̅𝐽𝐽Δ𝑞𝑞

̅𝐽𝐽 𝑖𝑖𝑖𝑖 = 𝜕𝜕𝑓𝑓 𝑖𝑖

𝜕𝜕𝜃𝜃 𝑖𝑖

定数項

1

次項

1

次導関数の値(微係数)

(22)

例題: 1

̅𝜃𝜃 = ̅𝜃𝜃

2

= ̅𝜃𝜃

3

= 𝜋𝜋/6

のときのヤコビアンを求めよ

.

𝑓𝑓 𝑞𝑞 = 𝑓𝑓

1

(𝑞𝑞) 𝑓𝑓

2

(𝑞𝑞)

𝑓𝑓

3

(𝑞𝑞) = 2 c 𝜃𝜃

1

s 𝜃𝜃

2

+ 2c 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

) 2 s 𝜃𝜃

1

s 𝜃𝜃

2

+ 2s 𝜃𝜃

1

s(𝜃𝜃

2

+ 𝜃𝜃

3

)

2 + 2 c 𝜃𝜃

2

+2c(𝜃𝜃

2

+ 𝜃𝜃

3

) ̅𝐽𝐽

𝑖𝑖𝑖𝑖

= 𝜕𝜕𝑓𝑓

𝑖𝑖

𝜕𝜕𝜃𝜃

𝑖𝑖

(23)

Δ𝑥𝑥 = ̅𝐽𝐽Δ𝑞𝑞 .

これより

Δ𝑞𝑞 =

−1

̅𝐽𝐽 Δ𝑥𝑥

とすれば

,

現在の手先位置の微小変化に対応 する関節角度の操作量が分かる

.

𝑀𝑀

−1

= 1

𝑀𝑀 𝑎𝑎𝑑𝑑𝑎𝑎 (𝑀𝑀)

正方行列から第

𝑖𝑖

行と第

𝑎𝑎

列を取り除いた小行列の行列に符号数

−1

𝑖𝑖+𝑖𝑖 をかけたものを

𝑖𝑖, 𝑎𝑎

要素の余因子という

.

行列

𝑀𝑀

に対して

,

その

𝑖𝑖, 𝑎𝑎

要素が

𝑀𝑀

𝑎𝑎, 𝑖𝑖

要素の余因子となって いる行列を

𝑀𝑀

の余因子行列といい,

𝑎𝑎𝑑𝑑𝑎𝑎(𝑀𝑀)

で表す.

𝑀𝑀

の行列式を

𝑀𝑀

で表すとき

, 𝑀𝑀

の逆行列は次式で与えられる

:

あとは

(

粛々と

) 𝑀𝑀

の余因子行列を計算すれば −1

̅𝐽𝐽

が求まる

.

(24)

𝐽𝐽

1

𝛽𝛽 cos(𝜃𝜃

2

− 𝜃𝜃

1

)

𝛽𝛽 cos(𝜃𝜃

1

− 𝜃𝜃

2

) 𝐽𝐽

2

̈𝜃𝜃

1

̈𝜃𝜃

2

+ 0 𝛽𝛽 sin(𝜃𝜃

1

− 𝜃𝜃

2

)

𝛽𝛽 sin(𝜃𝜃

2

− 𝜃𝜃

1

) 0 ̇𝜃𝜃

12

̇𝜃𝜃

22

+ 𝐷𝐷

1

+ 𝐷𝐷

2

−𝐷𝐷

2

−𝐷𝐷

2

𝐷𝐷

2

̇𝜃𝜃

1

̇𝜃𝜃

2

− 𝑚𝑚

1

+ 2𝑚𝑚

2

𝑔𝑔ℓ

1

sin 𝜃𝜃

1

𝑚𝑚

2

𝑔𝑔ℓ

2

sin 𝜃𝜃

2

= 𝜏𝜏

1

− 𝜏𝜏

2

𝜏𝜏

2

(前出)2リンクアームの運動方程式:

一般のロボットの運動方程式:

𝜃𝜃 :

関節角ベクトル

𝐽𝐽 𝜃𝜃 ̈𝜃𝜃 + 𝐶𝐶 ̇𝜃𝜃, 𝜃𝜃 + 𝐷𝐷 ̇𝜃𝜃 + 𝑃𝑃 𝜃𝜃 = 𝜏𝜏

慣性力項 粘性摩擦力項 駆動トルク

(25)

-

順動力学

各関節に作用するトルク

ロボットの動きの関係

-

逆動力学

(Inverse Dynamics)

ロボットの姿勢 (各関節の角度の時間関数)

各関節に 作用しているトルクの関係

通常, フィードバック制御で考えるのは順動力学

(26)

-

順動力学

与えたトルクに対するロボットの動きをシミュレーションする際に用いられる

.

数値計算法: オイラー法

̇𝑥𝑥 = 𝑓𝑓 𝑡𝑡, 𝑥𝑥 , 𝑥𝑥 𝑡𝑡

0

= 𝑥𝑥

0に対して

𝑥𝑥 𝑡𝑡

0

+ 𝛥𝛥𝑡𝑡 = 𝑥𝑥 𝑡𝑡

0

+ �

𝑡𝑡0

𝑡𝑡0+𝛥𝛥𝑡𝑡

̇𝑥𝑥 𝜏𝜏 𝑑𝑑𝜏𝜏 = 𝑥𝑥 𝑡𝑡

0

+ �

𝑡𝑡0

𝑡𝑡0+ 𝛥𝛥𝑡𝑡

𝑓𝑓 𝑡𝑡, 𝑥𝑥 𝑑𝑑𝜏𝜏

𝑡𝑡𝑡𝑡00+𝛥𝛥𝑡𝑡

𝑓𝑓 𝑡𝑡, 𝑥𝑥 𝑑𝑑𝜏𝜏 ≃ Δ𝑡𝑡𝑓𝑓 𝑡𝑡

0

, 𝑥𝑥 𝑡𝑡

0 なる近似を用いる

𝑥𝑥

̇𝑥𝑥

(27)

𝐽𝐽 𝜃𝜃 ̈𝜃𝜃 + 𝐶𝐶 ̇𝜃𝜃, 𝜃𝜃 + 𝐷𝐷 ̇𝜃𝜃 + 𝑃𝑃 𝜃𝜃 = 𝜏𝜏

一般のロボットの運動方程式:

𝑑𝑑

𝑑𝑑𝑡𝑡 ̇𝜃𝜃 = ̈𝜃𝜃 = 𝐽𝐽 𝜃𝜃

−1

𝜏𝜏 − 𝐶𝐶 ̇𝜃𝜃, 𝜃𝜃 − 𝐷𝐷 ̇𝜃𝜃 − 𝑃𝑃 𝜃𝜃 𝑑𝑑

𝑑𝑑𝑡𝑡 𝜃𝜃 = ̇𝜃𝜃

𝑥𝑥 = 𝜃𝜃

̇𝜃𝜃 , 𝑓𝑓 𝑥𝑥, 𝑡𝑡 = ̇𝜃𝜃

𝐽𝐽 𝜃𝜃

−1

𝜏𝜏 − 𝐶𝐶 ̇𝜃𝜃, 𝜃𝜃 − 𝐷𝐷 ̇𝜃𝜃 − 𝑃𝑃 𝜃𝜃

とおくと

̇𝑥𝑥 = 𝑓𝑓 𝑡𝑡, 𝑥𝑥

であるので

,

初期値

𝜃𝜃 0 , ̇𝜃𝜃 0

𝜏𝜏 𝑡𝑡

が与えられれば

解軌道

𝜃𝜃 𝑡𝑡 , ̇𝜃𝜃 𝑡𝑡

を計算できる

.

(28)

-

逆動力学

(Inverse Dynamics)

望ましいロボットの姿勢 (各関節角度)を時間関数として与え

,

各関節に 加えるべきトルクを計算

𝐽𝐽 𝜃𝜃 ̈𝜃𝜃 + 𝐶𝐶 ̇𝜃𝜃, 𝜃𝜃 + 𝐷𝐷 ̇𝜃𝜃 + 𝑃𝑃 𝜃𝜃 = 𝜏𝜏

一般のロボットの運動方程式:

𝜃𝜃(𝑡𝑡)

が与えられているとき

, ̇𝜃𝜃 𝑡𝑡 , ̈𝜃𝜃 𝑡𝑡

が計算できる

.

これらを左辺に代入すれば

,

加えるべきトルク

𝜏𝜏 𝑡𝑡

が求められる

.

正確なモデルに依存したフィードフォワード制御なので, 通常これだけで

,

うまくいくとは考えにくい

.

参照

関連したドキュメント

定可能性は大前提とした上で、どの程度の時間で、どの程度のメモリを用いれば計

[r]

輸入貨物の包装(当該貨物に含まれるものとされる包装材料(例えばダンボール紙、緩衝

また、第1号技能実習から第2号技能実習への移行には技能検定基礎級又は技

第20回 4月 知っておきたい働くときの基礎知識① 11名 第21回 5月 知っておきたい働くときの基礎知識② 11名 第22回 6月

(大防法第 18 条の 15、大防法施行規則第 16 条の 8、条例第 6 条の 2、条例規則第 6 条の

試験音再生用音源(スピーカー)は、可搬型(重量 20kg 程度)かつ再生能力等の条件

 吹付け石綿 (レベル1) 、断熱材等 (レベル2) が使用されて