(57)【特許請求の範囲】
【請求項１】
ロボット（１０）と、
該ロボットに作用する外力を検出する力検出部（１２）と、
前記ロボットの動作に関する情報から前記力検出部に作用する外力を力推定値として推定する力推定部（２１）と、
前記力検出部（１２）の情報から得られる該ロボットに作用する力検出値と前記力推定値との間の偏差を算出する偏差算出部（２３ａ）と、
前記偏差と第一閾値とを比較する比較部（３１）と、
前記比較部によって前記偏差が第一閾値よりも大きいと判定された場合には、前記ロボットに対して退避動作指令、停止指令、減速指令、または減速停止指令を出力する指令出力部（４１）と、
前記偏差の規則性を有する複数の偏差パターンを記憶する記憶部と、
を具備し、前記偏差が前記少なくとも一つの偏差パターンを含む場合には、前記指令出力部は前記偏差パターンに対応する動作指令を出力し、前記偏差パターンは、人間が規則的または意図的に前記ロボットに付与する外力のモードであり、
前記偏差パターンは、外力の大きさ、連続する二つの外力のピークの間の時間間隔、外力が作用する期間、単位時間における外力の変化量、所定時間内に作用した外力の回数のうちの少なくとも一つを含む、産業用ロボットシステム（１）。
【請求項２】
前記ロボットが停止または減速している場合のみ、前記指令出力部は前記少なくとも一つの偏差パターンに対応する前記動作指令を出力するようにした請求項１に記載の産業用ロボットシステム。
【請求項３】
前記力検出部は、第一力検出部（１２）と、第二力検出部（１３）から構成され、
前記力推定部は、前記ロボットの動作に関する情報から前記第一力検出部に作用する外力を第一力推定値として推定する第一力推定部（２１）と、
前記ロボットの動作に関する情報から前記第二力検出部に作用する外力を第二力推定値として推定する第二力推定部（２２）とから構成され、
前記偏差算出部は、前記第一力検出部（１２）の情報から得られる該ロボットに作用する第一力検出値と前記第一力推定値との間の第一偏差を算出する第一偏差算出部（２３ａ）と、
前記第二力検出部（１３）の情報から得られる該ロボットに作用する第二力検出値と前記第二力推定値との間の第二偏差を算出する第二偏差算出部（２３ｂ）とから構成され、
前記比較部は、前記第一偏差と第一閾値とを比較すると共に、前記第一偏差と前記第二偏差とを比較する第一比較部（３１）と、
前記第二偏差と前記第一閾値とを比較すると共に、前記第二偏差と前記第一偏差とを比較する第二比較部（３２）とから構成され、
前記指令出力部は、前記第一比較部によって前記第一偏差が前記第一閾値よりも大きいと判定された場合または前記第一偏差と前記第二偏差との間に一定以上差があると判定された場合には、前記ロボットに対して停止指令、減速指令、または減速停止指令を出力する第一指令出力部（４１）と、
前記第二比較部によって前記第二偏差が前記第一閾値よりも大きいと判定された場合または前記第二偏差と前記第一偏差との間に一定以上差があると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する第二指令出力部（４２）とから構成される、
請求項１または２に記載の産業用ロボットシステム（１）。
【請求項４】
さらに、前記ロボットのプログラムと前記ロボットの現在の状況とを比較する第三比較部（３３）と、
該第三比較部によって前記ロボットのプログラムと前記ロボットの現在の状況とが異なると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する第三指令出力部（４３）と、
偏差についての規則性を有する複数の偏差パターンと該複数の偏差パターンのそれぞれに対応する前記ロボットの動作指令とを関連づけて記憶する記憶部（２５）と、
偏差が前記第一閾値と該第一閾値よりも小さい第二閾値との間にある場合または偏差が前記第一閾値よりも大きい場合には、偏差と前記記憶部に記憶された前記複数の偏差パターンとを比較する第四比較部（３４）と、
該第四比較部によって偏差が前記複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合には、該少なくとも一つの偏差パターンに対応する前記ロボットの動作指令を出力する第四指令出力部（４４）とを具備する、請求項１から３のいずれか一項に記載の産業用ロボットシステム（１）。
【請求項５】
前記記憶部に記憶された前記複数の偏差パターンは、前記偏差の大きさ、連続する二つの前記偏差のピークの間の時間間隔、前記偏差の方向、前記偏差が作用する期間、単位時間内における前記偏差の変化量、所定時間内に作用した前記偏差の回数のうちの少なくとも一つを含む、請求項４に記載の産業用ロボットシステム。
【請求項６】
力検出部（１２）によりロボットに作用する外力を検出し、
前記ロボットの動作に関する情報から前記力検出部に作用する外力を力推定値として推定し、
前記力検出部（１２）の情報から得られる該ロボットに作用する力検出値と前記力推定値との間の偏差を算出し、
前記偏差と第一閾値とを比較し、
前記偏差が第一閾値よりも大きいと判定された場合には、前記ロボットに対して退避動作指令、停止指令、減速指令、または減速停止指令を出力し、
前記偏差が記憶部に記憶された複数の偏差パターンのうち、少なくとも一つの偏差パターンを含む場合には、前記偏差パターンに対応する動作指令を出力し、前記偏差パターンは、人間が規則的または意図的に前記ロボットに付与する外力のモードであり、
前記偏差パターンは、外力の大きさ、連続する二つの外力のピークの間の時間間隔、外力が作用する期間、単位時間における外力の変化量、所定時間内に作用した外力の回数のうちの少なくとも一つを含む、産業用ロボットシステム（１）の制御方法。
【請求項７】
前記ロボットが停止または減速している場合のみ、前記少なくとも一つの偏差パターンに対応する前記動作指令を出力するようにした請求項６に記載の制御方法。
【請求項８】
外力の検出においては、ロボット（１０）に取付けられている第一力検出部（１２）と第二力検出部（１３）により検出し、
力推定値の推定においては、前記ロボットの動作に関する情報から前記第一力検出部に作用する外力を第一力推定値として推定し、さらに、前記ロボットの動作に関する情報から前記第二力検出部に作用する外力を第二力推定値として推定し、
偏差の算出においては、前記第一力検出部（１２）の情報から得られる該ロボットに作用する第一力検出値と前記第一力推定値との間の第一偏差を算出し、さらに、前記第二力検出部（１３）の情報から得られる該ロボットに作用する第二力検出値と前記第二力推定値との間の第二偏差を算出し、
偏差の比較においては、前記第一偏差と第一閾値とを比較すると共に、前記第一偏差と前記第二偏差とを比較し、さらに、前記第二偏差と前記第一閾値とを比較すると共に、前記第二偏差と前記第一偏差とを比較し、
前記第一偏差が第一閾値よりも大きいと判定された場合または前記第一偏差と前記第二偏差との間に一定以上差があると判定された場合には、前記ロボットに対して停止指令、減速指令、または減速停止指令を出力し、
前記第二偏差が前記第一閾値よりも大きいと判定された場合または前記第二偏差と前記第一偏差との間に一定以上差があると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する請求項６または７に記載の産業用ロボットシステム（１）の制御方法。
【請求項９】
ロボットのプログラムと前記ロボットの現在の状況とを比較し、
前記ロボットのプログラムと前記ロボットの現在の状況とが異なると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力し、
偏差が前記第一閾値より小さくて前記第二閾値よりも大きい場合または偏差が前記第一閾値よりも大きい場合には、前記偏差と前記偏差についての規則性を有する複数の偏差パターンとを比較し、
前記偏差が前記複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合には、該少なくとも一つの偏差パターンに対応する前記ロボットの動作指令を出力する、請求項６から８のいずれか一項に記載の産業用ロボットシステム（１）の制御方法。
【請求項１０】
前記複数の偏差パターンは、前記偏差の大きさ、連続する二つの前記偏差のピークの間の時間間隔、前記偏差の方向、前記偏差が作用する期間、単位時間内における前記偏差の変化量、所定時間内に作用した前記偏差の回数のうちの少なくとも一つを含む、請求項９に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用ロボットと人間とが同じ作業空間を同時に共有して協調作業を行う産業用ロボットシステムおよびその制御方法に関する。
【背景技術】
【０００２】
一般的な産業用ロボットを用いた製造現場においては、安全柵が、ロボットの作業スペースと人間の作業スペースとを互いに分離している。このため、人間がロボットに接触する事故が回避されている。
【０００３】
しかしながら、ロボットの作業スペースと人間の作業スペースとを分離できない製造現場や、ロボットの作業スペースと人間の作業スペースとを分離すると生産性が著しく低下する製造現場がある。そのような製造現場においては、安全柵を必要とすることのないロボットシステムを実用化する必要がある。
【０００４】
安全柵を使用しない場合には、ロボットが人間を危険にする可能性が高まる。このため、例えばロボットのパワーを制限することによりロボットが人間に衝突したときの衝撃を小さくしている。あるいは、人間とロボットとが接触したときに、ロボットを停止させる場合もある。
【０００５】
このような、安全柵を使用することのないロボットシステムにおける作業例は、以下の通りである。なお、以下の例に示される作業スペースにおいては人間とロボットとが協動して作業するものとする。
（１）ロボットが倉庫から作業スペースまで物品を搬入する。
（２）作業スペースにおいて、ロボットが人間に物品を渡す。
（３）物品を搬入するためにロボットが倉庫まで移動する。
【０００６】
従来のロボットシステムにおいては工程（２）から工程（３）に進む際に、スイッチ等でロボット制御装置の外部入力を操作する必要があった。しかしながら、近年では、人間がロボット本体に対して外力を与えることにより、ロボットに動作指令を与えるようにしている。
【０００７】
特許文献１においても、マニピュレータに外力を加えることにより、マニピュレータに動作指令を与えることが開示されている。具体的には、特許文献１においては、操作者が特定の規則的なパターンでマニピュレータに力を与えると、そのことがマニピュレータのセンサを通じて認識される。そして、マニピュレータの制御部が、特定の規則的なパターンに応じて定まる動作命令をマニピュレータに出力する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−２００７６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１の構成では、ロボットと人間または周辺機器とが意図せずに互いに衝突した場合には、そのことを検出できない。このため、ロボットの動作によって人間が危険になる事態が起こりうる。
【００１０】
本発明はこのような事情に鑑みてなされたものであり、人間の安全を確保することのできる産業用ロボットシステムおよびその制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
前述した目的を達成するために１番目の発明によれば、  ロボットと、該ロボットに作用する外力を検出する力検出部と、前記ロボットの動作に関する情報から前記力検出部に作用する外力を力推定値として推定する力推定部と、前記力検出部の情報から得られる該ロボットに作用する力検出値と前記力推定値との間の偏差を算出する偏差算出部と、前記偏差と第一閾値とを比較する比較部と、前記比較部によって前記偏差が第一閾値よりも大きいと判定された場合には、前記ロボットに対して退避動作指令、停止指令、減速指令、または減速停止指令を出力する指令出力部と、前記偏差の規則性を有する複数の偏差パターンを記憶する記憶部と、具備し、前記偏差が前記少なくとも一つの偏差パターンを含む場合には、前記指令出力部は前記偏差パターンに対応する動作指令を出力し、前記偏差パターンは、人間が規則的または意図的に前記ロボットに付与する外力のモードである、産業用ロボットシステムが提供される。
２番目の発明によれば、１番目の発明において、前記ロボットが停止または減速している場合のみ、前記指令出力部は前記少なくとも一つの偏差パターンに対応する前記動作指令を出力するようにした。
３番目の発明によれば、１番目または２番目の発明において、前記力検出部は、第一力検出部と、第二力検出部から構成され、前記力推定部は、前記ロボットの動作に関する情報から前記第一力検出部に作用する外力を第一力推定値として推定する第一力推定部と、前記ロボットの動作に関する情報から前記第二力検出部に作用する外力を第二力推定値として推定する第二力推定部とから構成され、前記偏差算出部は、前記第一力検出部の情報から得られる該ロボットに作用する第一力検出値と前記第一力推定値との間の第一偏差を算出する第一偏差算出部と、前記第二力検出部の情報から得られる該ロボットに作用する第二力検出値と前記第二力推定値との間の第二偏差を算出する第二偏差算出部とから構成され、前記比較部は、前記第一偏差と第一閾値とを比較すると共に、前記第一偏差と前記第二偏差とを比較する第一比較部と、前記第二偏差と前記第一閾値とを比較すると共に、前記第二偏差と前記第一偏差とを比較する第二比較部とから構成され、前記指令出力部は、前記第一比較部によって前記第一偏差が前記第一閾値よりも大きいと判定された場合または前記第一偏差と前記第二偏差との間に一定以上差があると判定された場合には、前記ロボットに対して停止指令、減速指令、または減速停止指令を出力する第一指令出力部と、前記第二比較部によって前記第二偏差が前記第一閾値よりも大きいと判定された場合または前記第二偏差と前記第一偏差との間に一定以上差があると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する第二指令出力部とから構成される。
４番目の発明によれば、１番目から３番目のいずれかの発明において、さらに、前記ロボットのプログラムと前記ロボットの現在の状況とを比較する第三比較部と、該第三比較部によって前記ロボットのプログラムと前記ロボットの現在の状況とが異なると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する第三指令出力部と、偏差についての規則性を有する複数の偏差パターンと該複数の偏差パターンのそれぞれに対応する前記ロボットの動作指令とを関連づけて記憶する記憶部と、偏差が前記第一閾値と該第一閾値よりも小さい第二閾値との間にある場合または偏差が前記第一閾値よりも大きい場合には、偏差と前記記憶部に記憶された前記複数の偏差パターンとを比較する第四比較部と、該第四比較部によって偏差が前記複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合には、該少なくとも一つの偏差パターンに対応する前記ロボットの動作指令を出力する第四指令出力部とを具備する。
５番目の発明によれば、４番目の発明において、前記記憶部に記憶された前記複数の偏差パターンは、前記偏差の大きさ、連続する二つの前記偏差のピークの間の時間間隔、前記偏差の方向、前記偏差が作用する期間、単位時間内における前記偏差の変化量、所定時間内に作用した前記偏差の回数のうちの少なくとも一つを含む。
６番目の発明によれば、力検出部により前記ロボットに作用する外力を検出し、前記ロボットの動作に関する情報から前記力検出部に作用する外力を力推定値として推定し、前記力検出部の情報から得られる該ロボットに作用する力検出値と前記力推定値との間の偏差を算出し、前記偏差と第一閾値とを比較し、前記偏差が第一閾値よりも大きいと判定された場合には、前記ロボットに対して退避動作指令、停止指令、減速指令、または減速停止指令を出力し、前記偏差が記憶部に記憶された複数の偏差パターンのうち、少なくとも一つの偏差パターンを含む場合には、前記偏差パターンに対応する動作指令を出力し、前記偏差パターンは、人間が規則的または意図的に前記ロボットに付与する外力のモードである、産業用ロボットシステムの制御方法が提供される。
７番目の発明によれば、６番目の発明において、前記ロボットが停止または減速している場合のみ、前記少なくとも一つの偏差パターンに対応する前記動作指令を出力するようにした。
８番目の発明によれば、６番目または７番目の発明において、外力の検出においては、ロボットに取付けられている第一力検出部と第二力検出部により検出し、力推定値の推定においては、前記ロボットの動作に関する情報から前記第一力検出部に作用する外力を第一力推定値として推定し、さらに、前記ロボットの動作に関する情報から前記第二力検出部に作用する外力を第二力推定値として推定し、偏差の算出においては、前記第一力検出部の情報から得られる該ロボットに作用する第一力検出値と前記第一力推定値との間の第一偏差を算出し、さらに、前記第二力検出部の情報から得られる該ロボットに作用する第二力検出値と前記第二力推定値との間の第二偏差を算出し、偏差の比較においては、前記第一偏差と第一閾値とを比較すると共に、前記第一偏差と前記第二偏差とを比較し、さらに、前記第二偏差と前記第一閾値とを比較すると共に、前記第二偏差と前記第一偏差とを比較し、前記第一偏差が第一閾値よりも大きいと判定された場合または前記第一偏差と前記第二偏差との間に一定以上差があると判定された場合には、前記ロボットに対して停止指令、減速指令、または減速停止指令を出力し、前記第二偏差が前記第一閾値よりも大きいと判定された場合または前記第二偏差と前記第一偏差との間に一定以上差があると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力する。
９番目の発明によれば、６番目から８番目のいずれかの発明において、ロボットのプログラムと前記ロボットの現在の状況とを比較し、前記ロボットのプログラムと前記ロボットの現在の状況とが異なると判定された場合には、前記ロボットに対して前記停止指令、前記減速指令、または前記減速停止指令を出力し、偏差が前記第一閾値より小さくて前記第二閾値よりも大きい場合または偏差が前記第一閾値よりも大きい場合には、前記偏差と前記偏差についての規則性を有する複数の偏差パターンとを比較し、前記偏差が前記複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合には、該少なくとも一つの偏差パターンに対応する前記ロボットの動作指令を出力する。
１０番目の発明によれば、９番目の発明において、前記複数の偏差パターンは、前記偏差の大きさ、連続する二つの前記偏差のピークの間の時間間隔、前記偏差の方向、前記偏差が作用する期間、単位時間内における前記偏差の変化量、所定時間内に作用した前記偏差の回数のうちの少なくとも一つを含む。
１１番目の発明によれば、１番目の発明において、前記偏差パターンは、外力の大きさ、連続する二つの外力のピークの間の時間間隔、外力が作用する期間、単位時間における外力の変化量、所定時間内に作用した外力の回数のうちの少なくとも一つを含む。
１２番目の発明によれば、６番目の発明において、前記偏差パターンは、外力の大きさ、連続する二つの外力のピークの間の時間間隔、外力が作用する期間、単位時間における外力の変化量、所定時間内に作用した外力の回数のうちの少なくとも一つを含む。
【発明の効果】
【００１２】
１番目、６番目の発明においては、ロボットと人間または周辺機器とが互いに衝突し第一偏差が第一閾値よりも大きくなった場合に、例えば退避動作を行わせたり、停止および／または減速させられるロボットにおいて、第一偏差が偏差パターンを含む場合に、その偏差パターンに対応した動作指令を出力する。衝突時に人間の安全が確保可能なロボットに対し、ロボットに外力パターンを与えることで直接動作指令を与えることができる。
２番目、７番目の発明においては、ロボットが停止または減速した場合にのみ、人間は所望の偏差パターンをなす外力をロボットに与えて、偏差パターンに対応する動作指令を出力させられる。このため、人間が所望の偏差パターンをなす外力を与えることにより、ロボットを起動させられる。また、ロボットが一定速度で移動または加速しているときには、人間は、所望の偏差パターンをなす外力を与えられない。従って、人間の安全をさらに確保することができる。
３番目、８番目の発明において、ロボットと人間または周辺機器とが互いに衝突し第一偏差または第二偏差が第一閾値よりも大きくなった場合にロボットを停止および／または減速させることができ、さらに第一力検出部または第二力検出部が故障して第一偏差と第二偏差とが所定量以上異なる場合にも、ロボットを停止および／または減速させられる。このような制御は、第一力推定部に関連づけられた第一指令出力部および第二力推定部に関連づけられた第一指令出力部および第二力推定部に関連づけられた第二指令出力部の両方において行われる。このため、冗長性を確保した状態で、人間等に対する衝突および力検出部の故障を検出して、ロボットを停止および／または原則させられるので、人間の安全を確保することができる。
第一偏差および第二偏差の両方が偏差パターンを含む場合にのみ、その偏差パターンに対応した動作指令を出力し、第一偏差および第二偏差の一方のみが偏差パターンを含む場合および第一偏差および第二偏差の両方が偏差パターンを含まない場合には、動作指令を出力しない。従って、冗長性を確保した状態で、人間等に対する衝突および力検出部の故障を検出してロボットを停止および／または減速させ人間の安全を確保するロボットにおいて、偏差パターンを動作指令としてロボットに与えてもロボットが誤動作する可能性が小さく人間の安全を確保することができる。なお、第一偏差および第二偏差を偏差パターンと比較する場合には、所定時間に亙って記憶された第一偏差および第二偏差を使用してもよい。
４番目、９番目の発明においては、ロボットのプログラムと現在の状況とを比較し、プログラム通りではない場合にもロボットを停止および/または減速させられるので、例えばロボットが暴走した場合にロボットを停止させることができ、さらに人間の安全を確保することができる。
５番目および１０番目の発明においては、様々な偏差パターンを採用できるので、緻密な動作指令を出力することができる。
【００１３】
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれら目的、特徴および利点ならびに他の目的、特徴および利点がさらに明解になるであろう。
【図面の簡単な説明】
【００１４】
【図１】本発明の第一の実施形態に基づく産業用ロボットシステムを示す機能ブロック図である。
【図２】偏差と時間との関係を示す図である。
【図３Ａ】図１に示される産業用ロボットシステムの制御方法を示す第一のフローチャートである。
【図３Ｂ】図１に示される産業用ロボットシステムの制御方法を示す第二のフローチャートである。
【図４】第一偏差と時間との関係を示す図である。
【図５】第一偏差と時間との関係を示す他の図である。
【図６】第一偏差と時間との関係を示すさらに他の図である。
【図７】本発明の第二の実施形態に基づく産業用ロボットシステムの制御方法を示すフローチャートの一部分である。
【図８】第一偏差と時間との関係を示す別の図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
図１は、本発明の第一の実施形態における産業用ロボットシステムを示す機能ブロック図である。図１に示される産業用ロボットシステム１は、産業用ロボット１０（以下、単に「ロボット１０」と呼ぶ）と、該ロボット１０を制御するロボット制御装置２０とを主に含んでいる。産業用ロボットシステム１においては、協調作業を行うために人間９とロボット１０とが互いに近位の位置に在る。
【００１６】
図１においては、ロボット１０は少なくとも一つの軸のためのサーボモータと、該サーボモータに連動する機構部とを有している。典型的な実施形態においては、ロボット１０は六軸垂直多関節ロボットであり、六つの軸のための六つのサーボモータを有している。これらサーボモータのそれぞれには、角度検出器１５、例えばエンコーダが備えられている。図１においては、複数の角度検出器のうちの一つの角度検出器１５が代表として示されている。なお、図面には示さないものの、ロボットアームの先端には把持ハンドまたは工具が備えられているものとする。
【００１７】
図１に示されるように、床部Ｌ上にロボット１０のロボット支持部１１が配置されている。ロボット支持部１１上には、ロボット１０の本体が設置されている。そして、第一力センサ１２および第二力センサ１３がロボット支持部１１に互いに隣接して配置されている。これら力センサ１２、１３は、弾性体に加わる歪み量を歪みゲージにより検出し、三方向の力と三軸回りのトルクを検出することのできる同じタイプの六軸力センサである。第一力センサ１２および第二力センサ１３は、ロボット支持部１１またはロボット１０に作用する外力の情報を、例えば外力に応じた抵抗値[Ω]や電圧値[V]、もしくは力[N]としてそれぞれ検出する。
【００１８】
これら第一力センサ１２および第二力センサ１３は、ロボット１０の底部に位置するロボット支持部１１に取付けられている。このため、ロボット１０の姿勢や、外力がロボット１０に加わる場所および方向に関わらず、第一力センサ１２および第二力センサ１３はロボット１０に作用する外力を効率的に検出できる。
本実施形態ではロボット１０に作用する外力を検出するためにロボット１０の底部に位置するロボット支持部１１にセンサ１２、１３が取付けられている。しかしながら、ロボット１０に作用する外力を検出できれば、センサ１２、１３の取付位置は前述したものに限られず、また他の手法で検出してもよい。
【００１９】
図１に示されるロボット制御装置２０はデジタルコンピュータであり、第一ＣＰＵ５１と第二ＣＰＵ５２とを含んでいる。図示されるように、第一ＣＰＵ５１は、ロボット１０の動作に関する情報から第一力センサ１２に作用する外力を第一力推定値Ｆ１’として公知の手法で推定する第一力推定部２１を含んでいる。同様に、第二ＣＰＵ５２は、ロボット１０の動作に関する情報から第二力センサ１３に作用する外力を第二力推定値Ｆ２’として公知の手法で推定する第二力推定部２２を含んでいる。
【００２０】
第一力センサ１２および第二力センサ１３に作用する外力はロボット１０の動作に関する情報に応じて変化する。そのような情報は、例えばロボット１０の質量、ロボット１０が把持ハンドを備えている場合には把持されるべきワークの質量、ロボット１０の各軸の姿勢および各軸の加速度などである。ロボット１０の質量およびワークの質量は既知である。ロボット１０の各軸の姿勢および各軸の加速度などは複数の角度検出器１５の検出値から求められる。第一力推定部２１および第二力推定部２２はこのようなロボット１０の動作に関する情報に基づいて、第一力推定値Ｆ１’および第二力推定値Ｆ２’をそれぞれ算出する。
【００２１】
さらに、第一ＣＰＵ５１は、第一力検出部１２の情報から得られる、ロボット支持部１１に作用する第一力検出値Ｆ１と第一力推定値Ｆ１’との間の第一偏差ΔＦ１を算出する第一偏差算出部２３ａを含んでいる。同様に、第二ＣＰＵ５２は、第二力検出部１３の情報から得られる、ロボット支持部１１に作用する第二力検出値Ｆ２と第二力推定値Ｆ２’との間の第二偏差ΔＦ２を算出する第二偏差算出部２３ｂを含んでいる。
【００２２】
さらに、第一ＣＰＵ５１は、第一偏差ΔＦ１と第一閾値Ｆａとを比較すると共に、第一偏差ΔＦ１と第二偏差ΔＦ２とを比較する第一比較部３１と、第一比較部３１によって第一偏差ΔＦ１が第一閾値Ｆａよりも大きい場合または第一偏差ΔＦ１と第二偏差ΔＦ２との間に一定以上差があると判定された場合に、ロボット１０に対して停止指令、減速指令、または減速停止指令を出力する第一指令出力部４１とを含んでいる。なお、第一閾値Ｆａおよび後述する第二閾値Ｆｂは実験等により予め求められるものとする。
【００２３】
同様に、第二ＣＰＵ５２は、第二偏差ΔＦ２と第一閾値Ｆａとを比較すると共に、第二偏差ΔＦ２と第一偏差ΔＦ１とを比較する第二比較部３２と、第二比較部３２によって第二偏差ΔＦ２が第一閾値Ｆａよりも大きいと判定された場合または第二偏差ΔＦと第一偏差ΔＦ１との間に一定以上差があると判定された場合には、ロボット１０に対して停止指令、減速指令、または減速停止指令を出力する第二指令出力部４２とを含んでいる。
【００２４】
ロボット制御装置２０は、ロボット１０のプログラム２４とロボット１０の現在の状況とを比較する第三比較部３３と、第三比較部３３によってロボット１０のプログラム２４とロボット１０の現在の状況とが異なると判定された場合には、ロボット１０に対して停止指令、減速指令、または減速停止指令を出力する第三指令出力部４３とを含んでいる。なお、第一指令出力部４１、第二指令出力部４２および第三指令出力部４３で出力される停止指令、減速指令、または減速停止指令はそれぞれ同様であるものとする。
あるいは、第三比較部３３および第三指令出力部４３の代わりに、第一ＣＰＵ５１が、ロボット１０のプログラム２４とロボット１０の現在の状況を比較する第三比較部＃１と、第三比較部＃１によってロボット１０のプログラム２４とロボット１０の現在の状況とが異なると判定された場合にはロボット１０に対して停止指令、減速指令、または減速停止指令を出力する第三指令出力部＃１との役目を果たしても良い。同様に、第二ＣＰＵ５２が、ロボット１０のプログラム２４とロボット１０の現在の状況を比較する第三比較部＃２と、第三比較部＃２によってロボット１０のプログラム２４とロボット１０の現在の状況とが異なると判定された場合にはロボット１０に対して停止指令、減速指令、または減速停止指令を出力する第三指令出力部#２との役目を果たしても良い。
【００２５】
さらに、ロボット制御装置２０は、第一偏差ΔＦ１および第二偏差ΔＦ２についての規則性を有する複数の偏差パターンと該複数の偏差パターンのそれぞれに対応するロボット１０の動作指令とを関連づけて記憶する記憶部２５と、第一偏差ΔＦ１および第二偏差ΔＦ２の両方が第一閾値Ｆａより小さくて第二閾値Ｆｂよりも大きい場合には、第一偏差ΔＦ１および第二偏差ΔＦ２と記憶部２５に記憶された複数の偏差パターンとを比較する第四比較部３４と、第四比較部３４によって第一偏差ΔＦ１および第二偏差ΔＦ２の両方が複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合には、該少なくとも一つの偏差パターンに対応するロボット１０の動作指令を出力する第四指令出力部４４とを含んでいる。
あるいは、第四比較部および第四指令出力部４４の代わりに、第一ＣＰＵ５１が、第一偏差ΔＦ１と記憶部２５に記憶された複数の偏差パターンとを比較する第四比較部＃１の役目を果たしても良い。同様に、第二ＣＰＵ５２が、第二偏差ΔＦ２と記憶部２５に記憶された複数の偏差パターンとを比較する第四比較部＃２の役目を果たしても良い。さらに、第一ＣＰＵ５１および第二ＣＰＵ５２のそれぞれは、第４比較部＃１と第４比較部＃２とによって第一偏差ΔＦ１および第二偏差ΔＦ２の両方が複数の偏差パターンのうちの少なくとも一つの共通の偏差パターンを含むと判定された場合に、該少なくとも一つの偏差パターンに対応するロボット１０の動作指令を出力する第四指令出力部＃１、＃２としての役目を果たしても良い。
【００２６】
ここで、偏差パターンとは、人間９がロボット１０を規則的または意図的にタップまたは押圧することによりロボット１０に付与される外力のモードである。偏差パターンは、外力の大きさ、連続する二つの外力のピークの間の時間間隔、外力の方向、外力が作用する期間、単位時間における外力の変化量、所定時間内に作用した外力の回数のうちの少なくとも一つを含んでいる。
【００２７】
図２は偏差、例えば第一偏差ΔＦ１と時間との関係を示す図である。なお、第二偏差ΔＦ２も図２と概ね同様な挙動を示しうる。図２においては、第一閾値Ｆａも示されている。図２においては、第一偏差ΔＦ１の挙動を示す実線Ｂ０は、第一閾値Ｆａを越える三つのピークＡ１、Ａ２、Ａ３を順次含んでいる。
【００２８】
図２から分かるように、偏差パターンのうちの外力の大きさは、ピークＡ１、Ａ２、Ａ３の第一閾値Ｆａからの最大高さを意味している。また、連続する二つの外力のピークの間の時間間隔は、例えば二つのピークＡ１、Ａ２が第一閾値Ｆａを越え始めたときの時刻ｔ１、ｔ３との間の時間間隔ｔ３−ｔ１を意味する。さらに、外力が作用する期間とは、例えばピークＡ１が第一閾値Ｆａを越えている間の時間、つまり期間ｔ２−ｔ１を意味する。さらに、単位時間における外力の変化量は、ピークＡ３を参照して分かるように、或る時刻における実線Ｂ０の傾きである。所定時間内に作用した外力の回数は、所定時間において第一閾値Ｆａを越えた回数、つまりピークの数であり、図２の例においては３回である。また、外力の方向とは、人間９がロボット１０に外力を与える方向であり、例えば下方向または上方向などである。
【００２９】
本発明においては、このような偏差パターンのそれぞれは、ロボット１０の動作指令に予め関連付けられている。従って、人間９が所定の偏差パターンを意図的にロボット１０に与えることにより、所望の動作指令を出力させ、ロボット１０にその動作を行わせることができる。本発明では、様々な偏差パターンを採用できるので、緻密な動作指令を出力することができるのが分かるであろう。
【００３０】
図３Ａおよび図３Ｂは図１に示される産業用ロボットシステムの制御方法を示すフローチャートである。図３Ａおよび図３Ｂに示される動作は所定の制御周期毎に繰返し行われるものとする。以下、図１、図３Ａおよび図３Ｂを参照しつつ、本発明の産業用ロボットシステム１の制御方法について説明する。
【００３１】
図３Ａから分かるように、本発明においては、第一ＣＰＵ５１における処理と第二ＣＰＵ５２における処理とが並列して行われるものとする。ステップＳ１１において、第一力センサ１２がロボット１０に作用する外力の情報を取得する。そして、その情報からロボット支持部１１に作用する第一力検出値Ｆ１を求める。さらに、ステップＳ１２において、第二力センサ１３がロボット１０に作用する外力の情報を取得する。そして、その情報からロボット支持部１１に作用する第二力検出値Ｆ２を求める。
【００３２】
そして、ステップＳ１３において、第一力推定部２１が第一力センサ１２に作用する外力を第一力推定値Ｆ１’として推定し、ステップＳ１４において、第二力推定部２２が第二力センサ１３に作用する外力を第二力推定値Ｆ１’として推定する。なお、第一力検出値Ｆ１および第二力検出値Ｆ２ならびに推定された第一力推定値Ｆ１’および第二力推定値Ｆ２’は時間に関連づけられて記憶部２５に順次記憶されるものとする。
【００３３】
さらに、ステップＳ１５においては、第一偏差算出部２３ａは、第一力検出部１２の情報から得られるロボット支持部１１に作用する第一力検出値Ｆ１から第一力推定値Ｆ１’を減算して第一偏差ΔＦ１を算出する。同様に、ステップＳ１６においては、第二偏差算出部２３ｂは、第二力検出部１３の情報から得られるロボット支持部１１に作用する第二力検出値Ｆ２から第二力推定値Ｆ２’を減算して第二偏差ΔＦ２を算出する。
【００３４】
次いで、ステップＳ１７において第一比較部３１は、第一偏差ΔＦ１と第一閾値Ｆａを比較すると共に、第一偏差ΔＦ１と第二偏差ΔＦ２とを比較して第一偏差ΔＦ１と第二偏差ΔＦ２との間の差が所定量Ｆ０以上大きいかを判定する。ここで、図４は第一偏差と時間との関係を示す図である。図４に示される第一偏差ΔＦ１の挙動を示す実線Ｂ１は時刻ｔａにおいて、第一閾値Ｆａを越えている。なお、図４には示さないものの、第二偏差ΔＦ２も概ね同様な挙動を示しうる。
【００３５】
ステップＳ１７において、第一偏差ΔＦ１が第一閾値Ｆａよりも大きい場合には、例えばロボット１０が予期せずに動作して、ロボット１０と人間９または周辺機器とが互いに衝突している可能性が高い。また、第一偏差ΔＦ１と第二偏差ΔＦ２との間の差が所定量Ｆ０以上に大きい場合には、第一力センサ１２および第二力センサ１３のうちのいずれかが故障している可能性が高い。従って、第一偏差ΔＦ１が第一閾値Ｆａよりも大きい場合または第一偏差ΔＦ１と第二偏差ΔＦ２との間の差が所定量Ｆ０以上に大きい場合には、ステップＳ１９に進む。
【００３６】
ステップＳ１９においては、第一指令出力部４１は、ロボット１０に所定の停止指令、所定の減速指令または所定の減速停止指令を出力する。これにより、ロボット１０は停止および／または減速するようになり、人間９の安全が確保される。なお、停止指令は、ロボット１０の各モータを非励磁状態にする停止指令、またはロボット１０の各モータを励磁状態にする停止指令のいずれであってもよい。
【００３７】
また、ステップＳ１９においては、停止指令、減速指令または減速停止指令のうちのいずれが出力されてもよく、他のステップにおいても同様である。例えば操作者は、停止指令、減速指令または減速停止指令のうちの所望の指令が出力されるように予め設定できる。あるいは、ロボット１０の現在の速度を参照して、速度が上限値よりも大きい場合には減速指令を出力し、速度が下限値よりも小さい場合には停止指令を出力し、速度が上限値と下限値との間にある場合には減速停止指令を出力してもよい。いずれにせよ、ステップＳ１９において、第一指令出力部４１は、ロボット１０の速度を小さくするための指令を出力するものとする。なお、後述する第二指令出力部４２および第三指令出力部４３も同様である。
【００３８】
また、ステップＳ１８において、第二比較部３２は、第二偏差ΔＦ２と第一閾値Ｆａとを比較すると共に、第二偏差ΔＦ２と第一偏差ΔＦ１とを比較して第二偏差ΔＦ２と第一偏差ΔＦ１との間の差が所定量以上大きいかを判定する。
【００３９】
そして、ステップＳ１８において第二偏差ΔＦ２が第一閾値Ｆａよりも大きい場合には、例えばロボット１０が予期せずに動作して、ロボット１０と人間９または周辺機器とが互いに衝突している可能性が高い。また、第二偏差ΔＦ２と第一偏差ΔＦ１との間の差が所定量Ｆ０以上の差がある場合には、第二力センサ１３および第一力センサ１２のうちのいずれかが故障している可能性が高い。従って、第二偏差ΔＦ２が第一閾値Ｆａよりも大きい場合または第二偏差ΔＦ２と第一偏差ΔＦ１との間の差が所定量Ｆ０以上に大きい場合には、ステップＳ２０に進む。
【００４０】
ステップＳ２０においては、第二指令出力部４２は、ロボット１０に所定の停止指令、所定の減速指令または所定の減速停止指令を前述したように出力する。これにより、ロボット１０は停止および／または減速するようになり、人間９の安全が確保される。
【００４１】
このように、本発明においては、ロボット１０と人間９または周辺機器とが互いに衝突し第一偏差１ΔＦまたは第二偏差ΔＦ２が第一閾値Ｆａよりも大きくなった場合にロボット１０を停止および／または減速させられる。さらに第一力検出部１２または第二力検出部１３が故障して第一偏差ΔＦ１と第二偏差ΔＦ２との間の差が所定量Ｆ０以上異なる場合にも、ロボット１０を停止および／または減速させられる。
【００４２】
このような制御は、第一力推定部２１に関連づけられた第一指令出力部４１を含む第一ＣＰＵ５１および第二力推定部２２に関連づけられた第二指令出力部４２を含む第二ＣＰＵ５２において並列して行われる。言い換えれば、図３Ａから分かるように、第一ＣＰＵ１においてステップＳ１１、Ｓ１３、Ｓ１５、Ｓ１７およびＳ１９が行われ、第二ＣＰＵ５２においてステップＳ１２、Ｓ１４、Ｓ１６、Ｓ１８およびＳ２０が行われるようにしている。
【００４３】
従って、本発明では二重化されたＣＰＵ５１、５２により前述した制御が行われる。このため、本発明においては、冗長性を確保した状態で、人間９等に対する衝突および力検出部１２、１３の故障を検出して、ロボット１０を停止および／または減速させられる。その結果、人間９の安全を確保することが可能となっている。
【００４４】
ここで、本発明においては、ロボット１０を停止および／または減速させるために第一偏差Δ１および第二偏差Δ２の両方が第一閾値Ｆａよりも大きいことを要求していない。このため、第一力センサ１２および第二力センサ１３のうちのいずれか一方が故障したとしても、ロボットを確実に停止または減速させられる。
【００４５】
ここで、ロボット１０が或る範囲においてのみ動作するようにロボット１０の各軸の動作領域がプログラム２４によって制限されている場合がある。そのような場合には、ステップＳ２１において、ロボット１０の各軸の角度検出器１５により検出された値を用いてロボット１０の現在位置Ｐｃが算出される。そして、第三比較部３３はロボット１０のプログラム２４を参照して、ロボット１０の現在位置Ｐｃがプログラム２４で制限された動作領域外か否かを判定する。
【００４６】
ロボット１０の現在位置Ｐｃが動作領域外である場合にはロボット１０が異常状態であると判断できる。このような場合には、ステップＳ２２に進んで、第三指令出力部４３は、ロボット１０に所定の停止指令、所定の減速指令または所定の減速停止指令を出力する。これにより、ロボット１０は停止および／または減速するようになり、人間９の安全が同様に確保される。
【００４７】
なお、ステップＳ２１において、ロボット１０の現在位置Ｐｃを算出する代わりに、複数の角度検出器１５の検出値を用いてロボット１０の各軸の動作速度を算出してもよい。この場合には、ロボット１０の各軸の動作速度が所定速度より大きい場合に、ロボット１０が異常状態であるものと判断する。
【００４８】
また、ロボット１０の現在位置Ｐｃが動作領域外でない場合にはステップＳ２３に進む。この場合には、ロボット１０が正常に動作していると判断できるので、ステップＳ２３においては、第三指令出力部４３はロボット１０に動作継続指令を出力する。この場合には、プログラム２４の記載の通りにロボット１０が動作するものとする。
【００４９】
次いで、ステップＳ２４に進み、第四比較部３４は第一偏差ΔＦ１が第一閾値Ｆａと第一閾値Ｆａよりも小さい第二閾値Ｆｂとの間にあるか否かを判定すると共に、第二偏差ΔＦ２が第一閾値Ｆａと第二閾値Ｆｂとの間にあるか否かを判定する。そして、第一偏差ΔＦ１および第二偏差ΔＦ２の両方が第一閾値Ｆａと第二閾値Ｆｂとの間にある場合には、ステップＳ２５に進む。これに対し、第一偏差ΔＦ１および第二偏差ΔＦ２のうちの少なくとも一方が第一閾値Ｆａと第二閾値Ｆｂとの間に無い場合には、後述する動作指令を出力することなしに処理を終了する。
【００５０】
ステップＳ２５においては、第四比較部３４は、第一偏差ΔＦ１および第二偏差ΔＦ２と記憶部２５に記憶された複数の偏差パターンとを比較する。なお、偏差パターンと比較される第一偏差ΔＦ１および第二偏差ΔＦ２は必ずしも単一の値である必要はなく、所定の時間間隔に亙って時系列で記憶部２５に記憶された複数の値であってもよい。
【００５１】
そして、ステップＳ２５において、第一偏差ΔＦ１および第二偏差ΔＦ２の両方が共通の少なくとも一つの偏差パターンを含む場合には、例えば人間９がロボット１０を手で規則的または意図的に押圧することにより、偏差パターンをなす外力を与えていると判断できる。このような場合には、ステップＳ２６に進み、第四指令出力部４４は、前述した偏差パターンに対応する動作指令を出力する。
【００５２】
ここで、図５は第一偏差と時間との関係を示す他の図である。なお、第二偏差ΔＦ２も図５に示したのと概ね同様な挙動を示しうる。図５に示される第一偏差ΔＦ１の挙動を示す実線Ｂ２は時刻ｔｂと時刻ｔｃとの間において、第二閾値Ｆｂよりも大きくて、第一閾値Ｆａよりも小さい。そして、実線Ｂ２は時刻ｔｂと時刻ｔｃとの間において三つのピークＡ１、Ａ２、Ａ３を含んでいる。
【００５３】
図５に示される例においては、時刻ｔｂと時刻ｔｃとの間において、三つのピークが出現している。記憶部２５において、例えばピークの数が３回である場合に関連付けられている動作指令が記憶されている場合には、第四指令出力部４４はその動作指令を出力する。図５に示される例においては、偏差パターンとして所定時間内に作用した外力の回数が使用されているが、他の偏差パターンを使用してもよい。
【００５４】
このように、本発明では、第一偏差Δ１および第二偏差Δ２の両方が共通の偏差パターンを含む場合にのみ、その偏差パターンに対応した動作指令を出力する。これに対し、第一偏差Δ１および第二偏差Δ２の一方のみが偏差パターンを含む場合または第一偏差Δ１および第二偏差Δ２の両方が偏差パターンを含まない場合には、動作指令を出力することなしに、処理を終了する。従って、ロボット１０が誤動作する可能性は小さくなり、人間９の安全を確保することができる。
【００５５】
また、第四指令出力部４４から出力される動作指令は、例えばロボット１０が停止または減速している状態から行う所定の動作である。この場合には、ロボット１０が停止または減速していると共に第一偏差ΔＦ１および第二偏差ΔＦ２の両方が少なくとも一つの共通の偏差パターンを含む場合にのみ、偏差パターンに対応する動作指令を出力させてもよい。この場合には、人間９が停止または減速しているロボット１０に対して所望の偏差パターンをなす外力を与えることにより、ロボット１０を起動させられる。このため、ロボット１０が動作開始することを周囲に知らせるために、音や光を出力する出力部（図示しない）を備えるのが好ましい。また、このような場合には、ロボット１０が一定速度で移動または加速しているときに人間９が所望の偏差パターンをなす外力を与えたとしても、動作指令は出力されない。つまり、人間９が移動または加速しているロボット１０に所望の偏差パターンをなす外力を与えることがなくなり、結果的に人間９の安全を確保することができる。
【００５６】
あるいは、第四指令出力部４４から出力される動作指令は、前述したロボット１０の停止指令、減速指令または減速停止指令を含んでいても良い。そのような動作指令は、ロボット１０が予期せずに動作しているときに人間９が直接的にロボット１０を停止等させられるので有利である。言い換えれば、この場合には、第四指令出力部４４を、非常停止スイッチとして機能させられる。
【００５７】
あるいは、第四指令出力部４４から出力される動作指令は、第一閾値Ｆａを、これより小さい他の第一閾値Ｆａ’に所定時間だけ変更する指令であってもよい。ここで、図６は第一偏差と時間との関係を示すさらに他の図である。図６においては、第一偏差ΔＦ１の挙動を示す実線Ｂ３が表されている。図６には示さないものの、第二偏差ΔＦ２も概ね同様な挙動を示しうる。
【００５８】
図６に示される三つのピークを検出した後の時刻ｔｄにおいて、ピークの数が３回である場合に関連付けられた動作指令が出力される。この動作指令は、ロボット１０を停止状態から動作開始させる指定である。
【００５９】
一般に、ロボット１０が動作開始した直後の所定時間内においては、ロボット１０と人間９や周辺機器とが互いに衝突するのを高感度で検出するのが好ましい。このため、図６に示される例における動作指令は、第一閾値Ｆａを第一閾値Ｆａ’まで所定時間だけ低下させる指令をさらに含んでいる。なお、第一閾値Ｆａ’は第二閾値Ｆｂより大きいものとする。
【００６０】
このような場合には、ロボット１０が動作開始した直後の所定時間内においてのみ、ロボット１０と人間９等とが互いに衝突するのを高感度で検出できる。すなわち、この所定時間内に第一閾値Ｆａよりは小さいものの、第一閾値Ｆａ’よりは大きいピークＡ４が検出された場合に、ロボット１０に停止指令、減速指令または減速停止指令を出力し、人間９の安全をさらに確保することができる。また、この所定時間内に人間９が過誤によりロボット１０を押圧した場合にも、ロボット１０を即座に停止させることも可能である。
【００６１】
ところで、図７は本発明の第二の実施形態に基づく産業用ロボットシステムの制御方法を示すフローチャートの一部分である。第二の実施形態においては、図３ＢのステップＳ２４の代わりに図７のステップＳ２４’が使用され、残りのステップは第一の実施形態と同様である。
【００６２】
従って、第二の実施形態における産業用ロボットシステム１について、第一の実施形態との相違点を主に述べる。ステップＳ２４’においては、第四比較部３４は、第一偏差ΔＦ１および第二偏差ΔＦ２の両方が第一閾値Ｆａよりも大きいか否かのみを判定する。
【００６３】
ここで、図８は第一偏差と時間との関係を示す別の図である。図８には第一偏差ΔＦ１の挙動を示す実線Ｂ４が表されている。図８には示さないものの、第二偏差ΔＦ２も概ね同様な挙動を示しうる。図８に示されるように第一偏差ΔＦ１が第一閾値Ｆａよりも大きく、なお且つ第二偏差ΔＦ２も第一閾値Ｆａよりも大きい場合には、ステップＳ２５に進む。ステップＳ２５においては、第四比較部３４は、第一偏差ΔＦ１および第二偏差ΔＦ２と記憶部２５に記憶された複数の偏差パターンとを比較する。
【００６４】
第一偏差ΔＦ１および第二偏差ΔＦ２の両方が共通の少なくとも一つの偏差パターンを含む場合には、人間９がロボット１０を例えば手で規則的または意図的に押圧することにより、偏差パターンをなす外力を与えていると判断できる。このような場合には、ステップＳ２６に進み、第四指令出力部４４は、偏差パターンに対応する動作指令を前述したように出力する。第二の実施形態においては第一の実施形態と同様な効果が得られることに加えて、第二閾値Ｆｂを設定する必要がないので、第一の実施形態よりも簡易であるのが分かるであろう。
【００６５】
さらに、図示しない実施形態においては、第一偏差ΔＦ１および第二偏差ΔＦ２が複数の共通の偏差パターンを含む場合に、共通の偏差パターンに対応する動作指令を出力しないようにしてもよい。つまり、図３ＢのステップＳ２４〜Ｓ２６および図７のステップＳ２４’〜Ｓ２６を省略することも可能である。あるいは、図示しない別の実施形態においては、ステップＳ２１〜ステップＳ２２のみを省略してもよい。
また、図１に示される第一力検出部１２と第二力検出部１３とをまとめて力検出部として利用してもよく、第一力検出部１２および第二力検出部１３をそれぞれ独立した力検出部として利用してもよい。同様に、第一力推定部２１と第二力推定部２２とをまとめて力推定部として利用しても、これらを独立して利用してもよい。同様に、第一偏差算出部２３ａと第二偏差算出部２３ｂとをまとめて偏差算出部として利用しても、これらを独立して利用してもよい。同様に、第一比較部３１および第二比較部３２をまとめて比較部として利用しても、これらを独立して利用してもよい。同様に、第一指令出力部４１と第二指令出力部４２とをまとめて指令出力部として利用しても、これらを独立して利用してもよい。そのような場合であっても、本発明の範囲に含まれる。
【００６６】
典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、前述した変更および種々の他の変更、省略、追加を行うことができるのを理解できるであろう。また、前述した実施例を適宜組み合わせることは本発明の範囲に含まれる。
【符号の説明】
【００６７】
１    産業用ロボットシステム
９    人間
１０    産業用ロボット
１１    ロボット支持部
１２    第一力センサ（第一力検出部）
１３    第二力センサ（第二力検出部）
１５    角度検出器
２０    ロボット制御装置
２１    第一力推定部
２２    第二力推定部
２３ａ    第一偏差算出部
２３ｂ    第二偏差算出部
２４    プログラム
２５    記憶部
３１    第一比較部
３２    第二比較部
３３    第三比較部
３４    第四比較部
４１    第一指令出力部
４２    第二指令出力部
４３    第三指令出力部
４４    第四指令出力部
【図１】
0006591818.tif 000002
【図２】
0006591818.tif 000003
【図３Ａ】
0006591818.tif 000004
【図３Ｂ】
0006591818.tif 000005
【図４】
0006591818.tif 000006
【図５】
0006591818.tif 000007
【図６】
0006591818.tif 000008
【図７】
0006591818.tif 000009
【図８】
0006591818.tif 000010