足郎2シミュレーターの構成


Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_415290769594460e2e485922904f345d.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_415290769594460e2e485922904f345d.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_fbade9e36a3f36d3d676c1b808451dd7.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_fbade9e36a3f36d3d676c1b808451dd7.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_d873aad93c5473fdbf52b2bb0d90d7df.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_d873aad93c5473fdbf52b2bb0d90d7df.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_8508620f1650d75ebbf18f6d590a2d91.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_8508620f1650d75ebbf18f6d590a2d91.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_8493d38b9f3356fba9820236202ec4e4.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_8493d38b9f3356fba9820236202ec4e4.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_868aa005b9230fd181dde581da005b1a.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_868aa005b9230fd181dde581da005b1a.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_1a1b146ff3d40fa704cf722f2d9dd6ef.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_1a1b146ff3d40fa704cf722f2d9dd6ef.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_0cde1496e9da2253948270af829fb632.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_0cde1496e9da2253948270af829fb632.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_5cfd083ed446d37acb33309c4d94b3cf.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_5cfd083ed446d37acb33309c4d94b3cf.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

Warning: fopen(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_9dd4e461268c8034f5c8564e155c67a6.gif): failed to open stream: Permission denied in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 123

Warning: fputs() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 124

Warning: fclose() expects parameter 1 to be resource, bool given in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 126

Warning: getimagesize(/data/htdocs/ibot/wpibot//wp-content/plugins/latex/cache/tex_9dd4e461268c8034f5c8564e155c67a6.gif): failed to open stream: No such file or directory in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 129

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 47

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/htdocs/ibot/wpibot/wp-content/plugins/latex/latex.php on line 49

足郎2のシミュレーター作りが面倒くさい。角度と位置の関係をどのように表すかがわかりにくい。先に書いたものは複雑すぎてわかりにくい。ある論文を参考に、座標を単純にしたことによってグラフィカルに描くことができるようになった。
まず、関節角度をランダムに少しずつ動かした動画は次のようになる(クリックすると再生するはず。マックしかダメか?)。

ここまでできれば、サーボモータの動きと連動できる。基本的には、COSM言語で書かれたプログラムをシミュレートできるようにしたい。
まず、理論的な構成を記録しておこう。上記の動きが実現しているのは、以下の理論、数式が基本的に正しかったことを示している。その検証のためのものだ。
左下に描かれているように、軸と軸のみの表現である。
複雑そうだが、数学的には極めて単純になる。
図に向かって左側の足
A点とB点の関係:


B点とC点の関係:


C点と原点の関係:


図に向かって右側の足
原点とD点の関係:


D点とE点の関係:


E点とF点の関係:


見ればすぐにわかるように、極めて対称的な関係が求められる。ここで、原点の座標と6つの角度、および各長さが与えられれば、全ての点が決まる。
ただし、六つの角度は全て自由に与えることはできず、


の関係が成立していなければならない。自由度は5なのである。
また、各長さは、実際の長さが、ここでは現れていない方向の変位によってきまる。
基本的な枠組みはできたので、さらにシミュレーションができるようにする。

3Dプリンタの購入

ついに研究室に3Dプリンタがやってきた。どこまでのものができるかは未知数だが、また、それほど精密なものが製造できるわけではないが、全く新しい世界が広がることは確実だ。
写真のプリンタの上に乗っているのは、セットアップの中で作成された鎖だが、微妙によくできたようで、微妙に荒い。

膝の役割

足郎2には膝ができる。
全体背が高くなることによって、傾き角度はそれほど大きくできなくて、また、大きくする必要もない。膝があるので、後ろに曲げることによって傾かずとも前後のための足上げが実現する。
逆振り子の揺れも小さく済む。
それによって、左右の逆振り子を早く動かしても、勢いがつかない。足郎1では、大きく左右に揺らさなければならないので、早く動かすと勢いのために左右に倒れやすかった。それが少なくなるのが大きい。
すなわち、足郎2は素早い歩行が可能になるのである。ただ実際には、サーボの性能があるので、それほど早くは動かせない。何しろ1個600円のキワモノサーボであるから(笑)ただ、そのサーボで十分満足しているのだが。
そう見ると、固有振動という考え方は正しくないのかもしれないと思う。高くなると、固有振動はゆっくりになるからである。
基本、一方の側に揺れたとき、逆足の膝を曲げる動作を加える。さらに逆に揺れるときにその足を元に戻して伸ばす。これ以外の動作は、すべて足郎1と同じで良いはずだ。それで二足歩行ができる。
足郎1の二足歩行の最終版は、極めて単純な制御で実現できている。したがって、この足郎2もそれ以上の複雑な操作はいらないはずだ。
すでに足郎2の部品は業者の方でも設計が終わり、製作段階になっている。

足郎2シミュレーターの設計

足郎2のシミュレーターを作り始めている。

パーツについてのJAVAのクラスを作り、インスタンス化して、全体を制御して、描画関数の引数に与えるような感じで作ろうとしている。
位置を表すのに座標と角度が用いられる。座標があればある意味全て事足りるのだが、サーボは角度を作るだけなので、角度から座標への変換が必要になる。
座標は、絶対的な座標(初期状態で起立しているときの上板の中心位置を原点とする)と相対座標(上板の中心を座標の原点とした座標)の二つで表せば良い。
各パーツクラスは、それにつながっているバーツとの相対角度を持っている。その角度は、自己を水平として、他者の角度を図にあるような方向で測った角度とする。角度は、すべて座標面に対する傾きである。これらの角度は、全て、前後の角度と左右の角度のペアである。
絶対角度が難しいが、当面は、重心のある足は水平であることを前提にして導き出そう。現実には、重心は、微妙に両足に分散している可能性はあるが、相対的に強く重心が載っている側の足を基準としておく。

逆振り子の固有振動

足郎1の二足歩行動画の最終バージョンにおける逆振り子は、倒れるギリギリまで早くしたものだ。つまり、それ以上早い揺れは、転倒を招く。
逆にそれよりゆっくりとした振り子の動きにすればするほど、ぎこちない動きになり、逆足の吊り上げもうまくいかずに、歩行が面倒になる。
そのギリギリの揺れは、固有振動と考えて良いのではないかと思う。
足郎2は、高さがほぼ倍になる。すると、当然固有振動は遅くなる。早く動かすと倒れやすくなる。ゆっくりとした速さで、しっかりステップを前に出さなければならなくなるだろう。
当面、足郎2のシミュレーターの作成に集中しよう。

モアイ像の歩行と足郎1の逆振り子型の二足歩行

同僚の先生に、足郎1の逆振り子型の二足歩行の動画を見せたところ、これが、モアイ像を揺らして動かしたという説の映像とそっくりだという。

確かに。これだ!!!次の足郎1の歩行と、基本同じではないか!!!

足郎1の逆振り子型の二足歩行は、基本体を揺らして、前後の動きをプラスしているだけである。モアイ像の姿と同じである。左右にいる人々が揺らしている状況を、足郎1の上にあるサーボモータが代わりにやっているだけである。
人間の二足歩行も、極めてエネルギー節約的だが、これもまた、逆振り子型の二足歩行だからなのだ。
足郎2の設計図もほぼできた。部品の発注を二、三日中にはできるだろう。本格的な逆振り子型二足歩行ロボットが創り出されるはずである。

足郎2を構想する

足郎2は、逆振り子型の二足歩行とクラウドを利用した知的会話機能を持たせる。以下はイメージ図だが、サーボモーター類は、3Dプリンタでちゃんとカバーを作る予定だ。
膝がある方が、二足歩行の実現はよほど楽だ。その辺りは、足郎1で実感している。
「ハウルの動く城」の最後の姿に似ている(笑)

サーボモーターを支える板が最も細かい部品なので、それから設計にかかる。
空いた時間に、ロボットのシミュレータを作るつもりだ。サーボモータ類の動きとロボットの動きが視覚的に確認できるものにしたい。

足郎1の開発を終える

足郎1で調べたいことは、ほとんどやり終えたと思う。
これ以上調べても、それは、膝のない、足郎1の特殊な状況での問題だけなような気がするからだ。
膝があり、高さが足郎1のほぼ倍になるはずの、足郎2の設計を始めよう。足郎1で問題だったところを全て解決するような設計にしたい。
アルミの部品は、ほぼ、外注にしようと思う。パーツはそんなに多くない。倍にはならないだろうと思う。
足郎1は、分解して、RaspberryPIや、16個のサーボモーターを再利用する予定だったが、愛着があるので、これはこれで、そのまま残しておこうと思う。ちゃんと動く状態にしておこう。