(57)【要約】【課題】ロボットの動作により作業者が挟まれたときに、作業者への影響を抑制するロボットの制御装置を提供する。【解決手段】制御装置は、人がロボット１に接触した時にロボット１の動作を停止させる停止指令部４７と、ロボット１の動作速度を制限する速度制限部５１とを備える。人の挟み込みに関する距離判定値が予め定められている。速度制限部５１は、ロボット１の構成部材、ハンド２、およびロボット１の周りに配置される物のうち、２つの物の３次元モデルを生成するモデル生成部５２と、２つの物のモデル間の最短距離を算出する距離算出部５３を含む。最短距離が距離判定値未満である場合に、速度制限部５１は、ロボット１の動作速度を予め定められた制限速度以下に制御する。【選択図】図２
2019098410.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの動作速度を制御する制御装置であって、
人が前記ロボットに接触した時に前記ロボットの動作を停止させる停止指令部と、
前記ロボットの動作速度を制限する速度制限部と、
前記ロボットの制御に関する情報を記憶する記憶部と、を備え、
前記ロボットの構成部材、前記ロボットに取り付けられた作業ツール、および前記ロボットの周りに配置される物のうち、２つの物による人の挟み込みに関する距離判定値が予め定められて、前記記憶部に記憶されており、
前記速度制限部は、前記ロボットの構成部材、前記作業ツール、および前記ロボットの周りに配置される物のうち、少なくとも２つの物の３次元モデルを生成するモデル生成部と、前記３次元モデルにおいて、２つの物のモデル間の最短距離を算出する距離算出部と、前記最短距離が、前記距離判定値未満か否かを判定する判定部とを含み、
前記最短距離が距離判定値未満である場合に、前記速度制限部は、前記ロボットの動作速度を予め定められた制限速度以下に制御する、制御装置。
【請求項２】
前記判定部にて前記最短距離の判定を行う物は、前記ロボットの構成部材と前記ロボットの周りに配置される物とを含み、
前記ロボットの構成部材のモデルは、前記ロボットの構成部材を覆うように形成されており、
前記ロボットの周りに配置される物のモデルは、前記ロボットの周りに配置される物を覆うように形成されており、
前記距離判定値は、前記ロボットの構成部材のモデルと前記ロボットの周りに配置される物のモデルとの距離の判定値であり、
前記距離算出部は、前記ロボットの構成部材のモデルと前記ロボットの周りに配置される物のモデルとの最短距離を算出する、請求項１に記載の制御装置。
【請求項３】
前記判定部にて前記最短距離の判定を行う物は、前記ロボットの構成部材と前記作業ツールとを含み、
前記ロボットの構成部材のモデルは、前記ロボットの構成部材を覆うように形成されており、
前記作業ツールのモデルは、前記作業ツールを覆うように形成されており、
前記距離判定値は、前記ロボットの構成部材のモデルと前記作業ツールのモデルとの距離の判定値であり、
前記距離算出部は、前記ロボットの構成部材のモデルと前記作業ツールのモデルとの最短距離を算出する、請求項１または２に記載の制御装置。
【請求項４】
前記判定部にて前記最短距離の判定を行う物は、前記作業ツールと前記ロボットの周りに配置される物とを含み、
前記作業ツールのモデルは、前記作業ツールを覆うように形成されており、
前記ロボットの周りに配置される物のモデルは、前記ロボットの周りに配置される物を覆うように形成されており、
前記距離判定値は、前記作業ツールのモデルと前記ロボットの周りに配置される物のモデルとの距離の判定値であり、
前記距離算出部は、前記作業ツールのモデルと前記ロボットの周りに配置される物のモデルとの最短距離を算出する、請求項１から３のいずれか一項に記載の制御装置。
【請求項５】
前記判定部にて前記最短距離の判定を行う物は、前記ロボットの第１の構成部材と前記ロボットの第２の構成部材とを含み、
前記第１の構成部材のモデルは、前記第１の構成部材を覆うように形成されており、
前記第２の構成部材のモデルは、前記第２の構成部材を覆うように形成されており、
前記距離判定値は、前記第１の構成部材のモデルと前記第２の構成部材のモデルとの距離の判定値であり、
前記距離算出部は、前記第１の構成部材のモデルと前記第２の構成部材のモデルとの最短距離を算出する、請求項１から４のいずれか一項に記載の制御装置。
【請求項６】
前記ロボットの構成部材、前記作業ツール、および前記ロボットの周りに配置される物のうち、２つの物が互いに接触する時の距離の判定値である接触判定値が予め定められて、前記記憶部に記憶されており、
２つの物の接触に関する前記接触判定値は、人の挟み込みに関する前記距離判定値よりも小さく設定されており、
前記判定部は、前記最短距離が前記接触判定値未満か否かを判定し、
前記速度制限部は、前記最短距離が前記接触判定値未満である場合に、前記ロボットの動作速度を予め定められた制限速度以下に制御する、請求項１から５のいずれか一項に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの速度を制限する制御装置に関する。
【背景技術】
【０００２】
従来の技術において、作業者がロボットと協働して作業を行うロボット装置が知られている。例えば、作業者がロボット装置と共に重たい物を搬送することが知られている。作業者は、ロボットが動作する範囲内にて作業を行うために、ロボットに接触する場合がある。このために、ロボットの制御装置は、ロボットと共に作業を行う時に作業者を保護するための機能を備えることができる。
【０００３】
ロボットは、作業者から加えられる外力を検出する検出器を備えることができる。ロボットの制御装置は、外力を検出した時にロボットが作業者に接触したと判定することができる。そして、制御装置は、ロボットを停止する制御を実施することができる（例えば、特許第６１４０１１４号公報および特許第５９０２６６４号公報）。
【０００４】
また、ロボットが動作したときに、ロボットが他の物と干渉する場合がある。従来の技術においては、１つのロボットが他のロボットと干渉したり、ロボットと他の装置とが干渉したりすることを抑制する制御が知られている（例えば、特開２０１０−５２１１６号公報および特開２０１７−９４４３０号公報）。更に、ロボットのアームと作業ツールとの干渉を抑制する制御が知られている（例えば、特許第３９０２３１０号公報および特許第３３５７３９２号公報）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第６１４０１１４号公報
【特許文献２】特許第５９０２６６４号公報
【特許文献３】特開２０１０−５２１１６号公報
【特許文献４】特開２０１７−９４４３０号公報
【特許文献５】特許第３９０２３１０号公報
【特許文献６】特許第３３５７３９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
作業者と協働して作業を行うロボットでは、ロボットが作業者に接触すると、ロボットが停止する機能を有する。更に、ロボットの安全機能として、ロボット装置に含まれる部材と、ロボット装置が設置された床に固定された物とが接触すると判定される場合に、ロボットを停止させる機能が知られている。この安全機能により、ロボットを構成する部材、作業ツール、または床に固定された物の破損を防止することができる。ロボットの制御装置は、物同士の距離が０または０にマージンを加えた値未満になると、ロボットを停止させることができる。
【０００７】
ところで、作業者とロボットとが同一の作業領域にて作業を行う場合に、ロボットの位置および姿勢は変化する。作業者は、例えば、ロボットのアームとロボットの周りに配置された作業台との間に挟まれる場合がある。制御装置は、外力を検出するとロボットを停止する。しかしながら、ロボットを停止する指令が発信されてから完全にロボットが停止するまでに、ロボットは慣性により動作する。例えば、アームの向きが変化しているときに停止指令が発信された場合に、アームは直ぐに停止しない。アームは、所定の惰性の距離を移動した後に停止する。
【０００８】
作業者がロボット装置の構成部材にて挟まれた場合に、ロボットの停止指令が発信されてから惰走する期間は作業者が押圧され続ける。また、ロボットが惰性で動くために挟まれる空間が小さくなる。この結果、ロボットが惰性で動いている期間には、作業者が更に強く挟まれるという問題があった。
【課題を解決するための手段】
【０００９】
本開示の一態様は、ロボットの動作速度を制御する制御装置である。制御装置は、人がロボットに接触した時にロボットの動作を停止させる停止指令部を備える。制御装置は、ロボットの動作速度を制限する速度制限部と、ロボットの制御に関する情報を記憶する記憶部とを備える。ロボットの構成部材、ロボットに取り付けられた作業ツール、およびロボットの周りに配置される物のうち、２つの物による人の挟み込みに関する距離判定値が予め定められて、記憶部に記憶されている。速度制限部は、ロボットの構成部材、作業ツール、およびロボットの周りに配置される物のうち、少なくとも２つの物の３次元モデルを生成するモデル生成部を含む。速度制限部は、３次元モデルにおいて、２つの物のモデル間の最短距離を算出する距離算出部と、最短距離が、距離判定値未満か否かを判定する判定部とを含む。最短距離が距離判定値未満である場合に、速度制限部は、ロボットの動作速度を予め定められた制限速度以下に制御する。
【発明の効果】
【００１０】
本開示の一態様によれば、ロボットの動作により作業者が挟まれたときに、作業者への影響を抑制するロボットの制御装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態におけるロボット装置の斜視図である。
【図２】実施の形態におけるロボット装置のブロック図である。
【図３】実施の形態におけるロボット装置のモデルの第１の側面図である。
【図４】実施の形態におけるロボット装置のモデルの第２の側面図である。
【図５】実施の形態におけるロボット装置のモデルの第３の側面図である。
【図６】実施の形態におけるロボット装置のモデルの第４の側面図である。
【図７】実施の形態におけるロボット装置のモデルの第５の側面図である。
【図８】実施の形態におけるロボットの制御装置の制御のフローチャートである。
【図９】実施の形態におけるロボット装置の他のモデルの側面図である。
【発明を実施するための形態】
【００１２】
図１から図９を参照して、実施の形態におけるロボットの制御装置について説明する。本実施の形態のロボット装置は、作業者と協働して作業を行うことができるロボットを備える。作業者と協働して作業を行うことができるロボットは、協働ロボットと称されている。
【００１３】
図１は、本実施の形態におけるロボット装置の斜視図である。ロボット装置５は、ロボット１およびロボット１に取り付けられたハンド２を備える。ロボット装置５は、ロボット１およびハンド２を制御する制御装置４を備える。ロボット１の動作の範囲内には、ワーク６１を載置する作業台８が配置されている。本実施の形態のロボット１は、複数の関節部を含む多関節ロボットである。多関節ロボットでは、関節部においてアームおよびリスト等の向きが変化する。
【００１４】
ハンド２は、ワーク６１を把持したり解放したりする作業ツールである。作業ツールは、エンドエフェクタとも称される。ハンド２は、ロボット１のリスト１５に固定されている。本実施の形態のハンド２は爪部３が開いたり閉じたりするように形成されている。作業ツールとしてはハンド２に限られず、ロボット装置５が行う作業に応じた任意の装置を採用することができる。例えば、溶接を行う作業ツールまたは塗装を行う作業ツール等を採用することができる。
【００１５】
本実施の形態のロボット１は、ロボット１の構成部材を駆動する複数の駆動軸を有する。ロボット１の駆動軸は、第１の軸（Ｊ１軸）としての回転軸８１から第６の軸（Ｊ６軸）としての回転軸８６までの回転軸８１〜８６を含む。ロボット１は、Ｊ１軸からＪ６軸までの複数の駆動軸に基づいて位置および姿勢が変化する。
【００１６】
ロボット１は、基台となるベース１４と、ベース１４に支持された旋回ベース１３とを備える。旋回ベース１３は、ベース１４に対して回動可能に形成されている。本実施の形態のロボット１は、複数のアームを備える。ロボット１は、上部アーム１１と下部アーム１２とを含む。下部アーム１２は、旋回ベース１３に支持されている。下部アーム１２は、旋回ベース１３に対して回動可能に形成されている。上部アーム１１は、下部アーム１２に支持されている。上部アーム１１は、下部アーム１２に対して回動可能に形成されている。
【００１７】
ロボット１は、上部アーム１１の端部に連結されているリスト１５を含む。リスト１５は、ハンド２を固定するフランジ１６を含む。リスト１５は、回転軸８５の周りにフランジ１６を回転するように形成されている。また、フランジ１６は、回転軸８６の周りに回転するように形成されている。
【００１８】
図２に、本実施の形態におけるロボット装置のブロック図を示す。図１および図２を参照して、ロボット１は、ロボット１の位置および姿勢を変化させるロボット駆動装置を含む。ロボット駆動装置は、ロボット１の構成部材を駆動する。ロボット駆動装置が駆動する構成部材としては、上部アーム１１、下部アーム１２、旋回ベース１３、リスト１５、リスト１５のフランジ１６が含まれる。ロボット駆動装置は、ロボット１の構成部材を駆動するロボット駆動モータ２２を含む。本実施の形態では、１つの駆動軸に対応して１つのロボット駆動モータ２２が配置されている。ハンド２は、ハンド２を駆動するハンド駆動装置を備える。ハンド駆動装置は、ハンド２の爪部３を駆動するハンド駆動モータ２１を含む。
【００１９】
本実施の形態のロボット装置５は、動作プログラム４１に基づいてワーク６１を搬送する。ロボット１は、動作プログラム４１に基づいて、自動的に初期の位置から目標の位置までワーク６１を搬送することができる。
【００２０】
ロボットの制御装置４は、ＣＰＵ（Central Processing Unit）と、ＣＰＵにバスを介して接続されたＲＡＭ（Random Access Memory）およびＲＯＭ（Read Only Memory）等を有する演算処理装置（コンピュータ）を含む。制御装置４は、ロボット１の制御に関する情報を記憶する記憶部４２を含む。制御装置４には、ロボット１の動作を行うために予め作成された動作プログラム４１が入力される。動作プログラム４１は、記憶部４２に記憶される。
【００２１】
動作制御部４３は、動作プログラム４１に基づいてロボット１を駆動するための動作指令をロボット駆動部４５に送出する。ロボット駆動部４５は、ロボット駆動モータ２２を駆動する電気回路を含む。ロボット駆動部４５は、動作指令に基づいてロボット駆動モータ２２に電気を供給する。ロボット駆動モータ２２が駆動することにより、ロボット１の位置および姿勢が変化する。
【００２２】
また、動作制御部４３は、動作プログラム４１に基づいてハンド２を駆動する動作指令をハンド駆動部４４に送出する。ハンド駆動部４４は、ハンド駆動モータ２１を駆動する電気回路を含む。ハンド駆動部４４は、動作指令に基づいてハンド駆動モータ２１に電気を供給する。ハンド駆動モータ２１が駆動することにより、ハンド２の爪部３が駆動する。ハンド２は、ワーク６１を把持したり解放したりすることができる。
【００２３】
ロボット１は、ロボット１の位置および姿勢を検出する状態検出器を含む。本実施の形態における状態検出器は、それぞれの駆動軸に対応するロボット駆動モータ２２に取り付けられた位置検出器１８を含む。位置検出器１８の出力により、それぞれの駆動軸における構成部材の位置および姿勢を算出することができる。例えば、位置検出器１８は、ロボット駆動モータ２２が駆動するときの回転角を検出する。また、位置検出器１８は、ロボット駆動モータ２２の回転角に基づいて、ロボット駆動モータ２２の回転速度を算出することができる。
【００２４】
本実施の形態におけるロボット１は、作業者と協働して作業を実施する。制御装置４は、作業者等の人がロボット１に接触した時にロボット１を停止するように形成されている。本実施の形態のロボット１は、ベース１４に作用する力を検出する力検出器１９を備える。力検出器１９は、床６３に固定されている。ベース１４は、力検出器１９に支持されている。ベース１４に作用する力は、ロボット１に作用する力に相当する。力検出器１９は、作業者からロボット１に加えられた力に対応した信号を出力する。
【００２５】
力検出器１９としては、ロボット１に作用する力の大きさおよび力の方向を検出可能な任意の検出器を採用することができる。本実施の形態の力検出器１９は、ベース１４に連結されている金属の基材と、基材の表面に取り付けられた歪みセンサとを含む。そして、力検出器１９は、歪みセンサによって検出した変形量に基づいて、ロボット１に作用する力を算出することができる。
【００２６】
制御装置４は、人がロボット１に接触した時にロボット１の動作を停止させる停止指令部４７を含む。停止指令部４７は、ロボット１に対して外力が加えられた時にロボット１を停止させる。停止指令部４７は、ロボット１を停止する指令を動作制御部４３に送出する。停止指令部４７は、ロボット１の外側からロボット１に加えられる外力を推定する外力算出部４８を含む。力検出器１９にて検出される力には、ロボット１の質量およびロボット１の動作により生じる内力と、ロボット１の外側からロボット１に加えられる外力とが含まれる。
【００２７】
外力算出部４８は、ロボット１の外側から力が加えられていない状態で、ロボット１が動作した時に自重によりロボット１に作用する内力を算出する。内力は、位置検出器１８の出力により検出したロボット１の位置および姿勢と、アームなどのロボット１の構成部材の質量およびハンド２の質量に基づいて算出することができる。ロボット１の構成部材の質量およびハンド２の質量は、予め記憶部４２に記憶させておくことができる。外力算出部４８は、力検出器１９により検出された力から内力を減算することにより外力を算出する。外力は、作業者等がロボット１に加えた力に相当する。
【００２８】
外力が予め定められた外力の判定値よりも大きい場合に、停止指令部４７は、人または物がロボット１に接触したと判定することができる。停止指令部４７は、外力が予め定められた判定値よりも大きい場合に、ロボット１を停止する指令を動作制御部４３に送出する。動作制御部４３は、ロボット１の動作を停止する。すなわち、動作制御部４３は、駆動している全てのロボット駆動モータ２２と、ハンド駆動モータ２１とを停止する。このように、本実施の形態のロボット１は、ロボット１が動作している期間中に、人または物がロボット１に接触した場合に自動的に停止する。
【００２９】
本実施の形態の制御装置４は、ロボット１に作用する外力を算出することにより、ロボット１を停止しているが、この形態に限られない。制御装置は、任意の構成および制御にて人または物の接触を検出することができる。例えば、ロボットの外周面に接触センサを配置して、人または物の接触を検出しても構わない。接触センサが人または物の接触を検出した場合に、制御装置は、ロボットを停止することができる。
【００３０】
本実施の形態のロボット装置５では、ロボット１を駆動している期間中に、作業者がロボット１の近傍にて作業を行う。ロボット１が駆動しているときに、ロボット装置５の構成部材、およびロボット１の周りに配置される物により、作業者の手や足等が挟まれる場合がある。
【００３１】
人が挟まれる虞のあるロボット装置５の構成部材としては、ロボット装置５を構成する任意の部材が含まれる。例えば、力検出器１９、ベース１４、旋回ベース１３、下部アーム１２、上部アーム１１、リスト１５、およびハンド２が含まれる。ロボット１の周りに配置される物としては、人が挟まれる虞のある任意の部材を採用することができる。例えば、ロボットの近くに配置される工作機械、旋盤などの加工機、作業台、ワークを搬送するためのコンベヤ、ワークを配置するためのかご、又は、ロボット装置５の周りに形成される柵などを例示することができる。また、本実施の形態では、ロボット１の周りに配置される物には、ロボット装置５が設置される床６３が含まれる。
【００３２】
本実施の形態の制御装置４は、人が挟まれる虞のあるロボット１の位置および姿勢になった場合に、ロボット１の動作速度が予め定められた制限速度以下になるように制御する。本実施の形態の制御装置４は、ロボット装置５を構成する構成部材等のモデルに基づいて、２つの物同士の距離を判定する。
【００３３】
作業者は、ロボット装置５の構成部材およびロボット１の周りに配置される物の３次元情報５８を予め制御装置４に入力する。３次元情報５８は、記憶部４２に記憶される。３次元情報５８としては、例えば、ＣＡＤ（Computer Aided Design）装置にて生成される３次元データを用いることができる。ロボット１の３次元データには、ロボット１の構成部材等の形状データが含まれている。なお、３次元情報５８としては、３次元データに限られず、３次元モデルを生成できる任意のデータを採用することができる。例えば、ＣＡＤ装置で形成された２次元のデータを３次元情報として制御装置４に入力して、制御装置４の内部で３次元モデルを作成しても構わない。
【００３４】
制御装置４は、ロボット１の動作速度を制限する速度制限部５１を備える。速度制限部５１は、ロボット１の構成部材、ハンド２、およびロボット１の周りに配置される物のうち、少なくとも２つの物の３次元モデルを生成するモデル生成部５２を含む。モデル生成部５２は、３次元情報５８に基づいて、それぞれの物の３次元モデルを作成する。
【００３５】
図３に、本実施の形態におけるロボット装置のモデルの第１の側面図を示す。図３は、側方から見た時のロボット装置５および作業台８のモデル８ａである。モデル生成部５２は、位置検出器１８の出力を取得する。モデル生成部５２は、位置検出器１８の出力に基づいて、現在のロボット１の位置および姿勢を算出する。モデル生成部５２は、現在のロボット１の位置および姿勢に応じたロボット１のモデル１ａを作成する。モデル生成部５２は、実際のロボット１の位置および姿勢の変化に応じて、モデル１ａの位置および姿勢を変更する。
【００３６】
モデル生成部５２は、それぞれの物に対応する３次元モデルを生成する。モデル生成部５２は、モデルの対象となる物を覆うようにモデルを形成することができる。モデル生成部５２は、モデルの対象となる物を内部に含むようにモデルを形成することができる。また、図３に示す例では、モデル生成部５２は、それぞれの物の形状に沿うようにモデルを生成している。
【００３７】
ロボット１のモデル１ａは、ロボット１の構成部材のモデルを含む。ロボット１の構成部材のモデルは、ベース１４および力検出器１９のモデル１４ａ、および旋回ベース１３のモデル１３ａを含む。ロボット１の構成部材のモデルは、下部アーム１２のモデル１２ａ、上部アーム１１のモデル１１ａ、およびリスト１５のモデル１５ａを含む。なお、本実施の形態においては、ベース１４と力検出器１９とは互いに固定されている。このために、モデル生成部５２は、ベース１４および力検出器１９を含むモデル１４ａを生成している。
【００３８】
ロボット１のそれぞれの構成部材のモデル１１ａ，１２ａ，１３ａ，１４ａ，１５ａは、対応する構成部材を覆うように形成することができる。それぞれのモデル１１ａ，１２ａ，１３ａ，１４ａ，１５ａは、それぞれの物の形状に沿う形状を有している。例えば、モデル１２ａは、ロボット１の下部アーム１２の形状に対応する形状を有する。また、ロボット１の構成部材には、それぞれの構成部材に配置される電気ケーブルなどの線条体、電気的な接続を行うためのコネクタ、ロボット駆動モータ等を含めることができる。モデル生成部５２は、これらの全ての部品を覆うように構成部材のモデルを生成することができる。
【００３９】
モデル生成部５２は、ハンド２のモデル２ａを生成する。作業ツールのモデルは、作業ツールを覆うように形成することができる。モデル２ａは、ハンド２の形状に対応する形状を有する。モデル生成部５２は、ロボット１の周りに配置される物として、作業台８のモデル８ａを生成する。ロボットの周りに配置される物のモデルは、ロボットの周りに配置される物を覆うように形成することができる。モデル８ａは、作業台８の形状に対応する形状を有する。モデル生成部５２は、ロボット１の周りに配置される物として、床６３のモデル６３ａを形成する。モデル６３ａは、３次元の空間において延びる板状部材または床の表面に対応する面にて構成されることができる。
【００４０】
なお、図３に示す例においては、モデル生成部５２は、ワーク６１のモデル６１ａを形成しているが、この形態に限られず、ワーク６１のモデル６１ａは形成されなくても構わない。次に、人が挟まれる形態の例を取り上げて説明する。
【００４１】
図４に、本実施の形態におけるロボット装置のモデルの第２の側面図を示す。ロボット１の位置および姿勢に応じて、作業者がロボット装置５の構成部材と、ロボット１の周りに存在する物とにより挟まれる場合がある。図４では、ロボット１の構成部材と、ロボット１の周りに配置される作業台８とにより作業者が挟まれる例を示している。領域７１において、ロボット１のリスト１５と作業台８との間の距離が小さくなっている。作業者は、リスト１５と作業台８とに挟まれる虞がある。
【００４２】
速度制限部５１は、３次元モデルにおいて、ロボット１の構成部材、ハンド２、およびロボット１の周りに配置される物のうち、２つ物のモデル間の最短距離を算出する距離算出部５３を含む。図４に示す例では、距離算出部５３は、ロボットの構成部材のモデルとロボットの周りに配置される物のモデルとの最短距離を算出する。距離算出部５３は、リスト１５と作業台８との最短距離ＤＬを算出する。
【００４３】
距離算出部５３は、任意の制御にて最短距離ＤＬを算出することができる。例えば、ロボット１の位置および姿勢に応じて、互いに接近する２つの物を予め定めておくことができる。または、距離の判定を行う２つの物を予め定めておくことができる。距離算出部５３は、距離の判定の対象となる物の表面に、所定の間隔を開けて測定点を配置することができる。距離算出部５３は、全ての複数の測定点の組み合わせについて、測定点同士の距離を算出する。そして、距離算出部５３は、最小の距離を最短距離ＤＬに設定することができる。
【００４４】
速度制限部５１は、最短距離ＤＬが、距離判定値未満か否かを判定する判定部５４を含む。ロボットの構成部材、作業ツール、およびロボットの周りに配置される物のうち、２つの物による人の挟み込みに関する距離判定値が予め定められている。本実施の形態では、距離判定値として、作業者が挟まれる虞のあるモデル同士の距離が予め定められている。距離判定値は、記憶部４２に記憶されている。ここでの例では、リスト１５のモデル１５ａと作業台８のモデル８ａとの距離判定値が予め定められている。
【００４５】
判定部５４は、現在の最短距離ＤＬが判定距離未満であるか否かを判定する。最短距離ＤＬが距離判定値未満である場合に、速度制限部５１は、ロボット１の動作速度を予め定められた制限速度以下にする指令を動作制御部４３に送出する。動作制御部４３は、現在駆動している全ての駆動軸において駆動速度を低減する。例えば、動作制御部４３は、ツール先端点の移動経路を維持しながら、ツール先端点の移動する速度が遅くなるようにロボット駆動モータ２２を制御することができる。現在のロボット１の動作速度が制限速度以下である場合には、動作制御部４３は、その速度を維持する制御を実施する。
【００４６】
一方で、最短距離ＤＬが距離判定値以上である場合に、速度制限部５１は、ロボット１の動作速度を速度制限が実施されない速度に制御することができる。速度制限部５１は、動作制御部４３に対して、動作プログラム４１に基づいて動作速度を制御する指令を送出することができる。
【００４７】
ロボット１の動作速度を予め定められた制限速度以下にする制御としては、例えば、低い速度を予め定めておくことができる。速度制限部５１は、その速度まで低下させる制御を実施することができる。上記の例では、ロボット１の構成部材としてリスト１５を例示しているが、この形態に限られない。ロボット１の構成部材としては、上部アーム１１等の他の構成部材であっても構わない。
【００４８】
図５に、本実施の形態におけるロボット装置のモデルの第３の側面図を示す。図５には、作業ツールとロボット１の構成部材とにより人が挟まれる例が示されている。ハンド２とベース１４とが対向する領域７２において、作業者がハンド２とベース１４とに挟まれる虞がある。距離算出部５３は、ロボットの構成部材のモデルと作業ツールのモデルとの最短距離を算出する。ここでは、距離算出部５３は、ベース１４を含むモデル１４ａとハンド２のモデル２ａとの間の最短距離ＤＬを算出する。記憶部４２には、作業ツールのモデルとロボット１の構成部材のモデルとの距離判定値が記憶されている。ここでは、ハンド２とベース１４との距離判定値が記憶されている。判定部５４は、算出した最短距離ＤＬが距離判定値未満であるか否かを判定する。速度制限部５１は、最短距離ＤＬが距離判定値未満である場合に、ロボット１の動作速度を制限速度以下にする制御を実施することができる。
【００４９】
図６に、本実施の形態におけるロボット装置のモデルの第４の側面図を示す。図６には、作業ツールと、ロボット１の周りに配置される物とに作業者が挟まれる例が示されている。ハンド２と作業台８とが対向する領域７３において、作業者がハンド２と作業台８とに挟まれる虞がある。距離算出部５３は、作業ツールのモデルと、ロボット１の周りに配置される物のモデルとの最短距離を算出する。ここでは、距離算出部５３は、ハンド２のモデル２ａと、作業台８のモデル８ａとの最短距離を算出する。記憶部４２には、作業ツールと、ロボット１の周りに配置される物との距離判定値が記憶されている。ここでは、ハンド２のモデル２ａと作業台８のモデル８ａとの距離判定値が記憶されている。判定部５４は、算出した最短距離ＤＬが距離判定値未満であるか否かを判定する。速度制限部５１は、最短距離ＤＬが距離判定値未満である場合に、ロボット１の動作速度を制限速度以下にする制御を実施することができる。
【００５０】
ロボット１の周りに配置される物としては、前述のように工作機械等を例示することができる。また、図６に示す例においては、領域７５において、ハンド２と床６３とにより作業者が挟まれる虞がある。ロボット１の周りに配置される物として床６３を採用することができる。距離算出部５３は、ハンド２のモデル２ａと、床６３のモデル６３ａとの最短距離を算出することができる。記憶部４２は、ハンド２と床６３とによる挟み込みに関する距離判定値を記憶することができる。そして、判定部５４は、モデル２ａとモデル６３ａとの最短距離が距離判定値未満か否かを判定することができる。
【００５１】
図７に、本実施の形態におけるロボット装置のモデルの第５の側面図を示す。図７には、ロボットの第１の構成部材とロボットの第２の構成部材とにより作業者が挟まれる例を示されている。すなわち、図７には、ロボット１に含まれる２つの構成部材により作業者が挟まれる例が示されている。第１の構成部材としてのリスト１５と第２の構成部材としての旋回ベース１３とが対向する領域７４において、作業者がリスト１５と旋回ベース１３とに挟まれる虞がある。距離算出部５３は、第１の構成部材のモデルと第２の構成部材のモデルとの最短距離を算出する。ここでは、距離算出部５３は、リスト１５のモデル１５ａと旋回ベース１３のモデル１３ａとの最短距離ＤＬを算出する。記憶部４２には、第１の構成部材のモデルと第２の構成部材のモデルとの距離判定値が記憶されている。判定部５４は、算出した最短距離ＤＬが距離判定値未満であるか否かを判定する。速度制限部５１は、最短距離ＤＬが距離判定値未満である場合に、ロボット１の動作速度を制限速度以下にする制御を実施することができる。
【００５２】
なお、ロボットの２つの構成部材は、作業者が挟まれる虞のあるロボット１の任意の構成部材を選択することができる。例えば、作業者が挟まれる虞のあるロボット１の２つの構成部材として、上部アーム１１とベース１４とを選定することができる。
【００５３】
図８に、本実施の形態における制御装置の制御のフローチャートを示す。本実施の形態において、制御装置４は、人が挟まれる虞がある全ての物のうち、２つの物を選択する。そして、２つの物について最短距離を算出し、最短距離が距離判定値未満であるか否かを判定する。
【００５４】
次の表１に示されるように、記憶部４２には、物のモデル同士の距離判定値が記憶されている。表１では、モデルＭｍとモデルＭｎとの距離の判定値が示されている。距離判定値は、２つの部材に挟まれる距離に余裕を含めた値に設定することができる。なお、互いに連結されている２つの部材は、最短距離が零となるために、判定の対象にはならない。このために、表１においては「−１」が記載されている。例えば、旋回ベース１３と下部アーム１２との最短距離はゼロになる。このために、旋回ベース１３のモデル１３ａを示すモデルＭ２と、下部アーム１２のモデル１２ａを示すモデルＭ３との距離の判定値の欄には、判定の対象外であるフラグ「−１」が記載されている。
【表１】
2019098410.tif 000003
【００５５】
図８を参照して、ステップ１００において、速度制限部５１は、速度制限を表すフラグＦＶを０に設定する。次に、ステップ１０１において、速度制限部５１は、変数ｎを１に設定する。次に、ステップ１０２においては、速度制限部５１は、変数ｍを（ｎ＋１）に設定する。
【００５６】
次に、ステップ１０３において、速度制限部５１は、変数ｍと変数ｎとの組み合わせが判定の対象であるか否かを判定する。すなわち、表１において「−１」が記載されているか否かを判定する。変数ｍと変数ｎとの組み合わせが判定の対象でない場合には、制御はステップ１０８に移行する。変数ｍと変数ｎとの組み合わせが判定の対象である場合に、制御はステップ１０４に移行する。
【００５７】
ステップ１０４において、モデル生成部５２は、位置検出器１８の出力に基づいて、ロボット１の位置および姿勢を検出する。モデル生成部５２は、ロボット１の位置および姿勢に基づいて、モデルＭｍに対応する物およびモデルＭｎに対応する物の位置を算出する。モデルＭｍ，Ｍｎにロボット１の構成部材またはハンド２が含まれる場合には、モデル生成部５２は、モデルの位置および姿勢を算出する。このように、モデル生成部５２は、ロボット１の位置および姿勢に基づいて、モデルＭｍおよびモデルＭｎを生成する。ステップ１０５において、距離算出部５３は、モデルＭｎとモデルＭｍとの最短距離を算出する。
【００５８】
次に、ステップ１０６において、判定部５４は、モデルＭｎとモデルＭｍとの最短距離が、表１に示す距離判定値よりも小さいか否かを判定する。ステップ１０６において、最短距離が距離判定値未満である場合に、制御はステップ１０７に移行する。この場合には、作業者が挟まれる虞があると判定することができる。ステップ１０７おいては、速度制限部５１は、速度制限のフラグＦＶを１に設定する。この後に、制御はステップ１０８に移行する。
【００５９】
ステップ１０６において、最短距離が距離判定値以上である場合に、制御はステップ１０８に移行する。ステップ１０８において、速度制限部５１は、変数ｍが最大数であるか否かを判定する。変数ｍの最大数は、対象となる物の個数である。表１に示す例では、変数ｍの最大数は８である。ステップ１０８において、変数ｍが最大数でない場合には、制御はステップ１０９に移行する。
【００６０】
ステップ１０９においては、変数ｍに１を加算する。そして、制御は、ステップ１０３に戻る。このように、速度制限部５１は、変数ｎを固定した状態で変数ｍを最大数まで変化させながら、それぞれの物同士の最短距離が判定距離未満であるか否かを判定する。
【００６１】
ステップ１０８において、変数ｍが最大数である場合に、制御はステップ１１０に移行する。ステップ１１０において、速度制限部５１は、変数ｎが最大数であるか否かを判別する。変数ｎの最大数は、対象となる物の個数である。表１に示す例では、変数ｎの最大数は８である。
【００６２】
ステップ１１０において、変数ｎが最大数でない場合に、制御はステップ１１１に移行する。ステップ１１１においては、変数ｎの値に１加算する制御を実施する。そして、制御は、ステップ１０２に戻る。このように、変数ｎを１から最大数まで変化させて２つの物の距離の判定を行うことができる。
【００６３】
ステップ１１０において、変数ｎが最大数である場合に、制御はステップ１１２に移行する。すなわち、全ての物同士の組み合わせについて距離の判定が終了した時に、制御はステップ１１２に移行する。上記の制御では、モデルＭｍとモデルＭｎとの全ての組み合わせについて距離の判定を行っている。そして、少なくとも１つの組み合わせについて、最短距離が距離判定値よりも小さい場合に、ステップ１０７において、速度制限のフラグＦＶが１になる。
【００６４】
ステップ１１２において、速度制限部５１は、速度制限のフラグＦＶが１であるか否かを判定する。フラグＦＶが１である場合に、制御はステップ１１４に移行する。ステップ１１４において、速度制限部５１は、予め定められた制限速度以下になるようにロボット１の動作速度を制御する指令を動作制御部４３に送出する。
【００６５】
ステップ１１２において、フラグＦＶが１でない場合に、制御はステップ１１３に移行する。ステップ１１３において、現在のロボットの動作について速度の制限を実施している場合に、速度制限部５１は、速度の制限を解除する制御を実施する。速度制限部５１は、速度制限を解除する指令を動作制御部４３に送出する。動作制御部４３は、速度制限を解除し、動作プログラム４１に基づく動作速度にてロボット１を駆動する。現在のロボットの動作について速度の制限を実施していない場合には、速度制限部５１は、現在の状態を維持する。
【００６６】
図８に示す制御は、例えば予め定められた時間間隔ごとに繰り返して実施することができる。そして、２つの物同士の距離が小さくなった場合に、速度制限部５１は、ロボット１の速度制限を実施することができる。その後に、２つの物同士の距離が大きくなると、速度制限部５１は、速度制限を解除することができる。
【００６７】
本実施の形態の制御装置４は、人が挟まれる虞のあるロボット１の位置および姿勢では、ロボット１の動作速度を制限することができる。人がロボット１の構成部材に挟まれた場合にはロボット１が停止する。この時に、ロボット１の動作速度が制限されているために、ロボット１の構成部材が惰性にて移動する距離を短くすることができる。この結果、作業者に対する挟み込みの影響を小さくすることができる。本実施の形態のロボット１は、ロボット１の停止指令が発信されてから挟まれる空間が小さくなることを抑制できるために、安全性が向上する。
【００６８】
図９に、本実施の形態におけるロボット装置の他のモデルの側面図を示す。上記の実施の形態における物のモデルは、それぞれの物の形状に沿う形状を有する。一方で、それぞれの物のモデルは、直方体、立方体、球、および円柱等の簡易な形状にて形成することができる。または、円柱の端面が半球であるモデルを採用することができる。それぞれのモデルは、モデルの内部に物が含まれる大きさを有する。すなわち、それぞれのモデルは、モデルに対応する物を覆うように形成されている。
【００６９】
図９に示すロボット１の構成部材のモデルは、直方体により形成されている。それぞれのロボット１の構成部材のモデル１１ａ，１２ａ，１３ａ，１４ａ，１５ａは、それぞれの構成部材が内部に含まれるように形成されている。例えば、上部アーム１１のモデル１１ａは、上部アーム１１の本体部に加えて、本体部の周りに配置された線条体を含むように形成されている。ハンド２のモデル２ａは、直方体にて形成されている。モデル２ａは、ハンド２が内部に含まれるように形成されている。
【００７０】
このように、それぞれの構成部材のモデルとして簡易な形状のモデルを採用することにより、制御装置における計算量が少なくなり、制御装置の負荷を小さくすることができる。このため、性能が低い制御装置にて本実施の形態における制御を実施することができる。
【００７１】
本実施の形態のロボット１の制御では、作業者が挟まれる虞があるときに、ロボット１の動作速度を低減している。この制御に加えて、ロボットの構成部材、作業ツール、およびロボットの周りに配置される物のうち、２つの物が接触する虞が有る場合に、ロボット１の動作速度を制限する制御を実施することができる。例えば、２つの物が干渉する虞が有る場合に、速度制限部は、ロボットの動作速度を低減することができる。
【００７２】
作業者は、ロボットの構成部材、作業ツール、およびロボットの周りに配置される物のうち、２つの物が互いに接触する時の距離の判定値として接触判定値を予め定めることができる。２つの物の接触に関する接触判定値は、人の挟み込みに関する距離判定値よりも小さく設定される。記憶部は、２つの物の接触に関する接触判定値を記憶することができる。
【００７３】
判定部は、２つの物の最短距離が接触判定値未満か否かを判定する。速度制限部は、最短距離が接触判定値未満である場合に、ロボットの動作速度を予め定められた制限速度以下に制御することができる。この制御では、接触に関する制限速度を挟み込みに関する制限速度よりも小さく設定することができる。または、速度制限部は、ロボットの動作速度を零にする制御を実施することができる。この制御により、物同士が干渉する虞のある場合に、ロボットの動作速度を低減することができる。
【００７４】
上記の実施の形態において、モデル生成部は、ロボットの全ての構成部材、作業ツール、およびロボットの周りに配置される物のモデルを作成しているが、この形態に限られない。モデル生成部は、距離の判定を行うために、少なくとも２つのモデルを生成すれば良い。
【００７５】
なお、作業者と協働して作業を行うことができるロボット装置において、ロボットが単独で作業を行う場合がある。ロボットが単独で作業を行う場合には、作業者はロボットから離れている。制御装置は、作業者とロボットとが同時に作業をする時の協働制御と、ロボットが単独で作業をする高速制御とを実施することができる。協働制御では、前述のロボットの動作速度を制限する制御を実施することができる。高速制御では、作業者がロボットに接触したときにロボットが停止する制御を禁止することができる。また、高速制御では、本実施の形態のロボットの動作速度を制限する制御を禁止することができる。制御装置は、協働制御または高速制御を切り替えるように形成することができる。このように、高速制御を実施することにより、ロボットの近くに人がいない場合に高速にて作業を実施することができる。
【００７６】
本実施の形態においては、多関節ロボットを例示して説明したが、この形態に限られず、任意のロボットを制御する制御装置に本発明を適用することができる。例えば、上記の実施の形態のロボットの駆動軸は、回転軸にて構成されているが、この形態に限られない。ロボットの駆動軸は、ロボットの構成部材が直線的に移動する直動軸を含んでいても構わない。
【００７７】
上述の制御においては、機能および作用が変更されない範囲において適宜ステップの順序を変更することができる。上記の実施の形態は、適宜組み合わせることができる。上述のそれぞれの図において、同一または相等する部分には同一の符号を付している。なお、上記の実施の形態は例示であり発明を限定するものではない。また、実施の形態においては、特許請求の範囲に示される実施の形態の変更が含まれている。
【符号の説明】
【００７８】
１    ロボット
１ａ    モデル
２    ハンド
２ａ    モデル
４    制御装置
８    作業台
８ａ    モデル
１１    上部アーム
１１ａ    モデル
１２    下部アーム
１２ａ    モデル
１３    旋回ベース
１３ａ    モデル
１４    ベース
１４ａ    モデル
１５    リスト
１５ａ    モデル
１８    位置検出器
１９    力検出器
４７    停止指令部
５１    速度制限部
５２    モデル生成部
５３    距離算出部
５４    判定部
６３    床
６３ａ    モデル
ＤＬ    最短距離
【図１】
2019098410.tif 000004
【図２】
2019098410.tif 000005
【図３】
2019098410.tif 000006
【図４】
2019098410.tif 000007
【図５】
2019098410.tif 000008
【図６】
2019098410.tif 000009
【図７】
2019098410.tif 000010
【図８】
2019098410.tif 000011
【図９】
2019098410.tif 000012