2016年7月頃に考えたネタで、いせしまこん以降、何人かに話している内容のまとめ。
きちんと制御しているロボットは、運動学/逆運動学計算に必要な身体モデルを持っています。
ざっといえば、回転軸とその相対的な位置情報を組み合わせたデータです。
こんなの
#ref(): File not found: "身体モデル.png" at page "身体モデル自動生成"
これを使って、例えば
「腰を起点に、各関節に角度を与えた時に、指先がどこに移動するか?」(運動学)
や、
「腰を起点に、指先をある地点に移動させた場合の各関節の角度は?」(逆運動学)
などを計算します。
歩行させる場合は、各種センサー値から足をどこに降ろすかを計算し、そこから逆運動学で各関節の指令値を計算して実行する、みたいな使い方をします。
ところで「ドライバーを持ったロボットが、ねじを締める」といった場合は、どうしているかというと、HRPシリーズとかは手に持つところから以降、専用の処理を書いて実行しているそうです。
人間の場合は、手に持った場合に(もしあるなら)身体モデルが拡張されているのではないか?と考えます。
拡張されているからこそ、物を持った状態で、それを手の延長のように動かせたり、杖のように使ったりできると。
で、これをロボットに応用出来たら面白いと考えました。
もしこれが可能になると、ロボット内で移動のためのモーションをシミュレートできるので、例えば足が外れても代わりに杖をついて移動したり、歩行ができなくなったら代わりに匍匐前進したり、といったことが可能になるかもしれません。
人間の場合は、視覚情報から身体モデルの延長を行うことが多いと思う。
同様に画像認識を使用して、信号に反応した部位を判定し、身体モデルを再構成する。
まあ、めっちゃ難しそうです(^-^)
これ、最初はのたうち回っていたロボットがそのうち歩き出すっていう、ちょっとキモイものになるかもw
Total:775 Today:1 Yesterday:0