(57)【要約】【課題】複数のロボットが故障した場合における生産性が低下することを抑制可能な技術を提供する。【解決手段】複数のロボットを制御する制御装置は、ロボットごとに故障時期を予測する故障予測部と、各ロボットが、各ロボットに共通して定められた保守時期まで稼働するように、予測された各故障時期に応じて各ロボットの作業負荷の調整を行う負荷調整部と、を備える。【選択図】図２
2020030622.tif 000002
【特許請求の範囲】
【請求項１】
複数のロボットを制御する制御装置であって、
前記ロボットごとに故障時期を予測する故障予測部と、
各前記ロボットが、各前記ロボットに共通して定められた保守時期まで稼働するように、予測された各前記故障時期に応じて各前記ロボットの作業負荷の調整を行う負荷調整部と、
を備える制御装置。
【請求項２】
請求項１に記載の制御装置であって、
前記負荷調整部は、予測された各前記故障時期が予め定めた期間内に収まる場合に前記調整を行い、予測された各前記故障時期が前記期間内に収まらない場合には前記調整を行わない、制御装置。
【請求項３】
請求項１または請求項２に記載の制御装置であって、
前記負荷調整部は、予測された前記故障時期が前記保守時期よりも早い場合には、前記作業負荷を低減し、予測された前記故障時期が前記保守時期よりも遅い場合には、前記作業負荷を高めることにより、前記調整を行う、制御装置。
【請求項４】
請求項１から請求項３までのいずれか一項に記載の制御装置であって、
前記故障予測部は、前記ロボットを構成する複数の部品についてそれぞれ故障時期を予測し、前記複数の部品のうち、予測された故障時期が最も早い部品の故障時期を、前記ロボットの故障時期と決定する、制御装置。
【請求項５】
制御装置によって実行される複数のロボットの制御方法であって、
前記ロボットごとに故障時期を予測し、
各前記ロボットが、各前記ロボットに共通して定められた保守時期まで稼働するように、予測された各前記故障時期に応じて各前記ロボットの作業負荷の調整を行う、
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの制御装置および制御方法に関する。
【背景技術】
【０００２】
ロボットを制御する制御装置に関し、例えば、特許文献１には、ロボットの稼働状況からロボットを構成する部品の故障時期を推定する技術が開示されている。特許文献１では、推定された故障時期が、予め定められた部品の交換時期よりも早まらないように、そのロボットの一部の作業を中止したり、動作速度を低減したりすることで、ロボットの故障時期を遅らせている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１０２５５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１では、複数のロボットについて故障が予測された場合における部品交換のタイミングについては十分に検討されていない。そのため、複数のロボットの故障が予測された場合に、部品交換等が行われる保守時期がロボットごとにばらつき、生産性が低下する可能性があった。
【課題を解決するための手段】
【０００５】
本発明の一形態によれば、複数のロボットを制御する制御装置が提供される。この制御装置は、前記ロボットごとに故障時期を予測する故障予測部と、各前記ロボットが、各前記ロボットに共通して定められた保守時期まで稼働するように、予測された各前記故障時期に応じて各前記ロボットの作業負荷の調整を行う負荷調整部と、を備える。
【図面の簡単な説明】
【０００６】
【図１】ロボットシステムの概略構成を示す図である。
【図２】制御装置の概略構成を示すブロック図である。
【図３】ロボットの概略構成を示す図である。
【図４】ロボット制御部の概略構成を示すブロック図である。
【図５】故障対策処理のフローチャートである。
【図６】本実施形態における負荷調整の比較例を説明するための図である。
【図７】本実施形態における負荷調整の例を説明するための図である。
【発明を実施するための形態】
【０００７】
Ａ．第１実施形態：
図１は、本実施形態におけるロボットシステム１０の概略構成を示す図である。ロボットシステム１０は、複数の製造セル４０と、制御装置５０とを備える。各製造セル４０は、複数のロボット３０を含む製造設備の集合である。各製造セル４０は、工場内において離れた位置に配置されている。本実施形態において、各製造セル４０は、第１ロボット３０ａ、第２ロボット３０ｂ、第３ロボット３０ｃを含む。以下において、これらのロボットを区別なく説明する場合には、「ロボット３０」という。本実施形態において、製造セル４０内の各ロボット３０は、個々に物の生産や加工を行う。各製造セル４０が備えるロボット３０の数は任意である。制御装置５０は、製造セル４０が配置された工場内に配置されていてもよいし、工場から離れた位置に配置されていてもよい。制御装置５０と各ロボット３０とは、例えば、イントラネットやインターネット等のネットワークを介して互いに通信を行う。
【０００８】
図２は、制御装置５０の概略構成を示すブロック図である。制御装置５０は、第１ＣＰＵ５１と第１メモリー５２とを備えるコンピューターとして構成されている。制御装置５０は、更に、第１記憶装置５３と、各ロボット３０と通信を行うための第１通信部５４とを備える。第１ＣＰＵ５１は、第１記憶装置５３に記憶された制御プログラムを第１メモリー５２にロードして実行することで、故障予測部５１１および負荷調整部５１２として動作する。
【０００９】
故障予測部５１１は、各ロボット３０から第１通信部５４を介して稼働情報を取得し、取得された稼働情報に基づき、ロボット３０ごとに故障時期を予測する。稼働情報には、ロボット３０の各部品を駆動するための指令値や、各部品に備えられたセンサーの出力値が含まれる。本実施形態では、故障予測部５１１は、各ロボット３０を構成する複数の部品についてそれぞれ故障時期を予測して、そのうち、予測された故障時期が最も早い部品の故障時期を、ロボット３０の故障時期と決定する。
【００１０】
各部品の故障時期は、周知の種々の方法によって予測可能である。例えば、故障予測部５１１は、ロボット３０のアームやエンドエフェクターに備えられたサーボモーターへの速度指令値と、エンコーダーからの出力値に基づいて算出される実際の速度値との差の時間変化に基づき、サーボモーターの故障時期を予測することができる。故障予測部５１１は、前述の差が、予め定められた閾値を超えない場合には、サーボモーターに故障は生じないと判断し、閾値を超えた場合には、サーボモーターに故障が生じると判断する。サーボモーターに故障が生じると判断した場合、故障予測部５１１は、その差が、予め定めた基準値まで大きくなるまでの時期を、これまでの差の時間変化率に基づき算出することで、故障時期を予測することができる。また、故障予測部５１１は、エンコーダーからの出力値あるいは振動センサーの出力値に基づきサーボモーターに生じる振動の振幅を検出し、その振幅の時間変化に基づき、サーボモーターの故障時期を予測することができる。故障予測部５１１は、前述の振幅が、予め定められた閾値を超えない場合には、サーボモーターに故障は生じないと判断し、閾値を超えた場合には、サーボモーターに故障が生じると判断する。サーボモーターに故障が生じると判断した場合、故障予測部５１１は、その振幅が予め定めた基準値まで大きくなるまでの時期を、これまでの振幅の時間変化率に基づき算出することで、故障時期を予測することができる。故障予測部５１１は、これらの手法に限られず、各部品に供給する電流値の変化や、入力信号に対する出力信号の応答時間の変化などに基づき故障時期を予測してもよい。
【００１１】
負荷調整部５１２は、各ロボット３０が、各ロボット３０に共通して定められた保守時期まで稼働するように、予測された各ロボット３０の故障時期に応じて各ロボット３０の作業負荷の調整を行う。換言すれば、負荷調整部５１２は、各ロボット３０が、各ロボット３０に共通して定められた保守時期に故障時期が到来するように、予測された各ロボット３０の故障時期に応じて各ロボット３０の作業負荷の調整を行う。保守時期を表す情報は、予め第１記憶装置５３に記憶されている。負荷調整部５１２によって実行される処理内容については後で詳しく説明する。なお、本実施形態において、「保守」とは、部品の交換や修理、調整、点検、整備などの意味を含む。
【００１２】
第１記憶装置５３には、セル情報が記憶されている。セル情報には、製造セル４０と、その製造セル４０に含まれるロボット３０との対応関係が記録されている。第１記憶装置５３は、セル情報を参照することにより、ロボット３０毎にそのロボット３０が所属する製造セル４０を把握することができる。
【００１３】
図３は、ロボット３０の概略構成を示す図である。各ロボット３０は、アーム３１と基台３２とを備えている。基台３２には、アーム３１の基端が固定されている。アーム３１の先端にはエンドエフェクター３４が装着されている。エンドエフェクター３４としては、溶接ガンや、ねじ締め器、穴あけ器、切削器など、任意の種類のエンドエフェクターを装着可能である。アーム３１は複数の関節を備える。各関節には、サーボモーターと、サーボモーターの回転位置を検出するエンコーダーとが備えられている。基台３２には、ロボット３０の動作を制御するためのロボット制御部３５が備えられている。なお、ロボット制御部３５は、ロボット３０とは別体に構成されていてもよい。
【００１４】
図４は、ロボット制御部３５の概略構成を示すブロック図である。ロボット制御部３５は、第２ＣＰＵ３５１と第２メモリー３５２とを備えるコンピューターとして構成されている。ロボット制御部３５は、更に、第２記憶装置３５３と、制御装置５０と通信を行うための第２通信部３５４とを備える。ロボット制御部３５は、また、アーム駆動部３５５とエンドエフェクター駆動部３５６とを備える。第２記憶装置３５３には、ロボット３０が製品を生産するためにアーム３１やエンドエフェクター３４等の各部品の動作を制御するための動作プログラムが記憶されている。
【００１５】
第２ＣＰＵ３５１は、第２記憶装置３５３に記憶された動作プログラムに従って、アーム３１を駆動するための指令をアーム駆動部３５５に伝達する。アーム駆動部３５５は、第２ＣＰＵ３５１から受信した指令に基づいて、アーム３１の各関節に備えられたサーボモーターを駆動する。また、第２ＣＰＵ３５１は、第２記憶装置３５３に記憶された動作プログラムに従って、エンドエフェクター３４を駆動するための指令をエンドエフェクター駆動部３５６に伝達する。エンドエフェクター駆動部３５６は、第２ＣＰＵ３５１から受信した指令に基づいて、エンドエフェクター３４に備えられたモーターや各種アクチュエーターを駆動する。
【００１６】
第２ＣＰＵ３５１は、ロボット３０の稼働情報を、第２記憶装置３５３に逐次記録する。第２記憶装置３５３に記憶された稼働情報は、制御装置５０からの要求に応じて、第２通信部３５４を介して、制御装置５０に送信される。
【００１７】
図５は、制御装置５０によって実行される故障対策処理のフローチャートである。本実施形態では、この故障対策処理は、製造セル４０ごとに、１日に１回、あるいは、１ヶ月に１回などの定期的なタイミングで実行される。
【００１８】
故障対策処理が制御装置５０によって実行されると、ステップＳ１０において、故障予測部５１１が、各ロボット３０から、稼働情報を取得する。そして、ステップＳ２０において、故障予測部５１１は、取得された稼働情報に基づき、各ロボット３０が故障するか否か、および、各ロボット３０の故障時期を予測する。以下では、予測された故障時期のことを、「故障予測時期」ともいう。ステップＳ３０において、制御装置５０は、故障が予測されたロボット３０があるか否かを判断する。
【００１９】
ステップＳ３０において、故障が予測されたロボット３０がないと判断された場合、制御装置５０は、当該故障対策処理を終了させる。一方、ステップＳ３０において、故障が予測されたロボット３０があると判断された場合、ステップＳ４０において、負荷調整部５１２は、第１記憶装置５３から保守時期を取得する。そして、制御装置５０は、ステップＳ５０において、故障が予測されたロボット３０が複数であるか否かを判断する。故障が予測されたロボット３０が複数の場合、ステップＳ６０において、制御装置５０は、各ロボット３０の故障予測時期が、予め定めた期間内に収まるか否かを判断する。本実施形態では、この期間を、保守時期を含む半年とする。この期間は、例えば、ロボット３０の保守時期の周期に応じて定めることができる。各ロボット３０の故障予測時期が、予め定めた期間内に収まらないと判断された場合、制御装置５０は、当該故障対策処理を終了する。
【００２０】
上記ステップＳ６０において、各ロボット３０の故障予測時期が、予め定めた期間内であると判断された場合、制御装置５０は、ステップＳ７０において、故障が予測された各ロボット３０の作業負荷を調整する。具体的には、制御装置５０は、故障が予測された各ロボット３０について、故障予測時期が保守時期よりも早い場合には、作業負荷を低減し、故障予測時期が保守時期よりも遅い場合には、作業負荷を高め、故障が予測されたすべてのロボット３０が、保守時期まで稼働し、さらに、全体の生産性が低下しないように、各ロボット３０の作業負荷を調整する。作業負荷の調整後、ステップＳ８０において、制御装置５０は、ロボット３０毎に調整された作業負荷を実現するための動作プログラムを作成する。そして、ステップＳ９０において、作成したプログラムを、各ロボット３０のロボット制御部３５に送信して、第２記憶装置３５３に記憶されているそれぞれの動作プログラムを更新させる。
【００２１】
上記ステップＳ５０において、故障が予測されたロボット３０の数が一台と判断された場合、ステップＳ１００において、制御装置５０は、そのロボット３０の故障予測時期が保守時期よりも早いか否かを判断する。故障予測時期が保守時期以降であれば、制御装置５０は、当該故障対策処理を終了する。一方、故障予測時期が保守時期よりも早ければ、制御装置５０は、ステップＳ７０において、そのロボット３０が保守時期以降に故障するように、そのロボット３０の作業負荷を調整する。そして、ステップＳ８０において、制御装置５０は、調整された作業負荷を実現するための動作プログラムを作成し、ステップＳ９０において、作成した動作プログラムを、故障が予測されたロボット３０のロボット制御部３５に送信して、第２記憶装置３５３に記憶されている動作プログラムを更新させる。なお、故障が予測されたロボット３０の数が一台の場合には、上記ステップＳ１００における判断を実行することなく、故障対策処理を終了させてもよい。
【００２２】
図６は、本実施形態における負荷調整の比較例を説明するための図である。図６に示したグラフは、横軸が時間を表し、縦軸が、第１ロボット３０ａ、第２ロボット３０ｂ、第３ロボット３０ｃによる製品の生産量を示している。図６に示した比較例において、初期状態では、各ロボット３０は、一定の生産量により製品の生産を行っている。そして、あるタイミングで故障の予測を行い、その予測結果に応じて、全体の生産量を確保するように各ロボット３０の生産量の調整が行われている。しかし、その調整において、保守時期は特に考慮されていない。この結果、各ロボット３０について、それぞれ異なるタイミングで故障時期が到来し、その都度、保守作業が必要になる。
【００２３】
図７は、本実施形態における負荷調整の例を説明するための図である。図７に示した例でも、図６に示した比較例と同様に、初期状態では、各ロボット３０は、一定の生産量により製品の生産を行っている。そして、あるタイミングで、図５に示した故障対策処理が実行され、各ロボット３０の故障時期が予測される。そして、制御装置５０により各ロボット３０の作業負荷が、各ロボット３０の故障予測時期に応じて調整される。具体的には、制御装置５０は、故障が予測された各ロボット３０について、故障予測時期が保守時期よりも早い場合には、動作速度を低下させて単位時間当たりの生産量を低下させることにより作業負荷を低減し、故障予測時期が保守時期よりも遅い場合には、動作速度を高めて単位時間当たりの生産量を高めることにより作業負荷を高め、故障が予測されたすべてのロボット３０の故障時期が、保守時期に到来するように、各ロボット３０の作業負荷を調整する。図７に示した例では、第１ロボット３０ａおよび第２ロボット３０ｂについては、故障予測時期が保守時期よりも早いため、生産量が低下させられ、第３ロボット３０ｃについては、故障予測時期が保守時期よりも遅いため、第１ロボット３０ａおよび第２ロボット３０ｂの生産量を低下させた分を補うように、生産量が高められている。つまり、負荷調整部５１２は、作業負荷の調整前後で製造セル４０における製品の生産量が変動しないように、各ロボット３０の生産量を調整する。こうして作業負荷が調整された後、予め定められた保守時期が到来すると、そのタイミングにおいて、実際に故障が生じたか否かにかかわらず、故障が予測された全ロボット３０について同時に保守作業が行われる。
【００２４】
このように、本実施形態では、図６に示した比較例とは異なり、各ロボット３０が、各ロボット３０に共通して定められた保守時期まで稼働するように作業負荷が調整されるため、各ロボット３０について、すべて同じタイミングで保守作業を行うことができる。この結果、保守作業に要する人件費や機密保全対応のためのコストを低減することができるので、工場あるいは製造セル４０の生産性が低下することを抑制することができる。特に、機密保全のために、製造セル４０全体あるいは工場全体の操業停止が必要な工場では、保守作業のタイミングがばらつく比較例に比べて、本実施形態では、保守作業を一度に行うことができるので、生産性が低下することを格段に抑制できる。
【００２５】
また、本実施形態では、各ロボット３０の故障予測時期が一定の期間内に収まる場合に、各ロボット３０の故障時期が保守時期に到来するように各ロボット３０の作業負荷を調整する。そのため、各ロボット３０の故障予測時期が極めて離れている場合等において、ロボット３０の作業負荷が極度に低下させられたり高められたりすることを抑制できる。この結果、作業負荷の調整によって、ロボット３０が持つ本来の性能が発揮できない状況や、本来の性能を越える負荷で作動される状況が生じることを抑制できる。
【００２６】
また、本実施形態では、故障の予測された各ロボット３０について、故障予測時期が保守時期よりも早い場合には作業負荷を低減し、故障予測時期が保守時期よりも遅い場合には作業負荷を高めるので、製造セル４０全体、あるいは、工場全体の生産量が低下することを抑制できる。
【００２７】
また、本実施形態では、故障予測部５１１は、各ロボット３０を構成する複数の部品についてそれぞれ故障予測時期を特定し、そのうち、最も故障予測時期の早い部品の故障予測時期を、ロボット３０の故障予測時期と決定する。そのため、複数の部品に故障が予測された場合でも、ロボット３０の故障時期を適切に判断できる。
【００２８】
Ｂ．他の実施形態：
（Ｂ−１）上記実施形態では、故障予測部５１１は、複数の部品のうち、最も故障予測時期の早い部品の故障予測時期を、ロボット３０の故障予測時期と決定している。これに対して、故障予測部５１１は、複数の部品のそれぞれの故障予測時期の平均値や中央値を、ロボット３０の故障予測時期として決定してもよい。また、故障予測部５１１は、故障時期を部品ごとに予測するのではなく、例えば、ロボット３０自体の稼働時間や作業量に応じてロボット３０の故障時期を予測してもよい。
【００２９】
（Ｂ−２）上記実施形態では、負荷調整部５１２は、一定の期間内に各ロボット３０の故障予測時期が収まる場合に、各ロボット３０の作業負荷の調整を行っている。しかし、負荷調整部５１２は、各ロボット３０の故障予測時期が一定の期間に収まるか否かにかかわらず、各ロボット３０の作業負荷を調整してもよい。
【００３０】
（Ｂ−３）上記実施形態では、負荷調整部５１２は、故障が予測されたすべてのロボット３０の故障予測時期が、一定の期間内に収まらない場合には、各ロボット３０の作業負荷の調整を行わない。これに対して、負荷調整部５１２は、すべてのロボット３０の故障予測時期が、一定の期間内に収まらない場合であっても、故障予測時期が一定の期間に収まるロボット３０についてのみ作業負荷を調整し、故障予測時期が一定の期間外となったロボット３０については、作業負荷を調整しないものとしてもよい。
【００３１】
（Ｂ−４）上記実施形態では、制御装置５０は、図５に示した故障対策処理を、製造セル４０単位で実行している。これに対して、制御装置５０は、図５に示した故障対策処理を工場全体で実行してもよい。
【００３２】
（Ｂ−５）上記実施形態において、負荷調整部５１２は、作業負荷の調整にあたり、製品の在庫を利用して出荷を賄える範囲でできるだけ故障時期を遅らせるように各ロボット３０の作業負荷を調整してもよい。この場合、負荷調整部５１２は、予め定められている保守時期を、遅らせた故障時期に合わせるように遅らせてもよい。また、負荷調整部５１２は、各ロボット３０の故障時期および保守時期のタイミングが、工場の長期停止期間内になるように、各ロボット３０の作業負荷を調整してもよい。
【００３３】
Ｃ．他の形態：
本発明は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、以下に記載する各形態中の技術的特徴に対応する実施形態の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【００３４】
（１）本発明の一形態によれば、複数のロボットを制御する制御装置が提供される。この制御装置は、前記ロボットごとに故障時期を予測する故障予測部と、各前記ロボットが、各前記ロボットに共通して定められた保守時期まで稼働するように、予測された各前記故障時期に応じて各前記ロボットの作業負荷の調整を行う負荷調整部と、を備える。この形態のロボットの制御装置によれば、各ロボットが、各ロボットに共通して定められた保守時期まで稼働するように各ロボットの作業負荷が調整されるので、保守時期のばらつきに起因する生産性の低下を抑制できる。
【００３５】
（２）上記形態のロボットの制御装置において、前記負荷調整部は、予測された各前記故障時期が予め定めた期間内に収まる場合に前記調整を行い、予測された各前記故障時期が前記期間内に収まらない場合には前記調整を行わないものとしてもよい。この形態のロボットの制御装置であれば、例えば、予測された各ロボットの故障時期が極めて離れている場合等において、ロボットの作業負荷が極度に低下させられたり高められたりすることを抑制できる。
【００３６】
（３）上記形態のロボットの制御装置において、前記負荷調整部は、予測された前記故障時期が前記保守時期よりも早い場合には、前記作業負荷を低減し、予測された前記故障時期が前記保守時期よりも遅い場合には、前記作業負荷を高めることにより、前記調整を行ってもよい。この形態のロボットの制御装置であれば、生産性が低下することを効果的に抑制することができる。
【００３７】
（４）上記形態のロボットの制御装置において、前記故障予測部は、前記ロボットを構成する複数の部品についてそれぞれ故障時期を予測し、前記複数の部品のうち、予測された故障時期が最も早い部品の故障時期を、前記ロボットの故障時期と決定してもよい。このような形態のロボットの制御装置であれば、複数の部品に故障が予測された場合でも、ロボットの故障時期を適切に判断できる。
【００３８】
本発明は、上述した制御装置としての形態以外にも、種々の形態で実現することが可能である。例えば、ロボットの制御方法、ロボットと制御装置とを備えるシステム、ロボットを制御するためのコンピュータプログラム、そのコンピュータプログラムを記録した一時的でない有形の記録媒体等の形態で実現することができる。
【符号の説明】
【００３９】
１０…ロボットシステム、３０…ロボット、３０ａ…第１ロボット、３０ｂ…第２ロボット、３０ｃ…第３ロボット、３１…アーム、３２…基台、３４…エンドエフェクター、３５…ロボット制御部、４０…製造セル、５０…制御装置、５１…第１ＣＰＵ、５２…第１メモリー、５３…第１記憶装置、５４…第１通信部、３５１…第２ＣＰＵ、３５２…第２メモリー、３５３…第２記憶装置、３５４…第２通信部、３５５…アーム駆動部、３５６…エンドエフェクター駆動部、５１１…故障予測部、５１２…負荷調整部
【図１】
2020030622.tif 000003
【図２】
2020030622.tif 000004
【図３】
2020030622.tif 000005
【図４】
2020030622.tif 000006
【図５】
2020030622.tif 000007
【図６】
2020030622.tif 000008
【図７】
2020030622.tif 000009