アクチュエータと駆動系
ロボットの関節を動かすもの。BLDC・ステッピング・サーボモータ、波動歯車・サイクロイド・遊星歯車の減速機、準ダイレクトドライブ、エンコーダとモータドライバ、そして油圧と空気圧がいまも優位な場面を扱います。
概要
アクチュエータは、電気・油圧・空気圧の動力を関節の運動に変換します。その特性は、どのようなコントローラでも取り除けない厳しい限界を決めます。ピークトルクと連続トルク、速度、手で押したときに関節がどれだけ抵抗するか、停止時にどれだけ振動が残るか、そして関節の位置をどれだけ正確に把握できるか、です。多くのロボット設計はここから始まります。選んだアクチュエータが質量とコストを決め、採用できる制御戦略を左右するからです。
このハブは、関節を選定・仕様策定するエンジニア、ドライブのファームウェアを書くエンジニア、ロボットがシミュレーションと異なる挙動をする理由を理解したいエンジニアを対象としています。現在は電動の関節が標準なので、このページの大半はモータ、減速機、エンコーダ、ドライブを扱います。最後に流体動力の節を設けています。
重要な考え方
モータとドライブ
ロボットの関節の多くはブラシレスDCモータ(BLDC)を使います。正弦波電流で駆動する場合は、永久磁石同期モータとも呼ばれます。ドライブはPWMインバータで3相の電圧をスイッチングし、電流ループを高いレートで回します。ベクトル制御(FOC、field-oriented control)は、測定した相電流をロータとともに回転する座標系に変換します。この座標系では、トルクを生む電流と励磁電流がゆっくり変化する2つの値になり、PI制御器で調整できます。SimpleFOCのドキュメントでは、この制御の土台となるClarke変換とPark変換を順を追って説明しています。
ステッピングモータはフィードバックなしで一定のステップずつ動き、静止時の保持性能に優れます。安価で、3Dプリンタ、小型アーム、教育用ロボットで広く使われています。オープンループで駆動したステッピングモータは、過負荷になると脱調し、そのことを検知できません。クローズドループのステッピングモータは、エンコーダを追加してこれを検出します。
「サーボ」は、位置フィードバックと専用のコントローラを備えたモータを指します。産業分野では、モータ・エンコーダ・ドライブを一体として調整したものです。ホビーロボットでは、ポテンショメータを内蔵した小型のギヤードモータで、パルス幅で指令します。
減速機、透明性、準ダイレクトドライブ
モータは高速・低トルクで効率よく動作します。関節に必要なのはその逆なので、多くの関節は減速機を使います。遊星歯車減速機は効率がよく安価ですが、1段あたりの減速比は控えめで、ある程度のバックラッシがあります。波動歯車装置(ストレインウェーブギア)は、コンパクトな1段で高い減速比を実現し、バックラッシがごく小さいため、小型アームの関節で広く使われています。ただし、たわむフレクスプラインがコンプライアンスと摩擦を加えます。サイクロイド減速機も1段で高い減速比を得られ、衝撃荷重によく耐えます。
減速比Nの減速機は、出力トルクをN倍にし、モータの反映慣性をNの2乗倍にします。摩擦も加わります。そのため高減速比の関節はバックドライブしにくく、モータ電流から接触力を検知できません。準ダイレクトドライブは逆の手法を取ります。大径のモータに低減速比の1段減速機を組み合わせることで、関節の透明性が保たれ、モータ電流を関節トルクの推定値として使えます。Wensingら(2017年)はMIT Cheetahでのこの設計を、Kenneally、De、Koditschek(2016年)はダイレクトドライブという極端な設計を説明しています。Pratt and Williamson(1995年)が提案した直列弾性アクチュエータは、逆の方向を取ります。減速機の後ろに意図的にばねを入れ、そのたわみを測って力を得ます。
エンコーダ
インクリメンタルエンコーダは、互いに1/4周期ずれた2つの矩形波AとBを出力します。エッジの順序から回転方向がわかり、両チャネルのすべてのエッジを数えると1周期あたり4カウントになります。インデックスパルスZは、1回転につき1か所の位置を示します。アブソリュートエンコーダ(光学式または磁気式)は、電源投入時に角度を直接出力します。マルチターン型は回転数も数えます。エンコーダを参照してください。
モータ側エンコーダは、転流と速度の検出に必要です。減速機の後ろにある出力側エンコーダは実際の関節角を測るため、両者の差からバックラッシと減速機のねじれ(ワインドアップ)がわかります。両方を備えた関節は、負荷時のたわみを補正できます。
油圧と空気圧
油圧アクチュエータはサイズのわりに大きな力を出し、衝撃をよく吸収します。そのため建設機械や重作業用のフィールドロボットで使われ続けています。一方で、ポンプ・ホース・シールが必要で、油漏れが起こり、サーボ弁は非線形で制御が難しくなります。空気圧は安価で本来的にコンプライアンスがあり、グリッパ、吸着カップ、ソフトロボットに向いています。ただし、空気の圧縮性のため精密な位置制御は困難です。
どこから始めるか
/learn/beginner/05-pid-control/では、ドライブが実行するようなループを作ります。/learn/beginner/07-differential-drive/では、車輪エンコーダを使って運動を推定します。/topics/control/では、ドライブが最下層に位置するカスケード制御を説明しています。
ツールとプラットフォーム
| ツール | 用途 | ライセンス | プラットフォーム |
|---|---|---|---|
| moteus | BLDCサーボコントローラ。ハードウェアとファームウェアがオープン、CAN-FD対応 | Apache-2.0 | /platforms/opensource/ |
| ODrive(v3ファームウェア) | ODrive v3用のBLDCドライブファームウェア。メーカーによれば、新しいボードのファームウェアは非公開 | MIT | /platforms/opensource/ |
| VESCファームウェア | VESC互換ドライブ用のモータ制御ファームウェア | GPL-3.0 | /platforms/opensource/ |
| SimpleFOC | Arduino互換ボードでBLDCモータとステッピングモータを動かすFOCライブラリ | MIT | /platforms/opensource/ |
| ros2_control | ドライブとROS 2コントローラをつなぐハードウェアインタフェース層 | Apache-2.0 | /platforms/ros/ |
よくある間違い
- ピークトルクだけでモータを選定する。必要なデューティサイクルでの連続トルクと、熱的限界を確認してください。
- 反映慣性を忘れる。大きな減速比の後ろにある小型モータが、関節の見かけの慣性の大部分を占めることがあります。
- モータエンコーダで関節角がわかると思い込む。両者の間には減速機のバックラッシとコンプライアンスがあります。
- 過負荷のステッピングモータをオープンループで運転する。気づかないうちに脱調します。
- 波動歯車装置を完全な剛体として扱う。そのコンプライアンスは、高速動作時に低周波の共振として現れます。
さらに深く
- P. M. Wensing, A. Wang, S. Seok, D. Otten, J. Lang and S. Kim, Proprioceptive actuator design in the MIT Cheetah: impact mitigation and high-bandwidth physical interaction for dynamic legged robots, IEEE Transactions on Robotics 33(3), 2017.
- G. Kenneally, A. De and D. E. Koditschek, Design principles for a family of direct-drive legged robots, IEEE Robotics and Automation Letters 1(2), 2016.
- G. A. Pratt and M. M. Williamson, Series elastic actuators, IROS 1995.
- SimpleFOC: coordinate transformations in FOC。Clarke変換とPark変換をわかりやすく導出しています。