(57)【要約】【課題】オペレーターに対し、正常な動作経路を生成するための方法を明確に報知することができるロボットシステムを提供すること。【解決手段】可動部と、前記可動部が移動可能な領域の撮像画像を取得する撮像部と、報知を行う報知部と、を有するロボットと、前記可動部、前記撮像部および前記報知部の作動を制御する制御部と、を備え、前記制御部は、前記撮像画像に基づいて、前記可動部の動作経路の候補の生成を開始し、正常な前記動作経路の生成ができなかった場合、正常な前記動作経路を生成するための方法を算出し、前記方法を前記報知部により報知させることを特徴とするロボットシステム。【選択図】図１
2020196058.tif 000002
【特許請求の範囲】
【請求項１】
可動部と、前記可動部が移動可能な領域の撮像画像を取得する撮像部と、報知を行う報知部と、を有するロボットと、
前記可動部、前記撮像部および前記報知部の作動を制御する制御部と、を備え、
前記制御部は、前記撮像画像に基づいて、前記可動部の動作経路の候補の生成を開始し、正常な前記動作経路の生成ができなかった場合、正常な前記動作経路を生成するための方法を算出し、前記方法を前記報知部により報知させることを特徴とするロボットシステム。
【請求項２】
前記報知部は、表示部である請求項１に記載のロボットシステム。
【請求項３】
前記撮像画像における前記ロボットとは異なる物体の位置が原因で正常な前記動作経路の生成ができなかった場合、前記表示部は、前記物体と前記ロボットとの位置関係を変更する条件を表示する請求項２に記載のロボットシステム。
【請求項４】
前記表示部は、前記物体を移動させる方向および移動量を表示する請求項３に記載のロボットシステム。
【請求項５】
前記表示部は、前記物体を移動させる方向および移動量を、記号を用いて表示する請求項４に記載のロボットシステム。
【請求項６】
前記記号は、文字を含む請求項５に記載のロボットシステム。
【請求項７】
前記表示部は、前記物体を移動させる領域を表示する請求項３に記載のロボットシステム。
【請求項８】
前記表示部は、正常ではない前記動作経路のシミュレーションをした結果である画像または動画を表示するか否かを選択させる画面を表示する請求項３ないし７のいずれか１項に記載のロボットシステム。
【請求項９】
前記制御部が前記方法を算出している間に、前記表示部は、正常ではない前記動作経路のシミュレーションをした結果である画像または動画を表示する請求項３ないし７のいずれか１項に記載のロボットシステム。
【請求項１０】
正常な前記動作経路の生成ができなかった場合、前記制御部は、前記報知部により、前記ロボットを移動させる方向および移動量を報知させる請求項３に記載のロボットシステム。
【請求項１１】
撮像部により取得した撮像画像に基づいて、可動部の動作経路の候補の生成を開始し、正常な前記動作経路の生成ができなかった場合、正常な前記動作経路を生成するための方法を算出し、前記方法を報知部により報知することを特徴とするロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステムおよびロボットシステムの制御方法に関する。
【背景技術】
【０００２】
例えば特許文献１には、複数のロボットに対し、動作経路を教示する教示方法および教示装置が開示されている。特許文献１では、複数のロボットが共通の作業領域内で同時に作業を行う場合に、障害物を避けつつ各ロボット同士が干渉しないようにロボットに対して動作を教示する。
【０００３】
具体的には、オペレーターからの指示、すなわち、教示値に基づいて、ロボットの駆動部を駆動させた際にロボットを構成する各点が通過する仮想空間上の軌道の集合であるロボット通過領域を生成する。このようなロボット通過領域を複数のロボットごとに生成し、重複しないか否かを判断する。そして、重複すると判断した場合、すなわち、その動作経路で動作させるとロボット同士が衝突する場合、ディスプレイにその旨を表示し、オペレーターに対し、教示値の再設定を促す。
【０００４】
ロボット同士の衝突は、特許文献１に記載の教示の際に限らず、ロボットが有する制御部により動作経路を生成し、生成した動作経路に沿ってロボットが動作する際にも生じる。この場合、ロボット同士が衝突する動作経路の候補しか生成できなかった際は、ディスプレイに正常な動作経路の生成に失敗したことを示す情報が表示され、ロボットが停止する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１８−１４４２２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載されている教示装置では、ロボット同士が衝突する原因や、衝突させずに動作させるための解決手段が明確に報知されないため、表示画面を見ながら教示値を再設定することが難しい。
【課題を解決するための手段】
【０００７】
本適用例のロボットシステムは、可動部と、前記可動部が移動可能な領域の撮像画像を取得する撮像部と、報知を行う報知部と、を有するロボットと、
前記可動部、前記撮像部および前記報知部の作動を制御する制御部と、を備え、
前記制御部は、前記撮像画像に基づいて、前記可動部の動作経路の候補の生成を開始し、正常な前記動作経路の生成ができなかった場合、正常な前記動作経路を生成するための方法を算出し、前記方法を前記報知部により報知させることを特徴とする。
【０００８】
本適用例のロボットシステムの制御方法は、撮像部により取得した撮像画像に基づいて、可動部の動作経路の候補の生成を開始し、正常な前記動作経路の生成ができなかった場合、正常な前記動作経路を生成するための方法を算出し、前記方法を報知部により報知することを特徴とする。
【図面の簡単な説明】
【０００９】
【図１】本発明のロボットシステムの第１実施形態を示す斜視図である。
【図２】図１に示すロボットを鉛直上方から見た模式図である。
【図３】図１に示すロボットシステムのブロック図である。
【図４】図１に示すロボットの動作経路を示す図であり、鉛直上方から見た模式図である。
【図５】図１に示す制御部の制御動作を説明するためのフローチャートである。
【図６】図１に示す操作パネルの平面図である。
【図７】図１に示す操作パネルの平面図である。
【図８】図１に示す操作パネルの平面図である。
【図９】図１に示す操作パネルの平面図である。
【図１０】図１に示す操作パネルの平面図である。
【図１１】本発明のロボットシステムの第２実施形態が備える操作パネルの平面図である。
【図１２】ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【図１３】ロボットシステムのハードウェアを中心とした変形例１を示すブロック図である。
【図１４】ロボットシステムのハードウェアを中心とした変形例２を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、本発明のロボットシステムおよびロボットシステムの制御方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。
【００１１】
なお、図１および図７〜図１１中の上側、すなわち、アラビア数字等が読み取れる方向から紙面を見たときの上側を「上」または「上方」、下側を「下」または「下方」という。また、以下で説明する第１アーム３２において、ハンド３２７側を「先端」または「先端側」とも言い、その反対側、すなわち、胴体３１側を「基端」または「基端側」とも言う。このことは、第２アーム３３についても同様である。
【００１２】
＜第１実施形態＞
図１は、本発明のロボットシステムの第１実施形態を示す斜視図である。図２は、図１に示すロボットを鉛直上方から見た模式図である。図３は、図１に示すロボットシステムのブロック図である。図４は、図１に示すロボットの動作経路を示す図であり、鉛直上方から見た模式図である。図５は、図１に示す制御部の制御動作を説明するためのフローチャートである。図６〜図１０は、図１に示す操作パネルの平面図である。
【００１３】
図１に示すロボットシステム１は、例えば、精密機器やこれを構成する部品の給材、除材、搬送および組立等の作業を行うことができる。ロボットシステム１は、ロボット２と、ロボット２の駆動を制御する制御部９と、を有する。また、ロボット２は、ロボット本体３と、ロボット本体３に設けられている移動機構４と、を有する。
【００１４】
ロボット本体３は、双腕ロボットであり、基台３０と、基台３０に回動自在に連結されている胴体３１と、胴体３１の左右に連結されている第１アーム３２および第２アーム３３と、胴体３１に接続されている頭部３４と、を有する。なお、基台３０には、ベース座標系が設定されている。なお、胴体３１と、第１アーム３２および第２アーム３３と、により、可動部１０が構成される。
【００１５】
また、図１に示すように、第１アーム３２は、胴体３１に回動自在に連結されているリンク３２１と、リンク３２１に連結されているリンク３２２と、リンク３２２に連結されているリンク３２３と、リンク３２３に連結されているリンク３２４と、リンク３２４に連結されているリンク３２５と、リンク３２５に連結されているリンク３２６と、リンク３２６に接続されているハンド３２７と、を有する。さらに、リンク３２６とハンド３２７との間には力覚センサー３２８が設けられており、力覚センサー３２８によってハンド３２７に加わる力を検出することができる。
【００１６】
また、図２に示すように、胴体３１とリンク３２１とは、関節３１１を介して回動自在に接続されている。リンク３２１とリンク３２２とは、関節３１２を介して回動自在に接続されている。リンク３２２とリンク３２３とは、関節３１３を介して回動自在に接続されている。リンク３２３とリンク３２４とは、関節３１４を介して回動自在に接続されている。リンク３２４とリンク３２５とは、関節３１５を介して回動自在に接続されている。リンク３２５とリンク３２６とは、関節３１６を介して回動自在に接続されている。リンク３２６とハンド３２７とは、関節３１７を介して回動自在に接続されている。
【００１７】
また、図１に示すように、第２アーム３３は、胴体３１に対し、回動自在に連結されているリンク３３１と、リンク３３１に連結されているリンク３３２と、リンク３３２に連結されているリンク３３３と、リンク３３３に連結されているリンク３３４と、リンク３３４に連結されているリンク３３５と、リンク３３５に連結されているリンク３３６と、リンク３３６に接続されているハンド３３７と、を有する。さらに、リンク３３６とハンド３３７との間には力覚センサー３３８が設けられており、力覚センサー３３８によってハンド３３７に加わる力を検出することができる。
【００１８】
また、図２に示すように、胴体３１とリンク３３１とは、関節３５１を介して回動自在に接続されている。リンク３３１とリンク３３２とは、関節３５２を介して回動自在に接続されている。リンク３３２とリンク３３３とは、関節３５３を介して回動自在に接続されている。リンク３３３とリンク３３４とは、関節３５４を介して回動自在に接続されている。リンク３３４とリンク３３５とは、関節３５５を介して回動自在に接続されている。リンク３３５とリンク３３６とは、関節３５６を介して回動自在に接続されている。リンク３３６とハンド３３７とは、関節３５７を介して回動自在に接続されている。
【００１９】
ハンド３２７、３３７の構成としては、それぞれ、ロボット２に求められている動作を実施可能であれば特に限定されないが、本実施形態では、開閉する一対の爪部Ｆ１、Ｆ２を有し、一対の爪部Ｆ１、Ｆ２で図４に示すようなワークＷや工具Ｋ等を把持する構成となっている。
【００２０】
また、ハンド３２７の先端の中央には、制御点であるツールセンターポイントＴＣＰ１が設定され、ハンド３３７の先端の中央には、制御点であるツールセンターポイントＴＣＰ２が設定されている。ロボット２では、これらツールセンターポイントＴＣＰ１およびツールセンターポイントＴＣＰ２を原点とした先端座標系がそれぞれ設定されており、これらの先端座標系と、基台３０に設定されたベース座標系とは、キャリブレーションは済んでおり、ベース座標系での座標から先端座標系での座標を計算から求めることができる状態である。なお、本実施形態では、前述したベース座標系を「ロボット座標系」として捉えているが、先端座標系を「ロボット座標系」として捉えてもよい。以下、ベース座標系、先端座標系を「ロボット座標系」とも言う。
【００２１】
また、ロボット本体３は、基台３０に対して胴体３１を回動させる駆動装置３７を有する。また、ロボット本体３は、胴体３１に対してリンク３２１を回動させる駆動装置３８１と、リンク３２１に対してリンク３２２を回動させる駆動装置３８２と、リンク３２２に対してリンク３２３を回動させる駆動装置３８３と、リンク３２３に対してリンク３２４を回動させる駆動装置３８４と、リンク３２４に対してリンク３２５を回動させる駆動装置３８５と、リンク３２５に対してリンク３２６を回動させる駆動装置３８６と、を有する。また、ロボット本体３は、胴体３１に対してリンク３３１を回動させる駆動装置３９１と、リンク３３１に対してリンク３３２を回動させる駆動装置３９２と、リンク３３２に対してリンク３３３を回動させる駆動装置３９３と、リンク３３３に対してリンク３３４を回動させる駆動装置３９４と、リンク３３４に対してリンク３３５を回動させる駆動装置３９５と、リンク３３５に対してリンク３３６を回動させる駆動装置３９６と、を有する。
【００２２】
各駆動装置３７、３８１〜３８６、３９１〜３９６は、例えば、駆動源としてのモーターと、モーターの駆動を制御するコントローラーと、モーターの回転量を検出するエンコーダーと、を有する。これら駆動装置３７、３８１〜３８６、３９１〜３９６は、それぞれ、制御部９によって独立して制御される。
【００２３】
頭部３４には、撮像部としてのステレオカメラ３５が下方を向いて設置されている。ステレオカメラ３５は、下方を撮像することにより、第１アーム３２および第２アーム３３の移動領域の少なくとも一部を含む撮像画像を取得することができる。ステレオカメラ３５は、制御部９と電気的に接続されており、その作動が制御される。また、ステレオカメラ３５が取得した撮像画像のデータは、制御部９に送信される。なお、撮像部はステレオカメラに限らず、単一のカメラを用いてもよい。
【００２４】
また、ロボット２が作業を行っている間もステレオカメラ３５が撮像を行い、第１アーム３２および第２アーム３３や、図４に示すワークＷや工具Ｋ等の状態を確認しながら作業を行うことができる。
【００２５】
また、ロボット本体３の背面側には、取っ手３６が設けられている。オペレーターは、この取っ手３６を把持し押したり引いたりしてロボット２を移動させることができる。図示の構成では、水平方向に沿って延在する操作バーと、操作バーとロボット本体３とを連結する連結棒とを有する構成であるが、本発明ではこれに限定されない。
【００２６】
また、図１および図６〜図１０に示すように、ロボット本体３の背面には、報知部としての操作パネル３８が設けられている。操作パネル３８は、表示部としての画面３８０を有するタッチパネル式の装置で構成されている。また、画面３８０には、後述するような正常な動作経路を生成するための方法が表示される。もちろん、操作パネル３８はロボット本体３に設けられていなくてもよく、ロボット２とは別体として設けられたティーチングペンダント、ＰＣ、およびタブレット等のディスプレイであってもよい。
【００２７】
報知部としての操作パネル３８が、表示部である画面３８０を有することにより、オペレーターは、報知された内容を視覚的に認識することができる。よって、オペレーターは、報知された内容を迅速かつ詳細に把握することができる。
【００２８】
なお、画面３８０による表示に限定されず、例えば、音声、振動パターン、ランプの点滅パターン等による報知であってもよい。
【００２９】
移動機構４は、基台３０に設けられている操舵用の１対の前輪４１および駆動用の１対の後輪４２と、を有する。また、各前輪４１および各後輪４２は、それぞれが水平方向に沿った軸回りに回転可能に構成されている。このため、ロボット２は、外力を付与することにより、水平方向に沿った面内ではどの方向にも移動可能である。なお、本明細書中の「移動」には、直動や蛇行や往復動等はもちろん、回転も含まれる。なお、移動機構４は、省略されていてもよい。
【００３０】
制御部９は、図３に示すように、駆動制御部９１と、動作経路生成部９２と、判断部９３と、解決方法算出部９４と、記憶部９５とを有する。
【００３１】
駆動制御部９１は、動作経路生成部９２が生成した動作経路に基づいて、ロボット２の各部の駆動を制御する。すなわち、駆動制御部９１は、動作経路生成部９２が生成した動作経路をツールセンターポイントＴＣＰ１またはツールセンターポイントＴＣＰ２が通過するように駆動装置３７、３８１〜３８６、３９１〜３９６の駆動をそれぞれ独立して制御する。
【００３２】
また、駆動制御部９１は、指定されたプログラムまたは操作パネル３８からの指令に基づいて、ステレオカメラ３５や、画面３８０等の駆動を制御する。
【００３３】
また、駆動制御部９１は、動作経路生成部９２が生成した動作経路に基づいて、その動作経路で図７に示す仮想ロボット２’を動作させた状態を示すシミュレーション画像とシミュレーション動画の少なくとも一方を生成し画面３８０に表示させる。シミュレーション画像およびシミュレーション動画は、ステレオカメラ３５が撮像した撮像画像および記憶部９５に記憶されているプログラム等に基づいて生成される。
【００３４】
動作経路生成部９２は、操作パネル３８からの指令に基づいて、動作経路の候補を生成する。ここで、「動作経路」とは、可動部１０の所定部位、例えば、アーム１７の先端に設定された制御点であるツールセンターポイントＴＣＰ１およびツールセンターポイントＴＣＰ２の動きの軌跡のことを言う。具体的には、「動作経路」は、オペレーターが操作パネル３８を介して入力した作業内容に基づいてロボット２を動作させた場合に、作業の開始から終了までの一連の作業工程において、ツールセンターポイントＴＣＰ１およびツールセンターポイントＴＣＰ２が通過する軌道のことである。さらに具体的に説明すると、動作経路は、図４中矢印で示すようなツールセンターポイントＴＣＰ１およびツールセンターポイントＴＣＰ２の軌道である。図４中では、一例として、第１アーム３２がワークＷを把持し、第２アーム３３が工具Ｋを把持し、工具ＫでワークＷに対し、ネジ締め等、所定の処理を行う際のツールセンターポイントＴＣＰ１およびツールセンターポイントＴＣＰ２の軌道を矢印で示している。
【００３５】
また、「動作経路の候補」とは、指定された作業を遂行するに際し、前述した「動作経路」が複数生成された場合、そのそれぞれのことを言い、「動作経路」が１つしか生成されなかった場合であっても、それが「動作経路の候補」となる。具体的には、後述するような「正常な動作経路」を生成するのに至る過程で、後述する判断部９３が「正常な動作経路」か否かを判断する対象のことを言う。この「動作経路の候補」には、未だ「正常な動作経路」か否かが分かっていない動作経路が単数または複数含まれている。すなわち、「動作経路の候補」には、「正常な動作経路」および「正常ではない動作経路」が含まれている場合がある。なお、正常な動作経路とは、利用可能な動作経路、または、干渉が生じない動作経路のことである。
【００３６】
また、「動作経路の候補を生成する」とは、入力された作業内容および撮像画像に基づいて、前述した「動作経路の候補」となる動作経路を全て生成することを言う。「動作経路の候補」の生成は、例えば、指定された作業内容と、ツールセンターポイントＴＣＰ１、ＴＣＰ２の軌道と、駆動装置３７、３８１〜３８６、３９１〜３９６の経時的な駆動量との関係を示すデータ等に基づいて行うことができる。前記データは、例えば、実験的に算出され、記憶部９５に予め記憶されたものとすることができる。
【００３７】
判断部９３は、動作経路生成部９２が生成した動作経路が正常な動作経路であるか否かを判断する。「正常な動作経路」とは、以下に述べる判断基準１、２を満足する動作経路のことを言う。
【００３８】
判断基準１：ワークＷまたは工具Ｋの位置、すなわち、ワークＷまたは工具Ｋの初期位置が適切であること。ここでいう「初期位置が適切」とは、その動作経路に従って第１アーム３２および第２アーム３３を駆動した際、第１アーム３２および第２アーム３３が好ましくない姿勢にならず、かつ、自己衝突が起こらない位置のことを言う。なお、ワークＷおよび工具Ｋは、ロボット２とは異なる物体である。第１アーム３２または第２アーム３３は、ハンド３２７、３３７をワークＷまたは工具Ｋに接触させ、搬送および組立等を行わせる。
【００３９】
ここで言う「好ましくない姿勢」とは、動作中に第１アーム３２または第２アーム３３がその姿勢になったとき、それ以上、動作を行っていた方向と同方向に駆動できない姿勢のことを言う。この姿勢は、特異点とも呼ばれる。
【００４０】
また、「自己衝突」は、動作経路に基づいた動作を実行するにあたり、第１アーム３２が基台３０、胴体３１、第２アーム３３、頭部３４およびステレオカメラ３５に接触すること、および、第２アーム３３が基台３０、胴体３１、第１アーム３２、頭部３４およびステレオカメラ３５に接触することを言う。
【００４１】
判断基準２：取得した撮像画像において、動作経路に基づいた動作を実行するにあたり、第１アーム３２および第２アーム３３が移動する領域にロボット２、ワークＷ、工具Ｋ、図示しない作業台等、作業に必要なものとは異なる物体、例えば、柱等の障害物や、人等が存在していないこと。
【００４２】
このような判断基準１および判断基準２を満足し、かつ、その動作経路が所定時間内に生成された場合、「正常な動作経路」が生成されたこととなる。一方、判断基準１および判断基準２のうちの少なくとも一方の要件を欠いた場合、「正常な動作経路」が生成されなかったこととなる。なお、後述するように、判断部９３は、動作経路の生成中に所定時間が経過してしまった場合、正常な動作経路がなかったとみなす。所定時間は、オペレーターにより設定される。
【００４３】
また、正常な動作経路は、複数生成されることもある。この場合、判断部９３は、例えば、駆動装置３７、３８１〜３８６、３９１〜３９６の累積駆動量が最も少ない動作経路を選択したり、駆動時間が最も短い動作経路を選択したりすることにより、１つの動作経路に決定する。これらに限らず、選択における優先順位は、オペレーターにより設定される。
【００４４】
また、駆動制御部９１は、「正常な動作経路」が生成されなかった場合、図６に示すように、画面３８０にその旨を表示させる。そして、「正常な動作経路」が生成されなかった原因を表示するか否か、すなわち、前述したシミュレーション画像を表示するか否かを選択させる選択肢を画面に表示する。例えば、自己衝突が原因で「正常な動作経路」が生成されなかった場合、オペレーターは、自己衝突が原因で「正常な動作経路」が生成されなかったことを知ることができるとともに、衝突箇所も知ることができる。
【００４５】
解決方法算出部９４は、動作経路生成部９２により正常な動作経路の生成ができなかった場合の解決方法、すなわち、正常な動作経路を生成するための、問題の解消方法を算出する。この算出は、例えば、ワークＷを、ワークＷの座標の各方向に一定間隔ずらした座標の候補を複数用意し、それぞれの候補に対して「正常な動作経路」が生成可能かを算出することにより行う。さらに、生成可能と判断された各座標を「正常な動作経路を生成するための方法」の候補として扱うことで実現される。他にも、予め記憶部９５に記憶されている理想的な環境の画像パターンとマッチングを行うことで算出してもよい。
【００４６】
そして、駆動制御部９１が、図８〜図１０に示すように、正常な動作経路を生成するための方法を操作パネル３８の画面３８０に表示させる。「正常な動作経路を生成するための方法」としては、例えば、ワークＷ、工具Ｋの初期位置の変更や、ロボット２の位置の変更、ロボット２の初期姿勢の変更等が挙げられる。また、「正常な動作経路を生成するための方法」の表示としては、例えば、図８〜図１０に示すような画像の表示が挙げられる。以下、これらについて説明する。
【００４７】
例えば、図８に示すような構成では、画面３８０に仮想ロボット２’および仮想ワークＷ’の画像と、文字が表示される。図示の構成では、「ワークをＸ方向に１０ｍｍ移動することで衝突回避できます。」という文字と、「衝突が発生  頭部と左ハンド」という文字が表示される。
【００４８】
「ワークをＸ方向に１０ｍｍ移動することで衝突回避できます。」という文字は、画面３８０における仮想ワークＷ’の近傍、図示の構成では、仮想ワークＷ’の下側に表示される。この文字の通り、ワークＷをＸ方向に１０ｍｍ移動させると、初期位置が適切になり、自己衝突が生じない正常な動作経路を生成可能となる。
【００４９】
このように、表示部としての画面３８０は、物体としてのワークＷを移動させる方向および移動量を表す記号としての文字を表示する。すなわち、画面３８０に、物体としてのワークＷを移動させる記号の情報を表示する。これにより、「正常な動作経路を生成するための方法」を具体的に表示することができ、オペレーターは、正常な動作経路を生成するための方法を容易かつ正確に知ることができる。よって、例えば、この表示通りにワークＷを移動させることにより、制御部９は、正常な動作経路を生成することができ、作業を行うことができる。
【００５０】
また、「衝突が発生  頭部と左ハンド」という文字は、画面３８０における衝突箇所の近傍、図示の構成では、衝突箇所の右側等に表示される。また、この文字は、第１アーム３２と頭部３４とが衝突してしまうということを示している。
【００５１】
このように、衝突箇所に文字を表示することにより、オペレーターは、どの部位でどのような衝突が生じるかを把握することができる。よって、オペレーターは、原因と結果を把握することができ、次回以降の初期設定の参考とすることができる。
【００５２】
また、例えば、図９に示すような構成では、画面３８０に、仮想ワークＷ’を移動させる方向および移動量を示す矢印が表示される。矢印で示すことにより、ワークＷを移動させるべき方向を視覚的に認識することができる。よって、オペレーターは、表示された内容を迅速かつ詳細に把握することができる。また、ワークＷを移動させるべき距離を矢印の長さで示すことにより、ワークＷを移動させるべき距離を感覚的に把握することができる。
【００５３】
また、図９に示すように、候補が複数ある場合には、複数の矢印を表示する。この場合、移動量に応じて各矢印の色、太さ、長さ、形状が異なっているのが好ましい。このように、矢印が複数表示される場合、記号は、色、大きさ、形状のうちの少なくとも１つが異なる図形である矢印を含む。例えば、矢印の色の輝度、彩度、または明度のいずれかが高いほど移動量が大きく、矢印の大きさが大きいほど移動量が大きい、等である。これにより、ワークＷを移動させるべき距離を感覚的に把握することができ、オペレーターが複数の候補の中から選択するのを迅速に決定することができる。なお、図形として矢印を例に挙げて説明したが、これに限定されず、例えば、三角形等、方向等を認識させることができればよい。また、複数の矢印を表示することを例に挙げて説明したが、これに限定されず、記憶部に、移動量に応じた当該各矢印が記憶されており、１つの矢印を移動量に応じて異なるように表示してもよい。
【００５４】
このように、表示部としての画面３８０は、ロボット２と異なる物体としてのワークＷを移動させる方向および移動量を表す記号としての文字や矢印を表示する。これにより、「正常な動作経路を生成するための方法」を具体的に表示することができ、オペレーターは、正常な動作経路を生成するための方法を容易かつ正確に知ることができる。よって、例えば、この表示通りにワークＷを移動させることにより、制御部９は、正常な動作経路を生成することができ、作業を行うことができる。
【００５５】
また、図１０に示すような構成では、画面３８０に、正常な動作経路を生成可能となるワークＷの移動先の領域Ａを表示している。すなわち、画面３８０に、物体としてのワークＷを移動させる領域の情報を表示する。図示の構成では、領域Ａは、円弧で囲まれた楕円形をなしている。この領域Ａ内にワークＷを移動させることにより、正常な動作経路を生成可能となる。なお、図示の構成では、楕円形で表示されているが、これに限定されず、真円、多角形、星形等、いかなる形状で表示してもよい。また、図示の構成では、１つの領域Ａを表示しているが、正常な動作経路を生成可能となる候補が複数存在している場合、複数の領域を表示してもよい。
【００５６】
このように、画面３８０は、正常な動作経路を生成可能となるロボット２と異なる物体としてのワークＷの移動先の領域Ａを囲んだ形状を表示する。すなわち、表示部としての画面３８０は、物体としてのワークＷを移動させる領域を表示する。これにより、オペレーターは、ワークＷをどこに動かすべきかを直感的に把握することができる。よって、実際にオペレーターが、例えば、ワークＷを移動させたりする際、その操作を正確に行うことができる。
【００５７】
以上、説明したような表示パターンにより、「正常な動作経路を生成するための方法」をオペレーターに明確に報知することができる。
【００５８】
また、図８〜図１０に示すように、「正常な動作経路を生成するための方法」と、仮想ロボット２’とが同じ画面３８０に表示されるため、仮想ロボット２’と仮想ワークＷ’との位置関係を容易に把握することができる。位置関係をより容易に把握できるように表示するために、画面３８０に、仮想ロボット２’を鉛直方向の上方から見たときの表示をする形態であってもよい。よって、実際にオペレーターが、例えば、ワークＷを移動させたりする際、その操作を正確に行うことができる。
【００５９】
以上、説明したような駆動制御部９１、動作経路生成部９２、判断部９３および解決方法算出部９４は、情報を処理するＣＰＵ（Central Processing Unit）等のプロセッサーで構成することができる。
【００６０】
記憶部９５は、例えばＲＡＭ（Random Access Memory）等の揮発性メモリーや、ＲＯＭ（Read Only Memory）等の不揮発性メモリー等を含んで構成されている。なお、記憶部９５は、非着脱式に限らず、着脱式の図示しない外部記憶装置を有する構成であってもよい。また、記憶部９５は、ＬＡＮ（Local Area Network）等のネットワークを介して別の場所に設置されていてもよい。
【００６１】
また、記憶部９５には、駆動制御部９１、動作経路生成部９２、判断部９３および解決方法算出部９４により実行可能な各種プログラムが保存されている。駆動制御部９１、動作経路生成部９２、判断部９３および解決方法算出部９４は、記憶部９５に記憶された各種プログラム等を読み込んで実行することができる。また、記憶部９５には、前述した判断基準１、２の他、ロボット２の制御に用いる各種情報等も記憶されている。
【００６２】
なお、制御部９は、図示の構成では、ロボット２の基台３０に内蔵されているが、これに限定されず、基台３０以外の部位に内蔵されていてもよく、ロボット２とは、別体で構成されていてもよい。制御部９がロボット２とは別体で構成されている場合、有線接続または無線接続のいずれでもよい。
以上、ロボットシステム１の構成について説明した。
【００６３】
次に、図５に示すフローチャートに基づいて、制御部９の制御動作を説明する。なお、以下の説明では、一例として、ワークＷの初期位置が適切でないため、自己衝突が生じる場合を一例に挙げて説明する。すなわち、撮像画像におけるロボット２とは異なる物体であるワークＷの位置が原因で正常な動作経路の生成ができなかった場合を一例に挙げて説明する。
【００６４】
まず、ステップＳ１０１において、教示値を受け付ける。すなわち、オペレーターが
画面３８０を操作することにより入力されたロボット２が行う作業内容を受け付ける。
【００６５】
そして、ステップＳ１０２において、ステレオカメラ３５を用いて、撮像画像を取得する。前述したように、ステレオカメラ３５は、頭部３４から下方を向いて撮像を行うため、ステレオカメラ３５よりも下方に設けられたロボット２の作業領域の画像を取得することができる。
【００６６】
次いで、ステップＳ１０３において、動作経路の候補の生成を開始する。この生成は、前述したように、例えば、ステップＳ１０１で入力された作業内容と、ツールセンターポイントＴＣＰ１、ＴＣＰ２の軌道と、駆動装置３７、３８１〜３８６、３９１〜３９６の経時的な駆動量との関係を示すデータ等に基づいて行うことができる。
【００６７】
そして、ステップＳ１０４において、正常な動作経路の生成ができなかったか否かを判断する、すなわち、動作経路の候補に正常な動作経路が含まれているか否かを判断する。さらに換言すれば、前述した判断基準１、２を満足する動作経路を、所定時間内に生成できたか否かを判断する。ステップＳ１０４において、正常な動作経路の生成ができたと判断した場合、ステップＳ１１１において、実行する。なお、正常な動作経路が複数存在していた場合、例えば、駆動装置３７、３８１〜３８６、３９１〜３９６の累積駆動量が最も少ない動作経路を選択したり、駆動時間が最も短い動作経路を選択したりすることにより、１つの動作経路に決定し、当該正常な動作経路で動作を実行する。
【００６８】
一方、ステップＳ１０４において、正常な動作経路の生成ができなかったと判断した場合、ステップＳ１０５において、正常な動作経路が生成できなかった旨を表示する。例えば、図６に示すような画像を画面３８０に表示することにより、オペレーターは、正常な動作経路が生成できなかったことを認識することができる。
【００６９】
次いで、ステップＳ１０６において、正常ではない動作経路でロボット２を駆動した場合のシミュレーション画像を、画面３８０に表示するか否かを判断する。この判断は、オペレーターが操作パネル３８の画面３８０を操作して入力した入力結果に基づいて行う。例えば、図６に示すように、画面３８０に表示された表示画像上でオペレーターがタッチ操作を行うことにより、前記入力が行われる。
【００７０】
このように、ロボットシステム１では、正常ではない動作経路のシミュレーション画像を表示するか否かを選択可能である。すなわち、表示部である画面３８０は、正常ではない動作経路のシミュレーションをした結果である画像または動画を表示するか否かを選択させる画面を表示する。これにより、オペレーターがシミュレーション画像の表示を希望しない場合、この工程を省略することができる。
【００７１】
ステップＳ１０６において、シミュレーション画像を表示すると判断した場合、ステップＳ１０７において、シミュレーション動画を生成し、図７に示すように、画面３８０に表示する。なお、前述したように、シミュレーション動画は、ステレオカメラ３５が撮像した撮像画像および記憶部９５に記憶されているプログラム等に基づいて生成される。また、シミュレーション動画を表示する構成に限定されず、例えば、自己衝突が発生するときの仮想静止画を表示してもよい。なお、ステップＳ１０６において、シミュレーション画像を表示しないと判断した場合、ステップＳ１０８に移行する。
【００７２】
次いで、シミュレーション画像を表示している間に、ステップＳ１０８において、解決方法を算出する。この算出は、前述したように、例えば、ワークＷを、ワークＷの座標の各方向に一定間隔ずらした座標の候補を複数用意し、それぞれの候補に対して「正常な動作経路」が生成可能かを算出することにより行う。さらに、生成可能と判断された各座標を「正常な動作経路を生成するための方法」の候補として扱うことで実現される。
【００７３】
次いで、ステップＳ１０９において、図８〜図１０に示すように、ステップＳ１０８で算出された解決方法を画面３８０に表示する。そして、オペレーターは、図８〜図１０のいずれかに示すような表示を確認しつつ、実際のワークＷの位置を修正することができる。
【００７４】
この際、画面３８０では、シミュレーション画像が表示されているため、すなわち、仮想ロボット２’が表示されているため、オペレーターは、仮想ロボット２’と仮想ワークＷ’との位置関係を容易に把握することができる。よって、実際にオペレーターが、例えば、ワークＷを移動させたりする際、その操作を正確に行うことができる。
【００７５】
このように、制御部９は、正常な動作経路を生成するための方法を算出している間に、正常ではない動作経路のシミュレーション画像を表示することが可能である。正常な動作経路を生成するための方法を算出するのは、比較的時間がかかることがある。このため、シミュレーション画像を表示している間に前記算出を行うことにより、オペレーターの無駄な時間、すなわち、算出している間の待機時間を有効に活用することができる。
【００７６】
そして、ステップＳ１１０で再度、動作経路を生成するか否かを判断する。この判断は、例えば、図示はしないが、表示通りにワークＷを動かした旨を画面３８０上で操作、入力されたか否かに基づいて行われる。再度、動作経路を生成すると判断した場合、ステップＳ１０２に戻り、以降のステップが順次行われる。
【００７７】
以上、説明したように、ロボットシステム１は、可動部１０と、可動部１０が移動可能な領域の撮像画像を取得する撮像部としてのステレオカメラ３５と、報知を行う報知部としての操作パネル３８と、を有するロボット２と、可動部１０、ステレオカメラ３５および操作パネル３８の作動を制御する制御部９と、を備える。また、制御部９は、撮像画像に基づいて、可動部１０の動作経路の候補の生成を開始し、正常な動作経路の生成ができなかった場合、正常な動作経路を生成するための方法を算出し、前記方法を操作パネル３８により報知させる。これにより、オペレーターに対し、正常な動作経路を生成するための方法を明確に報知することができる。よって、熟練度が比較的低いオペレーターであっても、正常な動作経路を生成することができる。
【００７８】
また、本発明のロボットシステムの制御方法は、撮像部としてのステレオカメラ３５により取得した撮像画像に基づいて、可動部１０の動作経路の候補の生成を開始し、正常な動作経路の生成ができなかった場合、正常な動作経路を生成するための方法を算出し、前記方法を報知部である操作パネル３８により報知する。これにより、オペレーターに対し、正常な動作経路を生成するための方法を明確に報知することができる。よって、熟練度が比較的低いオペレーターであっても、正常な動作経路を生成することができる。
【００７９】
また、撮像画像におけるロボット２とは異なる物体、例えば、ワークＷや工具Ｋ等の位置が原因で正常な動作経路の生成ができなかった場合、表示部としての画面３８０は、ワークＷや工具Ｋ等と、ロボット２との位置関係を変更する条件を表示する。これにより、オペレーターに対し、正常な動作経路を生成するための方法を明確に報知することができ、オペレーターの熟練度によらず、オペレーターは、正常な動作経路を生成する環境を作ることができる。
【００８０】
また、表示部としての操作パネル３８は、物体、例えば、ワークＷや工具Ｋ等を移動させる方向および移動量を表示する。これにより、オペレーターは、正確にワークＷや工具Ｋ等を移動させ、正常な動作経路を生成する環境を作ることができる。
【００８１】
＜第２実施形態＞
図１１は、本発明のロボットシステムの第２実施形態が備える操作パネルの平面図である。
【００８２】
本実施形態に係るロボットシステムおよびロボットシステムの制御方法では、画面３８０に表示される「正常な動作経路を生成するための方法」が異なること以外は、前記第１実施形態と同様である。
【００８３】
図１１に示すように、本実施形態では、正常な動作経路の生成ができなかった場合、制御部９は、報知部である操作パネル３８により、ロボット２を移動させる方向および移動量を報知させる。これにより、オペレーターは、ロボット２をどこに動かすべきかを直感的に把握することができる。また、ロボット２を動かすという解決方法は、ワークＷや工具Ｋを移動させることなく正常な動作経路を生成可能となるため、ロボットの作業領域にオペレーターが入ることなく、正常な動作経路の生成が可能となる。よって、オペレーターが作業領域内の環境を不本意に変更してしまったりするリスクを低減することができる。
【００８４】
また、図示のように、矢印で示すことにより、ロボット２を移動させるべき方向を視覚的に認識することができる。よって、オペレーターは、表示された内容を迅速かつ詳細に把握することができる。また、ロボット２を移動させるべき距離を矢印の長さで示すことにより、ワークＷを移動させるべき距離を感覚的に把握することができる。
【００８５】
＜ロボットシステムの他の構成例＞
図１２は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【００８６】
図１２には、ロボット２とコントローラー６１とコンピューター６２が接続されたロボットシステム１Ａの全体構成が示されている。ロボット２の制御は、コントローラー６１にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、コンピューター６２に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー６１を介して実行されてもよい。
【００８７】
従って、コントローラー６１とコンピューター６２とのいずれか一方または両方を「制御部」として利用することができる。
【００８８】
＜変形例１＞
図１３は、ロボットシステムのハードウェアを中心とした変形例１を示すブロック図である。
【００８９】
図１３には、ロボット２に直接コンピューター６３が接続されたロボットシステム１Ｂの全体構成が示されている。ロボット２の制御は、コンピューター６３に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
従って、コンピューター６３を「制御部」として利用することができる。
【００９０】
＜変形例２＞
図１４は、ロボットシステムのハードウェアを中心とした変形例２を示すブロック図である。
【００９１】
図１４には、コントローラー６１が内蔵されたロボット２とコンピューター６６が接続され、コンピューター６６がＬＡＮ等のネットワーク６５を介してクラウド６４に接続されているロボットシステム１Ｃの全体構成が示されている。ロボット２の制御は、コンピューター６６に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよいし、クラウド６４上に存在するプロセッサーによりコンピューター６６を介してメモリーにある指令を読み出して実行されてもよい。
【００９２】
従って、コントローラー６１とコンピューター６６とクラウド６４とのいずれか１つ、または、いずれか２つ、または、３つを「制御部」として利用することができる。
【００９３】
以上、本発明のロボットシステムおよびロボットシステムの制御方法を図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものや工程に置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。また、各実施形態を適宜組み合わせてもよい。
【００９４】
また、前述した実施形態では、本発明のロボットシステムが有するロボットとしては、図示の構成に限定されず、例えば、いわゆる６軸の垂直多関節ロボット等、他のロボットであってもよい。また、当該ロボットは、双腕ロボットに限定されず、単腕ロボットや、３本以上のアームを有するロボットであってもよい。すなわち、可動部の数は、２つに限定されず、１つまたは３つ以上であってもよい。また、可動部が備えるロボットアームが有するリンクの数は、前述した実施形態では、７つであるが、１〜６つまたは８つ以上であってもよい。
【符号の説明】
【００９５】
１…ロボットシステム、１Ａ…ロボットシステム、１Ｂ…ロボットシステム、１Ｃ…ロボットシステム、２…ロボット、２’…仮想ロボット、３…ロボット本体、４…移動機構、９…制御部、１０…可動部、３０…基台、３１…胴体、３２…第１アーム、３３…第２アーム、３４…頭部、３５…ステレオカメラ、３６…取っ手、３７…駆動装置、３８…操作パネル、４１…前輪、４２…後輪、６１…コントローラー、６２…コンピューター、６３…コンピューター、６４…クラウド、６５…ネットワーク、６６…コンピューター、９１…駆動制御部、９２…動作経路生成部、９３…判断部、９４…解決方法算出部、９５…記憶部、３１１…関節、３１２…関節、３１３…関節、３１４…関節、３１５…関節、３１６…関節、３１７…関節、３２１…リンク、３２２…リンク、３２３…リンク、３２４…リンク、３２５…リンク、３２６…リンク、３２７…ハンド、３２８…力覚センサー、３３１…リンク、３３２…リンク、３３３…リンク、３３４…リンク、３３５…リンク、３３６…リンク、３３７…ハンド、３３８…力覚センサー、３５１…関節、３５２…関節、３５３…関節、３５４…関節、３５５…関節、３５６…関節、３５７…関節、３８０…画面、３８１…駆動装置、３８２…駆動装置、３８３…駆動装置、３８４…駆動装置、３８５…駆動装置、３８６…駆動装置、３９１…駆動装置、３９２…駆動装置、３９３…駆動装置、３９４…駆動装置、３９５…駆動装置、３９６…駆動装置、Ａ…領域、Ｆ１…爪部、Ｆ２…爪部、Ｋ…工具、ＴＣＰ１…ツールセンターポイント、ＴＣＰ２…ツールセンターポイント、Ｗ…ワーク、Ｗ’…仮想ワーク
【図１】
2020196058.tif 000003
【図２】
2020196058.tif 000004
【図３】
2020196058.tif 000005
【図４】
2020196058.tif 000006
【図５】
2020196058.tif 000007
【図６】
2020196058.tif 000008
【図７】
2020196058.tif 000009
【図８】
2020196058.tif 000010
【図９】
2020196058.tif 000011
【図１０】
2020196058.tif 000012
【図１１】
2020196058.tif 000013
【図１２】
2020196058.tif 000014
【図１３】
2020196058.tif 000015
【図１４】
2020196058.tif 000016