(57)【要約】【課題】人や周りの物体との接触や衝突に対して安全性の高いロボットに係る技術を提供すること。【解決手段】  回転移動及び直線移動が可能な移動ロボットの安全装置において、関節駆動用のアクチュエータからの出力軸でのトルクを検出するための軸トルク検出センサを各関節に組み込んだ多関節構造を有するアーム１０１と、前記各軸トルク検出センサからの出力の変化に基づいて前記アームが周囲と接触或いは衝突したかどうかを判定し、かつ該判定結果に基づいて各部の動作を制御する制御部１０５とを具備し、前記アームが周囲との接触・衝突検出装置としての機能を備えた。【選択図】      図１
2008229800.tif 000002
【特許請求の範囲】
【請求項１】
関節駆動用のアクチュエータからの出力軸でのトルクを検出するための軸トルク検出センサを各関節に組み込んだ多関節構造を有するアームと、
前記各軸トルク検出センサからの出力の変化に基づいて前記アームが周囲と接触或いは衝突したかどうかを判定し、かつ該判定結果に基づいて各部の動作を制御する制御部とを具備したことを特徴とする移動ロボット。
【請求項２】
請求項１に記載の移動ロボットにおいて、前記制御部は、複数の動作モードと、前記アームの接触や衝突を検出するために前記各動作モードに対応して設定されたトルクの変化量の判断基準値と、前記各動作モードに対応して設定された接触或いは衝突発生時における処理方法とが定義された動作モード情報部を備えたことを特徴とする移動ロボット。
【請求項３】
請求項１に記載の移動ロボットにおいて、前記制御手段は、前記軸トルク検出センサのトルクの変化量を検出する検出部と、前記判断基準値と前記変化量とを比較して、接触や衝突があるものと判断された時に、現在の動作モードに対応して設定された前記接触或いは衝突発生時における処理方法を指示する指示部とを更に具備することを特徴とする移動ロボット。
【請求項４】
請求項２または請求項３に記載の移動ロボットにおいて、前記制御部は、前記動作モードのうち移動動作においても前記作業用アームを所定の姿勢でサーボロック状態に保持することを特徴とする移動ロボット。
【請求項５】
請求項１から請求項４のいずれか１項に記載の移動ロボットにおいて、前記制御部は、前記各軸トルク検出センサからの出力の変化として、パルス状あるいはステップ状の変化が検出された場合に、接触或いは衝突が生じたものと判断することを特徴とする移動ロボット。
【請求項６】
多関節構造を有するアームの各関節に組み込まれた軸トルク検出センサを用いて関節駆動用のアクチュエータからの出力軸でのトルクを検出し、
前記各軸トルク検出センサからの出力の変化に基づいて前記アームが周囲と接触或いは衝突したかどうかを判定し、かつ該判定結果に基づいて各部の動作を制御することを特徴とする移動ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業をするためのアームを搭載した移動ロボットに関し、特に、アーム作業や移動動作時におけるロボットの安全に係る技術に関する。
【背景技術】
【０００２】
近年、アームを搭載した作業用の移動ロボットとして、従来の産業用だけでなく、周囲に人が存在するような環境、すなわち公共の施設内や家庭内での作業を行うことを想定したロボットが開発されている。
【０００３】
このようなアーム搭載移動ロボットにおいては、その搭載する多関節構造の作業用アームをはじめロボット本体も含めて、移動を伴う作業動作時には、周りにいる人や物など環境との接触や衝突を素早く検知して動作停止などの制御を行い、人や物に危害を加えないように確実な安全対策を施すことが重要である。
【０００４】
そこで、多関節アーム（マニピュレータ）においては、周囲の環境との接触や衝突を検出して回避するために、例えば、多関節アームの表面に外力検出用の接触センサを設けたり、さらに手首部に設けた力センサも併せてインピーダンス制御で回避動作をおこなわせる方法が取られている（特許文献１参照）。また、多関節アーム根本部側のベース部に力検出器を設け、アーム自身の動作で発生する外力相当分を推定算出して差し引くことで、接触力を検出するものもある（特許文献２参照）。あるいは、アームの制御でモデルに基づくシミュレーション結果の状態量とトルク指令値の差から接触の有無を検出する方法も提案されている（特許文献３参照）。また、アーム自体を力制御で動作させるために、軸トルク検出センサが用いられトルクフィードバック制御を行う技術も提案されている（特許文献４参照）。
【０００５】
しかしながら、特許文献１から特許文献４においては、ロボットとして対象としているのが多関節アームのみであり、アームを搭載したロボット自体が移動を伴っての作業などを含めた検討はなされていない。したがって、ロボットの作業もアームのみを用いたハンドリング作業に限られており、指定した位置への移動動作や、自身の移動動作を伴った特定対象へのアーム手先の位置決め動作、あるいは待機中の状態など様々な作業状態（作業動作モード）に応じて、周囲の人や物との接触や衝突等を検知した時にその対処方法を切り換えて、より効率よくロボットを稼働させ運用するといったことは全く考慮されていなかった。
【０００６】
更に、特許文献１から特許文献３では人や物体など周囲との接触や衝突の検出方法自体も、センサの取り付けが大変であったり、計算が複雑で容易に実装しづらいとか、検出精度が良くないなどの問題があった。
【０００７】
具体的には、特許文献１では、アーム表面への接触センサ取付けでは、全領域に対応するにはセンサの取付け方法や配置が難しくなり、アレイ状センサにおいては信号処理自体も複雑で演算時間がかかる。また、特許文献２のように、手先に加速度センサを取り付けたり、あるいは手首部に多軸力センサを取り付けた場合には、多関節アームの剛性に起因する振動（固有振動数は高くて十数Ｈｚ）と接触や衝突によるものとの区別が困難で、さらに手首部に設けた多軸力センサではアームの根本側での接触等の検出ができないという問題もある。特許文献３のように、モータ電流に基づいて出力トルクを検出する場合には、モータと出力軸間に設けられた減速伝達要素の影響を受け応答性が良くなく、電流検出自体の精度もノイズが大きく良くないという問題がある。
【特許文献１】特開２００１−３８６６４号公報
【特許文献２】特開２００６−２１２８７号公報
【特許文献３】特開２００４−３６４３９６号公報
【特許文献４】特開平８−１１８２７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、人や周りの物体との接触や衝突に対して安全性の高いロボットに係る技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一局面に係る移動ロボットは、関節駆動用のアクチュエータからの出力軸でのトルクを検出するための軸トルク検出センサを各関節に組み込んだ多関節構造を有するアームと、前記各軸トルク検出センサからの出力の変化に基づいて前記アームが周囲と接触或いは衝突したかどうかを判定し、かつ該判定結果に基づいて各部の動作を制御する制御部とを具備したことを特徴とする。本発明は、装置に限らず、装置で実現される方法やプログラムの発明としても成立する。
【発明の効果】
【００１０】
本発明によれば、人や周りの物体との接触や衝突に対して安全性の非常に高いロボットを提供することができる。
【発明を実施するための最良の形態】
【００１１】
図面を参照して本発明の実施の形態を説明する。図１は、本発明の一実施形態に係るアーム搭載移動ロボットの制御システムを含めた全体構成を示すブロック図である。
【００１２】
アーム搭載ロボット１００は、その基本構成として、作業用の多関節構造を有する先端に物体のハンドリングを可能とする把持機構１０２を備えた双腕の多関節作業アーム（以下、「アーム」と称する）１０１と、車輪駆動による移動機構部１０３と、本体上部に取り付けられた視覚カメラ搭載部１０４と、本体内搭載の図示しないバッテリ稼働による搭載制御コントローラ部１０５とを備えている。ここで、アーム１０１には、各関節に対し、その関節駆動のためのアクチュエータからの伝達機構を介した出力軸に生じるトルクを検出するための軸トルク検出センサ１０６が各々組み込まれており、搭載制御コントローラ部１０５にアンプ等の信号処理回路を介してトルクセンサ信号として取り込まれる。出力軸トルク検出センサとしては、例えば、出力軸に蒸着させた磁歪材とその検出コイルが設けられた磁歪式トルクセンサや、ブリッジを組む構成で出力軸のせん断応力を検出するよう直接貼り付けて用いる歪みセンサなどが用いられる。なお、これらのセンサは、公知であるので、図示及び説明を省略する。
【００１３】
図１中左側の一点鎖線で示した部分は、本体に搭載される搭載制御コントローラ部１０５の概略構成を示すブロック図であり、ロボット稼働時の作業命令に対する動作処理の流れも示している。
【００１４】
人から、あるいはプログラムとして与えられたロボットへの一連動作の作業命令２０１が入力されると、ロボット動作計画部２０２で各作業プロセスに必要となる動作手順に分解される。ここで、作業命令２０１は、パネル表示されたものから入力したり、音声で指示しても良く、また、入力装置は、ロボットに装着されていても、有線或いは無線で通信可能になっていても良い。動作手順・動作コマンド生成部２０３は、ロボット動作計画部２０２で作成された動作手順に従って、該動作手順を、順次、アーム１０１や移動機構部１０３など各駆動部に対する動作コマンドレベルの命令列に展開する。軌道・目標値生成部２０４は、生成された各動作コマンドに応じて、アーム１０１や移動車輪、カメラ頭部等の各駆動部、関節部に対する各目標軌道、および目標値を算出し、各関節や車輪の駆動に対する目標指令値を出力する。各軸モータ駆動サーボ制御部２０５は、軌道・目標値生成部２０４からの目標指令値に従って、各部が作業に応じた動作を実行するように制御する。
【００１５】
アーム１０１の各関節出力軸に組み込まれた軸トルク検出センサ１０６からの信号は、アンプやフィルタ処理を含めた信号処理回路部２０６を介してディジタルの検出値として安全制御装置２１１内に取り込まれる。各軸トルク変化量検出部２０７は、各軸トルク検出センサの出力値からサンプリング毎の前回との差分変化量を求めるなどの演算処理を行うことにより各センサ出力値の時間的な変化を検出する。動作コマンド生成部２０３は、順次作業に即して出力され実行される動作コマンドに応じた動作モード情報を、動作モード情報部２０８に実行作業の情報と共に送る。
【００１６】
動作モード情報部２０８には、様々な作業命令に対してそれに含まれる動作モード毎に定義された各軸トルク検出センサからの出力値に対する周囲との接触や衝突を検出・判断するための検出基準値が設定されている。これにより、動作モード情報部２０８で、現在実行中の動作モードに対応した検出基準値と各軸トルク変化量検出部２０７からの各出力値との比較処理が行われて、接触や衝突と検出された時には、接触や衝突対処指令生成部２１０から定義された動作モードに応じた各駆動部への対処制御方法に基づいて、軸ごとに各軸モータ駆動サーボ制御部２０５にモータ駆動停止やサーボロックのコマンドを送ったり、場合によっては軌道・目標値生成部２０４に目標軌道や目標値を修正するコマンドを送って、接触や衝突に対する現状の動作に適した対応処理動作を実施して安全性を確保するように駆動制御を行う。
【００１７】
上記の動作モード情報部２０８における作業の設定例について、図２を参照して説明する。図２は、動作モード情報部２０８における１つの作業例、例えば、現在位置から特定場所に行って指定した物を持ってくる作業で必要となる各動作モードに対する定義・設定内容の例を示した図である。図２に示すように、動作モードの種類として、  
（１）特定場所での待機状態、あるいは動作停止状態、  
（２）特定場所への把持物無しでのロボット本体の移動動作、  
（３）特定場所への把持物有りでの移動動作、  
（４）多少の移動を伴う特定位置への手先位置決め動作、  
（５）アーム１０１と手先把持機構による物体のハンドリング動作、  
の５つの動作モードが定義されている。そして、それぞれの動作モードに対して、接触や衝突を判断するための判断基準値情報２０９として、検出トルクの変化量τai，τbi，τci，τdi，τei（ｉ＝ｒ１，・・・，ｒｎ，ｌ１，・・・，ｌｎ、ｎ：左右アームの関節数）が定められている。そして、接触・衝突判断対処指令生成部２１０が判断基準値情報２０９によって接触や衝突があるものと判断した場合における各軸モータ駆動サーボ制御部２０５、あるいは軌道・目標値生成部２０４に対する各駆動部への対応処理動作が設定されている。図２に示すように、動作モードによっては、同じ駆動部でもモータを駆動停止させたりサーボロックを維持して姿勢の保持状態を保ったり、サーボフリーのままとする等それぞれの動作モードに従って処理が定義される。
【００１８】
具体的に、アーム１０１を接触・衝突センサとして使用する例について説明する。  
移動ロボットには、通常、移動車輪回りには周囲の障害物等を非接触で検出する超音波センサや、直接、物との接触を検出するバンパーが設けられている（図３（ａ）参照）。図３に示すように、本実施形態では、図中矢印方向への移動動作時においては、アーム１０１を特定の姿勢でサーボロック状態に保持する。そして、アーム１０１の各関節軸に組み込まれた軸トルク検出センサ１０６の出力を用いることにより、アーム１０１をロボットの上半身回りでの周囲との接触や衝突を検出する安全装置として機能させ、接触や衝突が検出された時には移動機構部１０３の車輪駆動のモータ停止などの対処制御処置が実行される。
【００１９】
図４は、他のアーム保持姿勢の例を示す図である。図４に示すように、アームの姿勢保持状態は、実行中の作業の種類や現在の状況によるロボットの移動条件に応じて、保持するアーム姿勢自体も変化させてロボット本体回りの検出領域を随時、可変にできることで、アーム１０１を周囲との接触・衝突検出装置として作業に応じて有効に作用させられる。
【００２０】
例えば、通過する通路の幅に応じて、ドア部や部屋の境界部など狭いところの通過時や、把持物有り無しなど作業に基づく移動速度に応じて、あるいは周りに人の居る密度に応じて、両横側および前方側に拡げる姿勢（図４（ａ）（ｂ））となるように、あるいは逆に両横側や前方側に狭めた姿勢となるように、検出領域を変化させる。また、移動する場所によってはロボット本体の高さ方向に対してより上部側（図４（ｃ））に、あるいは下部側にアーム姿勢を保持させるなど、環境条件に応じて効果的にアーム保持姿勢を切り換えて周囲との接触や衝突を検出する安全装置としての機能を働かせることが有効である。
【００２１】
図５は、軸トルク検出センサ１０６からの出力を用いて、人や周囲の物体等との接触や衝突を精度良くかつ簡単に検出するための検出方法を説明する図である。  
一般に作業用アームは片持ち構造を取るため各関節部の駆動機構の剛性の影響からアーム自体の駆動動作によっても振動が生じやすく、軸トルク検出センサ１０６の出力値にも振動の影響があらわれる。ただし、移動ロボットに搭載される作業用アームは軽量化が図られるなど振動で支配的となる１次固有振動数は高くても十数Ｈｚと低い値を取る。従って、特定の目標軌道に沿ってアーム各軸を動作させるためのアクチュエータによる駆動トルクの出力値に対して、振動による影響を受けずに周囲との接触や衝突によって発生したトルクによる出力値とを区別し検出する必要がある。
【００２２】
このため、本実施形態において、アーム１０１の各出力軸に組み込んだ軸トルク検出センサ１０６による周囲の人や物体との接触や衝突の検出は、以下のように行われる。
【００２３】
各軸トルク変化量検出部２０７は、各軸トルク検出センサ１０６から数ミリ秒単位のサンプリングで出力値を取り込み、１回前との差分変化量を求めて、接触・衝突判断対処指令生成部２１０に出力する。接触・衝突判断対処指令生成部２１０は、差分変化量が所定の条件を満たした場合に、接触或いは衝突を検出したものと判断する。具体的には、例えば、アーム作業駆動動作時では（図５（ｂ））、パルス状の変化があった場合であり、アーム姿勢保持動作時には（図５（ｃ））、ステップ状の変化があった場合に接触或いは衝突を検出したものと判断する。このとき、その変化の生じた時間（期間）が十数ミリ秒以内（Δｔ＜ｔ１、Δｔ＜ｔ２）であって、動作モード情報部２０８に設定された現在の動作モードに対応する判断基準値情報２０９よりいずれかの関節軸において大きい場合（τｉ＞τdi、τｉ＞τbi）には、その検出された関節軸より先端側に位置するアーム部において周囲との接触あるいは衝突が生じたものと判断することが好ましい。
【００２４】
なお、アームの保持姿勢状態など事前に姿勢が分かっていて、アーム自体の自重による各関節出力軸での作用トルク量が事前に求まる場合には、各軸トルク検出センサ１０６の出力値からその自重作用トルク量を減算するなど補償した値を用いて接触や衝突を検出することで、より検出精度を高めた方法を取ることも可能となる。
【００２５】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態に係るアーム搭載移動ロボットの制御システムを含めた全体構成を示すブロック図である。
【図２】動作モード情報部２０８における１つの作業例、例えば、現在位置から特定場所に行って指定した物を持ってくる作業で必要となる各動作モードに対する定義・設定内容の例を示した図である。
【図３】移動ロボットの特定場所への移動動作時の移動条件によるアーム保持姿勢状態の例を示す図である。
【図４】移動ロボットの特定場所への移動動作時の移動条件によるアーム保持姿勢状態の例を示す図である。
【図５】アームに組み込まれた軸トルク検出センサの出力による接触や衝突発生を判断する検出方法を説明するための図である。
【符号の説明】
【００２７】
１００…アーム搭載ロボット
１０１…アーム
１０２…把持機構
１０３…移動機構部
１０４…視覚カメラ搭載部
１０５…搭載制御コントローラ部
１０６…軸トルク検出センサ
２０１…作業命令
２０２…ロボット動作計画部
２０３…動作手順・動作コマンド生成部
２０４…軌道・目標値生成部
２０５…軸モータ駆動サーボ制御部
２０６…信号処理回路部
２０７…軸トルク変化量検出部
２０８…動作モード情報部
２１０…接触・衝突判断対処指令生成部
２１１…安全制御装置
【図１】
2008229800.tif 000003
【図２】
2008229800.tif 000004
【図３】
2008229800.tif 000005
【図４】
2008229800.tif 000006
【図５】
2008229800.tif 000007