ロボットシステム及びロボットの異常検出方法
【課題】ロボットアームの異常の有無を検出可能とすることにより、ロボットの信頼性を向上する。
【解決手段】ロボットシステム1は、アーム103L,103Rを有するロボット100と、ロボットコントローラ150とを備えており、ロボット100は、アーム103L,103Rに設けられたセンサ122を有し、ロボットコントローラ150は、アーム103L,103Rが異常のない状態で所定の動作を行う間のセンサ122の出力値Vの時間履歴を規範データとして記録する規範データ記録部163と、稼働時においてアーム103L,103Rが所定の動作を行う間のセンサ122の出力値Vの時間履歴を出力データとして記録する出力データ記録部167と、規範データ記録部163に記録された規範データと出力データ記録部167に記録された出力データとを比較することにより、アーム103L,103Rの異常の有無を判定する比較判定部164とを有する。
【解決手段】ロボットシステム1は、アーム103L,103Rを有するロボット100と、ロボットコントローラ150とを備えており、ロボット100は、アーム103L,103Rに設けられたセンサ122を有し、ロボットコントローラ150は、アーム103L,103Rが異常のない状態で所定の動作を行う間のセンサ122の出力値Vの時間履歴を規範データとして記録する規範データ記録部163と、稼働時においてアーム103L,103Rが所定の動作を行う間のセンサ122の出力値Vの時間履歴を出力データとして記録する出力データ記録部167と、規範データ記録部163に記録された規範データと出力データ記録部167に記録された出力データとを比較することにより、アーム103L,103Rの異常の有無を判定する比較判定部164とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットアームを有するロボット及びこのロボットを制御する制御ユニットを備えたロボットシステム、並びに、ロボットの異常検出方法に関する。
【背景技術】
【0002】
ロボットの分野では、ロボット自身あるいはロボットの周囲に存在する物体に対して過剰な負荷が生じることを回避することが求められている。このため、ロボットに対する接触(外力)の有無を検出することが必要となる。
【0003】
例えば、特許文献1には、ロボットアームの基端に外力を検出するための力検出器を取り付け、力検出器の検出結果に基づいてロボットアームの動作を停止させたり、過度な外力がかかった場合に外力が低減する方向にロボットアームを動作させる等の技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−21287号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ロボットの信頼性の向上を図るためには、例えばロボットアームのアクチュエータや減速機の経年劣化による異常等、ロボットアームの内部における異常の有無を検出することが要求される。
【0006】
上記従来技術では、力検出器として6軸力センサを用いているが、一般に6軸力センサは複数のひずみゲージを用いて構成されており、固有振動数が低い。このため、アクチュエータや減速機の異常によりロボットアームの構造部材に発生する高い周波数の異常振動等を検出することはできず、ロボットアーム自身の異常を検出することができなかった。このため、信頼性に欠けるという問題があった。
【0007】
本発明はこのような課題に鑑みてなされたものであり、ロボットアームの異常の有無を検出可能とすることにより、信頼性を向上できるロボットシステム及びロボットの異常検出方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明のロボットシステムは、ロボットアームを有するロボットと、前記ロボットを制御する制御ユニットと、を備えたロボットシステムであって、前記ロボットは、前記ロボットアームに設けられたひずみセンサを有し、前記制御ユニットは、前記ロボットアームが異常のない状態で所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録部と、稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録部と、前記規範データ記録部に記録された前記規範データと、前記出力データ記録部に記録された前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定部と、を有することを特徴としている。
【0009】
また、前記ロボットアームには、当該ロボットアームが有する1以上の関節部を動作させる1以上のアクチュエータが設けられており、前記比較判定部は、前記出力データと前記規範データとの差が予め設定された閾値を超える事象が所定の周期毎に生じた場合に、前記アクチュエータに異常があると判定することが好ましい。
【0010】
また、前記比較判定部は、前記出力データと前記規範データとの差が一定時間の間に予め設定された閾値を超えた回数が所定の判定回数を超えた場合に、前記ロボットアームに異常があると判定することが好ましい。
【0011】
また、前記比較判定部は、前記ロボットアームの動作速度に応じて前記判定回数を変更しつつ判定を行うことが好ましい。
【0012】
また、前記制御ユニットは、前記閾値を設定する閾値設定部をさらに有することが好ましい。
【0013】
また、前記制御ユニットは、前記規範データ記録部により前記ひずみセンサの出力値の時間履歴を前記規範データとして記録する区間を設定する区間設定部をさらに有することが好ましい。
【0014】
また、前記制御ユニットは、前記区間設定部で設定した区間に対応する前記所定の動作を前記ロボットアームが実行する毎に、前記ひずみセンサの零点調整を行う零点調整部をさらに有することが好ましい。
【0015】
また、前記制御ユニットは、前記ひずみセンサの出力信号の高周波振動成分を抽出するハイパスフィルタ部をさらに有し、前記比較判定部は、前記ハイパスフィルタ部により抽出された前記高周波振動成分に基づく前記規範データと前記出力データとを比較することにより、前記ロボットが常態であるか非常態であるかを判定することが好ましい。
【0016】
また、前記ひずみセンサは、前記ロボットアームを構成する構造材料よりも固有振動数が大きい圧電体を有する力センサであることが好ましい。
【0017】
また、前記ひずみセンサは、圧電体として水晶が用いられたセンサであることが好ましい。
【0018】
また、本発明のロボットの異常検出方法は、ロボットが備えたロボットアームの異常の有無を検出するロボットの異常検出方法であって、前記ロボットアームが異常のない状態で所定の動作を行う間に、前記ロボットアームに設けられたひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録手順と、稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録手順と、前記規範データと前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定手順と、を有することを特徴としている。
【発明の効果】
【0019】
本発明によれば、ロボットアームの異常の有無を検出可能とすることにより、ロボットの信頼性を向上することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の一実施の形態のロボットシステムの全体構成を概念的に表すシステム構成図である。
【図2】ロボットの構成を表すロボットの上面図である。
【図3】ロボットコントローラの機能構成を表す機能ブロック図である。
【図4】異常検出部の機能構成を表す機能ブロック図である。
【図5】センサ部、ハイパスフィルタ部、及び比較判定部の詳細を説明するための説明図である。
【図6】アームが異常のない状態で実行する所定の動作、及び、その間のセンサの出力値Vを説明するための説明図である。
【図7】稼働時においてアームが実行する所定の動作、及び、その間のセンサの出力値Vを説明するための説明図である。
【図8】アームの異常の有無を検出する手法の一例を説明するための説明図である。
【図9】ロボットコントローラが実行する、本発明の一実施の形態のロボットの異常検出方法による制御手順を表すフローチャートである。
【図10】物体の接触検出に適用する変形例において、稼働時においてアームが実行する所定の動作を表す模式図である。
【発明を実施するための形態】
【0021】
以下、本発明の一実施の形態について図面を参照しつつ説明する。
【0022】
図1は、本実施形態のロボットシステムの全体構成を概念的に表すシステム構成図である。図2は、ロボットの構成を表すロボットの上面図である。
【0023】
図1及び図2において、本実施形態のロボットシステム1は、複数の物品Pを搬送するベルトコンベア2の一方側に設けられたロボット100と、このロボット100を制御するロボットコントローラ150(制御ユニット)とを備えている。ロボット100は、双腕ロボットであり、基台101、胴体部102、2つのアーム103L,103R(ロボットアーム)、及び、2つのセンサ部120L,120Rを有している。
【0024】
基台101は、設置面(床部等)に対し図示しないアンカーボルト等により固定されている。胴体部102は、回転軸Ax1周りに回転駆動するアクチュエータAc1が設けられた第1関節部を有している。この胴体部102は、基台101に対し第1関節部を介して旋回可能に設置されており、第1関節部に設けられたアクチュエータAc1の駆動により上記設置面と略水平な方向に沿って旋回する。また、この胴体部102は、別体として構成されたアーム103L,103Rを、それぞれ一方側(図1及び図2中右側)及び他方側(図1及び図2中左側)において支持する。
【0025】
アーム103Lは、胴体部102の一方側に設けられたマニピュレータであり、肩部104L、上腕A部105L、上腕B部106L、下腕部107L、手首A部108L、手首B部109L、フランジ110L、及びハンド111Lと、これら各部をそれぞれ回転駆動するアクチュエータAc2〜Ac8がそれぞれ設けられた第2〜第8関節部とを有している。
【0026】
肩部104Lは、胴体部102に対し第2関節部を介して回転可能に連結されており、第2関節部に設けられたアクチュエータAc2の駆動により上記設置面に対して略水平な回転軸Ax2周りに回転する。上腕A部105Lは、肩部104Lに対し第3関節部を介して旋回可能に連結されており、第3関節部に設けられたアクチュエータAc3の駆動により回転軸Ax2に対して直交する回転軸Ax3周りに旋回する。上腕B部106Lは、上腕A部105Lの先端に対し第4関節部を介して回転可能に連結されており、第4関節部に設けられたアクチュエータAc4の駆動により回転軸Ax3に対して直交する回転軸Ax4周りに回転する。下腕部107Lは、上腕B部106Lに対し第5関節部を介して旋回可能に連結されており、第5関節部に設けられたアクチュエータAc5の駆動により回転軸Ax4に対して直交する回転軸Ax5周りに旋回する。手首A部108Lは、下腕部107Lの先端に対し第6関節部を介して回転可能に連結されており、第6関節部に設けられたアクチュエータAc6の駆動により回転軸Ax5に対して直交する回転軸Ax6周りに回転する。手首B部109Lは、手首A部108Lに対し第7関節部を介して旋回可能に連結されており、第7関節部に設けられたアクチュエータAc7の駆動により回転軸Ax6に対して直交する回転軸Ax7周りに旋回する。フランジ110Lは、手首B部109Lの先端に対し第8関節部を介して回転可能に連結されており、第8関節部に設けられたアクチュエータAc8の駆動により回転軸Ax7に対して直交する回転軸Ax8周りに回転する。ハンド111Lは、フランジ110Lの先端に対し取り付けられており、フランジ110Lの回転により従動的に回転する。
【0027】
アーム103Rは、胴体部102の他方側に設けられたマニピュレータであり、上記アーム103Lと同様の構造を備えている。このアーム103Rは、肩部104R、上腕A部105R、上腕B部106R、下腕部107R、手首A部108R、手首B部109R、フランジ110R、及びハンド111Rと、これら各部をそれぞれ回転駆動するアクチュエータAc9〜Ac15がそれぞれ設けられた第9〜第15関節部とを有している。
【0028】
肩部104Rは、胴体部102に対し第9関節部を介して回転可能に連結されており、第9関節部に設けられたアクチュエータAc9の駆動により上記設置面に対して略水平な回転軸Ax9周りに回転する。上腕A部105Rは、肩部104Rに対し第10関節部を介して旋回可能に連結されており、第10関節部に設けられたアクチュエータAc10の駆動により回転軸Ax9に対して直交する回転軸Ax10周りに旋回する。上腕B部106Rは、上腕A部105Rの先端に対し第11関節部を介して回転可能に連結されており、第11関節部に設けられたアクチュエータAc11の駆動により回転軸Ax10に対して直交する回転軸Ax11周りに回転する。下腕部107Rは、上腕B部106Rに対し第12関節部を介して旋回可能に連結されており、第12関節部に設けられたアクチュエータAc12の駆動により回転軸Ax11に対して直交する回転軸Ax12周りに旋回する。手首A部108Rは、下腕部107Rの先端に対し第13関節部を介して回転可能に連結されており、第13関節部に設けられたアクチュエータAc13の駆動により回転軸Ax12に対して直交する回転軸Ax13周りに回転する。手首B部109Rは、手首A部108Rに対し第14関節部を介して旋回可能に連結されており、第14関節部に設けられたアクチュエータAc14の駆動により回転軸Ax13に対して直交する回転軸Ax14周りに旋回する。フランジ110Rは、手首B部109Rの先端に対し第15関節部を介して回転可能に連結されており、第15関節部に設けられたアクチュエータAc15の駆動により回転軸Ax14に対して直交する回転軸Ax15周りに回転する。ハンド111Rは、フランジ110Rの先端に対し取り付けられており、フランジ110Rの回転により従動的に回転する。
【0029】
なお、この例では、アーム103L,103Rは、7つの関節部すなわち7自由度(冗長自由度)を有しているが、アーム103L,103Rの自由度は「7」に限られない。
【0030】
これらアーム103L,103Rの肩部104L,104R、上腕A部105L,105R、上腕B部106L,106R、下腕部107L,107R、手首A部108L,108R、手首B部109L,109R、フランジ110L,110R、及びハンド111L,111Rを構成する構造材料は、例えば鉄やアルミニウム等の金属材料により構成されている。
【0031】
また、図2に示すように、第1関節部の回転軸Ax1と第2及び第9関節部の各回転軸Ax2,Ax9とは、上記設置面と略水平な方向に長さD1だけオフセットされるように、基台101に対して胴体部102が第1関節部から第2及び第9関節部にかけて水平前方にせり出すように形成されている。これにより、肩部104L,104Rの下方側の空間を作業スペースとすることができると共に、回転軸Ax1を回転させることでアーム103L,103Rの可到範囲が拡大される。
【0032】
さらに、第11関節部の回転軸Ax11と第12関節部の回転軸Ax12とは、上面視での位置が長さD2だけオフセットされるように、上腕B部106Rの形状が設定されている。そして、第12関節部の回転軸Ax12と第13関節部の回転軸Ax13とは、上面視での位置が長さD3だけオフセットされるように、下腕部107Rの形状が設定されており、回転軸Ax11と回転軸Ax13とが略水平となる姿勢をとったときに、回転軸Ax11と回転軸Ax13とのオフセット長さが(D2+D3)となるようになっている。これにより、人間の「肘」に相当する第12関節部を屈曲させたときに、人間の「上腕」に相当する上腕A部105R及び上腕B部106Rと、人間の「下腕」に相当する下腕A部107Rとの間のクリアランスを大きく確保することができ、ハンド111Rをより胴体部102に近づけた場合でもアーム103Rの動作自由度が拡大される。
【0033】
またさらに、図2では明示していないが、アーム103Lについても同様に、第4関節部の回転軸Ax4と第5関節部の回転軸Ax5とは、上面視での位置が長さD2だけオフセットされるように、上腕B部106Lの形状が設定されている。そして、第5関節部の回転軸Ax5と第6関節部の回転軸Ax6とは、上面視での位置が長さD3だけオフセットされるように、下腕部107Lの形状が設定されており、回転軸Ax4と回転軸Ax6とが略水平となる姿勢をとったときに、回転軸Ax4と回転軸Ax6とのオフセット長さが(D2+D3)となるようになっている。
【0034】
センサ部120L,120Rは、それぞれ、図2に示すように、円盤状のセンサ固定治具121と、少なくとも1個(この例では3個)の略直方体状のセンサ122(ひずみセンサ)とにより構成されている。センサ部120Lのセンサ固定治具121は、アーム103Lの最も基端側に設けられたアクチュエータAc2の固定子の基部に取り付けられ、このセンサ固定治具121に設けられた各センサ122は、アーム103Lにかかる力(詳細には、力の大きさそのものではなく、アーム103Lにかかる衝撃力に起因する振動等によるひずみ量)をそれぞれ検出可能となっている。センサ部120Rのセンサ固定治具121は、アーム103Rの最も基端側に設けられたアクチュエータAc9の固定子の基部に取り付けられ、このセンサ固定治具121に設けられた各センサ122は、アーム103Rにかかる力(詳細には、力の大きさそのものではなく、アーム103Rにかかる衝撃力に起因する振動等によるひずみ量)をそれぞれ検出可能となっている。このセンサ部120L,120Rの詳細については、後述する。
【0035】
上記のように構成されたロボット100は、アーム103L,103Rが上記ベルトコンベア2上の物品Pの両側より内側に向けて動作して、ハンド111L,111Rで物品Pを把持するように、各アクチュエータAc1〜Ac15を含む各駆動部位の動作が、ロボットコントローラ150により制御されている。また、各アクチュエータAc1〜Ac15は、それぞれ、図示しないケーブルを挿通可能な中空部を有する減速機一体型のサーボモータにより構成されており、各アクチュエータAc1〜Ac15の回転位置は、各アクチュエータAc1〜Ac15に内蔵された図示しないエンコーダからの信号として、ロボットコントローラ150にケーブルを介して入力されるようになっている。
【0036】
図3は、ロボットコントローラ150の機能構成を表す機能ブロック図である。
【0037】
図3において、ロボットコントローラ150は、図示しない演算器、記憶装置、入力装置等を備えたコンピュータにより構成されており、ロボット100の各駆動部位や各センサ122とケーブルを介して相互通信可能に接続されている。このロボットコントローラ150は、動作指令部151、位置指令遮断部152、平滑化処理部153、サーボ部154、異常検出部155、把持トルク補償部156、及び重力トルク補償部157を有している。
【0038】
動作指令部151は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づき、各アクチュエータAc1〜Ac15に対する位置指令(動作指令)をそれぞれ算出し、位置指令遮断部152を介して平滑化処理部153にプールする。
【0039】
平滑化処理部153は、所定の演算周期毎に、プールされた上記位置指令をサーボ部154に順次出力する。
【0040】
サーボ部154は、各アクチュエータAc1〜Ac15毎に、各アクチュエータAc1〜Ac15のエンコーダの検出値による関節角度フィードバック回路Fpと、各アクチュエータAc1〜Ac15のエンコーダの検出値から得られる角速度検出値による関節角度フィードバック回路Fvとを有している。このサーボ部154は、平滑化処理部153より順次入力される上記位置指令に基づき、上記所定の演算周期毎に、各アクチュエータAc1〜Ac15に対するトルク指令Trefを生成して出力する。
【0041】
異常検出部155は、センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化等による異常の有無を検出する。なお、これに限られず、アーム103L,103R自身の異常(アクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化等による異常や、アーム103L,103Rの筐体の異常等を含む)の有無を検出するようにしてもよい。この異常検出部155の詳細については、後述する。
【0042】
位置指令遮断部152は、異常検出部155によりアーム103L,103RのアクチュエータAc2〜Ac15等の異常が検出された場合に、動作指令部151から平滑化処理部153への上記位置指令の出力を遮断し、サーボ部154に伝達される位置指令を遮断する。なお、サーボ部154への位置指令が遮断されると、フィードバックにより出力されるトルク指令Trefの値が減少して、アーム103L,103Rは速やかに停止動作に入る。
【0043】
把持トルク補償部156は、各アクチュエータAc1〜Ac15に対するサーボ部154により生成される上記トルク指令Trefに、アーム103L,103Rが物品Pを把持するための把持補償トルクを付加する。
【0044】
重力トルク補償部157は、各アクチュエータAc1〜Ac15に対するサーボ部154により生成される上記トルク指令Trefに、自重分の重力補償トルクを付加する。
【0045】
図4は、異常検出部155の機能構成を表す機能ブロック図である。
【0046】
図4において、異常検出部155は、ハイパスフィルタ部161、区間設定部162、規範データ記録部163、出力データ記録部167、比較判定部164、零点調整部165、及び閾値設定部166を有している。
【0047】
ハイパスフィルタ部161は、センサ部120L,120Rの各センサ122の出力信号に含まれる、アーム103L,103Rの異常に起因する周波数以外の周波数成分(例えば外乱に起因する周波数成分等)を除去するために、各センサ122の出力信号の高周波振動成分をそれぞれ抽出する。このハイパスフィルタ部161の詳細については、後述する。
【0048】
区間設定部162は、入力装置を介して入力された入力情報に基づき、規範データ記録部163によりセンサ122の出力値Vの時間履歴を波形で表した規範波形(規範データ)として記録する区間(以下適宜、単に「記録区間」と称する)を設定する。
【0049】
規範データ記録部163は、アーム103L,103Rに異常のない状態で、区間設定部162で設定した記録区間に対応する所定の動作を、アーム103L,103Rが行う間の、ハイパスフィルタ部161により抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に規範波形(後述の図6(b)参照)としてそれぞれ記録する。ここで、アーム103L,103Rに異常がない状態とは、アーム103L,103Rの筐体(構造部材やカバー部材あるいは配線等を含む)、及び、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等に、構造上及び機能上の欠陥・故障がなく、これらが正常に動作する状態で、且つ、アーム103L,103Rに意図しない接触や干渉が生じていない状態をいう。例えば、アーム103L,103Rの筐体、及び、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等が正常に動作することを点検した直後の状態や、初期不良のない初期稼働時の状態等が該当する。また、所定の動作とは、入力装置を介して教示された教示情報(動作開始位置及び動作完了位置の情報)等に基づいて上記動作指令部151により算出された位置指令に応じた動作である。
【0050】
出力データ記録部167は、稼働時においてアーム103L,103Rが上記所定の動作を行う間の、ハイパスフィルタ部161により抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形(出力データ。後述の図7(b)参照)としてそれぞれ記録する。本実施形態では、稼働時において可動範囲内に把持対象となる物品Pが存在しないとき(例えば物品Pの搬送開始直後や搬送を中断して行う点検時等)にアーム103L,103Rが所定の動作を行う間の、上記各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録するようになっている。なお、これに限られず、稼働時において可動範囲内に把持対象となる物品Pが存在するときにアーム103L,103Rが上記所定の動作を行う間の、上記各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録するようにしてもよい。
【0051】
閾値設定部166は、入力装置を介して入力された入力情報に基づき、比較判定部164における異常有無の判定値となる閾値Dthを設定する。
【0052】
比較判定部164は、規範データ記録部163に各センサ122毎に記録された規範波形と、出力データ記録部167に各センサ122毎に記録された出力波形とを、各センサ122毎にそれぞれ比較することにより、各センサ122毎に出力波形と規範波形との差(詳細には当該差の絶対値)|D|をそれぞれ算出する。そして、各センサ122毎に算出した差|D|が、アーム103L,103Rが上記所定の動作を1回行う間(一定時間の間)に閾値設定部166により予め設定された閾値Dthを超えた回数N(以下適宜、「超過回数N」と称する)を、各センサ122毎にそれぞれカウントする。なお、一定時間の間としては、アーム103L,103Rが所定の動作を1回行う間に限られず、例えば入力装置を介して設定した時間の間等でもよい。そして、各センサ122毎にカウントした超過回数Nが、所定の判定回数Njを超えたかどうかを、各センサ122毎にそれぞれ判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。この比較判定部164の詳細については、後述する。
【0053】
零点調整部165は、アーム103L,103RのアクチュエータAc2〜Ac15の発熱等による周囲温度の変動や自己発熱によって生じる各センサ122の温度ドリフトの影響を抑制するために、区間設定部162で設定した記録区間に対応する上記所定の動作をアーム103L,103Rが実行する毎に、各センサ122に対しリセット信号をそれぞれ出力して、各センサ122の零点調整をそれぞれ行う。
【0054】
図5は、センサ部120L,120R、ハイパスフィルタ部161、及び比較判定部164の詳細を説明するための説明図である。なお、この図5中では、上記規範データ記録部163及び出力データ記録部167等の図示を省略している。
【0055】
図5において、前述したように、センサ部120L,120Rは、それぞれ、円盤状のセンサ固定治具121と、3個の略直方体状のセンサ122とにより構成されている。センサ部120Lの3個のセンサ122は、センサ固定治具121の内側の面、すなわち上記アクチュエータAc2の固定子の基部への取り付け面ではない方の面(図2中左側の面、図5中紙面手前側の面)に、略同一円周上に略等間隔に配置され、各センサ122が放射状の向きとなるように配置されている。センサ部120Rの3個のセンサ122は、センサ固定治具121の内側の面、すなわち上記アクチュエータAc9の固定子の基部への取り付け面ではない方の面(図2中右側の面、図5中紙面手前側の面)に、略同一円周上に略等間隔に配置され、各センサ122が放射状の向きとなるように配置されている。
【0056】
本実施形態では、各センサ122として、アーム103L,103Rの各部を構成する構造材料である上記金属材料よりも固有振動数(あるいは剛性)が大きい材質の圧電体を有する力センサ、この例では圧電体として水晶が用いられたセンサが、それぞれ使用されている。これは、一般に、固有振動数が大きい力センサほど、より高い周波数成分を含んだ変動力を検出することができ、水晶は、アーム103L,103Rの各部を構成する構造材料である上記金属材料よりも固有振動数(あるいは剛性)が大きいためである。したがって、アーム103L,103Rの各部の構造材料に伝わる微小な高周波振動(速い変形)までも検知することができる。
【0057】
なお、各センサ122としては、圧電体として水晶が用いられたセンサに限られず、アーム103L,103Rの各部を構成する構造材料よりも固有振動数が大きい圧電体を有する力センサであればよい。センサ部120Lの各センサ122は、それぞれ、アーム103Lにかかる力に起因するセンサ固定治具121のラジアル方向のひずみ量を電圧として検出し、センサ部120Rの各センサ122は、それぞれ、アーム103Rにかかる力に起因するセンサ固定治具121のラジアル方向のひずみ量を電圧として検出する。各センサ部122で得られた電圧は、アンプ部123を介してそれぞれ増幅され、ハイパスフィルタ部161の各ハイパスフィルタ161A(後述)にそれぞれ入力されるようになっている。
【0058】
ハイパスフィルタ部161は、センサ122の出力信号の高周波振動成分を抽出可能な複数のハイパスフィルタ161A(又は高周波数帯域を通過帯域とするバンドパスフィルタでもよい)を有しており、これら各ハイパスフィルタ161Aにより、アンプ部123を介して増幅された各センサ122の出力信号の高周波振動成分をそれぞれ抽出する。なお、各ハイパスフィルタ161Aは、アーム103L,103Rの異常に起因する周波数以外の周波数成分(例えばアクチュエータAc2〜Ac15の動作等の接触以外の事象に起因する周波数成分等)を除去できるように、カットオフ周波数が決定されている。
【0059】
比較判定部164は、上述したように、各センサ122毎にカウントした上記超過回数Nが判定回数Njを超えたかどうかを、各センサ122毎に判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。具体的には、各センサ122に係わる超過回数Nのうち、全てのセンサ122に係わる超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、各センサ122に係わる超過回数Nのうち、いずれか1つのセンサ122に係わる超過回数Nが判定回数Njを超えた場合には、アクチュエータAc2〜Ac15等に異常があると判定する。なお、上記超過回数Nが判定回数Njを超えたかどうかを判定することは、実質的には、上記差|D|が閾値Dthを超える事象が所定の周期毎に生じているかどうかを判定することに相当する。すなわち、超過回数Nが判定回数Njを超えた場合は、差|D|が閾値Dthを超える事象が所定の周期毎に生じた場合に相当する。
【0060】
なお、比較判定部164は、アーム103L,103Rの動作速度に応じて上記判定回数Njを変更しつつ上記判定を行っている。すなわち、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等があり、アーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じる場合、アーム103L,103Rの動作速度が速い場合には周期的な異常振動等の回数は多くなり、動作速度が遅い場合には周期的な異常振動等の回数は少なくなる。このため、上記判定回数Njを一定の値とした場合には、動作速度によっては異常の誤検出を招くことになる。そこで本実施形態では、比較判定部164がアーム103L,103Rの動作速度に応じて判定回数Njを変更しつつ上記判定を行うことで、このような誤検出を防止している。
【0061】
図6は、アーム103L,103Rが異常のない状態で実行する所定の動作、及び、その間のセンサ122の出力値Vを説明するための説明図である。
【0062】
図6(a)には、アーム103L,103Rが異常のない状態で実行する所定の動作の一例を模式的に表している。図6(a)に示す例では、アーム103L,103Rは、例えば教示時に、アーム103L,103Rに異常がない状態、且つ、把持対象である物品Pが存在せず、ロボット100の周囲(アーム103L,103Rの可動範囲内)に障害物が存在しないような環境下、すなわちアーム103L,103Rに対する物体の接触がない状態で、ロボットコントローラ150からの上記位置指令に応じた所定の動作、すなわち教示された動作開始位置(図6(a)中左側に示す位置)から教示された動作完了位置(図6(a)中右側に示す位置)までの動作を実行している。なお、動作完了位置は、ハンド111L,111Rが上記ベルトコンベア2により搬送される物品Pのうち最小の物品Pを把持可能な位置に設定されている。
【0063】
図6(b)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図6(a)に示す動作に対応して規範データ記録部163に記録された規範波形の一例を表している。図6(b)に示す例では、規範データ記録部163には、アーム103L,103Rが異常のない状態で前述の記録区間に対応する上記図6(a)に示す動作を1回行う間のセンサ122の出力値Vの時間履歴が、規範波形として記録されている。なお、規範波形の記録は、アーム103L,103Rに異常がない状態であればいつでも可能であるが、本実施形態ではロボット100への所定の動作の教示時に記録する場合を一例として説明する。
【0064】
図7は、稼働時においてアーム103L,103Rが実行する所定の動作、及び、その間のセンサ122の出力値Vを説明するための説明図である。
【0065】
図7(a)には、稼働時においてアーム103L,103Rが実行する所定の動作の一例を模式的に表している。図7(a)に示す例では、アーム103L,103Rは、稼働時において可動範囲内に把持対象である物品Pが存在しないとき(例えば物品Pの搬送開始直後や搬送を中断して行う点検時等)に、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常のある状態で、ロボットコントローラ150からの上記位置指令に応じた上記所定の動作、すなわち教示された動作開始位置(図7(a)中左側に示す位置)から教示された動作完了位置(図7(a)中右側に示す位置)までの動作を実行している。なお、この図7(a)に示す例では、アーム103L,103Rは、上記のように可動範囲内に把持対象である物品Pが存在しないときに上記所定の動作を実行する場合を示しているので、ハンド111lL,111Rで物品Pを把持することなく、上記図6(a)と同様の動作完了位置まで動作を実行している。なお、図示はしていないが、把持対象である物品Pが存在する場合には、アーム103L,103Rは、動作開始位置から上記ベルトコンベア2上の物品Pの両側より内側に向けて動作し、アーム103L,103Rに対して物品Pが接触したら、その位置で動作を停止してハンド111L,111Rで物品Pを把持するようになっている。
【0066】
図7(b)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図7(a)に示す動作に対応して出力データ記録部167に記録された出力波形の一例を表している。図7(b)に示す例では、出力データ記録部167には、アーム103L、103RがアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常のある状態で上記図7(a)に示す動作を1回行う間のセンサ122の出力値Vの時間履歴が、出力波形として記録されている。ここで、この例のように、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合には、異常箇所が回転位相中に周期的にあらわれるためアーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じ易い。一般に、アーム103L,103Rに異常振動や衝撃等が生じたときには、アーム103L,103Rに当該異常振動や衝撃等に起因する衝撃力が伝達されるので、異常振動や衝撃等が生じていないときに比べて、センサ122の出力値Vが大きくなる傾向にある。したがって、アクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合には、出力波形中にセンサ122の出力値Vが大きくなる区間が周期的に存在することになる。図7(b)に示す出力波形中には、周期的にセンサ122の出力値Vが大きくなる区間が4箇所存在している。
【0067】
図8は、アーム103L,103Rの異常の有無を検出する手法の一例を説明するための説明図である。図8(a)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図6(b)に対応する規範波形を表すと共に、上記図7(b)に対応する出力波形を表している。図8(b)には、横軸に時間tをとり、縦軸に上記差|D|をとって、差|D|の時系列変化を波形で表している。
【0068】
図8(a)(b)において、上述したように、アーム103L,103Rに異常がある場合、出力波形中にセンサ122の出力値Vが大きくなる区間が周期的に存在する。したがって、アーム103L,103Rに異常のない状態で規範データ記録部163に記録した教示時の規範波形と、出力データ記録部167に記録した稼働時の出力波形との2つの波形同士を比較することで、規範波形に対する出力波形の周期的な変動を検出することができるので、アーム103L,103RのアクチュエータAc2〜Ac15等に異常があるかどうかを検出することができる。すなわち、規範波形と出力波形との差|D|がアーム103L,103Rが上記所定の動作を1回行う間に前述の閾値Dthを超えた超過回数Nが、アーム103L,103Rの動作速度に応じた前述の判定回数Njを超えたかどうかを判定することにより、アクチュエータAc2〜Ac15等の異常の有無を判定することができる。具体的には、超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、超過回数Nが判定回数Njを超えた場合に、アクチュエータAc2〜Ac15等に異常があると判定することができる。図8(a)(b)に示す例では、上記超過回数Nは図8(b)に示すように「4」であるので、上記判定回数Njが「3」以下である場合に、アクチュエータAc2〜Ac15等に異常があると判定される。
【0069】
図9は、ロボットコントローラ150が実行する、本実施形態のロボットの異常検出方法による制御手順を表すフローチャートである。
【0070】
図9において、このフローに示す処理は、例えば入力装置を介して所定の動作開始操作が行われることによって開始される。まずステップS10で、ロボットコントローラ150は、入力装置を介して入力された入力情報に基づき、ロボット100の動作モードが、教示を行う「教示モード」と、稼働を行う「稼働モード」とのうち、「教示モード」であるかどうかを判定する。ロボット100の動作モードが「教示モード」である場合には、ステップS10の判定が満たされて、ステップS20に移る。
【0071】
ステップS20では、ロボットコントローラ150は、区間設定部162において、入力装置を介して入力された入力情報に基づき、前述の記録区間を設定する。
【0072】
その後、ステップS30で、ロボットコントローラ150は、零点調整部165において、各センサ122に対し上記リセット信号を出力して、各センサ122の零点調整を行う。
【0073】
そして、ステップS40に移り、ロボットコントローラ150は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づいて動作指令部151において算出した各アクチュエータAc1〜Ac15に対する位置指令を、各アクチュエータAc1〜Ac15に対して出力して、アーム103L,103Rに異常のない状態、且つ、アーム103L,103Rに対する物体の接触のない状態で、アーム103L,103Rに当該位置指令に応じた所定の動作(図6(a)参照)を開始させる。
【0074】
その後、ステップS50で、ロボットコントローラ150は、規範データ記録部163において、各センサ122毎に規範波形の記録を開始する。したがって、アーム103L,103Rに異常のない状態且つ物体の接触のない状態で、上記ステップS20で設定した記録区間に対応する上記ステップS40で開始した所定の動作をアーム103L,103Rが行う間は、規範データ記録部163は、上記アンプ部123を介して増幅され、上記各ハイパスフィルタ161Aにより抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に規範波形として記録する。
【0075】
そして、アーム103L,103Rが動作完了位置まで動作したら、ステップS60に移り、ロボットコントローラ150は、アーム103L,103Rに動作を完了させる。
【0076】
その後、ステップS70で、ロボットコントローラ150は、規範データ記録部163において、各センサ122についての規範波形の記録を完了する。そして、このフローに示す処理を終了する。なお、このフローに示す処理は、入力装置を介して所定の動作開始操作が行われる度に、ロボットコントローラ150により実行される。
【0077】
一方、上記ステップS10において、ロボット100の動作モードが「稼働モード」であった場合には、ステップS10の判定が満たされず、ステップS80に移る。
【0078】
ステップS80では、ロボットコントローラ150は、閾値設定部166において、入力装置を介して入力された入力情報に基づき、前述の閾値Dthを設定する。
【0079】
そして、ステップS90に移り、ロボットコントローラ150は、零点調整部165において、上記ステップS30と同様、各センサ122の零点調整を行う。
【0080】
その後、ステップS100で、ロボットコントローラ150は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づいて動作指令部151において算出した各アクチュエータAc1〜Ac15に対する位置指令を、各アクチュエータAc1〜Ac15に対して出力して、アーム103L,103Rの可動範囲内に把持対象である物品Pが存在しないときに、アーム103L,103Rに当該位置指令に応じた所定の動作(図7(a)参照)を開始させる。
【0081】
そして、ステップS110に移り、ロボットコントローラ150は、出力データ記録部167において、各センサ122毎に出力波形の記録を開始する。したがって、アーム103L,103Rの可動範囲内に把持対象である物品Pが存在しないときに、上記ステップS40で開始した所定の動作をアーム103L,103Rが行う間は、出力データ記録部167は、上記アンプ部123を介して増幅され、上記各ハイパスフィルタ161Aにより抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録する。
【0082】
その後、アーム103L,103Rが動作完了位置まで動作したら、ステップS120に移り、ロボットコントローラ150は、アーム103L,103Rに動作を完了させる。
【0083】
そして、ステップS130に移り、ロボットコントローラ150は、出力データ記録部167において、各センサ122についての出力波形の記録を完了する。
【0084】
その後、ステップS140で、ロボットコントローラ150は、比較判定部164において、上記規範データ記録部163に各センサ122毎に記録された規範波形と、上記出力データ記録部167に各センサ122毎に記録された出力波形とを、各センサ122毎に比較することにより、各センサ122毎に前述の差|D|を算出する。そして、各センサ122毎に算出した差|D|が、上記ステップS100で開始しステップS120で完了した所定の動作をアーム103L,103Rが1回行う間に、上記ステップS80で設定した閾値Dthを超えた超過回数Nを、各センサ122毎にカウントする。そして、各センサ122毎にカウントした超過回数Nが、アーム103L,103Rの動作速度に応じて設定した判定回数Njを超えたかどうかを、各センサ122毎に判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。具体的には、全てのセンサ122に係わる超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、いずれか1つのセンサ122に係わる超過回数Nが判定回数Njを超えた場合には、アクチュエータAc2〜Ac15等に異常があると判定する。
【0085】
そして、ステップS150に移り、ロボットコントローラ150は、上記ステップS140でアクチュエータAc2〜Ac15等に異常があると判定されたかどうかを判定する。アクチュエータAc2〜Ac15等に異常がないと判定されていた場合には、ステップS150の判定が満たされず、このフローに示す処理を終了する。一方、アクチュエータAc2〜Ac15等に異常があると判定されていた場合には、ステップS150の判定が満たされて、ステップS160に移る。
【0086】
ステップS160では、ロボットコントローラ150は、位置指令遮断部152において、動作指令部151から平滑化処理部153への上記位置指令の出力を遮断すると共に、サーボ部154により生成される前述のトルク指令Trefに、前述の把持補償トルクを付加して、各アクチュエータAc1〜Ac15に出力して、アーム103L,103Rに教示された動作を停止させると共に、図示しない報知部において、アーム103L,103Rの異常を外部に報知する。その後、このフローに示す処理を終了する。
【0087】
なお、上記において、ステップS50及びステップS70の手順が、特許請求の範囲に記載の規範データ記録手順に相当し、ステップS110及びステップS130の手順が、出力データ記録手順に相当し、ステップS140の手順が、比較判定手順に相当する。
【0088】
以上説明したように、本実施形態のロボットシステム1においては、規範データ記録部163には、アーム103L,103Rが異常のない状態で所定の動作を行う間の各センサ122の出力値Vの時間履歴が規範波形として記録される。また、出力データ記録部167には、稼働時においてアーム103L,103Rが所定の動作を行う間の各センサ122の出力値Vの時間履歴が出力波形として記録される。比較判定部164は、規範データ記録部163に記録された規範波形と、出力データ記録部167に記録された出力波形とを比較することにより(上記の例では超過回数Nが判定回数Njを超えたかどうかを判定することにより)、アーム103L,103Rの異常(上記の例ではアーム103L,103Rに設けられたアクチュエータAc2〜Ac15等の異常)の有無を判定する。
【0089】
ここで、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合、異常箇所が回転位相中に周期的にあらわれるためアーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じ易い。このような異常振動や衝撃は、高い固有振動数のセンサ122を用いることで検出することができる。そこで本実施形態では、アーム103L,103Rに異常のない状態で記録した規範波形と、稼働時の出力波形の2つの波形同士を比較することで、規範波形に対する出力波形の周期的な変動を検出することができるので、アーム103L,103RのアクチュエータAc2〜Ac15等に異常があるか否かを検出することができる。したがって、ロボットシステム1の信頼性を向上することができる。またその結果、異常の有無に基づいてアーム103L,103Rの動作を停止させたり、異常を外部に報知してメンテナンス作業の迅速化を図ることができる。
【0090】
また、本実施形態では特に、比較判定部164は、各センサ122の出力波形と規範波形との差|D|が、アーム103L,103Rが所定の動作を1回行う間に予め設定された閾値Dthを超えた超過回数Nが所定の判定回数Njを超えた場合に、アクチュエータAc2〜Ac15等に異常があると判定する。これにより、規範波形に対する出力波形の周期的な変動を確実に検出することができるので、アクチュエータAc2〜Ac15等の異常の有無を高精度に検出することができる。また、異常有無の判定値として所定の閾値Dthを設定することにより、外乱による誤検出を抑制することができる。
【0091】
また、本実施形態では特に、比較判定部164が、アーム103L,103Rの動作速度に応じて判定回数Njを変更しつつ上記判定を行う。これにより、動作速度の変動による誤検出を防止し、アクチュエータAc2〜Ac15等の異常の有無を高精度に検出することができる。
【0092】
また、本実施形態では特に、ロボットコントローラ150が、閾値Dthを設定する閾値設定部166を有している。この閾値設定部166により、ロボット100の仕様や稼働環境等に応じて閾値Dthを任意の値に設定することができるので、外乱による誤検出を抑制し、アクチュエータAc2〜Ac15等の異常の有無をより高精度に検出することができる。
【0093】
また、本実施形態では特に、ロボットコントローラ150が、規範データ記録部163により各センサ122の出力値Vの時間履歴を規範波形として記録する記録区間を設定する区間設定部162を有している。この区間設定部162により、アーム103L,103Rが任意の動作内容を行う区間を記録区間として設定することができる。これにより、稼働時にアーム103L,103Rが行う所定の動作と同じ動作内容を行う区間を記録区間として設定し、規範波形を記録しておけば、稼働時にアクチュエータAc2〜Ac15等に異常があるか否かを確実に検出することができる。また、異なる動作内容ごとに規範波形を記録することができるので、稼働時にアーム103L,103Rが行う多様な動作の各動作に対応させて規範波形を記憶することができる。
【0094】
また、本実施形態では特に、ロボットコントローラ150が、区間設定部162で設定した記録区間に対応する所定の動作をアーム103L,103Rが実行する毎に、各センサ122の零点調整を行う零点調整部165を有している。この零点調整部165により、各センサ122の温度ドリフトの影響を抑制することができ、異常検出の精度が低下するのを防止できる。特に、稼働時においてアーム103L,103Rが所定の動作を繰り返し行う場合、動作の度に毎回零点調整を行うので、温度ドリフトの影響を極力抑制することができる。
【0095】
また、本実施形態では特に、各センサ122として、アーム103L,103Rの各部を構成する構造材料(上記の例では鉄やアルミニウム等の金属材料)よりも固有振動数が大きい圧電体を有する力センサを使用している。上記の例では特に、圧電体として水晶が用いられたセンサを使用している。これにより、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化による異常等によりアーム103L,103Rの各部の構造材料に生じた高い周波数の異常振動や衝撃を検出することができ、アクチュエータAc2〜Ac15等の異常の有無をより高精度に検出することができる。
【0096】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を説明する。
【0097】
(1)物体の接触検出に適用する場合
上記実施形態では、本発明のロボットをアーム103L,103Rの異常検出に適用したが、これに限られず、本発明のロボットをアーム103L,103Rに対する物体の接触検出に適用してもよい。
【0098】
本変形例では、ロボットコントローラ150の図示しない接触検出部の比較判定部が、上記センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、ロボット100が常態であるか非常態であるかを検出する。なお、本明細書では、アーム103L,103Rに対し物体の接触がない状態を常態と定義し、アーム103L,103Rに対し物体の接触がある状態を非常態と定義する。また、「もの」として認識しうる対象物を物体と定義する。したがって、物体には、ロボット100による把持対象である物品P、ロボット100自身、前述のベルトコンベア2などの作業機器、壁などの建造物の一部、人体などの生物体等が含まれる。すなわち、本変形例では、接触検出部の比較判定部は、センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、アーム103L,103Rに対する物体の接触の有無を検出する。
【0099】
ここで、前述したように、センサ部120L,120Rの各センサ122は、アーム103L,103Rにかかる力を検出している。アーム103L,103Rにかかる力としては、アーム103L,103R自身の動作によって生じる内力、及び、アーム103L,103Rに外部から作用する外力が考えられる。アーム103L,103Rが物体の接触がない状態において動作する間は、アーム103L,103Rに外力が作用していないので、各センサ122は、内力に起因する振動をだけを検出する。一方、アーム103L,103Rに対して物体が接触した際には、アーム103L,103Rに内力に加え外力が作用するので、各センサ122は、内力及び外力に起因する振動を検出する。このため、アーム103L,103Rに対して物体が接触した際には、外力に起因する分だけセンサ122の出力値Vが大きくなる。そこで本変形例では、接触検出部の比較判定部が、稼働時においてアーム103L,103Rが所定の動作を行う際のセンサ122の出力値V(具体的には上記ハイパスフィルタ部161により抽出された高周波振動成分に基づくセンサ122の出力値V)の出力データと、アーム103L,103Rが物体の接触のない状態で所定の動作を行う間のセンサ122の出力値V(具体的には上記ハイパスフィルタ部161により抽出された高周波振動成分に基づくセンサ122の出力値V)の時間履歴として予め記録された規範波形とを比較することにより、アーム103L,103Rに対する物体の接触の有無を判定する。
【0100】
図10には、稼働時においてアーム103L,103Rが実行する所定の動作の一例を模式的に表している。図10に示す例では、アーム103L,103Rは、稼働時において、ロボット100の周囲(アーム103L,103Rの可動範囲内)に障害物Bが存在する環境下で、ロボットコントローラ150からの上記位置指令に応じた所定の動作、すなわち教示された動作開始位置(図10中左側に示す位置)から教示された動作完了位置までの動作を実行している。このとき、接触検出部は、上記のような手法を用いてアーム103L,103Rに対する物体の接触の有無を判定する。そして、アーム103L,103Rが動作開始位置からベルトコンベア2(図10では図示省略)上の物品Pの両側より内側に向けて動作し、動作完了位置まで動作するまでの間に接触検出部によりアーム103L,103Rに対する物体(この例では障害物B)の接触が検出された場合には、ロボットコントローラ150は、その位置(図10中右側に示す位置)でアーム103L,103Rの動作を停止させる。
【0101】
なお、この例では、アーム103L,103Rに対する障害物Bの接触を検出して、当該接触を検出した際に動作を停止させるように制御する場合を例にとって説明したが、これに限られず、アーム103L,103Rに対する物品Pの接触を検出して、当該接触を検出した際に動作を停止させてハンド111L,111Rで物品Pを把持させるように制御することもできる。
【0102】
本変形例においても、上記実施形態と同様の効果を得ることができる。また、センサ122により、アーム103L,103Rに作用した外力を検出することができるので、アーム103L,103Rに対する物体の接触の有無を検出することができる。さらに、前述したようにセンサ122をアーム103L,103Rの内最も基端側に位置するアクチュエータAc2,Ac9の基部に設けているので、その先端側での接触を検出することができる。すなわち、アーム103L,103Rの全体について接触を検出することができる。したがって、ロボット100自身あるいはロボット100の周囲に存在する物体に対して過剰な負荷が生じることを回避することができる。
【0103】
また特に、ロボットコントローラ150が、各センサ122の出力信号の高周波振動成分を抽出するハイパスフィルタ部161を有しており、接触検出部の比較判定部は、ハイパスフィルタ部161により抽出された高周波振動成分に基づく規範波形と出力波形とを比較することにより、アーム103L,103Rに対する物体の接触の有無を判定する。これにより、アーム103L,103Rに対する物体の接触に起因する周波数成分を除去することができるので、アーム103L,103Rに対する物体の接触の有無をより高精度に検出することができる。
【0104】
(2)単腕ロボットに適用する場合
以上においては、本発明を2つのアーム103L、103Rを有する双腕ロボットであるロボット100に適用していたが、これに限られず、本発明を1つのロボットアームを有する単腕ロボットに適用してもよい。この場合も、上記実施形態と同様の効果を得ることができる。
【0105】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0106】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0107】
1 ロボットシステム
100 ロボット
103L,R アーム(ロボットアーム)
122 センサ(ひずみセンサ)
150 ロボットコントローラ(制御ユニット)
161 ハイパスフィルタ部
162 区間設定部
163 規範データ記録部
164 比較判定部
165 零点調整部
166 閾値設定部
167 出力データ記録部
Ac2〜15 アクチュエータ
【技術分野】
【0001】
本発明は、ロボットアームを有するロボット及びこのロボットを制御する制御ユニットを備えたロボットシステム、並びに、ロボットの異常検出方法に関する。
【背景技術】
【0002】
ロボットの分野では、ロボット自身あるいはロボットの周囲に存在する物体に対して過剰な負荷が生じることを回避することが求められている。このため、ロボットに対する接触(外力)の有無を検出することが必要となる。
【0003】
例えば、特許文献1には、ロボットアームの基端に外力を検出するための力検出器を取り付け、力検出器の検出結果に基づいてロボットアームの動作を停止させたり、過度な外力がかかった場合に外力が低減する方向にロボットアームを動作させる等の技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−21287号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ロボットの信頼性の向上を図るためには、例えばロボットアームのアクチュエータや減速機の経年劣化による異常等、ロボットアームの内部における異常の有無を検出することが要求される。
【0006】
上記従来技術では、力検出器として6軸力センサを用いているが、一般に6軸力センサは複数のひずみゲージを用いて構成されており、固有振動数が低い。このため、アクチュエータや減速機の異常によりロボットアームの構造部材に発生する高い周波数の異常振動等を検出することはできず、ロボットアーム自身の異常を検出することができなかった。このため、信頼性に欠けるという問題があった。
【0007】
本発明はこのような課題に鑑みてなされたものであり、ロボットアームの異常の有無を検出可能とすることにより、信頼性を向上できるロボットシステム及びロボットの異常検出方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明のロボットシステムは、ロボットアームを有するロボットと、前記ロボットを制御する制御ユニットと、を備えたロボットシステムであって、前記ロボットは、前記ロボットアームに設けられたひずみセンサを有し、前記制御ユニットは、前記ロボットアームが異常のない状態で所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録部と、稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録部と、前記規範データ記録部に記録された前記規範データと、前記出力データ記録部に記録された前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定部と、を有することを特徴としている。
【0009】
また、前記ロボットアームには、当該ロボットアームが有する1以上の関節部を動作させる1以上のアクチュエータが設けられており、前記比較判定部は、前記出力データと前記規範データとの差が予め設定された閾値を超える事象が所定の周期毎に生じた場合に、前記アクチュエータに異常があると判定することが好ましい。
【0010】
また、前記比較判定部は、前記出力データと前記規範データとの差が一定時間の間に予め設定された閾値を超えた回数が所定の判定回数を超えた場合に、前記ロボットアームに異常があると判定することが好ましい。
【0011】
また、前記比較判定部は、前記ロボットアームの動作速度に応じて前記判定回数を変更しつつ判定を行うことが好ましい。
【0012】
また、前記制御ユニットは、前記閾値を設定する閾値設定部をさらに有することが好ましい。
【0013】
また、前記制御ユニットは、前記規範データ記録部により前記ひずみセンサの出力値の時間履歴を前記規範データとして記録する区間を設定する区間設定部をさらに有することが好ましい。
【0014】
また、前記制御ユニットは、前記区間設定部で設定した区間に対応する前記所定の動作を前記ロボットアームが実行する毎に、前記ひずみセンサの零点調整を行う零点調整部をさらに有することが好ましい。
【0015】
また、前記制御ユニットは、前記ひずみセンサの出力信号の高周波振動成分を抽出するハイパスフィルタ部をさらに有し、前記比較判定部は、前記ハイパスフィルタ部により抽出された前記高周波振動成分に基づく前記規範データと前記出力データとを比較することにより、前記ロボットが常態であるか非常態であるかを判定することが好ましい。
【0016】
また、前記ひずみセンサは、前記ロボットアームを構成する構造材料よりも固有振動数が大きい圧電体を有する力センサであることが好ましい。
【0017】
また、前記ひずみセンサは、圧電体として水晶が用いられたセンサであることが好ましい。
【0018】
また、本発明のロボットの異常検出方法は、ロボットが備えたロボットアームの異常の有無を検出するロボットの異常検出方法であって、前記ロボットアームが異常のない状態で所定の動作を行う間に、前記ロボットアームに設けられたひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録手順と、稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録手順と、前記規範データと前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定手順と、を有することを特徴としている。
【発明の効果】
【0019】
本発明によれば、ロボットアームの異常の有無を検出可能とすることにより、ロボットの信頼性を向上することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の一実施の形態のロボットシステムの全体構成を概念的に表すシステム構成図である。
【図2】ロボットの構成を表すロボットの上面図である。
【図3】ロボットコントローラの機能構成を表す機能ブロック図である。
【図4】異常検出部の機能構成を表す機能ブロック図である。
【図5】センサ部、ハイパスフィルタ部、及び比較判定部の詳細を説明するための説明図である。
【図6】アームが異常のない状態で実行する所定の動作、及び、その間のセンサの出力値Vを説明するための説明図である。
【図7】稼働時においてアームが実行する所定の動作、及び、その間のセンサの出力値Vを説明するための説明図である。
【図8】アームの異常の有無を検出する手法の一例を説明するための説明図である。
【図9】ロボットコントローラが実行する、本発明の一実施の形態のロボットの異常検出方法による制御手順を表すフローチャートである。
【図10】物体の接触検出に適用する変形例において、稼働時においてアームが実行する所定の動作を表す模式図である。
【発明を実施するための形態】
【0021】
以下、本発明の一実施の形態について図面を参照しつつ説明する。
【0022】
図1は、本実施形態のロボットシステムの全体構成を概念的に表すシステム構成図である。図2は、ロボットの構成を表すロボットの上面図である。
【0023】
図1及び図2において、本実施形態のロボットシステム1は、複数の物品Pを搬送するベルトコンベア2の一方側に設けられたロボット100と、このロボット100を制御するロボットコントローラ150(制御ユニット)とを備えている。ロボット100は、双腕ロボットであり、基台101、胴体部102、2つのアーム103L,103R(ロボットアーム)、及び、2つのセンサ部120L,120Rを有している。
【0024】
基台101は、設置面(床部等)に対し図示しないアンカーボルト等により固定されている。胴体部102は、回転軸Ax1周りに回転駆動するアクチュエータAc1が設けられた第1関節部を有している。この胴体部102は、基台101に対し第1関節部を介して旋回可能に設置されており、第1関節部に設けられたアクチュエータAc1の駆動により上記設置面と略水平な方向に沿って旋回する。また、この胴体部102は、別体として構成されたアーム103L,103Rを、それぞれ一方側(図1及び図2中右側)及び他方側(図1及び図2中左側)において支持する。
【0025】
アーム103Lは、胴体部102の一方側に設けられたマニピュレータであり、肩部104L、上腕A部105L、上腕B部106L、下腕部107L、手首A部108L、手首B部109L、フランジ110L、及びハンド111Lと、これら各部をそれぞれ回転駆動するアクチュエータAc2〜Ac8がそれぞれ設けられた第2〜第8関節部とを有している。
【0026】
肩部104Lは、胴体部102に対し第2関節部を介して回転可能に連結されており、第2関節部に設けられたアクチュエータAc2の駆動により上記設置面に対して略水平な回転軸Ax2周りに回転する。上腕A部105Lは、肩部104Lに対し第3関節部を介して旋回可能に連結されており、第3関節部に設けられたアクチュエータAc3の駆動により回転軸Ax2に対して直交する回転軸Ax3周りに旋回する。上腕B部106Lは、上腕A部105Lの先端に対し第4関節部を介して回転可能に連結されており、第4関節部に設けられたアクチュエータAc4の駆動により回転軸Ax3に対して直交する回転軸Ax4周りに回転する。下腕部107Lは、上腕B部106Lに対し第5関節部を介して旋回可能に連結されており、第5関節部に設けられたアクチュエータAc5の駆動により回転軸Ax4に対して直交する回転軸Ax5周りに旋回する。手首A部108Lは、下腕部107Lの先端に対し第6関節部を介して回転可能に連結されており、第6関節部に設けられたアクチュエータAc6の駆動により回転軸Ax5に対して直交する回転軸Ax6周りに回転する。手首B部109Lは、手首A部108Lに対し第7関節部を介して旋回可能に連結されており、第7関節部に設けられたアクチュエータAc7の駆動により回転軸Ax6に対して直交する回転軸Ax7周りに旋回する。フランジ110Lは、手首B部109Lの先端に対し第8関節部を介して回転可能に連結されており、第8関節部に設けられたアクチュエータAc8の駆動により回転軸Ax7に対して直交する回転軸Ax8周りに回転する。ハンド111Lは、フランジ110Lの先端に対し取り付けられており、フランジ110Lの回転により従動的に回転する。
【0027】
アーム103Rは、胴体部102の他方側に設けられたマニピュレータであり、上記アーム103Lと同様の構造を備えている。このアーム103Rは、肩部104R、上腕A部105R、上腕B部106R、下腕部107R、手首A部108R、手首B部109R、フランジ110R、及びハンド111Rと、これら各部をそれぞれ回転駆動するアクチュエータAc9〜Ac15がそれぞれ設けられた第9〜第15関節部とを有している。
【0028】
肩部104Rは、胴体部102に対し第9関節部を介して回転可能に連結されており、第9関節部に設けられたアクチュエータAc9の駆動により上記設置面に対して略水平な回転軸Ax9周りに回転する。上腕A部105Rは、肩部104Rに対し第10関節部を介して旋回可能に連結されており、第10関節部に設けられたアクチュエータAc10の駆動により回転軸Ax9に対して直交する回転軸Ax10周りに旋回する。上腕B部106Rは、上腕A部105Rの先端に対し第11関節部を介して回転可能に連結されており、第11関節部に設けられたアクチュエータAc11の駆動により回転軸Ax10に対して直交する回転軸Ax11周りに回転する。下腕部107Rは、上腕B部106Rに対し第12関節部を介して旋回可能に連結されており、第12関節部に設けられたアクチュエータAc12の駆動により回転軸Ax11に対して直交する回転軸Ax12周りに旋回する。手首A部108Rは、下腕部107Rの先端に対し第13関節部を介して回転可能に連結されており、第13関節部に設けられたアクチュエータAc13の駆動により回転軸Ax12に対して直交する回転軸Ax13周りに回転する。手首B部109Rは、手首A部108Rに対し第14関節部を介して旋回可能に連結されており、第14関節部に設けられたアクチュエータAc14の駆動により回転軸Ax13に対して直交する回転軸Ax14周りに旋回する。フランジ110Rは、手首B部109Rの先端に対し第15関節部を介して回転可能に連結されており、第15関節部に設けられたアクチュエータAc15の駆動により回転軸Ax14に対して直交する回転軸Ax15周りに回転する。ハンド111Rは、フランジ110Rの先端に対し取り付けられており、フランジ110Rの回転により従動的に回転する。
【0029】
なお、この例では、アーム103L,103Rは、7つの関節部すなわち7自由度(冗長自由度)を有しているが、アーム103L,103Rの自由度は「7」に限られない。
【0030】
これらアーム103L,103Rの肩部104L,104R、上腕A部105L,105R、上腕B部106L,106R、下腕部107L,107R、手首A部108L,108R、手首B部109L,109R、フランジ110L,110R、及びハンド111L,111Rを構成する構造材料は、例えば鉄やアルミニウム等の金属材料により構成されている。
【0031】
また、図2に示すように、第1関節部の回転軸Ax1と第2及び第9関節部の各回転軸Ax2,Ax9とは、上記設置面と略水平な方向に長さD1だけオフセットされるように、基台101に対して胴体部102が第1関節部から第2及び第9関節部にかけて水平前方にせり出すように形成されている。これにより、肩部104L,104Rの下方側の空間を作業スペースとすることができると共に、回転軸Ax1を回転させることでアーム103L,103Rの可到範囲が拡大される。
【0032】
さらに、第11関節部の回転軸Ax11と第12関節部の回転軸Ax12とは、上面視での位置が長さD2だけオフセットされるように、上腕B部106Rの形状が設定されている。そして、第12関節部の回転軸Ax12と第13関節部の回転軸Ax13とは、上面視での位置が長さD3だけオフセットされるように、下腕部107Rの形状が設定されており、回転軸Ax11と回転軸Ax13とが略水平となる姿勢をとったときに、回転軸Ax11と回転軸Ax13とのオフセット長さが(D2+D3)となるようになっている。これにより、人間の「肘」に相当する第12関節部を屈曲させたときに、人間の「上腕」に相当する上腕A部105R及び上腕B部106Rと、人間の「下腕」に相当する下腕A部107Rとの間のクリアランスを大きく確保することができ、ハンド111Rをより胴体部102に近づけた場合でもアーム103Rの動作自由度が拡大される。
【0033】
またさらに、図2では明示していないが、アーム103Lについても同様に、第4関節部の回転軸Ax4と第5関節部の回転軸Ax5とは、上面視での位置が長さD2だけオフセットされるように、上腕B部106Lの形状が設定されている。そして、第5関節部の回転軸Ax5と第6関節部の回転軸Ax6とは、上面視での位置が長さD3だけオフセットされるように、下腕部107Lの形状が設定されており、回転軸Ax4と回転軸Ax6とが略水平となる姿勢をとったときに、回転軸Ax4と回転軸Ax6とのオフセット長さが(D2+D3)となるようになっている。
【0034】
センサ部120L,120Rは、それぞれ、図2に示すように、円盤状のセンサ固定治具121と、少なくとも1個(この例では3個)の略直方体状のセンサ122(ひずみセンサ)とにより構成されている。センサ部120Lのセンサ固定治具121は、アーム103Lの最も基端側に設けられたアクチュエータAc2の固定子の基部に取り付けられ、このセンサ固定治具121に設けられた各センサ122は、アーム103Lにかかる力(詳細には、力の大きさそのものではなく、アーム103Lにかかる衝撃力に起因する振動等によるひずみ量)をそれぞれ検出可能となっている。センサ部120Rのセンサ固定治具121は、アーム103Rの最も基端側に設けられたアクチュエータAc9の固定子の基部に取り付けられ、このセンサ固定治具121に設けられた各センサ122は、アーム103Rにかかる力(詳細には、力の大きさそのものではなく、アーム103Rにかかる衝撃力に起因する振動等によるひずみ量)をそれぞれ検出可能となっている。このセンサ部120L,120Rの詳細については、後述する。
【0035】
上記のように構成されたロボット100は、アーム103L,103Rが上記ベルトコンベア2上の物品Pの両側より内側に向けて動作して、ハンド111L,111Rで物品Pを把持するように、各アクチュエータAc1〜Ac15を含む各駆動部位の動作が、ロボットコントローラ150により制御されている。また、各アクチュエータAc1〜Ac15は、それぞれ、図示しないケーブルを挿通可能な中空部を有する減速機一体型のサーボモータにより構成されており、各アクチュエータAc1〜Ac15の回転位置は、各アクチュエータAc1〜Ac15に内蔵された図示しないエンコーダからの信号として、ロボットコントローラ150にケーブルを介して入力されるようになっている。
【0036】
図3は、ロボットコントローラ150の機能構成を表す機能ブロック図である。
【0037】
図3において、ロボットコントローラ150は、図示しない演算器、記憶装置、入力装置等を備えたコンピュータにより構成されており、ロボット100の各駆動部位や各センサ122とケーブルを介して相互通信可能に接続されている。このロボットコントローラ150は、動作指令部151、位置指令遮断部152、平滑化処理部153、サーボ部154、異常検出部155、把持トルク補償部156、及び重力トルク補償部157を有している。
【0038】
動作指令部151は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づき、各アクチュエータAc1〜Ac15に対する位置指令(動作指令)をそれぞれ算出し、位置指令遮断部152を介して平滑化処理部153にプールする。
【0039】
平滑化処理部153は、所定の演算周期毎に、プールされた上記位置指令をサーボ部154に順次出力する。
【0040】
サーボ部154は、各アクチュエータAc1〜Ac15毎に、各アクチュエータAc1〜Ac15のエンコーダの検出値による関節角度フィードバック回路Fpと、各アクチュエータAc1〜Ac15のエンコーダの検出値から得られる角速度検出値による関節角度フィードバック回路Fvとを有している。このサーボ部154は、平滑化処理部153より順次入力される上記位置指令に基づき、上記所定の演算周期毎に、各アクチュエータAc1〜Ac15に対するトルク指令Trefを生成して出力する。
【0041】
異常検出部155は、センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化等による異常の有無を検出する。なお、これに限られず、アーム103L,103R自身の異常(アクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化等による異常や、アーム103L,103Rの筐体の異常等を含む)の有無を検出するようにしてもよい。この異常検出部155の詳細については、後述する。
【0042】
位置指令遮断部152は、異常検出部155によりアーム103L,103RのアクチュエータAc2〜Ac15等の異常が検出された場合に、動作指令部151から平滑化処理部153への上記位置指令の出力を遮断し、サーボ部154に伝達される位置指令を遮断する。なお、サーボ部154への位置指令が遮断されると、フィードバックにより出力されるトルク指令Trefの値が減少して、アーム103L,103Rは速やかに停止動作に入る。
【0043】
把持トルク補償部156は、各アクチュエータAc1〜Ac15に対するサーボ部154により生成される上記トルク指令Trefに、アーム103L,103Rが物品Pを把持するための把持補償トルクを付加する。
【0044】
重力トルク補償部157は、各アクチュエータAc1〜Ac15に対するサーボ部154により生成される上記トルク指令Trefに、自重分の重力補償トルクを付加する。
【0045】
図4は、異常検出部155の機能構成を表す機能ブロック図である。
【0046】
図4において、異常検出部155は、ハイパスフィルタ部161、区間設定部162、規範データ記録部163、出力データ記録部167、比較判定部164、零点調整部165、及び閾値設定部166を有している。
【0047】
ハイパスフィルタ部161は、センサ部120L,120Rの各センサ122の出力信号に含まれる、アーム103L,103Rの異常に起因する周波数以外の周波数成分(例えば外乱に起因する周波数成分等)を除去するために、各センサ122の出力信号の高周波振動成分をそれぞれ抽出する。このハイパスフィルタ部161の詳細については、後述する。
【0048】
区間設定部162は、入力装置を介して入力された入力情報に基づき、規範データ記録部163によりセンサ122の出力値Vの時間履歴を波形で表した規範波形(規範データ)として記録する区間(以下適宜、単に「記録区間」と称する)を設定する。
【0049】
規範データ記録部163は、アーム103L,103Rに異常のない状態で、区間設定部162で設定した記録区間に対応する所定の動作を、アーム103L,103Rが行う間の、ハイパスフィルタ部161により抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に規範波形(後述の図6(b)参照)としてそれぞれ記録する。ここで、アーム103L,103Rに異常がない状態とは、アーム103L,103Rの筐体(構造部材やカバー部材あるいは配線等を含む)、及び、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等に、構造上及び機能上の欠陥・故障がなく、これらが正常に動作する状態で、且つ、アーム103L,103Rに意図しない接触や干渉が生じていない状態をいう。例えば、アーム103L,103Rの筐体、及び、アーム103L,103Rに設けられたアクチュエータAc2〜Ac15や減速機等が正常に動作することを点検した直後の状態や、初期不良のない初期稼働時の状態等が該当する。また、所定の動作とは、入力装置を介して教示された教示情報(動作開始位置及び動作完了位置の情報)等に基づいて上記動作指令部151により算出された位置指令に応じた動作である。
【0050】
出力データ記録部167は、稼働時においてアーム103L,103Rが上記所定の動作を行う間の、ハイパスフィルタ部161により抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形(出力データ。後述の図7(b)参照)としてそれぞれ記録する。本実施形態では、稼働時において可動範囲内に把持対象となる物品Pが存在しないとき(例えば物品Pの搬送開始直後や搬送を中断して行う点検時等)にアーム103L,103Rが所定の動作を行う間の、上記各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録するようになっている。なお、これに限られず、稼働時において可動範囲内に把持対象となる物品Pが存在するときにアーム103L,103Rが上記所定の動作を行う間の、上記各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録するようにしてもよい。
【0051】
閾値設定部166は、入力装置を介して入力された入力情報に基づき、比較判定部164における異常有無の判定値となる閾値Dthを設定する。
【0052】
比較判定部164は、規範データ記録部163に各センサ122毎に記録された規範波形と、出力データ記録部167に各センサ122毎に記録された出力波形とを、各センサ122毎にそれぞれ比較することにより、各センサ122毎に出力波形と規範波形との差(詳細には当該差の絶対値)|D|をそれぞれ算出する。そして、各センサ122毎に算出した差|D|が、アーム103L,103Rが上記所定の動作を1回行う間(一定時間の間)に閾値設定部166により予め設定された閾値Dthを超えた回数N(以下適宜、「超過回数N」と称する)を、各センサ122毎にそれぞれカウントする。なお、一定時間の間としては、アーム103L,103Rが所定の動作を1回行う間に限られず、例えば入力装置を介して設定した時間の間等でもよい。そして、各センサ122毎にカウントした超過回数Nが、所定の判定回数Njを超えたかどうかを、各センサ122毎にそれぞれ判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。この比較判定部164の詳細については、後述する。
【0053】
零点調整部165は、アーム103L,103RのアクチュエータAc2〜Ac15の発熱等による周囲温度の変動や自己発熱によって生じる各センサ122の温度ドリフトの影響を抑制するために、区間設定部162で設定した記録区間に対応する上記所定の動作をアーム103L,103Rが実行する毎に、各センサ122に対しリセット信号をそれぞれ出力して、各センサ122の零点調整をそれぞれ行う。
【0054】
図5は、センサ部120L,120R、ハイパスフィルタ部161、及び比較判定部164の詳細を説明するための説明図である。なお、この図5中では、上記規範データ記録部163及び出力データ記録部167等の図示を省略している。
【0055】
図5において、前述したように、センサ部120L,120Rは、それぞれ、円盤状のセンサ固定治具121と、3個の略直方体状のセンサ122とにより構成されている。センサ部120Lの3個のセンサ122は、センサ固定治具121の内側の面、すなわち上記アクチュエータAc2の固定子の基部への取り付け面ではない方の面(図2中左側の面、図5中紙面手前側の面)に、略同一円周上に略等間隔に配置され、各センサ122が放射状の向きとなるように配置されている。センサ部120Rの3個のセンサ122は、センサ固定治具121の内側の面、すなわち上記アクチュエータAc9の固定子の基部への取り付け面ではない方の面(図2中右側の面、図5中紙面手前側の面)に、略同一円周上に略等間隔に配置され、各センサ122が放射状の向きとなるように配置されている。
【0056】
本実施形態では、各センサ122として、アーム103L,103Rの各部を構成する構造材料である上記金属材料よりも固有振動数(あるいは剛性)が大きい材質の圧電体を有する力センサ、この例では圧電体として水晶が用いられたセンサが、それぞれ使用されている。これは、一般に、固有振動数が大きい力センサほど、より高い周波数成分を含んだ変動力を検出することができ、水晶は、アーム103L,103Rの各部を構成する構造材料である上記金属材料よりも固有振動数(あるいは剛性)が大きいためである。したがって、アーム103L,103Rの各部の構造材料に伝わる微小な高周波振動(速い変形)までも検知することができる。
【0057】
なお、各センサ122としては、圧電体として水晶が用いられたセンサに限られず、アーム103L,103Rの各部を構成する構造材料よりも固有振動数が大きい圧電体を有する力センサであればよい。センサ部120Lの各センサ122は、それぞれ、アーム103Lにかかる力に起因するセンサ固定治具121のラジアル方向のひずみ量を電圧として検出し、センサ部120Rの各センサ122は、それぞれ、アーム103Rにかかる力に起因するセンサ固定治具121のラジアル方向のひずみ量を電圧として検出する。各センサ部122で得られた電圧は、アンプ部123を介してそれぞれ増幅され、ハイパスフィルタ部161の各ハイパスフィルタ161A(後述)にそれぞれ入力されるようになっている。
【0058】
ハイパスフィルタ部161は、センサ122の出力信号の高周波振動成分を抽出可能な複数のハイパスフィルタ161A(又は高周波数帯域を通過帯域とするバンドパスフィルタでもよい)を有しており、これら各ハイパスフィルタ161Aにより、アンプ部123を介して増幅された各センサ122の出力信号の高周波振動成分をそれぞれ抽出する。なお、各ハイパスフィルタ161Aは、アーム103L,103Rの異常に起因する周波数以外の周波数成分(例えばアクチュエータAc2〜Ac15の動作等の接触以外の事象に起因する周波数成分等)を除去できるように、カットオフ周波数が決定されている。
【0059】
比較判定部164は、上述したように、各センサ122毎にカウントした上記超過回数Nが判定回数Njを超えたかどうかを、各センサ122毎に判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。具体的には、各センサ122に係わる超過回数Nのうち、全てのセンサ122に係わる超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、各センサ122に係わる超過回数Nのうち、いずれか1つのセンサ122に係わる超過回数Nが判定回数Njを超えた場合には、アクチュエータAc2〜Ac15等に異常があると判定する。なお、上記超過回数Nが判定回数Njを超えたかどうかを判定することは、実質的には、上記差|D|が閾値Dthを超える事象が所定の周期毎に生じているかどうかを判定することに相当する。すなわち、超過回数Nが判定回数Njを超えた場合は、差|D|が閾値Dthを超える事象が所定の周期毎に生じた場合に相当する。
【0060】
なお、比較判定部164は、アーム103L,103Rの動作速度に応じて上記判定回数Njを変更しつつ上記判定を行っている。すなわち、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等があり、アーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じる場合、アーム103L,103Rの動作速度が速い場合には周期的な異常振動等の回数は多くなり、動作速度が遅い場合には周期的な異常振動等の回数は少なくなる。このため、上記判定回数Njを一定の値とした場合には、動作速度によっては異常の誤検出を招くことになる。そこで本実施形態では、比較判定部164がアーム103L,103Rの動作速度に応じて判定回数Njを変更しつつ上記判定を行うことで、このような誤検出を防止している。
【0061】
図6は、アーム103L,103Rが異常のない状態で実行する所定の動作、及び、その間のセンサ122の出力値Vを説明するための説明図である。
【0062】
図6(a)には、アーム103L,103Rが異常のない状態で実行する所定の動作の一例を模式的に表している。図6(a)に示す例では、アーム103L,103Rは、例えば教示時に、アーム103L,103Rに異常がない状態、且つ、把持対象である物品Pが存在せず、ロボット100の周囲(アーム103L,103Rの可動範囲内)に障害物が存在しないような環境下、すなわちアーム103L,103Rに対する物体の接触がない状態で、ロボットコントローラ150からの上記位置指令に応じた所定の動作、すなわち教示された動作開始位置(図6(a)中左側に示す位置)から教示された動作完了位置(図6(a)中右側に示す位置)までの動作を実行している。なお、動作完了位置は、ハンド111L,111Rが上記ベルトコンベア2により搬送される物品Pのうち最小の物品Pを把持可能な位置に設定されている。
【0063】
図6(b)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図6(a)に示す動作に対応して規範データ記録部163に記録された規範波形の一例を表している。図6(b)に示す例では、規範データ記録部163には、アーム103L,103Rが異常のない状態で前述の記録区間に対応する上記図6(a)に示す動作を1回行う間のセンサ122の出力値Vの時間履歴が、規範波形として記録されている。なお、規範波形の記録は、アーム103L,103Rに異常がない状態であればいつでも可能であるが、本実施形態ではロボット100への所定の動作の教示時に記録する場合を一例として説明する。
【0064】
図7は、稼働時においてアーム103L,103Rが実行する所定の動作、及び、その間のセンサ122の出力値Vを説明するための説明図である。
【0065】
図7(a)には、稼働時においてアーム103L,103Rが実行する所定の動作の一例を模式的に表している。図7(a)に示す例では、アーム103L,103Rは、稼働時において可動範囲内に把持対象である物品Pが存在しないとき(例えば物品Pの搬送開始直後や搬送を中断して行う点検時等)に、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常のある状態で、ロボットコントローラ150からの上記位置指令に応じた上記所定の動作、すなわち教示された動作開始位置(図7(a)中左側に示す位置)から教示された動作完了位置(図7(a)中右側に示す位置)までの動作を実行している。なお、この図7(a)に示す例では、アーム103L,103Rは、上記のように可動範囲内に把持対象である物品Pが存在しないときに上記所定の動作を実行する場合を示しているので、ハンド111lL,111Rで物品Pを把持することなく、上記図6(a)と同様の動作完了位置まで動作を実行している。なお、図示はしていないが、把持対象である物品Pが存在する場合には、アーム103L,103Rは、動作開始位置から上記ベルトコンベア2上の物品Pの両側より内側に向けて動作し、アーム103L,103Rに対して物品Pが接触したら、その位置で動作を停止してハンド111L,111Rで物品Pを把持するようになっている。
【0066】
図7(b)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図7(a)に示す動作に対応して出力データ記録部167に記録された出力波形の一例を表している。図7(b)に示す例では、出力データ記録部167には、アーム103L、103RがアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常のある状態で上記図7(a)に示す動作を1回行う間のセンサ122の出力値Vの時間履歴が、出力波形として記録されている。ここで、この例のように、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合には、異常箇所が回転位相中に周期的にあらわれるためアーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じ易い。一般に、アーム103L,103Rに異常振動や衝撃等が生じたときには、アーム103L,103Rに当該異常振動や衝撃等に起因する衝撃力が伝達されるので、異常振動や衝撃等が生じていないときに比べて、センサ122の出力値Vが大きくなる傾向にある。したがって、アクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合には、出力波形中にセンサ122の出力値Vが大きくなる区間が周期的に存在することになる。図7(b)に示す出力波形中には、周期的にセンサ122の出力値Vが大きくなる区間が4箇所存在している。
【0067】
図8は、アーム103L,103Rの異常の有無を検出する手法の一例を説明するための説明図である。図8(a)には、横軸に時間tをとり、縦軸にセンサ122の出力値Vをとって、上記図6(b)に対応する規範波形を表すと共に、上記図7(b)に対応する出力波形を表している。図8(b)には、横軸に時間tをとり、縦軸に上記差|D|をとって、差|D|の時系列変化を波形で表している。
【0068】
図8(a)(b)において、上述したように、アーム103L,103Rに異常がある場合、出力波形中にセンサ122の出力値Vが大きくなる区間が周期的に存在する。したがって、アーム103L,103Rに異常のない状態で規範データ記録部163に記録した教示時の規範波形と、出力データ記録部167に記録した稼働時の出力波形との2つの波形同士を比較することで、規範波形に対する出力波形の周期的な変動を検出することができるので、アーム103L,103RのアクチュエータAc2〜Ac15等に異常があるかどうかを検出することができる。すなわち、規範波形と出力波形との差|D|がアーム103L,103Rが上記所定の動作を1回行う間に前述の閾値Dthを超えた超過回数Nが、アーム103L,103Rの動作速度に応じた前述の判定回数Njを超えたかどうかを判定することにより、アクチュエータAc2〜Ac15等の異常の有無を判定することができる。具体的には、超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、超過回数Nが判定回数Njを超えた場合に、アクチュエータAc2〜Ac15等に異常があると判定することができる。図8(a)(b)に示す例では、上記超過回数Nは図8(b)に示すように「4」であるので、上記判定回数Njが「3」以下である場合に、アクチュエータAc2〜Ac15等に異常があると判定される。
【0069】
図9は、ロボットコントローラ150が実行する、本実施形態のロボットの異常検出方法による制御手順を表すフローチャートである。
【0070】
図9において、このフローに示す処理は、例えば入力装置を介して所定の動作開始操作が行われることによって開始される。まずステップS10で、ロボットコントローラ150は、入力装置を介して入力された入力情報に基づき、ロボット100の動作モードが、教示を行う「教示モード」と、稼働を行う「稼働モード」とのうち、「教示モード」であるかどうかを判定する。ロボット100の動作モードが「教示モード」である場合には、ステップS10の判定が満たされて、ステップS20に移る。
【0071】
ステップS20では、ロボットコントローラ150は、区間設定部162において、入力装置を介して入力された入力情報に基づき、前述の記録区間を設定する。
【0072】
その後、ステップS30で、ロボットコントローラ150は、零点調整部165において、各センサ122に対し上記リセット信号を出力して、各センサ122の零点調整を行う。
【0073】
そして、ステップS40に移り、ロボットコントローラ150は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づいて動作指令部151において算出した各アクチュエータAc1〜Ac15に対する位置指令を、各アクチュエータAc1〜Ac15に対して出力して、アーム103L,103Rに異常のない状態、且つ、アーム103L,103Rに対する物体の接触のない状態で、アーム103L,103Rに当該位置指令に応じた所定の動作(図6(a)参照)を開始させる。
【0074】
その後、ステップS50で、ロボットコントローラ150は、規範データ記録部163において、各センサ122毎に規範波形の記録を開始する。したがって、アーム103L,103Rに異常のない状態且つ物体の接触のない状態で、上記ステップS20で設定した記録区間に対応する上記ステップS40で開始した所定の動作をアーム103L,103Rが行う間は、規範データ記録部163は、上記アンプ部123を介して増幅され、上記各ハイパスフィルタ161Aにより抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に規範波形として記録する。
【0075】
そして、アーム103L,103Rが動作完了位置まで動作したら、ステップS60に移り、ロボットコントローラ150は、アーム103L,103Rに動作を完了させる。
【0076】
その後、ステップS70で、ロボットコントローラ150は、規範データ記録部163において、各センサ122についての規範波形の記録を完了する。そして、このフローに示す処理を終了する。なお、このフローに示す処理は、入力装置を介して所定の動作開始操作が行われる度に、ロボットコントローラ150により実行される。
【0077】
一方、上記ステップS10において、ロボット100の動作モードが「稼働モード」であった場合には、ステップS10の判定が満たされず、ステップS80に移る。
【0078】
ステップS80では、ロボットコントローラ150は、閾値設定部166において、入力装置を介して入力された入力情報に基づき、前述の閾値Dthを設定する。
【0079】
そして、ステップS90に移り、ロボットコントローラ150は、零点調整部165において、上記ステップS30と同様、各センサ122の零点調整を行う。
【0080】
その後、ステップS100で、ロボットコントローラ150は、入力装置を介して教示された各アーム103L,103Rに対する教示情報(動作開始位置及び動作完了位置の情報)等に基づいて動作指令部151において算出した各アクチュエータAc1〜Ac15に対する位置指令を、各アクチュエータAc1〜Ac15に対して出力して、アーム103L,103Rの可動範囲内に把持対象である物品Pが存在しないときに、アーム103L,103Rに当該位置指令に応じた所定の動作(図7(a)参照)を開始させる。
【0081】
そして、ステップS110に移り、ロボットコントローラ150は、出力データ記録部167において、各センサ122毎に出力波形の記録を開始する。したがって、アーム103L,103Rの可動範囲内に把持対象である物品Pが存在しないときに、上記ステップS40で開始した所定の動作をアーム103L,103Rが行う間は、出力データ記録部167は、上記アンプ部123を介して増幅され、上記各ハイパスフィルタ161Aにより抽出された高周波振動成分に基づく各センサ122の出力値Vの時間履歴を、各センサ122毎に出力波形として記録する。
【0082】
その後、アーム103L,103Rが動作完了位置まで動作したら、ステップS120に移り、ロボットコントローラ150は、アーム103L,103Rに動作を完了させる。
【0083】
そして、ステップS130に移り、ロボットコントローラ150は、出力データ記録部167において、各センサ122についての出力波形の記録を完了する。
【0084】
その後、ステップS140で、ロボットコントローラ150は、比較判定部164において、上記規範データ記録部163に各センサ122毎に記録された規範波形と、上記出力データ記録部167に各センサ122毎に記録された出力波形とを、各センサ122毎に比較することにより、各センサ122毎に前述の差|D|を算出する。そして、各センサ122毎に算出した差|D|が、上記ステップS100で開始しステップS120で完了した所定の動作をアーム103L,103Rが1回行う間に、上記ステップS80で設定した閾値Dthを超えた超過回数Nを、各センサ122毎にカウントする。そして、各センサ122毎にカウントした超過回数Nが、アーム103L,103Rの動作速度に応じて設定した判定回数Njを超えたかどうかを、各センサ122毎に判定することにより、アーム103L,103RのアクチュエータAc2〜Ac15等の異常の有無を判定する。具体的には、全てのセンサ122に係わる超過回数Nが判定回数Nj以内である場合には、アクチュエータAc2〜Ac15等に異常がないと判定し、いずれか1つのセンサ122に係わる超過回数Nが判定回数Njを超えた場合には、アクチュエータAc2〜Ac15等に異常があると判定する。
【0085】
そして、ステップS150に移り、ロボットコントローラ150は、上記ステップS140でアクチュエータAc2〜Ac15等に異常があると判定されたかどうかを判定する。アクチュエータAc2〜Ac15等に異常がないと判定されていた場合には、ステップS150の判定が満たされず、このフローに示す処理を終了する。一方、アクチュエータAc2〜Ac15等に異常があると判定されていた場合には、ステップS150の判定が満たされて、ステップS160に移る。
【0086】
ステップS160では、ロボットコントローラ150は、位置指令遮断部152において、動作指令部151から平滑化処理部153への上記位置指令の出力を遮断すると共に、サーボ部154により生成される前述のトルク指令Trefに、前述の把持補償トルクを付加して、各アクチュエータAc1〜Ac15に出力して、アーム103L,103Rに教示された動作を停止させると共に、図示しない報知部において、アーム103L,103Rの異常を外部に報知する。その後、このフローに示す処理を終了する。
【0087】
なお、上記において、ステップS50及びステップS70の手順が、特許請求の範囲に記載の規範データ記録手順に相当し、ステップS110及びステップS130の手順が、出力データ記録手順に相当し、ステップS140の手順が、比較判定手順に相当する。
【0088】
以上説明したように、本実施形態のロボットシステム1においては、規範データ記録部163には、アーム103L,103Rが異常のない状態で所定の動作を行う間の各センサ122の出力値Vの時間履歴が規範波形として記録される。また、出力データ記録部167には、稼働時においてアーム103L,103Rが所定の動作を行う間の各センサ122の出力値Vの時間履歴が出力波形として記録される。比較判定部164は、規範データ記録部163に記録された規範波形と、出力データ記録部167に記録された出力波形とを比較することにより(上記の例では超過回数Nが判定回数Njを超えたかどうかを判定することにより)、アーム103L,103Rの異常(上記の例ではアーム103L,103Rに設けられたアクチュエータAc2〜Ac15等の異常)の有無を判定する。
【0089】
ここで、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材に経年劣化による異常等がある場合、異常箇所が回転位相中に周期的にあらわれるためアーム103L,103Rが動作する際に周期的な異常振動や衝撃等を生じ易い。このような異常振動や衝撃は、高い固有振動数のセンサ122を用いることで検出することができる。そこで本実施形態では、アーム103L,103Rに異常のない状態で記録した規範波形と、稼働時の出力波形の2つの波形同士を比較することで、規範波形に対する出力波形の周期的な変動を検出することができるので、アーム103L,103RのアクチュエータAc2〜Ac15等に異常があるか否かを検出することができる。したがって、ロボットシステム1の信頼性を向上することができる。またその結果、異常の有無に基づいてアーム103L,103Rの動作を停止させたり、異常を外部に報知してメンテナンス作業の迅速化を図ることができる。
【0090】
また、本実施形態では特に、比較判定部164は、各センサ122の出力波形と規範波形との差|D|が、アーム103L,103Rが所定の動作を1回行う間に予め設定された閾値Dthを超えた超過回数Nが所定の判定回数Njを超えた場合に、アクチュエータAc2〜Ac15等に異常があると判定する。これにより、規範波形に対する出力波形の周期的な変動を確実に検出することができるので、アクチュエータAc2〜Ac15等の異常の有無を高精度に検出することができる。また、異常有無の判定値として所定の閾値Dthを設定することにより、外乱による誤検出を抑制することができる。
【0091】
また、本実施形態では特に、比較判定部164が、アーム103L,103Rの動作速度に応じて判定回数Njを変更しつつ上記判定を行う。これにより、動作速度の変動による誤検出を防止し、アクチュエータAc2〜Ac15等の異常の有無を高精度に検出することができる。
【0092】
また、本実施形態では特に、ロボットコントローラ150が、閾値Dthを設定する閾値設定部166を有している。この閾値設定部166により、ロボット100の仕様や稼働環境等に応じて閾値Dthを任意の値に設定することができるので、外乱による誤検出を抑制し、アクチュエータAc2〜Ac15等の異常の有無をより高精度に検出することができる。
【0093】
また、本実施形態では特に、ロボットコントローラ150が、規範データ記録部163により各センサ122の出力値Vの時間履歴を規範波形として記録する記録区間を設定する区間設定部162を有している。この区間設定部162により、アーム103L,103Rが任意の動作内容を行う区間を記録区間として設定することができる。これにより、稼働時にアーム103L,103Rが行う所定の動作と同じ動作内容を行う区間を記録区間として設定し、規範波形を記録しておけば、稼働時にアクチュエータAc2〜Ac15等に異常があるか否かを確実に検出することができる。また、異なる動作内容ごとに規範波形を記録することができるので、稼働時にアーム103L,103Rが行う多様な動作の各動作に対応させて規範波形を記憶することができる。
【0094】
また、本実施形態では特に、ロボットコントローラ150が、区間設定部162で設定した記録区間に対応する所定の動作をアーム103L,103Rが実行する毎に、各センサ122の零点調整を行う零点調整部165を有している。この零点調整部165により、各センサ122の温度ドリフトの影響を抑制することができ、異常検出の精度が低下するのを防止できる。特に、稼働時においてアーム103L,103Rが所定の動作を繰り返し行う場合、動作の度に毎回零点調整を行うので、温度ドリフトの影響を極力抑制することができる。
【0095】
また、本実施形態では特に、各センサ122として、アーム103L,103Rの各部を構成する構造材料(上記の例では鉄やアルミニウム等の金属材料)よりも固有振動数が大きい圧電体を有する力センサを使用している。上記の例では特に、圧電体として水晶が用いられたセンサを使用している。これにより、アーム103L,103RのアクチュエータAc2〜Ac15や減速機等の回転部材の経年劣化による異常等によりアーム103L,103Rの各部の構造材料に生じた高い周波数の異常振動や衝撃を検出することができ、アクチュエータAc2〜Ac15等の異常の有無をより高精度に検出することができる。
【0096】
なお、本発明は、上記実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を説明する。
【0097】
(1)物体の接触検出に適用する場合
上記実施形態では、本発明のロボットをアーム103L,103Rの異常検出に適用したが、これに限られず、本発明のロボットをアーム103L,103Rに対する物体の接触検出に適用してもよい。
【0098】
本変形例では、ロボットコントローラ150の図示しない接触検出部の比較判定部が、上記センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、ロボット100が常態であるか非常態であるかを検出する。なお、本明細書では、アーム103L,103Rに対し物体の接触がない状態を常態と定義し、アーム103L,103Rに対し物体の接触がある状態を非常態と定義する。また、「もの」として認識しうる対象物を物体と定義する。したがって、物体には、ロボット100による把持対象である物品P、ロボット100自身、前述のベルトコンベア2などの作業機器、壁などの建造物の一部、人体などの生物体等が含まれる。すなわち、本変形例では、接触検出部の比較判定部は、センサ部120L,120Rの各センサ122の出力値V(出力信号)に基づき、アーム103L,103Rに対する物体の接触の有無を検出する。
【0099】
ここで、前述したように、センサ部120L,120Rの各センサ122は、アーム103L,103Rにかかる力を検出している。アーム103L,103Rにかかる力としては、アーム103L,103R自身の動作によって生じる内力、及び、アーム103L,103Rに外部から作用する外力が考えられる。アーム103L,103Rが物体の接触がない状態において動作する間は、アーム103L,103Rに外力が作用していないので、各センサ122は、内力に起因する振動をだけを検出する。一方、アーム103L,103Rに対して物体が接触した際には、アーム103L,103Rに内力に加え外力が作用するので、各センサ122は、内力及び外力に起因する振動を検出する。このため、アーム103L,103Rに対して物体が接触した際には、外力に起因する分だけセンサ122の出力値Vが大きくなる。そこで本変形例では、接触検出部の比較判定部が、稼働時においてアーム103L,103Rが所定の動作を行う際のセンサ122の出力値V(具体的には上記ハイパスフィルタ部161により抽出された高周波振動成分に基づくセンサ122の出力値V)の出力データと、アーム103L,103Rが物体の接触のない状態で所定の動作を行う間のセンサ122の出力値V(具体的には上記ハイパスフィルタ部161により抽出された高周波振動成分に基づくセンサ122の出力値V)の時間履歴として予め記録された規範波形とを比較することにより、アーム103L,103Rに対する物体の接触の有無を判定する。
【0100】
図10には、稼働時においてアーム103L,103Rが実行する所定の動作の一例を模式的に表している。図10に示す例では、アーム103L,103Rは、稼働時において、ロボット100の周囲(アーム103L,103Rの可動範囲内)に障害物Bが存在する環境下で、ロボットコントローラ150からの上記位置指令に応じた所定の動作、すなわち教示された動作開始位置(図10中左側に示す位置)から教示された動作完了位置までの動作を実行している。このとき、接触検出部は、上記のような手法を用いてアーム103L,103Rに対する物体の接触の有無を判定する。そして、アーム103L,103Rが動作開始位置からベルトコンベア2(図10では図示省略)上の物品Pの両側より内側に向けて動作し、動作完了位置まで動作するまでの間に接触検出部によりアーム103L,103Rに対する物体(この例では障害物B)の接触が検出された場合には、ロボットコントローラ150は、その位置(図10中右側に示す位置)でアーム103L,103Rの動作を停止させる。
【0101】
なお、この例では、アーム103L,103Rに対する障害物Bの接触を検出して、当該接触を検出した際に動作を停止させるように制御する場合を例にとって説明したが、これに限られず、アーム103L,103Rに対する物品Pの接触を検出して、当該接触を検出した際に動作を停止させてハンド111L,111Rで物品Pを把持させるように制御することもできる。
【0102】
本変形例においても、上記実施形態と同様の効果を得ることができる。また、センサ122により、アーム103L,103Rに作用した外力を検出することができるので、アーム103L,103Rに対する物体の接触の有無を検出することができる。さらに、前述したようにセンサ122をアーム103L,103Rの内最も基端側に位置するアクチュエータAc2,Ac9の基部に設けているので、その先端側での接触を検出することができる。すなわち、アーム103L,103Rの全体について接触を検出することができる。したがって、ロボット100自身あるいはロボット100の周囲に存在する物体に対して過剰な負荷が生じることを回避することができる。
【0103】
また特に、ロボットコントローラ150が、各センサ122の出力信号の高周波振動成分を抽出するハイパスフィルタ部161を有しており、接触検出部の比較判定部は、ハイパスフィルタ部161により抽出された高周波振動成分に基づく規範波形と出力波形とを比較することにより、アーム103L,103Rに対する物体の接触の有無を判定する。これにより、アーム103L,103Rに対する物体の接触に起因する周波数成分を除去することができるので、アーム103L,103Rに対する物体の接触の有無をより高精度に検出することができる。
【0104】
(2)単腕ロボットに適用する場合
以上においては、本発明を2つのアーム103L、103Rを有する双腕ロボットであるロボット100に適用していたが、これに限られず、本発明を1つのロボットアームを有する単腕ロボットに適用してもよい。この場合も、上記実施形態と同様の効果を得ることができる。
【0105】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。
【0106】
その他、一々例示はしないが、本発明は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0107】
1 ロボットシステム
100 ロボット
103L,R アーム(ロボットアーム)
122 センサ(ひずみセンサ)
150 ロボットコントローラ(制御ユニット)
161 ハイパスフィルタ部
162 区間設定部
163 規範データ記録部
164 比較判定部
165 零点調整部
166 閾値設定部
167 出力データ記録部
Ac2〜15 アクチュエータ
【特許請求の範囲】
【請求項1】
ロボットアームを有するロボットと、前記ロボットを制御する制御ユニットと、を備えたロボットシステムであって、
前記ロボットは、
前記ロボットアームに設けられたひずみセンサを有し、
前記制御ユニットは、
前記ロボットアームが異常のない状態で所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録部と、
稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録部と、
前記規範データ記録部に記録された前記規範データと、前記出力データ記録部に記録された前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定部と、を有する
ことを特徴とするロボットシステム。
【請求項2】
前記ロボットアームには、当該ロボットアームが有する1以上の関節部を動作させる1以上のアクチュエータが設けられており、
前記比較判定部は、
前記出力データと前記規範データとの差が予め設定された閾値を超える事象が所定の周期毎に生じた場合に、前記アクチュエータに異常があると判定する
ことを特徴とする請求項1に記載のロボットシステム。
【請求項3】
前記比較判定部は、
前記出力データと前記規範データとの差が一定時間の間に予め設定された閾値を超えた回数が所定の判定回数を超えた場合に、前記ロボットアームに異常があると判定する
ことを特徴とする請求項1又は2に記載のロボットシステム。
【請求項4】
前記比較判定部は、
前記ロボットアームの動作速度に応じて前記判定回数を変更しつつ判定を行う
ことを特徴とする請求項3に記載のロボットシステム。
【請求項5】
前記制御ユニットは、
前記閾値を設定する閾値設定部をさらに有する
ことを特徴とする請求項3又は4に記載のロボットシステム。
【請求項6】
前記制御ユニットは、
前記規範データ記録部により前記ひずみセンサの出力値の時間履歴を前記規範データとして記録する区間を設定する区間設定部をさらに有する
ことを特徴とする請求項1〜5のいずれか1項に記載のロボットシステム。
【請求項7】
前記制御ユニットは、
前記区間設定部で設定した区間に対応する前記所定の動作を前記ロボットアームが実行する毎に、前記ひずみセンサの零点調整を行う零点調整部をさらに有する
ことを特徴とする請求項6に記載のロボットシステム。
【請求項8】
前記制御ユニットは、
前記ひずみセンサの出力信号の高周波振動成分を抽出するハイパスフィルタ部をさらに有し、
前記比較判定部は、
前記ハイパスフィルタ部により抽出された前記高周波振動成分に基づく前記規範データと前記出力データとを比較することにより、前記ロボットが常態であるか非常態であるかを判定する
ことを特徴とする請求項1〜7のいずれか1項に記載のロボットシステム。
【請求項9】
前記ひずみセンサは、
前記ロボットアームを構成する構造材料よりも固有振動数が大きい圧電体を有する力センサである
ことを特徴とする請求項1〜8のいずれか1項に記載のロボットシステム。
【請求項10】
前記ひずみセンサは、
圧電体として水晶が用いられたセンサである
ことを特徴とする請求項9に記載のロボットシステム。
【請求項11】
ロボットが備えたロボットアームの異常の有無を検出するロボットの異常検出方法であって、
前記ロボットアームが異常のない状態で所定の動作を行う間に、前記ロボットアームに設けられたひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録手順と、
稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録手順と、
前記規範データと前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定手順と、を有する
ことを特徴とするロボットの異常検出方法。
【請求項1】
ロボットアームを有するロボットと、前記ロボットを制御する制御ユニットと、を備えたロボットシステムであって、
前記ロボットは、
前記ロボットアームに設けられたひずみセンサを有し、
前記制御ユニットは、
前記ロボットアームが異常のない状態で所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録部と、
稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録部と、
前記規範データ記録部に記録された前記規範データと、前記出力データ記録部に記録された前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定部と、を有する
ことを特徴とするロボットシステム。
【請求項2】
前記ロボットアームには、当該ロボットアームが有する1以上の関節部を動作させる1以上のアクチュエータが設けられており、
前記比較判定部は、
前記出力データと前記規範データとの差が予め設定された閾値を超える事象が所定の周期毎に生じた場合に、前記アクチュエータに異常があると判定する
ことを特徴とする請求項1に記載のロボットシステム。
【請求項3】
前記比較判定部は、
前記出力データと前記規範データとの差が一定時間の間に予め設定された閾値を超えた回数が所定の判定回数を超えた場合に、前記ロボットアームに異常があると判定する
ことを特徴とする請求項1又は2に記載のロボットシステム。
【請求項4】
前記比較判定部は、
前記ロボットアームの動作速度に応じて前記判定回数を変更しつつ判定を行う
ことを特徴とする請求項3に記載のロボットシステム。
【請求項5】
前記制御ユニットは、
前記閾値を設定する閾値設定部をさらに有する
ことを特徴とする請求項3又は4に記載のロボットシステム。
【請求項6】
前記制御ユニットは、
前記規範データ記録部により前記ひずみセンサの出力値の時間履歴を前記規範データとして記録する区間を設定する区間設定部をさらに有する
ことを特徴とする請求項1〜5のいずれか1項に記載のロボットシステム。
【請求項7】
前記制御ユニットは、
前記区間設定部で設定した区間に対応する前記所定の動作を前記ロボットアームが実行する毎に、前記ひずみセンサの零点調整を行う零点調整部をさらに有する
ことを特徴とする請求項6に記載のロボットシステム。
【請求項8】
前記制御ユニットは、
前記ひずみセンサの出力信号の高周波振動成分を抽出するハイパスフィルタ部をさらに有し、
前記比較判定部は、
前記ハイパスフィルタ部により抽出された前記高周波振動成分に基づく前記規範データと前記出力データとを比較することにより、前記ロボットが常態であるか非常態であるかを判定する
ことを特徴とする請求項1〜7のいずれか1項に記載のロボットシステム。
【請求項9】
前記ひずみセンサは、
前記ロボットアームを構成する構造材料よりも固有振動数が大きい圧電体を有する力センサである
ことを特徴とする請求項1〜8のいずれか1項に記載のロボットシステム。
【請求項10】
前記ひずみセンサは、
圧電体として水晶が用いられたセンサである
ことを特徴とする請求項9に記載のロボットシステム。
【請求項11】
ロボットが備えたロボットアームの異常の有無を検出するロボットの異常検出方法であって、
前記ロボットアームが異常のない状態で所定の動作を行う間に、前記ロボットアームに設けられたひずみセンサの出力値の時間履歴を規範データとして記録する規範データ記録手順と、
稼働時において、前記ロボットアームが前記所定の動作を行う間の前記ひずみセンサの出力値の時間履歴を出力データとして記録する出力データ記録手順と、
前記規範データと前記出力データとを比較することにより、前記ロボットアームの異常の有無を判定する比較判定手順と、を有する
ことを特徴とするロボットの異常検出方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−139772(P2012−139772A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2010−293846(P2010−293846)
【出願日】平成22年12月28日(2010.12.28)
【出願人】(000006622)株式会社安川電機 (2,482)
【Fターム(参考)】
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願日】平成22年12月28日(2010.12.28)
【出願人】(000006622)株式会社安川電機 (2,482)
【Fターム(参考)】
[ Back to top ]