本発明の実施形態に係る電力変換器の制御方法、及び、電力変換器の制御装置について説明する。
(第1実施形態)
図1は、本実施形態の電力変換器、及び、その制御装置を備えるモータシステムの概略構成図である。なお、このモータシステムは、車両に搭載される。
モータシステム200において、電力変換器10は、バッテリ1の正極ラインと負極ラインとの間に設けられるインバータであり、バッテリ1から供給される直流電力を交流電力に変換して、モータ2に供給する。バッテリ1と電力変換器10との間にはリレー3が設けられており、リレー3が操作されることで、バッテリ1から電力変換器10への電力供給が制御される。これにより、モータシステム200の起動/停止が制御される。また、電力変換器10とモータ2との間には電流センサ4が設けられており、モータ2に供給される電流を検出可能に構成されている。また、モータ2には、レゾルバ5が設けられており、モータ2の回転子の磁極位置θeを検出する。
電力変換器10は、電力変換回路11を備えており、電力変換回路11は、スイッチング機能を有する半導体素子12を複数有する。本実施形態においては、モータ2は3相で駆動する。また、電力変換回路11は、3相6アーム、すなわち、UVWの3相のそれぞれにおいて上アームと下アームとにより構成されており、6つの半導体素子12(UP、UN、VP、VN、WP、WN)を備える。なお、このようなモータ2、及び、電力変換回路11の構成は一例であって、本実施形態に限定されるものではない。
半導体素子12には、それぞれ、抵抗値Rgが可変のゲート抵抗13が設けられている。なお、この図においては、可読性のために、図左側の2つの半導体素子12(UP、UN)にのみゲート抵抗13が設けられているが、電力変換回路11を構成する6つの半導体素子12(UP、UN、VP、VN、WP、WN)の全てにゲート抵抗13が設けられている。
半導体素子12は、制御装置100から出力されるSW信号(オン/オフのスイッチング信号)に応じてゲート抵抗13への印加電圧が制御されることで、スイッチングが行われる。また、半導体素子12においては、制御装置100から出力されるR信号(抵抗値の切り替え信号)に応じて、ゲート抵抗13の抵抗値Rgが基準抵抗値と低抵抗値との間で切り替えられることで、スイッチング速度が制御される。具体的には、抵抗値Rgが小さくなるほどスイッチング速度が速くなる。
電力変換回路11の筐体には、温度センサ14が設けられている。電力変換回路11の筐体の温度と、その内部に配置される電力変換回路11を構成する半導体素子12の素子温度Tsとは略同一であるとみなすことができるため、温度センサ14は、筐体の温度を測定することにより、素子温度Tsを取得する。なお、本実施形態においては、温度センサ14は、電力変換回路11に対して1つ設けられている。また、温度センサ14を半導体素子12ごとに複数設ける例については、後の第1変形例に記載する。
電力変換器10においては、バッテリ1の正極ラインと負極ラインとの間において、電力変換回路11と並列に、電力変換回路11に対してバッテリ1側に、キャパシタ15が設けられている。キャパシタ15は、半導体素子12のスイッチングに起因するリプルを平滑化する。また、キャパシタ15の両端には電圧センサ16が設けられており、電圧センサ16は、電力変換器10へ入力される直流電圧Vdcを検出する。
次に、制御装置100の構成について説明する。制御装置100は、中央演算装置(CPU)、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)及び入出力インタフェース(I/Oインタフェース)を備えたマイクロコンピュータによって、所定のプログラムを実行可能に構成される。制御装置100を複数のマイクロコンピュータで構成することも可能である。
制御装置100には、上位装置である車両コントローラ6からトルク指令値T*が入力される。なお、車両コントローラ6は、入力センサ7から、キー、シフトレバー、ブレーキペダル、アクセルペダルなどのドライバーによる操作情報の入力を受け付けると、それらの操作情報に応じてトルク指令値T*を算出する。また、車両コントローラ6は、制御装置100にから入力される診断結果に基づいて、トルク指令値T*に対して所定の条件で制限を行う。
制御装置100は、電流指令値演算部101、電流制御部102、dq/uvw相変換部103、信号変換部104、uvw/dq相変換部105、電気角速度磁極位置検出部106、及び、診断部107を備える。これらの複数の機能部は、制御装置100の内部に論理的に配置されてもよいし、異なるマイクロコンピュータにより構成されてもよい。
電流指令値演算部101は、車両コントローラ6からのトルク指令値T*、電圧センサ16からの直流電圧Vdc、及び、後述の電気角速度磁極位置検出部106からの電気角速度ωの入力を受け付ける。電流指令値演算部101は、これらの入力に基づいて、予め記憶しているマップを用いて電流指令値id *、iq *を算出すると、算出した電流指令値id *、iq *を電流制御部102に出力する。
電流制御部102は、電流指令値演算部101からの電流指令値id *、iq *、及び、後述のuvw/dq相変換部105からの電流測定値id、iqの入力を受け付ける。電流制御部102は、電流指令値id *、iq *と電流測定値id、iqとの偏差がゼロとなるように、電圧指令値vd *、vq *を決定する。決定された電圧指令値vd *、vq *は、dq/uvw相変換部103へと出力される。
電流制御部102においては、例えば、以下に示されるようなPI制御が行われる。
vd *=Kpd(id *−id)+Kid∫(id *−id)dt−ωLq・iq
vq *=Kpq(iq *−iq)+Kiq∫(iq *−iq)dt+ω(Ld・id+φ)
ただし、各パラメータは、以下に示す値である。
Kpd:d軸比例ゲイン
Kpq:q軸比例ゲイン
Kid:d軸積分ゲイン
Kiq:q軸積分ゲイン
Ld:d軸インダクタンス
Lq:q軸インダクタンス
φ:モータ2の回転子に設けられる永久磁石の永久磁石鎖交磁束数
dq/uvw相変換部103は、電流制御部102から出力される電圧指令値vd *、vq *に対して、電気角速度磁極位置検出部106から出力される磁極位置θeに基づいた相変換を行うことで、電圧指令値vu *、vv *、vw *を算出する。算出された電圧指令値vu *、vv *、vw *は、信号変換部104へと出力される。
信号変換部104は、電圧指令値vu *、vv *、vw *と、キャリア搬送波(一般に数kHz〜10数kHz程度の三角波)とを比較して、電力変換器10の半導体素子12のスイッチング制御に用いるSW信号を出力する。電力変換器10は、SW信号に応じて半導体素子12が操作されることによって、バッテリ1から供給される直流電力をモータ2に印加する3相の交流電力に変換する。
また、信号変換部104は、半導体素子12のスイッチング速度を変化させるために、ゲート抵抗13の抵抗値Rgを切り替えるR信号を出力する。信号変換部104には、温度センサ14により取得された素子温度Tsが入力されており、例えば、素子温度Tsが高い場合には、抵抗値Rgを基準抵抗値から低抵抗値に切り替えることにより、スイッチング速度を高速化して電力変換回路11の発熱量を抑制する。さらに、信号変換部104は、後述のように、診断部107からの診断信号Dに応じても、基準抵抗値と低抵抗値とを切り替える。
uvw/dq相変換部105は、電流センサ4により測定されたuvw相の電流測定値iu、iv、iwに対して、電気角速度磁極位置検出部106からの磁極位置θeの入力に基づいた相変換を行うことで、dq軸の電流測定値id、iqを算出する。算出された電流測定値id、iqは、電流制御部102、及び、診断部107に出力される。
診断部107は、ゲート抵抗13の抵抗値Rgについて、基準抵抗値と低抵抗値との切り替え機能が正常に動作しているか否かの診断制御を行うブロックである。診断部107は、トルク指令値T*、電気角速度ω、直流電圧Vdc、電流測定値id、iq、素子温度Tsの入力を受け付けると、これらの入力に基づいて、診断制御の実行の可否や中止の要否を判定する。そして、診断部107は、診断制御を行う場合には、診断信号Dを出力して、ゲート抵抗13の抵抗値Rgの基準抵抗値と低抵抗値との切り替えを行う。診断部107は、抵抗値Rgの切り替え前後における素子温度Tsの温度差ΔTsを用いて、切り替えが正常に行われているか否かを診断する。そして、診断部107は、診断結果を車両コントローラへ送信する。なお、この診断制御については、図2及び図3を用いて説明する。
次に、制御装置100による診断制御について説明する。
図2は、主に、制御装置100が備える診断部107により行われる診断制御の概略の説明図である。この図においては、診断開始からの各パラメータの経時変化が示されており、上段に、トルク指令値T*、モータ2の電気角速度ω、及び、直流電圧Vdcが示され、中段に、ゲート抵抗13の抵抗値Rgが示され、下段に半導体素子12の素子温度Tsが示されている。なお、これらのパラメータは時間tに応じて変化するものとし、例えば、時刻tにおける素子温度Tsは、Ts(t)と示されるものとする。
上段に示されるように、トルク指令値T*、電気角速度ω、及び、直流電圧Vdcが、点線で示される所定の変動許容範囲内にある場合に、診断部107は診断制御を行う。一方で、これらのパラメータが変動し、いずれか1つのパラメータが変動許容範囲にない場合には、素子温度Tsが変化する可能性が高く、検出される温度変化の中から診断に起因する温度変化が支配的とならないため、診断制御を開始せず、また、開始している場合には中断する。
診断制御においては、中下段に示されるように、診断制御の開始(t=0)から、抵抗値Rgが基準抵抗値である状態で時間τ経過させた後、素子温度Ts(τ)が取得される。その後、抵抗値Rgを低抵抗値に切り替え、さらに時間τだけ経過し、すなわち、診断開始から2τ経過した時点で素子温度Ts(2τ)が取得される。なお、時間τは電力変換回路11の温度変化に関する時定数であり、ゲート抵抗13の抵抗値Rgの切り替え後の時間τ経過すると、電力変換回路11の温度は略安定しているものとする。
そして、診断部107は、両者の温度差であるΔTs(=Ts(2τ)−Ts(τ))を算出する。ここで、抵抗値Rgの切り替えが正常に行われている場合には、ΔTsは所定の閾値であるTsα以上となる。一方で、抵抗値Rgの切り替え機能が正常に動作しておらず、抵抗値Rgが基準抵抗値または低抵抗値のいずれかに固着しているような場合には、両者の温度差は極めて小さく、ΔTsはTsαよりも小さくなる。そこで、診断部107は、ΔTsがTsα以上であるか否かを判断することにより、抵抗値Rgの切り替え機能の正常/異常を診断できる。
図3は、制御装置100により行われる診断制御のフローチャートである。また、制御装置100は、制御装置100が記憶しているプログラムを実行することで診断制御を実行するとともに、この診断制御を所定のタイミングで繰り返し行うことにより、一連の診断制御を実行する。なお、診断制御は、制御装置100が備える診断部107が主体となって行われるため、以下のフローチャートにおける各処理は、主に、診断部107により実行されるものとして説明する。
ステップS101において、診断部107は、トルク指令値T*及びモータ2の電気角速度ωを用いて、図4に示される領域に基づいて、診断が実施可能な領域内であるか否かを診断する。
ここで、図4は、トルク指令値T*と電気角速度ωとに基づいた運転点を示す図である。この図に示されるように、第1実施形態においては、トルク指令値T*及び電気角速度ωは共に、上限値及び下限値の近傍でないような診断領域において、診断制御の実行が可能と判断される。
切り替え機能の正常/異常の診断は、抵抗値Rgの切り替え前後における素子温度Tsの差であるΔTsに基づいて行われるため、モータ2の駆動状態が安定している必要がある。トルク指令値T*、及び、電気角速度ωは、ともにモータ2の駆動に関するパラメータ(モータパラメータ)である。
トルク指令値T*が小さすぎる場合には、モータ2に大きな電流が流れないので半導体素子12の温度変化が小さく、ΔTsの変化の検出が困難になる。また、電気角速度ωが小さすぎる場合には、モータ2への電流の周波数も低く(例えば、周期が熱時定数より長いような場合)、半導体素子温度上昇が全相均一とならないことから、各相のΔTsの変化も均一ではなくなり検出が困難になる。一方、トルク指令値T*や電気角速度ωが大きすぎる場合には、比較的大きな電流が必要な領域であり、主機能である温度によるゲート抵抗の抵抗値の切り替え制御と重なる可能性があるため、診断制御には適さない。そのため、図4に示される診断領域において診断可能と判断される。
なお、診断部107は、トルク指令値T*及び電気角速度ωに加えて、電流指令値演算部101からの電流指令値id *、iq *や、電流センサ4により取得される電流測定値id、iqなど用いて、モータ2の駆動状態に応じて診断制御の可否を判断してもよい。
また、図4においては、トルク指令値T*が大きい部分に、制限領域が示されている。この制限領域においては、ゲート抵抗13の抵抗値Rgを低抵抗値に切り替えることにより、半導体素子12のスイッチングを高速化し、電力変換回路11の発熱量を抑制する。しかしながら、診断部107が、ゲート抵抗13の抵抗値Rgの切り替えが正常に行われていないと診断する場合には、車両コントローラ6は、後述の処理において(図3のステップS113)、運転制限を行う。
再び図3を参照すれば、診断部107は、運転点が診断領域内にあると判断すると(S101:Yes)、診断制御を継続するために、次に、ステップS102の処理を行う。診断部107は、運転点が診断領域内にないと判断すると(S101:No)、診断が困難と判断して、一連の診断制御を終了するために、次に、ステップS114に示される終了処理を行う。
ステップS102において、診断部107は、初期値の設定がない状態であるか否かを判定する。診断部107は、初期値が設定されてない場合には(S102:Yes)、初期値を設定するために、次に、ステップS103の処理を行う。一方、診断部107は、初期値が設定されている場合には(S102:No)、ステップS103の処理をスキップし、次に、ステップS104の処理を行う。
ステップS103は、診断の開始時に行われる処理である。診断部107は、その時刻におけるトルク指令値T*、電気角速度ω、及び、直流電圧Vdcを、診断開始時の初期値として設定する。これらのパラメータは、時刻tに応じて変化するため、T*(t)、ω(t)、及び、Vdc(t)と示されるものとし、診断部107は、t=0における、T*(0)、ω(0)、及び、Vdc(0)を初期値として設定する。
この初期値の設定の有無の判定(S102)、及び、初期値の設定(S103)は、本フローの診断制御が繰り返されて、一連の診断制御が実行されることに起因している。
例えば、後述のステップS105、S109における時間経過の判定処理において、ある時間経過していないと判定される場合には(S105、S109:No)、一連の診断制御のうちの1つの処理であるその診断制御を終了させるが、一連の診断制御の全体を終了させるものではない。そのような場合には、次の診断制御においては、一連の診断制御の開始時に設定された初期値を用いる必要がある。そのため、ステップS102は、一連の診断制御の開始可否の判定に相当し、ステップS103は、一連の診断制御の開始処理に相当する。なお、診断制御が繰り返し行われている間では、ステップS102は、一連の診断制御の完了前における終了の要否の判定を行う。
次に、ステップS104において、診断部107は、現在時刻tにおけるトルク指令値T*(t)と、初期値であるトルク指令値T*(0)との差分ΔT*(=|T*(t)−T*(0)|)を算出し、その差分ΔT*が許容値よりも小さいか否かを判定する。
同様に、診断部107は、ω(t)とω(0)との差分Δω(=|ω(t)−ω(0)|)を算出し、Δωが許容値よりも小さいか否かを判定するとともに、Vdc(t)とVdc(0)との差分ΔVdc(=|Vdc(t)−Vdc(0)|)が許容値よりも小さいか否かを判定する。直流電圧Vdcについては、ここでは診断開始の診断領域判断条件には用いていないが、電圧変動に応じて半導体素子のスイッチング損失が変わるため、診断開始からの差分ΔVdcが小さいことを判断している。
診断部107は、差分ΔT*、Δω、及び、ΔVdcの全てがそれぞれと対応する許容値よりも小さいと判断する場合には(S104:Yes)、図2(a)に示されるような状態であり、これらのパラメータの変動が小さく、診断可能と判断して、次に、ステップS105の処理を行う。一方、診断部107は、差分ΔT*、Δω、及び、差分ΔVdcのうちの少なくとも1つが許容値以上であると判断する場合には(S104:No)、パラメータの変動が大きく、診断が困難と判断して、一連の診断制御を終了するために、ステップS114に示される終了処理を行う。なお、ステップS104において、ΔT*、Δω、及び、ΔVdcと比較される許容値は、予め実験などにより求められるものとする。
ステップS105において、診断部107は、診断開始時からの経過時間tが時定数τよりも大きいか否かを判定する。診断部107は、経過時間tが時定数τよりも大きい場合には(S105:Yes)、所定の時間τが経過しているため、次に、ステップS106の処理を行う。診断部107は、経過時間tが時定数τよりも大きくない場合には(S105:No)、所定の時間τが経過していないので、診断制御を中断する。なお、その後、診断部107は、次の診断制御を行うことで、一連の診断制御が再開される。
ステップS106において、診断部107は、Ts(τ)の設定がないか否かを判定する。診断部107は、Ts(τ)が設定されていない場合には(S106:Yes)、Ts(τ)の温度を取得するために、次にステップS107の処理を実行する。一方、診断部107は、Ts(τ)が設定されている場合には(S106:No)、すでに過去の診断制御においてTs(τ)が設定されているため、ステップS107の処理をスキップし、ステップS108の処理を実行する。
ステップS107においては、診断部107は、その時刻tで取得した素子温度Tsを、Ts(τ)として設定する。同時に、診断部107は、ゲート抵抗13の抵抗値Rgを低抵抗値に変化させる旨の診断信号Dを信号変換部104に送信する。信号変換部104は、診断信号Dに応じて、ゲート抵抗13の抵抗値Rgを低抵抗値に切り替える。
ステップS108においては、ステップS104と同様に、診断部107は、ΔT*、Δω、ΔVdcを算出し、これらの差分が許容値よりも小さいか否かを判定する。診断部107は、ΔT*、Δω、及び、差分ΔVdcの全てが許容値よりも小さいと判断する場合には(S108:Yes)、診断可能と判断して、次に、ステップS109の処理を行う。一方、診断部107は、ΔT*、Δω、及び、差分ΔVdcのうちの少なくとも1つが許容値以上であると判断する場合には(S108:No)、診断が困難と判断して、一連の診断制御を終了するために、ステップS114に示される終了処理を行う。
ステップS109において、診断部107は、経過時間tが電力変換回路11の時定数τの2倍(2τ)よりも大きいか否かを判定する。この判定処理により、ステップS107のゲート抵抗13の抵抗値Rgの低抵抗値への切り替えからさらにτ経過したか否かが判断される。診断部107は、経過時間tが2τよりも大きい場合には(S109:Yes)、診断制御を進めるために、次に、ステップS110の処理を行う。診断部107は、経過時間tが2τよりも大きくない場合には(S109:No)、所定の時間2τが経過していないので、診断制御を中断する。なお、その後、診断部107は、次の診断制御を行うことで、一連の診断制御が再開される。
ステップS110において、診断部107は、その時刻2tで取得した素子温度Tsを、Ts(2τ)として設定する。同時に、診断部107は、ゲート抵抗13の抵抗値Rgを基準抵抗値に変化させる旨の診断信号Dを信号変換部104に送信する。信号変換部104は、診断信号Dに応じて、ゲート抵抗13の抵抗値Rgを基準抵抗値に切り替える。
ステップS111において、診断部107は、Ts(τ)からTs(2τ)を減じることでΔTs(=Ts(τ)−Ts(2τ))を算出し、ΔTsがTsα以上であるか(ΔTs≧Tsα)否かを判定する。Tsαは、予め記憶された値であって、ゲート抵抗13の抵抗値Rgが基準抵抗値から低抵抗値に正常に切り替えられる場合における、Ts(τ)とTs(2τ)との差であり、複数回の測定における最小値である。
診断部107は、ΔTsがTsα以上となる場合には(S111:Yes)、ΔTsは十分に大きく、抵抗値Rgの切り替え機能が正常に動作していると診断し、次に、ステップS112の処理を行う。一方、診断部107は、ΔTsがTsα以上とならない場合には(S111:No)、ΔTsは十分に大きくなく、抵抗値Rgの切り替え機能が正常に動作していない(異常)と診断し、ステップS113の処理を行う。
ステップS112においては、診断部107は、全ての半導体素子12のゲート抵抗13の抵抗値Rgの切り替え機能が正常であると診断し、その診断結果を車両コントローラ6に出力する。車両コントローラ6は、診断部107の診断結果を受けて、制限領域(図4)も含めた領域で運転指令し、制御装置においては電力変換器の温度などの状態に応じてゲート抵抗13の抵抗値Rgを低抵抗値に切り替えることで、発熱量を抑制する。
ステップS113においては、診断部107は、いずれかの半導体素子12の抵抗値Rgの切り替え機能が異常と診断し、その診断結果を車両コントローラ6に出力する。車両コントローラ6は、診断部107の診断結果を受けて、制限領域にモータ2の運転点が入らないように、運転制限を行う。
ステップS114においては、診断部107は、ゲート抵抗13の抵抗値Rgを基準抵抗値に切り替えるとともに、初期値であるT*(0)、ω(0)、Vdc(0)をクリアする。なお、T*(τ)、ω(τ)、Vdc(τ)が設定されている場合には、診断部107は、これらの値をクリアする。この処理によって、一連の診断制御が終了される。
このような診断制御にすることで、ゲート抵抗13の抵抗値Rgの切り替えが正常であるか否かが診断でき(S111)、切り替えが正常でない(異常)と診断される場合には(S111:No)、運転制限を行うことで(S113)、モータ2の運転効率の低減を抑制することができる。
なお、ゲート抵抗13の抵抗値Rgは、抵抗成分のみにより構成されず、コイル成分を含む場合には、インピーダンスZとなる。このような場合には、インピーダンスZを変更することで、半導体素子12のスイッチング速度を変更できる。また、ゲート抵抗13の抵抗値Rgは、基準抵抗値と低抵抗値との間の切り替えに限られず、複数のレベルで切り替えるように構成されてもよい。そのため、診断制御において、基準抵抗値から高抵抗値に切り替えてΔTsを算出してもよい。この場合には、Ts(2τ)はTs(τ)よりも大きくなる。
第1実施形態によれば、以下の効果を得ることができる。
第1実施形態の電力変換器10によれば、診断部107は、ゲート抵抗13の抵抗値Rgが基準抵抗値(第1の値)である場合において、素子温度Ts(τ)(第1温度)を取得すると、ゲート抵抗13の抵抗値Rgを低抵抗値(第2の値)に変化させる(S107)。そして、診断部107は、抵抗値Rgが低抵抗値である場合の素子温度Ts(2τ)(第2温度)を取得する。最終的に、診断部107は、第1温度と第2温度との温度差であるΔTs(=Ts(τ)−Ts(2τ))を算出し、ΔTsがTsαを下回る場合には、抵抗値Rgの切り替え機能が異常であると診断する。
このような診断は、診断用に新たにハードウェアを追加することなく行うことなく、既存のハードウェア構成に準ずる簡易な構成で実行することができる。また、診断結果を用いることで、モータシステム200の制御の最適化を図ることができる。例えば、抵抗値Rgの切り替え機能が正常に動作している場合においては、図2に示される制限領域においては、抵抗値Rgを低抵抗値に切り替えてモータ2を制御する。しかしながら、抵抗値Rgの切り替え機能が異常である場合には、制限領域において抵抗値Rgの低抵抗値への切り替えができないため、モータ2を、制限領域に運転点が含まれないように制御する。これにより、モータシステム200の全体における損失の増大を抑制することができる。
第1実施形態の電力変換器10によれば、診断部107は、半導体素子12の温度変化に寄与するパラメータ(温度寄与パラメータ)が、所定の許容範囲で変動するか否かを判断し、所定の範囲にない場合には一連の診断制御を終了する。本診断制御は、抵抗値Rgの切り替え後の時定数τにおける素子温度Tsの安定が前提となっている。そのため、素子温度Tsが安定していない場合には、ΔTsにおける抵抗値Rgの切り替えの寄与が支配的とならないため、誤診断をするおそれがある。そこで、素子温度Tsが安定してないおそれがある場合には、一連の診断制御を終了することにより、誤診断の発生を抑制できる。
温度寄与パラメータは、半導体素子12に関するパラメータ(半導体素子パラメータ)として、例えば、半導体素子12からモータ2に出力される電流i_d、i_qや、電力変換に用いられる直流電圧Vdcなどを含んでもよい。これらのパラメータが所定の範囲で変動している場合には(S104、S108:Yes)、半導体素子12の駆動状態が安定しており、素子温度Tsの変化において抵抗値Rgの切り替えによる半導体素子12のスイッチングに起因する損失が支配的になるので、誤診断の発生を抑制できる。
また、温度寄与パラメータは、モータ2に関するパラメータ(モータパラメータ)として、例えば、トルク指令値T*やモータ2の回転数(電気角速度ω)などを含んでもよい。これらのパラメータが所定の範囲で変動している場合には(S101、S104、S108:Yes)、モータ2の駆動状態が安定しており、素子温度Tsの変化において半導体素子12のスイッチングに起因する損失が支配的になるので、誤診断の発生を抑制できる。
さらに、第1実施形態の電力変換器10によれば、上記のパラメータが所定の範囲にある場合には、素子温度Tsの変動幅は、診断判定(S111)に用いられる閾値であるTsαよりも小さい。そのため、素子温度Tsの温度変化において、パラメータの変動に起因する温度変化を無視することができるので、ΔTsにおいて、抵抗値Rgの切り替えに起因する温度変化が支配的となり、診断精度の向上を図ることができる。
さらに、第1実施形態の電力変換器10によれば、素子温度Ts(τ)の取得は、ゲート抵抗13の抵抗値Rgが基準抵抗値(第1の値)に切り替えられてから少なくとも時定数τ経過した時に行われる。また、素子温度Ts(2τ)の取得は、ゲート抵抗13の抵抗値Rgが低抵抗値(第2の値)に切り替えられた時刻τから、さらに時定数τだけ経過した時刻2τにて行われる。
このように制御することで、ゲート抵抗13の抵抗値Rgの切り替え後に素子温度Tsが安定して定常状態となった後に、素子温度Tsを検出するようになる。そのため、抵抗値Rgが基準抵抗値、及び、低抵抗値に切り替えられた後に、変化中の素子温度Tsを検出するおそれが低減し、素子温度Tsの測定精度が向上するので、誤診断の発生を抑制できる。
さらに、第1実施形態の電力変換器10によれば、診断部107が抵抗値Rgの切り替え機能が正常と診断した場合であって、制限領域(図4)のようにモータ2が高負荷の場合には、制御装置100は抵抗値Rgを低抵抗値に切り替える。これにより、電力変換回路11の発熱量が抑制され、安定的に制御することができる。
一方、診断部107が抵抗値Rgの切り替え機能が異常と診断すると、車両コントローラ6は、抵抗値Rgが低抵抗値に切り替えられる制限領域(図4)に運転点が入らないように、運転制限を行う。
制限領域(図4)にモータ2の運転点が入る場合には、抵抗値Rgを低抵抗値に切り替えて発熱量の抑制をすることが好ましい。しかしながら、切り替え機能が異常である場合において抵抗値Rgを低抵抗値に切り替えられることが前提となる制御を行ってしまうと、モータ2を適切に制御できなくなるおそれがある。そこで、制限領域にモータ2の運転点が入らないように運転制限を行うことにより、モータ2の不適切な制御を避けることができる。
(第1変形例)
第1実施形態によれば、電力変換回路11に対して1つの温度センサ14が設けられる例について示したが、これに限らない。第1変形例においては、電力変換回路11を構成する半導体素子12(UP、UN、VP、VN、WP、WN)のそれぞれと対応するように、複数(6個)の温度センサ14が設けられる例ついて説明する。これらの温度センサ14は、対応する半導体素子12の温度を取得する。
図5は、本変形例の診断制御の概要を示す図である。この図の例においては、2つの半導体素子12(UP、UN)と対応して、2つの温度センサ14UP、14UNが設けられている。そして、図5(c)には、温度センサ14UPにより取得される素子温度Ts_UP(t)、及び、温度センサ14UNにより取得される素子温度Ts_UN(t)が示されている。
この診断制御においては、ゲート抵抗13の抵抗値Rgの切り替え前後における半導体素子12(UP)の温度差ΔTs_UP、及び、半導体素子12(UN)の温度差ΔTs_UNが取得される。これらの温度差がTsαを上回る場合には、診断部107は、その温度差と対応する半導体素子12のゲート抵抗13において、抵抗値Rgの切り替えが正常に行われたと診断する。
また、本変形例においては、図3の診断制御においては、S107において、半導体素子12(UP、UN、VP、VN、WP、WN)のそれぞれについて、時刻τにおける素子温度Ts(τ)(Ts_UP(τ)、Ts_UN(τ)、Ts_VP(τ)、Ts_VN(τ)、Ts_WP(τ)、Ts_WN(τ))が取得され、S110において、時刻2τにおける素子温度Ts(2τ)(Ts_UP(2τ)、Ts_UN(2τ)、Ts_VP(2τ)、Ts_VN(2τ)、Ts_WP(2τ)、Ts_WN(2τ))が取得される。
そして、S111において、半導体素子12のそれぞれについて、Ts(τ)とTs(2τ)との差であるΔTs(ΔTs_UP、ΔTs_UN、ΔTs_VP、ΔTs_VN、ΔTs_WP、ΔTs_WN)が算出される。
診断部107は、これらの6つの温度差ΔTsのそれぞれについてTsα以上となるか否かを判定する。温度差ΔTsがTsα以上とならないものがある場合には、診断部107は、温度差ΔTsがTsα以上とならない半導体素子12について、ゲート抵抗13の抵抗値Rgの切り替えが正常に行えないと診断する。
例えば、ΔTs_UPがTsα以上とならない場合には、診断部107は、半導体素子12(UP)のゲート抵抗13の抵抗値Rgの切り替えが正常に行えないと診断する。
このような場合には、さらに、診断部107は、Ts_UP(τ)を、時刻τにおける他の半導体素子12(例えば、UN)の素子温度Ts(例えば、Ts_UN(τ))と比較し、両者の差分ΔTs_UN_UP(τ)を算出する(=|Ts_UP(τ)−Ts_UN(τ)|)。そして、ΔTs_UN_UP(τ)が、所定の閾値であるTsβよりも大きい場合には、診断部107は、半導体素子12(UP)のゲート抵抗13は、その抵抗値Rgが低抵抗値に固着しており、通常抵抗値に切り替えることができないと診断する。このような低抵抗値側での固着である場合には、スイッチング速度が速く、半導体素子12に流れる電流が大きくかつ直流電圧が高い場合においてサージ電圧が高く発生しやすいため、車両コントローラ6は、直流電圧Vdcが高い場合において運転制限を行う。
さらに、診断部107は、Ts_UP(2τ)を、時刻2τにおける他の半導体素子12の素子温度Ts_UN(2τ)と比較し、両者の差分ΔTs_UN_UP(2τ)を算出する(|Ts_UP(2τ)−Ts_UN(2τ)|)。そして、ΔTs_UN_UP(2τ)が、所定の閾値Tsβよりも大きい場合には、診断部107は、半導体素子12(UP)のゲート抵抗13は、その抵抗値Rgが通常抵抗値に固着しており、低抵抗値に切り替えることができないと診断する。このような通常抗値側での固着である場合には、スイッチング速度が速く電力変換回路11の温度が上昇しやすいため、素子温度Tsが高い状態において運転制限を行う。
このように、それぞれの半導体素子12に温度センサ14を設けることで、どの半導体素子12のゲート抵抗13において、抵抗値Rgが通常抵抗値、又は、低抵抗値に固着しているか、を診断することができる。なお、閾値Tsβは、電力変換回路11を構成する半導体素子12の任意の組み合わせにおける、素子温度Tsの最大値と最小値との差とすればよい。
(第2実施形態)
第1実施形態においては、モータ2が通常の駆動状態において、抵抗値Rgの切り替え前後における素子温度Tsに応じた診断を行う例について説明した。しかしながら、モータ2の回転数が低い状態などにおいては、半導体素子12における発熱量が小さく、抵抗値Rgの切り替え前後における素子温度Tsに応じた診断を行うことが困難である。そこで、第2実施形態においては、モータ2が低トルク、低回転状態などにおいて、診断用の高周波電流をモータ2の駆動電流に重畳させて診断を行う。
図6は、第2実施形態のモータシステム200の概略構成図である。
このモータシステム200は、図1に示された第1実施形態のモータシステム200と比較すると、診断部107が高周波電流指令値id_h *,iq_h *を出力する点と、高周波電流指令値id_h *,iq_h *が加算される加算器201、201が設けられている点と、診断部107が電気角速度磁極位置検出部106からのモータ2の回転子の磁極位置θeの入力を受け付ける点とが異なる。なお、磁極位置θeは、第2変形例の診断制御において用いられる。
診断部107から出力された高周波電流指令値id_h *、iq_h *は、加算器201、202おいて、電流指令値id *、iq *に加算される。これにより、電流制御部102には、加算器201、202から電流指令値id_r *,iq_r *が入力される。なお、電流制御部102においては、電流指令値id_r *、iq_r *と電流測定値id、iqとの偏差がゼロとなるように、電圧指令値vd *、vq *を決定する。このようにすることで、最終的に、モータ2において流れる電流id、iqに、診断用の高周波電流id_h、iq_hが重畳される。
また、診断部107は、診断用の高周波電流id_h、iq_hが重畳された状態で、信号変換部104を介して、ゲート抵抗13の抵抗値Rgを切り替える。診断部107は、抵抗値Rgの切り替え前後における素子温度Tsの温度差であるΔTsにより、ゲート抵抗13の抵抗値Rgの切り替えが正常に行われているか否かを診断する。この診断制御については、図7、及び、図8を用いて説明する。
図7は、診断部107により行われる診断制御の概要を示す図である。この図においては、上段に、電流値iが示され、中段に、ゲート抵抗13の抵抗値Rgが示され、下段に半導体素子12の素子温度Tsが示されている。診断制御中においては、電流値iは、高周波電流が重畳されているため振動する。
モータ2が低回転であり印加される電流値iが小さい状態であっても、高周波電流が重畳されることにより、素子温度Tsは変化する。そこで、診断部107は、高周波電流が重畳された状態で、第1実施形態と同様に、素子温度Ts(τ)、Ts(2τ)の取得、及び、ΔTs(=Ts(2τ)−Ts(τ))の算出を行い、ΔTsがTsα以上であるか否かを判断することにより切り替え機能の正常/異常を診断する。
図8は、診断部107により行われる診断制御のフローチャートである。
ステップS201において、診断部107は、トルク指令値T*及びモータ2の電気角速度ωを用いて、図9に示される領域に基づいて、本診断制御を行う領域であるか否かを診断する。
ここで、図9は、トルク指令値T*と電気角速度ωとに基づいた運転点を示す図である。第2実施形態においては、モータ2が低トルク、低回転である状態、すなわち、この図に示されるように、トルク指令値T*及び電気角速度ωは、共に下限値の近傍である状態において、診断制御を行うと判断される。具体的には、|T*|<T*αかつ|ω|<ωβである場合には、診断部107は、診断制御を実施すると判断する。
なお、電気角速度ωが、重畳させる高周波電流の電気角速度ωhに対して十分に小さいため、高周波電流の重畳によるモータ2のトルクへの影響は小さい。また、高周波電流の振幅Iaは、素子温度Tsを変化させる程度の大きさであるが、モータ2のトルクへの影響が小さい値とする。
|T*|<T*α、及び、|ω|<ωβの両者が満たされる場合には(S201:Yes)、診断部107は、診断可能と判断して、次にステップS202へと進む。なお、判定に用いられる閾値T*α、ωβは、重畳させる高周波電流の振幅Iaと電気角速度ωhとから予め求めることができる。一方、|T*|<T*α、及び、|ω|<ωβの少なくとも一方が満たされない場合には(S201:No)、診断部107は、診断が困難と判断して、一連の診断制御を終了するために、次に、ステップS212に示される終了処理を行う。
ステップS202において、診断部107は、ゲート抵抗13の抵抗値Rgが、基準抵抗値であるか低抵抗値であるかを判定する。ゲート抵抗13の抵抗値Rgが基準抵抗値である場合には(S202:Yes)、診断制御を進めるために、次に、ステップS203の処理を行う。抵抗値Rgが低抵抗値である場合には(S202:No)、抵抗値Rgが低抵抗値である場合の処理を行うために、次に、ステップS207の処理を行う。
この抵抗値Rgの判定(S202)は、本診断制御が繰り返されることにより一連の診断制御が実行されることに起因している。すなわち、本診断制御は、抵抗値が基準抵抗値である場合の処理(S203〜S206)と、低抵抗値である場合の処理(S208〜S211)とを含んでおり、これらの処理の切り替えがS202における判定処理においてなされている。
ステップS203においては、ゲート抵抗13の抵抗値Rgが基準抵抗値である。このような場合において、診断部107は、診断を開始するために、高周波電流指令値id_h *、iq_h *を出力する。なお、高周波電流指令値id_h *、iq_h *が既に出力されている場合には、診断部107は、その出力を継続する。これにより、モータ2に印加される電流id、iqに、次式で示される高周波電流id_h、iq_hを重畳させることができる。
id_h=Ia・sin(ωh・t)
iq_h=Ia・cos(ωh・t)
なお、各パラメータは、以下に示す値である。
Ia:高周波電流の振幅
ωh:高周波電流の電気角速度
ここで、重畳される高周波電流の振幅Iaは、ゲート抵抗13の抵抗値Rgの切替えにより素子温度Tsの変化が有意に現れる値とする。また、電気角速度ωhはモータ2の回転駆動に影響を与えないような(脱調するような)高周波数であって、振幅Iaとなる電流を重畳させた場合に生じるトルク脈動がドライバーに違和感のないレベルとなる高周波数である。振幅Ia及び電気角速度ωhは、予め実験的に求めることができる。
ステップS204において、診断部107は、診断開始時からの経過時間tが時定数τよりも大きいか否かを判定する。診断部107は、経過時間tが時定数τよりも大きい場合には(S204:Yes)、所定の時間τが経過しているため、次に、ステップS205の処理を行う。診断部107は、経過時間tが時定数τよりも大きくない場合には(204:No)、所定の時間τが経過していないので、診断制御を中断する。なお、その後、診断部107は、次の診断制御を行うことで、一連の診断制御が再開される。
ステップS205において、診断部107は、その時刻tで取得した素子温度Tsを、Ts(τ)として設定する。そして、診断部107は、次に、ステップS206の処理を行う。
ステップS206において、診断部107は、ゲート抵抗13の抵抗値Rgを低抵抗値に変化させる旨の診断信号Dを信号変換部104に送信する。信号変換部104は、診断信号Dに応じて、ゲート抵抗13の抵抗値Rgを低抵抗値に切り替える。この状態において、診断部107は、高周波電流指令値id_h *、iq_h *の出力を継続しており、高周波電流id_h、iq_hの重畳がされている。
ステップS207において、診断部107は、経過時間tが2τよりも大きいか否かを判定する。診断部107は、経過時間tが2τよりも大きい場合には(S207:Yes)、所定の時間2τが経過しているので、次に、ステップS208の処理を行う。診断部107は、経過時間tが2τよりも大きくない場合には(S207:No)、所定の時間2τが経過していないので、診断制御を中断する。その後、診断部107は、次の診断制御を行うことで、一連の診断制御が再開される。
ステップS208においては、診断部107は、その時刻2τで取得した素子温度Tsを、Ts(2τ)として設定する。そして、診断部107は、ゲート抵抗13の抵抗値Rgを基準抵抗値に変化させる旨の診断信号Dを信号変換部104に送信する。信号変換部104は、診断信号Dに応じて、ゲート抵抗13の抵抗値Rgを基準抵抗値に切り替える。
さらに、診断部107は、高周波電流指令値id_h *、iq_h *の出力を停止する。これにより、高周波電流id_h、iq_hの重畳が終了する。そして、診断部107は、次に、ステップS209の処理を行う。
ステップS209において、診断部107は、Ts(τ)からTs(2τ)を減じることでΔTs(=Ts(τ)−Ts(2τ))を算出し、ΔTsがTsγ以上であるか(ΔTs≧Tsγ)否かを判定する。ここで、Tsγは予め記憶された値であって、高周波電流が重畳されている状態において、ゲート抵抗13の抵抗値Rgが基準抵抗値から低抵抗値に正常に切り替えられる場合における、Ts(τ)とTs(2τ)との差であり、複数回の測定における最小値である。なお、ゲート抵抗13の抵抗値Rgの切り替えに起因する素子温度Tsの差ΔTsを、電気角速度ω、トルク指令値T*、直流電圧Vdcと対応させてマップ化してもよい。
診断部107は、ΔTsがTsγ以上となる場合には(S209:Yes)、ΔTsは十分に大きく、全ての半導体素子12の抵抗値Rgの切り替え機能が正常に動作していると診断し、次に、ステップS210の処理を行う。一方、診断部107は、ΔTsがTsγ以上とならない場合には(S209:No)、ΔTsは十分に大きくなく、いずれかの半導体素子12の抵抗値Rgの切り替えが異常であると診断し、次に、ステップS211の処理を行う。
ステップS210においては、診断部107は、ゲート抵抗13の抵抗値Rgの切り替え機能が正常であると診断し、その診断結果を車両コントローラ6に出力する。車両コントローラ6は、診断部107の診断結果を受けて、制限領域(図9)も含めた領域で運転指令し,制御装置においては電力変換器の温度などの状態に応じてゲート抵抗13の抵抗値Rgを低抵抗値に切り替えることで、発熱量を抑制する。
ステップS211においては、診断部107は、抵抗値Rgの切り替え機能が異常と診断し、その診断結果を車両コントローラ6に出力する。車両コントローラ6は、診断部107の診断結果を受けて、制限領域に運転点が入らないように、運転制限を行う。
ステップS212においては、診断部107は、ゲート抵抗13の抵抗値Rgを基準抵抗値に変化させるとともに、初期値であるT*(0)、ω(0)、Vdc(0)をクリアする。なお、T*(τ)、ω(τ)、Vdc(τ)が設定されている場合には、診断部107は、これらの値をクリアする。
このように,診断部107が診断用の高周波電流指令値id_h *、iq_h *を出力することで、電流i_d、i_qに診断用の高周波電流id_h、iq_hが重畳される。電流i_d、i_qが比較的小さな診断領域においては素子温度Tsの変化が小さく、第1実施形態のように単に抵抗値を切り替えるだけの方法では診断が困難である。しかしながら、本実施形態においては、診断用に高周波電流id_h、iq_hを重畳させることで、素子温度Tsの変化を検出できるので、ゲート抵抗13の抵抗値Rgの切り替え機能の正常/異常の診断を行うことができる。
なお、第1実施形態の第1変形例と同様に、電力変換回路11を構成する半導体素子12(UP、UN、VP、VN、WP、WN)のそれぞれと対応するように、複数の温度センサ14が設けられてもよい。
第2実施形態によれば、以下の効果を得ることができる。
第2実施形態の電力変換器10によれば、診断部107は、モータ2に印加される電流id、iqに高周波電流id_h、iq_hを重畳させ、重畳させた状態において、素子温度Ts(τ)、Ts(2τ)を取得し、それの差分である温度差ΔTsをTsγと比較することで、切り替え機能の正常/異常の診断を行う。
モータ2が低トルク、低回転数である状態などにおいては、半導体素子12に流れる電流が小さく、その発熱量が小さい。第1実施形態のように単に抵抗値Rgを切り替える場合においては、温度差ΔTsが小さく、ΔTsをTsγと比較することにより切り替えの診断を行うことが困難である。これに対し、本実施形態では、診断用にモータ2の回転駆動に影響を与えないような高周波電流を重畳させることにより、一定の発熱量が見込めるので、モータ2が低トルク、低回転状態であっても、温度差ΔTsをTsγと比較することで切り替え機能の正常/異常の診断を行うことができる。
また、意図的に高周波電流を重畳させることにより、それぞれの半導体素子12において高周波電流に応じた発熱がなされる。その結果、3相2アームにより構成される6つの半導体素子12の温度の平均化がなされるので、診断の精度が向上する。さらに、モータ2の回転駆動への影響が小さいので、ドライバーへの違和感も抑制できる。
さらに、第1実施形態の電力変換器10によれば、重畳される高周波電流の振幅Iaは、ゲート抵抗13の抵抗値Rgの切替えにより素子温度Tsの変換が有意に現れる値とする。また、電気角速度ωhはモータ2の回転駆動に影響を与えないような(脱調するような)高周波数であって、振幅Iaとなる電流を重畳させた場合に生じるトルク脈動がドライバーに違和感のないレベルとなる高周波数である。このようにすることで、モータ2の回転駆動への影響を抑制しながら、診断を行うことができる。
(第2変形例)
第2実施形態においては、診断部107は、d軸及びq軸の双方に高周波電流id_h、iq_hを重畳させたが、これに限らない。d軸にのみ高周波電流id_hのみを重畳させる例について、第2変形例において説明する。
図10は、d軸にのみ高周波電流id_hのみを重畳させる場合における、モータ2におけるUVW相の電流を示す図である。この図を用いて、d軸電流へ高周波電流id_hを重畳させて診断制御を行う場合における、モータ2の状態を説明する。
この図に示されるような、磁極位置θ1〜θ6の近傍においては、高周波電流id_hを重畳させることにより、切り替えの診断を行うことができる。そこで、本変形例においては、診断部107は、モータ2の各相において最大電流となる回転子の磁極位置θ1〜θ6において、d軸の高周波電流id_hを重畳させる。
θ1とθ2の中点、θ2とθ3の中点、θ3とθ4の中点、θ5とθ6の中点、θ6とθ1の中点のように、いずれか1相の電流がゼロとなるような磁極位置θの近傍では、その1相において電流が流れない。これは、その相と対応する上下アームを構成する半導体素子12においては電流が流れないことを意味する。そのため、素子温度Tsが上昇せずに診断が困難である。そこで、これらの中点と離間する磁極位置θ1〜θ6において診断を行う。
第2変形例の電力変換器10によれば、診断部107は、モータ2に印加される電流id、iqのうち、d軸の電流idに対して高周波電流id_hを重畳させる。このようにすることで、トルクに影響を与えるq軸には高周波電流が重畳されないので、高周波電流の重畳に起因するモータ2におけるトルクの変動を抑制することができる。
さらに、第2変形例の電力変換器10によれば、診断部107は、モータ2の3相のいずれの相においても電流が流れている状態で、d軸の電流idに対して高周波電流id_hを重畳させる。第2実施形態のようなモータ2が低回転状態においては、ある相に電流が流れないモータ2の状態があり(図10のθnとθn+1の中点)、このような状態においては、その相の電流の経路となる半導体素子12においては素子温度Tsが上昇せずに診断が困難である。そこで、このような状態とはならない磁極位置θnにおいて、診断を行うことができる。
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。また、上記実施形態は、適宜組み合わせ可能である。