(57)【特許請求の範囲】
【請求項１】
ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータに印加する電力変換装置と、
モータに流れる電流を制御するモータ電流制御部と、
ＰＷＭ周波数を設定するＰＷＭ周波数設定部と、
前記ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部と、
モータに流れる実電流値を検出する実電流値検出部と、
モータの熱時定数を記憶する記憶部と、
前記発熱係数、前記実電流値、及び前記モータの熱時定数に基づいて、モータの温度を推定する温度推定部と、を有し、
前記モータ電流制御部は、前記温度推定部が推定した温度が所定の閾値を超えた場合に、モータに流れる電流を所定の値以下となるように減少させる、
ことを特徴とするモータ制御装置。
【請求項２】
ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータに印加する電力変換装置と、
モータに流れる電流を制御するモータ電流制御部と、
ＰＷＭ周波数を設定するＰＷＭ周波数設定部と、
前記ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部と、
モータに流れる電流を決定するためのモータ電流指令値を検出するモータ電流指令値検出部と、
モータの熱時定数を記憶する記憶部と、
前記発熱係数、前記モータ電流指令値、及びモータの熱時定数に基づいて、モータの温度を推定する温度推定部と、を有し、
前記モータ電流制御部は、前記温度推定部が推定した温度が所定の閾値を超えた場合に、モータに流れる電流を所定の値以下となるように減少させる、
ことを特徴とするモータ制御装置。
【請求項３】
ＰＷＭ指令の変調度を検出するＰＷＭ指令変調度検出部と、前記ＰＷＭ指令の変調度とモータ実電流の高調波成分との関係を示す関数を使用し、該関数から計算される高調波成分により前記モータ電流指令値を補正するモータ電流指令値補正部と、をさらに有する、請求項２に記載のモータ制御装置。
【請求項４】
前記発熱係数算出部が算出する発熱係数は、ＰＷＭ周波数によって変化しない発熱係数と、ＰＷＭ周波数に対して反比例するように変化する補正係数との和であって、以下の式を用いて算出される、請求項１または２に記載のモータ制御装置。
K = Kcon1 + Kfreq(F)
Kcon1 ：ＰＷＭ周波数で変化しない発熱係数
Kfreq(F)：ＰＷＭ周波数に対して反比例するように変化する補正係数
F：ＰＷＭ周波数
【請求項５】
前記のモータ実電流の高調波成分を算出するための関数は、ＰＷＭ指令の変調度が１以下の場合は値０をとり、変調度が１を超える場合は０より大きい値をとる関数であって、以下の式で表される、請求項３に記載のモータ制御装置。
（M≦1の場合）  Kmod(M) = 0  
（M＞1の場合）  Kmod(M) = G(M）  (G(M)＞0)
Kmod(M) ：ＰＷＭ指令の変調度の関数
G(M)：ＰＷＭ指令の変調度の多項式
M：ＰＷＭ指令の変調度
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に関し、特にモータの温度を推定し過熱保護を行うモータ制御装置に関する。
【背景技術】
【０００２】
コスト削減のためモータに温度センサを設けない場合、または、温度センサを設けていても、温度センサの動作が異常となる場合に対処するために、二重監視を行う場合等に、ソフトウエアによりモータの温度を推定することが知られている（例えば、特許文献１）。
【０００３】
図１は、ソフトウエアを用いてモータ温度を推定する従来の制御装置の構成図である。発熱量算出部１０１が、モータ電流、モータの熱時定数、発熱係数及び周囲温度に基づいて発熱量を計算し、目標電流選択部１０９において目標となる電流値を設定し、電流フィードバック制御部９３ｃにてモータ８２に出力する電流を制御するものである。図１に示したモータ制御装置においては、固定値の発熱係数とモータ電流値からモータの発熱量を計算し、モータ温度を推定している。
【０００４】
一方、電流の大小や、速度の大小等に応じて、ＰＷＭ周波数を切り換えながら制御を行う場合がある。モータをＰＷＭ制御によって駆動する場合において、常時固定されたＰＷＭ周波数でモータを駆動する場合には、そのＰＷＭ周波数に応じた発熱係数と、モータに流れる実電流値からモータの温度推定が可能である。
【０００５】
一般的なモータ温度の上昇分Tupは、モータ実電流値をI、発熱係数をK、熱時定数をτ、時間をtとすると、式（１）にて計算できる。
Tup(今回) = K×I2×｛1-exp(-t/τ)｝+ Tup(前回)×exp(-t/τ)           （１）
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２５３７３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ここで、ＰＷＭ周波数が条件によって変わる場合に、式（１）で使用する発熱係数Kについて、ＰＷＭ周波数に対して固定値として扱う場合、温度上昇Tupの計算の精度が悪化する。そのような場合には、単一の発熱係数を使用して、温度推定するのでは、正しい推定ができないという問題が生じていた。
【０００８】
また、電流センサ出力にノイズ成分が含まれる場合、モータ実電流はその影響を大きく受けるため、実電流ではなく、電流指令値を使用して温度推定を行う場合がある。その場合も、ＰＷＭ周波数に対して、Kが固定値であると、温度上昇Tupの計算の精度が悪化する。さらには、ＰＷＭ指令の変調度が１を越える場合には、高調波の影響によって、式（１）を使った温度推定では、誤差が生じるという問題がある。
【課題を解決するための手段】
【０００９】
本発明の一実施例によるモータ制御装置は、ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータに印加する電力変換装置と、モータに流れる電流を制御するモータ電流制御部と、ＰＷＭ周波数を設定するＰＷＭ周波数設定部と、ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部と、モータに流れる実電流値を検出する実電流値検出部と、モータの熱時定数を記憶する記憶部と、発熱係数、実電流値、及びモータの熱時定数に基づいて、モータの温度を推定する温度推定部と、を有し、モータ電流制御部は、温度推定部が推定した温度が所定の閾値を超えた場合に、モータに流れる電流を所定の値以下となるように減少させる、ことを特徴とする。
【００１０】
本発明の他の実施例によるモータ制御装置は、ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータに印加する電力変換装置と、モータに流れる電流を制御するモータ電流制御部と、ＰＷＭ周波数を設定するＰＷＭ周波数設定部と、ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部と、モータに流れる電流を決定するためのモータ電流指令値を検出するモータ電流指令値検出部と、モータの熱時定数を記憶する記憶部と、発熱係数、モータ電流指令値、及びモータの熱時定数に基づいて、モータの温度を推定する温度推定部と、を有し、モータ電流制御部は、温度推定部が推定した温度が所定の閾値を超えた場合に、モータに流れる電流を所定の値以下となるように減少させる、ことを特徴とする。
【発明の効果】
【００１１】
本発明のモータ制御装置によれば、ＰＷＭ周波数に対して発熱係数Kの値を補正することによって、計算されるモータの温度推定の精度を向上させることができる。
【００１２】
また、電流指令値を使用して温度推定を行う場合には、ＰＷＭ周波数によってKの値を補正すると共に、モータ電流指令に対して、変調度も加味した補正を行うことで、計算されるモータの温度推定の精度を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】従来のモータ制御装置の構成図である。
【図２】本発明の実施例１に係るモータ制御装置の構成図である。
【図３】本発明の実施例１に係るモータ制御装置の動作方法を説明するためのフローチャートである。
【図４】本発明の実施例１に係るモータ制御装置の発熱係数の計算方法を説明するためのブロック図である。
【図５】本発明の実施例１に係るモータ制御装置において、ＰＷＭ周波数を変えた場合のモータ実電流とモータ温度との関係を表すグラフである。
【図６】本発明の実施例２に係るモータ制御装置の構成図である。
【図７】本発明の実施例２に係るモータ制御装置の動作方法を説明するためのフローチャートである。
【図８】本発明の実施例２に係るモータ制御装置の発熱係数の計算方法を説明するためのブロック図である。
【図９】本発明の実施例２に係るモータ制御装置において、ＰＷＭ周波数を変えた場合のモータ電流指令値とモータ温度との関係を表すグラフである。
【図１０】本発明の実施例３に係るモータ制御装置の構成図である。
【図１１】本発明の実施例３に係るモータ制御装置の動作方法を説明するためのフローチャートである。
【図１２】本発明の実施例３に係るモータ制御装置の発熱係数の計算方法を説明するためのブロック図である。
【図１３】本発明の実施例３に係るモータ制御装置において、ＰＷＭ指令の変調度に応じた補正がある場合と無い場合におけるＰＷＭ指令の変調度とモータ温度との関係を表すグラフである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明に係るモータ制御装置について説明する。ただし、本発明の技術的範囲はそれらの実施の形態には限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【実施例１】
【００１５】
図２に本発明の実施例１に係るモータ制御装置の構成図を示す。本発明の実施例１に係るモータ制御装置１００は、ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータ２０に印加する電力変換装置１と、モータ２０に流れる電流を制御するモータ電流制御部２と、ＰＷＭ周波数を設定するＰＷＭ周波数設定部３と、ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部４と、モータ２０に流れる実電流値を検出する実電流値検出部５と、モータ２０の熱時定数を記憶する記憶部６と、発熱係数、実電流値、及びモータ２０の熱時定数に基づいて、モータ２０の温度を推定する温度推定部７と、を有し、モータ電流制御部２は、温度推定部７が推定した温度が所定の閾値を超えた場合に、モータ２０に流れる電流を所定の値以下となるように減少させることを特徴とする。ここで、所定の値は、例えば、モータの温度が安全なレベルを超えて上昇しないことが予め確認されている電流とすることができる。
【００１６】
また、電力変換装置１から出力される電流は、モータ２０に入力され、モータ２０が駆動される。さらに、モータ２０の速度は、センサ等（図示せず）により検出され、第１加算部９において速度指令値と比較されて、比較結果が速度制御部８に伝送され速度制御が行われる。また、電力変換装置１から出力される電流は第２加算部１０において速度制御部８が指定したモータ電流指令値と比較され、比較結果がモータ電流制御部２に伝送される。また、温度推定部７は、一次ローパスフィルタ（ＬＰＦ）７ａを備えており、時定数はτである。
【００１７】
次に、本発明の実施例１に係るモータ制御装置の動作方法について説明する。図３に本発明の実施例１に係るモータ制御装置の動作方法を説明するためのフローチャートを示す。まず、ステップＳ１０１において、発熱係数算出部４が記憶部６から発熱係数Kcon1を読み出す。後述するように、発熱係数Kcon1はＰＷＭ周波数によらない定数であり、記憶部６に記憶されている。
【００１８】
次に、ステップＳ１０２において、ＰＷＭ周波数設定部３によって設定されたＰＷＭ周波数Fに基づいて、発熱係数算出部４がそのＰＷＭ周波数Fによる補正係数Kfreq(F)を算出する。ここで、Kfreq(F)はＰＷＭ周波数Fによって変化する補正係数であって、ＰＷＭ周波数Fに対して反比例するように設定することが好ましい。
【００１９】
次に、ステップＳ１０３において、実電流検出部５が、モータ実電流Iを検出する。
【００２０】
次に、ステップＳ１０４において、温度推定部７が、モータ実電流Iの２乗I2を計算する。
【００２１】
次に、ステップＳ１０５において、温度推定部７が、発熱係数（Kcon1 ＋Kfreq(F)）、実電流値I、及び記憶部６に記憶されているモータの熱時定数τに基づいて、下記の式（２）に基づいて温度上昇量Tup1を計算する。
Tup1 = I2 × (Kcon1 + Kfreq(F))×｛1-exp(-t/τ)｝+ Tup1’×exp(-t/τ)   （２）
ここで、FはＰＷＭ周波数、Tup1は温度上昇量を算出する計算ループの今回の温度上昇量、tは時間を表し、Tup1’は温度上昇量を算出する計算ループの今回の１回前の温度上昇量を表す。
【００２２】
上記の式（２）の導出過程を表すブロック図を図４に示す。図４に示すように、発熱係数は、ＰＷＭ周波数で変化しない成分Kcon1と、ＰＷＭ周波数によって変化する補正係数Kfreq(F)との和で表される。高いＰＷＭ周波数ほど、モータ実電流に含まれる高調波成分（周波数の整数倍の成分とそのサイドバンド成分）は小さくなるため、モータの発熱量としては相対的に小さくなる。そのため、発熱係数Kを式（３）のような形の発熱係数として、図４のブロック図のようにモータ温度を計算する。
K = Kcon1 + Kfreq(F)           （３）
ここで、上述のように、Kcon1はＰＷＭ周波数で変化しない発熱係数、Kfreq(F)はＰＷＭ周波数によって変化する補正係数、FはＰＷＭ周波数である。
【００２３】
また、Kfreq(F)はＰＷＭ周波数Fに対して反比例するように設定することが好ましい。例えば、Kfreq(F)の関数として、基準となるＰＷＭ周波数F0とそのＰＷＭ周波数F0での発熱係数Kfreq0を記憶しておき、現在のＰＷＭ周波数がFであれば、式（４）のように与えられるものが考えられる。
Kfreq(F) = Kfreq0 × F0 / F        （４）
【００２４】
ＰＷＭ周波数で変化する発熱係数Kfreq(F)を用いることによって、モータ実電流の２乗とモータ温度との関係は図５のようになる。
【００２５】
次に、ステップＳ１０６において、温度推定部７は、モータ温度Tm1を下記の式（５）を用いて推定する。
Tm1＝ΣTup1＋Tm0              （５）
ここで、ΣTup1は、温度上昇量を算出する計算ループにおける積算値を表し、Tm0は、温度上昇量を算出する計算ループを開始する直前のモータ温度であって、通常は外部の環境の温度である。
【００２６】
次に、ステップＳ１０７において、モータ電流制御部２が、モータ温度Tm1が閾値Tthを越えているか否かを判断する。ここで、閾値Tthは、モータの動作が異常であることを検出するために予め設定した温度である。
【００２７】
モータ温度Tm1が閾値Tthを越えていない場合は、ステップＳ１０２に戻って、モータ温度の推定を継続する。
【００２８】
一方、モータ温度Tm1が閾値Tthを越えている場合は、ステップＳ１０８において、モータ電流制御部２が、モータ電流を所定の値以下となるように減少させる。ここで、モータ電流を減少させることにはモータ電流を停止させて０とすることが含まれる。
【００２９】
以上説明したとおり、本発明の実施例１に係るモータ制御装置によれば、ＰＷＭ周波数に基づいて発熱係数を算出しているので、ＰＷＭ周波数を変えた場合においてもモータ温度を正確に推定することができ、モータ温度の上昇によるモータの動作の異常を防止することができる。
【実施例２】
【００３０】
次に、本発明の実施例２に係るモータ制御装置について説明する。電流センサ出力にノイズ成分が含まれているような場合には、実施例１のようにモータ実電流を検出するのではなく、ノイズの影響が少ないモータ電流指令値を使用して、モータの温度推定を行うことが好ましい場合がある。その場合には、ＰＷＭ指令の変調度が１を超えた領域での電流の高調波成分を考慮しないと精度のよい温度推定ができない。そのような場合には、ＰＷＭ周波数、電流指令値、及びＰＷＭ指令の変調度を考慮して温度推定を行うことが有効である。
【００３１】
図６に本発明の実施例２に係るモータ制御装置の構成図を示す。本発明の実施例２に係るモータ制御装置２００は、ＰＷＭ制御を行うために直流電圧を所定の周波数の交流電圧に変換し、モータ２０に印加する電力変換装置１と、モータ２０に流れる電流を制御するモータ電流制御部２と、ＰＷＭ周波数を設定するＰＷＭ周波数設定部３と、ＰＷＭ周波数に基づいて発熱係数を算出する発熱係数算出部４と、モータ２０に流れる電流を決定するためのモータ電流指令値を検出するモータ電流指令値検出部１１と、モータ２０の熱時定数を記憶する記憶部６と、発熱係数、モータ電流指令値、及びモータ２０の熱時定数に基づいて、モータ２０の温度を推定する温度推定部７と、を有し、モータ電流制御部２は、温度推定部７が推定した温度が所定の閾値を超えた場合に、モータ２０に流れる電流を所定の値以下となるように減少させることを特徴とする。ここで、所定の値は、モータの温度が上昇しないことが予め確認されている電流とすることができる。実施例１に係るモータ制御装置１００においてはモータの実電流を用いてモータの温度を推定しているのに対して、実施例２に係るモータ制御装置２００は、モータ電流指令値を用いてモータの温度を推定している点を特徴としている。実施例２に係るモータ制御装置２００の構成のうち、実施例１に係るモータ制御装置１００の構成と同一の構成については同一の符号で表し、詳細な説明は省略する。
【００３２】
次に、本発明の実施例２に係るモータ制御装置の動作方法について説明する。図７に本発明の実施例２に係るモータ制御装置の動作方法を説明するためのフローチャートを示す。まず、ステップＳ２０１において、発熱係数算出部４が記憶部６から発熱係数Kcon1を読み出す。後述するように、発熱係数Kcon1はＰＷＭ周波数によらない定数であり、記憶部６に記憶されている。
【００３３】
次に、ステップＳ２０２において、ＰＷＭ周波数設定部３によって設定されたＰＷＭ周波数Fに基づいて、発熱係数算出部４がＰＷＭ周波数Fによる補正係数Kfreq(F)を算出する。ここで、Kfreq(F)はＰＷＭ周波数Fによって変化する補正係数であって、ＰＷＭ周波数Fに対して反比例するように設定することが好ましい。
【００３４】
次に、ステップＳ２０３において、モータ電流指令値検出部１１が、モータ２０に流れる電流を決定するためのモータ電流指令値Icmdを検出する。
【００３５】
次に、ステップＳ２０４において、温度推定部７が、モータ電流指令値Icmdの２乗Icmd2を計算する。
【００３６】
次に、ステップＳ２０５において、温度推定部７が、発熱係数（Kcon1＋Kfreq(F)）、モータ電流指令値Icmd、及び記憶部６に記憶されているモータの熱時定数τに基づいて、下記の式（６）に基づいて温度上昇量Tup2を計算する。
Tup2=Icmd2×(Kcon1+ Kfreq(F))×｛1-exp(-t/τ)｝+Tup2’×exp(-t/τ)      （６）
ここで、FはＰＷＭ周波数、Tup2は温度上昇量を算出する計算ループの今回の温度上昇量、tは時間を表し、Tup2’は温度上昇量を算出する計算ループの今回の１回前の温度上昇量を表す。
【００３７】
上記の式（６）の導出過程を表すブロック図を図８に示す。図８に示すように、発熱係数は、ＰＷＭ周波数で変化しない成分Kcon1と、ＰＷＭ周波数によって変化する補正係数Kfreq(F)との和で表される。Kfreq(F)の設定方法は実施例１の場合と同様であるので詳細な説明は省略する。
【００３８】
ＰＷＭ周波数で変化する発熱係数Kfreq(F)を用いることによって、モータ電流指令値の２乗とモータ温度との関係は図９のようになる。
【００３９】
次に、ステップＳ２０６において、温度推定部７は、モータ温度Tm2を下記の式（７）を用いて推定する。
Tm2＝ΣTup2＋Tm0      （７）
ここで、ΣTup2は、温度上昇量を算出する計算ループにおける積算値を表し、Tm0は、温度上昇量を算出する計算ループを開始する直前のモータ温度であって、通常は外部の環境の温度である。
【００４０】
次に、ステップＳ２０７において、モータ電流制御部２が、モータ温度Tm2が閾値Tthを越えているか否かを判断する。ここで、閾値Tthは、モータの動作が異常であることを検出するために予め設定した温度である。
【００４１】
モータ温度Tm2が閾値Tthを越えていない場合は、ステップＳ２０２に戻って、モータ温度の推定を継続する。
【００４２】
一方、モータ温度Tm2が閾値Tthを越えている場合は、ステップＳ２０８において、モータ電流制御部２が、モータ電流を所定の値以下となるように減少させる。ここで、モータ電流を減少させることにはモータ電流を停止させて０とすることが含まれる。また、所定の値は、例えば、モータの温度が安全なレベルを超えて上昇しないことが予め確認されている電流とすることができる。
【００４３】
以上説明したとおり、本発明の実施例２に係るモータ制御装置によれば、モータ電流指令値を用いて、ＰＷＭ周波数に基づいて発熱係数を算出しているので、モータ電流にノイズ成分が含まれている状況下で、ＰＷＭ周波数を変えた場合においてもモータ温度を正確に推定することができ、モータ温度の上昇によるモータの動作の異常を防止することができる。
【実施例３】
【００４４】
次に、本発明の実施例３に係るモータ制御装置について説明する。図１０に本発明の実施例３に係るモータ制御装置の構成図を示す。本発明の実施例３に係るモータ制御装置３００は、実施例２に係るモータ制御装置２００に加えて、ＰＷＭ指令の変調度を検出するＰＷＭ指令変調度検出部１３と、ＰＷＭ指令の変調度とモータ実電流の高調波成分との関係を示す関数を使用し、該関数から計算される高調波成分によりモータ電流指令値Icmdを補正するモータ電流指令値補正部１２とをさらに有する点を特徴とする。実施例３に係るモータ制御装置３００の構成のうち、実施例２に係るモータ制御装置２００の構成と同一の構成については同一の符号で表し、詳細な説明は省略する。
【００４５】
次に、本発明の実施例３に係るモータ制御装置の動作方法について説明する。図１１に本発明の実施例３に係るモータ制御装置の動作方法を説明するためのフローチャートを示す。まず、ステップＳ３０１において、発熱係数算出部４が記憶部６から発熱係数Kcon1を読み出す。後述するように、発熱係数Kcon1はＰＷＭ周波数によらない定数であり、記憶部６に記憶されている。
【００４６】
次に、ステップＳ３０２において、ＰＷＭ周波数設定部３によって設定されたＰＷＭ周波数Fに基づいて、発熱係数算出部４がＰＷＭ周波数Fによる補正係数Kfreq(F)を算出する。ここで、Kfreq(F)はＰＷＭ周波数Fによって変化する補正係数であって、ＰＷＭ周波数Fに対して反比例するように設定することが好ましい。
【００４７】
次に、ステップＳ３０３において、ＰＷＭ指令変調度検出部１３が、ＰＷＭ指令の変調度Mを検出する。次に、ステップＳ３０４において、モータ電流指令値補正部１２が、ＰＷＭ指令の変調度Mと、モータ実電流の高調波成分との関係を示す関数Kmod(M)を算出する。ＰＷＭ指令の変調度Mが大きい（変調度M＞1）場合には、モータ実電流に含まれる高調波成分（基本波に対して5次、7次、11次等の高調波）は大きくなるため、モータの発熱量としては相対的に大きくなる。モータ電流指令値でモータ温度の推定を行う場合、上記高調波成分の考慮が必要になるため、変調度Mから高調波成分を計算する関数Kmod(M)を用意し、図１２のブロック図のようにモータ温度を計算する。Kmod(M)の関数の与え方としては、例えば変調度Mが１以下の場合は値０をとり、変調度Mが１を超える場合は０より大きい値をとる関数であって、モータ実電流の高調波成分とＰＷＭ指令の変調度の係数Gから、式（８）のように与えられるものが考えられる。
Kmod(M) = MAX (0, G（M）)      （８）
即ち、
（M≦1の場合）  Kmod(M) = 0                      （９）
（M＞1の場合）  Kmod(M) = G(M）  (G(M)＞0)      （１０）
と書き換えられる。ここで、Kmod(M)はＰＷＭ指令の変調度Mの関数、G(M)はＰＷＭ指令の変調度Mの多項式、MはＰＷＭ指令の変調度である。後述するように、温度推定部７は、関数Kmod(M)を使用し、該関数から計算される高調波成分によりモータ電流指令値Icmdを補正する。
【００４８】
次に、ステップＳ３０５において、モータ電流指令値検出部１１が、モータ２０に流れる電流を決定するためのモータ電流指令値Icmdを検出する。
【００４９】
次に、ステップＳ３０６において、温度推定部７が、モータ電流指令値Icmdの２乗Icmd2を計算する。
【００５０】
次に、ステップＳ３０７において、温度推定部７が、発熱係数（Kcon1 ＋Kfreq(F)）、モータ電流指令値Icmd、及び記憶部６に記憶されているモータの熱時定数τに基づいて、下記の式（１１）に基づいて温度上昇量Tup3を計算する。
Tup3=(Icmd2+Kmod(M))×(Kcon1+Kfreq(F))×｛1-exp(-t/τ)｝+Tup3’×exp(-t/τ)                                                                          （１１）
ここで、FはＰＷＭ周波数、Tup3は温度上昇量を算出する計算ループの今回の温度上昇量、tは時間を表し、Tup3’は温度上昇量を算出する計算ループの今回の１回前の温度上昇量を表す。
【００５１】
上記の式（１１）の導出過程を表すブロック図を図１２に示す。図１２に示すように、発熱係数は、ＰＷＭ周波数Fで変化しない成分Kcon1と、ＰＷＭ周波数Fによって変化する補正係数Kfreq(F)との和で表される。本実施例では、ＰＷＭ指令変調度検出部１３が、ＰＷＭ指令の変調度Mを検出し、モータ電流指令値補正部１２が、検出されたＰＷＭ指令の変調度Mとモータ実電流の高調波成分との関係を示す関数Kmod(M)を使用し、該関数から計算される高調波成分によりモータ電流指令値Icmdを補正する点を特徴としている。
【００５２】
ＰＷＭ指令の変調度Mとモータ温度との関係を図１３に示す。変調度Mが１以下の場合は、変調度Mに係らずモータ温度は一定とみなされるが、変調度Mが１以上の場合は、変調度の上昇に伴ってモータ温度が上昇することが考えられ、本発明のように補正を行うことによって、変調度Mの影響を考慮してモータ温度の推定を正確に行うことができることがわかる。
【００５３】
次に、ステップＳ３０８において、温度推定部７は、モータ温度Tm3を下記の式（１２）を用いて推定する。
Tm3＝ΣTup3＋Tm0  （１２）
ここで、ΣTup3は、温度上昇量を算出する計算ループにおける積算値を表し、Tm0は、温度上昇量を算出する計算ループを開始する直前のモータ温度であって、通常は外部の環境の温度である。
【００５４】
次に、ステップＳ３０９において、モータ電流制御部２が、モータ温度Tm3が閾値Tthを越えているか否かを判断する。ここで、閾値Tthは、モータの動作が異常であることを検出するために予め設定した温度である。
【００５５】
モータ温度Tm3が閾値Tthを越えていない場合は、ステップＳ３０２に戻って、モータ温度の推定を継続する。
【００５６】
一方、モータ温度Tm3が閾値Tthを越えている場合は、モータ電流制御部２が、ステップＳ３１０において、モータ電流を所定の値以下となるように減少させる。ここで、モータ電流を減少させることにはモータ電流を停止させて０とすることが含まれる。また、所定の値は、例えば、モータの温度が安全なレベルを超えて上昇しないことが予め確認されている電流とすることができる。
【００５７】
以上説明したとおり、本発明の実施例３に係るモータ制御装置によれば、ＰＷＭ指令の変調度Mで変化する発熱係数Kmod(M)を用いることによって、ＰＷＭ指令の変調度を変化させた場合においても、モータ温度を正確に推定することができ、モータ温度の上昇によるモータの動作の異常を防止することができる。
【符号の説明】
【００５８】
１００、２００、３００    モータ制御装置
１    電力変換装置
２    モータ電流制御部
３    ＰＷＭ周波数設定部
４    発熱係数算出部
５    実電流値検出部
６    記憶部
７    温度推定部
７ａ    一次ローパスフィルタ
８    速度制御部
９    第１加算部
１０    第２加算部
１１    モータ電流指令値検出部
１２    モータ電流指令値補正部
１３    ＰＷＭ指令変調度検出部
２０    モータ
【図１】
0005502925.tif 000002
【図２】
0005502925.tif 000003
【図３】
0005502925.tif 000004
【図４】
0005502925.tif 000005
【図５】
0005502925.tif 000006
【図６】
0005502925.tif 000007
【図７】
0005502925.tif 000008
【図８】
0005502925.tif 000009
【図９】
0005502925.tif 000010
【図１０】
0005502925.tif 000011
【図１１】
0005502925.tif 000012
【図１２】
0005502925.tif 000013
【図１３】
0005502925.tif 000014