*逆運動で動かすには [#o66404ae] **三角関数を使用する [#zdb959c7] 逆運動(IK)とは指示された座標を元に関節の角度を求めるものです。~ 色々な計算手法がありますが、今回のロボットハンドでは三角関数をメインに角度を計算してみたいと思います。 **2次元での角度算出 [#d90f6f7a] このままでは計算式にし難いので各AX-12Aと軸の長さを以下のように呼称することにします。~ #ref(id_rename.png) では三角形を見てみましょう。~ 三角形を作るのはD2、D3、posとなっています。~ #ref(triangle2D.png) D2→D3、D3→posはそれぞれ軸の長さから求められるので、D2→posの長さが分かればこの三角形の各角度が算出可能となります。~ D2→posの長さは三平方の定理から求められます。~ #ref(inclined_D2pos.png) 三辺の長さが決まったので余弦定理を使ってD3の角度を算出してみましょう。~ #ref(cosineD3.png) コサインの値が取得できたので、これをアークコサインで角度に直します。~ ここでの角度はラジアンなので180を掛けてπ(円周率)で割れば度°(デグリー)に変換できます。~ **3次元での角度計算 [#x04dbfff]
(This host) = http://www.besttechnology.co.jp