(57)【要約】【課題】ロボットに異常が発生した場合に、その異常発生の原因究明を容易に行うことができるようにする。【解決手段】ロボット１の稼動状況を示す稼動情報は、サーバー６に送信される。サーバー６で受信したロボット１の稼動情報は、一時データ記録部２０で一定時間分だけ常に記録される。保存制御部２１において所定のトリガ条件が発生したと判断されると、一時データ記録部２０に記録された稼動情報の一部がトリガ時データ記録部２４に記録される。【選択図】図３
2020163474.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１台のロボットと、該ロボットの稼動状況を示す稼動情報を受信して処理する情報処理装置とを備えたロボット装置であって、
前記情報処理装置は、
前記稼動情報を一定時間分だけ常に記録する一時データ記録部と、
所定のトリガ条件が発生したかを判断する判断部と、
前記トリガ条件が発生したと判断された場合に、前記一時データ記録部に記録されている前記稼動情報の一部を受け取って記録するトリガ時データ記録部とを有することを特徴とするロボット装置。
【請求項２】
請求項１において、
前記トリガ時データ記録部は、前記トリガ条件が発生した時点を含む前後の所定時間分の前記稼動情報を記録するように構成されていることを特徴とするロボット装置。
【請求項３】
請求項１又は２において、
前記トリガ時データ記録部は、記録されている前記稼動情報が所定容量以上となった場合に、保存日時の古いデータから順に消去するように構成されていることを特徴とするロボット装置。
【請求項４】
請求項１乃至３のうち何れか１つにおいて、
前記判断部は、前記ロボットの動作にエラーが発生した場合及び所定の稼動時間が経過した場合のうち少なくとも一方の場合に、前記トリガ条件が発生したと判断するように構成されていることを特徴とするロボット装置。
【請求項５】
請求項１乃至４のうち何れか１つにおいて、
前記ロボットは、複数台設けられ、
前記情報処理装置は、複数台の前記ロボットに対応した複数の前記稼動情報を受信して処理するように構成され、
前記一時データ記録部は、複数の前記稼動情報を一定時間分だけ常に記録するように構成され、
前記判断部は、複数台の前記ロボットのうち少なくとも１台において前記トリガ条件が発生したかを判断するように構成され、
前記トリガ時データ記録部は、前記トリガ条件が発生したと判断された場合に、前記一時データ記録部に記録されている複数の前記稼動情報の一部を受け取って記録するように構成されていることを特徴とするロボット装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット装置に関するものである。
【背景技術】
【０００２】
従来より、ティーチングプレイバック方式と呼ばれる、予め設定された動作プログラムに基づいてその動作を再現することで、溶接作業や製品の搬送作業などを行う産業用ロボットが知られている。
【０００３】
ところで、このようなロボットでは、一般に、予め設定された動作しか行うことができず、例えば、ロボットやその搭載物、把持物の衝突などの想定外の異常事態が発生した場合には、動作プログラムでは対処することができない。そのため、異常が発生した当時の状況を、作業者が後から把握できるようにしておく必要がある。
【０００４】
特許文献１には、ロボットからの指令により対象物の位置、あるいは、位置及び姿勢を計測して計測結果をロボットに転送する視覚センサを備え、予め定義されたアラームが稼動中のロボットに発生すると、アラームの発生を視覚センサに通知するとともに、その時点のロボットの稼動状況をロボット履歴情報として記録するようにしたロボット装置が開示されている。
【０００５】
特許文献２には、自ロボットの稼動時の周辺環境をカメラ等で取得した各種データを記録装置に記録しておき、自ロボットに接近する物体を検出しその検出結果から異常状態にあると判断したときに、記録装置に記録された各種データを外部データベースに送信するようにしたロボット用ドライブレコーダ装置が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３８３４３０７号公報
【特許文献２】特開２０１１−０００６９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の発明は、ロボットに異常が発生したときに、ロボットの稼動状況を示すデータを記録しようとするものであり、異常が発生した瞬間の時刻や実行されていたプログラム、ロボットの位置などの限られた情報しか知ることができない。そのため、具体的な原因や異常の発生に至る過程を知ることが困難であった。
【０００８】
例えば、ロボットを溶接用途に使用する場合には、製品の良否に影響を及ぼす溶接条件などの時系列の情報が不足しており、異常発生の原因究明が困難であった。また、異常発生の原因が、人為的ミスやソフトウェアバグ等の複合的な要因によるものである場合にも、異常発生の瞬間の状況が分かるだけでは原因究明が困難であった。
【０００９】
本発明は、かかる点に鑑みてなされたものであり、その目的は、ロボットに異常が発生した場合に、その異常発生の原因究明を容易に行うことができるようにすることにある。
【課題を解決するための手段】
【００１０】
本発明は、少なくとも１台のロボットと、該ロボットの稼動状況を示す稼動情報を受信して処理する情報処理装置とを備えたロボット装置を対象とし、次のような解決手段を講じた。
【００１１】
すなわち、第１の発明は、前記情報処理装置は、前記稼動情報を一定時間分だけ常に記録する一時データ記録部と、所定のトリガ条件が発生したかを判断する判断部と、前記トリガ条件が発生したと判断された場合に、前記一時データ記録部に記録されている前記稼動情報の一部を受け取って記録するトリガ時データ記録部とを有することを特徴とするものである。
【００１２】
第１の発明では、情報処理装置で受信したロボットの稼動情報は、一時データ記録部で一定時間分だけ常に記録される。そして、所定のトリガ条件が発生したと判断部で判断されると、一時データ記録部に記録された稼動情報の一部がトリガ時データ記録部に記録される。
【００１３】
これにより、例えば、ロボットの動作に異常が発生した場合に、トリガ時データ記録部に記録されている稼動情報から、異常発生に至る過程、異常発生時の状況や経過を確認することができ、異常発生からの復旧や原因究明を効率的に行うことができる。
【発明の効果】
【００１４】
本発明によれば、ロボットの動作に異常が発生した場合に、その異常発生の原因究明を容易に行うことができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係るロボット装置の構成を示す概略図である。
【図２】コントローラの内部構成を示すブロック図である。
【図３】サーバーの内部構成を示すブロック図である。
【図４】トリガ時データ記録部に稼動情報の一部を記録する手順を説明する概略図である。
【図５】その他の実施形態に係るロボット装置の構成を示す概略図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本発明、その適用物或いはその用途を制限することを意図するものではない。
【００１７】
図１に示すように、ロボット装置１０は、監視対象としてのロボット１と、ロボット１の稼動状況を示す稼動情報を受信して処理する情報処理装置としてのサーバー６とを備えている。
【００１８】
ロボット１は、複数のサーボモータ１ａを有する多軸の多関節型ロボットで構成されている。ロボットアーム１ｂの先端部には、溶接用のトーチ１ｃや図示しないワイヤ送給装置が取り付けられている。なお、関節軸数や水平多関節型、垂直多関節型等のロボット１の構成は、用途に合わせて適宜選択すればよい。
【００１９】
ロボット１には、コントローラ２が接続されている。コントローラ２には、ティーチペンダント３、溶接制御部４、外部機器１５（図２参照）が接続されている。コントローラ２は、ティーチペンダント３、溶接制御部４、外部機器１５との間でデータの送受信を行う。ここで、外部機器１５は、例えば、各種センサや警報ランプ等である。
【００２０】
ティーチペンダント３は、作業者がロボット１の動作や溶接条件などを定義したり、コントローラ２から送信されたロボット１の情報を表示するための装置である。なお、ティーチペンダント３とコントローラ２とは、有線通信又は無線通信の何れで接続されていてもよい。また、ティーチペンダント３がコントローラ２に一体に設けられていてもよい。
【００２１】
溶接制御部４は、コントローラ２の処理に対応して制御信号を出力し、ロボット１に取り付けられた溶接用のトーチ１ｃやワイヤ送給装置の動作を制御する。なお、溶接制御部４は、コントローラ２と独立に構成されていてもよい。
【００２２】
コントローラ２は、ネットワークケーブル５を介してサーバー６に接続されている。なお、コントローラ２とサーバー６との接続形態は、イーサネット（登録商標）が一般的であるが、シリアル通信、パラレル通信、アナログ信号などを使用してもよい。また、ハブやルーターなどの中継機器を設けてもよい。また、コントローラ２とサーバー６とは、無線通信によって接続されていてもよい。
【００２３】
サーバー６には、表示モニタとしての稼動情報表示部１９が設けられている。稼動情報表示部１９には、ロボット１の稼動状況を示す稼動情報、例えば、ロボット１の現在位置を示す３Ｄデータ、溶接波形、動作ランプが表示されている。
【００２４】
また、ロボット１の稼動情報は、ロボット１の機種名、ロボット１の姿勢、サーボモータ１ａの負荷情報、エラー内容を示すコード、溶接の品質情報、プログラムの実行回数、生産情報、ロボット１の稼動時間などを含んでいてもよい。
【００２５】
図２に示すように、コントローラ２は、電源１４から電源制御部１３に供給された電力によって動作する。
【００２６】
ＣＰＵ８は、ティーチペンダント３からの指令、教示プログラムメモリ１１で実行された教示プログラム、記憶領域１２に記憶された所定の制御シーケンスに対応して、システム全体の制御を行う。
【００２７】
また、ＣＰＵ８は、ロボット１のサーボモータ１ａのドライバより送信された検出角度に基づいて、記憶領域１２に記憶されているサーボモータ１ａの特性やロボット１のアーム長などの値と順運動学演算とを用いて、直交座標系におけるロボット１のトーチ１ｃの先端位置を演算する。
【００２８】
入出力制御部９は、ＣＰＵ８の処理に対応して、コントローラ２に接続された外部機器１５の情報取得及び送信処理を行う。
【００２９】
通信インターフェイス部２ａは、電源１４が投入されてサーバー６との接続が確立された後で、ＣＰＵ８が収集したロボット１の稼動情報を一定間隔でサーバー６に対して送信する。
【００３０】
ここで、ロボット１の稼動状況を示す稼動情報としては、ロボット１の設定情報、現在位置、溶接条件、入出力情報など、コントローラ２が扱う情報のうち、必要なものを選択する。
【００３１】
図３に示すように、コントローラ２から送信されてきた稼動情報は、サーバー６の通信インターフェイス部６ａで受信され、監視アプリケーションとしての情報処理部７に含まれる稼動情報制御部１８に送られる。通信インターフェイス部６ａ及び情報処理部７の動作は、ＣＰＵ１６の指令に基づいて制御される。
【００３２】
稼動情報制御部１８は、記録内容設定部１７で設定された内容に応じて、稼動情報のデコードやフィルタリング等を行う。なお、記録内容設定部１７では、例えば、稼動情報を取得したいロボット１のＩＰアドレス等を指定したり、稼動情報の受信間隔を設定する。
【００３３】
稼動情報制御部１８は、稼動情報表示部１９に対して稼動情報を送信して、ユーザーに対して稼動情報の提示を行うとともに、一時データ記録部２０に対して稼動情報を送信する。
【００３４】
図４に示すように、一時データ記録部２０は、リングバッファ状の構造となっており、稼動情報制御部１８から新しい稼動情報を取得すると、一時データ記録部２０が記録している最も古い稼動情報のデータを消去する。これにより、一定量の稼動情報を常に保持することができる。
【００３５】
なお、一時データ記録部２０において常に保持するデータ量は、保存条件設定部２３で設定された内容、例えば、時間、サンプル数、データサイズなどの基準により決定する。
【００３６】
ここで、コントローラ２とサーバー６との通信時に、データの欠損や通信間隔の変動が発生する場合があるため、一時データ記録部２０にデータを格納する際は、時刻を表す識別子を付加する。なお、コントローラ２側で時刻を表す識別子を付加して送信してもよい。
【００３７】
図３に示すように、保存制御部２１は、トリガ条件設定部２２で予め指定した状況と稼動情報制御部１８から通知される現在のロボット１の稼動状況を比較する。つまり、保存制御部２１は、所定のトリガ条件が発生したかを判断する判断部を構成している。ここで、トリガ条件とは、例えば、ロボット１の動作にエラーが発生した場合や、所定の稼動時間が経過した場合（例えば、１時間毎）である。
【００３８】
そして、保存制御部２１は、トリガ条件設定部２２で指定したトリガ条件が発生していると判断すると、トリガ条件が発生した時点を含む前後の所定時間分の稼動情報を、一時データ記録部２０のリングバッファから取り出し、トリガ時データ記録部２４に転送するように制御する。
【００３９】
図４に示すように、例えば、一時データ記録部２０のｎ番目の時点でトリガ条件が発生した場合、その時点より後のｎ＋ｋ番目までデータが格納されるのを待ち、過去のｎ−ｍ番目までのデータとともにトリガ時データ記録部２４に転送する。なお、ｋとｍは、保存条件設定部２３にて指定する。これにより、トリガ条件発生時の前後の稼動情報を保存することができる。
【００４０】
トリガ時データ記録部２４は、一時データ記録部２０と同様にリングバッファ状の構造となっており、記録されている稼動情報が所定容量以上となった場合に、保存日時の古いデータから順に消去する。これにより、一時データ記録部２０より転送されたデータのうち、最新の一定個数のデータを常に保持することができる。なお、稼動情報のファイル数が所定以上となった場合に、保存日時の古いファイルから順に消去するようにしてもよい。
【００４１】
図３に示すように、トリガ時データ記録部２４に保存されたデータは、再生処理部２５によって読み出され、稼動情報表示部１９に表示される。このとき、上述した時刻を表す識別子を元に表示の更新周期を調整して、記録された当時の時系列を再現するようにする。
【００４２】
ここで、稼動情報制御部１８より取得する現在の稼動情報と、再生処理部２５より取得する異常時の稼動情報とのどちらを表示するかは、稼動情報表示部１９において切り替え可能となっている。なお、稼動情報表示部１９とは別に再生専用の表示部を設けてもよい。
【００４３】
再生処理部２５の動作は、ユーザーが再生設定部２６によって指定することができる。好ましくは再生の一時停止や早送り、巻き戻し、再生箇所のシークができるようにする。
【００４４】
以上のように、本実施形態に係るロボット装置１０によれば、ロボット１の動作に異常が発生した場合に、トリガ時データ記録部２４に記録されている稼動情報から、異常発生に至る過程、異常発生時の状況や経過を確認することができ、異常発生からの復旧や原因究明を効率的に行うことができる。
【００４５】
《その他の実施形態》
前記実施形態については、以下のような構成としてもよい。
【００４６】
本実施形態では、ロボット１、サーバー６がともに１台の場合について説明したが、例えば、図５に示すように、複数台のロボット１と複数台のサーバー６とを、中継機器３０を介して接続するようにしてもよい。また、サーバー６同士を接続することで、複数台のロボット１の情報をサーバー６間で伝達するようにしてもよい。
【００４７】
そして、サーバー６では、複数台のロボット１に対応した複数の稼動情報を受信して処理する。具体的に、一時データ記録部２０は、複数の稼動情報を一定時間分だけ常に記録する。保存制御部２１は、複数台のロボット１のうち少なくとも１台においてトリガ条件が発生したかを判断する。トリガ条件が発生したと判断された場合に、トリガ時データ記録部２４は、一時データ記録部２０に記録されている複数の稼動情報からその一部を受け取って記録する。
【００４８】
このようにすれば、複数台のロボット１が同時に作業を行っていた場合に、個々のロボット１が記録しているエラー履歴だけでは知ることができなかった、異常が発生した当時のロボット１の位置関係や周辺機器の状況を、複数の稼動情報に基づいて把握することができる。
【産業上の利用可能性】
【００４９】
以上説明したように、本発明は、ロボットに異常が発生した場合に、その異常発生の原因究明を容易に行うことができるという実用性の高い効果が得られることから、きわめて有用で産業上の利用可能性は高い。
【符号の説明】
【００５０】
１    ロボット
６    サーバー（情報処理装置）
１０    ロボット装置
２０    一時データ記録部
２１    保存制御部（判断部）
２４    トリガ時データ記録部
【図１】
2020163474.tif 000003
【図２】
2020163474.tif 000004
【図３】
2020163474.tif 000005
【図４】
2020163474.tif 000006
【図５】
2020163474.tif 000007