@gauzau いきなり話題がwww えーとですね、あれは運動方程式をたてるのもある程度PCにやらせてるんですよ。説明してるようなサイトあるかしら。。。
2011-05-03 00:43:12@gauzau もちろんラグランジアンとかで式立ててもいいんだけど、多分やってみたんだろうと思うけど、2関節の振子ですら解けない感じになるよね。つーわけで、ニュートン・オイラーの逆動力学演算というものを応用する手法がありますです。
2011-05-03 00:49:44@convexbrain 直接は解けない感じになって死んだw ラグランジアン立てつつ,組み合わせ最適化問題にしてなんとなく解けないかなぁとちらっと考えたけどわかんないwwwww
2011-05-03 00:51:37@convexbrain それも考えてるんだよねー.別に振り子である必然性はあんましないので.ただ,一応元モデルが振り子になっとるので,そちらの動作は把握したほうが良いという気になってきたw
2011-05-03 00:52:39@gauzau まず、逆動力学演算でできるのは、「逆」なので、入力として一般化座標(角度・位置)とその速度・加速度を与えると、出力として一般化力(トルク・力)がでてきます。(続く)
2011-05-03 01:03:33@gauzau 次に、先人の努力によってwww、多リンク系の力学系がH・α+b=τみたいに書けることがわかってます。ここで、αは一般化座標の加速度です。ただし、H、b、τは一般化座標・速度に依存しているので、書き下すとすると滅茶苦茶複雑な式になって死にますw
2011-05-03 01:13:19@gauzau この辺は、解析力学であってラグランジュやらハミルトンやらの功績だったと思うんですが忘れましたw ところでここまではOKなのか
2011-05-03 01:17:10@convexbrain ええと,多リンク系であわせてこの式が1本できるの?それとも,各剛体(と呼んでよいのか?)ごとにこの式ができる?つまり,剛体が1..nとして,添え字のiであらわすと,Hi ai + bi = τiなのか,Σ(Hi) ・ ai + Σbi = Στi なのか
2011-05-03 01:20:59@gauzau そうでした忘れてました。この式一本です。ですが、αはベクトルで一般化座標の数Nだけ要素があります。bやτもベクトル。HはN×N行列ですね。
2011-05-03 01:23:59@convexbrain んーと,たとえばデカルト座標の場合はα, b, τは3Nのベクトルで,Hが3N x 3Nということでよろしいのかな?
2011-05-03 01:29:30@gauzau Nをミクの関節の数として、伸び縮みしない(角度だけしか変わらない)と考えれば、そのとおりです。
2011-05-03 01:32:24@gauzau H・α+b=τ と書きましたが、イメージをもってもらうためにざっくり各項の役割をいうと、Hは質量・慣性、bは重力・遠心力・コリオリ力などの慣性力、τは外力や関節のトルクです。
2011-05-03 01:38:07@gauzau ここからがポイント。まず、bは重力をゼロとし、かつ一般化速度もゼロとすることで、完全に消えてなくなることが先人の努力によりwわかってます。その状態で、一般化座標を現在の値に設定、一般化加速度を要素i番目だけ1の単位ベクトルにして、逆動力学演算を行うとどうなるか。
2011-05-03 01:44:50@gauzau 今度は、一般化加速度αをゼロに、一般化座標・速度を現在の値にして実行すると、τとしてbがまんま出てきます。こうしてHとbがもとまったので、あとは力・トルクτを好きな値にして、H・α+b=τを解けば、加速度αがでてきます。
2011-05-03 01:54:09@gauzau あとはオイラー法なりルンゲクッタ法なりを援用すれば順力学のシミュレーションができるという寸法です。
2011-05-03 01:55:25@convexbrain なんか前提を勘違いしている気がしてきたw H ・ α + b = τで,Hとbが今不明で,これらを求めればあとは式をとくだけ,という話なんだよね?
2011-05-03 02:03:16