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