(57)【特許請求の範囲】
【請求項１】
姿勢を変更するためのアクチュエータと、
前記アクチュエータによって駆動される機構部と、
前記アクチュエータを制御する制御部と、を備え、
前記制御部は、
前記機構部が動作する場合と、前記機構部が待機する場合とで、前記アクチュエータの制御系を切り替える機能を有し、
前記機構部が待機する場合の制御系は、前記機構部が動作する場合の制御系よりも、前
記アクチュエータの駆動力指令を小さく制限するリミッタを有する
ことを特徴とするマニピュレータ。
【請求項２】
前記アクチュエータ、及び前記機構部を搭載し、移動可能な移動部を備える
ことを特徴とする請求項１に記載のマニピュレータ。
【請求項３】
前記リミッタによる力指令制限の中央値は、前記マニピュレータの姿勢から求める
ことを特徴とする請求項１または請求項２に記載のマニピュレータ。
【請求項４】
周囲環境を観測する観測部を備え、
前記観測部は、
前記機構部が動作を開始する前に前記周囲環境を観測する
ことを特徴とする請求項１乃至請求項３のいずれか１項に記載のマニピュレータ。
【請求項５】
前記移動部が移動する際には、前記アクチュエータの制御系を前記機構部が待機する場
合の制御系とする
ことを特徴とする請求項２に記載のマニピュレータ。
【請求項６】
前記制御部は、
作業計画として、各状態において前記機構部が動作時か待機時かを計画する機能を有する
ことを特徴とする請求項１乃至請求項５のいずれか１項に記載のマニピュレータ。
【請求項７】
姿勢を変更するためのアクチュエータと、前記アクチュエータによって駆動される機構
部と、前記アクチュエータを制御する制御部と、を備えるマニピュレータの制御方法であ
って、
前記制御部は、
前記機構部が動作する場合と、前記機構部が待機する場合とで、前記アクチュエータの
制御系を切り替え、
前記機構部が待機する場合の制御系は、前記機構部が動作する場合の制御系よりも、前
記アクチュエータの駆動力指令を小さく制限するリミット処理を行う
ことを特徴とするマニピュレータの制御方法。
【請求項８】
前記リミット処理による力指令制限の中央値は、前記マニピュレータの姿勢から求める
ことを特徴とする請求項７に記載のマニピュレータの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マニピュレータおよびマニピュレータの制御方法に関する。
【背景技術】
【０００２】
災害現場などで稼働する作業ロボットはマニピュレータを備えており、周囲の構造物の配置が不確かな環境で移動や作業を行う。そのため、作業ロボットが構造物と接触して、構造物および作業ロボット自身が損傷するおそれがある。また、原子力プラントなどで稼働する作業ロボットは、周囲の構造物の配置が確かな環境ではあるが、作業ロボットが構造物に接触して構造物を損傷した際の影響が大きい。このような不確かな環境で作業を行う作業ロボットや、環境を損傷できない条件で作業を行う作業ロボットには、作業ロボットが構造物と接触した際に、その構造物や作業ロボット自身が損傷するリスクを低減することが求められている。
【０００３】
作業ロボットの損傷リスクを低減する技術として、特許文献１および特許文献２が開示されている。
【０００４】
特許文献１（特開２０００−４２９６２号公報）には、自由空間内の予想接触面までワークを位置制御により接近動作させ、次に、予想接触面から真の接触面まで位置制御による探索動作を行い、力検出値があるしきい値を越えた時点で力制御による接触動作に切り換えるロボット制御装置が記載されている（要約参照）。
【０００５】
また、特許文献２（特開平１１−７７５８０号公報）には、位置及び速度の状態フィードバックループを有し、各関節を駆動するモータの制御回路を備えたロボットの制御装置において、モータの動作指令値からモータの加速トルク及びモータの速度を維持するための速度維持トルクを算出する手段と、前記加速トルクと速度維持トルクを加算してモータの運動に必要な仮想トルク指令を算出する手段と、前記仮想トルク指令と前記制御装置における現在のトルク指令の差を算出する手段と、前記算出した差を予め設定した値と比較する手段と、比較した結果の符号によりロボットの運動を停止する手段とを有することを特徴とするロボットの制御装置が記載されている（請求項１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−４２９６２号公報
【特許文献２】特開平１１−７７５８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の技術によれば、力制御により接触力を制御することで、作業ロボットの損傷リスクを低減することができる。しかしながら、特許文献１に記載の技術は、構造物の位置が既知であることを前提としており、予期せぬ構造物と作業ロボットとの接触による損傷リスクを低減することができない。
【０００８】
また、特許文献２に記載の技術によれば、作業ロボットと構造物との接触を検出した際、作業ロボットの動作を停止することにより、作業ロボットの損傷リスクを低減することができる。しかしながら、特許文献２に記載の技術は、作業ロボットの動作を停止することで作業ロボットの作業効率が低下する。
【０００９】
また、周囲環境を常に観測して明らかな環境で作業ロボットが移動および作業を行えば、構造物との接触リスクを低減することができる。しかしながら、一般に環境観測には時間が掛るため、作業ロボットの作業効率が低下する。
【００１０】
そこで、本発明は、マニピュレータが構造物に接触した際にも、接触による構造物やマニピュレータ自身の損傷リスクを低減し、作業効率が低下することを抑制するマニピュレータおよびマニピュレータの制御方法を提供することを課題とする。
【課題を解決するための手段】
【００１１】
このような課題を解決するために、本発明に係るマニピュレータは、姿勢を変更するためのアクチュエータと、前記アクチュエータによって駆動される機構部と、前記アクチュエータを制御する制御部と、を備え、前記制御部は、前記機構部が動作する場合と、前記機構部が待機する場合とで、前記アクチュエータの制御系を切り替える機能を有し、前記機構部が待機する場合の制御系は、前記機構部が動作する場合の制御系よりも、前記アクチュエータの駆動力指令を小さく制限するリミッタを有することを特徴とする。
【００１２】
また、本発明に係るマニピュレータの制御方法は、姿勢を変更するためのアクチュエータと、前記アクチュエータによって駆動される機構部と、前記アクチュエータを制御する制御部と、を備えるマニピュレータの制御方法であって、前記制御部は、前記機構部が動作する場合と、前記機構部が待機する場合とで、前記アクチュエータの制御系を切り替え、前記機構部が待機する場合の制御系は、前記機構部が動作する場合の制御系よりも、前記アクチュエータの駆動力指令を小さく制限するリミット処理を行うことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、マニピュレータが構造物に接触した際にも、接触による構造物やマニピュレータ自身の損傷リスクを低減し、作業効率が低下することを抑制するマニピュレータおよびマニピュレータの制御方法を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】作業ロボットシステムの全体構成を示す概略図である。
【図２】作業ロボットシステムの動作作業環境の一例を模式的に示す図である。
【図３】作業ロボットシステムの動作ルーチンの一例を示すフローチャートである。
【図４】初期化処理フローにおける作業ロボットシステムの動作ルーチンの一例を示すフローチャートである。
【図５Ａ】マニピュレータ作業フローにおける作業ロボットシステムの動作ルーチンの一例を示すフローチャートである。
【図５Ｂ】姿勢形成処理フローにおける作業ロボットシステムの動作ルーチンの一例を示すフローチャートである。
【図６】作業ロボット移動フローにおける作業ロボットシステムの動作ルーチンの一例を示すフローチャートである。
【図７】移動エリアにおける作業ロボットと環境構造物との相対的な状態を示す模式図である、（ａ）は未接触状態、（ｂ）は接触開始状態、（ｃ）は接触状態、（ｄ）は接触開放状態を示す図である。
【図８】大力制御におけるアームアクチュエータの制御構造の一例を示すブロック線図である。
【図９】大力制御時にマニピュレータと環境構造物が接触した場合における時間応答図であり、（ａ）はアームアクチュエータ実角度の時間応答を示すグラフであり、（ｂ）はマニピュレータと環境構造物の接触力の時間応答を示すグラフである。
【図１０】小力制御におけるアームアクチュエータの制御構造の一例を示すブロック線図である。
【図１１】接触力リミッタにおける接触力の制限を説明する図であり、（ａ）は接触力リミッタを示し、（ｂ）は接触力リミッタに等価な等価接触力リミッタの構成を示す。
【図１２】小力制御時にマニピュレータと環境構造物が接触した場合における時間応答図であり、（ａ）はアームアクチュエータ実角度の時間応答を示すグラフであり、（ｂ）はマニピュレータと環境構造物の接触力の時間応答を示すグラフである。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態（以下「実施形態」という）について、適宜図面を参照しながら詳細に説明する。なお、各図において、共通する部分には同一の符号を付し重複した説明を省略する。
【００１６】
≪作業ロボットシステムＳ≫
本実施形態に係るマニピュレータ１１０を備える作業ロボットシステムＳについて、図１を用いて説明する。図１は、作業ロボットシステムＳの全体構成を示す概略図である。
【００１７】
作業ロボットシステムＳは、マニピュレータ１１０を有する作業ロボット１００と、中央制御装置１５０と、通信ケーブル１６０と、を備えている。
【００１８】
作業ロボット１００は、マニピュレータ１１０と、移動台車１２０と、観測装置１３０と、制御装置１４０と、を備えて構成される。
【００１９】
マニピュレータ１１０は、アームアクチュエータ１１１ａおよびアームリンク１１１ｂからなるアーム部１１１と、エンドエフェクタ１１２と、制御装置１４０のマニピュレータ制御部１４１と、を備えて構成される。アーム部１１１の一端は、移動台車１２０に回動自在に支持される。アームアクチュエータ１１１ａは、アームリンク１１１ｂを駆動（回転駆動）することでアーム部１１１の姿勢を変更する。エンドエフェクタ１１２は、エンドエフェクタ駆動部（図示せず）およびエンドエフェクタ機構部（図示せず）から構成され、アーム部１１１の先端に配置される。なお、図１において、マニピュレータ１１０のアーム部１１１は、アームアクチュエータ１１１ａとアームリンク１１１ｂの１組にて構成されているものとして図示しているが、これに限られるものではなく、２組以上で構成されていてもよい。
【００２０】
移動台車１２０は、マニピュレータ１１０、観測装置１３０、および、制御装置１４０を搭載して、移動することができるようになっている。
【００２１】
観測装置１３０は、周囲環境やマニピュレータ１１０の姿勢、作業状況などを観測する。なお、図１において、観測装置１３０はアーム部１１１（アームリンク１１１ｂ）に取り付けられているものとして図示しているが、これに限られるものではなく、移動台車１２０に直接載置されていてもよい。
【００２２】
制御装置１４０は、マニピュレータ１１０の各アクチュエータ（アームアクチュエータ１１１ａ、エンドエフェクタ１１２の駆動部）を制御するマニピュレータ制御部１４１と、移動台車１２０の各アクチュエータを制御する移動台車制御部１４２と、を備えている。
【００２３】
マニピュレータ制御部１４１は、マニピュレータ１１０の各アクチュエータの駆動指令を生成して、各アクチュエータに駆動指令を送ることで、マニピュレータ１１０を制御する。また、移動台車制御部１４２は、移動台車１２０の各アクチュエータの駆動指令を生成して、各アクチュエータに駆動指令を送ることで、移動台車１２０を制御する。また、制御装置１４０は、観測装置１３０が観測した情報を収集する。
【００２４】
中央制御装置１５０は、表示部１５１と、入力部１５２と、演算部１５３と、を備えており、通信ケーブル１６０を介して、作業ロボット１００の制御装置１４０と通信可能に接続されている。中央制御装置１５０は、オペレータによる操作もしくは自動演算により作業ロボット１００の動作指令を生成し、生成した動作指令を制御装置１４０に送信する。また、制御装置１４０の収集した観測装置１３０による観測データや、マニピュレータ１１０および移動台車１２０の駆動情報は、作業ロボット１００の制御装置１４０から中央制御装置１５０に送信され、表示部１５１に表示されるとともに、作業ロボット１００の動作指令演算に用いられる。
【００２５】
なお、図１では、中央制御装置１５０と制御装置１４０の間の通信を有線の通信ケーブル１６０で行っているが、無線通信を用いてもよい。また、中央制御装置１５０のもつ機能の一部もしくは全部は、制御装置１４０に配置されてもよい。
【００２６】
≪動作作業環境≫
次に、作業ロボットシステムＳの動作作業環境について、図２を用いて説明する。図２は、作業ロボットシステムＳの動作作業環境の一例を模式的に示す図である。
【００２７】
図２に示すように、作業ロボットシステムＳの動作作業環境は、オペレーションエリア２１０と、待機エリア２２０と、作業エリア２３０と、移動エリア２４０と、で構成されている。
【００２８】
オペレーションエリア２１０には、中央制御装置１５０が配置され、オペレータによる作業ロボット１００の操作や、作業状態のオペレータへの表示が行われる。
【００２９】
待機エリア２２０は、メンテナンス時などの作業ロボット１００が待機しているエリアである。
【００３０】
作業エリア２３０は、作業ロボット１００が所定の作業を行うエリアである。作業ロボット１００の作業計画により、動作作業環境内に作業エリア２３０と移動エリア２４０が決定される。
【００３１】
移動エリア２４０は、作業ロボット１００が移動を行うエリアである。換言すれば、移動エリア２４０は、待機エリア２２０と作業エリア２３０とを接続するエリアであり、作業エリア２３０と次の作業エリア（図示せず）とを接続するエリアである。なお、図２では作業エリア２３０と移動エリア２４０は１つずつ図示しているが、これに限られるものではなく、作業ロボット１００の作業計画に応じてそれぞれ複数存在していてもよい。
【００３２】
作業ロボット１００は、作業計画に従って作業エリア２３０で作業対象物２３１に対して既定の作業を行う。また、作業ロボット１００は、待機エリア２２０から作業エリア２３０の間、または、作業エリア２３０と次の作業エリア（図示せず）の間を移動する。この時、各エリアには環境内に配置された構造物である環境構造物２４１が存在する。なお、図２においては、移動エリア２４０に環境構造物２４１が存在するものとして図示している。また、環境構造物２４１は、静的な構造物であってもよく、動的な構造物であってもよい。
【００３３】
なお、作業エリア２３０および移動エリア２４０は、エリア観測装置（図示せず）を備えていてもよく、エリア観測装置は、当該エリア内の環境や作業ロボット１００を観測し、通信によって中央制御装置１５０に観測データを送信する。
【００３４】
ところで、従来の一般的な作業ロボットシステムは、作業ロボット１００が移動する際、マニピュレータ１１０にブレーキを掛ける、姿勢制御（後述する大力制御）を行うなどして、マニピュレータ１１０に既定の姿勢を保持させている。このような構成においては、例えば、移動エリア２４０においてマニピュレータ１１０が環境構造物２４１と接触した場合、接触後も移動台車１２０が進行したままマニピュレータ１１０が姿勢を保持していると、マニピュレータ１１０と環境構造物２４１の接触部には大きな接触力がかかる。この接触力により、環境構造物２４１およびマニピュレータ１１０自身を損傷する場合がある。本実施形態に係るマニピュレータ１１０を備える作業ロボットシステムＳは、このような課題を解決するものである。
【００３５】
≪作業ロボットシステムの動作≫
次に、作業ロボットシステムＳを用いた一連の作業について、図３を用いて説明する。図３は、作業ロボットシステムＳの動作ルーチンの一例を示すフローチャートである。
【００３６】
作業ロボットシステムＳの動作は、中央制御装置１５０に入力された作業計画または中央制御装置１５０によって計画された作業計画に基づいて開始される。
【００３７】
ステップＳ３０１において、中央制御装置１５０は、作業ロボット１００を初期化する（初期化処理フロー）。ここで、作業ロボット１００を初期化するとは、例えば、作業ロボット１００のマニピュレータ１１０を既定の姿勢とする等である。なお、この処理の詳細は、図４を用いて後述する。
【００３８】
ステップＳ３０２において、中央制御装置１５０は、作業ロボット１００を移動するか否かを判定する（作業ロボット移動判定フロー）。中央制御装置１５０は、作業計画にもとづいて次の作業の作業エリア２３０を設定し、作業ロボット１００が作業エリア２３０以外にいる場合、作業ロボット１００を移動する必要があると判定し、作業ロボット１００が作業エリア２３０にいる場合、作業ロボット１００を移動する必要がないと判定する。作業ロボット１００を移動する必要があると判定した場合（Ｓ３０２・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ３０３に進む。作業ロボット１００を移動する必要がないと判定した場合（Ｓ３０２・Ｎｏ）、中央制御装置１５０の処理はステップＳ３０４に進む。
【００３９】
ステップＳ３０３において、中央制御装置１５０は、作業ロボット１００を移動させる（作業ロボット移動フロー）。例えば、作業ロボット１００が待機エリア２２０にいる場合、中央制御装置１５０は、作業ロボット１００を待機エリア２２０から移動エリア２４０を経由して作業計画にもとづいて設定された次の作業の作業エリア２３０に移動させる。なお、この処理の詳細は、図６を用いて後述する。
【００４０】
ステップＳ３０４において、中央制御装置１５０は、作業ロボット１００のマニピュレータ１１０による作業を行わせる（マニピュレータ作業フロー）。例えば、作業ロボット１００のマニピュレータ１１０は、作業計画に従って作業エリア２３０で作業対象物２３１に対して既定の作業を行う。なお、この処理の詳細は、図５Ａおよび図５Ｂを用いて後述する。
【００４１】
ステップＳ３０５において、中央制御装置１５０は、全ての作業が完了したか否かを判定する（全作業完了判定フロー）。例えば、作業計画に示された作業が全て完了した場合、全ての作業が完了したと判定する。全ての作業が完了したと判定した場合（Ｓ３０５・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ３０６に進む。全ての作業が完了していないと判定した場合（Ｓ３０５・Ｎｏ）、中央制御装置１５０の処理はステップＳ３０２に戻る。
【００４２】
ステップＳ３０６において、中央制御装置１５０は、作業ロボット１００の終了処理を行う（終了処理フロー）。ここで、終了処理とは、例えば、作業ロボット１００を待機エリア２２０に移動させる等の全作業の終了にともなう処理である。そして、一連の作業を終了する。
【００４３】
なお、中央制御装置１５０の表示部１５１には、その時点でどのフローを行っているかなどを表示して、オペレータに作業ロボット１００の動作状況を通知してもよい。
【００４４】
＜初期化処理フロー＞
次に、図３のステップＳ３０１に示す初期化処理フローについて、図４を用いて更に説明する。図４は、初期化処理フローにおける作業ロボットシステムＳの動作ルーチンの一例を示すフローチャートである。ここで、図４に示す初期化処理フローは、作業ロボット１００のマニピュレータ１１０を既定の姿勢とする動作のフローである。
【００４５】
ステップＳ４０１において、中央制御装置１５０は、作業ロボット１００の周囲環境を観測するか否かを判定する（環境観測判定フロー）。例えば、周囲環境が明らかで環境構造物２４１とマニピュレータ１１０との接触リスクが低い場合、周囲環境を観測しないと判定する。また、例えば、周囲環境が不確かで環境構造物２４１とマニピュレータ１１０との接触リスクがある場合、周囲環境を観測すると判定する。周囲環境を観測すると判定した場合（Ｓ４０１・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ４０２に進む。周囲環境を観測しないと判定した場合（Ｓ４０１・Ｎｏ）、中央制御装置１５０の処理はステップＳ４０３に進む。
【００４６】
ステップＳ４０２において、中央制御装置１５０は、観測装置１３０により作業ロボット１００の周囲環境を観測する（環境観測フロー）。作業ロボット１００の周囲環境を観測して環境構造物２４１の位置などを検知することで、環境構造物２４１とマニピュレータ１１０との接触リスクを低減する。
【００４７】
ステップＳ４０３において、中央制御装置１５０は、マニピュレータ１１０の姿勢を変化するための制御系を大力制御系に切り替える（大力制御投入フロー）。これにより、マニピュレータ制御部１４１は、アームアクチュエータ１１１ａを大力制御で制御する。なお、大力制御については後述する。
【００４８】
ステップＳ４０４において、中央制御装置１５０は、マニピュレータ１１０が環境構造物２４１等と接触しないよう最終姿勢および姿勢軌道を生成する（姿勢指令生成フロー）。
【００４９】
ステップＳ４０５において、中央制御装置１５０は、ステップＳ４０４で生成した姿勢指令に従って、マニピュレータ１１０の姿勢を変更し、最終姿勢を形成する（姿勢形成フロー）。なお、マニピュレータ１１０の姿勢を変更する際、マニピュレータ１１０（アームアクチュエータ１１１ａ）は大力制御で制御される。
【００５０】
ステップＳ４０６において、中央制御装置１５０は、マニピュレータ１１０の姿勢形成が完了しているか否か、換言すれば、マニピュレータ１１０の姿勢が姿勢指令の最終姿勢となっているか否かを判定する（姿勢形成完了判定フロー）。マニピュレータ１１０の姿勢形成が完了している場合（Ｓ４０６・Ｙｅｓ）、初期化処理フローを終了する。マニピュレータ１１０の姿勢形成が完了していない場合（Ｓ４０６・Ｎｏ）、中央制御装置１５０の処理は、ステップＳ４０１に戻り、改めて初期化を行う。
【００５１】
なお、中央制御装置１５０の表示部１５１には、その時点でどのフローを行っているか、ステップＳ４０４で生成された最終姿勢、ステップＳ４０６の判定結果などを表示して、オペレータに作業ロボット１００の初期化状況を通知してもよい。
【００５２】
（大力制御）
ここで、大力制御について説明する。本実施形態では、マニピュレータ１１０が大きな力を発生する制御系を大力制御とする。マニピュレータ１１０の姿勢を変更する場合、重力などに逆らいながらアームリンク１１１ｂおよびエンドエフェクタ１１２を駆動する。このため、マニピュレータ１１０の姿勢を変更する際、大力制御とすることにより、アームアクチュエータ１１１ａで大きな力を出力することで高速な姿勢変化が可能となる。なお、マニピュレータ１１０の制御系において各アクチュエータの力指令（電動モータであれば電流指令、圧力アクチュエータであれば圧力）に備える力リミッタは、それぞれのアクチュエータが発生できてかつ損傷しない大きな制限値を用いるのが一般的である。
【００５３】
＜マニピュレータ作業フロー＞
次に、図３のステップＳ３０４に示すマニピュレータ作業フローについて、図５Ａおよび図５Ｂを用いて更に説明する。図５Ａは、マニピュレータ作業フローにおける作業ロボットシステムＳの動作ルーチンの一例を示すフローチャートである。
【００５４】
ステップＳ５０１において、中央制御装置１５０は、作業を行うためのマニピュレータ１１０の最終姿勢を形成する姿勢形成処理を行う（姿勢形成処理フロー）。
【００５５】
ここで、ステップＳ５０１に示す姿勢形成処理フローについて、図５Ｂを用いて更に説明する。図５Ｂは、姿勢形成処理フローにおける作業ロボットシステムＳの動作ルーチンの一例を示すフローチャートである。
【００５６】
ステップＳ５１１において、中央制御装置１５０は、作業ロボット１００の周囲環境を観測するか否かを判定する（環境観測判定フロー）。周囲環境を観測すると判定した場合（Ｓ５１１・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ５１２に進む。周囲環境を観測しないと判定した場合（Ｓ５１１・Ｎｏ）、中央制御装置１５０の処理はステップＳ５１３に進む。
【００５７】
ステップＳ５１２において、中央制御装置１５０は、観測装置１３０により作業ロボット１００の周囲環境を観測する（環境観測フロー）。作業ロボット１００の周囲環境を観測して環境構造物２４１の位置などを検知することで、環境構造物２４１とマニピュレータ１１０との接触リスクを低減する。
【００５８】
ステップＳ５１３において、中央制御装置１５０は、現在のマニピュレータ１１０の制御系が大力制御であるか否かを判定する（大力制御系判定フロー）。マニピュレータ１１０の制御系が大力制御である場合、（Ｓ５１３・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ５１５に進む。マニピュレータ１１０の制御系が大力制御でない場合（Ｓ５１３・Ｎｏ）、中央制御装置１５０の処理はステップＳ５１４に進む。
【００５９】
ステップＳ５１４において、中央制御装置１５０は、マニピュレータ１１０の制御系を大力制御に切り替える（大力制御投入フロー）。これにより、マニピュレータ制御部１４１は、アームアクチュエータ１１１ａを大力制御で制御する。なお、マニピュレータ１１０の制御系を大力制御に切り替える際、大力制御の投入によってマニピュレータ１１０が意図せず動いて周囲環境と干渉することがないように、例えば、マニピュレータ１１０の姿勢を保持するように制御する。
【００６０】
ステップＳ５１５において、中央制御装置１５０は、マニピュレータ１１０が環境構造物２４１等と接触しないよう最終姿勢および姿勢軌道を生成する（姿勢指令生成フロー）。
【００６１】
ステップＳ５１６において、中央制御装置１５０は、マニピュレータ１１０の姿勢を変更するか否かを判定する（姿勢変更判定フロー）。マニピュレータ１１０の姿勢を変更すると判定した場合（Ｓ５１６・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ５１７に進む。マニピュレータ１１０の姿勢を変更しないと判定した場合（Ｓ５１６・Ｎｏ）、姿勢形成処理フローを終了する。
【００６２】
ステップＳ５１７において、中央制御装置１５０は、ステップＳ５１５で生成した姿勢指令に従って、マニピュレータ１１０の姿勢を変更し、最終姿勢を形成する（姿勢形成フロー）。なお、マニピュレータ１１０の姿勢を変更する際、マニピュレータ１１０（アームアクチュエータ１１１ａ）は大力制御で制御される。
【００６３】
ステップＳ５１８において、中央制御装置１５０は、マニピュレータ１１０の姿勢形成が完了しているか否か、換言すれば、マニピュレータ１１０の姿勢が姿勢指令の最終姿勢となっているか否かを判定する（姿勢形成完了判定フロー）。マニピュレータ１１０の姿勢形成が完了している場合（Ｓ５１８・Ｙｅｓ）、姿勢形成処理フローを終了する。マニピュレータ１１０の姿勢形成が完了していない場合（Ｓ５１８・Ｎｏ）、中央制御装置１５０の処理は、ステップＳ５１１に戻り、改めて姿勢形成処理を行う。
【００６４】
図５Ａに戻り、ステップＳ５０２において、中央制御装置１５０は、マニピュレータ１１０による計画された作業を開始して実行する（作業開始フロー）。なお、マニピュレータ１１０による作業を行う際、マニピュレータ１１０（アームアクチュエータ１１１ａ）は大力制御で制御される。
【００６５】
ステップＳ５０３において、中央制御装置１５０は、計画された作業が完了したか否かを判定する（作業完了判定フロー）。計画された作業が完了したと判定した場合（Ｓ５０３・Ｙｅｓ）、マニピュレータ作業フローを終了する。計画された作業が完了していないと判定した場合（Ｓ５０３・Ｎｏ）、中央制御装置１５０の処理はステップＳ５０１に戻る。
【００６６】
なお、中央制御装置１５０の表示部１５１には、その時点でどのフローを行っているか、ステップＳ５１５で生成された最終姿勢、ステップＳ５１８、ステップＳ５０３の判定結果などを表示して、オペレータに作業ロボット１００の作業状況を通知してもよい。
【００６７】
ここで、ステップＳ５１７において、マニピュレータ１１０の姿勢を変更する際、高速なマニピュレータ１１０の姿勢変化を可能とするため、大力制御で制御される。また、ステップＳ５０２において、マニピュレータ１１０による作業を行う際も、大力制御で制御される。例えば、エンドエフェクタ１１２の把持する治具で作業対象物２３１を加工する作業の場合、マニピュレータ１１０は作業対象物２３１から反力がある場合も姿勢を保たなければならない。つまり、大きな外力がマニピュレータ１１０に印加した場合にマニピュレータ１１０の姿勢を保持するには、大きな力を各アクチュエータが発生する必要があり、マニピュレータ１１０（アームアクチュエータ１１１ａ）は大力制御で制御される。
【００６８】
＜作業ロボット移動フロー＞
次に、図３のステップＳ３０３に示す作業ロボット移動フローについて、図６を用いて更に説明する。図６は、作業ロボット移動フローにおける作業ロボットシステムＳの動作ルーチンの一例を示すフローチャートである。
【００６９】
ステップＳ６０１において、中央制御装置１５０は、移動を行うためのマニピュレータ１１０の最終姿勢を形成する姿勢形成処理を行う（姿勢形成処理フロー）。なお、前記の図５ＡのステップＳ５０１に示す姿勢形成処理フローは、作業を行うためのマニピュレータ１１０の最終姿勢を形成するのに対し、図６のステップＳ６０１に示す姿勢形成処理フローは、移動を行うためのマニピュレータ１１０の最終姿勢を形成するものであり、最終姿勢が異なっているが、その他の処理は同様（図５Ｂ参照）であり、重複する説明を省略する。なお、ステップＳ６０１に示す姿勢形成処理フローにおいても、マニピュレータ１１０の姿勢を変更する際、マニピュレータ１１０（アームアクチュエータ１１１ａ）は大力制御で制御される。
【００７０】
ステップＳ６０２において、中央制御装置１５０は、現在のマニピュレータ１１０の制御系が小力制御であるか否かを判定する（小力制御系判定フロー）。マニピュレータ１１０の制御系が小力制御である場合、（Ｓ６０２・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ６０４に進む。マニピュレータ１１０の制御系が小力制御でない場合（Ｓ６０２・Ｎｏ）、中央制御装置１５０の処理はステップＳ６０３に進む。なお、小力制御については後述する。
【００７１】
ステップＳ６０３において、中央制御装置１５０は、マニピュレータ１１０の制御系を小力制御に切り替える（小力制御投入フロー）。これにより、マニピュレータ制御部１４１は、アームアクチュエータ１１１ａを小力制御で制御する。
【００７２】
ステップＳ６０４において、中央制御装置１５０は、作業ロボット１００の移動を開始する（ロボット移動開始フロー）。中央制御装置１５０は、作業ロボット１００を現在の位置から移動エリア２４０を経由して作業計画にもとづいて設定された次の作業の作業エリア２３０まで移動させる。なお、作業ロボット１００の移動の際、マニピュレータ１１０（アームアクチュエータ１１１ａ）は小力制御で制御される。
【００７３】
ステップＳ６０５において、中央制御装置１５０は、マニピュレータ１１０の姿勢が既定の範囲内の姿勢となっているか否かを判定する（姿勢範囲判定フロー）。ここで、マニピュレータ１１０の既定の姿勢の範囲は、例えば、マニピュレータ１１０が損傷することなく有効に動作できる姿勢範囲とすればよい。マニピュレータ１１０の姿勢が既定の範囲内の姿勢となっている場合（Ｓ６０５・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ６０７に進む。マニピュレータ１１０の姿勢が既定の範囲を超えた姿勢となっている場合（Ｓ６０５・Ｎｏ）、中央制御装置１５０の処理はステップＳ６０６に進む。
【００７４】
ステップＳ６０６において、中央制御装置１５０は、作業ロボット１００の移動を停止する（ロボット移動停止フロー）。例えば、作業ロボット１００の移動中に、マニピュレータ１１０が外力を受け既定の範囲を超えて姿勢を大きく変更した場合、作業ロボット１００の移動を停止することにより、マニピュレータ１１０が損傷することを防止する。なお、中央制御装置１５０の表示部１５１には、マニピュレータ１１０の姿勢異常を通知する。そして、中央制御装置１５０の処理はステップＳ６０１に戻り、作業ロボット移動フローを始めからやり直す。
【００７５】
ステップＳ６０７において、中央制御装置１５０は、作業ロボット１００が次の作業の作業エリア２３０まで移動が完了したか否かを判定する（移動完了判定フロー）。作業ロボット１００の移動が完了していない場合（Ｓ６０７・Ｎｏ）、中央制御装置１５０の処理はステップＳ６０５に戻る。作業ロボット１００の移動が完了した場合（Ｓ６０７・Ｙｅｓ）、中央制御装置１５０の処理はステップＳ６０８に進む。
【００７６】
ステップＳ６０８において、中央制御装置１５０は、作業ロボット１００の移動を停止する（ロボット移動停止フロー）。そして、作業ロボット移動フローを終了する。
【００７７】
なお、中央制御装置１５０の表示部１５１には、その時点でどのフローを行っているか、作業ロボット１００の位置やマニピュレータ１１０の姿勢、環境構造物２４１との接触の有無、推定する接触力などを表示して、オペレータに作業ロボット１００の移動状況を通知してもよい。
【００７８】
ここで、ステップＳ６０４で作業ロボット１００の移動を開始した後、ステップＳ６０８で作業ロボット１００の移動を停止するまでの間、ステップＳ６０５に示す姿勢範囲判定によって、マニピュレータ１１０の姿勢が既定の範囲を超えたと判定しない限りは、マニピュレータ１１０と環境構造物２４１との接触などが発生した場合も、作業ロボット１００は移動を継続する。これにより、構造物と接触した際作業ロボットの移動を停止させる場合（特許文献２参照）と比較して、本実施形態に係るマニピュレータ１１０を備える作業ロボットシステムＳは作業効率の低下を抑制することができる。
【００７９】
（小力制御）
ここで、小力制御について説明する。本実施形態では、マニピュレータ１１０が既定の姿勢に復元するように制御する制御系を小力制御とする。小力制御における力リミッタの制限値は、大力制御における力リミッタの制限値よりも小さく設定されている。このため、小力制御においては、マニピュレータ１１０に外力が加わると、大力制御の場合と比較して小さな外力でマニピュレータ１１０の姿勢の変形を開始する。そして、外力が解除されると、マニピュレータ１１０は既定の姿勢に復元する。
【００８０】
ここで、ステップＳ６０１において、マニピュレータ１１０の姿勢を形成する際、高速なマニピュレータ１１０の姿勢変化を可能とするため、大力制御で制御される。一方、ステップＳ６０４で作業ロボット１００の移動を開始した後、ステップＳ６０８で作業ロボット１００の移動を停止するまでの間、小力制御で制御される。マニピュレータ１１０と環境構造物２４１との接触が発生した場合、大力制御の場合と比較して小さな外力でマニピュレータ１１０の姿勢の変形を開始する。このため、接触力をちいさくすることができ、接触による環境構造物２４１やマニピュレータ１１０自身の損傷リスクを低減することができる。
【００８１】
また、例えば、エンドエフェクタ１１２が工具など作業対象物２３１を把持した状態で、作業ロボット１１０が移動する場合、移動エリア２４０内で環境構造物２４１と接触した場合も作業対象物２３１を落下させてはならならず、エンドエフェクタ１１２（エンドエフェクタ駆動部）は移動中も能動的に動作する必要がある。一方、アーム部１１１は、環境構造物２４１との接触により姿勢変化してもよく、アーム部１１１（アームアクチュエータ１１１ａ）能動的に動作する必要はない。このような作業ロボット１００の移動時は、アーム部１１１（アームアクチュエータ１１１ａ）を小力制御とするのに対して、エンドエフェクタ１１２（エンドエフェクタ駆動部）を大力制御とする。この様に、マニピュレータ１１０を構成する各アクチュエータは、それぞれに能動的に動作する必要がある動作時と、能動的に動作する必要はない待機時が計画されており、この計画に基づいてアクチュエータ毎に制御（大力制御／小力制御）を切り替える。
【００８２】
なお、能動的に動作する必要がある動作時とは、マニピュレータ１１０のアーム部１１１においては、マニピュレータ１１０の姿勢を変更する際、および、マニピュレータ１１０による作業を行う際であり、アームアクチュエータ１１１ａは大力制御で制御される。また、能動的に動作する必要はない待機時とは、作業ロボット１００が移動する際であり、アームアクチュエータ１１１ａは小力制御で制御される。
【００８３】
またここで、作業計画の各状態においてマニピュレータ１１０の制御系を大力制御（動作時）とするか、小力制御（待機時）とするかを、オペレータもしくは中央制御装置１５０が計画してもよい。
【００８４】
≪動作例≫
前述のように、本実施形態に係るマニピュレータ１１０を備える作業ロボットシステムＳは、マニピュレータ１１０を搭載した作業ロボット１００が移動する際、マニピュレータ１１０（アームアクチュエータ１１１ａ）の制御系は小力制御で制御される（図６参照）。作業ロボット１００が移動する際、マニピュレータ１１０（アームアクチュエータ１１１ａ）の制御系が小力制御で制御されることによる作用効果について、大力制御で制御される場合と比較しつつ説明する。
【００８５】
＜マニピュレータと環境構造物との接触＞
まず、マニピュレータ１１０を搭載した作業ロボット１００が移動する際、マニピュレータ１１０が環境構造物２４１と接触する場面について、図７を用いて説明する。図７は、移動エリア２４０における作業ロボット１００と環境構造物２４１との相対的な状態を示す模式図である。
【００８６】
図７（ａ）は、作業ロボット１００と未知の環境構造物２４１が接近している未接触状態を示す図である。作業ロボット１００は移動台車１２０により、図中右方向へ移動している。進行方向には、未知の環境構造物２４１があり、移動により接近する。ここで、未知の環境構造物２４１とは、オペレータが把握しておらず、事前に接触を回避することが困難な環境構造物のことである。
【００８７】
図７（ｂ）は、作業ロボット１００と環境構造物２４１の接触が始まる接触開始状態を示す図である。作業ロボット１００の移動により、マニピュレータ１１０が環境構造物２４１と接触し、マニピュレータ１１０および環境構造物２４１には互いに接触力が発生して損傷リスクが増大する。
【００８８】
図７（ｃ）は、作業ロボット１００と環境構造物２４１の接触が継続している接触状態を示す図である。マニピュレータ１１０と環境構造物２４１との接触力によって、マニピュレータ１１０の姿勢が変化する。また、マニピュレータ１１０と環境構造物２４１との接触によって、マニピュレータ１１０および環境構造物２４１には接触力が発生して損傷リスクが増大する。
【００８９】
ここで、小力制御は接触力を制限する力指令リミッタ（図１０を用いて後述する。）をもち、大力制御はマニピュレータ１１０の損傷を防ぐための力指令リミッタ（図８を用いて後述する。）をもつ。そのため、いずれの制御においても、環境構造物２４１からの反力がマニピュレータ１１０の発生力より大きい場合はマニピュレータ１１０の姿勢が変化して図７（ｃ）に示す状態となる。
【００９０】
図７（ｄ）は、作業ロボット１００の移動により環境構造物２４１を通過して接触から開放された接触開放状態を示す図である。接触からの開放により、マニピュレータ１１０は環境構造物２４１からの接触力がなくなり、環境構造物２４１はマニピュレータ１１０からの接触力がなくなる。図７（ｄ）の例では、接触力がなくなったことで、マニピュレータ１１０が当初の姿勢に復帰する。
【００９１】
＜大力制御のブロック線図＞
次に、大力制御時におけるアームアクチュエータ１１１ａの制御について、図８を用いて説明する。図８は、大力制御におけるアームアクチュエータ１１１ａの制御構造の一例を示すブロック線図である。なお、位置制御器８０１、力外乱オブザーバ８０２、大力リミッタ８０３は、マニピュレータ制御部１４１に構成される。
【００９２】
位置制御器８０１は、アームアクチュエータ角度指令θｒとアームアクチュエータ実角度θの差分を入力として、アームアクチュエータ１１１ａを駆動する駆動力指令Ｕｒを出力する。
【００９３】
力外乱オブザーバ８０２は、アームアクチュエータ１１１ａに印加する力指令ｕとアームアクチュエータ実角度θにもとづいて、アームアクチュエータ１１１ａに加わる外乱（外力外乱ｄ、重力外乱ｄｕ）の力外乱推定値（ｄ＋ｄｕ）＊を出力する。
【００９４】
アームアクチュエータ１１１ａに印加する力指令ｕは、駆動力指令Ｕｒと力外乱推定値（ｄ＋ｄｕ）＊の差分ｕｒに対して、大力リミッタ８０３で制限を掛けて生成される。ここで、大力リミッタ８０３は、アームアクチュエータ１１１ａに非常に大きな力が印加されることによる損傷を回避するために備えられる。
【００９５】
アームアクチュエータ１１１ａに印加された力指令ｕに対して、接触力などの外力外乱ｄとマニピュレータ１１０の姿勢ψにより変わる重力外乱ｄｕが加わったものがアームアクチュエータ１１１ａの駆動力Ｕとなる。アームアクチュエータ１１１ａは、駆動力Ｕに従ってアームアクチュエータ実角度θを変えてマニピュレータ１１０の姿勢ψを変更する。
【００９６】
ここで、大力リミッタ８０３による制限が掛からない状態において、力外乱推定値（ｄ＋ｄｕ）＊が、実際の外力外乱ｄと重力外乱ｄｕの和と等しい場合には、駆動力Ｕは駆動力指令Ｕｒと同一となり、位置制御器８０１によってアームアクチュエータ１１１ａの駆動力指令Ｕｒを生成する構造となっている。
【００９７】
＜大力制御の時間応答図＞
次に、大力制御のまま作業ロボット１００が移動し、マニピュレータ１１０が環境構造物２４１と接触した場合について、図９を用いて説明する。図９は、大力制御時にマニピュレータ１１０と環境構造物２４１が接触した場合における時間応答図であり、（ａ）はアームアクチュエータ実角度θの時間応答を示すグラフであり、（ｂ）はマニピュレータ１１０と環境構造物２４１の接触力の時間応答を示すグラフである。なお、図９は、本実施形態の課題を説明する時間応答図の一例である。
【００９８】
まず、作業ロボット１００が移動し、マニピュレータ１１０と環境構造物２４１とが未接触状態９０１において、マニピュレータは未知の環境構造物２４１と接触することなく近づき、図９（ｂ）に示すように接触力は０である。また、図９（ａ）に示すように符号９０７で示すアームアクチュエータ実角度θは符号９０６で示すアームアクチュエータ角度指令θｒ（ここでは２０°とする。）に追従している。
【００９９】
マニピュレータ１１０と環境構造物２４１とが接触を開始する接触開始状態９０２において、マニピュレータ１１０が環境構造物２４１と接触して接触力９０８が発生する。この際、作業ロボット１１０の移動を止めることなく移動し続けると、接触状態９０３の間はマニピュレータ１１０と環境構造物２４１が断続的に接触して接触力９０８を生じて大力リミッタ８０３で制限された力指令ｕにより発生力が不足してアームアクチュエータ実角度θはアームアクチュエータ角度指令θｒを保持できずマニピュレータ１１０の姿勢が変化する。
【０１００】
時間９０４で環境構造物２４１が通過すると、マニピュレータ１１０と環境構造物２４１の接触は開放されて接触開放状態９０５となる。接触開放状態９０５では、接触力は０となる。また、アームアクチュエータ実角度θはアームアクチュエータ角度指令θｒに追従してマニピュレータ１１０の姿勢を復帰する。
【０１０１】
ここで、接触状態９０３におけるマニピュレータ１１０と環境構造物２４１の接触力９０８は、大力リミッタ８０３の制限値によって決まり、一般に大きな力となる。ちなみに、図９の例では、大力リミッタ８０３での制限値を５００Ｎｍとし、アーム長は１ｍとして、最大接触力は５００Ｎとしている。なお、接触時のマニピュレータ１１０の姿勢により、発生する接触力９０８は最大接触力よりも小さくなる。
【０１０２】
また、マニピュレータ１１０がブレーキ等で姿勢を保持している場合、接触力９０８はブレーキ力によって決まる大きな力となる。そのため、接触開始状態９０２で接触を感知した場合に、特許文献２のように作業ロボット１００の移動を停止するといった方法がよく取られているが、これは作業ロボット１００の作業効率を低下させる。
【０１０３】
＜小力制御のブロック線図＞
次に、小力制御時におけるアームアクチュエータ１１１ａの制御について、図１０を用いて説明する。図１０は、小力制御におけるアームアクチュエータ１１１ａの制御構造の一例を示すブロック線図である。なお、位置制御器８０１、力外乱オブザーバ８０２、大力リミッタ８０３、接触力リミッタ１００１、重力外乱エスティメータ１００２は、マニピュレータ制御部１４１に構成される。
【０１０４】
位置制御器８０１は、図８に示す大力制御の場合と同様に、アームアクチュエータ角度指令θｒとアームアクチュエータ実角度θの差分を入力として、アームアクチュエータ１１１ａを駆動する駆動力指令Ｕｒを出力する。
【０１０５】
力外乱オブザーバ８０２は、図８に示す大力制御の場合と同様に、アームアクチュエータ１１１ａに印加する力指令ｕとアームアクチュエータ実角度θにもとづいて、アームアクチュエータ１１１ａに加わる外乱（外力外乱ｄ、重力外乱ｄｕ）の力外乱推定値（ｄ＋ｄｕ）＊を出力する。
【０１０６】
重力外乱エスティメータ１００２は、マニピュレータ１１０のモデルやその時点のマニピュレータ１１０の姿勢ψなどを用いて、アームアクチュエータ１１１ａにかかる重力外乱推定値ｄｕ＊を推定する。
【０１０７】
接触力リミッタ１００１は、駆動力指令Ｕｒと力外乱推定値（ｄ＋ｄｕ）＊の差分ｕｒに対して、重力外乱推定値ｄｕ＊を加算することで接触力を制限し、改めて重力外乱推定値ｄｕ＊を減算して外力外乱がない場合にその時点の姿勢を保持するための力指令−ｄｕを補償する。ここで、接触力リミッタ１００１の制限値は大力リミッタ８０３の制限値よりも小さく設定する。
【０１０８】
接触力リミッタ１００１について、図１１を用いてさらに説明する。図１１は、接触力リミッタ１００１における接触力の制限を説明する図であり、（ａ）は接触力リミッタ１００１を示し、（ｂ）は接触力リミッタ１００１に等価な等価接触力リミッタ１００１Ａの構成を示す。
【０１０９】
ここで、マニピュレータ１１０と環境構造物２４１との接触力は、アームアクチュエータ１１１ａの発生トルクである力指令ｕから、重力によるトルクである重力外乱ｄｕを足したトルクにより、アームリンク１１１ｂが環境構造物２４１を押すことで発生する。即ち、接触力トルクは、ｕ＋ｄｕとなる。
【０１１０】
図１１（ａ）に示すように、接触力リミッタ１００１は、リミット値をＬｓとすると、力指令ｕの指令値ｕｒと重力外乱ｄｕの推定値ｄｕ＊を用いて接触力トルクを最大Ｌｓに制限する。更に、接触力リミッタ１００１の出力に重力外乱の推定値ｄｕ＊を減ずることで重力を補償してその時点の姿勢を保持する。
【０１１１】
図１１（ａ）の小力制御に用いられる接触力リミッタ１００１を含むブロックは、等価的に図１１（ｂ）の等価接触力リミッタ１００１Ａの様に現わせる。つまり、小力制御は一例として、重力を補償してその時点の姿勢を保持するための力指令−ｄｕ（もしくはその推定値−ｄｕ＊）を中央値としたリミッタにより実現可能である。ここで、ｄｕは、マニピュレータ１１０の姿勢ψにより変わる重力外乱ｄｕであるから、接触力リミッタ１００１（等価接触力リミッタ１００１Ａ）は、マニピュレータ１１０の姿勢ψから求めた値を中央値として、制限している。
【０１１２】
図１０に戻り、小力制御における大力リミッタ８０３は、図８に示す大力制御の場合の大力リミッタ８０３と比較して、入力が異なっている点を除けば、同様である。即ち、小力制御における大力リミッタ８０３は、接触力リミッタ１００１の出力と重力外乱推定値ｄｕ＊との差分より生成された力指令に制限をかけて力指令ｕを生成する。
【０１１３】
アームアクチュエータ１１１ａに印加された力指令ｕに対して、接触力などの外力外乱ｄとマニピュレータ１１０の姿勢ψにより変わる重力外乱ｄｕが加わったものがアームアクチュエータ１１１ａの駆動力Ｕとなる。アームアクチュエータ１１１ａは、駆動力Ｕに従ってアームアクチュエータ実角度θを変えてマニピュレータ１１０の姿勢ψを変更する。
【０１１４】
＜小力制御の時間応答図＞
次に、作業ロボット１００が移動する際、マニピュレータ１１０を小力制御として、マニピュレータ１１０が環境構造物２４１と接触した場合について、図１２を用いて説明する。図１２は、小力制御時にマニピュレータ１１０と環境構造物２４１が接触した場合における時間応答図であり、（ａ）はアームアクチュエータ実角度θの時間応答を示すグラフであり、（ｂ）はマニピュレータ１１０と環境構造物２４１の接触力の時間応答を示すグラフである。なお、図１２は、本実施形態の効果を説明する時間応答図の一例である。
【０１１５】
まず、作業ロボット１００が移動し、未接触状態９０１において、マニピュレータは未知の環境構造物２４１と接触することなく近づき、図１２（ｂ）に示すように接触力は０である。また、図１２（ａ）に示すように符号１２０７で示すアームアクチュエータ実角度θは符号９０６で示すアームアクチュエータ角度指令θｒ（ここでは２０°とする。）に追従している。
【０１１６】
接触開始状態９０２において、マニピュレータ１１０が環境構造物２４１と接触して接触力９０８が発生する。この際、作業ロボット１１０の移動を止めることなく移動し続けると、接触状態９０３の間はマニピュレータ１１０と環境構造物２４１が断続的に接触して接触力１２０８を生じて接触力リミッタ１００１で接触力１２０８を制限したことで、制限された力指令ｕにより発生力が不足してアームアクチュエータ実角度θはアームアクチュエータ角度指令θｒを保持できずマニピュレータ１１０の姿勢が環境構造物２４１の外形を沿うように変化する。
【０１１７】
時間９０４で環境構造物２４１が通過すると、マニピュレータ１１０と環境構造物２４１の接触は開放されて接触開放状態９０５となる。接触開放状態９０５では、接触力は０となる。また、アームアクチュエータ実角度θはアームアクチュエータ角度指令θｒに追従してマニピュレータ１１０の姿勢を復帰する。
【０１１８】
ここで、接触状態９０３における小力制御での接触力１１０８は、接触力リミッタ１００１により接触力が制限されたことで、大力制御での接触力９０８より小さく制限される。ちなみに、図１２の例では、接触力リミッタ１００１での制限値を１０Ｎｍとし、アーム長は１ｍとして、最大接触力は１０Ｎとしている。なお、接触時のマニピュレータ１１０の姿勢により、発生する接触力９０８は最大接触力よりも小さくなる。
【０１１９】
また、接触力１１０８がない状態（未接触状態９０１、接触開放状態９０５）では、アームアクチュエータ実角度θはアームアクチュエータ角度指令θｒに追従してマニピュレータ１１０の姿勢を保持している。
【０１２０】
これにより、アームアクチュエータ１１１ａの制御系は、その機能を損なうことなく接触力１１０８を低減して、マニピュレータ１１０および環境構造物２４１の損傷リスクを低減する。またこれにより、マニピュレータ１１０と環境構造物２４１が接触した際も、接触力１１０８が小さいので接触したまま作業ロボット１１０を移動可能であり、作業ロボット１１０の作業効率低下を抑制できる。
【０１２１】
仮に、大力制御において大力リミッタ８０３の制限値を小さく設定することにより接触力を低減しようとすると、マニピュレータ１１０が自重（重力外乱ｄｕ）により、マニピュレータ１１０の姿勢が変形するおそれがある。これに対し、図１１に示すように、小力制御の接触力リミッタ１００１は、外力外乱がない場合にその時点の姿勢を保持するための力指令−ｄｕを補償する。即ち、接触力リミッタ１００１の制限値を小さく設定しても、姿勢を保持するための力指令−ｄｕは補償されているので、マニピュレータ１１０が自重により変形することを防止できる。
【０１２２】
≪変形例≫
なお、本実施形態に係るマニピュレータ１１０を備える作業ロボットシステムＳは、上記実施形態の構成に限定されるものではなく、発明の趣旨を逸脱しない範囲内で種々の変更が可能である。
【０１２３】
マニピュレータ１１０のアーム部１１１は、１つのアームアクチュエータ１１１ａと、１つのアームリンク１１１ｂと、を有する１リンクアームであるものとして説明したか、これに限られるものではなく、複数のアームアクチュエータ１１１ａと、複数のアームリンク１１１ｂとを有する多リンクアームに対しても、アームのモデルや隣接するアームリンク１１１ｂ間の相対角度などを用いることにより適用できる。
【０１２４】
また、本実施形態に係るマニピュレータ１１０は、移動台車１２０に搭載され、移動台車１２０が移動することにより、移動台車１２０に搭載されたマニピュレータ１１０の周囲環境が動的に変化することに対して、マニピュレータ１１０および環境構造物２４１との接触の際の損傷リスクを低減するものである。このため、移動しないマニピュレータ１１０であって、周囲環境が動的に変化する環境（例えば、ベルトコンベアによって対象物（環境構造物に相当）が移動する環境）においても適用することができる。特に、マニピュレータ１１０が作業する場合（動作時）は大力制御を行い、作業しない場合（待機時）は小力制御を行うなどの本実施形態に係るマニピュレータ１１０を周囲環境が動的に変化する環境において用いることにより、動的に変化する環境を停止させることなく（例えば、ベルトコンベアを停止させる等）接触力を低減することができる。
【符号の説明】
【０１２５】
Ｓ            作業ロボットシステム
１００        作業ロボット
１１０        マニピュレータ
１１１        アーム部
１１１ａ      アームアクチュエータ
１１１ｂ      アームリンク（機構部）
１１２        エンドエフェクタ
１２０        移動台車
１３０        観測装置
１４０        制御装置（制御部）
１４１        マニピュレータ制御部（制御部）
１４２        移動台車制御部
１５０        中央制御装置（制御部）
１５１        表示部
１５２        入力部
１５３        演算部
１６０        通信ケーブル
２１０        オペレーションエリア
２２０        待機エリア
２３０        作業エリア
２３１        作業対象物
２４０        移動エリア
２４１        環境構造物
８０１        位置制御器
８０２        力外乱オブザーバ
８０３        大力リミッタ
１００１      接触力リミッタ
１００１Ａ    等価接触力リミッタ
１００２      重力外乱エスティメータ
【図１】
0006670147.tif 000002
【図２】
0006670147.tif 000003
【図３】
0006670147.tif 000004
【図４】
0006670147.tif 000005
【図５Ａ】
0006670147.tif 000006
【図５Ｂ】
0006670147.tif 000007
【図６】
0006670147.tif 000008
【図７】
0006670147.tif 000009
【図８】
0006670147.tif 000010
【図９】
0006670147.tif 000011
【図１０】
0006670147.tif 000012
【図１１】
0006670147.tif 000013
【図１２】
0006670147.tif 000014