afjkの技術メモ

主に技術系備忘録

物理エンジンで作るBio-likeness(3)

全身の筋肉が重力に逆らいながら「楽な」姿勢を探した結果、重心が各関節の真上にあり揺らいでもわずかな力で復元出来る均衡状態を発見する。それが「立つ」ということらしい。

日経デザイン「デザインの小骨話 第一回」山中俊治

前回作成したCSL制御モーターを単純に繋いだロボットを作り、動かしてみました。
f:id:afjk:20140912080518j:plain

1関節で三つの剛体を接続した場合

中心部を浮かせて地面に置くと、関節を閉じて中心を持ち上げます。

片側を浮かせると関節は90度まで回転して止まり、片側の剛体を持ち上げます。

2関節の場合

接地した側の関節、浮いた側の関節が開いて端を持ち上げます。

開きすぎて逆側に倒れない様にユラユラ揺れながらバランスをとる。
関節を膝、足首に見たてると、一本の足が立ち上がっている様にも見えます。

3関節の場合

両端のみ接地させた状態だと、中心は閉じ、その両脇の関節は開いて全体を持ち上げます。

二本足ロボットのよう。
面白いのは、倒すと自力で同じ体勢に戻る事です。

また、他にも初めの体勢に応じ、様々な形態で安定する姿勢を探します。

これらに使用したモーター制御は、全て同じパラメータを使っています。
にもかかわらず、状況に応じて挙動を変え、それぞれが連携してバランスを取りながら重心を高い位置に持ち上げる。
つまり、「立つ」。

単純に外力に対抗するようモーター制御するだけで、このような動きになる。
マンフレッド氏の発想は素晴らしい。
モーター間の通信もなく、全体を制御する頭脳も必要としない。
協調動作により創発される起立動作。

問題点

今回試したこれらのロボットの問題点として、自身を構成するパーツ同士が接触すると、外部からの力と自分が加えた力の区別がつかないため、自分自身に力を加え続けてしまいます。
こうなると、バランスをとり立ち上がる能力は失われてしまう。

Bio-likeness展でのロボット達を振り返る

Apostrophは各パーツがすり抜ける構造になっていて、この問題は起こらない。

Fuhlerは、たまに力尽きたように脱力していた。もしかしたらこうした状況にはまり込まないように過剰な力が加わったら力をリリースしていたのかもしれない。
Waageは?どうなんだろう。1関節の構成なので、可動範囲を限定する事で容易に防げる気もする。
bio-likeness展で試すか質問出来ていれば。。。

もっとも、今回実際に作ったから気づけた事ではあります。
ただ「面白かった」で終わらせなくて良かった。

次回予告

今回は単純な構造で試しましたが、今度はApostrophの様にアーチ状の構造を組み合わせたような物や、あと、これ。
f:id:afjk:20140914173257j:plain
小さな同型のパーツをブロックの様に組み立てる。するとそれが動き出し「むくり」と立ち上がったらきっと楽しい。
そう思わせてくれる素敵な山中俊治先生のスケッチ。
リアルタイムに組み替えることが出来るアプリを作りたい。
(UI設計で死にそうですが。完成はいつになるかな)