この回の動画
ナレーションは AI 合成音声です。 動画の章・文字起こし・出典
文字起こし
文字起こし
知行の問い
ロボットはコップを見分けられた。なのに、手を伸ばして取るほうが、なんでもっと難しいの?今回は運動学の話です。運動学の仕事は一つだけ。「手をどこへ動かすか」を、「各関節をどれだけ回すか」に翻訳することです。
コップはどこ:座標系
まず「どこ」から。コップの位置を示すには、先に原点を決めなければなりません。原点がなければ、「もう少し前」と言っても意味がありません。ロボットは、よく自分の土台に原点を置きます。前がX軸、左がY軸、上向きがZ軸です。こうすると、コップの位置は三つの数になります。前後にどれだけ、左右にどれだけ、高さはどれだけ。位置が一気にはっきりします。この三つの数が、座標系の中でのコップの住所です。でも気をつけて。原点を変えると、同じコップでも、三つの数が全部変わります。カメラから見たコップと、土台から見たコップでは、座標が違うのです。だからロボットは、いつも一つのことをしています。カメラで見たものを、土台から見た座標に換算するのです。方向と原点がそろって、はじめて手はどこへ伸ばせばいいか分かります。よし、コップの位置ははっきりした。じゃあ、手はどうやってそこへ行くの?
関節から手へ:順運動学
このアームには関節が三つあります。土台が回り、肩が上がり、ひじが曲がる。関節一つが、角度一つです。アームは鎖のように、関節ごとにつながっています。手前の関節が回ると、その先の部分はみんな一緒に動かされます。この三つの角度を決めれば、手の位置は一つに決まります。答えは一つだけ。角度から位置を計算する。これを順運動学といいます。順運動学は難しくありません。各節の長さと角度をつなげていけば、先端の位置が出ます。答えはいつも一つです。しかも順運動学は頼りになります。同じ角度の組なら、いつも同じ位置に届きます。くり返せるから、確認しやすいのです。関節が多いほど、動きはしなやかになります。例えば、ある研究用のロボットアームは、腕一本で自由度が七つあります。関節が多いと、障害物をよけて回り込めます。そっか、各関節をどれだけ回すか分かれば、手の位置は一発で計算できるんだ!
手から関節へ:逆運動学
でもロボットが本当に知りたいのは、その逆です。コップはここ。三つの関節をそれぞれどれだけ回せば届くのか。これを逆運動学といいます。困るのは、答えが一つとは限らないことです。同じコップに届くのでも、ひじを上にする姿勢と、ひじを下にする姿勢があります。どちらの姿勢でも、先端は同じ点に来ます。答えがいくつもあれば、一つを選ばなければなりません。すぐ横にボトルがあって、ひじを下にするとぶつかるなら、ひじを上にします。どれを選ぶかは、周りしだいです。コップを取るこの流れ全体が、見る・考える・動くです。コップの位置を見て、関節の角度を考え出し、モーターが動いてそこへ向かいます。解はいったいいくつあるのでしょう?ある論文によると、関節が六つ以下のロボットアームでは、解は最大で十六通りです。答えが一つもないこともあります。コップが遠すぎて、どう伸ばしても届かない。アームが届く範囲を、作業空間といいます。つまり、行きと帰りはまったく対称ではありません。角度から位置へは、一本道。位置から角度を逆算すると、道がいくつにも分かれ、ときには行き止まりです。今回のページを開いて、自分で試してみてください。コップを机の上でドラッグして、手がどうついてくるか見てみましょう。まず紫色の影が、先に位置につきます。それが計算で出した姿勢です。それから青いアームが、ついて回ってきます。コップをずっと遠くまでドラッグすると、琥珀色になります。届かない、という意味です。次に順運動学に切り替えて、三つのスライダーを動かし、手が描く軌跡を見てください。このアームがまだ扱っていないことが一つあります。計算するのは位置だけで、力は計算しません。本当につかむなら、しっかりつかめているかも知る必要があります。ふりかえりです。ポイントは三つ。一つ、座標系。まず、誰の原点で、どの方向かをはっきりさせる。二つ、順運動学。関節の角度から手の位置を計算する。答えは一つだけ。三つ、逆運動学。位置から角度を逆算する。解がいくつもあることも、一つもないこともある。だから手を伸ばして取るほうが難しいんだ。答えがいくつもあるかもしれないし、一つもないかもしれない!関節の角度は出た。でもモーターは、どうやってそこまでしっかり回るの?次回は制御の話。また次回!
根拠と出典
練習とセルフチェック
小テストは公開で、回答するとすぐ解説が出ます。読み物の練習問題の答えはログイン会員向けです。

第 1.1 回の動画は「机の上のコップに手を届かせる」例で三つのことを説明しました。まず誰の原点で、どの方向かをはっきりさせて、はじめて位置は確かな三つの数になります。関節の角度が決まれば、手の位置の答えは一つだけです(順運動学)。逆に、手を動かしたい位置から関節の角度を求めると、解が複数のことも、一つもないこともあります(逆運動学)。動画では二つの証拠を引用しました。ある論文によると、関節が六つ以下のアームでは逆運動学の解は最大 16 通りです。また、研究用のロボットアーム Franka Research 3 は自由度が 7 です。このページはこの回の解説と練習です。文字起こしは繰り返さず、架空の 2 リンクのアームを使って「カメラの読みを土台の座標系に換算し、手の位置を求め、二組の関節角を逆算し、届かないかを判定する」までを手計算でひととおり追います。そのうえで「16 通り」と「自由度 7」がそれぞれどこまでを言っているかを整理します。全体を通じたルールは一つです。証拠の一文は、その文が述べている関節の数、課題、対象についてだけ成り立ちます。
このレッスンの動画、文字起こし、出典はこのページの上部にあります。シーズン全体の構成は講座の概要をご覧ください。前回のフィジカルAIラボ 0.6:ロボットのニュースをどう見分けるか――それぞれの問いを原文の一文まで戻すは、次回は実験室に入り、ロボットアームを机の上のコップに届かせると予告して終わりました。今回の内容は、フィジカルAIラボ 0.3:見る・考える・動く――3 つの周波数をそれぞれのシステムに戻すでいう「考える」の一部でもあります。コップの位置を見て、関節の角度を考え出し、モーターがそこへ回ります。
公開小テストの 5 問には詳しい解説が付いています。ログインすると、三つの練習に取り組めます。別のカメラの取り付け方で 4 つのコップの位置を換算し、届くかどうかを判定する課題、架空のソルバーのログを順運動学と作業空間の輪で 1 行ずつ検証する課題、論文の目的関数で二つの解を採点してから衝突を確かめる課題です。どれにも段階的な解答例、よくある誤り、20 点満点の採点基準が付いています。
1. 動画の三つの話は、論文では一つの等式になる
動画の「16 通り」は、Votroubek と Kroupa(プラハ・チェコ工科大学)による arXiv の文献 Globally Optimal Inverse Kinematics as a Non-Convex Quadratically Constrained Quadratic Program(v2)に由来します。その第 2 節は一つの記法で、動画の三つの章を同じ等式に収めています。
- 座標系。論文は慣例に従い、各リンクを Denavit–Hartenberg(D-H)パラメータで表します。オフセット d、リンク長 r、ねじれ角 α、関節角 θ です。第 i リンクには 4×4 の行列 T_i が対応し、隣り合う二つの座標系の間の変換を表します。土台の座標系から見た先端の位置姿勢を行列 P と書きます。
- 順運動学。各リンクの変換を順に掛け合わせると、先端の位置姿勢が得られます:T_1(θ_1)⋯T_n(θ_n) = P。動画の「各節の長さと角度をつなげる」を一般的に書いたものです。θ がすべて分かっていれば、左辺を掛け算するだけで P は一つに決まります。
- 逆運動学。同じ等式を逆向きに使います。P が分かっていて、それを満たす θ を求めます。論文はさらに各関節に可動範囲の制約(最小値は −π から 0、最大値は 0 から π)を加え、複数の解のうち「好ましい角度」からの重み付き距離が最も小さいものを選びます。
論文の P は位置姿勢(pose)で、位置だけでなく向きも含みます。動画の 3 関節アームと本講座の練習が扱うのは位置だけです。この点は第 5 節でまた使います。
以下の練習はすべて架空のアームに基づきます。土台の回転角は 0 に固定し、肩とひじがある鉛直な平面だけを見ます。肩関節は土台の原点に置きます。上腕は L1 = 0.30 m、前腕は L2 = 0.20 m です。θ1 は上腕が水平の前方となす角、θ2 は上腕に対して前腕がさらに回る角度です。これらの寸法は計算しやすくするためのもので、動画の実験アームのパラメータでも、実在するどのロボットアームの仕様でもありません。
ログインすると、このレッスンの続きと確認問題、解答を読めます。
制約と注意点
- arXiv 2312.15569v2 は R 級として扱い、引用はすべて著者の記述です。「関節が六つ以下なら最大 16 通り」は論文の序論にある背景としての記述で、本講座はその引用元の文献までたどっておらず、論文の求解実験も再現していません。論文は、実装に Gurobi を使っていること、Gurobi は大域最適性の証明書を返さないことを明記しています。
- Franka Research 3 の自由度 7、繰り返し位置決め精度、855 mm のリーチ、モデルライブラリの機能は、いずれもメーカーの製品ページによるもので、O 級のメーカー自身の説明です。本サイトは独自に確認していません。
- 第 1 節から第 4 節のリンク長、カメラの取り付け位置、すべての読みは練習用の仮定で、動画の実験アームや実在するロボットアームのパラメータではありません。求めた角度、作業空間、「約 0.41 m」はこれらの仮定のもとでだけ成り立ちます。本講座はブラウザ実験ページの実装を確認していません。
- 第 6 節のカメラ C2、コップ A〜D、ソルバー X とそのログ、好ましい角度 (40°, 60°) と (80°, −60°)、重み、ボトルの長方形は、すべて練習用に作ったものです。求めた角度、コスト、「約 63 mm」「約 0.34 m」などはこれらの仮定のもとでだけ成り立ち、ソルバー X は実在するどのソルバーも表していません。
- 課題 1 は ψ = atan2(y, x) の側の解だけを扱います。関節の可動範囲がなければ、土台を 180° 回して後ろへ伸ばしても同じ点に届くことがあり、コップがちょうど土台の回転軸上にあれば ψ は一つに決まりません。本講座はどちらも扱いません。課題 3 の長方形のチェックはアームの平面内の 2 本の線分だけを見ており、リンクの太さやグリッパーは考えていません。
- この例は位置だけを求めています。先端の向きは扱わず、関節の可動範囲も入れていません。課題 3 の簡略化した長方形のチェックを除き、衝突判定もしていません。紙の上の計算はハードウェアの安全性の検証ではありません。動画も述べているとおり、このアームが計算するのは位置だけで、力は計算しません。本当につかむなら、しっかりつかめているかも知る必要があります。
- 「ひじが上/ひじが下」はこの平面 2 リンクの例での呼び方です。関節が多く、完全な位置姿勢を求める場合は、解の数も形も異なります。



