立命館大学 総合理工学研究機構 先端ロボティクス研究センター
チェアプロフェッサー 金岡 克弥
(「第 11 回(前編)」はこちら)
まずは,前編のおさらいから.前編では,スパロボにおける操縦型ロボットの必然性,現実のロボットの操縦方法を概観しました.さらに,現在の操縦方法では満足できないという筆者の疑問を以下のようにまとめました.
ギモンその一:コマンドとはすなわちタスクの抽象化・言語化を意味する.したがって,コマンドベースの操縦方法では,操縦者とロボットは力学的に相互作用しない.でも,それでいいのだろうか? 抽象化・言語化せず,操縦者とロボットの力学的相互作用を排除しない操縦方法はないのか?
ギモンその二:軌道制御ベースの制御方法は,ロボット制御工学の女神を手の届かないところへ閉じ込める.このような制御方法で,操縦者のスキルを生かした器用な作業ができるのだろうか?
これらが具体的にどういう問題提起であるかについては,前編に詳しく説明しているので参照して下さい.簡単にまとめると,「ギモンその一」は操縦型ロボットの操縦方法,すなわち人間とロボットとの間の操縦インターフェースについての問題提起です.「ギモンその二」は操縦型ロボットの制御方法,すなわち,操縦インターフェースを通して人間からの指令が与えられた後,ロボットのコンピュータがロボットのボディを駆動するためにどのようにモータに指令を出すかについての問題提起です.
後編では,これらの疑問に対する筆者なりの答えを「ロボット制御工学の女神を解放する」というストーリーに沿って解説し,最後には,読者の皆さんがロボット制御工学的な数式の理解に到達できるように誘導します.
ロボット制御工学全般から見れば,手の届かないところへ閉じ込められたロボット制御工学の女神を「解放すること」と「解放しないこと」にはそれぞれメリットとデメリットがあり,一概にどちらが優れているというものではありません.しかし,現在の技術を前提とした操縦型ロボットに限っては,「解放すること」によって得られるメリットがデメリットよりも大きいと筆者は考えています.まずはこの筆者の考えに乗っかってもらうとして,制御の女神を解放することの意味とその方法を考えていきましょう.
制御の女神を解放しよう
都合上前後しますが,まず「ギモンその二」から考えます.制御の女神は,現実のロボットのほとんどがそうであるような軌道制御ベースの制御がなされている場合,サーボボックスの中で(*20),悪しき外乱を封じ込めてアナタが計画した目標角度(軌道)を実現することだけを使命に,日の目を見ることなく奮闘し続けているのでした.
もちろん,制御の女神は意味なく閉じこもっているわけではありません.サーボボックスの中で奮闘しているのにはちゃんと意味があります.へたに手を出して制御の女神をサーボボックスから連れ出そう(*21)としても,女神の力の源泉である力学と制御に対する理解が不足していると,女神が力を失ってしまったり,場合によってはロボットの暴走という形で女神からの強烈な反撃に遭ったりする(*22)可能性があります.女神がサーボボックスの中だけで奮闘しているのは,裏を返せば,女神の力がアナタに悪影響を及ぼさず,滞りなく機能してロボットを制御するためでもあります.しかし同時に,力学と制御を知らなくてもよいという手軽さと引き換えに,アナタは女神の感触,ロボットシステムの感触を得られなくなっています.
したがって,「ギモンその二」に答えて筆者を満足させる「操縦」を目指すためには,制御の女神をサーボの黒い小箱から解放することが,やはり必要です.どうすればそんなことが可能なのでしょうか.前編に示したブロック線図,図 5 (a) をもう一度見てみます.制御の女神は制御器の中にいて,計画された関節角度(軌道)を実現するための軌道制御を司っています.軌道制御(モーションの制御)は,サーボボックス内のモータに付加された角度センサから角度データをフィードバックすることによって行なわれています.
*20:前編でも述べましたが,制御則を記述したプログラムはコンピュータの中にあります.ここでの意味は,制御則の機能がサーボボックスの内部のみで完結して(閉じて)いる,ということです.
*21:女神を連れ出す(解放する)とは,制御則の機能をサーボボックスの内部のみで完結させないこと,つまり,与えられた角度サーボ(軌道制御)のみに頼るのではなく,他の手段を用いて,ロボットあるいは環境のダイナミクスを陽に考慮した(開かれた)制御を行なう,ということです.そしてそのためには,サーボボックスに頼らずアナタが自分で制御系を構築することが必要です.
*22:ロボット制御工学の研究者なら,反撃を食らった経験は一度や二度ではないはずです.テレビには上手く動くロボットしか出てこないので知られていませんが.
制御の女神をこのフィードバックループの外に出せば(*23),女神をサーボボックスから解放できそうです.ところが,制御の女神は,原則としてフィードバックループの中でしかその力を十分に発揮することができません.ループの外に出すと,先に述べたように,女神はその力のかなりの部分を失ってしまう(*24)(*25)のです.これでは解放できませんね.困りました.
*23:フィードフォワード制御を行なうか,あるいは視覚センサなどの外界センサを用いて(非力学的接続による)フィードバック制御を行なうことを意味しています.
*24:すべての力を失ってしまうわけではありません.うまくすれば,ループの外で女神に力を発揮してもらうこともできます.力学的なループ(例えば図 5 のモーションをフィードバックするループ)の外で女神が知ることのできる情報は,あらかじめ持っていた知識と,視覚などの非力学的接続によるフィードバック情報です.この非力学的接続によるフィードバック情報を女神に伝える(制御に利用する)ためには,その情報を「解釈」し,制御に役立つ物理量(の情報)に変換しなければなりません.例えば,ロボットの画像を解釈してロボットの関節角度や姿勢を知り,外界の画像を解釈して障害物の位置や大きさや形状を知る,などです.この「解釈」がうまくいけば,力学的なループの外でも女神は力を発揮することができます.ロボット制御工学の分野でも,この「いかにうまく解釈するか」という研究が活発になされています.しかし,現段階では,非力学的情報(画像など)を解釈して力学的情報(位置,速度,加速度,力など)を完全に再現するのはいまだ困難な課題で,限定された(つくり込まれた)条件の下でしか実現されていません.したがって,力学的なループの外では,限定された条件の下でしか女神に力を発揮してもらうことはできず,その条件から外れると(例えば画像なら,急に明るくなったり暗くなったりして照明条件が大きく変化すると)女神は力を失ってしまう,ということになります.
*25:実は筆者は,現在の軌道制御ベースのヒューマノイドロボットの多くがこの方法で女神を解放しようとしていると解釈しています.無理矢理ループの外に出された女神が力を失ってしまった結果,現在のヒューマノイドロボットは不整地歩行ができないのだと.詳しく述べたいところですが,論点が発散しそうなので今回はやめておきます.
|
| (a) 軌道制御ベースのロボットシステム |
|
(b) 駆動力制御ベースのロボットシステム 図 5 操縦型ロボットのクローズドループダイナミクス |
いえ,もう一つ手がありました.女神がループから出られなくても,アナタがループの中に入れば,つまり,アナタが制御器の一部になれば,制御の女神と直接つながることができます.
ということで,図 5 (a) の,モーションをフィードバックするループの中に,操縦者を入れることにしましょう.そのときのクローズドループダイナミクスは,例えば図 5 (b) のように構成することができます.ここでは,操縦者であるアナタはロボットに直接(あるいは機械的に連動する操縦装置を介して)触っており,自分の身体がロボットと機械的に連動することによってロボットのモーションを「感じ」ます.そして,ロボットへの指令を,抽象化・言語化されたコマンドや,目標軌道という幾何学的な情報としてではなく,操作「力」という力学的な情報によって伝えています.その操作力は,操縦装置に設けられた力センサによって電気信号に変換され,操作力データとして制御器に入力されます.制御器は操作力データに基づいてモータドライバに適切な電流指令を出し,モータが電流に比例した駆動トルク(駆動力)を出すことによって,ロボットボディが動きます.図 5 (a) の軌道制御ベースに対し,図 5 (b) を駆動力制御ベースと呼ぶことにしましょう.
図 5 (b) の駆動力制御ベースの制御方法では,操縦者,制御器,ロボット,環境,すべてが力学的相互作用(図中赤線)のループの中に取り込まれています.図 5 (a) の軌道制御ベースの制御方法では違いましたね.操縦者はループの外に取り残されていましたから,環境の中でのロボットの動作結果を目で見て(非力学的接続,図 5 中の緑破線),目標軌道を修正するしかありませんでした.でも,図 5 (b) でループの中に取り込まれた操縦者は,見るよりもむしろ自分が触っている操縦装置の「感触」によって操作力を修正し,再び制御器に入力します.これは,制御の女神とともにアナタがロボットの制御器の一部となったことを意味します.
なかなかおもしろいですね.女神はフィードバックループの中でしか女神としての力を十分に発揮することができないので,女神を解放するために,アナタ自身と,アナタがロボットモーションを介して感じることのできる世界のすべてを,逆にフィードバックループの中に入れてしまった,ということですから.
これで実質上サーボボックスの機能は制御を含まなくなり(*26),制御器にいる女神はサーボボックスから解放されました.そして,アナタはめでたく制御の女神と出会うことができました!
*26:実はまだモータドライバ内に,電流を指令値通りに制御する電流制御ループが入っていますが,今のところこれは本質ではないので.また,制御を含まなくなると「サーボ」と呼ぶのも変な感じがしますが,図 5 (a) との対応をわかりやすくするために,図 5 (b) においてもそのまま「サーボボックス」と表記しています.
「身体と相談しながら」操縦する
アナタは今,制御の女神とともに,クローズドループダイナミクスの中でロボットの制御に直接携わっています.この駆動力制御ベースの制御が行なわれている操縦型ロボットは,軌道制御ベースの制御が行なわれている操縦型ロボットとどのように違うのでしょうか.
この構成は「ギモンその二」に答えるものだったのですが,それによって「ギモンその一」の問題もほぼ解決されてしまっています.アナタはクローズドループダイナミクスの中に入って,力学的相互作用を行なっています.図で説明すれば,図 5 (a) では操縦者に入る矢印,出る矢印はともに赤線ではありませんでしたが,図 5 (b) では操縦者に入る矢印も出る矢印も赤線であり,また操縦者を含むループはロボットシステムすべての力学的作用をも包含しています.
先ほど操縦者は「感触」によって操作力を修正すると言いましたが,操縦者が力学的相互作用のクローズドループに入るということは,自分の身体の感触はもちろん,制御の女神の感触,サーボの感触,ロボットボディの感触,環境の感触,すなわちクローズドループ内の力学的相互作用のすべてが,この「感触」の中に情報として含まれているということを意味します.
アナタは,(人間とロボットの)身体と相談しながら,ロボットを介して外界(環境)のダイナミクスを「感じ」て,ロボットを操縦することができます.言い換えれば,駆動力制御ベースのロボットシステムの操縦は,「ギモンその一」で求められたような,操縦者とロボットの力学的相互作用を排除しない操縦方法となるのです.このような,操縦者を力学的相互作用のクローズドループに含むことで,力学的作用によって「感触」を感じ,力学的作用によって操縦意志を伝えるような操縦を「力学ベースの操縦」と呼ぶことにしましょう.力学ベースの操縦では,コマンドを伝えるためにタスクを抽象化・言語化する必要はありません.
それはハイテクなのか?
これはスゴい!とお思いでしょうか.でも,考えてみればこれはまったく普通なのです.というのも,われわれの身近にある,ありふれた操縦型の機械の多くは,駆動力制御ベースと類似のクローズドループダイナミクスを構成し,力学ベースの操縦になっているからです.例えば,自動車やバイク,自転車などの操縦型の乗物です.自動車では,アナタは車のモーションを感じながら,アクセル・ブレーキ・ハンドルという操縦装置を介して操作力を車の制御器に入力します.車はその操作力に応じて,タイヤの駆動トルク・ステアリングの旋回トルクを出力します.それが車と路面(環境)のダイナミクスと相互作用することによって車のモーションが決まり,それをまたアナタが感じて操作力を修正し,再び制御器に入力します.バイクでも自転車でも,システムの具体的な実装は異なっても,クローズドループダイナミクスの構成は図 5 (b) に類似しています.だからアナタは直感的に,「今日はエンジンの調子が悪いな」とか「坂道を登るのはしんどいな」とか「この路面は滑りやすいな」とか,感じながら運転することができているのです.
もし,アナタがドライブするとき,現在地から目的地までのルートをあらかじめ計画してそのモーション(車の速度やステアリング角度)をアナタがすべて打ち込まなければならないならばどうでしょうか.これは…大変ですね.とても目的地に着けそうにありません.少なくとも,単純なモーションプログラミングでは,自動車の運転には役に立ちません.
コマンドベースの操縦と軌道制御ベースの制御が自動車で役に立つとすれば,それは単純なモーションプログラミングではなく「自律運転」です.例えば,目的地を打ち込むと(コマンド),制限速度を守りつつ道路に沿って(軌道制御),目的地まで自動で,かつ信号や標識や歩行者や他の自動車の挙動をセンシングして判断しながら(自律),運転してくれるような自動車です.実際,自動車における自律運転については,盛んに研究が行なわれています.米国防総省高等研究計画局 (DARPA) が主催するロボット車レース DARPA Urban Challenge は,市街地での無人自動車の自律運転の実証試験として行なわれています.
何が言いたいかというと,駆動力制御ベースのシステムはむしろローテクであり,軌道制御ベースのシステムの方がずっとハイテクだということです.自動車という歴史の長い機械においても,軌道制御ベースの自律運転を実用化するには,まだ課題が山積しています.ましてやロボットです.確かに産業用ロボットは,オートメーション(自動制御)によって成功を収めてきました.しかし,次世代ロボットに限って考えたとき,自動制御の先にある,難しい判断を伴う「自律」という機能を目指すことで,われわれの役に立つロボットが本当に手に入るのでしょうか?
やっとパワードスーツの登場です
おそらく皆さんは,その答えを知っています.スパロボとしてイメージされる多くのロボットの中に,操縦型ロボットが一つも思い浮かばない人はいないと思います.皆さんは,すでに鉄腕アトムや鉄人 28 号のような自律型のロボットよりも,操縦型のロボットの方が「リアル」である,と知っているのです(好きか嫌いかは別として).なら,なぜそれを実現しない?
筆者は,次世代ロボットとして自律ヒューマノイドロボットを目指すのは時期尚早だと考えています.なぜなら,前編の「なぜ操縦なのか?」で説明したような現在の技術レベルでは,大して役に立たないから(*27)です.自律ヒューマノイドロボット研究は重要です.これからも精力的に研究を進めていくべきでしょう.しかし,実用化を考えたとき,少なくとも筆者には「次世代(*28)に」「家庭で」「自律ヒューマノイドロボットが」役に立つ,というシーンが,まったく思い浮かばないのです.
*27:斬って捨ててしまってスミマセン.この考えについては言葉を尽くして説明する必要があると思いますが,本連載ではスペース不足です.気になる方は,文献 [8] に詳しく述べていますのでご参照下さい.
*28:おおむね十年以内を目安にしています.
一方で,スパロボを実用化できるならば,役に立つシーンはいくらでも思い浮かびます.多くのスパロボは戦争のための兵器ですが,それを除外する(*29)ならば,例えば『機動警察パトレイバー』の世界観(*30)は参考になります.
パトレイバーの世界では,近未来(*31)の東京で,レイバーと呼ばれる『多足歩行式大型マニピュレーター』が,土木建築作業を中心に,警察・消防・治安・軍事・農林水産・物流運搬,果てはさっぽろ雪まつりの雪像制作やクジラ救助にまで活用されています.今でも筆者は,この世界観には非の打ち所がないと思っています.現在のロボット工学の技術レベルを前提にして次世代ロボットが我々の役に立つとすれば,家庭用ではなくこういう位置付けしかないだろう,と思うわけです.
*29:倫理的な理由はもちろん,現実的な理由でも,巨大ヒューマノイドロボットの兵器としての有用性は見つけづらいように思います(ミノフスキー粒子でもない限りは).歩兵の強化というのはあり得るかもしれません.ただ,本当に人間サイズのウェアラブルな「強化服」のようなパワードスーツは,技術的に難しいでしょう.そもそも人間にロボットを直接(密着させて)装着するというのは,安全性からも,機械系・制御系設計の観点からも,合理的ではありません.コンピュータ・アクチュエータ・電源・リンク機構・装甲などのハードウェアのスペースを確保するためには,適切なサイズはおそらく 2 ~ 5 m 程度,AT(アーマードトルーパー)や,後述のランドメイトサイズでしょう.
*30:パトレイバーの世界観を詳しく知るうえで,文献 [9] はなかなか秀逸です.公式設定ではありませんが,社会の中で真っ当に位置付けられる次世代ロボットの姿を模索するうえでの一つの社会シミュレーションとして,参考とするに値します.少なくとも「自律ヒューマノイドロボットが一家に一台いる社会」よりは,ずっと現実味があります.まあ,述べられているロボット工学技術については,コメントしたいところもなきにしもあらずですが.
*31:実は,すでに劇中で描かれたレイバーの時代は過去のものになってしまいました(特車二課にイングラムが配備されたのが 1998 年).鉄腕アトムの誕生日(2003 年 4 月 7 日)を迎えたときに「まだアトムができていない」ことが騒がれましたが,前編で述べたようにアトムが当分できないことは当然です.筆者にとってはまだレイバーができていないことの方がショックです.ちなみに,VF-0 フェニックスが完成したのは 2004 年 12 月,VF-1 バルキリーのロールアウトは 2008 年 11 月,これも過去になってしまいましたが,人類にはまだオーバーテクノロジーはもたらされていないので,仕方がないですね.
ただ,レイバーの操縦方法は,ほぼコマンドベースです.操縦者は LOS(Labor Operating System)の支援を受けながら,通常はレバーとボタンでマクロな指示(コマンド)を行なうことでレイバーの操縦を行なっています(*32).そのためには,少なくともオートバランスのように,下肢の動作を一任してしまえるような制御が必要です.したがって,レイバーを実現するためには,第 9 回,第 10 回で紹介した,杉原先生らの研究の進展を待たなければなりません.
そこでパワードスーツです.パワードスーツならば,駆動力制御ベースの制御方法を実装すれば,力学ベースの操縦方法で,身体と相談しながら,パワードスーツを介して外界のダイナミクスを「感じ」て,タスクを遂行することができます.
*32:一部,フットペダルやモーショントレーサーで力学ベースの操縦が行なわれている可能性がありますが,詳細は不明です.文字どおり単なるモーショントレース(形だけを伝達して感触は伝達しない)かもしれません.
パワードスーツをモデル化!
これまでの議論の結果を押さえておくと,力学ベースの操縦と駆動力制御ベースの制御を行なうパワードスーツのようなシステムであれば,操縦型のスパロボとして近未来に実現できるかもしれない,ということでした.では,そのようなシステムではどのような制御が行なわれているのかを,具体的に分析してみることにしましょう.
まずお断りしておく必要がありますが,この分析は,筆者の研究に基づく,まさに「勝手に制御分析!」です.必ずしも,現在のロボット制御工学での一般的な捉え方ではありません.以下の内容が常識だと思って他の人に話すと痛い目を見るかもしれませんので,取り扱いには気をつけて下さい.例えば,現在,パワードスーツにつながる「パワーアシスト」の研究が盛んに行なわれています.そして,多くの研究で,人間とロボットのインターフェースとして,皮膚表面に電極(筋電位センサ)を貼って計測する表面筋電位信号(生体電位信号)が用いられています.これは,「コマンドベースの操縦」のための操縦者の意図抽出の手段としては自然な考え方です.しかし,図 5 (b) に示したような,筆者が考える「力学ベースの操縦」と「駆動力制御ベースの制御」に限っていえば,主たるインターフェースとしての力センサの代わりに筋電位センサを使うことは(現在の技術では)適切ではありません.なぜでしょう? 以下の議論の中にそのヒントがあります.まずは皆さん自身で,読みながら考えてみて下さい.答え合わせは最後にしましょう.
さて,パワードスーツのシステムとしては,筆者が最も実現に近いと思っているスパロボである,ランドメイト(*33)を採用することにします(図 6 ).
*33:士郎正宗原作の SF 漫画『アップルシード』およびその派生作品に登場する装甲外骨格型パワードスーツ.搭乗者の動きをトレースすることで人間に近い動作を可能とし,さらに四肢のパワー増幅や対小火器防御,センシング能力の拡張,通信などの機能が得られる.
|
図 6 操縦者とランドメイトが構成するシステム |
操縦者がランドメイトを装着し,操縦者のモーションをランドメイトがそのままトレースする,というのが,一般的な理解(設定)だと思います.しかし,ランドメイトのモーションを操縦者のモーションに幾何学的に合わせるだけだと,身体を「感じる」ことを目指す「力学ベースの操縦」の実装にはなりません.
マスター・スレーブシステム(田原先生の解説)ではマスターとスレーブが別々のロボットとして存在しますが,パワードスーツでは多くの場合,マスターとスレーブが機械的につながって連動する一つのロボットシステムとなっています.都合上,ランドメイトもそのような構成であるとしましょう.すると,機械的に連動するので,モーションを制御でトレースする必要がなくなり,力学ベースの操縦をいかに実装するか,という問題のみを考えればよくなります.
このとき,操縦者・ランドメイトをモデル化した運動方程式は,例えば以下のように書けます(運動方程式については,木野先生,菊植先生の解説を復習しておきましょう).
式 (1) は操縦者の身体の,式 (2) はランドメイトのボディのダイナミクスをそれぞれ表わしています.これらは,非常に一般的な(詳細をぼかした)形で記述してあるので,多くのパワードスーツのシステムが大体このような形で表現できると考えてよいでしょう.
ここでは,時刻 t において,操縦者がランドメイトを動かす操作力を fop(t),ランドメイトが外界(環境)に対して発揮する手先力を flm(t) としています(図 6 参照).また,qop(t),qlm(t) はそれぞれ操縦者とランドメイトの関節変位を表わす一般化座標,ドットが上に一つ付くと時間 t に関して一階微分したことになるので,qop(t),qlm(t) はそれぞれの関節速度,qop(t),qlm(t) はそれぞれの関節加速度になります.τop(t),τlm(t) はそれぞれ操縦者の筋肉とランドメイトのモータが発揮する関節駆動力です.ちなみにこれらの変数は,すべてベクトルです.ベクトルの要素数は,操縦者とランドメイトそれぞれの関節数によって決まります.
さらに,Mop(qop),Mlm(qlm) はそれぞれ操縦者とランドメイトの慣性行列,rop(qop, qop),rlm(qlm, qlm) は慣性項以外の動力学的効果を集約した剰余項のベクトル,Jop(qop),Jlm(qlm) はそれぞれの関節速度を手先速度へ変換するヤコビ行列です.
う~ん.これは頭が痛いですね….このように,各変数の正体はベクトルや行列なのですが,まだ習っていない場合でも,とりあえずは普通の変数を使った方程式としてなぞって下さい.そうすれば,変数や方程式の概念を理解した中学生以上であれば,式の変形の過程や,式が表わす物理現象のイメージについては理解できると思います.ここでは,ベクトルとか行列とか,なんでそんなややこしいもんを使うんや,というギモンにだけ答えておきましょう.
ベクトルや行列を使わずに,普通の変数で式 (1) や式 (2) を書くこともできます.しかしそれは,操縦者もランドメイトもたくさん関節を持っているので,その関節数に応じたたくさんの式からなる連立方程式になります.それを全部書き下していると,その式だけで数ページくらいは使ってしまいます.そんな式では,数式操作をするのも大変ですし,何より,その式が何を表わしているのか人間には理解し難くなります.つまり,普通の変数では大量の式のカタマリになってしまうところを,ベクトルや行列を使うことによって,式 (1) や式 (2) のようなスッキリとした表記にできるということです.実は,ベクトルや行列は,問題をややこしくしているのではなく,むしろ見通しよくしてくれる便利なツールなのです.
さて,ここからは,専門家でない方にもイメージを捉えてもらうために,運動方程式 (1),(2) の意味を直感的な言葉で言い直しましょう.紙面の許す限り丁寧に説明しますので,面倒ですがフォローしてみて下さい.
まず,操縦者の運動方程式 (1) が何を表現しているかです.式 (1) の左辺は,《操縦者が自分の手足に力を入れて,各関節に筋力 τop を発揮した》ことを表わしています.一方右辺には,《その筋力がどう使われるか》が記述されています.それらがイコールで結ばれているので,式 (1) 全体では《発生した筋力と使われた筋力が等しい》という意味(*34)になります.そして右辺の《使われた筋力》の中身は,以下のようになっています.
*34:説明のわかりやすさのためダランベールの意味になっていますが,専門家の方はご了承下さい.
【式 (1) 右辺第 1 項 Mop qop】筋力 τop は,人体の慣性 Mop に対抗して関節の速度を変える(加速度 qop を発生させる)ために使われます.つまり,筋力を入れれば手足の関節の運動は加速し,筋力を抜いたり逆方向の筋力を入れたりすれば運動は減速する,という効果です.この慣性の効果を表わすのが,右辺第 1 項の慣性項 Mop qop です.
【式 (1) 右辺第 2 項 rop】筋力 τop は,次に,人体のリンク機構が持つ複雑な特性 rop に対抗するために使われます.実際にはこの rop の中身は,摩擦力,粘弾性力,重力,コリオリ力などの複雑な式の集合なのですが,いちいち全部書くのは面倒(*35)なので,一つの文字でまとめてしまっています.
【式 (1) 右辺第 3 項 JopT fop】筋力 τop は,最後に,操縦者の手足がランドメイトを動かす操作力 fop として使われます.操縦者の筋力が手足の先にどう伝わるかは,操縦者の手足の長さや関節の付き方などの幾何学的条件によって異なります.操縦者の身体のそのような幾何学的条件を表わすのが JopT です.
*35:面倒でも,書かなければならないときもあります.かといって,いつも細かく書けばいいかというと,そうでもありません.運動方程式を使う目的に応じて,必要ならば書き,必要でないならば書かない,そう自ら判断するセンスが求められます.いわゆる学校のテストでは,アナタはその判断をする必要はなく,出題者が「~を書け」と指定してくれます.しかし,本当に必要なのは,問題を解くことの一つ前にある,「どのような問題を解くべきか」という「問いを立てること」にあると筆者は思います.吉田先生の回の前編の最後で述べられたことを,もう一度味わっておいて下さい.
以上,式 (1) についてもう一度簡単にまとめると,以下の式のようになります.
つまり,《操縦者の筋力【1】は,まず操縦者自身の身体を動かす【2】ために使われ,その残りが操縦者の身体の幾何学的条件【3】に応じて,操作力【4】としてランドメイトに伝わる》ということを表わしています.どうでしょう.何となく,物理現象と数式の対応がイメージできたでしょうか.文章で説明すると大変ですね.しかし,逆に考えれば,文章だとこれだけのボリュームになる内容が,式 (1) のたった一行の記述で余すところなく表現されているのです.この簡潔さ,見通しの良さが,モデル化のメリットの一つです.
さて,この勢いで,ランドメイトの運動方程式 (2) も説明してしまいましょう.式 (2) の左辺には,《ランドメイトを動かす駆動力》が記述されています.今度は,駆動力は一つではありません.というのも,ランドメイトは,ランドメイトの関節を駆動するモータの駆動力 τlm によって動かされると同時に,力としては小さいですが,操縦者の操作力 fop によっても動かされます.操作力 fop がランドメイトの関節にどう伝わるかは,今度はランドメイトの手足の長さや関節の付き方などの幾何学的条件 JlmT によって決まります.
一方右辺には,《ランドメイトの駆動力がどう使われるか》が記述されています.それらがイコールで結ばれているので,式 (2) 全体では,やはり《発生した駆動力と使われた駆動力が等しい》という意味になります.そして右辺の《使われた駆動力》の中身は,以下のようになっています.
【式 (2) 右辺第 1 項 Mlm qlm】左辺の駆動力は,ランドメイトの慣性 Mlm に対抗して関節の速度を変える(加速度 qlm を発生させる)ために使われます.この慣性の効果を表わすのが,右辺第 1 項の慣性項 Mlm qlm です.
【式 (2) 右辺第 2 項 rlm】左辺の駆動力は,次に,ランドメイトのリンク機構が持つ複雑な特性 rlm に対抗するために使われます.この rlm の中身はやはり,ランドメイトのボディの摩擦力,粘弾性力,重力,コリオリ力などの複雑な式の集合です.
【式 (2) 右辺第 3 項 JlmT flm】左辺の駆動力は,最後に,ランドメイトが外界(環境)に発揮する力 flm として使われます.JlmT は,ランドメイトの関節の力がどのように手足の先に伝わるかを決める,ランドメイトのボディの幾何学的条件でしたね.
式 (2) についてもう一度簡単にまとめておきましょう.
つまり,《操縦者の操作力【1】とランドメイトのアクチュエータの駆動力【2】は,まずランドメイトのボディを動かす【3】ために使われ,その残りがランドメイトのボディの幾何学的条件【4】に応じて,ランドメイトの発揮する力【5】となる》ということを表わしているわけです.
ランドメイトが強大な力を発揮できるかどうかは,【5】に大きな力を出せるかどうかにかかっています.例えば,ランドメイトが必要以上に重ければ,慣性行列 Mlm が大きくなります.すると,左辺で同じ駆動力を出しても,その駆動力が慣性項 Mlm qlm で食われて flm は小さくなってしまう,ということがわかります.
パワードスーツの制御を分析!
さて,操縦者とランドメイトの運動方程式を記述して,やっと勝手に制御分析する準備が整いました.このシステムに力学ベースの操縦を実現するための制御則を適用することを考えます.
先に,ランドメイトのモーションを操縦者のモーションに幾何学的に合わせるだけだと,身体を「感じる」ことを目指す「力学ベースの操縦」の実装にはならない,と述べました.ではどうすればよいのでしょう.以下のような「操作力増幅制御則」を適用することにします.
もしかすると,一見,式 (1) や式 (2) と似ていると思われるかもしれません.しかしこの式 (3) は,式 (1) や式 (2) とは意味が異なることに注意して下さい.菊植先生の回で述べられたように,これは,式 (1) や式 (2) のような「自然の摂理」をモデル化した運動方程式ではありません.式 (3) の「制御則」というのは,「こうしなさい」という,制御系の設計者が自ら決める「制御意志」を表わしているものです.つまり式 (3) は,
《操縦者の操作力【1】を力センサで計測し,Kamp 倍に増幅【2】しなさい.そのような増幅された力をランドメイトの手足に発揮させるためにランドメイトの関節に加えなければならない力を,ランドメイトのボディの幾何学的条件【3】に応じて計算し,それをランドメイトの駆動力として指令【4】しなさい》という意味になります.これが「制御」なのです.制御系を設計する,ということは,モーションを試行錯誤で打ち込むことではありません,こう来たらこう対応しなさいという制御意志を,制御則という数式での表現として,例えば式 (3) のように書き下すことなのです.
この,運動方程式によるモデル化,制御系の設計の概念を,図 5 (b) のブロック線図を使って改めて図示すると,図 7 のようになります.
|
| 図 7 操縦型ロボット(駆動力制御ベース)の制御を設計! |
また,式 (3) が,駆動力制御ベースの制御則になっていることにお気付きでしょうか.力センサで操作力【1】を計測し,それを計算してモータの駆動力の指令値【4】とするという,図 5 (b) あるいは図 7 の制御器の作用を具体的に表現したものが式 (3) なのです.
駆動力制御ベースの操作力増幅制御則 (3) を適用すると,操縦者とランドメイトを含むシステム全体のダイナミクスは,以下のように変化します.まず,操縦者の運動方程式 (1) を操作力 fop について解くと,
同様に,ランドメイトの運動方程式 (2) を,ランドメイトが外界に発揮する力 flm について解くと,
となります.この式に,制御則 (3) で指令される関節駆動力 τlm を代入すると,
となります.ただし,I は単位行列としました(まぁ,1 だと思って下さい).この式は,操作力増幅制御則 (3) を適用したときのランドメイトのダイナミクスを表現しています.
さらに操縦者のダイナミクスを追加します.式 (6) に,操縦者が発揮する操作力 fop の式 (4) を代入すると,
となります.ちょっとごちゃごちゃしてしまったので,K'amp = I + Kamp と改めて定義し,もう少しだけ分かりやすく上の式を整理すると,以下のように書けます.
さてこれが,駆動力制御ベースの制御則である操作力増幅制御則を適用した後の,操縦者とランドメイトを含むシステム全体のダイナミクスを表わす運動方程式です.この式は flm = という形になっているので,ランドメイト側から見た表現です.まずこの式から読み取れるのは,操縦者の筋力(操縦者の身体の幾何学的条件コミ)【1】が,操作力増幅制御によって K'amp 倍に増幅【2】されて,ランドメイトが外界に発揮する力【3】になるということです.これで,ランドメイトが操縦者の何十,何百,何千倍の力を発揮することも可能(*36)になります.
*36:実はこれは簡単に言い過ぎていて,これを本当に可能にするためには様々な技術が必要です.単純にここで書いたことだけを実装して人間が普通に出す力を増幅しようとしても,システムにもよりますが,多くの場合 K'amp は一桁台の値がせいぜいでしょう.それ以上大きくすると,増幅はするもののまともに操縦できず,暴走を始めます.それを理解したうえで,K'amp を何十,何百,何千,場合によっては何万という桁にまで持って行こうとするのが筆者の研究の重要な課題の一つです.それはすでに実現しつつあります.興味のある方は,まずは筆者のサイトから研究を参照してみて下さい.
さらに,ランドメイト視点の式 (8) を変形して,操縦者視点に変えてみましょう.操縦者の筋力 τop について式 (8) を解くと,ランドメイトと操縦者のダイナミクスの別の表現になります.
このように書き換えると,「操作力増幅制御則を適用したランドメイトを操縦すると操縦者はどう感じるか」が読み取れるようになります.つまり,《操縦者の筋力(幾何学的条件コミ)【1】は,まず操縦者自身の身体(幾何学的条件コミ)を動かす【2】ために使われ,その残りがランドメイトのボディ(幾何学的条件コミ)を動かす【3】ために使われる.ただし,ランドメイトの身体を動かすために必要な力は操作力増幅制御によって K'amp-1 倍(*37)に縮小されている【4】ので,人力ではとても動かせないようなランドメイトの鋼の巨体も軽々と動かせるようになっている.そして,さらにその残りの筋力が,ランドメイトが外界に発揮する力【5】として使われるが,操縦者はこの力も,やはり操作力増幅制御によって K'amp-1 倍に縮小されて感じる【6】ので,ランドメイトが重い荷物を持っても,操縦者はその K'amp-1 倍の筋力を発揮するだけで済む》ということです.
*37:この K'amp-1 は,行列 K'amp の逆行列です.高校で習います.とりあえずここでは,K'amp の要素(中身)が例えば 1000 倍の増幅を表わすなら,K'amp-1 の要素(中身)は 1/1000 に縮小することを表わすと,大雑把に理解しておいて下さい.
これまで長々と考察してきましたが,ここに来てやっと,パワードスーツにとって望ましい(と筆者が考える)制御の全貌が明らかになりましたね.つまり,
● 運動方程式 (1) と (2) でモデル化される,パワードスーツのシステムを,
● 操作力増幅制御則 (3) で制御すると,
● パワードスーツのシステムのダイナミクスは式 (9) のようになる
ということです.最終的に得たパワードスーツのシステムのダイナミクス (9) が望ましい形になっていれば,制御系の設計は成功した,ということになります.式 (9) で重要なのは,操縦者が,自分が出す筋力【1】の一部として,操縦者自身の身体【2】とランドメイトのボディ【3】を「感じている」ことです.また,ロボットが外界に発揮する力【5】も,操縦者は感じています.すなわち,ロボット制御工学の女神の力を,操作力増幅制御則という「駆動力制御ベースの制御」の一つの現身(うつしみ)としてランドメイトに実装することで,身体と相談しながら外界のダイナミクスを「感じ」て操縦する「力学ベースの操縦」が実現されることが,式 (9) によって確認されるのです.
操縦型スパロボは実現できる(ただし限定付)
ということで,パワードスーツを実現するための制御系の設計方法について述べました.制御系の設計に辿り着くまでの「哲学」の部分が長過ぎて,制御の話はほんのサワリのみ(*38)になりました.
*38:もし制御系の設計方法についてもう少し詳しく知りたい方は,文献 [10] をご参照下さい.多少ですが,詳しく書いています.
工学研究において「いかに研究するか」はもちろん重要なのですが,それ以上に「なぜ研究するか」というモチベーションが重要だと筆者は考えています.なぜ操縦なのか,なぜ力学ベースの操縦と駆動力制御ベースの制御なのか,なぜパワードスーツなのか,これさえ皆さんに伝えられれば,筆者としてはまずは満足です.
また,操作力増幅制御則 (3) を用いればすべてうまく行くなどというはずもなく,ここでは考察しなかった様々な問題を一つひとつ解決しなければパワードスーツの実現はできませんし,いくら制御しても,物理的にできないことはできません.限定付きです.ただ,今回皆さんと一緒に考察したようにボトムアップで積み上げて行けば,ランドメイトはやはり実現可能だと考えています.そのための基盤技術を,筆者の研究室では一つひとつ積み上げつつあります.それらを統合することで,十分にスパロボと呼ぶに値するパワードスーツとなる見通しはすでに立っています.積み上げ方を間違えず,正しい「問い」を立てれば,操縦型スパロボは「次世代に」実現できる,これが筆者の結論です.
そうそう,「パワードスーツをモデル化!」のところで出した質問に答えておかなければなりません.図 5 (b) あるいは図 7 の力センサの代わりに筋電位センサを使うことが(現在の技術では)適さない理由です.理由は一つではないのですが,今回の議論の流れで述べておきます.
解説の中では特に意識しませんでしたが,運動方程式 (1) (2) の中の fop と,制御則 (3) の中の fop とは,実は別物です.つまり,運動方程式 (1) (2) の fop が,実際の物理現象として作用している「力」を表わしているのに対して,制御則 (3) の fop は,力センサで計測された,信号としての「力情報」です.図 7 でいえば,左端の「力センサ」のブロックに入る赤い矢印「操作力」が運動方程式 (1) (2) の fop であり,「力センサ」のブロックから出る青い矢印「操作力データ」が制御則 (3) の fop です.ということは,制御則 (3) を運動方程式 (1) (2) に代入して式 (6) を求めることができたのは,力センサの計測が正確で,この二つが同等と見なせるという暗黙の前提があったからなのです.
一方,筋電位信号はあくまで皮膚表面に漏れ出る,筋肉の動作情報を「含んだ」電位信号です.力センサとして用いることは不可能ではないですが,そのためには筋電位信号から操作力を推定しなければなりません.人体という非常に複雑でモデル化が困難なシステムを介している以上,推定された操作力は,現在の技術ではどうしても精度に劣るデータとなると考えざるを得ません.したがって,筋電位信号から推定された操作力を図 7 の「操作力データ」として用いるのは,今のところ適切ではありませんし,制御則 (3) を運動方程式 (1) (2) に代入して式 (6) を求めることもできず,結論としての式 (9) にも辿り着けない,ということになります.
おわりに
前編で紹介した文献 [7] では,
● ロボットの操縦はあらゆる意味での人間の能力の拡大(オーグメンテーション)と見ることができる
と述べられていました.まさにその通りだと思います.オーグメンテーションなのです.これが,われわれがスパロボに魅かれる理由なのでしょう.
操縦者と操縦型ロボットの関係は,付かず離れず人間の能力を拡大するという点で,スタンド使いとスタンドの関係のようだと筆者はひそかに思っています.スタンドは『生命エネルギー(精神力)が作り出すパワーある像』で,実体のない超能力(しかも架空の)に過ぎないだろう,と言われるのももっともです.しかし,ロボット制御工学の女神も,制御系を設計する人間の精神力が数式として描き出した「パワーある像」である,と見ることもできます.また,ロボットによるオーグメンテーションは,超能力の工学的実装と見ることもできる(*39)でしょう.スタンド能力も,操縦型ロボットによるオーグメンテーションも,結局は人間(操縦者/設計者)の精神力の発現だということです.
*39:携帯電話が,テレパシーの工学的実装と見ることができるように,です.
とはいえ,スタンド能力は所詮フィクションです.現実世界でスタンドを出すトレーニングをするヤツがいたらちょっとイタいですね.友達なら忠告してやるべきでしょう.でも,ロボット制御工学の女神の力を発現させるべく,工学知識に基づいて制御系を設計し,操縦型ロボットとして「オーグメンテーション=超能力」を実現する,というのは,決して荒唐無稽ではありません.かの SF 作家アーサー・C・クラークも「十分に発達したテクノロジーは魔法と見分けが付かない」と言っています.何度も強調するように,物理的にできないことはできない(*40)のですが,できるところならば,スタンドとロボットの見分けが付かなくなるまでやってやろうと,これもひそかに思っています.
筆者のマンマシンシナジーエフェクタ(人間機械相乗効果器)の研究では,人間の運動能力を強力・高速・巧緻に拡大しようとしています.マンマシンシナジーエフェクタの「次世代」での実現イメージは本稿で述べたランドメイトですが,究極の夢は,スタープラチナ(*41)の能力を手に入れることなのかもしれません.
*40:『ザ・ワールド』を筆頭に,実現できないスタンド能力の方が多いかもしれませんね….
*41:荒木飛呂彦原作の漫画『ジョジョの奇妙な冒険』第 3 部の主人公,空条承太郎のスタンド.「最強」と言われる.その姿は筋骨隆々の古代戦士のような人間型で,そのパワーは突進してくるトラックを受け止めるほど強く,その拳は閃光のように速く,その指先は柔軟かつ精密で,その視力は顕微鏡や望遠鏡なみ.なお,戦いの中で『スタープラチナ・ザ・ワールド』という「時を止める能力」に目覚めるが,上述のようにこれは実現不可能.
■参考文献
[1] ルネ・デカルト著,三宅徳嘉・小池健男訳,方法叙説,白水社,東京,p.52, 2005.
[2] 星野力,ロボットにつけるクスリ 誤解だらけのコンピュータサイエンス,アスキー,2000.
[3] 有本卓,ロボットにかける夢 知と身体の調和をめざして,岩波書店,2000.
[4] けいはんな社会的知能発生学研究会編,知能の謎 認知発達ロボティクスの挑戦,講談社ブルーバックス,2004.
[5] 杉原知道,“ロボットらしく、ロボットらしくなく”,ロボット・オペラ(瀬名秀明 編著),光文社,pp.582-586, 2004.
[6] 下野康史,「運転」アシモからジャンボジェットまで,集英社,2006.
[7] 下野康史,イッキ乗り いま人間は、どんな運転をしているのか?,二玄社,2007.
[8] 吉田,阪口,梶田,横小路,國吉,横田,“SF のロボットを科学する”,日本ロボット学会誌,vol.12, no.3, pp.368-388, 1994.
[9] 金岡克弥,“人と機械の相乗効果を規範とする次世代ロボット再定義の試み”,機能材料 2009 年 1 月号,vol.29, no.1, pp.65-73, 2009.
[10] 機動警察パトレイバー ザ・レイバー・インダストリー~レイバー開発全史~,学研ムック,2009.
[11] 金岡克弥,“パワー増幅ロボットシステム設計概論 力学的相互作用にもとづく人と機械の相乗効果を実現するために”,日本ロボット学会誌,vol.26, no.3, pp.255-258, 2008.
※第 11 回,第 12 回で参照した文献すべてを明記しています.
■過去の記事
プロローグ 「スパロボの世界からロボット制御工学の世界へ!」
第1回「モビルスーツの力学と制御 -AMBACシステム、ガンダムハンマーの制御を分析-(前編)」
第2回「モビルスーツの力学と制御 -AMBACシステム、ガンダムハンマーの制御を分析-(後編)」
第3回「操縦者とロボットをつなぐ運動学と,静力学の導入 -スパロボの華麗な操縦と動作を分析-」(前編)
第4回「操縦者とロボットをつなぐ運動学と,静力学の導入 -スパロボの華麗な操縦と動作を分析-」(後編)
第5回「スパロボ制御における力・トルクの役割 -つまむ・掴む ザクの微妙な力加減を分析-(前編)」
第6回「スパロボ制御における力・トルクの役割 -つまむ・掴む ザクの微妙な力加減を分析-(後編)」
第 7 回 「 2 足歩行を実現する力学と制御の役割 -ザクの歩行の基礎を分析-(前編)」
第 8 回「 2 足歩行を実現する力学と制御の役割 -ザクの歩行の基礎を分析-(後編)」
第 9 回 「人型ロボットの力学とオートバランスの理論 -パトレイバーの安定化制御を分析-(前編)」
第 10 回 「人型ロボットの力学とオートバランスの理論 -パトレイバーの安定化制御を分析-(後編)」
第 11 回「操縦者とロボットをつなぐ力学と制御 -パワードスーツの制御を分析(前編)-」