IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オムロン株式会社の特許一覧

特許7119885異常検知装置、異常検知方法、およびプログラム
<>
  • 特許-異常検知装置、異常検知方法、およびプログラム 図1
  • 特許-異常検知装置、異常検知方法、およびプログラム 図2
  • 特許-異常検知装置、異常検知方法、およびプログラム 図3
  • 特許-異常検知装置、異常検知方法、およびプログラム 図4
  • 特許-異常検知装置、異常検知方法、およびプログラム 図5
  • 特許-異常検知装置、異常検知方法、およびプログラム 図6
  • 特許-異常検知装置、異常検知方法、およびプログラム 図7
  • 特許-異常検知装置、異常検知方法、およびプログラム 図8
  • 特許-異常検知装置、異常検知方法、およびプログラム 図9
  • 特許-異常検知装置、異常検知方法、およびプログラム 図10
  • 特許-異常検知装置、異常検知方法、およびプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-08
(45)【発行日】2022-08-17
(54)【発明の名称】異常検知装置、異常検知方法、およびプログラム
(51)【国際特許分類】
   H02P 29/024 20160101AFI20220809BHJP
【FI】
H02P29/024
【請求項の数】 4
(21)【出願番号】P 2018195942
(22)【出願日】2018-10-17
(65)【公開番号】P2020065364
(43)【公開日】2020-04-23
【審査請求日】2020-12-14
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100101454
【弁理士】
【氏名又は名称】山田 卓二
(74)【代理人】
【識別番号】100122286
【弁理士】
【氏名又は名称】仲倉 幸典
(72)【発明者】
【氏名】友定 仁
【審査官】三島木 英宏
(56)【参考文献】
【文献】特開平10-041162(JP,A)
【文献】実開昭52-128911(JP,U)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 29/024
(57)【特許請求の範囲】
【請求項1】
モータが発生するトルクの異常を検知する異常検知装置であって、
上記モータが或る動作を行うときの温度対トルク特性を基準として記憶する記憶部と、
上記モータが上記動作と同じ動作を行うときに発生する現在のトルクを取得するトルク取得部と、
上記モータの現在温度を、上記モータを駆動する駆動信号のオン期間とオフ期間に基づいて算出して取得する現在温度取得部と、
上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表すデータ点のずれが予め定められた許容範囲を超えたとき、異常が発生したと判定する異常判定部と
を備え、
上記現在温度取得部は、
上記オン期間の経過に伴う上記現在温度の上昇を、第1初期温度から第1飽和温度へ向かって、第1ゲインでの増幅を第1処理時間毎に繰り返すループ回路を用いてシミュレーションして算出するとともに、
上記オフ期間の経過に伴う上記現在温度の低下を、第2初期温度から第2飽和温度へ向かって、第2ゲインでの増幅を第2処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する
ことを特徴とする異常検知装置。
【請求項2】
請求項1に記載の異常検知装置において、
上記許容範囲は、上記取得された現在温度で上記温度対トルク特性が示す基準トルクの±10%以内の範囲として定められていることを特徴とする異常検知装置。
【請求項3】
モータが発生するトルクの異常を検知する異常検知方法であって、
上記モータが或る動作を行うときの温度対トルク特性を基準として記憶部に記憶させるステップと、
上記モータが上記動作と同じ動作を行うときに発生する現在のトルクを取得するステップと、
上記モータの現在温度を、上記モータを駆動する駆動信号のオン期間とオフ期間に基づいて算出して取得するステップと、
上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表す点のずれが予め定められた許容範囲を超えたとき、異常が発生したと判定するステップとを有し、
上記モータの現在温度を取得する上記ステップでは、
上記オン期間の経過に伴う上記現在温度の上昇を、第1初期温度から第1飽和温度へ向かって、第1ゲインでの増幅を第1処理時間毎に繰り返すループ回路を用いてシミュレーションして算出するとともに、
上記オフ期間の経過に伴う上記現在温度の低下を、第2初期温度から第2飽和温度へ向かって、第2ゲインでの増幅を第2処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する
ことを特徴とする異常検知方法。
【請求項4】
請求項に記載の異常検知方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は異常検知装置および異常検知方法に関し、より詳しくは、モータが発生するトルクの異常(または故障。以下同様。)を検知する異常検知装置および異常検知方法に関する。また、この発明は、そのような異常検知方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【0002】
例えば、特許文献1(特開2004-068712号公報)には、補機駆動装置において、補機を駆動するモータのモータトルクを監視し、モータトルクが下限値未満であれば、ベルト伝動機構の異常と判定する一方、モータトルクが上限値を超えていれば、クランクプーリクラッチの結合状態での固着(異常)と判定する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2004-068712号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、モータが発生するトルクを用いる機器では、様々な要因(モータをなす巻線抵抗の温度特性、磁石の温度特性など)により、図11(A)に例示するように上記モータが発生するトルク(モータトルク)Tqは、時間経過(温度変化を伴う)につれて変化することがある。例えば、図11(B)に示すように、温度上昇に伴ってトルクが低下する場合(モータM1の場合)と、温度上昇に伴ってトルクが上昇する場合(モータM2の場合)とがある。ここで、特許文献1(特開2004-068712号公報)では、異常判定に際してモータトルクが温度に依存して変化する点については考慮されていない。このため、機器の異常を適確に検知することができないという問題がある。例えば、単に、図11(A)中に示すように、現在のトルクTqが一定のトルク上限値ULを超えたとき異常が発生したと判定する方式では、温度上昇に伴ってトルクTqのレベル(正常レベル)が低下しているとき、トルクTqの異常な増大Pを検知することができない。
【0005】
そこで、この発明の課題は、モータが発生するトルクの異常を適確に検知できる異常検知装置および異常検知方法を提供することにある。また、この発明の課題は、そのような異常検知方法をコンピュータに実行させるためのプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するため、この開示の異常検知装置は、
モータが発生するトルクの異常を検知する異常検知装置であって、
上記モータが或る動作を行うときの温度対トルク特性を基準として記憶する記憶部と、
上記モータが上記動作と同じ動作を行うときに発生する現在のトルクを取得するトルク取得部と、
上記モータの現在温度を、上記モータを駆動する駆動信号のオン期間とオフ期間に基づいて算出して取得する現在温度取得部と、
上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表すデータ点のずれが予め定められた許容範囲を超えたとき、異常が発生したと判定する異常判定部と
を備え
上記現在温度取得部は、
上記オン期間の経過に伴う上記現在温度の上昇を、第1初期温度から第1飽和温度へ向かって、第1ゲインでの増幅を第1処理時間毎に繰り返すループ回路を用いてシミュレーションして算出するとともに、
上記オフ期間の経過に伴う上記現在温度の低下を、第2初期温度から第2飽和温度へ向かって、第2ゲインでの増幅を第2処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する
ことを特徴とする。
【0007】
本明細書で、記憶部に基準として記憶される「温度対トルク特性」は、正常時の温度対トルク特性を意味する。この「温度対トルク特性」を定める温度の範囲は、上記モータの現在温度がとり得る範囲を包含するように、例えば常温から数十℃(または100℃)までにわたって設定される。この「温度対トルク特性」は、全くの同一のモータの特性に限られず、「温度対トルク特性」が実質的に同じである限り、同種のモータの特性であってもよい。
【0008】
また、上記モータが上記動作と「同じ動作を行う」とは、典型的には、或る機器において上記モータが同じ動作を繰り返し反復して行うことを指す。
【0009】
また、モータのトルクを「取得する」ためには、上記モータを駆動する電流と電圧から算出して取得してもよいし、または、トルクセンサを設けて取得してもよい。
【0010】
また、駆動信号の「オン期間」とは、上記モータを動作させている期間を指す。駆動信号の「オフ期間」とは、上記モータの動作を休止させている期間を指す。
【0011】
また、上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表すデータ点の「ずれ」とは、典型的には、上記温度対トルク特性を曲線として表す平面上で、その曲線と上記データ点とが示すトルク座標に沿った差を意味する。ただし、上記「ずれ」は、上記曲線と上記データ点とが示す温度座標に沿った差として規定されてもよいし、上記曲線と上記データ点との間の距離として規定されてもよい。
【0012】
この開示の異常検知装置では、記憶部は、上記モータが或る動作を行うときの温度対トルク特性を基準として記憶する。トルク取得部は、上記モータが上記動作と同じ動作を行うときに発生する現在のトルクを取得する。また、現在温度取得部は、上記モータの現在温度を取得する。異常判定部は、上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表すデータ点のずれが予め定められた許容範囲を超えたとき、異常が発生したと判定する。このように、この開示の異常検知装置では、上記温度対トルク特性に対する、上記取得されたトルクと上記取得された現在温度とが表すデータ点のずれによって、異常が発生したか否かが判定される。したがって、上記モータが発生するトルクの異常を適確に検知できる。
【0013】
【0014】
【0015】
また、この異常検知装置では、上記現在温度取得部は、上記モータの現在温度を、上記モータを駆動する駆動信号のオン期間とオフ期間に基づいて算出して取得する。したがって、上記モータに現在温度を測定するための温度センサを付加する必要がなく、部材数の増加を避け、省スペースを図ることができる。なお、上記現在温度取得部は、上記異常判定部と共通のハードウェア資源(CPU(中央演算処理装置)などのプロセッサ)によって構成され得る。
【0016】
【0017】
さらに、この異常検知装置では、上記オン期間の経過に伴う上記現在温度の上昇を、第1初期温度から第1飽和温度へ向かって、或るゲインでの増幅を或る処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する。また、上記オフ期間の経過に伴う上記現在温度の低下を、第2初期温度から第2飽和温度へ向かって、第2ゲインでの増幅を第2処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する。これにより、上記現在温度取得部は、上記モータの現在温度を、精度良く算出できる(シミュレーション結果については、後述する。)。
【0018】
一実施形態の異常検知装置では、上記許容範囲は、上記取得された現在温度で上記温度対トルク特性が示す基準トルクの±10%以内の範囲として定められていることを特徴とする。
【0019】
この一実施形態の異常検知装置では、上記許容範囲を、上記温度対トルク特性に応じて簡単に設定することができる。
【0022】
別の局面では、この開示の異常検知方法は、
モータが発生するトルクの異常を検知する異常検知方法であって、
上記モータが或る動作を行うときの温度対トルク特性を基準として記憶部に記憶させるステップと
上記モータが上記動作と同じ動作を行うときに発生する現在のトルクを取得するステップと
上記モータの現在温度を、上記モータを駆動する駆動信号のオン期間とオフ期間に基づいて算出して取得するステップと
上記温度対トルク特性に対して、上記取得されたトルクと上記取得された現在温度とが表す点のずれが予め定められた許容範囲を超えたとき、異常が発生したと判定するステップとを有し、
上記モータの現在温度を取得する上記ステップでは、
上記オン期間の経過に伴う上記現在温度の上昇を、第1初期温度から第1飽和温度へ向かって、第1ゲインでの増幅を第1処理時間毎に繰り返すループ回路を用いてシミュレーションして算出するとともに、
上記オフ期間の経過に伴う上記現在温度の低下を、第2初期温度から第2飽和温度へ向かって、第2ゲインでの増幅を第2処理時間毎に繰り返すループ回路を用いてシミュレーションして算出する
ことを特徴とする。
【0023】
この開示の異常検知方法では、上記モータの現在温度を精度良く算出した上で、上記温度対トルク特性に対する、上記取得されたトルクと上記取得された現在温度とが表す点のずれによって、異常が発生したか否かが判定される。したがって、上記モータが発生するトルクの異常を適確に検知できる。また、上記モータに現在温度を測定するための温度センサを付加する必要がなく、部材数の増加を避け、省スペースを図ることができる。
【0024】
さらに別の局面では、この開示のプログラムは、上記異常検知方法をコンピュータに実行させるためのプログラムである。
【0025】
この開示のプログラムをコンピュータに実行させることによって、上記異常検知方法を実施することができる。
【発明の効果】
【0026】
以上より明らかなように、この開示の異常検知装置および異常検知方法によれば、モータが発生するトルクの異常を適確に検知できる。また、この開示のプログラムをコンピュータに実行させることによって、上記異常検知方法を実施することができる。
【図面の簡単な説明】
【0027】
図1】この発明の一実施形態の異常検知装置が適用されたシステムの概略構成を模式的に示す図である。
図2】上記システムの機能的なブロック構成を示す図である。
図3図3(A)は、オン期間とオフ期間を含むモータ駆動信号を例示する図である。図3(B)は、図3(A)のモータ駆動信号に対応するモータの現在温度の変化を模式的に示す図である。図3(C)は、図3(A)のモータ駆動信号、および、図3(B)のモータの現在温度の変化に対応するモータのトルクの変化を模式的に示す図である。
図4】上記システムを構成するコントローラの記憶部に基準として記憶される、上記モータが或る動作を行うときの温度対トルク特性を、トルクの上限値、下限値を含めて示す図である。
図5】上記システムにおいて実行される、この発明の一実施形態の異常検知方法のフローを示す図である。
図6図6(A)は、モータ駆動信号によるオン期間とオフ期間を例示する図である。図6(B)は、図6(A)のモータ駆動信号に対応するモータの各往路動作中のトルクの平均値を、時間経過に沿って示す図である。
図7図7(A)は、上記システムをなす電動アクチュエータにおけるスライドブロックの位置(つまり、ボールねじの回転位置)の変化を示す図である。図7(B)は、図7(A)の位置の変化を生じさせるときのフレーム変数の変化(+1のとき往路動作、-1のとき復路動作、0のとき停止をそれぞれ表す。)を示す図である。図7(C)は、図7(A)のスライドブロックの位置の変化を生じさせるときの、モータが発生するトルクを示す図である。
図8図8(A)は、上記モータの現在温度の変化をシミュレーションして算出するためのループ回路を示す図である。図8(B)は、モータ駆動信号によるオン期間とオフ期間を例示する図である。図8(C)は、上記ループ回路による温度のシミュレーション結果を例示する図である。
図9図9(A)は、図6(A)と同様の、モータ駆動信号によるオン期間とオフ期間を例示する図である。図9(B)は、上記ループ回路を用いて算出された上記モータの現在温度と実測値とを比較して、時間経過に沿って示す図である。
図10図3に示した温度対トルク特性、トルクの上限値、下限値を用いて、異常が発生したと判定する仕方を説明する図である。
図11図11(A)は、モータが発生するトルクに関する温度変化に起因した課題を説明する図である。図11(B)は、モータの温度対トルク特性についての2つの態様を示す図である。
【発明を実施するための形態】
【0028】
以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。
【0029】
(システムの構成)
図1は、この発明の一実施形態の異常検知装置が適用されたシステム1の概略構成を模式的に示している。このシステムは、モータ10を含む電動アクチュエータ90と、モータ10を駆動するサーボドライバ200と、コントローラ100と、LCD(液晶表示素子)からなる表示器400とを備えている。符号81,82,83は信号ケーブルを示している。
【0030】
電動アクチュエータ90は、一般的な構成のものであり、ハウジング14と、このハウジング14内に収容されたボールねじ16と、このボールねじ16に螺合されたナット18と、このナット18上に取り付けられたスライドブロック19と、上述のモータ10とを備えている。ボールねじ16は、このボールねじの周りに回転自在な態様でハウジング14に支持されている。ナット18は、ハウジング14(側壁12,13を含む)の内壁によって回転を抑止された状態で、ハウジング14の内部に配置されている。ボールねじ16の一端とモータ10の出力軸とが、カップリング部材15によって連結されている。モータ10が矢印θで示すように順方向または逆方向に回転することで、ボールねじ16とナット18とが相対回転し、その結果、ナット18とスライドブロック19とがボールねじ16の軸方向Xに沿って移動する。モータ10の位置、速度(回転速度)などは、モータ10に内蔵されたエンコーダ11によって検出され、出力される。このような機構によって、スライドブロック19の軸方向Xの位置が可変され得る。
【0031】
この例では、モータ10は、オムロン株式会社製のAC(交流)サーボモータ(型番;R88M-1M10030S)からなり、エンコーダ11としてABS(アブソリュート)エンコーダを内蔵している。
【0032】
図2は、システム1の機能的なブロック構成を示している。
【0033】
コントローラ100は、この例では、入力部102、記憶部103、および、制御部101を備えている。
【0034】
入力部102は、この例ではティーチングペンダントからなっている。この例では、入力部102は、特に、ユーザが処理開始命令を入力するために用いられる。
【0035】
記憶部103は、この例では、非一時的にデータを記憶し得るEEPROM(電気的に書き換え可能な不揮発性メモリ)、および、一時的にデータを記憶し得るRAM(ランダム・アクセス・メモリ)を含んでいる。この記憶部103には、制御部101を制御するためのソフトウェア(コンピュータプログラム)が格納されている。また、この例では、記憶部103は、特に、電動アクチュエータ90においてモータ10がスライドブロック19の軸方向Xに沿った往路動作を行うときの温度対トルク特性CTを、トルクの上限値TqUL、下限値TqLLを含めて記憶している(後述の図4参照)。
【0036】
制御部101は、この例では、記憶部103に格納された制御プログラムに従って動作するプロセッサによって構成されている。この制御部101は、電動アクチュエータ90を制御するためのモータ制御信号Ctrlを作成して、サーボドライバ200へ出力する。このモータ制御信号Ctrlは、モータ10が発生すべきトルク、位置、速度を表す情報を含んでいる。
【0037】
サーボドライバ200は、この例では、オムロン株式会社製のACサーボドライバ(型番;R88D-1SN01L-ECT)からなっている。このサーボドライバ200は、コントローラ100の制御部101からのモータ制御信号Ctrlに応じて、指示されたトルクを発生するために、この例では電源電圧AC100Vの下でモータ10に通電すべき通電電流を求める。サーボドライバ200は、駆動信号Cdrvによって、電源電圧AC100Vの下で、求めた通電電流を電動アクチュエータ90のモータ10に流して、モータ10を駆動する。
【0038】
電動アクチュエータ90におけるモータ10の現在の位置、速度は、モータ10に内蔵されたエンコーダ11によってエンコーダ出力値Eoutとして、この例ではサーボドライバ200へ出力される。
【0039】
また、サーボドライバ200は、この例では、モータ10に印加された電圧、電流に基づいて、モータ10が発生する現在のトルクを算出して取得する。そして、サーボドライバ200は、算出した現在のトルクTq(図7(C)参照)と、エンコーダ出力値Eoutが表すモータ10の現在の位置、速度を表す情報とを併せて、モータ軸現在値CVとしてコントローラ100の制御部101へ出力する。なお、エンコーダ出力値Eoutは、エンコーダ11から直接にコントローラ100の制御部101へ出力されてもよい。
【0040】
コントローラ100の制御部101は、サーボドライバ200からのモータ軸現在値CVに基づいて、電動アクチュエータ90が所望の動作をするように、モータ制御信号Ctrlを一定周期で逐次更新する。
【0041】
システム1は、このようにして、電動アクチュエータ90におけるモータ10の動作を制御する。すると、この例では、図3(A)中に示すモータ駆動信号Cdrvのオン期間(値1の期間)の間、図3(B)に示すように、モータ10の現在温度Tmは上昇し、それに伴って、図3(C)に示すように、モータ10の現在のトルクTqは減少する傾向を示す。また、図3(A)中に示すモータ駆動信号Cdrvのオフ期間(値0の期間)の間、図3(B)に示すように、モータ10の現在温度Tmは下降し、それに伴って、図3(C)に示すように、モータ10の現在のトルクTqは増加する傾向を示す。なお、図3(B)のモータ10の現在温度Tm、図3(C)の現在のトルクTqは、それぞれ、時間経過に伴ってモータ10が同じ動作を繰り返し行うときの値の変化を模式的に示している。
【0042】
さて、このシステム1では、モータ10が発生するトルクTqの異常を検知するために、コントローラ100の記憶部103に、図4に示すように、電動アクチュエータ90においてモータ10がスライドブロック19の往復動作を繰り返すときの温度対トルク特性CTが、トルクの上限値TqUL、下限値TqLLを含めて記憶されている。この例では、この温度対トルク特性CTは、スライドブロック19の往路動作に着目して、モータ10と同一のモータまたは同種のモータについて、予め実測して求められたものである。また、この例では、トルクの上限値TqUL、下限値TqLLは、温度毎に、それぞれ基準トルク(温度対トルク特性CTを表す曲線上のトルク)Tqrefの+10%、-10%の値として設定されている。つまり、モータ10が発生するトルクTqについて、異常判定のための許容範囲Eが、基準トルクTqrefの±10%以内の範囲として設定されている。このようにした場合、許容範囲Eを、温度対トルク特性CTに応じて簡単に設定することができる。
【0043】
(異状検知の動作)
このシステム1では、電動アクチュエータ90においてモータ10がスライドブロック19の往復動作を繰り返し反復して行うときに、モータ10が発生するトルクTqの異常を、図5の異常検知方法のフローに従って検知する。
【0044】
i) まず、図5のステップS1に示すように、コントローラ100の制御部101がトルク取得部として働いて、モータ軸現在値CVに基づいて、スライドブロック19の往路動作期間中にモータ10が発生する現在のトルクTqCを取得する。
【0045】
詳しくは、図7(A)に示すように、スライドブロック19は、曲線Psで示すように、位置0と位置120との間で往復動作を繰り返しているものとする。このとき、モータ軸現在値CVが示す現在のトルクTqは、図7(C)に示すように周期的に変化している。ここで、制御部101は、図7(B)に示すように、往路動作期間(破線枠PEで示す)中は値が+1、復路動作期間中は値が-1、停止期間中は値が0となるフレーム変数Fを生成する。そして、フレーム変数F=+1である往路動作期間中の現在のトルクTqを平均して、往路動作期間毎にモータ10が発生する平均値としての現在のトルクTqCを取得する。
【0046】
例えば、図6(A)に示すように、モータ10のオン期間(値1の期間)とオフ期間(値0の期間)とが繰り返されるものとすると、図6(B)に示すように、往路動作期間毎にモータ10が発生する平均値としての現在のトルクTqCが算出される。現在のトルクTqCを平均する各期間は、この例では550msecに設定されている。なお、図6(A)では、モータ10のオン期間が集合して黒く見えている。この理由は、図6(A)の横軸(時間軸)を拡大すると、黒く見えている期間内に、図7(B)中に示すように細かい休止期間(フレーム変数F=0)が含まれているからである。また、図6(B)中の縦軸は、モータ10のトルク定格値(この例では、0.318Nm)に対する割合(%)を示している。
【0047】
ii) 次に、図5のステップS2に示すように、コントローラ100の制御部101が現在温度取得部として働いて、この例ではモータ10の現在温度Tcをオン期間とオフ期間に基づいてシミュレーションにより算出して取得する。
【0048】
詳しくは、制御部101は、モータ10の現在温度Tcを算出するために、この例では図8(A)に示すようなループ回路150(この例ではソフトウェアによって構成されている。)を用いる。このループ回路150は、差分演算部151と、増幅部152と、加算部153と、遅延部154とを含んでいる。
【0049】
差分演算部151は、入力端子In1からの入力値d0ともう1つの入力値d1との間の差分(d0-d1)をとる。増幅部152は、入力値d2(=d0-d1)を或る増幅率kで増幅して出力値k×d2を得る。加算部153は、2つの入力値d3(=k×d2)とd4とを加算して出力値(d3+d4)を出力値d5として得る。この出力値d5は、出力端子Out1から出力される。遅延部154は、出力値d5を或る時間だけ遅延させたタイミングで、差分演算部151、加算部153にそれぞれ入力値d1,d4として供給する。
【0050】
このループ回路150の動作を、理解の容易のために、仮想的な簡単な数値例で説明する。オン期間の経過に伴うモータ10の現在温度Tcの上昇を算出する場合、例えば、増幅部152の増幅率k=0.1とする。また、図8(B)、図8(C)中に示すように、オン期間開始時の温度(第1初期温度T1)を0、オン期間が十分長く継続したときに到達する温度(第1飽和温度Ts1)を1とする。入力値d0は第1飽和温度Ts1=1とされ、また、最初のターンの入力値d1,d4は第1初期温度T1=0とされる。この場合、最初のターンでは、差分演算部151は、d0-d1=1-0=1(=d2)を出力する。増幅部152は、出力値(k×d2)=0.1×1=0.1(=d3)を得る。加算部153は、出力値(d3+d4)=0.1+0=0.1を出力値d5として得る。次のターンで、差分演算部151は、d0-d1=1-0.1=0.9(=d2)を出力する。増幅部152は、出力値(k×d2)=0.1×0.9=0.09(=d3)を得る。加算部153は、出力値(d3+d4)=0.09+0.1=0.19を出力値d5として得る。このようにして、演算のループの周期(シミュレーション周期)毎に、順次出力値d5が第1飽和温度Ts1(この例では、1)に近づいてゆく。
【0051】
オフ期間の経過に伴うモータ10の現在温度Tcの低下を算出する場合、例えば上の例と同様に、増幅部152の増幅率k=0.1とする。図8(B)、図8(C)中に示すように、オフ期間開始時の温度(第2初期温度T2)を1、オフ期間が十分長く継続したときに到達する温度(第2飽和温度Ts2)を0とする。入力値d0は第2飽和温度Ts2=0とされ、また、最初のターンの入力値d1,d4は第2初期温度T2=1とされる。この場合、最初のターンでは、差分演算部151は、d0-d1=0-1=-1(=d2)を出力する。増幅部152は、出力値(k×d2)=0.1×(-1)=-0.1(=d3)を得る。加算部153は、出力値(d3+d4)=-0.1+1=0.9を出力値d5として得る。次のターンで、差分演算部151は、d0-d1=0-0.9=-0.9(=d2)を出力する。増幅部152は、出力値(k×d2)=0.1×(-0.9)=-0.09(=d3)を得る。加算部153は、出力値(d3+d4)=-0.09+0.9=0.81を出力値d5として得る。このようにして、演算のループの周期(シミュレーション周期)毎に、順次出力値d5が第2飽和温度Ts2(この例では、0)に近づいてゆく。
【0052】
ここで、オン期間の開始時に、例えば図8(C)中に符号T3で示すように、モータ10の現在温度Tcが第2飽和温度Ts2まで低下していないときは、そのオン期間については、第1初期温度をT3に代えてシミュレーションを開始する。同様に、オフ期間の開始時に、例えば図8(C)中に符号T4で示すように、モータ10の現在温度Tcが第1飽和温度Ts1まで上昇していないときは、そのオフ期間については、第2初期温度をT4に代えてシミュレーションを開始する。
【0053】
例えば、図9(A)に示すように、図6(A)に示したのと同様にモータ10のオン期間(値1の期間)とオフ期間(値0の期間)とが繰り返されるものとすると、ループ回路150を用いたシミュレーションによれば、図9(B)中に実線で示すように、モータ10の現在温度Tcが算出される。なお、図9(B)中には、参考のため、モータ10の現在温度の実測値Tmを破線で示している。この図9(B)から分かるように、ループ回路150を用いたシミュレーションによれば、モータ10の現在温度Tcを精度良く算出できる、と言える。
【0054】
また、制御部101は、ソフトウェアによって構成されたループ回路150を用いているので、モータ10に現在温度Tcを測定するための温度センサを付加する必要がなく、部材数の増加を避け、省スペースを図ることができる。
【0055】
この例では、ループ回路150によって図9(B)中のモータ10の現在温度Tcを算出するためのパラメータは、実測値Tmにフィッティングするために次のように設定された。まず、オン期間が十分長く継続したときに到達する温度(第1飽和温度Ts1)は45.0℃に設定された。また、オフ期間が十分長く継続したときに到達する温度(第2飽和温度Ts2)は、電動アクチュエータ90の周囲温度(環境温度)である24.0℃に設定された。第1初期温度T1も同様に24.0℃に設定された。なお、環境温度は制御部101によって測定され得る。また、オン期間中の増幅部152の増幅率(第1ゲイン)はk=0.0000016に設定された。オフ期間中の増幅部152の増幅率(第2ゲイン)はk=0.0000008に設定された。また、オン期間中、オフ期間中のいずれも、遅延部154による遅延は、ループ回路150の演算のループの周期(シミュレーション周期)が1msecになるように設定された。なお、図9(B)では、シミュレーション結果のデータ数を10分の1に間引いて表示しているが、算出された現在温度Tcは連続した実線のように見えている。
【0056】
なお、モータ10の現在温度Tcをオン期間とオフ期間に基づいてシミュレーションにより算出する方法は、1次遅れ系伝達関数、積分、状態方程式等を採用できる。
【0057】
iii) 次に、図5のステップS3に示すように、コントローラ100の制御部101は、取得されたモータ10の現在温度Tcで温度対トルク特性CTが示す基準トルクTqrefを求める。
【0058】
例えば、モータ10の現在温度がTc=40℃であれば、図4の温度対トルク特性CTを参照して、図10中に示すように、その温度での基準トルクTqref1=10.05611(%)を求める。これとともに、その温度でのトルク上限値TqUL=11.06172(%)、トルク下限値TqLL=9.050495(%)を求める。これらのトルク上限値TqUL、トルク下限値TqLLによって、モータ10が発生するトルクTqについて、異常判定のための許容範囲E1を設定する。
【0059】
iv) 次に、図5のステップS4に示すように、コントローラ100の制御部101は、異常判定部として働いて、温度対トルク特性CTに対して、ステップS1で取得されたトルクTqCとステップS2で取得された現在温度Tcとが表すデータ点の「ずれ」が許容範囲Eを超えたか否かを判定する。
【0060】
例えば、モータ10の現在温度がTc=40℃であれば、図10中に示すように、モータ10が発生するトルクTqについて許容範囲E1が設定されている。ここで、ステップS1で取得された現在のトルクTqCが例えば図10中に○印で示すTqC1(=10.5(%))であれば、TqC1は許容範囲E1内にある。そこで、コントローラ100の制御部101は、モータ10が発生するトルクTqの異常は無いと判断する(図5のステップS4でNO)。そして、図5のステップS1に戻って、異常検知の処理を継続する。
【0061】
一方、ステップS1で取得された現在のトルクTqCが例えば図10中に△印で示すTqC2(=11.5(%))であれば、TqC2はトルク上限値TqULを超えており、許容範囲E1外にある。また、ステップS1で取得された現在のトルクTqCが例えば図10中に□印で示すTqC3(=8.5(%))であれば、TqC3はトルク下限値TqLLを下回っており、許容範囲E1外にある。これらの場合、コントローラ100の制御部101は、モータ10が発生するトルクTqの異常が発生したと判断する(図5のステップS4でYES)。
【0062】
このようにして、このシステム1によれば、モータ10が発生するトルクTqの異常を適確に検知できる。
【0063】
モータ10が発生するトルクTqの異常が発生したと判断したとき、図5のステップS5に示すように、コントローラ100の制御部101は、例えば、表示器400の表示画面に「電動アクチュエータのモータにトルクの異常が発生しました」というような警報を発生する。ユーザは、この警報を見て、必要な対策を迅速にとることができる。それとともに、コントローラ100の制御部101は、安全を図るため、この例では電動アクチュエータ90の動作を停止させる。
【0064】
(変形例)
なお、警報としては、表示器400の表示画面上の表示に限られるものではない。それに代えて、または、それに加えて、コントローラ100の制御部101は、例えば図示しないブザーを鳴動させて警報を発してもよいし、例えば工場内に設置された警報ランプを点滅させて警報を発してもよい。
【0065】
また、上の例では、温度対トルク特性CTに対する、図5のステップS1で取得されたトルクTqCとステップS2で取得された現在温度Tcとが表すデータ点の「ずれ」は、温度対トルク特性CTを表す曲線上の基準トルクTqrefと、ステップS1で取得されたトルクTqCとの差(すなわち、トルク座標に沿った縦方向の差)であるものとした。しかしながら、これに限られるものではない。上述の「ずれ」は、上記曲線と上記データ点とが示す温度座標に沿った横方向の差として規定されてもよいし、上記曲線と上記データ点との間の距離として規定されてもよい。
【0066】
また、上の例では、許容範囲Eが基準トルクTqrefの±10%以内の範囲として設定された。しかしながら、これに限られるものではない。許容範囲Eは、温度対トルク特性CTが示す温度毎の基準トルクTqrefの標準偏差をσとしたとき、基準トルクTqrefの±3σ以内の範囲(例えば、図10中に符号E2で示す)として定められてもよい。これにより、許容範囲E2を精度良く設定することができる。
【0067】
上述の異常検知方法を、ソフトウェア(コンピュータプログラム)として、CD(コンパクトディスク)、DVD(デジタル万能ディスク)、フラッシュメモリなどの非一時的(non-transitory)にデータを記憶可能な記録媒体に記録してもよい。このような記録媒体に記録されたソフトウェアを、プログラマブルロジックコントローラ(PLC)、パーソナルコンピュータ、PDA(パーソナル・デジタル・アシスタンツ)、スマートフォンなどの実質的なコンピュータ装置にインストールすることによって、それらのコンピュータ装置に、上述の異常検知方法を実行させることができる。
【0068】
また、上の例では、モータ10の現在のトルクを取得するために、モータ10を駆動する電流と電圧から算出して取得したが、これに限られるものではない。モータ10のトルクは、例えばトルクセンサを設けて取得してもよい。
【0069】
また、上の例では、モータ10の現在温度Tcを、モータ10のオン期間とオフ期間に基づいて算出して取得したが、これに限られるものではない。モータ10の現在温度Tcは、モータ10に設けられた温度センサを用いて取得してもよい。
【0070】
以上の実施形態は例示であり、この発明の範囲から離れることなく様々な変形が可能である。上述した複数の実施の形態は、それぞれ単独で成立し得るものであるが、実施の形態同士の組みあわせも可能である。また、異なる実施の形態の中の種々の特徴も、それぞれ単独で成立し得るものであるが、異なる実施の形態の中の特徴同士の組みあわせも可能である。
【符号の説明】
【0071】
1 システム
10 モータ
11 エンコーダ
90 電動アクチュエータ
100 コントローラ
101 制御部
103 記憶部
200 サーボドライバ
400 表示器
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11