(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025029455
(43)【公開日】2025-03-06
(54)【発明の名称】ロボットシステム、ブレーキ判定方法、および、ブレーキ判定プログラム
(51)【国際特許分類】
B25J 13/00 20060101AFI20250227BHJP
【FI】
B25J13/00 Z
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023134127
(22)【出願日】2023-08-21
(71)【出願人】
【識別番号】000000974
【氏名又は名称】川崎重工業株式会社
(74)【代理人】
【識別番号】100104433
【弁理士】
【氏名又は名称】宮園 博一
(74)【代理人】
【識別番号】100202728
【弁理士】
【氏名又は名称】三森 智裕
(72)【発明者】
【氏名】永浜 恭秀
(72)【発明者】
【氏名】中村 豪
(72)【発明者】
【氏名】川井 淳
(72)【発明者】
【氏名】吉田(穗積) 由実
(72)【発明者】
【氏名】堀川 正博
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS01
3C707BS12
3C707HS27
3C707HT40
3C707KS21
3C707KV01
3C707LW12
(57)【要約】
【課題】電磁ブレーキの異常を精度よく判定することが可能なロボットシステム、ブレーキ判定方法、および、ブレーキ判定プログラムを提供する。
【解決手段】このロボットシステム100は、ロボット10の駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキ60と、電磁ブレーキ60に流れる電流を検出するブレーキ電流検出部と、制御部とを備える。制御部は、ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、電磁ブレーキの切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデル80を用いることによって、電流信号に対する学習済みモデル80からの予測値の出力として、推定ブレーキ動作信号を取得する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、
前記電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、
前記ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える、ロボットシステム。
【請求項2】
前記電磁ブレーキに対して徐々に大きさが変化する電圧を印加するブレーキ電源部をさらに備え、
前記制御部は、
前記ブレーキ電源部により徐々に大きさが変化する電圧が印加されることにより前記電磁ブレーキに流れる電流の検出結果に基づく前記電流信号を取得し、
取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として前記推定ブレーキ動作信号を取得する、請求項1に記載のロボットシステム。
【請求項3】
前記制御部は、取得された前記推定ブレーキ動作信号に基づいて、前記切替動作の切替タイミングにおいて前記電磁ブレーキに印加されているブレーキ駆動電圧を取得する、請求項1または2に記載のロボットシステム。
【請求項4】
前記切替動作の切替タイミングを検出する動作検出部と、
前記電流信号を前記説明変数として取得するとともに、前記動作検出部により検出された前記切替動作の状態を示す前記ブレーキ動作信号を前記目的変数として取得することによって、前記説明変数と前記目的変数とを用いた機械学習により前記学習済みモデルを生成する学習部とを、さらに備える、請求項1または2に記載のロボットシステム。
【請求項5】
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記切替動作における動作音を検出する動作音検出部を含み、
前記学習部は、前記動作音検出部により検出された検出信号に基づく前記目的変数としての前記ブレーキ動作信号を取得する、請求項4に記載のロボットシステム。
【請求項6】
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記切替動作における振動を検出する振動検出部を含み、
前記学習部は、前記振動検出部により検出された検出信号に基づく前記目的変数としての前記ブレーキ動作信号を取得する、請求項4に記載のロボットシステム。
【請求項7】
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記モータに供給されるモータ駆動電流を検出し、
前記学習部は、前記モータ駆動電流に基づく前記目的変数としての前記ブレーキ動作信号を取得する、請求項4に記載のロボットシステム。
【請求項8】
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記モータの回転を検出するエンコーダを含み、
前記学習部は、前記エンコーダからの出力に基づく前記目的変数としての前記ブレーキ動作信号を取得する、請求項4に記載のロボットシステム。
【請求項9】
前記制御部は、前記学習済みモデルからの予測値の出力として、前記切替動作において前記ブレーキ電源部により印加される電圧の変化が開始された時点から、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられた切替タイミングの時点までの時間を表す前記推定ブレーキ動作信号を取得する、請求項2に記載のロボットシステム。
【請求項10】
前記制御部は、前記ブレーキ電流検出部により検出された電流の交流成分が抽出された前記電流信号を前記説明変数として機械学習により生成された前記学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として前記推定ブレーキ動作信号を取得する、請求項1または2に記載のロボットシステム。
【請求項11】
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、
前記電流信号を教師データの説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する、ブレーキ判定方法。
【請求項12】
請求項11に記載されたブレーキ判定方法をコンピュータに実行させる、ブレーキ判定プログラム。
【請求項13】
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、
前記電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、
前記ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作において前記電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える、ロボットシステム。
【請求項14】
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、
前記電流信号を教師データの説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作において前記電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する、ブレーキ判定方法。
【請求項15】
請求項14に記載されたブレーキ判定方法をコンピュータに実行させる、ブレーキ判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この開示は、ロボットシステム、ブレーキ判定方法、および、ブレーキ判定プログラムに関する。
【背景技術】
【0002】
従来、ブレーキ装置を備えるモータ駆動装置が知られている。たとえば、特許文献1では、摩擦式のブレーキ装置を備えるモータ駆動装置が記載されている。このブレーキ装置では、ブレーキコイルにブレーキコイル電圧を印加することにより生じる電磁力によって、アーマチュアが摩擦板から引き離されてモータのブレーキが解除される。また、特許文献1に記載のモータ駆動装置では、ブレーキ装置においてブレーキが正常に解除されているか否かが判定される。具体的には、ブレーキコイル電圧を印加した状態において、所定負荷にてモータを運転した時のモータ電流を観測し、予め設定されているブレーキ正常解除時電流との大小関係に基づいてブレーキが正常に解除されているか否かが判定される。特許文献1に記載のモータ駆動装置では、モータ電流がブレーキ正常解除時電流よりも大きい場合には、ブレーキが正常に解除されていないと判定されるとともに、ブレーキコイル電圧がより大きい値に変更される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1のモータ駆動装置のように、電流値などの検出された値が予め設定された所定のしきい値よりも大きいか否かを判定することによって電磁ブレーキであるブレーキの異常を判定する場合には、ノイズなどの外乱に起因して判定の精度が低下する。このため、電磁ブレーキの異常を精度よく判定することが望まれている。
【0005】
この開示は、上記のような課題を解決するためになされたものであり、この開示の1つの目的は、電磁ブレーキの異常を精度よく判定することが可能なロボットシステム、ブレーキ判定方法、および、ブレーキ判定プログラムを提供することである。
【課題を解決するための手段】
【0006】
この開示の第1の局面によるロボットシステムは、ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える。
【0007】
この開示の第1の局面によるロボットシステムは、上記のように、ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部を備える。これにより、機械学習により生成された学習済みモデルからの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキの切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量、または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することによってブレーキの切替動作を予測する場合に比べて、電磁ブレーキの切替動作の切替タイミングを精度よく予測できる。その結果、予測された切替タイミングに基づいて電磁ブレーキが正常に動作しているか否かを判定できるため、電磁ブレーキの異常を精度よく判定できる。なお、ここで言う「電磁ブレーキの異常の判定」とは、電磁ブレーキにおける各部の劣化や動作の不具合などの異常が発生しているか否かの判定のみならず、異常が発生しているとまでは至らないものの劣化が進行している進行度合いの判定や、将来的に異常が生じる寿命予測の判定などをも含む広い概念として記載している。
【0008】
この開示の第2の局面によるブレーキ判定方法は、ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する。
【0009】
この開示の第2の局面によるブレーキ判定方法は、上記のように、電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する。これにより、機械学習により生成された学習済みモデルからの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキの切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することによってブレーキの切替動作を予測する場合に比べて、電磁ブレーキの切替動作の切替タイミングを精度よく予測できる。その結果、予測された切替タイミングに基づいて電磁ブレーキが正常に動作しているか否かを判定できるため、電磁ブレーキの異常を精度よく判定可能なブレーキ判定方法を提供できる。
【0010】
この開示の第3の局面によるブレーキ判定プログラムは、第2の局面によるブレーキ判定方法をコンピュータに実行させる。
【0011】
この開示の第3の局面によるブレーキ判定プログラムは、上記のように、第2の局面によるブレーキ判定方法をコンピュータに実行させることにより、電磁ブレーキの異常を精度よく判定できる。
【0012】
この開示の第4の局面によるロボットシステムは、ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作において電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える。
【0013】
この開示の第4の局面によるロボットシステムは、上記のように、ブレーキ電流検出部による検出結果に基づく電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作において電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部を備える。これにより、機械学習により生成された学習済みモデルからの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキの切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することによってブレーキの切替動作におけるブレーキ駆動電圧を予測する場合に比べて、電磁ブレーキの切替動作におけるブレーキ駆動電圧を精度よく予測できる。その結果、予測されたブレーキ駆動電圧に基づいて電磁ブレーキが正常に動作しているか否かを判定できるため、電磁ブレーキの異常を精度よく判定できる。
【0014】
この開示の第5の局面によるブレーキ判定方法は、ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作において電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する。
【0015】
この開示の第5の局面によるブレーキ判定方法は、上記のように、電流信号を教師データの説明変数とし、電磁ブレーキの制動状態と解放状態とが切り替えられる切替動作において電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を教師データの目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された電流信号に対する学習済みモデルからの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する。これにより、機械学習により生成された学習済みモデルからの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキの切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することよってブレーキの切替動作におけるブレーキ駆動電圧を予測する場合に比べて、電磁ブレーキの切替動作におけるブレーキ駆動電圧を精度よく予測できる。その結果、予測されたブレーキ駆動電圧に基づいて電磁ブレーキが正常に動作しているか否かを判定できるため、電磁ブレーキの異常を精度よく判定可能なブレーキ判定方法を提供できる。
【0016】
この開示の第6の局面によるブレーキ判定プログラムは、第5の局面によるブレーキ判定方法をコンピュータに実行させる。
【0017】
この開示の第6の局面によるブレーキ判定プログラムは、上記のように、第5の局面によるブレーキ判定方法をコンピュータに実行させることにより、電磁ブレーキの異常を精度よく判定できる。
【発明の効果】
【0018】
本開示によれば、電磁ブレーキの異常を精度よく判定できる。
【図面の簡単な説明】
【0019】
【
図1】第1実施形態によるロボットシステムの全体構成を示した模式図である。
【
図2】第1実施形態によるロボットシステムの構成を示したブロック図である。
【
図3】モータおよび電磁ブレーキの構成を示した断面図である。
【
図4】第1実施形態による学習済みモデルの生成方法を説明するためのフローチャート図である。
【
図5】電磁ブレーキに印加される徐々に大きさが変化する電圧の一例を示した図である。
【
図6】学習済みモデルの生成における電流信号の一例を示した図である。
【
図7】動作音の検出信号に基づくブレーキ動作信号の取得の一例を示した図である。
【
図8】学習装置による学習済みモデルの生成を説明するための図である。
【
図9】第1実施形態のロボットシステムによるブレーキ判定方法を説明するためのフローチャート図である。
【
図10】ブレーキ判定方法において取得される電流信号の一例を示した図である。
【
図11】学習済みモデルを用いた推定ブレーキ動作信号の取得を説明するための図である。
【
図12】推定ブレーキ動作信号に基づくブレーキ駆動電圧の取得を説明するための図である。
【
図13】第2実施形態によるロボットシステムの構成を示したブロック図である。
【
図14】第2実施形態におけるブレーキ動作信号の取得を説明するための図である。
【
図15】第3実施形態によるロボットシステムの構成を示したブロック図である。
【
図16】第3実施形態におけるブレーキ動作信号の取得の制御処理を説明するためのフローチャート図である。
【
図17】第4実施形態によるロボットシステムの構成を示したブロック図である。
【
図18】第4実施形態におけるブレーキ動作信号の取得の制御処理を説明するためのフローチャート図である。
【
図19】第5実施形態によるロボットシステムの構成を示したブロック図である。
【
図20】第5実施形態における電流信号の取得を説明するための図である。
【
図21】第6実施形態によるロボットシステムの構成を示したブロック図である。
【
図22】第6実施形態における目的変数としてのブレーキ駆動電圧の取得を説明するための図である。
【
図23】第6実施形態のロボットシステムによるブレーキ判定方法を説明するためのフローチャート図である。
【
図24】第1から第6実施形態の変形例によるブレーキ動作信号の第1例を示した図である。
【
図25】第1から第6実施形態の変形例によるブレーキ動作信号の第2例を示した図である。
【発明を実施するための形態】
【0020】
[第1実施形態]
以下、本開示を具体化した本開示の第1実施形態を図面に基づいて説明する。
【0021】
図1から
図3までを参照して、第1実施形態によるロボットシステム100の構成について説明する。
【0022】
(ロボットシステムの構成)
図1に示すように、第1実施形態によるロボットシステム100は、ロボット10、学習装置30、および、検査装置40を備えている。ロボット10は、ロボットコントローラ20を含む。ロボットシステム100では、予め学習装置30により機械学習により学習済みモデル80が生成される。そして、ロボットシステム100では、生成された学習済みモデル80を用いて検査装置40によりロボット10に配置されている電磁ブレーキ60の異常が判定される。なお、学習装置30は、学習部の一例である。
【0023】
図2に示すように、ロボット10は、ロボットアーム11を含む。ロボット10は、たとえば、ロボットアーム11と、ロボットアーム11の先端に取り付けられたエンドエフェクタとを動作させることにより、運搬、組立、および、工作などのハンドリング作業を行う産業用ロボットである。ロボットアーム11は、たとえば、複数のリンク部材と複数のリンク部材同士を接続する関節部とを有する6軸の垂直多関節ロボットアームである。すなわち、ロボットアーム11には、6つの関節部が配置されている。そして、ロボットアーム11の6つの関節部の各々には、ロボット10の駆動源となるモータ50が配置されている。モータ50の駆動力により6つの関節部の各々が回転することによって、ロボットアーム11は動作する。モータ50は、ロボットコントローラ20によってサーボ制御されるサーボモータである。モータ50は、たとえば、インバータ回路を含むモータドライバから供給される電流により動作するブラシレスDCサーボモータである。また、モータ50には、電磁ブレーキ60が配置されている。電磁ブレーキ60は、モータ50の回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える。
【0024】
図3に示すように、モータ50には、モータ50の回転を検出するエンコーダ51が配置されている。エンコーダ51は、検出されたモータ50の回転に関する信号をロボットコントローラ20に対して出力する。たとえば、エンコーダ51は、モータ50の回転角度の位置を示す信号を出力する。エンコーダ51は、モータ50の回転軸であるシャフト55に配置されている。モータ50には、筐体の一部として円盤状のブラケット52が配置されている。モータ50では、ステータ53に配置されたU相V相W相の3相のコイルに対してモータドライバから電流が流されることによって、複数の永久磁石が配置されたロータ54が回転する。ロータ54はシャフト55と一体的に回転する。モータ50では、ステータ53のコイルに流される電流が制御されることによって、シャフト55の回転が制御される。
【0025】
電磁ブレーキ60は、モータ50の内部において、ブラケット52に配置されている。電磁ブレーキ60は、モータ50のシャフト55の回転の停止または制動を行う。電磁ブレーキ60は、ヨーク61、コイル62、弾性部材63、アーマチュア64、および、摩擦部材65を有する。電磁ブレーキ60では、ヨーク61に配置されたコイル62に電圧が印加されていない場合には、弾性部材63の弾性力によって、アーマチュア64が摩擦部材65の摩擦面に押し付けられる。弾性部材63は、たとえば、コイルばねである。摩擦部材65はシャフト55と一体的に回転し、アーマチュア64は回転しないため、アーマチュア64との摩擦により摩擦部材65の回転が制動されることにより、シャフト55の回転が制動される。すなわち、電磁ブレーキ60は、コイル62に電圧が印加されていない場合にブレーキがオンの制動状態となる無励磁作動型である。そして、電磁ブレーキ60では、コイル62に所定のブレーキ駆動電圧が印加された場合に、磁力が発生することにより弾性部材63の弾性力に抗しながらアーマチュア64が摩擦部材65から離間する方向に移動する。すなわち、電磁ブレーキ60は、所定の大きさのブレーキ駆動電圧が印加された場合に、制動状態から解放状態に切り替えられる。なお、電磁ブレーキ60では、コイル62に電圧が印加されていない状態のヨーク61とアーマチュア64との間の隙間であるギャップの大きさに応じて、ブレーキ駆動電圧の大きさが変化する。電磁ブレーキ60の繰り返しの使用により摩擦部材65の摩耗によってギャップの大きさが大きくなった場合には、解放状態と制動状態とを切り替える切替動作におけるブレーキ駆動電圧が大きくなる。
【0026】
たとえば、電磁ブレーキ60が無励磁型ブレーキである場合において、電磁ブレーキ60に印加される電圧を0Vから24Vまで徐々に上昇させた場合には、電圧が24Vまで上昇する前に、制動状態から解放状態に切り替えられる。この制動状態から解放状態に切り替えられる切替動作におけるブレーキ駆動電圧を、吸引電圧とする。また、電磁ブレーキ60が無励磁型ブレーキである場合において、印加される電圧を24Vから0Vまで徐々に下降させた場合には、電圧が0Vまで下降する前に、解放状態から制動状態に切り替えらえれる。この解放状態から制動状態に切り替えられる切替動作におけるブレーキ駆動電圧を、釈放電圧とする。吸引電圧および釈放電圧の値、または、吸引電圧および釈放電圧の経時的な変化、および変化の傾向を検出することによって、電磁ブレーキ60における摩擦部材65の摩耗などの電磁ブレーキ60の劣化診断、および、寿命予測が可能となる。たとえば、摩擦部材65の摩耗度合いが大きくなると、吸引電圧が上昇する。
【0027】
また、
図2に示すように、ロボットコントローラ20は、制御部21、ブレーキ電源部22、ブレーキ電流検出部23、および、モータ電流検出部24を有する。
【0028】
制御部21は、CPU(Central Processing Unit)などの演算装置と、RAM(Random Access Memory)およびROM(Read Only Memory)などのメモリと、ハードディスクなどの記憶装置とを含むコンピュータである。制御部21は、記憶装置に記憶されたプログラムおよびパラメータなどに基づいて、演算装置による制御処理を実行する。また、制御部21は、通信モジュールを含む。制御部21は、通信モジュールを介して学習装置30および検査装置40の各々と互いに通信する。制御部21は、ロボット10の各部の動作を制御する。制御部21は、たとえば、ロボット10の動作の全体の制御を行うメインCPUとモータ50に供給される電流の制御を行うサーボCPUとを有する。制御部21のサーボCPUは、モータ50に供給される電流を生成するモータドライバを動作させる動作信号を出力する。なお、制御部21が1つのCPUにより制御処理を行うようにしてもよい。
【0029】
ブレーキ電源部22は、電磁ブレーキ60のコイル62に所定の電圧を印加する。ブレーキ電源部22は、制御部21の制御によりコイル62に印加する電圧の大きさを変更する。ブレーキ電流検出部23は、電磁ブレーキ60のコイル62に流れる電流を検出する。ブレーキ電流検出部23は、たとえば、シャント抵抗器を含む。モータ電流検出部24は、モータ50のステータ53のコイルに供給されるモータ駆動電流を検出する。モータ電流検出部24は、たとえば、シャント抵抗器を含む。ブレーキ電流検出部23およびモータ電流検出部24の各々の検出結果は、制御部21に対して出力される。制御部21は、たとえば、エンコーダ51からのモータ50の回転角度の位置の検出値と、モータ50に対する位置の指令値との差を用いたフィードバック制御により、モータ50の回転角度の位置を制御する。
【0030】
従来では、電磁ブレーキ60の切替動作におけるコイル62のインダクタンスの変化による電磁ブレーキ60のコイル62に流れる電流の変化を電気回路などにより検出するとともに、検出されたコイル62に流れる電流の変化量、電流の変化量の微分値、または、電流の変化量の2回微分値などを、予め設定されたしきい値と比較することによって、切替動作のタイミングが推定されていた。第1実施形態によるロボットシステム100では、上記のように、学習装置30により生成された学習済みモデル80を用いて電磁ブレーキ60の異常が判定される。
【0031】
学習装置30は、CPUなどからなる1または複数の演算装置と、ROM、RAM、および、ハードディスクなどの記憶装置を含んだ記憶部とを含むコンピュータである。また、学習装置30は、通信モジュールを含む。学習装置30は、通信モジュールを介してロボットコントローラ20および検査装置40の各々と互いに通信する。学習装置30は、記憶部に記憶された所定のプログラムが実行されることにより、電磁ブレーキ60の異常を判定するための学習済みモデル80を機械学習により生成する。学習済みモデル80の生成方法の詳細は後述する。
【0032】
また、ロボットシステム100は、動作音検出部70を備えている。第1実施形態では、動作音検出部70は、電磁ブレーキ60の制動状態と開放状態とが切り替えられる切替動作の切替タイミングを検出する。具体的には、動作音検出部70は、電磁ブレーキ60の切替動作の切替タイミングを検出するために切替動作における動作音を検出する。なお、動作音検出部70は、動作検出部の一例である。
【0033】
たとえば、
図3に示すように、動作音検出部70は、モータ50に配置された電磁ブレーキ60に取り付けられているマイクロフォンを含む。たとえば、動作音検出部70は、ブラケット52に配置されている。動作音検出部70は、検出された音声信号をロボットコントローラ20の制御部21に対して出力する。動作音検出部70は、電磁ブレーキ60の切替動作において、アーマチュア64が移動することにより生じる動作音を検出する。
【0034】
図2に示すように、検査装置40は、CPUなどからなる1または複数のプロセッサを有する制御部41と、ROM、RAM、および、ハードディスクなどの記憶装置を含んだ記憶部42とを含むコンピュータである。検査装置40は、たとえば、作業者により用いられるパーソナルコンピュータ、または、タブレットPCである。検査装置40は、液晶表示装置などの表示部43と、キーボードおよびマウスなどの入力装置からなる操作部44とを備えている。検査装置40は、電磁ブレーキ60の異常を判定するブレーキ判定方法の制御処理を実行する。記憶部42には、学習装置30により生成された学習済みモデル80、プログラム42a、および、ブレーキ判定方法を実行するための各種のパラメータが記憶されている。なお、プログラム42aは、ブレーキ判定プログラムの一例である。
【0035】
第1実施形態によるブレーキ判定方法は、コンピュータである検査装置40にプログラム42aを実行させることにより実施される。検査装置40は、記憶部42に記憶されたプログラム42aを制御部41に実行させることにより、電磁ブレーキ60の異常の判定を行う。プログラム42aは、光学ディスク、磁気ディスク、不揮発性半導体メモリなどのコンピュータ読み取り可能な記録媒体から読み出される他、インターネットなどのネットワークやLAN(Local Area Network)などの伝送経路を介して外部サーバなどから提供されてもよい。
【0036】
第1実施形態によるロボットシステム100では、たとえば、検査装置40によるブレーキ判定方法は、ロボット10の設置時や、設置されたロボット10の定期的なメンテナンスにおいて実行される。そして、ロボットシステム100では、検査装置40によるブレーキ判定方法の前に、予め、学習装置30によって学習済みモデル80の生成が行われる。学習済みモデル80の生成は、たとえば、ロボット10の出荷前に行われる。そして、生成された学習済みモデル80が、シリアル通信やインターネットなどのネットワークやLANなどの伝送経路を介して、学習装置30から検査装置40に送信される。
【0037】
(学習済みモデルの生成方法)
図4から
図8までを参照して、学習装置30による学習済みモデル80の生成方法について説明する。学習済みモデル80の生成方法におけるステップS1からステップS3までの制御処理は、学習装置30により実行される。
【0038】
まず、ステップS1において、ブレーキ電流検出部23による電磁ブレーキ60に流れる電流の検出結果に基づく電流信号が取得される。すなわち、ブレーキ電流検出部23により検出された検出信号に基づいて、機械学習における教師データの説明変数としての電流信号が取得される。
【0039】
図5に示すように、電流信号を取得するために、ロボットコントローラ20のブレーキ電源部22は、徐々に大きさが変化する電圧を、電磁ブレーキ60のコイル62に対して印加する。たとえば、ブレーキ電源部22は、制動状態の電磁ブレーキ60に対して、20秒間において、0Vから24Vまで一定の割合で徐々に値を大きく変化させながら電圧を印加する。
図5に示す例では、タイミングt1において、ブレーキ電源部22により印加される電圧の変化が開始され、タイミングt2において、ブレーキ電源部22により印加される電圧の変化が終了される例を示している。タイミングt1では、電磁ブレーキ60に印加される電圧は0Vであり、タイミングt2では、電磁ブレーキ60に印加される電圧は24Vである。電磁ブレーキ60は、印加される電圧が24Vに到達する前に、制動状態から解放状態に切り替えられる。たとえば、ブレーキ電源部22は、所定の制御周期ごとに一定の割合で印加する電圧を変化させる。一例として、ブレーキ電源部22は、所定の制御周期として10ミリ秒ごとに、0Vから12mVずつ印加する電圧を大きくすることによって、20秒間かけて24Vまで徐々に電圧を大きくする。
【0040】
図6に示すように、ロボットコントローラ20のブレーキ電流検出部23は、ブレーキ電源部22により徐々に大きさが変化する電圧が印加されることにより電磁ブレーキ60に流れる電流を検出するとともに、検出結果を制御部21に対して出力する。すなわち、タイミングt1からタイミングt2までの間に検出された電磁ブレーキ60のコイル62に流れる電流の検出結果が制御部21により取得される。電磁ブレーキ60では、切替動作が行われる切替タイミングにおいて、アーマチュア64とヨーク61との位置関係によりコイル62のインダクタンスが変化する。そのため、
図6のタイミングt3で示されるように、切替動作が行われた場合において検出される電流が変化する。たとえば、
図6に示す例では、タイミングt1からタイミングt3にかけて、時間経過に伴って線形に値が増加する電流が検出されているが、タイミングt3において、値が小さく振動するように変化している。ロボットコントローラ20の制御部21は、タイミングt1からタイミングt2までの電流の検出結果を取得するとともに、取得された検出結果を学習装置30に対して出力する。学習装置30は、徐々に大きさが変化する電圧により検出された電流の検出結果を、電流の波形を表す時系列データとしての電流信号として取得する。
【0041】
次に、ステップS2において、電磁ブレーキ60の切替動作の切替タイミングを示すブレーキ動作信号が取得される。すなわち、機械学習における教師データの目的変数として、動作音検出部70により検出された検出信号に基づくブレーキ動作信号が取得される。
【0042】
図7に示すように、動作音検出部70は、ブレーキ電源部22により徐々に大きさが変化する電圧の印加が開始されるタイミングt1から、ブレーキ電源部22により印加される電圧の変化が終了されるタイミングt2までの間において、電磁ブレーキ60の切替動作における動作音を検出する。そして、動作音検出部70により検出された検出結果を示す検出信号が、ロボットコントローラ20の制御部21に出力される。制御部21は、たとえば、動作音の検出結果を示す検出信号を取得するとともに、取得された検出信号を、整流するとともに積分フィルタなどによって平滑する。検出信号の平滑は、ノイズによる誤動作を抑制するために行われる。そして、制御部21は、整流して平滑された検出信号を、比較器により所定のしきい値と比較することによって、切替動作における動作音が検出されたタイミングを表す信号を、電磁ブレーキ60の切替動作における切替タイミングを示すブレーキ動作信号として取得する。制御部21は、たとえば、切替動作においてブレーキ電源部22により印加される電圧の変化が開始された時点であるタイミングt1から、電磁ブレーキ60の制動状態と切替状態とが切り替えられた切替タイミングの時点であるタイミングt4までの時間を表すブレーキ動作信号を取得する。具体的には、制御部21は、タイミングt1からタイミングt4までの時間を、タイミングt1から、ブレーキ電源部22により印加される電圧の変化が終了されるタイミングt2までの時間に対する割合によって表されたブレーキ動作信号を取得する。たとえば、タイミングt1からタイミングt2までが20秒であり、タイミングt1からタイミングt4までの時間が17秒である場合には、制御部21は、ブレーキ動作信号として、「85%」という数値を示す信号を取得する。そして、学習装置30は、制御部21から出力されたブレーキ動作信号を取得する。タイミングt1、t2、および、t4は、たとえば、制御部21の制御周期に基づいて取得される。
【0043】
次に、ステップS3において、ステップS1において取得された電流信号を説明変数とし、ステップS2において取得されたブレーキ動作信号を目的変数として、学習済みモデル80が機械学習により生成される。
【0044】
図8に示すように、学習装置30は、機能的な構成として、教師データ取得部31、評価部32、および、更新部33を有する。学習装置30は、電流信号を機械学習における教師データの説明変数として取得するとともに、ブレーキ動作信号を機械学習における教師データの目的変数として取得することによって、説明変数と目的変数とを用いた機械学習を繰り返すことにより学習済みモデル80を生成していく。
【0045】
具体的には、学習装置30の教師データ取得部31は、ロボットコントローラ20の制御部21から、説明変数である電流信号と目的変数であるブレーキ動作信号とを、機械学習における教師データとして取得する。教師データ取得部31は、時系列データである電流信号を教師データの説明変数として取得するとともに、所定の数値を示すブレーキ動作信号を教師データの目的変数として取得する。そして、学習装置30は、説明変数である電流信号を機械学習モデルに与えることによって、機械学習モデルから学習用出力データを出力させる。学習用出力データは、目的変数であるブレーキ動作信号と同様のデータである。評価部32は、機械学習モデルから出力された学習用出力データを取得する。そして、評価部32は、取得された学習用出力データと、目的変数であるブレーキ動作信号とを比較することによって、機械学習モデルの予測の精度を評価する。すなわち、評価部32は、目的変数であるブレーキ動作信号を正解データとして、学習用出力データの評価を行う。評価部32は、たとえば、損失関数を用いて機械学習モデルの予測の精度を評価する。損失関数は、学習用出力データと学習用の目的変数である正解データとの差異の程度を表す関数である。損失関数の算出値が0に近いほど、機械学習モデルの精度が高いことが示される。評価部32は、損失関数の算出値に基づく評価結果を更新部33に対して出力する。更新部33は、評価部32からの評価結果に応じて、機械学習モデルの各種のパラメータの値を変化させることによって、機械学習モデルを更新する。学習装置30は、機械学習モデルに対する学習用入力データである電流信号の入力、評価部32に対する学習用出力データの出力、評価部32によるブレーキ動作信号に基づく予測の精度の評価、そして、更新部33による機械学習モデルの更新を、機械学習モデルによる予測の精度が予め設定された値となるまで、繰り返し行う。学習装置30は、予測の精度が予め設定された値よりも大きい値となった機械学習モデルを、機械学習による学習が完了した学習済みモデル80として、記憶部に記憶する。
【0046】
学習装置30による機械学習は、正解データであるブレーキ動作信号を用いる回帰型の教師あり学習に相当する。また、学習装置30による機械学習は、たとえば、深層学習により行われても良い。深層学習では、適切な特徴量が自動的に選択される処理が行われるため、作業者による特徴量の選択が行われずとも、自動的に選択された特徴量により学習済みモデル80の構築が行われる。上記のような機械学習によって、学習装置30は、電流信号とブレーキ動作信号との関係性が学習された学習済みモデル80を生成する。学習装置30による機械学習では、たとえば、部分的最小二乗法、または、主成分分析法が用いられる。
【0047】
なお、学習装置30では、複数のロボット10を用いて機械学習が行われても良い。学習装置30は、複数のロボット10の各々の関節部に配置されたモータ50の電磁ブレーキ60における電流信号を説明変数として取得するとともに、取得された電流信号に対応するブレーキ動作信号を目的変数として取得する。たとえば、複数のロボット10の各々において、電磁ブレーキ60の摩耗度合いが互いに異なる。すなわち、学習装置30は、電磁ブレーキ60の摩耗度合いの互いに異なる複数種類の教師データを用いることによって、機械学習により学習済みモデル80を生成する。
【0048】
(第1実施形態によるブレーキ判定方法の制御処理)
次に、
図9から
図12までを参照して、第1実施形態におけるロボットシステム100による学習済みモデル80を用いたブレーキ判定方法の制御処理をフローチャートに基づいて説明する。なお、ブレーキ判定方法におけるステップS11からステップS14までの制御処理は、検査装置40の制御部41によってプログラム42aが実行されることによって実施される。たとえば、検査装置40の操作部44に対する作業者による入力操作によって、ブレーキ判定方法の制御処理を開始する指示が受け付けられる。検査装置40は、ロボットコントローラ20の制御部21に対して、ブレーキ判定方法の制御処理が開始されたことを示す信号を出力する。
【0049】
まず、ステップS11において、学習済みモデル80の生成方法と同様に、電流信号が取得される。すなわち、ブレーキ電源部22により徐々に大きさが変化する電圧が印加されることにより電磁ブレーキ60に流れる電流の検出結果に基づく電流信号が取得される。
【0050】
図10に示すように、ロボットコントローラ20のブレーキ電源部22は、学習済みモデル80の生成方法におけるステップS1と同様に、電流信号を取得するために、徐々に大きさが変化する電圧を、電磁ブレーキ60のコイル62に対して印加する。ブレーキ電源部22は、ステップS1と同様に、タイミングt11からタイミングt12までの間に、20秒間において、0Vから24Vまで徐々に値を大きく変化させながら電圧を印加する。そして、ロボットコントローラ20のブレーキ電流検出部23は、タイミングt11からタイミングt12までの間にブレーキ電源部22により徐々に大きさが変化する電圧が印加されることにより電磁ブレーキ60に流れる電流を検出するとともに、検出結果を制御部21に対して出力する。
図10のタイミングt13に示されるように、学習済みモデル80の生成と同様に、切替動作が行われた場合に、電磁ブレーキ60のコイル62のインダクタンスが変化するため、コイル62に流れる電流に変化が生じる。これに加えて、
図10のタイミングt15に示されるように、検査装置40により取得される電流信号には、ロボット10が設置されている場所の周囲に配置されたスポット溶接機やアーク溶接機などに起因するノイズ、または、モータ50のステータ53から発生する比較的大きい回転磁場からコイル62に対して漏れ出す磁場に起因するノイズが含まれる場合がある。
【0051】
検査装置40は、機械学習における教師データの説明変数と同様に徐々に大きさが変化する電圧により検出された電流の検出結果を、電流の波形を表す時系列データとしての電流信号として取得する。すなわち、ブレーキ判定方法の制御処理において取得される電流信号は、学習済みモデル80の生成において電磁ブレーキ60に印加される電圧と同様の態様を有する電圧により検出される。言い換えれば、検査装置40は、学習済みモデル80の生成と同様の電圧値、および、変化量を有する電圧が電磁ブレーキ60に印加されることにより電磁ブレーキ60に流れる電流の検出結果を、電流信号として取得する。したがって、
図5のタイミングt1からタイミングt2までの長さは、
図10のタイミングt11からタイミングt12までの長さと等しい。また、タイミングt1における電圧値とタイミングt11における電圧値は互いに等しく、また、タイミングt2における電圧値とタイミングt12における電圧値も互いに等しい。また、タイミングt1からタイミングt2にかけての電圧の変化の割合は、タイミングt11からタイミングt12にかけての電圧の変化の割合と等しい。
【0052】
次に、ステップS12において、学習装置30において機械学習により生成された学習済みモデル80を用いることによって、ステップS11において取得された電流信号に対する学習済みモデル80からの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号が取得される。
【0053】
図11に示すように、検査装置40の制御部41は、取得された電流信号を学習済みモデル80に入力することによって、学習済みモデル80による予測値である推定結果の出力として、推定ブレーキ動作信号を取得する。推定ブレーキ動作信号は、学習装置30における機械学習において目的変数として用いられたブレーキ動作信号と同様に、切替動作においてブレーキ電源部22により印加される電圧の変化が開始された時点であるタイミングt11から切替動作における切替タイミングの時点であるタイミングt14までの時間を表す信号である。タイミングt14は、推定ブレーキ動作信号により切替動作において推定された切替タイミングである。
図11では、推定ブレーキ動作信号として、「85%」の値が推定値として出力された例を示している。機械学習により生成された学習済みモデル80を用いたブレーキ動作信号の推定では、
図10のタイミングt15において示されるように電流信号においてノイズに起因する変化が含まれる場合にも、ノイズに起因する電流の変化と、切替動作による電流の変化とが互いに区別された状態で、ブレーキ動作信号が推定される。
【0054】
次に、ステップS13において、推定されたブレーキ駆動電圧が取得される。具体的には、ステップS12において取得された推定ブレーキ動作信号に基づいて、電磁ブレーキ60の切替動作の切替タイミングにおいて電磁ブレーキ60に印加されているブレーキ駆動電圧が取得される。
【0055】
図12に示すように、検査装置40の制御部41は、ロボットコントローラ20の制御部21から、電流信号が取得されたタイミングt11からタイミングt12までの間においてブレーキ電源部22により電磁ブレーキ60に印加された電圧を時系列データとして取得する。ブレーキ電源部22により印加された電圧は、たとえば、ロボットコントローラ20のブレーキ電源部22を動作させるための制御量に基づいて取得される。そして、検査装置40は、電流信号の取得のために印加された電圧と、学習済みモデル80からの出力として取得された推定ブレーキ動作信号とに基づいて、切替動作の切替タイミングにおいて電磁ブレーキ60に印加されていた電圧であるブレーキ駆動電圧の値を取得する。たとえば、検査装置40の制御部41は、ブレーキ動作信号が85%である場合には、タイミングt11からタイミングt12までの期間のうちの、85%に対応する時点における電圧の値を、ブレーキ駆動電圧として取得する。
【0056】
次に、ステップS14において、電磁ブレーキ60の異常が判定される。検査装置40は、予め記憶部42に判定用のしきい値を記憶している。そして、検査装置40の制御部41は、ステップS13において取得されたブレーキ駆動電圧と記憶部42に記憶されている判定用のしきい値とを比較することによって、電磁ブレーキ60の異常を判定する。たとえば、制御部41は、電磁ブレーキ60を制動状態から解放状態に切り替えるためのブレーキ駆動電圧が、判定用のしきい値よりも大きいと判断された場合に、電磁ブレーキ60の摩擦部材65の摩耗が大きいとして、電磁ブレーキ60に異常が生じていると判断する。たとえば、制御部41は、電磁ブレーキ60の異常が判定された場合に、異常が判定されたことを示す情報を表示部43に表示する。
【0057】
なお、ロボットシステム100では、検査装置40によるステップS11からステップS14までのブレーキ判定方法の制御処理が行われている期間において、ロボットコントローラ20の制御部21により、モータ50のサーボ制御が実行される。すなわち、電磁ブレーキ60の判定において、電磁ブレーキ60を制動状態から解放状態に切り替える場合にも、ロボット10が動作せず、現在の姿勢を保つように、モータ50の駆動が制御される。
【0058】
[第1実施形態の効果]
第1実施形態では、以下のような効果を得ることができる。
【0059】
ロボットシステム100は、上記のように、ブレーキ電流検出部23による検出結果に基づく電流信号を説明変数とし、電磁ブレーキ60の制動状態と解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデル80を用いることによって、電流信号に対する学習済みモデル80からの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部41を備える。これにより、機械学習により生成された学習済みモデル80からの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキ60の切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量、または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することによってブレーキの切替動作を予測する場合に比べて、電磁ブレーキ60の切替動作の切替タイミングを精度よく予測できる。その結果、予測された切替タイミングに基づいて電磁ブレーキ60が正常に動作しているか否かを判定できるため、電磁ブレーキ60の異常を精度よく判定できる。
【0060】
ロボットシステム100は、電磁ブレーキ60に対して徐々に大きさが変化する電圧を印加するブレーキ電源部22を備える。制御部41は、ブレーキ電源部22により徐々に大きさが変化する電圧が印加されることにより電磁ブレーキ60に流れる電流の検出結果に基づく電流信号を取得する。また、制御部41は、取得された電流信号に対する学習済みモデル80からの予測値の出力として推定ブレーキ動作信号を取得する。これにより、徐々に大きさが変化する電圧が印加されることにより、徐々に大きさが変化する電流信号を取得できるので、離散的に値が変化する電圧を印加する場合に比べて、電磁ブレーキ60の制動状態と開放状態とが切り替えられる切替動作の切替タイミングを、より精度よく取得することができる。そのため、電磁ブレーキ60の異常をより精度よく判定できる。
【0061】
制御部41は、取得された推定ブレーキ動作信号に基づいて、切替動作の切替タイミングにおいて電磁ブレーキ60に印加されているブレーキ駆動電圧を取得する。ここで、電磁ブレーキ60において、ブレーキのオンとオフとの切替に伴って移動するアーマチュア64とコイル62が配置されたヨーク61との間のギャップの大きさは、電磁ブレーキ60の摩耗に起因して変化する。そして、切替タイミングにおけるブレーキ駆動電圧は、電磁ブレーキ60の摩耗に起因するギャップの大きさに応じて変化する。このため、切替タイミングにおいて電磁ブレーキ60に印加されているブレーキ駆動電圧を取得することによって、電磁ブレーキ60がどの程度摩耗しているかを把握できる。そのため、ブレーキ駆動電圧を取得することによって、電磁ブレーキ60の異常を精度よく判定できる。
【0062】
ロボットシステム100は、切替動作の切替タイミングを検出する動作検出部としての動作音検出部70と、電流信号を説明変数として取得するとともに、動作検出部により検出された切替動作の状態を示すブレーキ動作信号を目的変数として取得することによって、説明変数と目的変数とを用いた機械学習により学習済みモデル80を生成する学習部としての学習装置30とを、備える。これにより、動作音検出部70により切替動作の切替タイミングを検出できるので、切替動作の切替タイミングを示すブレーキ動作信号を容易に取得できる。そのため、学習装置30において、学習済みモデル80を容易に生成できる。
【0063】
ロボットシステム100は、切替動作の切替タイミングを検出するために切替動作における動作音を検出する動作検出部としての動作音検出部70を含む。学習部としての学習装置30は、動作音検出部70により検出された検出信号に基づく目的変数としてのブレーキ動作信号を取得する。ここで、電磁ブレーキ60では、切替動作においてアーマチュア64の動作に伴って動作音が生じる。そこで、動作音検出部70により動作音を検出することによって切替動作の切替タイミングを示すブレーキ動作信号を容易に精度よく取得することができる。その結果、生成される学習済みモデル80による予測の精度を容易に向上できる。また、動作音を検出することによって、電磁ブレーキ60の切替動作における切替タイミングを検出することができるので、モータ50を動作させずに、電磁ブレーキ60の制動状態と開放状態とが切り替えられているか否かを検出できる。そのため、切替タイミングを検出するために、ロボット10を動作させる必要が無いため、ロボット10の動作範囲における物理的な干渉を考慮せずに、ブレーキ動作信号を容易に取得できる。
【0064】
制御部41は、学習済みモデル80からの予測値の出力として、切替動作においてブレーキ電源部22により印加される電圧の変化が開始された時点から、電磁ブレーキ60の制動状態と解放状態とが切り替えられた切替タイミングの時点までの時間を表す推定ブレーキ動作信号を取得する。これにより、学習済みモデル80が、予測値として時間を表す推定ブレーキ動作信号を出力するように、機械学習により生成されているため、連続的なデータである時系列データではなく、1つの値を示すデータとして推定ブレーキ動作信号を出力するように学習済みモデル80を生成できる。そのため、時系列データに比べて学習済みモデル80の学習におけるデータの処理が容易となるため、学習済みモデル80の学習における学習部としての学習装置30の処理負担を軽減できる。
【0065】
[第2実施形態]
次に、
図13および
図14を参照して、第2実施形態によるロボットシステム200の構成について説明する。第2実施形態では、ロボットシステム200は、切替動作の動作音を検出した動作音検出部70を備える第1実施形態のロボットシステム100とは異なり、切替動作における振動を検出する振動検出部270を備えている。なお、上記第1実施形態と同様の構成については、同じ符号を付して説明を省略する。
【0066】
図13に示すように、第2実施形態によるロボットシステム200は、ロボットコントローラ220を含むロボット210、および、振動検出部270を備えている。ロボットコントローラ220は、制御部221を有している。制御部221は、第1実施形態の制御部21と同様に、ロボット210の各部の動作を制御する。第2実施形態では、制御部221は、学習装置30に出力するブレーキ動作信号を、振動検出部270の検出結果に基づいて取得する。振動検出部270は、動作検出部の一例である。
【0067】
振動検出部270は、電磁ブレーキ60の切替動作の切替タイミングを検出するために切替動作における振動を検出する。振動検出部270は、たとえば、AEセンサ(Acoustic Emission センサ)を含む。振動検出部270は、電磁ブレーキ60の切替動作において、アーマチュア64の移動により発生する弾性波を検出する。振動検出部270は、たとえば、第1実施形態の動作音検出部70と同様に、モータ50のブラケット52に配置されている。振動検出部270は、検出された振動の検出結果を示す検出信号をロボットコントローラ220の制御部221に対して出力する。
【0068】
図14に示すように、制御部221は、第1実施形態の制御部21と同様に、取得された検出信号に対して、整流して平滑する処理を行うとともに、平滑された検出信号を比較器により比較することによって、電磁ブレーキ60の切替動作における切替タイミングを示すブレーキ動作信号を取得する。取得されたブレーキ動作信号は、たとえば、第1実施形態と同様に、割合を表す数値によって切替タイミングが示された信号である。制御部221により取得されたブレーキ動作信号は、第1実施形態と同様に、学習装置30に対して出力される。
【0069】
図13に示すように、学習装置30は、第1実施形態と同様に、制御部221により取得されたブレーキ動作信号を目標変数として取得する。そして、学習装置30は、第1実施形態と同様に、制御部221により取得された電流信号を説明変数とし、ブレーキ動作信号を目標変数として、機械学習により、学習済みモデル280を生成する。学習装置30による学習済みモデル280の生成方法は、第1実施形態の学習済みモデル80の生成方法と同様である。そして、生成された学習済みモデル280は、検査装置40の記憶部42に記憶される。検査装置40の制御部41は、第1実施形態と同様のブレーキ判定方法の制御処理を実行することによって、学習済みモデル280を用いて推定ブレーキ動作信号を取得する。また、第2実施形態のその他の構成は、第1実施形態と同様である。
【0070】
[第2実施形態の効果]
第2実施形態によるロボットシステム200は、上記のように、切替動作の切替タイミングを検出するために切替動作における振動を検出する動作検出部としての振動検出部270を含む。学習部としての学習装置30は、振動検出部270により検出された検出信号に基づく目的変数としてのブレーキ動作信号を取得する。ここで、電磁ブレーキ60では、切替動作においてアーマチュア64の動作に伴って振動が生じる。そこで、振動検出部270により切替動作に伴う振動を検出することによって切替動作の切替タイミングを示すブレーキ動作信号を容易に精度よく取得することができる。その結果、生成される学習済みモデル280による予測の精度を容易に向上できる。また、切替動作に伴う振動を検出することによって、電磁ブレーキ60の切替動作における切替タイミングを検出することができるので、モータ50を動作させずに、電磁ブレーキ60の制動状態と開放状態とが切り替えられているか否かを検出できる。そのため、切替タイミングを検出するために、ロボット10を動作させる必要が無いため、ロボット10の動作範囲における物理的な干渉を考慮せずに、ブレーキ動作信号を容易に取得できる。なお、第2実施形態によるその他の効果は、第1実施形態と同様である。
【0071】
[第3実施形態]
次に、
図15を参照して、第3実施形態によるロボットシステム300の構成について説明する。第3実施形態では、ロボットシステム300は、切替動作の動作音を検出した動作音検出部70を備える第1実施形態のロボットシステム100とは異なり、切替動作におけるモータ駆動電流を検出する。なお、上記第1実施形態と同様の構成については、同じ符号を付して説明を省略する。
【0072】
図15に示すように、第3実施形態によるロボットシステム300は、ロボットコントローラ320を含むロボット310を備えている。ロボットコントローラ320は、制御部321を有している。制御部321は、第1実施形態の制御部21と同様に、ロボット310の各部の動作を制御する。第3実施形態では、制御部321は、学習装置30に出力するブレーキ動作信号を、モータ電流検出部24の検出結果であるモータ駆動電流に基づいて取得する。すなわち、第3実施形態では、モータ電流検出部24が、動作検出部の一例である。モータ電流検出部24は、第1実施形態と同様に、モータ50のステータ53のコイルに供給されるモータ駆動電流を検出するとともに、モータ駆動電流の検出結果を制御部321に対して出力する。第3実施形態では、モータ電流検出部24は、電磁ブレーキ60の切替動作の切替タイミングを検出するためにモータ駆動電流を検出する。
【0073】
次に、
図16を参照して、ロボットコントローラ320によるブレーキ動作信号の取得の制御処理について説明する。なお、ステップS331からステップS335までの制御処理は、ロボットコントローラ320の制御部321により実行される。なお、
図16では、電磁ブレーキ60が制動状態から解放状態に切り替えられる切替動作において、ブレーキ動作信号を取得する場合の例を示している。
【0074】
まず、ステップS331において、ブレーキ動作信号の取得の制御処理が開始される。具体的には、初期設定として、電磁ブレーキ60に印加される電圧が0に設定されるとともに、タイミングを表すカウンタの数値であるnが1に設定される。そして、モータ50に対して電流が流されることによって、モータ50に駆動力が生じている状態にされる。ステップS331では、モータ50に駆動力が生じているが、電磁ブレーキ60が制動状態であるため、モータ50の出力軸であるシャフト55は回転しない。
【0075】
次に、ステップS332において、電磁ブレーキ60に印加される電圧である印加電圧が更新されて電圧を予め設定されているΔV分増加させるとともに、カウンタの数値であるnを1増やすインクリメントが行われる。そして、ステップS333において、モータ駆動電流が変化したか否かが判断される。すなわち、ステップS332において、印加電圧を更新することによって、電磁ブレーキ60が制動状態から解放状態に切り替えられた場合には、モータ50が回転を開始するため、モータ50に流れるモータ駆動電流が小さくなる。一方で、印加電圧をΔV増加させた場合にも電磁ブレーキ60が解放状態に切り替えられない場合には、モータ駆動電流の値は変化しない。ステップS333において、モータ駆動電流が変化したと判断された場合には、ステップS334に進む。モータ駆動電流が変化したと判断されない場合には、ステップS332に戻り、再度ステップS332において、印加電圧が更新され、カウンタの数値nがインクリメントされる。
【0076】
ステップS334では、カウンタの数値nの値が取得される。すなわち、電磁ブレーキ60の切替動作が行われた切替タイミングの時点におけるカウンタの数値nが取得される。ステップS334において取得されるカウンタの数値nは、ステップS332におけるインクリメントの処理が行われた回数を示す。
【0077】
そして、ステップS335において、電磁ブレーキ60の切替動作における切替タイミングを示すブレーキ動作信号が取得される。たとえば、ブレーキ動作信号は、第1実施形態と同様に、割合によって切替タイミングが示された信号である。たとえば、ステップS332およびステップS333は10ミリ秒の制御周期ごとに繰り返し実行される。ブレーキ電源部22による電圧の変化が20秒間にわたって実行される場合には、印加電圧の変化は、全体で2000カウント分となる。したがって、ステップS334において取得された切替タイミングの時点におけるカウンタの数値nを、全体のカウント数である2000で除することによって、切替タイミングが割合で示されたブレーキ動作信号が取得される。制御部321により取得されたブレーキ動作信号は、第1実施形態と同様に、学習装置30に対して出力される。
【0078】
図15に示すように、学習装置30は、第1実施形態と同様に、制御部321により取得されたブレーキ動作信号を目標変数として取得する。そして、学習装置30は、第1実施形態と同様に、制御部321により取得された電流信号を説明変数とし、ブレーキ動作信号を目標変数として、機械学習により、学習済みモデル380を生成する。学習装置30による学習済みモデル380の生成方法は、第1実施形態の学習済みモデル80の生成方法と同様である。そして、生成された学習済みモデル380は、検査装置40の記憶部42に記憶される。検査装置40の制御部41は、第1実施形態と同様のブレーキ判定方法の制御処理を実行することによって、学習済みモデル380を用いて推定ブレーキ動作信号を取得する。第3実施形態のその他の構成は、第1実施形態と同様である。
【0079】
[第3実施形態の効果]
第3実施形態によるロボットシステム300では、上記のように、動作検出部としてのモータ電流検出部24は、切替動作の切替タイミングを検出するためにモータ50に供給されるモータ駆動電流を検出する。学習部としての学習装置30は、モータ駆動電流に基づく目的変数としてのブレーキ動作信号を取得する。ここで、制動状態においてモータ50を回転させようとした場合と、解放状態においてモータ50を回転させようとした場合とにおいて、モータ50に供給されるモータ駆動電流の大きさは、互いに異なる値となる。そのため、モータ駆動電流の変化に基づいて、電磁ブレーキ60において制動状態と解放状態とが切り替えられたことを検出できる。その結果、周囲の雑音や振動などが大きい場合、または、切替動作に伴う動作音または振動が小さい場合においても、モータ駆動電流に基づいて切替動作の切替タイミングを示すブレーキ動作信号を取得することによって、電磁ブレーキ60の切替動作を精度よく予測可能な学習済みモデル380を生成できる。なお、第3実施形態によるその他の効果は、第1実施形態と同様である。
【0080】
[第4実施形態]
次に、
図17を参照して、第4実施形態によるロボットシステム400の構成について説明する。第4実施形態では、ロボットシステム400は、モータ駆動電流の変化により電磁ブレーキ60の切替動作が検出された第3実施形態のロボットシステム300とは異なり、モータ50の回転を検出するエンコーダ51の検出値に基づいて電磁ブレーキ60の切替動作を検出する。なお、上記第3実施形態と同様の構成については、同じ符号を付して説明を省略する。
【0081】
図17に示すように、第4実施形態によるロボットシステム400は、ロボットコントローラ420を含むロボット410を備えている。ロボットコントローラ420は、制御部421を有している。制御部421は、第3実施形態の制御部321と同様に、ロボット410の各部の動作を制御する。第4実施形態では、制御部421は、学習装置30に出力するブレーキ動作信号を、エンコーダ51からの出力に基づいて取得する。すなわち、第4実施形態では、エンコーダ51が、動作検出部の一例である。エンコーダ51は、第1実施形態と同様に、モータ50の回転を検出するとともにモータ50の回転の検出結果を制御部321に対して出力する。第4実施形態では、エンコーダ51は、電磁ブレーキ60の切替動作の切替タイミングを検出するためにモータ50の回転を検出する。
【0082】
次に、
図18を参照して、ロボットコントローラ420によるブレーキ動作信号の取得の制御処理について説明する。なお、ステップS431、ステップS432、ステップS434、および、ステップS435では、それぞれ、第3実施形態のステップS331、ステップS332、ステップS334、および、ステップS335と同様の制御処理が行われる。ステップS431からステップS435までの制御処理は、ロボットコントローラ420の制御部421により実行される。なお、
図18では、電磁ブレーキ60が制動状態から解放状態に切り替えられる切替動作において、ブレーキ動作信号を取得する場合の例を示している。
【0083】
まず、ステップS431において、第3実施形態のステップS331と同様に、電磁ブレーキ60に印加される電圧が0に設定されるとともに、タイミングを表すカウンタの数値であるnが1に設定される。次に、ステップS432において、第3実施形態のステップS332と同様に、電磁ブレーキ60に印加される電圧である印加電圧が更新されて電圧を予め設定されているΔV分増加させるとともに、カウンタの数値であるnを1増やすインクリメントが行われる。
【0084】
次に、ステップS433において、エンコーダ51の出力であるエンコーダ値が変化したか否かが判断される。すなわち、ステップS432において、印加電圧を更新することによって、電磁ブレーキ60が制動状態から解放状態に切り替えられた場合には、モータ50が回転を開始するため、エンコーダ51の出力であるエンコーダ値が変化する。一方で、印加電圧をΔV増加させた場合にも電磁ブレーキ60が解放状態に切り替えられない場合には、エンコーダ値は変化しない。ステップS433において、エンコーダ値が変化したと判断された場合には、ステップS434に進む。エンコーダ値が変化したと判断されない場合には、ステップS432に戻り、再度ステップS432において、印加電圧が更新され、カウンタの数値nがインクリメントされる。
【0085】
ステップS434では、第3実施形態のステップS334と同様に、カウンタの数値nの値が取得される。そして、ステップS435において、第3実施形態のステップS335と同様に、電磁ブレーキ60の切替動作における切替タイミングを示すブレーキ動作信号が取得される。たとえば、ブレーキ動作信号は、第3実施形態と同様に、割合によって切替タイミングが示された信号である。制御部421により取得されたブレーキ動作信号は、第3実施形態と同様に、学習装置30に対して出力される。
【0086】
図17に示すように、学習装置30は、第3実施形態と同様に、制御部421により取得されたブレーキ動作信号を目標変数として取得する。そして、学習装置30は、第3実施形態と同様に、制御部421により取得された電流信号を説明変数とし、ブレーキ動作信号を目標変数として、機械学習により、学習済みモデル480を生成する。学習装置30による学習済みモデル480の生成方法は、第1実施形態の学習済みモデル80の生成方法と同様である。そして、生成された学習済みモデル480は、検査装置40の記憶部42に記憶される。検査装置40の制御部41は、第1実施形態と同様のブレーキ判定方法の制御処理を実行することによって、学習済みモデル480を用いて推定ブレーキ動作信号を取得する。第4実施形態のその他の構成は、第3実施形態と同様である。
【0087】
[第4実施形態の効果]
第4実施形態によるロボットシステム400は、上記のように、切替動作の切替タイミングを検出するためにモータ50の回転を検出する動作検出部としてのエンコーダ51を含む。学習部としての学習装置30は、エンコーダ51からの出力に基づく目的変数としてのブレーキ動作信号を取得する。これにより、エンコーダ51からの出力によって、モータ50が回転したか否かを精度よく検出できるため、電磁ブレーキ60の切替動作により制動状態と開放状態とが切り替えられたか否かを精度よく検出することができる。その結果、電磁ブレーキ60の切替動作を精度よく予測可能な学習済みモデル480を生成できる。なお、第4実施形態によるその他の効果は、第3実施形態と同様である。
【0088】
[第5実施形態]
次に、
図19および
図20を参照して、第5実施形態によるロボットシステム500の構成について説明する。第5実施形態では、ロボットシステム500は、交流成分が抽出された電流信号を説明変数として学習された学習済みモデル580を用いる。なお、上記第1実施形態と同様の構成については、同じ符号を付して説明を省略する。
【0089】
図19に示すように、第5実施形態によるロボットシステム500は、ロボットコントローラ520を含むロボット510を備えている。ロボットコントローラ520は、制御部521を有している。制御部521は、第1実施形態の制御部21と同様に、ロボット510の各部の動作を制御する。
【0090】
図20に示すように、制御部521は、第1実施形態の制御部21と同様に、学習装置30に対して、ブレーキ電流検出部23により検出された検出信号に基づいて、機械学習における教師データの説明変数としての電流信号を出力する。第5実施形態では、制御部521は、ブレーキ電流検出部23により検出された電流の交流成分が抽出された電流信号を説明変数として学習装置30に対して出力する。具体的には、制御部521は、第1実施形態と同様に、ブレーキ電源部22により徐々に大きさが変化する電圧が印加されることにより電磁ブレーキ60に流れる電流のブレーキ電流検出部23による検出結果を取得する。そして、制御部521は、取得されたブレーキ電流検出部23による検出結果から、交流成分を抽出する処理を行う。電磁ブレーキ60に流れる電流は、ブレーキ電源部22により徐々に大きさが一定に変化する電圧を印加した場合、電磁ブレーキ60の切替動作の切替タイミングを除いて一定に変化する。そこで、制御部521は、たとえば、ブレーキ電源部22により印加される電圧の変化が開始されたタイミングt1から、切替動作が行われるよりも前の所定の時点であるタイミングt6までの電流の変化を検出する。タイミングt6は、たとえば、タイミングt1から3秒後の時点である。制御部521は、タイミングt1からタイミングt6までの期間において検出された電流の変化の傾きを取得するとともに、タイミングt1からタイミングt2までの全体の電流の検出結果から、取得された変化の傾きに対応する変化量分の差分を取得することによって、検出された電流の交流成分を抽出する。なお、制御部521は、ハイパスフィルタを用いて交流成分を抽出するようにしてもよい。
【0091】
図19に示すように、学習装置30は、制御部521により交流成分が抽出された電流信号を説明変数として取得する。そして、学習装置30は、第1実施形態と同様に、制御部521により取得された電流信号を説明変数とし、ブレーキ動作信号を目標変数として、機械学習により、学習済みモデル580を生成する。学習装置30による学習済みモデル580の生成方法は、第1実施形態の学習済みモデル80の生成方法と同様である。そして、生成された学習済みモデル580は、検査装置40の記憶部42に記憶される。なお、ロボットコントローラ520の制御部521は、ブレーキ判定方法の制御処理を行う場合にも、学習装置30と同様に、検査装置40に対して、交流成分が抽出された電流信号を出力する。検査装置40の制御部41は、学習済みモデル580を用いて、第1実施形態と同様のブレーキ判定方法の制御処理を実行することによって、交流成分が抽出された電流信号に対する学習済みモデル580からの予測値の出力として推定ブレーキ動作信号を取得する。また、第5実施形態のその他の構成は、第1実施形態と同様である。
【0092】
[第5実施形態の効果]
第5実施形態によるロボットシステム500では、上記のように、制御部41は、ブレーキ電流検出部23により検出された電流の交流成分が抽出された電流信号を説明変数として機械学習により生成された学習済みモデル580を用いることによって、電流信号に対する学習済みモデル580からの予測値の出力として推定ブレーキ動作信号を取得する。ここで、ブレーキ電流検出部23により検出された電流の電流信号において、電磁ブレーキ60の切替動作による電流信号の変化は、交流電流として現れる。そのため、交流成分が抽出された電流信号を説明変数として機械学習を行うことによって、切替動作による変化が抽出された状態の説明変数を用いて学習を行うことができる。なお、第5実施形態によるその他の効果は、第1実施形態と同様である。
【0093】
[第6実施形態]
次に、
図21および
図22を参照して、第6実施形態によるロボットシステム600の構成について説明する。第6実施形態では、ロボットシステム600は、切替動作の切替タイミングを示すブレーキ動作信号を目的変数として学習された学習済みモデル80を用いる第1実施形態のロボットシステム100とは異なり、切替動作におけるブレーキ駆動電圧であるブレーキ動作信号を目的変数とて学習された学習済みモデル680を用いる。なお、上記第1実施形態と同様の構成については、同じ符号を付して説明を省略する。
【0094】
図21に示すように、第6実施形態によるロボットシステム600は、ロボットコントローラ620を含むロボット610と、学習装置630と、検査装置640とを備えている。ロボットコントローラ620は、制御部621を有している。制御部621は、第1実施形態の制御部21と同様に、ロボット610の各部の動作を制御する。制御部621は、第1実施形態の制御部21と同様に、学習装置630に対して、ブレーキ電流検出部23により検出された検出信号に基づいて、機械学習における教師データの説明変数としての電流信号を出力する。なお、学習装置630は、学習部の一例である。
【0095】
図22に示すように、第6実施形態では、制御部621は、電磁ブレーキ60の切替動作において電磁ブレーキ60に印加されるブレーキ駆動電圧を、目的変数であるブレーキ動作信号として学習装置630に対して出力する。具体的には、制御部621は、第1実施形態の制御部21と同様に、動作音検出部70により検出された動作音に基づいて、ブレーキ電源部22により印加される電圧の変化が開始された時点であるタイミングt1から、電磁ブレーキ60の制動状態と切替状態とが切り替えられた切替タイミングの時点であるタイミングt4までの時間を表す割合を取得する。また、制御部621は、電流信号が取得されたタイミングt1からタイミングt2までの間において電磁ブレーキ60に印加された電圧を取得する。印加された電圧は、たとえば、ロボットコントローラ20のブレーキ電源部22を動作させるための制御量に基づいて取得される。そして、制御部621は、電流信号の取得のために印加された電圧と、動作音検出部70により検出された動作音に基づいて取得された切替タイミングを示す割合とに基づいて、切替動作の切替タイミングにおけるブレーキ駆動電圧の値を取得する。すなわち、制御部621は、動作音が検出されたタイミングにおいて電磁ブレーキ60に印加されていた電圧を、ブレーキ駆動電圧として取得する。制御部621は、取得されたブレーキ駆動電圧を、ブレーキ動作信号として学習装置630に対して出力する。
【0096】
図21に示すように、学習装置630は、ブレーキ駆動電圧であるブレーキ動作信号を目的変数として取得する。そして、学習装置630は、電流信号を説明変数として、ブレーキ駆動電圧であるブレーキ動作信号を目的変数として、機械学習を行うことによって学習済みモデル380を生成する。学習装置630による学習済みモデル680の生成方法は、第1実施形態の学習装置30による学習済みモデル80の生成方法と同様である。学習装置630は、ブレーキ駆動電圧を正解データとした機械学習を行うことによって、電流信号とブレーキ駆動電圧との関係性が学習された学習済みモデル680を生成する。生成された学習済みモデル680は、検査装置640の記憶部42に記憶される。
【0097】
検査装置640は、制御部641を含む。検査装置640は、記憶部42に記憶されたプログラム642aを制御部641に実行させることにより、第1実施形態の検査装置40と同様に電磁ブレーキ60の異常の判定を行う。なお、プログラム642aは、ブレーキ判定プログラムの一例である。
【0098】
(第6実施形態によるブレーキ判定方法の制御処理)
次に、
図23を参照して、第6実施形態におけるロボットシステム600によるブレーキ判定方法の制御処理をフローチャートに基づいて説明する。なお、ブレーキ判定方法におけるステップS611からステップS613までの制御処理は、検査装置640の制御部641によってプログラム642aが実行されることによって行われる。
【0099】
まず、ステップS611において、第1実施形態のステップS11と同様に、電磁ブレーキ60に流れる電流の検出結果に基づく電流信号が取得される。そして、ステップS612において、学習装置630において機械学習により生成された学習済みモデル680を用いることによって、ステップS611において取得された電流信号に対する学習済みモデル680からの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号が取得される。なお、第6実施形態では、電流信号とブレーキ駆動電圧との関係性が学習された学習済みモデル680から出力される推定ブレーキ動作信号は、学習済みモデル680によって推定されたブレーキ駆動電圧となる。たとえば、検査装置640において、学習済みモデル680に対して電流信号が入力された場合、「17.3V」などのブレーキ駆動電圧の値を推定した推定値が出力される。そして、ステップS613において、第1実施形態のステップS14と同様に、電磁ブレーキ60の異常が判定される。第6実施形態のその他の構成は、第1実施形態と同様である。
【0100】
[第6実施形態の効果]
第6実施形態では、以下のような効果を得ることができる。
【0101】
第6実施形態によるロボットシステム600は、上記のように、ブレーキ電流検出部23による検出結果に基づく電流信号を説明変数とし、電磁ブレーキ60の制動状態と解放状態とが切り替えられる切替動作において電磁ブレーキ60に印加されるブレーキ駆動電圧であるブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデル680を用いることによって、電流信号に対する学習済みモデル680からの予測値の出力として、推定されたブレーキ動作信号である推定ブレーキ動作信号を取得する制御部641を備える。これにより、機械学習により生成された学習済みモデル680からの予測値の出力として推定ブレーキ動作信号が取得されるため、電磁ブレーキ60の切替動作による電流信号の変化とノイズなどの外乱による電流信号の変化とを精度よく区別できる。そのため、電流信号の変化の量または、電流信号の変化の量の微分値を予め設定されたしきい値と比較することによってブレーキの切替動作におけるブレーキ駆動電圧を予測する場合に比べて、電磁ブレーキ60の切替動作におけるブレーキ駆動電圧を精度よく予測できる。その結果、予測されたブレーキ駆動電圧に基づいて電磁ブレーキ60が正常に動作しているか否かを判定できるため、電磁ブレーキ60の異常を精度よく判定できる。なお、第6実施形態によるその他の効果は、第1実施形態と同様である。
【0102】
[変形例]
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更(変形例)が含まれる。
【0103】
たとえば、上記第1から第6実施形態では、ブレーキ電源部22により徐々に値が大きくなる電圧を印加することによって、電磁ブレーキ60が制動状態から解放状態に切り替えられる切替動作における電流信号を取得することによって、電磁ブレーキ60の異常が判定される例を示したが、本開示はこれに限られない。本開示では、徐々に値が小さくなる電圧を印加することによって電流信号を取得するようにしてもよい。すなわち、電磁ブレーキが解放状態から制動状態に切り替えられる切替動作において、電流信号とブレーキ動作信号とを取得することによって、機械学習によって学習済みモデルを生成するとともに、生成された学習済みモデルを用いることによって解放状態から制動状態に切り替えられる切替動作における推定ブレーキ動作信号を取得するようにしてもよい。また、ブレーキ電源部により印加される電圧の値を徐々に大きくした後に徐々に小さくすることによって、制動状態から解放状態に切り替えられる切替動作と、解放状態から制動状態に切り替えられる切替動作との各々をまとめて判定するようにしてもよい。また、徐々に値が変化する電圧ではなく、離散的に値が変化する電圧によって、複数の値の電圧を電磁ブレーキに印加するようにしてもよい。また、ブレーキ電源部により印加される電圧の変化量および大きさは、対象となる電磁ブレーキの種類に応じて値を変更してもよい。すなわち、印加される電圧を、0Vから24V以外の値まで徐々に大きくするようにしてもよいし、電圧が変化する期間は20秒以外であってもよい。なお、定格電圧が24V仕様のブレーキを用いる場合は、余裕を見て、0Vから30Vまで印加するようにしても良い。
【0104】
また、上記第1から第6実施形態では、学習済みモデルからの出力に基づいてブレーキ駆動電圧を取得するとともに、取得されたブレーキ駆動電圧に基づいて電磁ブレーキ60の異常を判定する例を示したが、本開示はこれに限られない。本開示では、ブレーキ駆動電圧を取得せずに電磁ブレーキの異常を判定するようにしてもよい。たとえば、切替動作の切替タイミングを割合で示した推定ブレーキ動作信号が取得される場合に、取得された推定ブレーキ動作信号自体を、しきい値と比較することによって、電磁ブレーキの異常を判定するようにしてもよい。また、異常の判定を行わず、取得されたブレーキ駆動電圧、または、推定ブレーキ動作信号を出力するようにしてもよい。たとえば、取得されたブレーキ駆動電圧、または、推定ブレーキ動作信号を表示部に表示するようにしてもよい。また、異常の判定を行う場合に、異常が生じているか否かのみならず、将来的に異常が生じる可能性の有無、または、異常が生じるまでの期間の予測である寿命予測を、異常の判定として行うようにしてもよい。また、異常の判定を行う場合に、電磁ブレーキの劣化の度合いを判定するようにしてもよい。
【0105】
また、上記第1から第6実施形態では、ロボット10、210、310、410、510、610の動作を制御するロボットコントローラ20、220、320、420、520、620と、学習済みモデル80、280、380、480、580、680を生成する学習部としての学習装置30、630と、ブレーキ判定方法の制御処理を実行する検査装置40、640とが、互いに別個に配置されている例を示したが、本開示はこれに限られない。本開示では、ロボットの動作の制御と、学習済みモデルの生成と、ブレーキ判定方法の制御処理とのうちの少なくとも2つを、共通の制御装置により実行するようにしてもよい。また、動作検出部の検出結果に基づくブレーキ動作信号の取得の制御処理を、ロボットの動作を制御するロボットコントローラで行わず、学習装置において行うようにしてもよい。
【0106】
また、上記第1、第2、第5、および、第6実施形態では、動作検出部としての動作音検出部70、または、動作検出部としての振動検出部270を、モータ50のブラケット52に配置する例を示したが、本開示はこれに限られない。本開示では、動作検出部を、モータとは離間した位置に配置するようにしてもよい。また、動作検出部を、モータにおいて、エンコーダ側のブラケットとは異なる位置に配置するようにしてもよい。また、動作検出部として、電磁ブレーキのアーマチュアの移動を検出する機械式のスイッチをモータに配置するようにしてもよい。たとえば、可動鉄心をアーマチュアと一体的に移動するように配置するとともに、可動鉄心の移動によりスイッチが切り替わることにより電磁ブレーキの切替動作が検出されるようにしてもよい。また、動作検出部として、静電容量センサ、光電センサ、または、圧電センサなどを用いるようにしてもよい。また、目的変数としてのブレーキ動作信号を取得する場合にのみ動作検出部を配置するとともに、学習済みモデルが生成された後には、動作検出部を取り外してもよい。すなわち、ブレーキ判定方法の制御処理を実行する時点において、動作検出部を配置しないようにしてもよい。
【0107】
また、上記第1から第6実施形態では、複数のロボット10、210、310、410、510、610を用いて機械学習が行われることにより生成された学習済みモデル80、180、280、380、480、580、680を用いることによって、電磁ブレーキ60のブレーキ動作信号が推定される例を示したが、本開示はこれに限られない。本開示では、生成された学習済みモデルを用いてブレーキ動作信号を推定された予測値の取得に用いられるロボットと、機械学習のための教師データの説明変数および目的変数を取得するために用いられるロボットとは、互いに異なるロボットであってもよい。その場合、ブレーキ動作信号を推定された予測値の取得に用いられるロボットには、動作検出部を配置しないようにしてもよい。また、複数種類のロボットを用いて機械学習が行われるようにしてもよい。たとえば、互いに共通の型式を有するモータおよび電磁ブレーキを有する複数種類のロボットを用いて機械学習が行われるようにしてもよいし、複数種類のモータまたは電磁ブレーキを用いて機械学習が行われるようにしてもよい。また、ロボットから取り外されたモータおよび電磁ブレーキ、または、電磁ブレーキのみに対して、ブレーキ電源部により電圧を印加することによって、学習済みモデルを生成するための説明変数としての電流信号と、目的変数としてのブレーキ動作信号とが取得されるようにしてもよい。この場合には、教師データを取得するためにロボットを動作する必要が無くなるため、ロボットの動作範囲を考慮せずに教師データを取得できる。また、電磁ブレーキがモータにおいて外部に回転を伝達するための出力軸側に配置されている場合には、ロボットからモータおよび電磁ブレーキを取り外した状態であるほうが、動作検出部としての動作音検出部または振動検出部により容易に切替動作を検出できる。
【0108】
また、上記第2実施形態では、動作検出部としての振動検出部270がAEセンサである例を示したが、本開示はこれに限られない。本開示では、振動検出部を、振動計としてもよい。
【0109】
また、上記第1から第5実施形態では、切替動作においてブレーキ電源部22により印加される電圧の変化が開始された時点であるタイミングt1から、電磁ブレーキ60の制動状態と切替状態とが切り替えられた切替タイミングの時点であるタイミングt4までの時間を割合によって示したブレーキ動作信号が取得される例を示したが、本開示はこれに限られない。本開示では、切替タイミングの時点を、秒数、制御周期のカウント数、または、クロック数などの数値によって表したブレーキ動作信号によって表すようにしてもよい。また、
図24に示す変形例によるブレーキ動作信号のように、切替タイミングを信号のハイとローとの切替によって示した時系列データのブレーキ動作信号が取得されるようにしてもよい。その場合に、
図24の例のように切り替えられた状態が保持される信号ではなく、
図25に示す変形例によるブレーキ動作信号のように、パルス状にハイとローとが切り替えられる信号によって、切替タイミングを示した時系列データのブレーキ動作信号が取得されるようにしてもよい。
【0110】
また、上記第1から第6実施形態では、ロボット10、210、310、410、510、610が6軸の垂直関節を含み、運搬、組立、および、工作などのハンドリング作業を行う産業用ロボットである例を示したが、本開示はこれに限られない。本開示では、ロボットが5軸以下または7軸以上の関節を含んでいてもよい。また、ロボットとして、水平多関節のロボットを用いてもよい。また、ロボットがパラレルリンク構造、または、直動機構などのシリアルリンク構造のロボットアーム以外の駆動機構を有していてもよい。また、ロボットは、産業用ではなく医療用のロボットであってもよい。
【0111】
また、上記第1から第5実施形態では、学習済みモデル80、280、380、480、580からの出力に基づいてブレーキ駆動電圧を取得する場合に、ブレーキ電源部22により印加される電圧を制御量に基づいて取得する例を示し、上記第6実施形態では、学習済みモデル680を生成するための目的変数としてのブレーキ駆動電圧であるブレーキ動作を取得する場合に、ブレーキ電源部22により印加される電圧を制御量に基づいて取得する例を示したが、本開示はこれに限られない。本開示では、ブレーキ電源部により印加される電圧を、制御量に基づいて取得されるのではなく、電圧計を用いて実測値を取得するようにしてもよい。また、予めブレーキ電源部により印加される電圧として設定された値を記憶するようにしてもよい。
【0112】
また、上記第1および第2実施形態では、動作検出部としての動作音検出部70、または、動作検出部としての振動検出部270からの検出結果を示す検出信号を、整流して平滑することによって、ブレーキ動作信号が取得される例を示したが、本開示はこれに限られない。本開示では、動作検出部からの検出信号を、整流して平滑した場合に生じるタイミングの遅れを考慮して、平滑された検出信号に対して遅れ補正を行うようにしてもよい。
【0113】
本明細書で開示する要素の機能は、開示された機能を実行するよう構成またはプログラムされた汎用プロセッサ、専用プロセッサ、集積回路、ASIC(Application Specific Integrated Circuits)、従来の回路、および/または、それらの組み合わせ、を含む回路または処理回路を使用して実行できる。プロセッサは、トランジスタやその他の回路を含むため、処理回路または回路と見なされる。本開示において、回路、ユニット、または手段は、列挙された機能を実行するハードウェアであるか、または、列挙された機能を実行するようにプログラムされたハードウェアである。ハードウェアは、本明細書に開示されているハードウェアであってもよいし、あるいは、列挙された機能を実行するようにプログラムまたは構成されているその他の既知のハードウェアであってもよい。ハードウェアが回路の一種と考えられるプロセッサである場合、回路、手段、またはユニットはハードウェアとソフトウェアの組み合わせであり、ソフトウェアはハードウェアおよび/またはプロセッサの構成に使用される。
【0114】
[態様]
上記した例示的な実施形態は、以下の態様の具体例であることが当業者により理解される。
【0115】
(態様1)
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、
前記電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、
前記ブレーキ電流検出部による検出結果に基づく電流信号を説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える、ロボットシステム。
【0116】
(態様2)
前記電磁ブレーキに対して徐々に大きさが変化する電圧を印加するブレーキ電源部をさらに備え、
前記制御部は、
前記ブレーキ電源部により徐々に大きさが変化する電圧が印加されることにより前記電磁ブレーキに流れる電流の検出結果に基づく前記電流信号を取得し、
取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として前記推定ブレーキ動作信号を取得する、態様1に記載のロボットシステム。
【0117】
(態様3)
前記制御部は、取得された前記推定ブレーキ動作信号に基づいて、前記切替動作の切替タイミングにおいて前記電磁ブレーキに印加されているブレーキ駆動電圧を取得する、態様1または態様2に記載のロボットシステム。
【0118】
(態様4)
前記切替動作の切替タイミングを検出する動作検出部と、
前記電流信号を前記説明変数として取得するとともに、前記動作検出部により検出された前記切替動作の状態を示す前記ブレーキ動作信号を前記目的変数として取得することによって、前記説明変数と前記目的変数とを用いた機械学習により前記学習済みモデルを生成する学習部とを、さらに備える、態様1から態様3までのいずれか1項に記載のロボットシステム。
【0119】
(態様5)
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記切替動作における動作音を検出する動作音検出部を含み、
前記学習部は、前記動作音検出部により検出された検出信号に基づく前記目的変数としての前記ブレーキ動作信号を取得する、態様4に記載のロボットシステム。
【0120】
(態様6)
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記切替動作における振動を検出する振動検出部を含み、
前記学習部は、前記振動検出部により検出された検出信号に基づく前記目的変数としての前記ブレーキ動作信号を取得する、態様4に記載のロボットシステム。
【0121】
(態様7)
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記モータに供給されるモータ駆動電流を検出し、
前記学習部は、前記モータ駆動電流に基づく前記目的変数としての前記ブレーキ動作信号を取得する、態様4に記載のロボットシステム。
【0122】
(態様8)
前記動作検出部は、前記切替動作の切替タイミングを検出するために前記モータの回転を検出するエンコーダを含み、
前記学習部は、前記エンコーダからの出力に基づく前記目的変数としての前記ブレーキ動作信号を取得する、態様4に記載のロボットシステム。
【0123】
(態様9)
前記制御部は、前記学習済みモデルからの予測値の出力として、前記切替動作において前記ブレーキ電源部により印加される電圧の変化が開始された時点から、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられた切替タイミングの時点までの時間を表す前記推定ブレーキ動作信号を取得する、態様2に記載のロボットシステム。
【0124】
(態様10)
前記制御部は、前記ブレーキ電流検出部により検出された電流の交流成分が抽出された前記電流信号を前記説明変数として機械学習により生成された前記学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として前記推定ブレーキ動作信号を取得する、態様1から態様9までのいずれか1項に記載のロボットシステム。
【0125】
(態様11)
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、
前記電流信号を説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作の切替タイミングを示すブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する、ブレーキ判定方法。
【0126】
(態様12)
態様11に記載されたブレーキ判定方法をコンピュータに実行させる、ブレーキ判定プログラム。
【0127】
(態様13)
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキと、
前記電磁ブレーキに流れる電流を検出するブレーキ電流検出部と、
前記ブレーキ電流検出部による検出結果に基づく電流信号を説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作において前記電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデルを用いることによって、前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する制御部と、を備える、ロボットシステム。
【0128】
(態様14)
ロボットの駆動源となるモータの回転に対するブレーキがオンになる制動状態と、オフになる解放状態とを切り替える電磁ブレーキに流れる電流の検出結果に基づく電流信号を取得し、
前記電流信号を説明変数とし、前記電磁ブレーキの前記制動状態と前記解放状態とが切り替えられる切替動作において前記電磁ブレーキに印加されるブレーキ駆動電圧であるブレーキ動作信号を目的変数として、機械学習により生成された学習済みモデルを用いることによって、取得された前記電流信号に対する前記学習済みモデルからの予測値の出力として、推定された前記ブレーキ動作信号である推定ブレーキ動作信号を取得する、ブレーキ判定方法。
【0129】
(態様15)
態様14に記載されたブレーキ判定方法をコンピュータに実行させる、ブレーキ判定プログラム。
【符号の説明】
【0130】
10、210、310、410、510、610 ロボット
22 ブレーキ電源部
23 ブレーキ電流検出部
24 モータ電流検出部(動作検出部)
30、630 学習装置(学習部)
40、640 検査装置
41、641 制御部
42a、642a プログラム(ブレーキ判定プログラム)
50 モータ
51 エンコーダ(動作検出部)
60 電磁ブレーキ
70 動作音検出部(動作検出部)
80、280、380、480、580、680 学習済みモデル
100、200、300、400、500、600 ロボットシステム
270 振動検出部(動作検出部)