Document

Human interface Section, P&I Lab, Titech
力覚インタラクションのための
物理ベースモデリング
東京工業大学 長谷川晶一
田崎 勇一
佐藤 誠
Human interface Section, P&I Lab, Titech
背景
力覚提示+物理ベースモデリング
物体モデルに触りたい
力覚インタフェースによる直接操作,力覚提示
物体モデルがリアルに動いてほしい
→ 物理法則に基づいて物体を動かす
2
Human interface Section, P&I Lab, Titech
目的
自由物体と,関節をもつ物体(剛体)
技術展示
写真
3
Human interface Section, P&I Lab, Titech
力覚のための物理シミュレータ
通常の剛体運動シミュレーション
映画用
 オフラインシミュレーション
 1ステップに数秒~数分かけてもよい.
ゲーム用
 10Hz~60Hz
シミュレーションの1ステップ Dt = 16ms~100ms
力覚のためのシミュレータ
力覚制御には高速更新が必要
 300Hz~1kHz .. Dt = 1ms~3ms
細かく,高速なシミュレーションが必要
4
Human interface Section, P&I Lab, Titech
剛体運動のシミュレーション
運動方程式
dmv
f
dt
dIω

dt
運動がシミュレーション → 数値積分
力(f)とトルク(τ)が分かればよい
5
Human interface Section, P&I Lab, Titech
剛体に働く力
重力→ f=mg… 定数
バネ→ f=kx… 位置に比例
拘束力
mg
kx
力の大きさは不明
剛体同士の位置・速度関係が決まっている
 蝶番:2物体の相対位置が一定
 抗力:2物体が互いに侵入しない
 静止摩擦力:物体が滑らない
拘束力の計算が難しい
fn
ft
6
Human interface Section, P&I Lab, Titech
拘束力の計算法1
解析法
運動方程式と拘束条件式から,拘束力を解く
運動方程式:
1
 mA
 rA  


   

IA

 θ A    (p A  rA ) 

 r   
f
mB
1

 B  



I B  θB   (p B  rB )  

関節の拘束:
B  p
 A  0
p
f
pA
B
pB
A
抗力の拘束:
B  p
 A )  n  0
(p
pB B
A
fn
pA
これらを連立
1次式 or 線形計画問題を解く
計算量は,一般にはO(n3)で低速
 より早く計算できる場合もある
7
Human interface Section, P&I Lab, Titech
拘束力の計算法2
ペナルティ法
拘束をバネダンパモデルに置き換える.
拘束力=バネダンパモデルが発生する力と考える.
バネの伸びl,相対速度v
f=k l+bv
計算量はO(n)で高速
バネダンパモデルが収束しないことがある
Dtが十分小さくなければならない.
拘束が絡み合うと,バネ・ダンパ係数の調整が大変.
8
Human interface Section, P&I Lab, Titech
計算量の比較
Average computation time[ms]
60
ペナルティ法
(我々のシミュレータ)
50
40
解析法
(Open Dynamics Engine)
30
20
10
0
0
5
10
Number of blocks
15
9
Human interface Section, P&I Lab, Titech
提案するシミュレータの枠組み
抗力・摩擦力には,ペナルティ法
構造が頻繁に変わる
解析法では高速化が難しい.
→ペナルティ法(計算量O(n))
関節の拘束力には,解析法
関節の構造はあまり変化しない
木構造であることが多い
動物,人間,ロボットアームなど
→Feather Stoneの方法 (計算量O(n))
10
Human interface Section, P&I Lab, Titech
抗力・摩擦力の計算
接触体積に基づくペナルティ法
抗力
接触領域に分散する
バネダンパモデルを仮定
→ 面と面が接触する場合も安定に
抗力
摩擦力
接触領域の各点が
クーロン摩擦に従うと仮定
→ 回転摩擦の計算も可能に
摩擦力
前回の接触領域 現在の接触領域
11
Human interface Section, P&I Lab, Titech
関節の拘束力の計算
Featherstoneの方法
木構造のリンク用
リンクiの運動方程式が,
 fi 
 v i 
   I i    Zi
i
 ti 
ω
Ii: リンクIの慣性項
Zi: 外力,重力,コリオリ力による項
Ii,Ziは関節加速度によらない
のように,書ける.
fi , ti
根から順に拘束と
運動方程式を
解くことが出来る.
リンクi
vi , ωi
葉のリンク
葉のリンク
リンクi と,より葉側のリンク
根のリンク
12
Human interface Section, P&I Lab, Titech
シミュレーション例
鎖 (関節の例)
積み木の操作(抗力と摩擦力の例)
両者の統合
13
Human interface Section, P&I Lab, Titech
結論
力覚インタラクションにはステップ(Dt)の小さ
なシミュレーションが必要.
計算が高速な(O(n))ペナルティ法と
FeatherStone法を組み合わせ,
関節を持った物体との力覚インタラクションを
実現した.
14
Human interface Section, P&I Lab, Titech
今後の課題
FeatherStone法とペナルティ法の計算量の評価
実際の計算時間を確かめたい
ペナルティ法の安定性の向上
完全に埋まった場合,衝突判定が不安定
木構造でないリンクの取り扱い
ループを持つリンク
解析法の高速化
ペナルティ法との組み合わせ
15