二重四元数によるロボット制御
「Robot Kinematic Modeling and Control Based on Dual Quaternion Algebraa」
Part1:四元数の基礎について
Part2:四元数をロボットのシミュレーションに応用
Part3:制御の法則
Chapter1 Introdcution
Chapter2 Ridid Motions:from complex numbers to dual quaternions
2-1 四元数の定義の事実
2-2 四元数
—————————————————————————————————————————————————————
「Dual Quaternionで剛体運動を表現する」
クォータ二オンを拡張した概念としてDual Quaternionというものがある
これを使うと三次元の回転に加えて三次元の並進まで1つの枠組みで考えられる
クォータニオンは実数と三次元実ベクトルの組みとして表記されることが多い
クォータニオンを用いて回転を表現するには、大きさが1の単位クォータニオンであることが重要


単位円上の複素数は2次元の回転変換を表すことができるが、単位クォータに音は三次元の回転変換を表現できる
クォータニオン積はテンソルのようなもの?
二重数
二重数は複素数の別のバリエーションのようなもの
二重数は行列を使って表すことができる
二重四元数は二重数とクォータニオンを合わせたもの

primary partで回転、dual partで並進に関する部分を表現できるようになり、剛体の3次元位置・姿勢がDQの枠組みで扱えるようになる

運動を考える前にまずはDQで剛体の位置・姿勢を表現する
ワールドに固定された座標系、剛体に固定された座標系を考え、
——————————————————————————————————
「四元数」
a実数は直線状、虚数は虚軸状の一点を表す
3次元以上の一点を表すような数を美しく定義することはできない
乗法の交換法則を犠牲にすると四元数というものが定義できる
四元数を使うと剛体の回転が美しく計算できる
四元数をスカラー部分とベクトル部分に分けて書くとわかりやすい
共役四元数というものもある
四元数の逆数は簡単に計算できる

————————————————————————————————————
「回転ベクトル・回転行列・クォータニオン・オイラー角についてまとめてみた」
工学の分野では三次元空間にあるオブジェクトの姿勢を考える時どこかに基準となる世界座標系を、オブジェクトに固有のローカル座標系を設定してその関係を回転成分・並進成分で記述するという考え方
回転ベクトルを使って点を移動させるアルゴリズムはロドリゲスの回転公式としてよく知られている
球面線形補間が簡単にできる
オイラー角ではシンバルロックがある
———————————————————————————————————————
「クォータニオンと回転」
絶対値が1のクォータニオンは4次元の回転を表すことができる
クォータニオンでは、1点で交わる2つの平面上で同じ大きさの角度だけ回転させる

乗算の方向によって回転が変わる

一般に回転を表すクォータニオンの共役クォータニオンは逆向きの回転を表す

ここまでは4次元の回転を考えてきたが、我々は3次元の回転が扱いたい
w成分を除いた3次元空間で考えるとこれらはx,y,z軸回りの回転を表す
3つの座標軸周りの回転を合成すれば3次元のあらゆる回転を表せそう
しかし、同時に回転してしまうwx平面、wy平面、wz平面をどうにかしたい
ここで、逆方向の回転で打ち消せば良い

3次元の回転において異なるクォータニオンが同一の回転を表すことはない
しかし、3次元の回転においては異なるクォータニオンが同一の回転を表すことがある
3次元において同じ回転を表すクォータニオンは2つずつ存在するため、クォータニオンが一致しないという理由から異なる回転だと判断してはいけない
クォータニオンを回転に利用する大きな動機の一つは補間が容易であること
球面線形補間や線形保管がある
ある軌道上を一定速度で移動するような補間
—————————————————————————————————————————
「Quaternion完全に理解した」
q1*q1はq1が適用された後にq2を適用した時の結果と考えることができる

—————————————————————————————————
「クォータニオン逆運動学」
リンクアームの作成とフォワードキネマティクス
あんま関係なかった
———————————————————————————————————
「クォータニオンを用いたフィードフォワードオンラインポーズ遺伝的認識法」
1 緒言
物体認識を応用するロボットビジョンの分野ではビジュアルサーボと呼ばれる画像認識結果をロボットのフィードバック情報として用いる運動制御が最近注目されている
ビジュアルサーボではフィードバックループ内部に視覚センサを含むため視覚センサの認識時間の遅れが問題となる
この時間遅れを防ぐため物体の運動モデルと非線形オブザーバを導入することによって物体の運動を予測する手法が提案されたが認識誤差がゼロ近くまで減少するまでにある程度の時間がかかるという問題が残っている
カメラのサンプリング周期とサーボ系のサンプリング周期の問題もある
サンプリング周期が1msのビジョンチップを用いれば良いがこれは高い
画像による姿勢推定を行う方法は大きく2つ
1 画像中の幾何学特徴を抽出
2 対象物形状を利用したモデルと画像のとの照合
近年は2の研究が進められている
2 姿勢の数式による表現
オイラー角の任意性はビジュアルさーぼに不向きである
3 ロボットアームのダイナミクス
マニピュレータのロボットのダイナミクスと軌道追従制御系を記述しておく
4 1step GAによる実時間認識
5 Motion-Feedforward法
6 シミュレーション
————————————————————————————————
「二重四元数」
これめっちゃいい











——————————————————————————————
「Dual Quaternion -Wikipedia-」
8次元だが、空間の自由度は6なので2つの制約条件がある
行列の形での掛け算はプログラミングに良い
ACはCのAによる線形変換なので行列があるはずである
———————————————————————————
「四元数を理論的に扱う際の個人的なポリシー」
四元数によって任意の軸回りの回転が表現できる
複素数と違い、半分の角度を指定する、両側から挟む、片方が共役にするというのは不思議
—————————————————————————————
「クォータニオンを真に理解する」
ベクトル空間による頂点の回転式というものがあるらしく、それは四元数を使って簡単に表現できる
———————————————————————————————