運動学(しゃちょ〜)

最近、いろんな場所でヒューマノイドロボットが歩いている様子を見ることができます。イベント会場、テレビ、インターネット。。。5年前までは歩くのがやっとだったのに、今では歩くのは当たり前。他に何か凄いことができないと、誰も見向きもしてくれません。階段昇降、逆立ち、でんぐり返しをしても「他には何か出来ないの?」って・・・。お客さんの目が肥えてしまってる。。。今も昔も、歩かせるのが一番難しいのに。。。
昨日の話題にも出ましたが、どうやって歩く軌道を作ってるんでしょうね?もちろん、星の数ほど歩かせる方法はありますが、一般的には運動学っていうものを使う場合が多いようです。噂では、高校数学で行列を教えなかった期間があると聞きますが、運動学は、一言で言えば高校数学(数学B、代数幾何)で習う一次変換です。
ロボットの足先軌道設計をする際は、逆運動学(とか、逆動力学)を使うのですが、「逆」をやる前に、まずは「順」を知る必要があります。つまり順運動学。
難しく考える必要はありません。みなさんも高校生の時に習った(はず)の代数幾何です。数学が嫌いで、甘酸っぱい初恋と共に忘れ去ってしまった方も、一つずつ見て行けば割と簡単です。私は、苦い恋とセットで記憶してますが。。。
まずはスライド1の2リンクモデルを考えてみましょう。Aを原点(0,0)としたときのBの位置は(x1,y1)となります。手先(エンドイフェクタと言います)位置は(x2,y2)で表現できます。その時、1行ほど足して(ここで、混乱する人がいるかもしれませんが、"おまじない"と思ってください)、(x2,y2,1)とすると、実はきれいに行列を分解できるわけです。その時の行列の中身をよぉ〜く見ると、あらビックリ。回転行列と平行移動行列で構成されてます。これを、同次変換行列と呼びます。つまり、1個前の関節座標に同次変換行列を掛けると次の関節の座標が求まるんです。ということは、スライド2のように同次変換行列を次々かけると、1個目の関節から、一気にエンドイフェクタの座標が求められるわけです。
この例は、2次元のリンクでやりましたが、実際にはロボットの場合、3次元(x,y,z)に動くので、同次変換行列もスライド3のようにしておけば同じことができます。
って、意味分かります?