(57)【要約】【課題】生産性を高めることができる制御方法およびロボットシステムを提供すること。【解決手段】基台、前記基台に接続されたアーム、および、前記アームに作用した外力を検出する力検出部を有するロボット本体と、前記ロボット本体を移動させる移動部と、を備えるロボットの制御方法であって、前記力検出部が外力を検出した際、前記力検出部の検出結果に基づいて、前記アームの前記外力を受けた位置を認知する認知工程と、認知された前記位置に基づいて、前記アームの制御点の位置姿勢を維持するように、前記アームの姿勢を変更し、前記移動部により前記基台を移動する移動工程と、を有することを特徴とする制御方法。【選択図】図１
2020163551.tif 000002
【特許請求の範囲】
【請求項１】
基台、前記基台に接続されたアーム、および、前記アームに作用した外力を検出する力検出部を有するロボット本体と、前記ロボット本体を移動させる移動部と、を備えるロボットの制御方法であって、
前記力検出部が外力を検出した際、前記力検出部の検出結果に基づいて、前記アームの前記外力を受けた位置を認知する認知工程と、
認知された前記位置に基づいて、前記アームの制御点の位置姿勢を維持するように、前記アームの姿勢を変更し、前記移動部により前記基台を移動する移動工程と、を有することを特徴とする制御方法。
【請求項２】
前記認知工程では、前記外力の向きを検出し、
前記移動工程では、前記外力の向きに応じて前記アームの姿勢を制御し、前記基台を移動する請求項１に記載の制御方法。
【請求項３】
前記移動工程よりも前に、前記力検出部の検出結果に基づいて、前記移動工程における前記移動量を算出する算出工程を有する請求項１または２に記載の制御方法。
【請求項４】
前記移動工程よりも前に、前記力検出部の検出結果に基づいて、前記アームの侵入禁止領域を設定する侵入禁止領域設定工程を有する請求項１ないし３のいずれか１項に記載の制御方法。
【請求項５】
前記移動工程の後に、前記移動量に基づいて前記ロボットに設定されたロボット座標系の原点の位置を補正する補正工程を有する請求項１ないし４のいずれか１項に記載の制御方法。
【請求項６】
基台、前記基台に接続されたアーム、前記アームに作用した外力を検出する力検出部を有するロボット本体と、前記ロボット本体を移動させる移動部と、
前記ロボット本体および前記移動部を制御する制御部と、を備え、
前記制御部は、前記力検出部が外力を検出した際、前記力検出部の検出結果に基づいて、前記アームの前記外力を受けた位置を認知し、認知した前記位置に基づいて、前記アームの制御点の位置姿勢を維持するように、前記アームの姿勢を変更し、前記移動部により前記基台を移動させることを特徴とするロボットシステム。
【請求項７】
前記移動量を検出する慣性センサーをさらに備える請求項６に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御方法およびロボットシステムに関する。
【背景技術】
【０００２】
例えば特許文献１には、ロボットを制御するロボット制御装置が開示されている。また、ロボットは、ロボットに加わる外力を検出するセンサーを有しており、ロボット制御装置は、このセンサーの出力に基づいてロボットが物体と接触したか否かを判断する。そして、ロボットが物体と接触したと判断した場合、作業を停止し物体から離れる方向にロボットを退避させる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１３２０８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載されているロボット制御装置では、ロボットが物体と接触したと判断した場合、作業を停止し物体から離れるため、作業を一旦中断することとなる。このため、ロボットが物体と接触した場合、作業にかかる時間が長くなってしまい、生産性が低下する。
【課題を解決するための手段】
【０００５】
本発明は、前述した課題の少なくとも一部を解決するためになされたものであり、以下により実現することが可能である。
【０００６】
本適用例の制御方法は、基台、前記基台に接続されたアーム、および、前記アームに作用した外力を検出する力検出部を有するロボット本体と、前記ロボット本体を移動させる移動部と、を備えるロボットの制御方法であって、
前記力検出部が外力を検出した際、前記力検出部の検出結果に基づいて、前記アームの前記外力を受けた位置を認知する認知工程と、
認知された前記位置に基づいて、前記アームの制御点の位置姿勢を維持するように、前記アームの姿勢を変更し、前記移動部により前記基台を移動する移動工程と、を有することを特徴とする。
【０００７】
本適用例のロボットシステムは、基台、前記基台に接続されたアーム、前記アームに作用した外力を検出する力検出部を有するロボット本体と、前記ロボット本体を移動させる移動部と、
前記ロボット本体および前記移動部を制御する制御部と、を備え、
前記制御部は、前記力検出部が外力を検出した際、前記力検出部の検出結果に基づいて、前記アームの前記外力を受けた位置を認知し、認知した前記位置に基づいて、前記アームの制御点の位置姿勢を維持するように、前記アームの姿勢を変更し、前記移動部により前記基台を移動させることを特徴とする。
【図面の簡単な説明】
【０００８】
【図１】本発明のロボットシステムの好適な実施形態を示す斜視図である。
【図２】図１に示すロボットを鉛直上方から見た模式図である。
【図３】図１に示すロボットシステムのブロック図である。
【図４】図１に示すロボットシステムが備える制御装置が行う制御動作を説明するためのフローチャートである。
【図５】図１に示すロボットを鉛直上方から見た模式図であって、外力を受けた状態を示す図である。
【図６】図１に示すロボットを鉛直上方から見た模式図であって、移動しつつ姿勢を変更した状態を示す図である。
【図７】図１に示すロボットを鉛直上方から見た模式図であって、アームの姿勢の候補を示す図である。
【図８】図１に示すロボットを鉛直上方から見た模式図であって、アームの姿勢の候補を示す図である。
【図９】ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【図１０】ロボットシステムのハードウェアを中心とした変形例１を示すブロック図である。
【図１１】ロボットシステムのハードウェアを中心とした変形例２を示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、本発明の制御方法およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
【００１０】
なお、図１では、互いに直交する３軸（Ｘ軸、Ｙ軸およびＺ軸）を図示している。また、以下では、Ｘ軸に平行な方向を「Ｘ軸方向」とも言い、Ｙ軸に平行な方向を「Ｙ軸方向」とも言い、Ｚ軸に平行な方向を「Ｚ軸方向」とも言う。また、以下では、図示された各矢印の先端側を「＋（プラス）」、基端側を「−（マイナス）」と言う。また、Ｚ軸方向は「鉛直方向」と一致しており、Ｘ−Ｙ平面に平行な方向は「水平方向」と一致している。また、Ｚ軸の＋（プラス）側を「上方」とし、Ｚ軸の−（マイナス）側を「下方」とする。
【００１１】
＜第１実施形態＞
図１は、本発明のロボットシステムの好適な実施形態を示す斜視図である。図２は、図１に示すロボットを鉛直上方から見た模式図である。図３は、図１に示すロボットシステムのブロック図である。図４は、図１に示すロボットシステムが備える制御装置が行う制御動作を説明するためのフローチャートである。図５は、図１に示すロボットを鉛直上方から見た模式図であって、外力を受けた状態を示す図である。図６は、図１に示すロボットを鉛直上方から見た模式図であって、移動しつつ姿勢を変更した状態を示す図である。図７は、図１に示すロボットを鉛直上方から見た模式図であって、アームの姿勢の候補を示す図である。図８は、図１に示すロボットを鉛直上方から見た模式図であって、アームの姿勢の候補を示す図である。
【００１２】
図１に示すロボットシステム１は、例えば、精密機器やこれを構成する部品の給材、除材、搬送および組立等の作業を行うことができる。ロボットシステム１は、ロボット２と、ロボット２の駆動を制御する制御装置９と、を有する。また、ロボット２は、ロボット本体３と、ロボット本体３に設けられている移動機構４と、を有する。
【００１３】
ロボット本体３は、双腕ロボットであり、基台３０と、基台３０に回動自在に連結されている胴体３１と、胴体３１の左右に連結されている第１アーム３２および第２アーム３３と、胴体３１に接続されている頭部３４と、を有する。頭部３４には、撮像部としてのステレオカメラ３５が設けられており、ロボット２は、ステレオカメラ３５を用いて第１、第２アーム３２、３３やワークの状態を確認しながら作業を行うことができる。なお、基台３０の重心位置に、ロボット座標系の原点Ｏが設定されている。
【００１４】
また、図１に示すように、第１アーム３２は、胴体３１に回動自在に連結されているリンク３２１と、リンク３２１に連結されているリンク３２２と、リンク３２２に連結されているリンク３２３と、リンク３２３に連結されているリンク３２４と、リンク３２４に連結されているリンク３２５と、リンク３２５に連結されているリンク３２６と、リンク３２６に接続されているハンド３２７と、を有する。さらに、リンク３２６とハンド３２７との間には力覚センサー３２８が設けられており、力覚センサー３２８によってハンド３２７に加わる力を検出することができる。
【００１５】
また、図２に示すように、胴体３１とリンク３２１とは、関節３１１を介して回動自在に接続されている。リンク３２１とリンク３２２とは、関節３１２を介して回動自在に接続されている。リンク３２２とリンク３２３とは、関節３１３を介して回動自在に接続されている。リンク３２３とリンク３２４とは、関節３１４を介して回動自在に接続されている。リンク３２４とリンク３２５とは、関節３１５を介して回動自在に接続されている。リンク３２５とリンク３２６とは、関節３１６を介して回動自在に接続されている。リンク３２６とハンド３２７とは、関節３１７を介して回動自在に接続されている。
【００１６】
また、関節３１１には、力覚センサー３４１が内蔵されており、関節３１２には、力覚センサー３４２が内蔵されており、関節３１３には、力覚センサー３４３が内蔵されており、関節３１４には、力覚センサー３４４が内蔵されており、関節３１５には、力覚センサー３４５が内蔵されており、関節３１６には、力覚センサー３４６が内蔵されており、関節３１７には、力覚センサー３４７が内蔵されている。
【００１７】
これら力覚センサー３４１〜３４７は、第１アーム３２に加わった外力を検出する力検出部である。力覚センサー３４１〜３４７は、例えば、圧電体を有し、第１アーム３２に外力が加わると、力覚センサー３４１〜３４７は、その大きさおよび受けた方向に関する情報を電気信号として制御装置９に送信する。
【００１８】
また、図１に示すように、第２アーム３３は、胴体３１に連結されているリンク３３１と、リンク３３１に連結されているリンク３３２と、リンク３３２に連結されているリンク３３３と、リンク３３３に連結されているリンク３３４と、リンク３３４に連結されているリンク３３５と、リンク３３５に連結されているリンク３３６と、リンク３３６に接続されているハンド３３７と、を有する。さらに、リンク３３６とハンド３３７との間には力覚センサー３３８が設けられており、力覚センサー３３８によってハンド３３７に加わる力を検出することができる。
【００１９】
また、図２に示すように、胴体３１とリンク３３１とは、関節３５１を介して回動自在に接続されている。リンク３３１とリンク３３２とは、関節３５２を介して回動自在に接続されている。リンク３３２とリンク３３３とは、関節３５３を介して回動自在に接続されている。リンク３３３とリンク３３４とは、関節３５４を介して回動自在に接続されている。リンク３３４とリンク３３５とは、関節３５５を介して回動自在に接続されている。リンク３３５とリンク３３６とは、関節３５６を介して回動自在に接続されている。リンク３３６とハンド３３７とは、関節３５７を介して回動自在に接続されている。
【００２０】
また、関節３５１には、力覚センサー３６１が内蔵されており、関節３５２には、力覚センサー３６２が内蔵されており、関節３５３には、力覚センサー３６３が内蔵されており、関節３５４には、力覚センサー３６４が内蔵されており、関節３５５には、力覚センサー３６５が内蔵されており、関節３５６には、力覚センサー３６６が内蔵されており、関節３５７には、力覚センサー３６７が内蔵されている。
【００２１】
これら力覚センサー３６１〜３６７は、第２アーム３３に加わった外力を検出する力検出部である。力覚センサー３６１〜３６７は、例えば、圧電体を有し、第２アーム３３に外力が加わると、力覚センサー３６１〜３６７は、その大きさおよび受けた方向に関する情報を電気信号として制御装置９に送信する。
【００２２】
ハンド３２７、３３７の構成としては、それぞれ、ロボット２に求められている動作を実施可能であれば特に限定されないが、本実施形態では、開閉する一対の爪部Ｆ１、Ｆ２を有し、一対の爪部Ｆ１、Ｆ２でワーク等を把持する構成となっている。
【００２３】
また、ロボット本体３は、基台３０に対して胴体３１を回動させる駆動装置３７を有する。また、ロボット本体３は、胴体３１に対してリンク３２１を回動させる駆動装置３８１と、リンク３２１に対してリンク３２２を回動させる駆動装置３８２と、リンク３２２に対してリンク３２３を回動させる駆動装置３８３と、リンク３２３に対してリンク３２４を回動させる駆動装置３８４と、リンク３２４に対してリンク３２５を回動させる駆動装置３８５と、リンク３２５に対してリンク３２６を回動させる駆動装置３８６と、を有する。また、ロボット本体３は、胴体３１に対してリンク３３１を回動させる駆動装置３９１と、リンク３３１に対してリンク３３２を回動させる駆動装置３９２と、リンク３３２に対してリンク３３３を回動させる駆動装置３９３と、リンク３３３に対してリンク３３４を回動させる駆動装置３９４と、リンク３３４に対してリンク３３５を回動させる駆動装置３９５と、リンク３３５に対してリンク３３６を回動させる駆動装置３９６と、を有する。
【００２４】
各駆動装置３７、３８１〜３８６、３９１〜３９６は、例えば、駆動源としてのモーターと、モーターの駆動を制御するコントローラーと、モーターの回転量を検出するエンコーダーと、を有する。これら駆動装置３７、３８１〜３８６、３９１〜３９６は、それぞれ、制御装置９によって独立して制御される。
【００２５】
移動機構４は、自動走行システムで構成されており、ロボット２は、事前に指定された経路に沿って自動走行する。移動機構４は、基台３０に設けられている操舵用の１対の前輪４１および駆動用の１対の後輪４２と、を有する。また、移動機構４は、移動時にロボット２が受ける加速度を検出する慣性センサーとしての加速度センサー３８を有する。この加速度センサー３８は、移動機構制御部９２に送信される。なお、移動機構４の構成としては、特に限定されず、例えば、複数本の足を有し、歩行する構成であってもよい。
【００２６】
また、各前輪４１および各後輪４２は、それぞれが鉛直方向に沿った軸回りに回転可能に構成されている。このため、ロボット２は、水平方向に沿った面内ではどの方向にも移動可能である。なお、本明細書中の「移動」には、直動や蛇行や往復動等はもちろん、回転も含まれる。
【００２７】
制御装置９は、図３に示すように、ロボット本体３を制御するロボット本体制御部９１と、移動機構４の駆動を制御する移動機構制御部９２と、外力が加わった際にロボット本体制御部９１および移動機構制御部９２に指令を出す回避動作司令部９３と、記憶部９４と、を有する。
【００２８】
ロボット本体制御部９１は、図示しないホストコンピューターからロボット本体３の位置指令を受け、胴体３１および各リンク３２１〜３２６、３３１〜３３６が前記位置指令に応じた位置となるように、駆動装置３７、３８１〜３８６、３９１〜３９６の駆動をそれぞれ独立して制御する。また、その他、上記のような動作中に、回避動作司令部９３からの指令を受けた場合、駆動装置３７、３８１〜３８６、３９１〜３９６をその指令通りに制御する。
【００２９】
移動機構制御部９２は、図示しないホストコンピューターからロボット２の位置指令を受け、ロボット２が前記位置指令に応じた場所に移動するように加速度センサー３８の検出結果に基づいて、移動機構４の駆動を制御する。また、その他、上記のような動作中に、回避動作司令部９３からの指令を受けた場合、移動機構４をその指令通りに制御する。
【００３０】
回避動作司令部９３は、第１アーム３２または第２アーム３３に外力が加わった際に、その位置、大きさ、方向に関する情報を特定し、後述するような動作を行う。具体的には、力覚センサー３４１〜３４７、３６１〜３６７のそれぞれが検出した力と、記憶部９４に記憶されている検量線やテーブルに基づいて外力が付与された位置、外力の大きさ、外力が加わった方向を特定する。そして、これらの情報に基づいて、まず、アームの侵入禁止領域を設定し、この侵入禁止領域を避けるような第１アーム３２および第２アーム３３の姿勢を算出するとともに移動機構４の移動量を算出する。そして、これらの算出結果に基づいて、ロボット本体制御部９１および移動機構制御部９２に指令を出す。
【００３１】
ロボット本体制御部９１、移動機構制御部９２および回避動作司令部９３は、情報を処理するプロセッサー（ＣＰＵ）で構成されている。また、記憶部９４は、ロボット本体制御部９１、移動機構制御部９２および回避動作司令部９３により実行可能な各種プログラムが保存されている。ロボット本体制御部９１、移動機構制御部９２および回避動作司令部９３は、記憶部９４に記憶された各種プログラム等を読み込んで実行することができる。また、記憶部９４には、後述する外力の閾値や検量線等、制御に用いる情報等も記憶されている。
【００３２】
以上、ロボットシステム１の構成について説明した。このようなロボット２では、作業中にロボット２に外力が付与された場合、以下のような制御が行われることにより、安全性を確保しつつ、生産性を高めることができる。以下、この制御動作について、図４に示すフローチャートに基づいて説明する。
【００３３】
なお、以下では、ロボット２が作業を行っている最中に第１アーム３２に外力が加わった場合について説明する。また、以下で述べることは、第２アーム３３に外力が加わった場合も同じような動作を行う。
【００３４】
図５に示すように、ロボット２の作業中に第１アーム３２のリンク３２５に、図中左側から、すなわち、第１アーム３２から第２アーム３３に向かう方向に物体が接触し、外力Ｆが加わった場合を例に挙げて説明する。
【００３５】
まず、ステップＳ１０１において、ロボット２が作業を開始する。すなわち、ユーザーが指定したプログラムに基づいて、胴体３１および各リンク３２１〜３２６、３３１〜３３６が、プログラムに基づいた動作を行うように、駆動装置３７、３８１〜３８６、３９１〜３９６の駆動をそれぞれ独立して制御する。
【００３６】
なお、一例として、ハンド３２７は、作業中、図５中上側、すなわち、基台３０の反対側を向いた状態とする。換言すれば、ハンド３２７の中心軸が、図５中上下方向を向いて、かつ、水平方向に沿った状態でハンド３２７が作業を行っている状態とする。
【００３７】
そして、ステップＳ１０２において、Ｆ≧Ｆ０であるかを判断する。すなわち、加わった外力Ｆが、予め設定された閾値Ｆ０以上か否かを判断する。例えば、力覚センサー３４１〜３４７、３６１〜３６７のそれぞれが検出した外力が１つでも閾値Ｆ０以上であったら、Ｆ≧Ｆ０であると判断する。そして、Ｆ≧Ｆ０であると判断した場合、ステップＳ１０３において、外力Ｆが加わった位置および外力Ｆが作用した方向を特定する。このステップＳ１０３が、認知工程である。例えば、第１アーム３２のリンク３２５に外力Ｆが加わった場合には、力覚センサー３４５が検出した外力Ｆが閾値Ｆ０以上となる。この場合、第１アーム３２のリンク３２５に外力Ｆが加わったと特定することができる。なお、この際、外力Ｆの方向も特定することができる。
【００３８】
ステップＳ１０３における特定は、力覚センサー３４１〜３４７、３６１〜３６７のそれぞれが検出した力と、位置と、方向との関係を示す図示しない検量線またはテーブルに基づいて行われる。この検量線またはテーブルは、予め実験的に求められたものとすることができ、記憶部９４に記憶されている。なお、一例として、第１アーム３２のリンク３２５に、図５中左側から外力Ｆが作用したこととする。
【００３９】
次いで、ステップＳ１０４において、後述する移動を行う際に、第１アーム３２が侵入するのを禁止する侵入禁止領域Ａと、移動先である目標移動領域Ｂと、を設定する。すなわち、図６に示すように、外力Ｆを受けた位置側に侵入禁止領域Ａを設定し、外力Ｆを受けた位置とは、反対側に、目標移動領域Ｂを設定する。図示の構成では、これらは、鉛直上方から見たときに、矩形をなす、直方体の空間とする。
【００４０】
侵入禁止領域Ａの設定方法は、例えば、ステップＳ１０３で検出した外力Ｆの大きさ、位置、方向に基づいて設定される。すなわち、外力Ｆの大小に応じて侵入禁止領域Ａの大小が決定し、外力Ｆが加わった位置、方向に基づいて、外力Ｆを受けた側に侵入禁止領域Ａを設定する。
【００４１】
目標移動領域Ｂの設定方法は、例えば、ステップＳ１０３で検出した外力Ｆの大きさ、位置、方向に基づいて設定される。すなわち、外力Ｆの大小に応じて目標移動領域Ｂの大小が決定し、外力Ｆが加わった位置、方向に基づいて、その位置とは反対側に目標移動領域Ｂを設定する。
このステップＳ１０４が、侵入禁止領域設定工程である。
【００４２】
このように、本発明の制御方法は、後述するステップＳ１０７である移動工程よりも前に、力検出部である力覚センサー３４１〜３４７、３６１〜３６７の検出結果に基づいて、アームである第１アーム３２の侵入禁止領域Ａを設定する侵入禁止領域設定工程を有する。これにより、後述するようなロボット２が物体を避ける動作において、避けるために移動する方向の候補を安全な方向に絞ることができる。また、物体が今後向かうであろう方向に侵入禁止領域Ａを設定することにより、安全性がさらに高まる。
【００４３】
なお、侵入禁止領域Ａおよび目標移動領域Ｂは、図示の構成に限定されず、例えば、鉛直上方から見たときに円形、楕円形、多角形等、いかなる形状をなしていていもよい。
【００４４】
次に、ステップＳ１０５において、移動機構４の移動量Ｄを算出する。この移動量Ｄの算出は、外力Ｆの大きさ、位置、方向に基づいて決定する。例えば、移動量Ｄと、外力Ｆの大きさ、位置、方向との関係を示す検量線またはテーブルに基づいて決定することができる。この検量線またはテーブルは、予め実験的に求められたものとすることができ、記憶部９４に記憶されている。なお、この移動量Ｄの方向は、図６に示す構成では、外力Ｆの方向と同方向であるが、必ずしも同方向ではなくてよい。すなわち、移動量Ｄの方向は、外力Ｆの方向の成分を含んでいれば、特に限定されない。このステップＳ１０５が、算出工程である。
【００４５】
このように、本発明の制御方法は、後述するステップＳ１０７である移動工程よりも前に、力検出部である力覚センサー３４１〜３４７、３６１〜３６７の検出結果に基づいて、移動工程における移動量Ｄを算出する算出工程を有する。これにより、移動工程において、外力Ｆの大きさに応じた適切な距離を移動することができる。
【００４６】
そして、ステップＳ１０６において、第１アーム３２の姿勢を決定する。すなわち、駆動装置３７、３８１〜３８６の駆動を制御して、リンク３２１〜リンク３２６の回動量を調整し、姿勢を制御する。リンク３２１〜リンク３２６の回動量は、移動機構４の移動量Ｄと、前述した侵入禁止領域Ａとに基づいて算出する。具体的には、リンク３２１〜リンク３２６の回動量と、侵入禁止領域Ａと、目標移動領域Ｂと、移動量Ｄとの関係性を示す検量線またはテーブルに基づいて決定することができる。この検量線またはテーブルは、予め実験的に求められたものとすることができ、記憶部９４に記憶されている。
【００４７】
この際、第１アーム３２の制御点ＴＣＰの位置姿勢を維持するように第１アーム３２の姿勢を決定する。ここで、位置姿勢とは、制御点ＴＣＰのロボット座標における位置と、ハンド３２７の向きのことを言う。すなわち、本ステップでは、ハンド３２７が動かないようなリンク３２１〜リンク３２６の回動量を算出し、駆動装置３７、３８１〜３８６の各々への指令値を決定する。
【００４８】
なお、例えば、図７および図８に示すように、侵入禁止領域Ａを避ける姿勢が２パターンある場合には、図７に示すような、リンク３２１〜リンク３２６の各々の回動量の合算値が少ない方の姿勢を選択する。これにより、後述する移動工程を迅速に行うことができる。
【００４９】
次いで、ステップＳ１０７において、ステップＳ１０５で算出した移動量Ｄおよび方向で移動機構４を移動させるとともに、Ｓ１０６で算出した駆動装置３７、３８１〜３８６の各々への指令値で第１アーム３２の姿勢を変更する（図６参照）。例えば、外力Ｆの方向と反対の方向以外の方向に、第１アーム３２の姿勢を変更し、移動機構４を移動させる。このステップＳ１０７が移動工程である。これにより、侵入禁止領域Ａを避け、かつ、外力Ｆを受けた部分が目標移動領域Ｂ内に位置するよう姿勢を変更し、移動機構４によって、ロボット２が外力を受けた方向と同方向に移動することとなる。よって、十分な安全性を確保することができる。また、この移動している際中および移動後も第１アーム３２の位置姿勢が維持されている、すなわち、ハンド３２７が当該移動により変位しないため、作業を中断する必要がない。その結果、生産性を高めることができる。特に、例えば、ハンド３２７が行っている作業がワーク同士の接着作業等、一端中断したら作業中のワークを破棄せざるを得ないような作業であった場合、本発明の効果が特に顕著に得られる。
【００５０】
なお、外力Ｆを受けた部分が目標移動領域Ｂ内に位置するだけでなく、外力Ｆを受けた部分の周辺、例えば、外力Ｆを受けた部分の先端側および基端側の関節までが目標移動領域Ｂ内に、位置するよう姿勢を変更するのが好ましい。これにより、さらに安全性を高めることができる。
【００５１】
次いで、ステップＳ１０８において、ロボット座標系の原点Ｏを補正する。すなわち、ステップＳ１０７で移動した移動量Ｄおよび方向に基づいて、絶対座標系における原点Ｏの位置を移動し、その位置をロボット座標系の原点Ｏとする。このステップＳ１０８が、補正工程である。
【００５２】
このように、移動工程の後に、移動量Ｄに基づいてロボット２に設定されたロボット座標系の原点Ｏの位置を補正する補正工程を有する。これにより、第１アーム３２のその後の動作も、指定されたプログラム通りに行うことができる。さらに、第２アーム３３への位置指令値も補正することができ、例えば、第１アーム３２および第２アーム３３を用いた共同作業を行うことができる。
【００５３】
そして、ステップＳ１０９において、全てのプログラムの実行が完了したか否かを判断する。この判断は、電源ＯＦＦ指令があったか、予め設定された作業時間が経過したか、予め設定された個数のワークを処理したか等に基づいて行われる。
【００５４】
なお、上記では、第１アーム３２に対する制御を例に挙げて説明したが、第２アーム３３も同様の作業中であった場合、第１アーム３２とともの第２アーム３３にも同様の制御を行ってもよい。また、第２アーム３３に外力が加わった場合も、上記と同様の制御が行われる。
【００５５】
以上説明したように、本発明の制御方法は、基台３０、基台３０に接続されたアーム３２、３３、および、アーム３２、３３に作用した外力Ｆを検出する力検出部である力覚センサー３４１〜３４７、３６１〜３６７を有するロボット本体３と、ロボット本体３を移動させる移動部である移動機構４と、を備えるロボット２の制御方法であって、力覚センサー３４１〜３４７、３６１〜３６７が外力Ｆを検出した際、力覚センサー３４１〜３４７、３６１〜３６７の検出結果に基づいて、アーム３２、３３の外力Ｆを受けた位置を認知する認知工程と、認知された位置に基づいて、アーム３２、３３の制御点ＴＣＰの位置姿勢を維持するように、アーム３２、３３の姿勢を変更し、移動機構４により基台３０を移動する移動工程と、を有する。これにより、外力Ｆを受けた位置に基づいて、安全な姿勢に変更しつつ、移動機構４によって安全な位置にロボット２を移動することができる。よって、十分な安全性を確保することができる。また、この移動している際中および移動後も制御点ＴＣＰの位置姿勢が維持されているため、ロボット２が行っている作業を中断する必要がない。その結果、生産性を高めることができる。
【００５６】
また、認知工程であるステップＳ１０３では、外力Ｆの向きも特定し、移動工程であるステップＳ１０７では、外力Ｆの向きに応じて第１アーム３２の姿勢を制御し、基台３０を移動する。これにより、外力Ｆを受けた位置から接触した物体が今後移動するであろう向きを考慮して移動方向を設定することができる。よって、より安全性が高まる。
【００５７】
また、本発明のロボットシステム１は、基台３０、基台３０に接続されたアーム３２、３３、アーム３２、３３に作用した外力Ｆを検出する力検出部である力覚センサー３４１〜３４７、３６１〜３６７を有するロボット本体３と、ロボット本体３を移動させる移動部である移動機構４と、ロボット本体３および移動機構４を制御する制御部である制御装置９と、を備える。また、制御装置９は、力覚センサー３４１〜３４７、３６１〜３６７が外力を検出した際、力覚センサー３４１〜３４７、３６１〜３６７の検出結果に基づいて、アーム３２、３３の外力Ｆを受けた位置を認知し、認知した位置に基づいて、アーム３２、３３の制御点ＴＣＰの位置姿勢を維持するように、アーム３２、３３の姿勢を変更し、移動機構４により基台３０を移動させる。これにより、外力Ｆを受けた位置に基づいて、安全な姿勢に変更しつつ、移動機構４によって安全な位置にロボット２を移動することができる。よって、十分な安全性を確保することができる。また、この移動している際中および移動後も制御点ＴＣＰの位置姿勢が維持されているため、ロボット２が行っている作業を中断する必要がない。その結果、生産性を高めることができる。
【００５８】
また、ロボットシステム１は、慣性センサーである加速度センサー３８を有する。これにより、例えば、加速度センサー３８からの情報に基づいて、移動工程における移動が正確に行われたか等を検出し、移動機構４の駆動にフィードバックすることができる。
【００５９】
＜ロボットシステムの他の構成例＞
図９は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【００６０】
図９には、ロボット２とコントローラー６１とコンピューター６２が接続されたロボットシステム１Ａの全体構成が示されている。ロボット２の制御は、コントローラー６１にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、コンピューター６２に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー６１を介して実行されてもよい。
【００６１】
従って、コントローラー６１とコンピューター６２とのいずれか一方または両方を「制御装置」または「制御部」として捉えることができる。
【００６２】
＜変形例１＞
図１０は、ロボットシステムのハードウェアを中心とした変形例１を示すブロック図である。
【００６３】
図１０には、ロボット２に直接コンピューター６３が接続されたロボットシステム１Ｂの全体構成が示されている。ロボット２の制御は、コンピューター６３に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
【００６４】
従って、コンピューター６３を「制御装置」または「制御部」として捉えることができる。
【００６５】
＜変形例２＞
図１１は、ロボットシステムのハードウェアを中心とした変形例２を示すブロック図である。
【００６６】
図１１には、コントローラー６１が内蔵されたロボット２とコンピューター６６が接続され、コンピューター６６がＬＡＮ等のネットワーク６５を介してクラウド６４に接続されているロボットシステム１Ｃの全体構成が示されている。ロボット２の制御は、コンピューター６６に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、クラウド６４上に存在するプロセッサーによりコンピューター６６を介してメモリーにある指令を読み出して実行されてもよい。
【００６７】
従って、コントローラー６１とコンピューター６６とクラウド６４とのいずれか１つ、または、いずれか２つ、または、３つを「制御装置」または「制御部」として捉えることができる。
【００６８】
以上、本発明のロボットシステムおよび制御方法を図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。また、各実施形態を適宜組み合わせてもよい。
【００６９】
また、前述した実施形態では、本発明のロボットシステムが有するロボットとしては、図示の構成に限定されず、例えば、いわゆる６軸の垂直多関節ロボット等、他のロボットであってもよい。また、当該ロボットは、双腕ロボットに限定されず、単腕ロボットや、３本以上のアームを有するロボットであってもよい。すなわち、可動部の数は、２つに限定されず、１つまたは３つ以上であってもよい。また、可動部が備えるロボットアームが有するアームの数は、前述した実施形態では、６つであるが、１〜５つまたは７つ以上であってもよい。
【符号の説明】
【００７０】
１…ロボットシステム、１Ａ…ロボットシステム、１Ｂ…ロボットシステム、１Ｃ…ロボットシステム、２…ロボット、３…ロボット本体、４…移動機構、９…制御装置、３０…基台、３１…胴体、３２…第１アーム、３３…第２アーム、３４…頭部、３５…ステレオカメラ、３７…駆動装置、３８…加速度センサー、４１…前輪、４２…後輪、６１…コントローラー、６２…コンピューター、６３…コンピューター、６４…クラウド、６５…ネットワーク、６６…コンピューター、９１…ロボット本体制御部、９２…移動機構制御部、９３…回避動作司令部、９４…記憶部、３１１…関節、３１２…関節、３１３…関節、３１４…関節、３１５…関節、３１６…関節、３１７…関節、３２１…リンク、３２２…リンク、３２３…リンク、３２４…リンク、３２５…リンク、３２６…リンク、３２７…ハンド、３２８…力覚センサー、３３１…リンク、３３２…リンク、３３３…リンク、３３４…リンク、３３５…リンク、３３６…リンク、３３７…ハンド、３３８…力覚センサー、３４１…力覚センサー、３４２…力覚センサー、３４３…力覚センサー、３４４…力覚センサー、３４５…力覚センサー、３４６…力覚センサー、３４７…力覚センサー、３５１…関節、３５２…関節、３５３…関節、３５４…関節、３５５…関節、３５６…関節、３５７…関節、３６１…力覚センサー、３６２…力覚センサー、３６３…力覚センサー、３６４…力覚センサー、３６５…力覚センサー、３６６…力覚センサー、３６７…力覚センサー、３８１…駆動装置、３８２…駆動装置、３８３…駆動装置、３８４…駆動装置、３８５…駆動装置、３８６…駆動装置、３９１…駆動装置、３９２…駆動装置、３９３…駆動装置、３９４…駆動装置、３９５…駆動装置、３９６…駆動装置、Ａ…侵入禁止領域、Ｂ…目標移動領域、Ｄ…移動量、Ｆ…外力、Ｆ０…閾値、Ｆ１…爪部、Ｆ２…爪部、Ｏ…原点、ＴＣＰ…制御点
【図１】
2020163551.tif 000003
【図２】
2020163551.tif 000004
【図３】
2020163551.tif 000005
【図４】
2020163551.tif 000006
【図５】
2020163551.tif 000007
【図６】
2020163551.tif 000008
【図７】
2020163551.tif 000009
【図８】
2020163551.tif 000010
【図９】
2020163551.tif 000011
【図１０】
2020163551.tif 000012
【図１１】
2020163551.tif 000013