• 追加された行はこの色です。
  • 削除された行はこの色です。
[[制御]]

*用語定義 [#n0a90b49]
-注意点
--’’直感のために基本的にはCraig先生の表記を採用する’’
--Craig先生と中村先生とで,座標系定義が異なるため,動力学計算の式が異なる
--具体的には逆動力学,Craig 5.43とロボットモーション3.3.67あたりで異なる

-中村先生とCraig先生の比較

||Craig先生|中村先生|h
|ジョイント|回転軸・直動軸の両方の立式|回転軸のみに特化した立式|
|立式|ベースリンクを介さずに漸化式を導いている|ほぼ全ての立式がベースリンクを介す(本には書いていないが運動学動力学統合化計算の要請)|
|座標系定義|ジョイントiのz軸に&mimetex($q_{i}$);の回転ジョイントが乗っている.関節iの動きによって{i}が動く|ジョイントiのz軸に&mimetex($q_{i-1}$);の回転ジョイントが乗っている.関節iの動きによって{i}が動く|


-用語定義

|Craig|中村|意味|h
|{i}|{i}|座標系i|
|&mimetex($\theta_i$);|&mimetex($\theta_i$);|軸iの一般化座標|
|&mimetex($^{A}_{B}R$);|&mimetex($^{A}_{B}R$);|{A}から見た,{B}への回転行列|
|&mimetex($^{A}X_{B}$);||{A}から見た,{B}の何らか属性であるベクトルX|
|&mimetex($^{A}P_{B}$);|&mimetex($^{A}_{B}P$);|{A}から見た,{B}の原点への並進ベクトル|
|&mimetex($^{A}\hat{Z}_{B}$);||{A}から見た,{B}のZ軸.A=Bの時,(0, 0, 1)^t|
|&mimetex($^{A}f_{i}, ^{A}n_{i}$);||{A}から見た,リンク{i-1}がリンク{i}に与える力とトルク|



*ロボティクス計算の種類 [#b70e6c96]

||順(Forward)|逆(Inverse)|h
|運動学(Kinematics)|&mimetex($q \to ^{0}_{i}R,  ^{0}_{i}P $);||
|微分運動学(Differential Kinematics)|&mimetex($\dot{q} \to ^{0}\omega_{i}, ^{0}\dot{P}_{i} $);|&mimetex($^{0}\omega_{i}, ^{0}\dot{P}_{i} \to \dot{q} $);|
|動力学(Dynamics)|&mimetex($q, \dot{q}, \ddot{q} \to \ddot{q}$);|&mimetex($q, \dot{q}, \ddot{q} \to \tau$);|


*基本定理 [#ae758a5d]
-座標変換の基本定理

-変数定義

|&mimetex($Q$);|時変する点Q.{B}でgiven|
|&mimetex($^{A}V_{Q} = ^{A} \dot{Q}$);|{A}から見た点Qの速度.なぜVQと表現するかというと,逆動力学でvを前向きニュートンオイラーで求めるから|
|&mimetex($^{A}\dot{V}_{Q} = ^{A} \ddot{Q}$);|{A}から見た点Qの加速度|
|&mimetex($^{A}\Omega_{B}$);|{A}から見た.{B}の角速度|

-定理

|位置|&mimetex($^{B}Q = ^{B}_{A}R ^{A}Q$);|
|姿勢|&mimetex($^{A}_{C}R = ^{A}_{B}R  ^{B}_{C}R$);|
|速度|&mimetex($^{A}V_{Q} = ^{A}V_{BORG} + ^{A}_{B}R ^{B}V_{Q} + ^{A}\Omega_{B} \times ^{A}_{B}R ^{B}Q$);(5.13)|
|角速度|&mimetex($^{A}\Omega_{C} = ^{A}\Omega_{B}+ ^{A}_{B}R ^{B}\Omega_{C}$);|
|加速度|&mimetex($^{A}\dot{V}_{Q} = ^{A}\dot{V}_{BORG} + ^{A}_{B}R ^{B}\dot{V}_{Q} + 2 ^{A}\Omega_{B} \times ^{A}_{B}R ^{B}V_{Q} + ^{A}\dot{\Omega}_{B} \times ^{A}_{B}R ^{B}Q + ^{A}\Omega_{B} \times (^{A}\Omega_{B} \times ^{A}_{B}R ^{B}Q)$);(6.10)|
|角加速度|&mimetex($^{A}\dot{\Omega}_{C} = ^{A}\dot{\Omega}_{B} + ^{A}_{B}R ^{B} \dot{\Omega}_{C} + ^{A}\Omega_{B} \times ^{A}_{B}R ^{B}\Omega_{C}$);(6.15)|

*逆運動学 [#qdbe901c]
リンクが枝分かれしている場合はどうするの?

-座標系伝播

||回転軸|直動軸|h
|一般化座標|&mimetex($q_i = \theta_i$);|&mimetex($q_i = d_i$);|
|一般化力|&mimetex($\tau_i$);|&mimetex($\tau_i$);|
|速度|&mimetex($^{i+1}v_{i+1} = ^{i+1}_{i}R (^{i}v_{i} + ^{i}\omega_{i} \times ^{i}P_{i+1})$); (5.47)|&mimetex($^{i+1}_{i}R (^{i}v_{i} + ^{i}\omega_{i} \times ^{i}P_{i+1}) + \dot{d_{i+1}} ^{i+1}\hat{Z}_{i+1}$); (5.48)|
|角速度|&mimetex($^{i+1}_{i}R ^{i}\omega_{i} + \dot{\theta} ^{i+1}\hat{Z}_{i+1}$); (5.45)|&mimetex($^{i+1}_{i}R ^{i}\omega_{i}$); (5.48)|
|加速度|&mimetex($^{i}\dot{v}_{i} = ^{i+1}_{i}R (^{i}\dot{\omega}_{i} \times ^{i}P_{i+1} + ^{i}\omega_{i} \times (^{i}\omega_{i} \times ^{i}P_{i+1}) + ^{i}\dot{v}_{i})$);|&mimetex($^{i}\dot{v}_{i} = ^{i+1}_{i}R (^{i}\dot{\omega}_{i} \times ^{i}P_{i+1} + ^{i}\omega_{i} \times (^{i}\omega_{i} \times ^{i}P_{i+1}) + ^{i}\dot{v}_{i}) + 2 ^{i+1}\omega_{i+1} \times \dot{d}_{i+1} \, ^{i+1}\hat{Z}_{i+1} + \ddot{d}_{i+1} \, ^{i+1}\hat{Z}_{i+1}$);|
|角加速度|&mimetex($^{i+1}\dot{\omega}_{i+1} = ^{i+1}_{i}R ^{i}\dot{\omega}_{i} + ^{i+1}_{i}R ^{i}\omega_{i} \times \dot{\theta_{i+1}} ^{i+1}\hat{Z}_{i+1} + \ddot{\theta_{i+1}} ^{i+1}\hat{Z}_{i+1}$);(6.32)|&mimetex($^{i+1}\dot{\omega}_{i+1} = ^{i+1}_{i}R ^{i}\dot{\omega}_{i}$);(6.33)|
|重心加速度(直動・回転のみ成立する式)|&mimetex($^{i}\dot{v_{Ci}} = ^{i}\omega_{i} \times (^{i}\omega_{i} \times ^{i}P_{C_i}) + ^{i}\dot{v}_{i}$);|&mimetex($^{i}\dot{v_{Ci}} = ^{i}\omega_{i} \times (^{i}\omega_{i} \times ^{i}P_{C_i}) + ^{i}\dot{v}_{i}$);|
|合力|&mimetex($^{i+1}F_{i+1} = m_{i+i} ^{i+1}\dot{v}_{C_{i+1}}$);|&mimetex($^{i+1}F_{i+1} = m_{i+i} ^{i+1}\dot{v}_{C_{i+1}}$);|
|合モーメント|&mimetex($^{i+1}N_{i+1} = ^{C_{i+1}}I_{i+1} ^{i+1}\dot{\omega}_{i+1} + ^{i+1}\omega_{i+1} \times ^{C_{i+1}}I_{i+1} ^{i+1}\omega_{i+1}$);|&mimetex($^{i+1}N_{i+1} = ^{C_{i+1}}I_{i+1} ^{i+1}\dot{\omega}_{i+1} + ^{i+1}\omega_{i+1} \times ^{C_{i+1}}I_{i+1} ^{i+1}\omega_{i+1}$);|
|リンクi-1がリンクiに与える力|&mimetex($^{i+1}f_{i+1} = ^{i}_{i+1}R ^{i+1}f_{i+1} + ^{i}F_{i}$);|&mimetex($^{i+1}f_{i+1} = ^{i}_{i+1}R ^{i+1}f_{i+1} + ^{i}F_{i}$);|
|リンクi-1がリンクiに与える力|&mimetex($^{i}f_{i} = ^{i}_{i+1}R ^{i+1}f_{i+1} + ^{i}F_{i}$);|&mimetex($^{i}f_{i} = ^{i}_{i+1}R ^{i+1}f_{i+1} + ^{i}F_{i}$);|
|リンクi-1がリンクiに与えるモーメント|&mimetex($^{i}n_{i} = ^{i}N_{i} + ^{i}_{i+1}R ^{i+1}n_{i+1} + ^{i}P_{C_i} \times ^{i}F_{i} + ^{i}P_{i+1} \times ^{i}_{i+1}R ^{i+1}f_{i+1}$);|&mimetex($^{i}n_{i} = ^{i}N_{i} + ^{i}_{i+1}R ^{i+1}n_{i+1} + ^{i}P_{C_i} \times ^{i}F_{i} + ^{i}P_{i+1} \times ^{i}_{i+1}R ^{i+1}f_{i+1}$);|
|一般化力|&mimetex($\tau_{i} = ^{i}n_{i}^T ^{i}\hat{Z}_{i}$);|&mimetex($\tau_{i} = ^{i}f_{i}^T ^{i}\hat{Z}_{i}$);|

*順運動学 [#v1ae32c7]
-&mimetex($\theta, \dot{\theta}, \tau$);が既知の時、&mimetex($\ddot{\theta}$);を求める
--運動方程式の変数定義:&mimetex($\bf{\tau} = A(\bf{\theta}) \bf{\ddot{\theta}} + b(\theta, \dot{\theta})$);
--下記2つによって、運動方程式が求まるので、&mimetex($\ddot{\theta}$);は逆行列で求まる。

|前処理|成り立つ式|
|&mimetex($\ddot{\theta} = 0$);で逆動力学を解く|&mimetex($b = \bf{\tau}$);|
|&mimetex($\ddot{\theta} = e_i$);で逆動力学を解く|&mimetex($A.col(i) = \bf{\tau} - b$);|

*閉リンク拘束条件と一般化座標の選択 [#y9646239]
-変数定義
|v|仮想リンク|
|r|仮想リンクが指す実リンク|
|&mimetex($J_v$);|{v}の&mimetex($\theta_O$);に対するヤコビアン|
|&mimetex($\theta_O=\theta_J, \theta_G, \theta_A, \theta_C$);|開リンクの一般化座標、閉リンクの一般化座標、駆動関節の一般化座標、拘束関節の一般化座標|
|&mimetex($I_G, I_A, I_C$);|閉リンクの一般化座標、駆動関節の一般化座標、拘束関節の一般化座標が、開リンクの一般化座標の何番目の添え字に相当しているか|

+切断点の座標系{i}における&mimetex($^{0}_{i}v,^{0}_{i}\omega$);が一致するので、ループx6個の拘束条件が立つ
--&mimetex($J_r \dot{\theta_O} = blockdiag(^{v}_{r}R, ^{v}_{r}R) J_v \dot{\theta_O}$);
--&mimetex($J_C \dot{\theta_O} = (J_r - blockdiag(^{v}_{r}R, ^{v}_{r}R) J_v) \dot{\theta_O}$);
+行方向に、&mimetex($J_C$);から独立な拘束条件のみを抽出
--&mimetex($J_C$);から独立行抽出により、&mimetex($J_{Cm}$);を構築する。ここではrank-reveilingな完全軸LU分解を利用する。
--&mimetex($J_C^T = P_C^{-1} L_C U_C Q_C^{-1}$);
--ここで、&mimetex($Q_C$);の1列目から&mimetex($rank(J_C)$);列目を抽出する。この行列から、1を含む行の添字を集め、添字リスト&mimetex($I_C$);を作る。&mimetex($J_{Cm}$);は、&mimetex($J_C$);から&mimetex($I_C$);行を集めた行列である。
+列方向に、&mimetex($J_{Cm}$);から独立な変数=ループによって拘束されている変数を抽出
--&mimetex($J_Cm$);から独立列抽出により、&mimetex($J_S$);を構築する。ここではrank-reveilingな完全軸LU分解を利用する。
--&mimetex($J_{Cm} = P_{Cm}^{-1} L_{Cm} U_{Cm} Q_{Cm}^{-1}$);
--ここで、&mimetex($Q_{Cm}$);の1列目から&mimetex($rank(J_{Cm})$);列目を抽出する。この行列から、1を含む行の添字を集め、添字リスト&mimetex($I_S$);を作る。1を含まない行の添え字を集め、添え字リスト&mimetex($I_G$);を作る。
--&mimetex($J_S$);は、&mimetex($J_{Cm}$);から&mimetex($I_S$);列を集めた行列である。&mimetex($J_G$);は、&mimetex($J_{Cm}$);から&mimetex($I_G$);を集めた行列である。
--&mimetex($\theta_O$);の、&mimetex($I_G$);行を抽出したベクトルを&mimetex($\theta_G$);として閉リンク一般化座標とする。また、&mimetex($\theta_O$);の、&mimetex($I_S$);である行を抽出したベクトルを&mimetex($\theta_S$);として閉リンク従属座標とする。
+一般化座標と、従属・開・駆動・拘束座標の微分運動学

|従属変数の、一般化座標に対するヤコビアン|&mimetex($H=\del \theta_S / \del \theta_G$);|&mimetex($J_S^{-1} J_G$);|
|開の全変数の、一般化座標に対するヤコビアン|&mimetex($W = H_O = H_J =\del \theta_O / \del \theta_G$);|Wのi行目は、&mimetex($\theta_O$);が一般化座標のj番目なら&mimetex($e_j$);、&mimetex($\theta_O$);が従属座標のj番目なら、H.col(j)|
|駆動関節の変数の、一般化座標に対するヤコビアン|&mimetex($S = H_A =\del \theta_A / \del \theta_G$);|Sのi行目は、&mimetex($\theta_A$);が一般化座標のj番目なら&mimetex($e_j$);、&mimetex($\theta_A$);が従属座標のj番目なら、H.col(j)|
|拘束関節の変数の、一般化座標に対するヤコビアン|&mimetex($H_C=\del \theta_C / \del \theta_G$);|&mimetex($H_C$);のi行目は、&mimetex($\theta_C$);が一般化座標のj番目なら&mimetex($e_j$);、&mimetex($\theta_C$);が従属座標のj番目なら、H.col(j)。|


*力学的整合性:拘束条件をリンクで明示的に表現する場合の運動方程式 [#f573b6ba]
=拘束を明示的に軸iとして表現し、拘束条件として&mimetex($\ddot{\theta_C}=0$);を入れる方法。

|運動方程式|&mimetex($\begin{pmatrix} A & -H_C^T & H_J^T \\ H_C & 0 & 0 \end{pmatrix} \begin{pmatrix} \ddot{\theta_G} \\ \tau_C \\ \tau_J \end{pmatrix} = \begin{pmatrix} -b \\ -\dot{H_C} \dot{\theta_G} \end{pmatrix}$);|
|&mimetex($\dot{H_C} \dot{\theta_G}$);|兵リンク運動方程式のbから、I_Cを抽出したもの|



*メモ [#wae417e3]
独立行抽出は、独立な拘束条件の抽出
独立列抽出は、独立な変数抽出
-微分運動学と静力学の双対性
--&mimetex($\dot{x}=J(\theta) \dot{\theta}$);
--&mimetex($\tau=J(\theta)^T f$);(fはマニピュレータが物体に及ぼす力)
--これは&mimetex($\delta W = \tau^t \delta \theta+ F^t \delta v + N^t \delta \omega$);の仮想仕事が0、&mimetex($\begin{pmatrix}\delta v \\ \delta w  \end{pmatrix} = J(\theta) \delta \theta$);による。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS