(57)【要約】【課題】生産設備の稼働率を低下させることなく、人と産業用ロボットとの接触を回避する。【解決手段】ロボット２と、ロボット２またはその周辺に配置された照明装置４と、ロボット２および照明装置４を制御する制御装置３とを備え、制御装置３が、プログラムに基づいてロボット２を動作させるロボット制御部と、プログラムに基づいてロボット２の動作領域を予測する動作領域予測部と、動作領域予測部により予測された動作領域に基づいて、照明装置４を点灯または消灯させることにより、動作領域を表示する照明制御部とを備えるロボットシステム１を提供する。【選択図】図１
2017148905.tif 000002
【特許請求の範囲】
【請求項１】
ロボットと、
該ロボットまたはその周辺に配置された照明装置と、
前記ロボットおよび前記照明装置を制御する制御装置とを備え、
該制御装置が、プログラムに基づいて前記ロボットを動作させるロボット制御部と、前記プログラムに基づいて前記ロボットの動作領域を予測する動作領域予測部と、該動作領域予測部により予測された前記動作領域に基づいて、前記照明装置を点灯または消灯させることにより、前記動作領域を表示する照明制御部とを備えるロボットシステム。
【請求項２】
前記照明装置が、前記ロボットの全動作領域を床面に投影した投影領域を含む照明領域にわたって前記床面を照明可能に配置され、
前記照明制御部が、予測された前記動作領域に基づいて、前記ロボットが配置される可能性のある前記動作領域を床面に投影した領域に対応する領域を照明するように前記照明装置を制御する請求項１に記載のロボットシステム。
【請求項３】
前記動作領域予測部が、前記プログラムを複数のプログラム部分に区分して、該プログラム部分毎に前記動作領域を予測し、
前記照明制御部が、前記プログラム部分毎に予測された前記動作領域を表示するように前記照明装置を点灯または消灯させる請求項１または請求項２に記載のロボットシステム。
【請求項４】
前記動作領域予測部が、現在時刻から所定時間後までのプログラムに対応する前記動作領域を予測する請求項１または請求項２に記載のロボットシステム。
【請求項５】
ロボットを動作させるプログラムに基づいて該ロボットの動作領域を予測する動作領域予測部と、
該動作領域予測部により予測された前記動作領域に基づいて、前記ロボットまたはその周辺に配置された照明装置を点灯または消灯させることにより、前記動作領域を表示する照明制御部とを備えるロボット制御装置。
【請求項６】
前記動作領域予測部が、前記プログラムを複数のプログラム部分に区分して、該プログラム部分毎に前記動作領域を予測し、
前記照明制御部が、前記プログラム部分毎に予測された前記動作領域を表示するように前記照明装置を点灯または消灯させる請求項５に記載のロボット制御装置。
【請求項７】
前記動作領域予測部が、現在時刻から所定時間後までのプログラムに対応する前記動作領域を予測する請求項５に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステムおよびロボット制御装置に関するものである。
【背景技術】
【０００２】
従来、人と産業用ロボットとが共存して作業を行う環境での人と産業用ロボットとの接触を回避するために、センサを設けたロボットシステムが知られている（例えば、特許文献１参照。）このロボットシステムでは、人と産業用ロボットとが接触する可能性のある位置関係となったことがセンサにより検出された場合に、産業用ロボットを減速あるいは停止させるようになっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６０−６２４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、センサにより人と産業用ロボットとが接触する可能性があることが検出された場合に産業用ロボットを減速あるいは停止させると、当該産業用ロボットを含む生産設備全体の遅延に繋がる可能性が有り、稼働率を低下させてしまうという不都合がある。
【０００５】
本発明は、上述した事情に鑑みてなされたものであって、生産設備の稼働率を低下させることなく、人と産業用ロボットとの接触を回避することを可能にするロボットシステムおよびロボット制御装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明の一態様は、ロボットと、該ロボットまたはその周辺に配置された照明装置と、前記ロボットおよび前記照明装置を制御する制御装置とを備え、該制御装置が、プログラムに基づいて前記ロボットを動作させるロボット制御部と、前記プログラムに基づいて前記ロボットの動作領域を予測する動作領域予測部と、該動作領域予測部により予測された前記動作領域に基づいて、前記照明装置を点灯または消灯させることにより、前記動作領域を表示する照明制御部とを備えるロボットシステムを提供する。
【０００７】
本態様によれば、ロボット制御部がロボットを動作させるためのプログラムに基づいて動作領域予測部により、ロボットの動作領域が予測され、予測された動作領域に基づいてロボットまたはその周辺に配置された照明装置が点灯または消灯される。照明装置が点灯されることにより、ロボットの動作領域が表示され、ロボットの周囲の作業者に対して、照明装置が点灯した領域にロボットが移動してくることを報知することができる。一方、照明装置が消灯した領域にはロボットが暫く移動してこないことを報知することができる。
【０００８】
すなわち、ロボットの動作範囲が照明装置によって可視化され、ロボットと接触する領域への作業者の立ち入りを抑制することができる。これにより、ロボットと接触する領域に作業者が誤って立ち入ることによるロボットの停止または減速によって、生産設備の稼働率が低下することを防止しつつ、人とロボットとの接触を回避することが可能となる。
【０００９】
上記態様においては、前記照明装置が、前記ロボットの全動作領域を床面に投影した投影領域を含む照明領域にわたって前記床面を照明可能に配置され、前記照明制御部が、予測された前記動作領域に基づいて、前記ロボットが配置される可能性のある前記動作領域を床面に投影した領域に対応する領域を照明するように前記照明装置を制御してもよい。
このようにすることで、照明装置による床面への照明によって、照明範囲の境界を明確に表示することができ、ロボットと接触する領域への作業者の立ち入りをより確実に防止することができる。
【００１０】
また、上記態様においては、前記動作領域予測部が、前記プログラムを複数のプログラム部分に区分して、該プログラム部分毎に前記動作領域を予測し、前記照明制御部が、前記プログラム部分毎に予測された前記動作領域を表示するように前記照明装置を点灯または消灯させてもよい。
このようにすることで、ロボットの動作前に、実行前のプログラム区分毎にロボットが動作する可能性のある動作領域を予測して表示することにより、ロボットと接触する領域への作業者の立ち入りをより確実に防止することができる。
【００１１】
また、上記態様においては、前記動作領域予測部が、現在時刻から所定時間後までのプログラムに対応する前記動作領域を予測してもよい。
このようにすることで、所定時間先までのロボットの動作領域をリアルタイムに予測することができる。
【００１２】
また、本発明の他の態様は、ロボットを動作させるプログラムに基づいて該ロボットの動作領域を予測する動作領域予測部と、該動作領域予測部により予測された前記動作領域に基づいて、前記ロボットまたはその周辺に配置された照明装置を点灯または消灯させることにより、前記動作領域を表示する照明制御部とを備えるロボット制御装置を提供する。
【００１３】
上記態様においては、前記動作領域予測部が、前記プログラムを複数のプログラム部分に区分して、該プログラム部分毎に前記動作領域を予測し、前記照明制御部が、前記プログラム部分毎に予測された前記動作領域を表示するように前記照明装置を点灯または消灯させてもよい。
また、上記態様においては、前記動作領域予測部が、現在時刻から所定時間後までのプログラムに対応する前記動作領域を予測してもよい。
【発明の効果】
【００１４】
本発明によれば、生産設備の稼働率を低下させることなく、人と産業用ロボットとの接触を回避することができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るロボットシステムを示す全体構成図である。
【図２】図１のロボットシステムを示す平面図である。
【図３】図１のロボットシステムを示すブロック図である。
【図４】図１のロボットシステムに備えられるロボット制御装置の動作を説明するフローチャートである。
【図５】図１のロボットシステムの第１の変形例を示す全体構成図である。
【図６】図１のロボットシステムの第２の変形例を示す全体構成図である。
【図７】図１のロボットシステムの第３の変形例における照明装置による照明範囲を示す平面図である。
【図８】図７のロボットシステムに備えられるロボット制御装置の動作を説明するフローチャートである。
【図９】図１のロボットシステムの第４の変形例を示す全体構成図である。
【図１０】図９のロボットシステムの照明装置による照明範囲を説明する正面図である。
【図１１】図９のロボットシステムにおけるロボットの動作領域と照明方向を説明する模式的な平面図である。
【図１２】図１１の各照明方向と照明範囲を説明する模式的な平面図である。
【図１３】図９のロボットシステムに備えられるロボット制御装置の動作を説明するフローチャートである。
【図１４】図１のロボットシステムの第５の変形例に備えられるロボット制御装置の動作を説明するフローチャートである。
【発明を実施するための形態】
【００１６】
本発明の一実施形態に係るロボットシステム１について図面を参照して以下に説明する。
本実施形態に係るロボットシステム１は、図１に示されるように、ロボット２と、該ロボット２を制御する制御装置（ロボット制御装置）３と、ロボット２の周辺に配置された照明装置４とを備えている。
【００１７】
ロボット２は、図１に示す例では、床面に設置された直動軸５と、該直動軸５によって水平方向に移動させられるスライダ６に搭載された直立多関節型のマニピュレータ部７とを備えている。直動軸５によるスライダ６の直線動作範囲、およびマニピュレータ部７を構成する各軸の動作範囲は予め定まっており、ロボット２はこれらの動作範囲を組み合わせた最大限の動作範囲の中で動作することができる。ロボット２の形式は図１に限られるものではない。
【００１８】
照明装置４は、図１に示す例では、ロボット２の周囲の床面に、間隔をあけて多数配置された発光部８を備えている。各発光部８は、例えば、ＬＥＤ光源により構成されている。発光部８は、図２に示されるように、上述したロボット２の最大限の動作範囲（投影領域）Ｓｍａｘを含みかつ最大限の動作範囲Ｓｍａｘよりも広い範囲（照明領域）にわたって配置されている。各発光部８の位置のデータは、後述する記憶部９に記憶されている。
【００１９】
制御装置３は、図３に示されるように、記憶部９と、該記憶部９に記憶されたプログラムに従ってロボット２の各軸を動作させるロボット制御部１０とを備えるとともに、以下に示す通りに照明装置４を制御するようになっている。
すなわち、制御装置３は、図２および図３に示されるように、ロボット２を動作させるプログラムを記憶部９から読み取る読取部１１と、該読取部１１により読み取られたプログラムから所定時間にわたる動作領域Ｓを予測する動作領域予測部１２と、該動作領域予測部１２により予測された動作領域Ｓに基づいて点灯させる発光部８と消灯する発光部８とを決定し、決定された発光部８を点灯または消灯させる照明制御部１３とを備えている。
【００２０】
制御装置３による照明装置４の制御として、ロボット２の動作前にプログラムを書き換える方法について、図４のフローチャートを参照して以下に説明する。
制御装置３は、まず、ロボット制御部１０によってロボット２を動作させる前に、読取部１１によって記憶部９に記憶されている各発光部８の位置のデータおよびロボット２を動作させるプログラムを記憶部９から読み出す（ステップＳ１）。
【００２１】
動作領域予測部１２は、読み出したプログラム内にブレークポイントを設置することによりプログラムを複数に区分し、区分されたプログラム部分毎にロボット２の取り得る動作軌跡から動作領域Ｓを予測するようになっている。
具体的には動作領域予測部１２は、読み出したプログラム内に、例えば、行数で見て均等な間隔でブレークポイントｔ１，ｔ２，…，ｔｊを設定する（ステップＳ２）。
【００２２】
次いで、プログラムを動作させたときの時系列で考えた場合の各ブレークポイントｔ１，ｔ２，…，ｔｊの１つ前のブレークポイントをｔ１，ｔ２，…，ｔｊから選んでブレークポイントｔ１−，ｔ２−，…，ｔｊ−とする。１つ前のブレークポイントが存在しない場合には、プログラムの先頭をブレークポイントとする（ステップＳ３）。そして、定数ｉを１に初期化する（ステップＳ４）。
【００２３】
そして、動作領域予測部１２は、ブレークポイントｔｉ−からブレークポイントｔｉまでのプログラムにより、ロボット２が通過する動作領域Ｓを演算により求める（ステップＳ５）。
算出された動作領域Ｓと各発光部８の位置とを比較し、動作領域Ｓに対する距離が閾値ｄより小さくなる発光部８を特定する（ステップＳ６）。ここで、発光部８が動作領域Ｓ内に配置されている場合には、動作領域Ｓに対する距離はゼロとなり、閾値ｄより小さくなるため必ず特定される。一方、発光部８が動作領域Ｓ外に配置されている場合には動作領域Ｓとの（最短）距離が閾値ｄより小さい場合に特定される。
【００２４】
そして、ブレークポイントｔｉ−からブレークポイントｔｉまでの間に、ステップＳ６において特定された発光部８を点灯させ、他の発光部８を消灯させる命令をプログラムに追加する（ステップＳ７）。そして、定数ｉを１つインクリメントする（ステップＳ８）。
【００２５】
その後、全てのブレークポイントについて処理されたか否か（ｉ＞ｊか否か）が判定され（ステップＳ９）、処理されていない場合（ｉ≦ｊの場合）には、ステップＳ５からの処理が繰り返される。
そして、全てのブレークポイントについて処理された場合には、ステップＳ７において書き換えられたプログラムが保存される（ステップＳ１０）。
制御装置３は保存されたプログラムに従ってロボット２および照明装置４を制御するようになっている。
【００２６】
このようにすることで、ブレークポイントによって区分されたプログラム部分毎に、ロボット２の動作領域Ｓが予測され、予測された動作領域Ｓ近傍の発光部８を点灯させる命令がプログラムに追加されて保存される。したがって、保存されたプログラムに従ってロボット２を作動させると、ブレークポイントによって区分されたプログラム部分毎に、ロボット２がこれから動作する動作領域Ｓ付近の発光部８が点灯し、動作領域Ｓから遠い部分の発光部８が消灯する。図２において、白抜きの円が点灯した発光部８を示し、黒塗りの円が消灯している発光部８を示しており、動作領域Ｓを床面に投影した領域に対応する領域（近傍領域）の発光部８が点灯している。
【００２７】
すなわち、動作領域Ｓ付近に存在する作業者は、発光部８の点灯によって直後のロボット２の動作領域Ｓが表示されるので、動作領域Ｓ付近であるか否かを認識することができる。
従来、センサによって作業者が動作領域Ｓに立ち入ったことを検出する場合には、作業者自身は動作領域Ｓへの立ち入りに気づかないが、本実施形態によれば、作業者に対してロボット２の動作領域Ｓを事前に表示することができ、ロボット２の停止や減速を行うことなく、ロボット２と作業者との接触を回避することができるという利点がある。
【００２８】
なお、本実施形態においては、プログラムの行数を見て均等に分けるようにブレークポイントを設定することとした。これに代えて、実際のロボット２の動作を予測して略等時間間隔となるようにブレークポイントを設定することにしてもよい。
【００２９】
また、ロボット２のプログラムには条件分岐が伴う場合があるので、このような場合にはプログラムの読み込みだけでは動作領域Ｓを予測することが困難である。
プログラム中に条件分岐が存在する場合には、条件分岐の直後にブレークポイントを設定し、条件分岐を含むプログラム部分においては、条件分岐後に点灯させる可能性のある全ての発光部８を点灯させることにしてもよい。
【００３０】
また、本実施形態においては、発光部８を床面にマトリクス状に配置しているが、これに限定されるものではない。すなわち、床面に配置することに代えて、図５または図６に示されるように、ロボット２の一部に配置することにしてもよい。このようにしても、現時点以降にとり得るロボット２の動作領域Ｓの大まかな方向を作業者に対して報知することができる。
【００３１】
また、床面にＬＥＤ光源のような点状の発光部８を多数配置することに代えて、ロボット２の上方、例えば、天井に配置した発光部８によって、所定の広さを持った照明範囲で床面を照らすことにしてもよい。図７に示す例では、各発光部８の照明範囲を半径ｒの円で表示している。
【００３２】
この場合には、図８のフローチャートに示されるように、ステップＳ１Ａにおいて、制御装置３は、まず、ロボット制御部１０によってロボット２を動作させる前に、読取部１１によって記憶部９に記憶されている各発光部８による照明範囲の中心位置および半径ｒのデータおよびロボット２を動作させるプログラムを記憶部９から読み出す。
そして、ステップＳ６Ａにおいて、図７に示されるように、中心位置と動作領域Ｓとの最短距離Ｌｍｉｎがｒ＋ｄより小さい位置に配置されている全ての発光部８を特定する。図７の場合には、照明範囲Ａ，Ｂの発光部８が特定され、照明範囲Ｃの発光部８は特定されない。それ以外は図４のフローチャートと同じである。
【００３３】
各発光部８が半径ｒの照明範囲で床面を照らすことにしたが、これに代えて、予測されるロボット２の動作領域Ｓの大きさに応じて、照明範囲を表す円の半径を変更するように発光部８を点灯させてもよい。また、発光部８の点灯または消灯によって動作領域Ｓを表示する場合の他、発光部８の照明方向をロボット２の動作領域Ｓに合わせて移動させることにしてもよい。
【００３４】
また、図９に示されるように、発光部８を配置する場所をロボット２の一部２ａとした場合に、直動軸５を持たない場合のように、ロボット２の構造が大きくなければ、発光部８を取り付ける部分も小さくなる。このような場合に、ロボット２の動作領域Ｓを表示するために、照明制御部１３は、図１０に示されるように発光部８により床面を照射する範囲を調節するように発光部８による照明範囲の俯角αを制御することにしてもよい。
【００３５】
図１１および図１２に示されるように、ロボット２から近い位置に動作領域Ｓが存在する場合（方向θ１，θ３，θ４）には、俯角αを大きくすることで発光部８による照明範囲をロボット２に近い床面に近づけ、ロボット２から遠い位置まで動作領域Ｓが達している場合（方向θ２）には、俯角αを小さくすることで、発光部８による照明範囲をロボット２から遠い床面まで到達させることができる。
【００３６】
すなわち、図１３に示されるように、ステップＳ１Ｂにおいて、発光部８の向きを示す角度θのデータと、プログラムを記憶部９から読み出す。
また、ステップＳ６Ｂにおいて、動作領域Ｓが存在する照明方向θを有する発光部８を特定する。
【００３７】
そして、ステップＳ７Ａにおいて、ロボット２から見た動作領域Ｓの最も遠い輪郭までの距離ｄを算出し、特定された発光部８による床面の照明範囲が、ロボット２からみて距離ｄに略等しくなるような発光部８の照明範囲の俯角αを算出する。
その後、ステップＳ７Ｂにおいて、ブレークポイントｔｉ−からブレークポイントｔｉまでの間に、ステップＳ６Ｂにおいて特定された発光部８をステップＳ７Ａにおいて算出された俯角で点灯させ、他の発光部８を消灯させる命令をプログラムに追加する。それ以外は、図４の処理と同じである。
【００３８】
また、上記各実施形態においては、ロボット２の動作に先立って全てのプログラム内のブレークポイント間のプログラム部分に対して特定された発光部８の点灯および消灯の命令を追加することとしたが、これに代えて、各プログラム部分が実行される前に、逐次、ロボット２の動作軌跡を計算して点灯させる発光部８を特定し、プログラム部分の実行に際して、特定された発光部８を点灯させるようにしてもよい。
【００３９】
すなわち、図１４に示されるように、まず、各発光部８の位置データを記憶部９から読み出し（ステップＳ２０）、現在時刻ｔ０を取得し（ステップＳ２１）、記憶部９に記憶されているプログラムを先読みして、時刻ｔ０から時刻ｔ０＋Δｔまでのロボット２の動作領域Ｓを算出する（ステップＳ２２）。
【００４０】
次いで、算出された動作領域Ｓとの距離がｄより小さい位置に配置されている全ての発光部８を特定する（ステップＳ２３）。
そして、特定された全ての発光部８を点灯させ、それ以外の発光部８を消灯させる（ステップＳ２４）。
【００４１】
ロボット２が動作中であるか否かを判定し（ステップＳ２５）、ロボット２が動作中である場合にはステップＳ２１からの処理を繰り返す。ロボット２の動作が停止している場合には、動作が開始するまで待機し（ステップＳ２６）、ロボット２が動作を開始した場合にはステップＳ２１からの処理を繰り返す。
【００４２】
このようにすることで、プログラム全体について発光部８を点灯させる命令を追加することなく、ロボット２の動作領域Ｓをリアルタイムに予測して発光部８の点灯または消灯を制御するので、プログラムが長い場合でもロボット２の動作開始前の待機時間を短縮することができるという利点がある。
なお、この場合、ロボット２の動作中にその動作領域Ｓを計算し続けることになるため、周期的に計算することにして計算回数を減らすことにしてもよい。また、プログラム中に条件分岐がある場合には、時間Δｔの間に条件分岐によって点灯させる可能性のある全ての発光部８を点灯させることにすればよい。
【符号の説明】
【００４３】
１  ロボットシステム
２  ロボット
３  制御装置（ロボット制御装置）
４  照明装置
１０  ロボット制御部
１２  動作領域予測部
１３  照明制御部
【図１】
2017148905.tif 000003
【図２】
2017148905.tif 000004
【図３】
2017148905.tif 000005
【図４】
2017148905.tif 000006
【図５】
2017148905.tif 000007
【図６】
2017148905.tif 000008
【図７】
2017148905.tif 000009
【図８】
2017148905.tif 000010
【図９】
2017148905.tif 000011
【図１０】
2017148905.tif 000012
【図１１】
2017148905.tif 000013
【図１２】
2017148905.tif 000014
【図１３】
2017148905.tif 000015
【図１４】
2017148905.tif 000016