二足歩行ロボット
歩行パターンを使う歩行は積極的に重心位置を制御することで歩行を行うが、重心位置を制御しない歩行制御法もある。アルゴリズム歩行、倒立振子モードによる歩行制御、イベント歩行、リズム運動を軌範とする歩行制御など、研究者により呼び方と制御方法は様々だが、重心位置を積極的に制御しない点では同じである。また、受動的に重心位置が変化する点ではパッシブウォーキングと親和性が高い。
竹馬型二足ロボットやトリ型二足歩行ロボットなど、無質量脚モデルに近い二足歩行ロボットで適用例がある。アルゴリズムを使った歩行制御のメリットは、運動方程式を解く必要が無いので衝撃緩衝機構が付けられること、工作精度が低くてもいいので製造コストを抑えられること、運用中に発生する障害(転倒によるフレームの歪み、駆動系の不具合)、負荷の変動に対応できるので荷物の運搬や外力の作用に対応できること、などがある。また、エネルギー保存則に則した動作が可能になるため、歩行パターンを用いる歩行制御に比べ、格段にエネルギー効率を高くできる。
例えば、左の二足歩行の動作シミュレーション動画は、非常にシンプルな数式で歩行が生成されており、遊脚着地位置とキック力を恣意的にずらすことで方向転換や速度制御を行なっている。1つのベクトルで歩行を制御できるので、操縦桿とアクセル・ブレーキでロボットをコントロールすることが可能になっている。
歩行ロボットの自由度は多いので、ただ運動方程式を解いても歩行パターンは得られない。何らかの拘束条件を入れなければならない。生物のヒトやトリの歩行パターンやZMPがその拘束条件となる。ZMPでは、動力学的な重心位置が足裏の上に来るような関係式を立て、上の運動方程式と組合わせて連立方程式にして解く。方程式を解くと、どの関節を動かすとZMPがどこになるのか、あるいは、ZMPをある位置に持って行きたいときは、どの関節をどれだけ動かせばいいのかが、行列式によって表される。
歩行パターンは遊脚が床面から離れてから、再び床面に着くまでを一つのパターンとなる。この1パターン分の各アクチュエータの制御量を生成し、ロボットにステップ毎に入力すると理論的にはロボットは歩行することになる。コンピュータが高性能になった現代ではリアルタイムで歩行パターンが計算できるとはいうものの、複雑に変化する環境下で歩行パターンを随時計算するのはやはり難しい。標準的な歩行パターンを用意しておき、それに微妙なバイアスをかけることである程度の環境の変化に対応できるようにする、などの試みが行われている。
歩行パターンを使う歩行制御法では運動方程式を解く必要があるが、ロボットの中に弾性体(いわゆるバネ系)が存在すると、オイラー・ラグランジュの運動方程式を解くことが出来なくなる。そのため、現在見られる歩行ロボットは極力バネ系が無いように設計される。サスペンションなどの衝撃緩衝機構が歩行ロボットに用いられないのはこのためで、歩行ロボットによる走行を難しくしている一つの要因となっている。
HRP-2を開発した川田工業は無人ヘリコプターの開発で獲た制御技術を応用しているなど、航空機の制御技術とは密接な関わりがある。
二足歩行ロボットの制御技術はパーソナルモビリティやパワードスーツとも共通し、例としてホンダのU3-Xや体重支持型歩行アシストはASIMOの制御技術を応用している。
二足歩行ロボットが工学の研究対象となったのは1970年頃からである。当初は倒立振子(とうりつしんし、en:Inverted pendulum)の延長上の技術として考えられており、その方面からの研究アプローチが盛んに行われた。倒立振子とはスライダ(直動機構)上に逆さに置いた振子の制御モデルのことである。振子が倒れないようにスライダを制御する。これはPID制御で比較的簡単に倒れないように制御することができた。2重倒立振子、3重倒立振子も成功例が報告された。人間の足は4重倒立振子モデルとして考えることもできるので、倒立振子モデルを研究していけば、いずれ2足歩行の制御が可能になると考えられていた。
人間の足に見立てた4重倒立振子モデルを、歩行になるような拘束条件を与え運動方程式を解くと、各関節の制御量が得られる。歩行パターンとよばれるこの動作を実際のロボットに入力して動かせば、理論的にはロボットは歩くはずである。当時の計算機の能力からリアルタイムで歩行パターンを生成することが出来なかったので、あらかじめ歩行パターンを計算しておいた。それゆえ、この歩行制御法はパターン歩行と呼ばれた。
しかし、当時のモーターや構造材が貧弱で、実際に動かすと理論と現実の相違が激しく、この方法は失敗に終わった。ロボットの状態をリアルタイムで検知し、ある拘束条件のもとにフィードバックする必要があった。
二足歩行ロボットのアクチュエータにはサーボモーターが用いられる。油圧、空圧、人工筋肉などが用いられることもあるが例は少ない。サーボモーターは高速回転するものなので、減速機で回転数を落としトルクを上げる必要がある。減速機には歯車が使われるが、二足歩行ロボットには遊星歯車かハーモニックドライブが使われる。ハーモニックドライブは楕円と真円の差動を利用した減速機で、小型軽量高効率で多くの歩行ロボットに使われている。ただし大変高価である。
サーボモータを駆動するにはサーボアンプが必要になる。産業用ロボットも含めてロボットのサーボアンプには、普通、ロバスト性を高めるためにPWMドライバが使われる。PWMとはモーターの最大電流を+と-のパルスで供給し、モーターを常に最大負荷で使う方法である。サーボアンプはパワーデバイスであり、熱容量の関係から、汎用品は大きく重い。ロボットに搭載するには特注品を依頼するか自作する必要がある。