差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| articles:inverse_kinematics [2022/03/26 16:20] – [解の存在範囲] Takashi Suehiro | articles:inverse_kinematics [2022/03/26 22:21] (現在) – [3自由度アームの逆運動学のまとめ] Takashi Suehiro | ||
|---|---|---|---|
| 行 167: | 行 167: | ||
| 解の存在範囲は式(7)から以下のように制限される. | 解の存在範囲は式(7)から以下のように制限される. | ||
| $$ | $$ | ||
| - | 1 \ge \mathrm{cos}\, | + | 1 \ge \mathrm{cos}\, |
| $$ | $$ | ||
| すなわち | すなわち | ||
| 行 173: | 行 173: | ||
| (l_2+l_3)^2 \ge X^2+Z^2 \ge (l_2-l_3)^2 | (l_2+l_3)^2 \ge X^2+Z^2 \ge (l_2-l_3)^2 | ||
| $$ | $$ | ||
| - | これは,$\Sigma_1$の原点を中心とした半径$|l_2-l_3|$の球の外側で半径$l_2+l_3$の球の内側の範囲である. | + | これは,$\Sigma_1$の原点を中心とした半径$l_2+l_3$の球の内側で半径$|l_2-l_3|$の球の外側の範囲である. |
| + | |||
| + | 等号の場合,すなわちそれぞれの球面上であり,それぞれ腕が伸び切った状態($\theta_3=0$),縮みきった状態($\theta_3=\pi$)となっている. | ||
| + | この場合は,式(8)の2つのが縮退して1つになる. | ||
| + | |||
| + | ただし,縮みきった状態に関しては,関節の可動域を考えた場合,$\theta_3=-\pi$も解とな得る. | ||
| + | |||
| + | 実際には関節角度の制限や自身および環境との干渉があるために解の存在範囲や解の数はさらに制限される. | ||
| ==== 3自由度アームの逆運動学のまとめ ==== | ==== 3自由度アームの逆運動学のまとめ ==== | ||
| 手先位置, | 手先位置, | ||
| 行 187: | 行 194: | ||
| $$ | $$ | ||
| を計算する. | を計算する. | ||
| + | |||
| + | このとき以下を満たさなければ解は存在しない. | ||
| + | $$ | ||
| + | (l_2+l_3)^2 \ge X^2+Z^2 \ge (l_2-l_3)^2 | ||
| + | $$ | ||
| + | 等号のときは,$\theta_2$の解が一つに縮退する. | ||
| $X \ne 0$の一般姿勢の場合, | $X \ne 0$の一般姿勢の場合, | ||
| 行 212: | 行 225: | ||
| の2つの解が得られ,合計4つの解が存在する. | の2つの解が得られ,合計4つの解が存在する. | ||
| \\ | \\ | ||
| - | ただし,$\theta_3$が$0$もしくは$\pi$になる場合はそれぞれアームが伸びきった状態,縮みきった状態となり2つの解が1つに縮退し, | + | ただし,前述のように$\theta_3$が$0$もしくは$\pi$になる場合はそれぞれアームが伸びきった状態,縮みきった状態となり2つの解が1つに縮退し, |
| - | 解の数が合計2つとなる特異姿勢になっている. | + | 解の数が合計2つとなる特異姿勢になっている |
| + | (縮みきった状態に関しては,関節の可動域を考えた場合,$\theta_3=-\pi$も解とな得る). | ||
| \\ | \\ | ||
| \\ | \\ | ||
| 行 231: | 行 245: | ||
| \\ | \\ | ||
| \\ | \\ | ||
| - | いずれの場合も,$\mathrm{cos}^{-1}$の引数が$[-1, | ||
| - | これは三角不等式(縮退した等号部分も含む)の条件になっている. | ||
| - | |||
| - | 具体的には,解が存在するのはリンク2の原点を中心として, | ||
| - | 半径$(l_2-l_3)^2$の球の外側で半径$(l_2+l_3)^2$の球の内側の領域となる | ||
| - | (( | ||
| - | $r^2=X^2+Z^2$として計算すればすぐ分かる. | ||
| - | )) | ||
| - | (( | ||
| - | もちろん関節角度のリミットやリンクの干渉を考慮するとさらに狭まる. | ||
| - | )). | ||
| ==== おまけのまとめ ==== | ==== おまけのまとめ ==== | ||