説明

ロボット、ロボットの制御方法、およびプログラム

【課題】正常・異常などのそれぞれの稼動状態を検知し、状況に応じた適切な処置や対応がより簡便に、かつより迅速に行うことのできるロボットを提供する。
【解決手段】ロボット100の稼動部(保持ハンド50)に取り付けられた慣性センサー(加速度センサー70、角速度センサー71)と、稼動部を駆動する駆動部と、駆動部を制御する制御部62と、ロボット100の稼動状況を検知し、検知結果を制御部62に伝達する検知部61と、を備え、検知部61は、慣性センサーからの出力信号に基づく信号パターンからロボット100の稼動状況を検知し、制御部62は、検知結果に基づいて駆動部を制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット、ロボットの制御方法、およびそのプログラムに関する。
【背景技術】
【0002】
人とロボットとが共存して生活や作業を行う環境では、ロボットの稼動状況の観察(特に異常動作の検出)は安全管理にとって重要な要素である。例えば、ロボットを駆動するモーターのトルク値をモニターし、規定値を超えた場合は警告を発するなどの方法がある。また、特許文献1では、ロボットの駆動部がロボットに対してした仕事量と、ロボットが保有するエネルギー変化推定値との差を捉えて、その差が予め設定した閾値を越えた場合に警報を発し、ロボットを停止するなどの方法および制御装置を提案している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−188504号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のような従来の方法では、正常に稼動しているか否かの識別と異常検出時の対処(警報や駆動停止)は行われるが、それ以上の情報が得られないという問題があった。例えば、特許文献1に記載の方法および制御装置では、仕事量やエネルギーから算出された値に対する正常あるいは異常という単一の判定情報しか捉えられないことが課題であった。具体的には、ロボットの稼動状況としては様々な段階があり、異常状態としても、異常負荷(想定より大きな負荷がかかる異常)、衝突・衝撃(異常動作や衝突などによる衝撃)、装置のガタ、設定ミスなど様々な要因による異常があるのに対して、その識別ができないという問題があった。その結果、異常原因、異常内容などの情報が得られず、適切な対処に手間取ってしまうことが課題であった。
【課題を解決するための手段】
【0005】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【0006】
[適用例1]本適用例にかかるロボットは、ロボットの稼動部に取り付けられた慣性センサーと、稼動部を駆動する駆動部と、駆動部を制御する制御部と、ロボットの稼動状況を検知して検知結果を制御部に伝達する検知部と、を備え、検知部は、慣性センサーからの出力信号に基づく信号パターンからロボットの稼動状況を検知し、制御部は、検知結果に基づいて駆動部を制御することを特徴とする。
【0007】
本適用例によれば、ロボットの稼動部に取り付けられた慣性センサーからの出力信号に基づく信号パターンからロボットの稼動状況を検知するため、様々な要因による異常や状態の違いを識別することができる。
【0008】
[適用例2]上記適用例にかかるロボットにおいて、検知部は、予め備える比較基準と信号パターンとを比較することで、ロボットの稼動状況を検知することを特徴とする。
【0009】
本適用例によれば、予め備える比較基準と信号パターンとを比較することで、ロボットの稼動状況を検知するため、稼動状況の様々な識別を簡便に行うことができる。具体的には、予め想定される様々な稼動状況における比較基準を作成しておき、信号パターンとの類似度を検証することで稼動状況の様々な識別が可能となる。
【0010】
[適用例3]上記適用例にかかるロボットにおいて、比較基準には、複数の異常判定基準が含まれ、検知部は、信号パターンが、複数の異常判定基準に照らして、いずれかの異常判定基準に該当すると検知した場合に、異常判定基準に対応する異常検知結果を制御部に伝達し、制御部は、異常検知結果に基づいて駆動部を制御することを特徴とする。
【0011】
本適用例によれば、信号パターンが、複数の異常判定基準に照らして、いずれかの異常判定基準に該当すると検知された場合に、対応する異常検知結果を制御部に伝達する。そのため、稼動状況の様々な異常の識別と異常に応じた制御を簡便に行うことができる。具体的には、予め想定される様々な稼動異常における比較基準(異常判定基準)を作成しておき、信号パターンとの類似度を検証することで異常稼動状況の様々な識別が可能となる。つまり、異常発生時には、その異常原因、異常内容などの情報が得られ、より適切な対応が可能となる。
【0012】
[適用例4]上記適用例にかかるロボットにおいて、比較基準には、複数の負荷判定基準が含まれ、検知部は、信号パターンが、複数の負荷判定基準に照らして、いずれかの負荷判定基準に該当すると検知された場合に、負荷判定基準に対応する負荷検知結果を制御部に伝達し、制御部は、負荷検知結果に基づいて駆動部を制御することを特徴とする。
【0013】
本適用例によれば、信号パターンが、複数の負荷判定基準に照らして、いずれかの負荷判定基準に該当すると検知された場合に、対応する負荷検知結果を制御部に伝達する。そのため、負荷の識別と、負荷に応じた制御を簡便に行うことができる。具体的には、予め想定される稼動負荷に対する比較基準(負荷判定基準)を作成しておき、信号パターンとの類似度を検証することで正常な動作における負荷の違いなどの検出をすることができる。例えば、ロボットがハンドリングする移載対象物の重量(慣性質量)や大きさ(慣性モーメント)の違いによる負荷の違いが検出できるため、移載対象物によってハンドリング作業の内容を変えるなどの利用が可能となる。
【0014】
[適用例5]上記適用例にかかるロボットにおいて、複数の負荷判定基準は、負荷量別判定基準と対象負荷別判定基準の両方またはいずれか一方からなり、負荷量別判定基準は、負荷量が既知の複数の標準負荷に対して、標準負荷毎に求めた対応する信号パターンのセットとして予め準備され、対象負荷別判定基準は、複数種類の既知の対象負荷物に対して、対象負荷物毎に求めた対応する信号パターンのセットとして予め準備されることを特徴とする。
【0015】
本適用例によれば、比較基準は、複数の負荷判定基準からなり、複数の負荷判定基準は、負荷量が既知の複数の標準負荷に対して、標準負荷毎に求めた対応する信号パターンのセット、あるいは、複数種類の既知の対象負荷物に対して、対象負荷物毎に求めた対応する信号パターンのセットとして予め準備される。そのため、負荷の識別を簡便に行うことができる。具体的には、ロボットがハンドリングする移載対象物の重量別(例えば100g置き)、あるいは慣性モーメント別に負荷判定基準(負荷量別判定基準)を準備しておくことで、稼動中にハンドリングしている移載対象物の識別が可能となる。また、例えば、ハンドリングする移載対象物の種類が予め分かっており、それぞれの重量や大きさが異なる場合には、種類毎に負荷判定基準(対象負荷別判定基準)を準備しておくことで、稼動中にハンドリングしている移載対象物の種類の識別が可能となる。
【0016】
[適用例6]上記適用例にかかるロボットにおいて、信号パターンは、稼動部の振動を捉えた振動の周波数特性パターンであることを特徴とする。
【0017】
本適用例によれば、信号パターンは、稼動部の振動を捉えた振動の周波数特性パターンであるため、ロボットの稼動部の状態の違いや、ハンドリングする移載対象物の慣性質量や慣性モーメントの違いを容易に識別することができる。具体的には、稼動部に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因による状態の違いは、稼動部における振動の振幅や周波数の違いとして現れる。この周波数特性パターンを、稼動部に取り付けた慣性センサーにより検出することで、稼動部の状態をより簡便に検知、識別することができる。
【0018】
[適用例7]本適用例にかかるロボットの制御方法は、ロボットの稼動部に取り付けた慣性センサーからの出力信号を取り込むステップと、出力信号に基づき信号パターンを生成するステップと、信号パターンからロボットの稼動状況を検知して検知結果を生成するステップと、検知結果に基づいて稼動部を駆動する駆動部を制御するステップと、を含むことを特徴とする。
【0019】
本適用例によれば、ロボットの稼動部に取り付けられた慣性センサーからの出力信号に基づく信号パターンからロボットの稼動状況を検知するため、様々な要因による異常や状態の違いを識別することができる。具体的には、慣性センサーは、加速度、衝撃、振動、回転などの度合いを検出することができるため、稼動部に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因による状態の違いを検出することができる。その結果、異常発生時には、その異常原因、異常内容などの想定される情報が得られ、より適切な対応が可能となり、また、正常な動作における負荷の違いなどの検出も可能となる。
【0020】
[適用例8]上記適用例にかかるロボットの制御方法において、予め備える比較基準と信号パターンとを比較して検知された結果から検知結果を生成することを特徴とする。
【0021】
本適用例によれば、予め備える比較基準と信号パターンとを比較することで、ロボットの稼動状況を検知するため、稼動状況の様々な識別を簡便に行うことができる。具体的には、予め想定される様々な稼動状況における比較基準を作成しておき、信号パターンとの類似度を検証することで稼動状況の様々な識別が可能となる。
【0022】
[適用例9]上記適用例にかかるロボットの制御方法において、比較基準には、複数の異常判定基準を含み、信号パターンが、複数の異常判定基準に照らして、いずれかの異常判定基準に該当すると検知された場合に、検知結果を、対応する異常検知結果として生成し、異常検知結果に基づいて駆動部を制御することを特徴とする。
【0023】
本適用例によれば、信号パターンが、複数の異常判定基準に照らして、いずれかの異常判定基準に該当すると検知された場合に、検知結果を、対応する異常検知結果として生成し、異常検知結果に基づいて駆動部を異常対応制御する。そのため、稼動状況の様々な異常の識別と異常に応じた制御を簡便に行うことができる。具体的には、予め想定される様々な稼動異常における比較基準を作成しておき、信号パターンとの類似度を検証することで異常稼動状況の様々な識別が可能となる。つまり、異常発生時には、その異常原因、異常内容などの情報が得られ、より適切な対応が可能となる。
【0024】
[適用例10]上記適用例にかかるロボットの制御方法において、比較基準には、複数の負荷判定基準を含み、信号パターンが、複数の負荷判定基準に照らして、いずれかの負荷判定基準に該当すると検知された場合に、検知結果を、対応する負荷検知結果として生成し、負荷検知結果に基づいて駆動部を制御することを特徴とする。
【0025】
本適用例によれば、信号パターンが、複数の負荷判定基準に照らして、いずれかの負荷判定基準に該当すると検知された場合に、検知結果を、対応する負荷検知結果として生成し、負荷検知結果に基づいて駆動部を負荷対応制御する。そのため、負荷の識別と、負荷に応じた制御を簡便に行うことができる。具体的には、予め想定される稼動負荷に対する比較基準を作成しておき、信号パターンとの類似度を検証することで正常な動作における負荷の違いなどの検出をすることができる。例えば、ロボットがハンドリングする移載対象物の重量(慣性質量)や大きさ(慣性モーメント)の違いによる負荷の違いが検出できるため、移載対象物によってハンドリング作業の内容を変えるなどの利用が可能となる。
【0026】
[適用例11]上記適用例にかかるロボットの制御方法において、複数の負荷判定基準は、負荷量別判定基準と対象負荷別判定基準の両方またはいずれか一方からなり、負荷量別判定基準は、負荷量が既知の複数の標準負荷に対して、標準負荷毎に求めた対応する信号パターンのセットとして予め準備され、対象負荷別判定基準は、複数種類の既知の対象負荷物に対して、対象負荷物毎に求めた対応する信号パターンのセットとして予め準備されることを特徴とする。
【0027】
本適用例によれば、複数の負荷判定基準は、複数の負荷の大きさを基本として予め備える負荷量別判定基準、あるいは所定の複数の対象負荷物を基本として予め備える対象負荷別判定基準のいずれかであるため、負荷の識別が簡便に実施できる。具体的には、ロボットがハンドリングする移載対象物の重量別(例えば100g置き)、あるいは慣性モーメント別に負荷判定基準(負荷量別判定基準)を準備しておくことで、稼動中にハンドリングしている移載対象物の識別が可能となる。また、例えば、ハンドリングする移載対象物の種類が予め分かっており、それぞれの重量や大きさが異なる場合には、種類毎に負荷判定基準(対象負荷別判定基準)を準備しておくことで、稼動中にハンドリングしている移載対象物の種類の識別が可能となる。
【0028】
[適用例12]上記適用例にかかるロボットの制御方法において、信号パターンは、稼動部の振動を捉えた振動の周波数特性パターンであることを特徴とする
【0029】
本適用例によれば、信号パターンは、稼動部が振動する周波数特性パターンであるため、ロボットの稼動部の状態の違いや、ハンドリングする移載対象物の慣性質量や慣性モーメントの違いを容易に識別することができる。具体的には、稼動部に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因による状態の違いは、稼動部における振動の振幅や周波数の違いとして現れる。この周波数特性パターンを、稼動部に取り付けた慣性センサーにより検出することで、稼動部の状態をより簡便に検知、識別することができる。
【0030】
[適用例13]本適用例にかかるプログラムは、ロボットを、上記に記載の制御方法を含み機能させることを特徴とする。
【0031】
本適用例によれば、上記に記載の制御方法を含み機能させるプログラムを用いることで、ロボットの稼動部に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因によるロボットの稼動状態を検出することができる。そのため、異常発生時には、その異常原因、異常内容などの想定される情報が得られ、また、正常な動作における負荷の違いなどの検出も可能となる。その結果、稼動状態や異常に応じた適切な処置や対応がより簡便にかつより迅速に行うことのできるロボットを提供することができる。
【図面の簡単な説明】
【0032】
【図1】実施形態1に係るロボットの構成を示す斜視図。
【図2】実施形態1に係るロボットの機能的構成を示すブロック図。
【図3】稼動状況検知の基本原理を示す説明図。
【図4】停止動作における周波数特性パターンの例を示すグラフ。
【図5】衝撃による周波数特性パターンの例を示すグラフ。
【図6】停止動作における角速度減衰パターンの例を示すグラフ。
【図7】実施形態1に係るロボットの動作を説明するフローチャート。
【発明を実施するための形態】
【0033】
以下に本発明を具体化した実施形態について、図面を参照して説明する。以下は、本発明の一実施形態であって、本発明を限定するものではない。なお、以下の各図においては、説明を分かりやすくするため、実際とは異なる尺度で記載している場合がある。
【0034】
(実施形態1)
図1は、実施形態1に係るロボット100の構成を示す斜視図である。
図1に示すように、ロボット100は、部品などの移載装置であり、機台10、アーム軸部20、アーム駆動モーター21、給除材アーム30、ハンド駆動機構40、保持ハンド50、統合制御部60、加速度センサー70および角速度センサー71などから構成されている。
【0035】
機台10は、アーム駆動モーター21および軸受機構(図示省略)を内蔵している。
アーム軸部20は、その一端(下部)が機台10によって支持され、アーム駆動モーター21および軸受機構によって回動軸回りに自在に回動する。
アーム軸部20の機台10に支持された側と反対側の端(上部)には、給除材アーム30の一端が固定されている。
給除材アーム30は、アーム軸部20の回動軸を中心に回動する。
給除材アーム30のアーム軸部20に固定された側と反対側の端には、ハンド駆動機構40が固定されている。
ハンド駆動機構40には、稼動部としての保持ハンド50が取り付けられている。
保持ハンド50は、部品などの移載対象物を掴んだり放したりできる機能を持っており、ハンド駆動機構40によって上下動、および回転をすることができる。
【0036】
つまり、ロボット100は、駆動部としてのアーム駆動モーター21およびハンド駆動機構40によって、保持ハンド50を移載対象物に離接させると共に、保持ハンド50によって保持した移載対象物を、載置場所から持ち上げたり、載置場所に載置させたりする動作を行う。
【0037】
また、保持ハンド50には、慣性センサーとしての加速度センサー70および角速度センサー71が取り付けられている。
加速度センサー70は、給除材アーム30の回動や外部から加わる衝撃などによる加速度の検出が可能である。
角速度センサー71は、給除材アーム30の回動における角速度や、保持ハンド50の回転における角速度の検出が可能である。
【0038】
統合制御部60は、パソコンなどの情報入出力装置(図示省略)を介して予め入力された制御プログラムに基づいて、ロボット100の各部の動作を統括制御する。また、統合制御部60には、検知部61と制御部62とを備えている。
検知部61は、加速度センサー70や角速度センサー71からの出力信号を受けて、制御部62に検知結果を通知する。
制御部62は、検知結果を受けて、アーム駆動モーター21、ハンド駆動機構40、保持ハンド50に指令を発し動作を制御する。
【0039】
次に、ロボット100の機能的構成について、図2を参照して説明する。
図2は、実施形態1に係るロボット100の機能的構成を示すブロック図である。
上述したように、ロボット100は、稼動部としての保持ハンド50と、保持ハンド50を移動させる駆動部としてのアーム駆動モーター21とハンド駆動機構40とを供えている。また、保持ハンド50には、慣性センサーとしての加速度センサー70および角速度センサー71を備えている。
なお、保持ハンド50は、移載対象物を掴む・放すなどの動作を行う駆動部としての機能も併せ持っている。
【0040】
制御部62は、制御プログラムに基づいて、アーム駆動モーター21、ハンド駆動機構40、保持ハンド50に対して動作の指令を発する。
アーム駆動モーター21、ハンド駆動機構40、保持ハンド50は、指令を受け、所望の動作を行う。
加速度センサー70、角速度センサー71は、稼動部(保持ハンド50)の移動や動作によって発生する加速度、角速度の検出結果を出力信号として検知部61に発信する。
検知部61は、出力信号を解析し、得られた信号パターンと、予めデータベースとして備えられた比較基準と比較するなどして稼動部の稼動状況を検知する。
検知部61は、稼動状況の検知結果を制御部62に伝達する。
検知結果を受けた制御部62は、制御プログラムに基づいて検知結果に対応した指令をアーム駆動モーター21、ハンド駆動機構40、保持ハンド50に対して発する。
【0041】
次に、稼動部の稼動状況の検知方法について説明する。
図3は、稼動状況検知の基本原理を示す説明図である。
ロボット100は、アーム軸部20を支点として給除材アーム30の先端にハンド駆動機構40および保持ハンド50を持つ構造である。従って、給除材アーム30のバネ定数をkとし、給除材アーム30、保持ハンド50、ハンド駆動機構40の総合の負荷イナーシャをjとした場合に、図3の1質点モデルに示すように、ロボット100は、ω2=k/jで与えられる振動数ωの固有振動を持つ。この固有振動は、質点jを自由振動させた場合に観測できる。つまり、アーム軸部20を支点とした稼動部(保持ハンド50)が自由振動した場合に、稼動部に取り付けた慣性センサー(加速度センサー70)によってこの振動を観測することができる。
【0042】
これに対し、実際の稼動状態においては、稼動部は固有振動をベースとして様々な影響を受けながら、様々な振動をしている。例えば、停止状態から給除材アーム30が回動を開始した後の回動しながらの振動、給除材アーム30が停止した直後の振動、ハンド駆動機構40が保持ハンド50を移動させる前後、あるいは移動中の振動、保持ハンド50が移載対象物を持ち上げたり、載置したりした後の振動などである。これらの振動の周波数は、保持ハンド50の位置や保持する物体の重量などによって変わってくる。また、振動の振幅や減衰時間なども稼動の状況(ロボット100の動作)によって変わってくる。しかし、同様の状態、条件、状況においては、振動の周波数、振幅などのパターンは、それぞれある一定の固有振動パターンとして観察される。従って、稼動部に取り付けた加速度センサー70がセンスする信号を解析することで、稼動部の稼動状況を検知することが可能である。
【0043】
また、稼動状況は、上述した振動による検知だけではなく、保持ハンド50の回動や回転動作における角速度の変化においても捉えることが可能である。従って、稼動部に取り付けた角速度センサー71がセンスする信号を解析することでも、稼動部の稼動状況を検知することが可能である。実施に当たっては、加速度センサー70と角速度センサー71とを補完的に活用することが好ましい。
【0044】
これらの慣性センサーによる稼動状況の検知は、具体的には、例えば一連の正常動作における慣性センサーの出力信号を基準の信号パターンとして予め記録しておき、実際の稼動で観察される慣性センサーからの出力信号と、この基準の信号パターンとを都度比較することで、実際の稼動状況の評価を行うことができる。稼動状況の評価とは、所望する稼動と実際の稼動状況との差異の程度評価である。また、予め想定される異常稼動における基準の信号パターンを用意しておくことで、想定される異常稼動状況との類似度評価を行うこともできる。想定される異常とは、稼動部が受ける負荷異常であり、例えば、想定より重い重量の物体を保持した場合、異常動作や衝突などによる衝撃を受けた場合、装置のガタや設定ミスなどにより異常動作があった場合などである。
このような評価で、稼動状況の正常・異常の識別や、異常時の異常状態・異常原因の類推、正常稼動中の負荷の大きさの類推や特定などが可能となり、それに伴うロボット100の制御も可能となる。
【0045】
図4は、給除材アーム30の停止動作における加速度センサー70が検出した加速度の周波数特性の例を示すグラフである。
図4のグラフにおいて、実線は保持ハンド50に何も持たない場合、破線は保持ハンド50に2kgの物体を持った場合の停止動作における加速度の周波数特性を示している。
グラフの一点鎖線の円で示す部分からも分かるように、負荷により、停止時の振動周波数の特性が大きく異なっている。
【0046】
図5は、衝撃を与えた場合の、加速度センサー70が検出した加速度の周波数特性パターンの例を示すグラフである。
図5のグラフにおいて、実線は通常動作時、破線は軽い衝撃を与えた場合の加速度の周波数特性を示している。
グラフの一点鎖線の円で示す部分からも分かるように、10〜100Hzでピークが2箇所見られ、衝撃時の振動周波数が検出されている。
【0047】
図6は、給除材アーム30の停止動作における角速度センサー71が検出した角速度減衰パターンを示すグラフである。
図6のグラフにおいて、実線は保持ハンド50に何も持たない場合、破線は保持ハンド50に2kgの物体を持った場合の停止動作における角速度の減衰パターンを示している。
グラフの一点鎖線の円で示す部分からも分かるように、負荷により、停止時の減衰特性が大きく異なっている。
【0048】
以上のように、実際の稼動状態においては、稼動部は様々な影響を受けながら、様々な振動をしており、稼動部に取り付けた慣性センサーによって、様々な状態の差異を検出することができる。具体的には、稼動状況が正常か異常かの判断、異常の場合には、その異常内容の検出、また正常な動作範囲の場合には、負荷の大きさや重さなどの識別が可能となる。以下に、これらの検出や識別など、実際の稼動状況の評価を行う具体的な方法について説明する。
【0049】
1.準備
1.1.稼動状況検知のタイミングと種類の設定
準備段階としては、まず、稼動状況を評価し検知するタイミングと、評価の種類を設定する。評価のタイミングとは、例えば、給除材アーム30を大きく回動させる場合の指令発信時から、所定の期間、停止動作指令時から所定の期間、保持ハンド50が回転している所定の期間などである。また、評価の種類とは、稼動状況の正常・異常の識別評価、異常時の異常状態・異常原因の類推評価、正常稼動中の負荷の大きさの類推評価などである。
これらの設定結果は、制御プログラムに反映し、統合制御部60によってコントロールされる。
【0050】
1.2.比較基準の作成
次に、それぞれの評価のタイミングや種類に対応する比較基準を作成する。比較基準としては、稼動状況の正常・異常の識別を行う稼動判定基準、異常時の異常状態・異常原因の類推を行う異常判定基準、正常稼動中の負荷の大きさの類推を行う負荷判定基準などがある。これらの比較基準は、データベースとして蓄積し、ロボット100の稼動にあたって比較用に随時参照する(図2)。
【0051】
1.2.1.稼動判定基準
稼動判定基準は、様々な評価のタイミングに合わせた、それぞれの正常動作を示す信号パターン(基準稼動パターン)と、正常・異常の判定を行う閾値情報とからなる。
【0052】
正常動作による基準稼動パターンは、実際に正常な状態でロボット100を動作させて、設定した評価タイミングで慣性センサーの出力信号を取得することで作成する。具体的には、例えば、加速度センサー70からの出力信号をFFT変換(Fast Fourier Transform高速フーリエ変換)して周波数特性パターン(周波数ごとの振幅パターン)として作成する。
【0053】
正常・異常の判定を行う閾値情報は、稼動判定基準の基準稼動パターンと、実際の稼動で観測される信号パターン(同様にFFT変換を行ったパターン)との類似度の閾値として設定する。具体的には、それぞれのパターンの類似度を示す正規化相互相関値に一定の閾値を設定して判定することにより行っている。
正規化相互相関(NCC:normalized cross correlation)は、平均と標準偏差とによって正規化された絶対測度であり、値が1に近く大きいほどパターンの類似性が高いことを表す。また、正規化相互相関値を用いていることで、振幅の違いによる影響を受けずにパターン形状の類似度が評価される。
【0054】
なお、類似度の評価は、振幅の違いなども評価する場合などは正規化相互相関に限定するものではなく、単に相互相関による評価であっても良い。
また、上記のように評価のタイミングを細分化せずに、一連の作業動作全般に亘って連続的に評価を継続する方法を取っても良い。つまり、予め準備された一連の作業動作全般に亘り基準となる信号パターンと、実際の稼動時の慣性センサーの出力信号とを常時連続的に比較する方法である。この場合、パターンの類似度が一定の範囲を超えた場合に、異常判定基準と比較評価し、異常内容を検知する。
【0055】
1.2.2.異常判定基準
異常判定基準は、様々なタイミングで想定される異常を示す信号パターン(想定異常パターン)と、該当・非該当の判定を行う閾値情報とからなる。
【0056】
想定異常パターンは、実際に想定される異常な状態でロボット100を動作させて慣性センサーの出力信号を取得することで作成する方法や、ロボット100の動作とは別の実験で得られた信号を利用するなどの方法で作成する。また、想定異常パターンは、例えば、稼動判定基準と同様にFFT変換による周波数特性パターンとして作成する。
また、該当・非該当の判定を行う閾値情報も、稼動判定基準と同様に正規化相互相関値、あるいは相互相関値に対する閾値として設定する。
1.2.3.負荷判定基準
負荷判定基準は、様々なタイミングにおける様々な負荷で想定される信号パターン(基準負荷パターン)と、該当・非該当の判定を行う閾値情報とからなる。
【0057】
基準負荷パターンは、いくつかの既知の負荷をかけた状態、つまり既知の重量および形状の移載対象物をハンドリングする状態でロボット100を動作させて慣性センサーの出力信号を取得することで作成する方法や、ロボット100の動作とは別の実験で得られた信号を利用する方法で作成する。基準負荷パターンは、例えば、稼動判定基準と同様にFFT変換による周波数特性パターンとして作成する。
また、該当・非該当の判定を行う閾値情報も、稼動判定基準と同様に正規化相互相関値、あるいは相互相関値に対する閾値として設定する。
【0058】
なお、想定される基準負荷パターンの持ち方としては、複数の基準重量や基準慣性モーメントの負荷に対する負荷量別判定基準として準備しておく方法や、ロボット100がハンドリングする移載対象物としての例えば部品や製品のタイプ毎に対象負荷別判定基準として準備しておく方法がある。
【0059】
1.3.指令の準備
次に、稼動状況を検知した結果の指令動作を予め設定しておく。具体的には、異常が検知された場合には、警報の発報やロボット100の停止処置であったり、特定の負荷が検知された場合には、負荷に応じた作業などであったりする指令を設定しておく。指令の設定内容は、制御プログラムに反映することで、統合制御部60によってコントロールされる。
【0060】
2.稼動状況の検知
図7は、ロボット100の動作を説明するフローチャートである。
次に、図7のフローチャート及び図2を参照してロボット100の稼動状況検知のフローを説明する。
まず、ロボット100の稼動条件の設定をする(ステップS1)。具体的には、ロボット100の機械的セットアップおよび制御プログラムの設定を行う。制御プログラムの設定には、比較基準の設定(予め準備した比較基準の選定など)も含まれる。
【0061】
次に、ロボット100をスタートし(ステップS2)、最初の動作を行う(ステップS3)。また、動作に伴い発生する加速度センサー70、角速度センサー71の出力信号を検知部61に取り込む(ステップS4)。
次に、このタイミングで稼動判定が必要か、つまり稼動判定のタイミングとして設定されているかを確認し(ステップS5)、稼動判定のタイミングとして設定されていない場合には、次のステップ(ステップS7)に進む。稼動判定が必要な場合には、稼動判定を行う(ステップS6)。具体的には、検知部61において、取り込んだ加速度センサー70、角速度センサー71の出力信号をFFT変換するなどして信号パターンを生成し、この動作で指定された比較基準(稼動判定基準)と比較して正常か異常かの評価をする。
【0062】
稼動判定の結果、異常と判断された場合には、異常判定を行う(ステップE1)。具体的には、検知部61において、信号パターンと、指定された比較基準(複数の想定される異常判定基準)とを比較し、いずれの異常判定基準に該当するのか、あるいはいずれの異常判定基準にも該当しないのかの判定を行う。
次に検知部61は、異常判定の結果に応じて異常検知結果を制御部62に伝達し、制御部62は、異常検知結果の内容に応じた異常対応指令をアーム駆動モーター21、ハンド駆動機構40、保持ハンド50などに発する(ステップE2)。ここでは、必要に応じ、警報などを発する処置を行っても良い。
【0063】
稼動判定(ステップS6)の結果、正常と判断された場合には、このタイミングで負荷判定が必要か、つまり負荷判定のタイミングとして設定されているかを確認し(ステップS7)、負荷判定のタイミングとして設定されていない場合は、次のステップ(ステップS10)に進む。負荷判定が必要な場合には、負荷判定を行う(ステップS8)。具体的には、検知部61において、取り込んだ加速度センサー70、角速度センサー71の出力信号をFFT変換するなどして信号パターンを生成し(既に稼動判定において生成されている場合には再度生成する必要はない。)、この動作で指定された比較基準(複数の負荷判定基準)と比較していずれの負荷判定基準に該当するのか、あるいはいずれの負荷判定基準にも該当しないのかの判定を行う。さらに具体的には、例えば、保持ハンド50がハンドリングする移載対象物の重量のレベルを判定する場合には、複数の基準重量の負荷に対する負荷量別判定基準と比較評価して行う。また、例えば、保持ハンド50がハンドリングする移載対象物の部品や製品タイプを判定する場合には、複数の部品や製品タイプ毎の負荷に対する対象負荷別判定基準と比較評価して行う。
【0064】
次に検知部61は、負荷判定の結果に応じて負荷検知結果を制御部62に伝達し、制御部62は、負荷検知結果の内容に応じた負荷対応指令をアーム駆動モーター21、ハンド駆動機構40、保持ハンド50などに発する(ステップS9)。具体的には、例えば、移載対象物を重量別に仕分ける、あるいは部品や製品タイプ別に仕分けるなどといった作業指令を発する。
【0065】
次に、統合制御部60は、制御プログラムに従い、ロボット100の動作が完了しているか確認し(ステップS10)、完了している場合には、動作を終了する。引き続く動作を行う場合には、次の動作に移り(ステップS11)、繰り返し一連の指定された動作を行う(ステップS3〜)。
【0066】
以上述べたように、本実施形態によるロボット、ロボットの制御方法、およびプログラムによれば、以下の効果を得ることができる。
ロボット100の保持ハンド50に取り付けられた慣性センサー(加速度センサー70、角速度センサー71)からの出力信号に基づく信号パターンを評価してロボット100の稼動状況が検知できるため、様々な要因による異常や状態の違いを識別することができる。具体的には、加速度センサー70、角速度センサー71は、加速度、衝撃、振動、回転などの度合いを検出することができるため、保持ハンド50に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因による状態を検出することができる。その結果、異常発生時には、その異常原因、異常内容などの想定される情報が得られ、より適切な対応が可能となり、また、正常な動作における負荷の違いなどの検出も可能となる。
【0067】
また、予め備える比較基準と信号パターンとを比較することで、ロボット100の稼動状況を検知するため、稼動状況の様々な識別を簡便に行うことができる。具体的には、予め想定される様々な稼動状況における比較基準を作成しておき、信号パターンとの類似度を検証することで稼動状況の様々な識別が可能となる。
例えば、予め想定される様々な異常状態を反映した比較基準を作成しておき、信号パターンとの類似度を検証することで異常稼動状況の様々な識別が可能となる。つまり、異常発生時には、その異常原因、異常内容などの情報が得られ、より適切な対応が可能となる。
また、例えば、予め想定される稼動負荷に対する比較基準を作成しておき、信号パターンとの類似度を検証することで正常な動作における負荷の違いなどの検出をすることができる。例えば、ロボット100がハンドリングする移載対象物の重量(慣性質量)や大きさ(慣性モーメント)の違いによる負荷の違いが検出できるため、移載対象物の種類の識別や、移載対象物によってハンドリング作業の内容を変えるなどの利用が可能となる。
【0068】
また、信号パターンを保持ハンド50が振動する周波数特性パターンとして捉えた場合、ロボット100の稼動部の状態の違いや、ハンドリングする移載対象物の慣性質量や慣性モーメントの違いを容易に識別することができる。具体的には、稼動部に発生する負荷の違い、衝撃、装置のガタ、設定ミスなどの様々な要因による状態の違いは、稼動部における振動の振幅や周波数の違いとして現れる。この周波数特性パターンを稼動部に取り付けた、慣性センサーにより検出することで、稼動部の状態をより簡便に検知、識別することができる。
【0069】
以上のように、本実施形態によるロボット、ロボットの制御方法、およびプログラムによれば、ロボットの正常・異常の識別だけでなく、負荷の識別や異常負荷(想定より大きな負荷がかかる異常)、衝突・衝撃(異常動作や衝突などによる衝撃)、装置のガタ、設定ミスなど様々な稼動状況の識別ができるため、負荷に対応した適切な作業や、異常対応に手間取ることなく適切な対処の行えるロボットを提供することができる。
【符号の説明】
【0070】
10…機台、20…アーム軸部、21…アーム駆動モーター、30…給除材アーム、40…ハンド駆動機構、50…保持ハンド、60…統合制御部、61…検知部、62…制御部、70…加速度センサー、71…角速度センサー、100…ロボット。

【特許請求の範囲】
【請求項1】
ロボットの稼動部に取り付けられた慣性センサーと、
前記稼動部を駆動する駆動部と、
前記駆動部を制御する制御部と、
前記ロボットの稼動状況を検知して検知結果を前記制御部に伝達する検知部と、を備え、
前記検知部は、前記慣性センサーからの出力信号に基づく信号パターンから前記ロボットの稼動状況を検知し、
前記制御部は、前記検知結果に基づいて前記駆動部を制御することを特徴とするロボット。
【請求項2】
前記検知部は、予め備える比較基準と前記信号パターンとを比較することで、前記ロボットの稼動状況を検知することを特徴とする請求項1に記載のロボット。
【請求項3】
前記比較基準には、複数の異常判定基準が含まれ、
前記検知部は、前記信号パターンが、前記複数の異常判定基準に照らして、いずれかの前記異常判定基準に該当すると検知した場合に、前記異常判定基準に対応する異常検知結果を前記制御部に伝達し、
前記制御部は、前記異常検知結果に基づいて前記駆動部を制御することを特徴とする請求項2に記載のロボット。
【請求項4】
前記比較基準には、複数の負荷判定基準が含まれ、
前記検知部は、前記信号パターンが、前記複数の負荷判定基準に照らして、いずれかの前記負荷判定基準に該当すると検知された場合に、前記負荷判定基準に対応する負荷検知結果を前記制御部に伝達し、
前記制御部は、前記負荷検知結果に基づいて前記駆動部を制御することを特徴とする請求項2に記載のロボット。
【請求項5】
前記複数の負荷判定基準は、負荷量別判定基準と対象負荷別判定基準の両方またはいずれか一方からなり、
前記負荷量別判定基準は、負荷量が既知の複数の標準負荷に対して、前記標準負荷毎に求めた対応する信号パターンのセットとして予め準備され、
前記対象負荷別判定基準は、複数種類の既知の対象負荷物に対して、前記対象負荷物毎に求めた対応する信号パターンのセットとして予め準備されることを特徴とする請求項4に記載のロボット。
【請求項6】
前記信号パターンは、前記稼動部の振動を捉えた振動の周波数特性パターンであることを特徴とする請求項1ないし請求項5のいずれか一項に記載のロボット。
【請求項7】
ロボットの稼動部に取り付けた慣性センサーからの出力信号を取り込むステップと、
前記出力信号に基づき信号パターンを生成するステップと、
前記信号パターンから前記ロボットの稼動状況を検知して検知結果を生成するステップと、
前記検知結果に基づいて前記稼動部を駆動する駆動部を制御するステップと、を含むことを特徴とするロボットの制御方法。
【請求項8】
予め備える比較基準と前記信号パターンとを比較して検知された結果から前記検知結果を生成することを特徴とする請求項7に記載のロボットの制御方法。
【請求項9】
前記比較基準には、複数の異常判定基準を含み、
前記信号パターンが、前記複数の異常判定基準に照らして、いずれかの異常判定基準に該当すると検知された場合に、前記検知結果を、対応する異常検知結果として生成し、
前記異常検知結果に基づいて前記駆動部を制御することを特徴とする請求項8に記載のロボットの制御方法。
【請求項10】
前記比較基準には、複数の負荷判定基準を含み、
前記信号パターンが、前記複数の負荷判定基準に照らして、いずれかの負荷判定基準に該当すると検知された場合に、前記検知結果を、対応する負荷検知結果として生成し、
前記負荷検知結果に基づいて前記駆動部を制御することを特徴とする請求項8に記載のロボットの制御方法。
【請求項11】
前記複数の負荷判定基準は、負荷量別判定基準と対象負荷別判定基準の両方またはいずれか一方からなり、
前記負荷量別判定基準は、負荷量が既知の複数の標準負荷に対して、前記標準負荷毎に求めた対応する信号パターンのセットとして予め準備され、
前記対象負荷別判定基準は、複数種類の既知の対象負荷物に対して、前記対象負荷物毎に求めた対応する信号パターンのセットとして予め準備されることを特徴とする請求項10に記載のロボットの制御方法。
【請求項12】
前記信号パターンは、前記稼動部の振動を捉えた振動の周波数特性パターンであることを特徴とする請求項7ないし請求項11のいずれか一項に記載のロボットの制御方法。
【請求項13】
ロボットを、請求項7ないし請求項12のいずれか一項に記載の制御方法を含み機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−13988(P2013−13988A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【出願番号】特願2011−149803(P2011−149803)
【出願日】平成23年7月6日(2011.7.6)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】