(57)【要約】【課題】  同期モータがロックした直後のインバータの温度を初期値とし、該初期値にトルク指令値に応じたスイッチング素子の温度上昇を加算してスイッチング素子の温度を正確に推定する。【解決手段】  同期モータ１がロックすると、ロック直後のインバータ４の温度が初期値として記憶される。ロック中にトルク指令値に応じてインバータ４のスイッチング素子５に供給される電流に基づくスイッチング素子５の発熱量が演算される。この発熱量が初期値に加算され、スイッチング素子５の温度が推定される。【選択図】    図３
2005080485.tif 000002
【特許請求の範囲】
【請求項１】
直流を交流に変換し前記同期モータにトルク指令値に応じた電流を供給するインバータと、インバータの温度を測定する温度測定センサと、電流が供給されているにもかかわらず同期モータがロックしていることを検出するロック検出手段と、前記同期モータがロックして前記インバータのスイッチング素子に電流が供給されたときのスイッチング素子の発熱量を前記トルク指令値に応じて演算する発熱量演算手段と、前記ロック検出手段が同期モータのロックを検出したときに前記温度測定センサにより測定された前記インバータの温度を初期値とし、前記発熱量演算手段により求められた発熱量を前記初期値に加算して前記スイッチング素子の温度推定値を算出することを特徴とする同期モータの制御装置。
【請求項２】
請求項１において、前記発熱量演算手段は、トルク指令値と微小時間発熱量との関係を記憶したマップを有し、該微少時間発熱量を積分して前記発熱量を決定することを特徴とする同期モータの制御装置。
【請求項３】
請求項２において、前記発熱量演算手段は、インバータのヒートシンクの入口側冷却水温度及び外気温度の少なくとも一方に応じて発熱量を演算することを特徴とする同期モータの制御装置。
【請求項４】
請求項１乃至３のいずれか１項において、前記温度推定値が閾値を越えると前記トルク指令値を制限することを特徴とする同期モータの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インバータの過熱を防止して同期モータを駆動する制御装置に関するものである。
【背景技術】
【０００２】
従来、同期モータがロックしたときのインバータのスイッチング素子の発熱は急激であり、インバータの温度をセンサにより測定し、測定温度によりインバータに供給する電流を制限するだけでは、センサの測定温度とスイッチング素子の実温度との乖離が大きく、スイッチング素子を完全に保護することができない。このためスイッチング素子の温度を正確に推定してスイッチング素子の過熱を防止する技術が多数開発されている。特許文献１には、スイッチング素子に供給される電流の２乗積分がスイッチング素子の温度上昇とほぼ同じ傾向を示すことに着目し、電流の２乗積分値が許容値を超えると電流を制限する技術が記載されている。
【特許文献１】特開平９−２１５３８８号公報（段落〔００３２〕乃至〔００４１〕、図６）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記従来技術では、電流値の２乗の時間による積分値が閾値を超えるとスイッチング素子が過熱したとして電流の供給を遮断してスイッチング素子の保護を図っている。さらに、高負荷低回転で駆動された後に同期モータがロックした場合には、その後の発熱が小さくてもスイッチング素子が破壊するので、インバータの温度を測定し、インバータの温度に応じて前記閾値を変更することが行われている。しかしながら、係る閾値を同期モータがロックした直後のインバータの初期温度に応じて変更しているだけであるので、スイッチング素子の温度を正確に推定することができなかった。
【０００４】
本発明は係る従来の問題を解決するためのもので、同期モータがロックする直前のインバータの温度を初期値とし、該初期値にトルク指令値に応じたスイッチング素子の温度上昇を加算してスイッチング素子の温度を正確に推定することである。
【課題を解決するための手段】
【０００５】
上記の課題を解決するため、請求項１に記載の発明の構成上の特徴は、直流を交流に変換し前記同期モータにトルク指令値に応じた電流を供給するインバータと、インバータの温度を測定する温度測定センサと、電流が供給されているにもかかわらず同期モータがロックしていることを検出するロック検出手段と、前記同期モータがロックして前記インバータのスイッチング素子に電流が供給されたときのスイッチング素子の発熱量を前記トルク指令値に応じて演算する発熱量演算手段と、前記ロック検出手段が同期モータのロックを検出したときに前記温度測定センサにより測定された前記インバータの温度を初期値とし、前記発熱量演算手段により求められた発熱量を前記初期値に加算して前記スイッチング素子の温度推定値を算出することである。
【０００６】
請求項２に係る発明の構成上の特徴は、請求項１において、前記発熱量演算手段は、トルク指令値と微小時間発熱量との関係を記憶したマップを有し、該微少時間発熱量を積分して前記発熱量を決定することである。
【０００７】
請求項３に係る発明の構成上の特徴は、請求項２において、前記発熱量演算手段は、インバータのヒートシンクの入口側冷却水温度及び外気温度の少なくとも一方に応じて発熱量を演算することである。
【０００８】
請求項４に係る発明の構成上の特徴は、請求項１乃至３のいずれか１項において、前記温度推定値が閾値を越えると前記トルク指令値を制限することである。
【発明の効果】
【０００９】
上記のように構成した請求項１に係る発明においては、同期モータがロックすると、ロック直後のインバータの温度を初期値として記憶し、ロック中にトルク指令値に応じてインバータのスイッチング素子に供給される電流に基づくスイッチング素子の発熱量を演算して初期値に加算して、スイッチング素子の温度を推定する。これにより、モータがロックした直後のインバータの温度を加味してロック中のスイッチング素子の温度を正確に推定することができる。
【００１０】
上記のように構成した請求項２に係る発明においては、同期モータがロック中の各トルク指令値におけるスイッチング素子の発熱量を予め実験により求め、マップにして記憶しておくので、簡単な構成で現実に即した発熱量を演算することができると共に、同期モータがロック中にトルク指令値が変化したとしても、随時トルク指令値に基づいて微少時間発熱量を変更して、微小時間発熱量を積分しているため、正確に発熱量を演算することができ、スイッチング素子の温度を正確に推定することができる。
【００１１】
上記のように構成した請求項３に係る発明においては、同期モータがロック中の各トルク指令値におけるスイッチング素子の発熱量を、ヒートシンクの異なる入口側冷却水温度、及び異なる外気温度において予め実験により求め、入口側冷却水温度及び外気温度の少なくとも一方について温度別に複数のマップにして記憶しておくので、簡単な構成で各入口側冷却水温度、各外気温度における発熱量を演算することができる。
【００１２】
上記のように構成した請求項４に係る発明においては、スイッチング素子の推定温度が閾値を超えると、トルク指令値を制限するので、スイッチング素子が過熱して破壊することを防止できる。
【発明を実施するための最良の形態】
【００１３】
以下に、図面に基づいて本発明に係る同期モータの制御装置の実施の形態について説明する。図１は電気自動車の走行用モータとして使用される同期モータ１の制御装置２を示すブロック図である。同期モータ１は永久磁石をロータに使用した同期モータであり、バッテリ３を電源とし、インバータ４により直流を交流に変換して電力供給される。インバータ４は同期モータ１のＵ，Ｖ，Ｗ相コイル９にそれぞれ対応して一対のスイッチング素子５（Ｕ＋，Ｕ−、Ｖ＋，Ｖ−、Ｗ＋，Ｗ−）を備えており、各スイッチング素子５のスイッチング作用により電力変換している。なお、バッテリ３とインバータ４の各スイッチング素子５との間に電流平滑用のコンデンサＣが接続される。
【００１４】
電子制御ユニット６には、同期モータ１の回転位相を検出する回転センサ７、及び車両のアクセル開度を検出するアクセル開度センサ８が接続されている。回転センサ７は検出した同期モータ１の回転位相を電子制御ユニット６に送出し、電子制御ユニット６は、同期モータ１の回転位相に応じてＵ，Ｖ，Ｗ相の各コイル９に供給される三相交番電流の位相角を決定するとともに、位相角度の変化に基づいて同期モータ１の回転数を算出する。電子制御ユニット６は、ＣＰＵ、ＲＯＭ、ＲＡＭ及び入出力インターフェース等から構成され、回転センサ７、アクセル開度センサ８、温度センサ１０等の検出信号が入出力インターフェースを介して入力され、同期モータ１の回転位相に応じた位相角の三相交番電流をＵ，Ｖ，Ｗ各相のコイル９に供給するように各スイッチング素子５を開閉する。さらに、電子制御ユニット６は、アクセル開度センサ８が検出したアクセル開度等に基づいて同期モータ１のトルク指令値を演算し、該指令トルクを出力する電流が同期モータ１に供給されるようにトルク指令値に応じたデューティ比でスイッチング素子をＰＷＭ制御して電流を同期モータ１に供給する。
【００１５】
図２において、インバータ４のスイッチング素子５の近傍には温度センサ１０が設けられ、スイッチング素子５の近傍の温度を検出している。同期モータ１がロックせずに回転駆動されているときは、温度センサ１０により検出されたスイッチング素子５の近傍の温度はスイッチング素子５の温度とかなり近い値を示す。インバータ４にはヒートシンク１１が設けられ、インバータ４においてスイッチング素子５はヒートシンク１１を入口から出口に向かって流れる冷却水により冷却される。ヒートシンク１１の入口側には冷却水温度センサ１４が取付けられ、ヒートシンク１１に流入する冷却水の温度が測定される。
【００１６】
次に、同期モータ１の制御装置２についてその作動とともに説明する。図３に示したスイッチング素子５の過熱を防止する過熱防止プログラム１２は、電子制御ユニット６のＲＯＭに登録され、ＣＰＵによって微小時間間隔で繰返し実行される。ステップＳ１においてモータ１がロック状態か否か判定される。ロック状態とは、トルク指令値が所定値以上であるにも拘わらず同期モータ１が回転していない状態である。トルク指令値が所定値以下の場合は、トルク指令値に応じた小電流がモータ１に供給されているにも拘わらず車両がストールしてモータ１がロックしても許容される範囲である。従って、ステップＳ１においてＣＰＵはアクセル開度センサ８からの信号が所定トルク指令値に対応する所定開度以上であるか否か判定し、回転センサ７からの検出信号に基づいて算出した回転数が略０であるか否か判定する。アクセルが所定開度以上であり、回転数が略０であるとモータ１がロック状態であると判定する。このようにステップＳ１は、電流が供給されているにもかかわらず同期モータがロックしていることを検出するロック検出手段をなしている。モータ１がロック状態と判定され、ロックフラッグがオフであると（ステップＳ２）、ロックフラッグがオンされ（ステップＳ３）、温度センサ１０からの測定温度が取込まれてスイッチング素子５の最も高温となる中心部の温度を計算して推定した温度推定値を初期値として記憶され（ステップＳ４）、プログラム１２の実行を終了する。
【００１７】
微小時間Δt経過後にプログラム１２が実行され、ロック状態であると、ロックフラッグは先回のプログラム実行でオンされているので、アクセル開度センサ８により検出されたアクセル開度等に基づいて演算された現在のトルク指令値に対応する発熱傾きが図４の発熱傾きマップ１３から演算される（ステップＳ５）。発熱傾きマップ１３は、各トルク指令値を出力するために同期モータに供給される三相交番電流をスイッチング素子５に供給したときのスイッチング素子５の１秒当たりの上昇温度である発熱傾き（℃／sec）を実験で求めてマップ化したものである。マップ化の一例としては、モータ１がロック状態となったときにアクセル開度等に基づいて演算されたトルク指令値を出力するために同期モータ１の各相のコイル９に供給される三相交番電流を、１相が最大電流となる位相関係の各相の電流を各相のスイッチング素子５に直流状態で供給したときに、最大電流が供給されるスイッチング素子５の発熱傾き（℃／sec）を実験で求めてマップ化するとよい。このように演算された発熱傾きに微小時間Δtを掛けて微小時間Δtの微小時間発熱量を求め、この微小時間発熱量を積算して、同期モータ１がロックした以降の温度上昇量である発熱量を求め（ステップＳ６）、これを初期値に加算してスイッチング素子の温度推定値Ｔsが算出される（ステップＳ７）。
【００１８】
同期モータ１がロックした以降にインバータ４のスイッチング素子５に電流が供給されたときのスイッチング素子の発熱量をトルク指令値に応じて演算する発熱量演算手段は、過熱防止プログラム１２のステップＳ５，Ｓ６及び発熱傾きマップ１３等により構成されている。
【００１９】
ステップＳ１においてモータ１がロック状態でない場合、ロックフラッグをオフしてプログラム１２の実行を終了する（ステップＳ１０）。このように過熱防止プログラム１２が微小時間間隔で実行され、同期モータ１のロックが最初に検出されたときに温度検出センサ１０により検出されたインバータ４の温度が初期値として記憶され、各微小時間毎に各トルク指令値に応じた発熱傾きが発熱傾きマップ１３に基づいて演算され、各発熱傾きに微小時間を乗じた積を積算した積分値が初期値に加算されてスイッチング素子５の温度推定値Ｔsが算出される。温度推定値Ｔsが閾値より高いか否か判定され（ステップＳ８）、低い場合はそのままプログラム１２の実行を終了し、高い場合は、アクセル開度等に基づいて演算されたトルク指令値が、発熱傾きが０となるトルク指令値に制限される（ステップＳ９）。
【００２０】
例えば、図５に示す場合、モータ１のロックが時間ｔ０で判定されると、温度センサ１０からの測定温度がスイッチング素子５の温度推定値Ｔsの初期値Ｔsiとして記憶される。その時のアクセル開度等に基づいて演算されたトルク指令値Ｆ1に対応する発熱傾きｋ1がマップ１３から求められ、発熱傾きに微小時間Δtを乗じた積の積算値に初期値が加算されてスイッチング素子５の温度推定値Ｔsが微小時間Δt経過毎に算出される。時間ｔ1でトルク指令値がＦ2に減少されたとすると、トルク指令値Ｆ2に対する発熱傾きｋ2がマップ１３から求められ、発熱傾きｋ2は負であるので、スイッチング素子５の温度推定値Ｔsは発熱傾きｋ2で減少する。時間ｔ2でトルク指令値がＦ3に増加されると、トルク指令値Ｆ3に対する発熱傾きｋ3がマップ１３から求められ、スイッチング素子５の温度推定値Ｔsは発熱傾きｋ3で増加する。時間ｔ3でスイッチング素子５の温度推定値Ｔsが閾値Ｔuを越えると、トルク指令値Ｆ3を、発熱傾きが０となるトルク指令値Ｆ0であるトルク制限値に減少させる制御が行なわれる。この閾値Ｔuは、スイッチング素子５の連続通電可能な温度Ｔcより低く設定され、トルク指令値をトルク制限値に減少したときにスイッチング素子５の温度が連続通電可能な温度Ｔcとなるように設定されている。トルク指令値がトルク制限値に減少されるまでの間は発熱傾きが正であるので、温度推定値Ｔsは増加するが、やがて発熱傾きが０になるとスイッチング素子５の温度は連続通電可能な温度Ｔcとなる。この場合、冷却水の温度が低いとヒートシンクの冷却能力が高くなるので、発熱傾きが０になる指令トルクは高くなる。従って、ヒートシンク１１に流入する入口側冷却水温度Ｔwに応じてトルク制限値が決定される。
【００２１】
上記実施の形態では、インバータ４のスイッチング素子５に電流が供給されているときのスイッチング素子５の発熱傾きをトルク指令値に応じて演算する発熱傾き演算手段は、トルク指令値に対応する発熱傾きを記憶したマップ１３を有しているが、トルク指令値と発熱傾きとの関係を数式で表して記憶しておいてもよい。
【００２２】
さらに、上記実施の形態では、発熱傾き演算手段の一例として、同期モータ１の３相のコイルの中の１相が最大電流となる位相関係でモータ１がロック状態となったとし、係る位相関係で３相の電流を各スイッチング素子５に直流状態で供給したときに、最大電流が供給されるスイッチング素子５の発熱傾き（℃／sec）を実験で求めてマップ化しているが、ロック状態のときに回転センサ７で検出されるモータ１の回転位相において、３相の各コイルに供給される電流をトルク指令値に応じて演算し、その中の最大電流をスイッチング素子５に直流状態で供給したときのスイッチング素子５の発熱傾き（℃／sec）をマップ又は数式で演算するようにしてもよい。
【００２３】
上記実施形態では、各トルク指令値を出力するために同期モータに供給される三相交番電流を、例えば１相が最大電流となる位相関係の各相の電流を各相のスイッチング素子５に直流状態で供給したときに、最大電流が供給されるスイッチング素子５の発熱傾き（℃／sec）を実験で求めてマップ化しているが、微小時間Δt内に発熱する微小時間発熱量を実験で求めてマップ化してもよい。このようにすると微小時間Δt毎にそのときのトルク指令値に応じた微小時間発熱量をマップから直接求め、この微小時間発熱量を積算して、同期モータ１がロックした以降の発熱量を求めることができる。
【図面の簡単な説明】
【００２４】
【図１】本発明に係る同期モータの制御装置の一実施の形態を示すブロック図。
【図２】インバータ、スイッチング素子、温度センサ、ヒートシンク及び冷却水温度センサを示す図。
【図３】過熱防止プログラムを示すフロー図。
【図４】発熱傾きマップを示す図。
【図５】スイッチング素子の温度推定値とトルク指令値とのモータロック後の推移を示す図。
【符号の説明】
【００２５】
１…同期モータ、２…制御装置、３…バッテリ、４…インバータ、５…スイッチング素子（Ｕ＋，Ｕ−，Ｖ＋，Ｖ−，Ｗ＋，Ｗ−）、６…電子制御ユニット、７…回転センサ、８…アクセル開度センサ、９…コイル、１０…温度センサ、１１…ヒートシンク、１２…過熱防止プログラム、１３…発熱傾きマップ（過熱防止プログラムのステップＳ５，Ｓ６とともに発熱量演算手段を構成）、１４…冷却水温度センサ。
【図１】
2005080485.tif 000003
【図２】
2005080485.tif 000004
【図３】
2005080485.tif 000005
【図４】
2005080485.tif 000006
【図５】
2005080485.tif 000007