以下、本発明の実施形態を図面に基づいて説明する。
≪第1実施形態≫
図1は、ハイブリッド車両の構成図である。本実施形態のインバータ制御装置はこのハイブリッド車両に搭載される。なお、本実施形態のインバータ制御装置は、ハイブリッド車両に限られず、モータを走行駆動源として走行する電気自動車に搭載してもよい。
図1に示すように、ハイブリッド車両は、モータ5とエンジン6を備えており、モータ5又はエンジン6の両方又はいずれか一方により車両を走行駆動する。モータ5は、エンジン6と連結されており、主としてエンジン6を始動するために用いられるが、必要に応じてエンジン始動時のトルク不足を補うために用いられる。モータ5には、誘導電動機又は同期電動機が用いられ、例えば、3相交流モータが挙げられる。エンジン6は、トランスミッション(T/M)7を介して駆動輪を駆動する。
また、本実施例のハイブリッド車両は、上記モータ5及びエンジン6の他に、モータ5の電源である、二次電池等で構成されるバッテリ1(直流電源)と、バッテリ1の直流電力を交流電力に変換するインバータ3と、直流電力を平滑化するためのコンデンサ4とを備えている。バッテリ1は、リレー2を介してインバータ3に接続されている。
インバータ3は、複数のスイッチング素子Tr1〜Tr6と、各スイッチング素子Tr1〜Tr6に並列に接続され、スイッチング素子Tr1〜Tr6の電流方向とは逆方向に電流が流れる整流素子D1〜D6を有する。インバータ3は、バッテリ1の直流電圧を三相の交流電圧に変換してモータ5に出力する。本実施形態では、2つのスイッチング素子を直列接続した3対の回路がバッテリ1に並列に接続され、各対のスイッチング素子間とモータ5の三相入力部とがそれぞれ接続されている。スイッチング素子には、例えば、絶縁ゲートバイポーラトランジスタIGBTが挙げられ、整流素子には、例えば、ダイオードが挙げられる。
図1に示す例では、スイッチング素子Tr1とTr2、スイッチング素子Tr3とTr4、スイッチング素子Tr5とTr6がそれぞれ直列に接続されている。スイッチング素子Tr1とTr2の間とモータ5のU相、スイッチング素子Tr3とTr4の間とモータ5のV相、スイッチング素子Tr5とTr6の間とモータ5のW相がそれぞれ接続されている。また、以降の説明では、バッテリ1の正極とリレー2を介して電気的に接続可能なスイッチング素子Tr1、Tr3、Tr5を上アームとし、バッテリ1の負極とリレー2を介して電気的に接続可能なスイッチング素子Tr2、Tr4、Tr6を下アームとする。なお、インバータ3の動作の詳細については後述する。
リレー2とインバータ3との間には、直流電圧を平滑化するためのコンデンサ4がバッテリ1と並列に接続されている。
車両コントローラ8は、中央演算装置CPU、リードオンメモリROM及びランダムアクセスメモリRAMを備える。車両コントローラ8は、ハイブリッド車両のアクセル信号、ブレーキ信号、シフトポジション信号、キースイッチ信号等の運転者による操作情報9に基づいて、駆動トルク指令及びトルク指令値T*を算出する。車両コントローラ8は、駆動トルク指令を、エンジン6を制御するエンジンコントローラ(図示しない)に出力するとともに、トルク指令値T*をモータコントローラ10(図2参照)に出力する。
また、車両コントローラ8は、バッテリ1とインバータ3の間のリレー2を開閉する制御信号を出力する。車両コントローラ8は、運転者がキースイッチをオフにするのと連動して、リレー2を開放する制御信号を出力する。これにより、インバータ3には、バッテリ1の直流電圧が入力されなくなるため、インバータ3からモータ5への交流電圧の出力が停止される。さらに、車両コントローラ8は、コンデンサ4に蓄積された電荷を放電させるために、モータコントローラ10に対して放電指令を出力する。
次に、図2を参照して、本実施形態に係るインバータ制御装置の概要について説明する。図2は、本実施形態に係るインバータ制御装置のブロック図である。本実施形態に係るインバータ制御装置は、インバータ3と、モータコントローラ10を備えている。
図2では、図1と同じ構成には同一の記号を付し、繰り返しの説明は省略して、図1においてした説明を援用する。
回転子位置センサ11は、モータ5に設けられており、モータ5の回転子位置を支援す位置センサ信号を検出する。回転子位置センサ11は、検出した位置センサ信号をモータコントローラ10に出力する。回転子位置センサ11には、例えば、レゾルバ、エンコータ等が挙げられる。
電流センサ12は、インバータ3からモータ5に供給される各相の電流iu、iv、iwを検出する。電流センサ12は、検出した各相の電流センサ信号をモータコントローラ10に出力する。
モータコントローラ10は、インバータ3の動作を制御する。モータコントローラ10には、車両コントローラ8(図1参照)から、トルク指令値T*及び放電指令が入力される。また、モータコントローラ10には、回転子位置センサ11から、位置センサ信号が入力され、電流センサ12から、各相の電流センサ信号が入力される。モータコントローラ10は、トルク指令値T*、放電指令、位置センサ信号、各相の電流センサ信号に基づいて、パルス幅変調(PWM)信号を生成する。そして、モータコントローラ10は、生成したPWM信号に基づいて、インバータ3を構成する各スイッチング素子Tr1〜Tr6が所定のタイミングでON/OFFするように制御する。モータコントローラ10は、各スイッチング素子Tr1〜Tr6のゲート端子にそれぞれゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を出力する。
なお、モータコントローラ10には、放電指令が入力されていなければ、バッテリ1の直流電圧を交流変換してモータ5に供給する供給処理を実行し、放電指令が入力されると、コンデンサ4に蓄積された電荷を放電する放電処理を実行する。モータコントローラ10は、放電指令の有無に応じて、異なるゲート駆動信号をインバータ3の各スイッチング素子Tr1〜Tr6に対して出力する。
図3は、本実施形態に係るモータコントローラ10の要部を示すブロック図である。本実施形態のモータコントローラ10は、電流指令演算部21と、電流制御部22と、2相3相変換部23と、PWM変換部24と、3相2相変換部25と、電気角速度/磁極位置検出部26と、デッドタイム設定部27とを備える。
電流指令演算部21には、車両コントローラ8により算出されたトルク指令値T*と、後述する電気角速度/磁極位置検出部26により演算されたモータ5の電気角速度ωとが入力される。電流指令演算部21は、トルク指令値T*とモータ5の電気角速度ωに基づいて、d軸電流指令値id*及びq軸電流指令値iq*を演算する。ここで、d軸電流とは、モータ5に流れる3相電流(iu、iv、iw)の励磁電流成分であり、q軸電流とはトルク電流成分である。例えば、電流指令演算部21は、トルク指令値T*とモータ5の電気角速度ωに対する、d軸電流指令値id*及びq軸電流指令値iq*を予め演算してマップ化してもよい。電流指令演算部21は、演算したd軸電流指令値id*及びq軸電流指令値iq*を、電流制御部22へ出力する。
電流制御部22には、電流指令演算部21により演算されたd軸電流指令値id*及びq軸電流指令値iq*と、後述する3相2相変換部により演算されたd軸電流id及びq軸電流iqとが入力される。電流制御部22は、d軸電流指令値id*及びq軸電流指令値iq*とd軸電流id及びq軸電流iqとに基づいて、d軸電圧指令値vd*及びq軸電圧指令値vq*を演算する。具体的には、電流指令値と実電流との変位差(id*−id)、(iq*−iq)をそれぞれ演算し、演算した変位差に対してPI演算することにより、d軸電圧指令値vd*及びq軸電圧指令値vq*を演算することができる。電流制御部22は、演算したd軸電圧指令値vd*及びq軸電圧指令値vq*を、2相3相変換部23へ出力する。なお、PI演算の例として、下記式(1)が挙げられる。
ただし、Kpdはd軸比例ゲイン、Kpqはq軸比例ゲイン、Kidはd軸積分ゲイン、Kiqはq軸積分ゲイン、Ldはd軸インダクタンス、Lqはq軸インダクタンス、φ永久磁石鎖交磁束数を示す。
2相3相変換部23には、電流制御部22により演算されたd軸電圧指令値vd*及びq軸電圧指令値vq*と、後述する電気角速度/磁極位置検出部26により演算された磁極位置検出値θとが入力される。2相3相変換部23は、d軸電圧指令値vd*及びq軸電圧指令値vq*と磁極位置検出値θに基づいて、3相交流電圧指令値vu*、vv*、vw*に変換する。2相3相変換部23は、変換した3相交流電圧指令値vu*、vv*、vw*を、PWM変換部24へ出力する。
また、2相3相変換部23には、車両コントローラ8から放電指令が入力される。2相3相変換部23は、放電指令を受信すると、上記のような変換動作を停止するとともに、3相交流電圧指令値vu*、vv*、vw*をそれぞれ0V(ゼロ電圧)に設定する。つまり、2相3相変換部23は、放電指令を受信すると、3相交流電圧指令値vu*、vv*、vw*をゼロ電圧に切り替えて、PWM変換部24へ出力する。これにより、インバータ3が出力する各相の電圧には、互いに電圧位相差が発生せず、当該各相の電圧は同一電圧となり、その結果、モータ5に対して電流を流さずにコンデンサ4に蓄積された電荷を放電する。
PWM変換部24には、2相3相変換部23により変換された3相交流電圧指令値vu*、vv*、vw*と、後述するデッドタイム設定部27により設定されたデッドタイムTdが入力される。PWM変換部24は、3相交流電圧指令値vu*、vv*、vw*と搬送波をそれぞれ比較することで、各交流電圧指令値に対応するPWM信号を生成する。搬送波には、例えば、周波数が数kHz〜10数kHz程度の三角波が挙げられる。PWM変換部24は、搬送波の周波数fcを後述するデッドタイム設定部27へ出力する。
そして、PWM変換部24は、各相のPWM信号それぞれに同一のデッドタイムTdを付加するとともに、PWM信号の電圧をインバータ3の各スイッチング素子Tr1〜Tr6のゲート端子が駆動する電圧までレベルシフトさせる。最後にPWM変換部24は、レベルシフトされたPWM信号から各スイッチング素子Tr1〜Tr6に対応したゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を生成する。PWM変換部24は、生成したゲート駆動信号をインバータ3の各スイッチング素子Tr1〜Tr6へ出力する。なお、ゲート駆動信号を生成する方法は、上記方法に限定されず、ゲート駆動信号に同一のデッドタイムTdが付加されていれば、他の回路構成であってもよい。
ここで、デッドタイムとは、インバータ3の対をなすスイッチング素子のON期間が互いに重ならない期間である。このデッドタイムは、対をなすスイッチング素子がともにONすることで、対をなすスイッチング素子にバッテリ1又はコンデンサ4から大電流が流れることを防ぐために設けられる。図1又は図2では、デッドタイムとは、例えば、上アームのスイッチング素子Tr1のON期間と下アームのスイッチング素子Tr2のON期間とが重ならない期間となる。デッドタイムとは、対をなすスイッチング素子のうち、一方側のスイッチング素子Tr1のOFF期間と、他方側のスイッチング素子Tr2のOFF期間とが重なる期間となる。
PWM変換部24は、対をなすスイッチング素子のゲート駆動信号がともにOFFとなるタイミングを基準として、デッドタイムTdをゲート駆動信号に付加する。そのため、ゲート駆動信号がONするタイミングは、デッドタイムTdの大きさに応じて異なる。例えば、デッドタイムTdが大きくなると、ゲート駆動信号がONするタイミングは遅れ、反対に、デッドタイムTdが小さくなると、ゲート駆動信号がONするタイミングは早まる。再び、図3に戻り、モータコントローラ10の各ブロックについて説明する。
3相2相変換部25には、電流センサ12から各相の電流iu、iv、iwが入力される。3相2相変換部25は、各相の電流iu、iv、iwをd軸電流id及びq軸電流iqに変換して、電流制御部22へ出力する。
電気角速度/磁極位置検出部26には、回転子位置センサ11から、位置センサ信号が入力される。電気角速度/磁極位置検出部26は、位置センサ信号に基づいて、磁極位置検出値θを演算する。また、電気角速度/磁極位置検出部26は、演算した磁極位置検出値θを微分演算すること電気角速度ωを演算する。電気角速度/磁極位置検出部26は、演算した磁極位置検出値θを、2相3相変換部23と3相2相変換部25それぞれに出力し、演算した電気角速度ωを、電流指令演算部21へ出力する。
デッドタイム設定部27には、車両コントローラ8から放電指令と、PWM変換部24から搬送波の周波数fcとが入力される。
デッドタイム設定部27は、放電指令を受信すると、デッドタイムTdを経時的に変化させる。デッドタイム設定部27が設定するデッドタイムTdの具体例については後述する。反対に、デッドタイム設定部27は、車両コントローラ8から放電指令を受信していない場合、すなわち、車両が走行中の場合には、デッドタイムTdを、所定の最小期間である最小デッドタイムTd_minに設定する。
次に、放電処理におけるデッドタイムTdの設定方法について具体例を用いて説明する。
車両コントローラ8から放電指令を受信すると、ゲート駆動信号を生成するPWM変換部24には、2相3相変換部23で設定された、ゼロ電圧の3相交流電圧指令値vu*、vv*、vw*が入力される。本実施形態では、デッドタイム設定部27は、インバータ3の出力電圧である交流電圧において、各相の相間電圧が変化しないようにするため、各相のデッドタイムTdを一律に変化させる。これにより、各相の相間電圧に影響を与えることなく、各スイッチング素子がON/OFFするデューティ比を制御する。
デッドタイム設定部27は、まず、デッドタイムの範囲を設定するため、デッドタイムの最小値及び最大値を設定する。デッドタイム設定部27は、最小値として上記最小デッドタイムTd_minを設定する。
デッドタイム設定部27は、スイッチング素子のターンオン期間(遅延時間)と搬送波の周波数fcに基づいて、最大デッドタイムTd_maxを設定する。具体的には、デッドタイム設定部27は、スイッチング素子のON期間が最小期間となるように、最大デッドタイムTd_maxを設定する。言い換えれば、最大デッドタイムTd_maxは、スイッチング素子がターンオン期間中にOFFへ切り替わらないように設定され、下記式(2)を満たす。これにより、スイッチング素子がON/OFFする回数は、デッドタイムTdを固定した場合にスイッチング素子がON/OFFする回数と同じとなる。
ただし、Td
_maxは最大デッドタイム、fcは搬送波の周波数、T
onはスイッチング素子のターンオン期間を示す。なお、スイッチング素子のターンオン期間とは、スイッチング素子をONさせるゲート駆動信号がスイッチング素子に入力されてから、スイッチング素子がON状態に切り替わるまでのスイッチング素子の遅延時間である。
なお、最小デッドタイムTd_min、最大デッドタイムTd_maxを設定する方法は特に限定されない。例えば、最小デッドタイムTd_min、最大デッドタイムTd_maxを、搬送波の周波数fc毎に予め実験等で求めておき、マップ保存してもよい。デッドタイム設定部27は、保存したマップに基づいて、最小デッドタイムTd_min、最大デッドタイムTd_maxを設定してもよい。
デッドタイム設定部27は、次に、所定の波形を選択し、この波形の周波数でデッドタイムTdを変化させる。以降では、選択した波形として正弦波を用いて説明するが、これに限定されず、他の波形、例えば、余弦波、三角波であってもよい。
デッドタイム設定部27は、正弦波の周波数fdとして、予め定めた基準周波数よりも高く、かつ、搬送波の周波数fcよりも低い周波数を設定する。基準周波数とは、搬送波の周波数fcに応じて異なる周波数であり、後述するインバータ3の出力電圧の周波数スペクトルにおいて、周波数fcで発生するピークを分散化(側帯波化)できる周波数である。例えば、周波数fd又は基準周波数を予め実験等で求めておき、上記最小デッドタイムTd_min、最大デッドタイムTd_maxと同様に、マップ処理にて、搬送波の周波数fcに対応する周波数fd又は基準周波数を設定してもよい。なお、正弦波の周波数fdとしては、搬送波の周波数fcの数%〜数10%の周波数が好ましい。例えば、搬送波の周波数fcが10kHzの場合には、正弦波の周波数fdを100Hz〜1kHzに設定するのが好ましい。
以上のような設定処理を経て、デッドタイムTdは正弦波として設定される。ただし、当該正弦波は、最小値を最小デッドタイムTd_min、最大値を最大デッドタイムTd_max、周波数を周波数fdの正弦波とする。デッドタイムTdは、下記式(3)、(4)で表わせる。デッドタイム設定部27は、設定したデッドタイムTdを、PWM変換部24へ出力する。
次に、図2、4を参照して、モータコントローラ10の放電処理時のゲート駆動信号について説明する。図4は、本実施形態の放電処理における、ゲート駆動信号のタイミングチャートである。
図4(a)は、PWM変換部24に入力される3相交流電圧指令値vu*、vv*、vw*と搬送波のタイミングチャートである。
図4(a)に示すように、モータコントローラ10の放電処理では、PWM変換部24には、3相交流電圧指令値vu*、vv*、vw*の0V(ゼロ電圧)が入力される。PWM変換部24は、この3相交流電圧指令値vu*、vv*、vw*と搬送波Cとをそれぞれ比較することで、各相に対応したPWM信号(図示なし)を生成する。3相交流電圧指令値vu*、vv*、vw*は全てゼロ電圧であるため、生成した各相のPWM信号には、位相差は発生せず(位相差ゼロ)、当該各相のPWM信号は全て同一のパルス信号となる。なお、PWM変換部24は、搬送波Cとして周波数fcの三角波を用いる。
図4(b)は、デッドタイムTdが最小デッドタイムTd_minの場合に、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。図4(c)は、デッドタイムTdが最小デッドタイムTd_minよりも大きく、最大デッドタイムTd_maxよりも小さい所定のデッドタイム(Td_min<Td<Td_max)の場合に、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。図4(d)は、デッドタイムTdが最大デッドタイムTd_maxの場合に、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。
図4(b)では、PWM変換部24は、上記PWM信号と最小デッドタイムTd_minに基づいて、インバータ3の各スイッチング素子Tr1〜Tr6を駆動するゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を出力している。
図4(b)に示すように、モータコントローラ10の放電処理時のゲート駆動信号は、上アームの各スイッチング素子(Tr1、Tr3、Tr5)のON期間と、下アームの各スイッチング素子(Tr2、Tr4、Tr6)のON期間とが重ならない信号となる。また、上アームの各スイッチング素子のゲート駆動信号のON及びOFFの周期は同一となり、位相差はゼロとなる。同様に、下アームの各スイッチング素子のゲート駆動信号のON及びOFFの周期は同一となり、位相差はゼロとなる。加えて、上アームの各スイッチング素子のOFF期間と、下アームの各スイッチング素子のOFF期間とが重なる期間は、最小デッドタイムTd_minとなる。
図4(d)では、デッドタイム設定部27は、上記のように、スイッチング素子のON期間が最小期間となるデッドタイムを、最大デッドタイムTd_maxに設定している。そのため、図4(d)に示すゲート駆動信号がスイッチング素子に入力されると、スイッチング素子のON期間は最小期間となる。反対に、図4(b)に示すゲート駆動信号がスイッチング素子に入力されると、スイッチング素子のON期間は最大期間となる。
なお、図4(c)、(d)に示すゲート駆動信号は、デッドタイムが異なる以外は、図4(b)に示すゲート駆動信号と同様の信号であるため、図4(b)の説明を援用する。
本実施形態では、モータコントローラ10の放電処理において、デッドタイム設定部27は、最小デッドタイムTd_minから最大デッドタイムTd_maxの範囲内で、デッドタイムTdを経時的に変化させる。例えば、デッドタイム設定部27は、正弦波を選択して、デッドタイムTdを正弦波の周波数で変化させる。デッドタイムTdは、最小デッドタイムTd_minに設定された後(図4(b))、正弦波の周波数fdで変化するように連続的に設定され(図4(c))、所定期間が経過すると、最大デッドタイムTd_maxに設定される(図4(d))。つまり、ゲート駆動信号は、図4(b)の状態から図4(c)の状態を経て図4(d)の状態となり、その後、再び図4(c)の状態を経て図4(b)の状態となる。以降、ゲート駆動信号は、時間の経過に応じて、図4(b)から図4(d)の状態へ又は図4(d)の状態から図4(b)の状態へ連続的に変化する。
ゲート駆動信号が経時的に変化すると、インバータ3が出力する各相の交流電圧は経時的に変化する。例えば、図4(b)では、スイッチング素子のON期間は、スイッチング素子のOFF期間よりも長い。図4(d)では、スイッチング素子のON期間は、スイッチング素子のOFF期間よりも短い。インバータ3は、スイッチング素子のON期間及びOFF期間に応じた交流電圧を出力するため、図4(b)と図4(d)では、インバータ3は異なる交流電圧を出力している。
なお、各スイッチング素子のゲート駆動信号のON及びOFFが各相同一の動作であるため、デッドタイムTdの値にかかわらず、インバータ3が出力する交流電圧の相間電圧はゼロ電圧となる。例えば、デッドタイムが最小デッドタイムTd_min(図4(b))の場合の相間電圧と、デッドタイムが最大デッドタイムTd_max(図4(d))の場合の相間電圧はゼロ電圧である。これにより、デッドタイムTdを経時的に変化させたとしても、モータ5を駆動させることなく、コンデンサ4に蓄積された電荷を放電する。
このように、本実施形態では、インバータ3が変換する各相の交流電圧は同一電圧であって経時的に変化する。
また、スイッチング素子がOFFからONへ切り替わるタイミングは経時的に変化する。例えば、図4(b)では、上アーム又は下アームの各スイッチング素子は、インバータ3の各スイッチング素子が全てOFFの状態から、最小デッドタイムTd_min経過後に、OFFからONへ切り替わる。図4(d)では、上アーム又は下アームの各スイッチング素子は、インバータ3の各スイッチング素子が全てOFFの状態から、最大デッドタイムTd_max経過後に、OFFからONへ切り替わる。
ここで、コンデンサ4に蓄積された電荷の放電について説明する。インバータ3の各スイッチング素子がOFFの状態から、上アームの各スイッチング素子がONすると、コンデンサ4に蓄積された電荷は、上アームの各スイッチング素子及び下アームの各整流素子(D2、D4、D6)に流れて消費される。同様に、インバータ3の各スイッチング素子がOFFの状態から、下アームの各スイッチング素子がONすると、コンデンサ4に蓄積された電荷は、下アームの各スイッチング素子及び上アームの各整流素子(D1、D3、D5)に流れて消費される。このように、各スイッチング素子がON/OFFすると、コンデンサ4に蓄積された電荷は放電される。
ところで、各スイッチング素子がOFFからONへ切り替わるタイミングを固定して放電処理を実行することが一般的であり、この場合には、コンデンサ4に蓄積された電荷は、経時的に固定された一定タイミングで放電される。しかし、上記のように、本実施形態では、デッドタイムTdを経時的に変化させることで、スイッチング素子がOFFからONに切り替わるタイミング、つまり、スイッチング素子がON/OFFするデューティ比は経時的に変化する。そのため、本実施形態では、コンデンサ4に蓄積された電荷の放電周期を、経時的に変化せることができる。
次に、図5を参照して、本実施形態におけるデッドタイムの設定フローについて説明する。図5は、本実施形態のデッドタイム設定処理を示すフローチャートである。なお、以下に説明するデッドタイム設定処理は、モータコントローラ10により実行される。
ステップS101では、モータコントローラ10は、車両コントローラ8から放電指令を受信したか否かを判定する。放電指令が受信されていないと判定すると、ステップS102へ進み、反対に、放電指令が受信されたと判定すると、ステップS103へ進む。
ステップS102では、モータコントローラ10は、車両が走行状態と判断し、デッドタイムTdを最小デッドタイムTd_minに設定して固定する。デッドタイムTdが設定されると、モータコントローラ10は、デッドタイム設定処理を終了する。
ステップS103では、モータコントローラ10は、放電処理のために、経時的に変化するデッドタイムTdを設定する。例えば、モータコントローラ10は、デッドタイムTdとして、最小値が最小デッドタイムTd_min、最大値が最大デッドタイムTd_max、周波数が周波数fdの正弦波を設定する(上記式(3)、(4)参照)。なお、ステップS103では、モータコントローラ10は、3相交流電圧指令値vu*、vv*、vw*をゼロ電圧に設定して固定する。
ステップS104では、モータコントローラ10は、ステップS103で設定された、デッドタイムTdと3相交流電圧指令値vu*、vv*、vw*に基づいて、ゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を生成する。そして、モータコントローラ10は、生成したゲート駆動信号をインバータ3の各スイッチング素子Tr1〜Tr6へ出力する。これにより、ステップS104では、コンデンサ4に蓄積された電荷の放電が開始される。
ステップS105では、モータコントローラ10は、所定期間経過したか否かを判定する。所定期間が経過していない場合には、ステップS104に戻り、所定期間経過している場合には、ステップS106へ進む。
ステップS106では、モータコントローラ10は、コンデンサ4に蓄積された電荷の放電が終了したか否かを判定する。モータコントローラ10は、例えば、コンデンサ4に並列接続された電圧センサ(図示しない)の検出結果に基づいて、放電が終了したか否かを判定する。放電が終了していない場合には、ステップS104へ戻る。放電が終了している場合には、デッドタイム設定処理を終了させる。
次に、図6を参照して、本実施形態に係るインバータ制御装置の奏する効果について説明する。図6は、本実施形態の放電処理における、インバータの出力電圧の周波数スペクトルの一例である。
図6(a)は、比較例に係るインバータ制御装置において、インバータの出力電圧の周波数スペクトルの一例であり、図6(b)は本実施形態に係るインバータ制御装置において、インバータ3の出力電圧の周波数スペクトルの一例である。なお、比較例に係るインバータ制御装置とは、本実施形態に係るインバータ制御装置と比べて、放電処理におけるデッドタイムTdが最小デッドタイムTd_minに固定されている点以外は、同様の構成のものとする。
図6(a)、(b)の横軸は周波数、縦軸は信号レベルを示す。信号レベルとは、出力電圧の周波数スペクトルの大きさを示しており、信号レベルが高くなるほど高ノイズの原因となる。
図6(a)では、周波数fc(搬送波の周波数)及び周波数fc3(周波数fcの3倍周波数)において、信号レベルのピークが発生している。一般的に、搬送波により変調された信号を用いて交流電圧を発生させると、交流電圧の周波数成分には、搬送波の逓倍周波数毎に、信号レベルのピークが発生する。これらのピークは、ノイズとしてインバータ制御装置の周辺機器へ影響を与える恐れがある。また、これらのピークは、高周波騒音の原因となる恐れがある。
一方、図6(b)では、周波数fc及び周波数fc3の周辺の周波数帯(側帯波帯)において、信号レベルが発生している。また、図6(a)と同様に、周波数fc及び周波数fc3において、信号レベルのピークが発生している。しかし、この2つのピークは、図6(a)に示す2つのピークに比べていずれも制されている。つまり、図6(b)では、ノイズの原因となるピークの分散化(側帯波化)により、ピークが抑制していることを示している。これは、上記のように、本実施形態では、デッドタイムTdを経時的に変化させることで、スイッチング素子がON/OFFするデューティ比を経時的に変化させているためである。
以上のように、本実施形態に係るインバータ制御装置は、バッテリ1の両端子にそれぞれ電気的に接続された複数対のスイッチング素子Tr1〜Tr6を有し、バッテリ1の直流電圧を多相の交流電圧に変換するインバータ3と、インバータ3とバッテリ1の間に並列接続されたコンデンサ4と、各スイッチング素子のON/OFF動作を制御するモータコントローラ10と、を備えている。モータコントローラ10は、コンデンサ4に蓄積された電荷を放電する際に、インバータ3が出力する各相の交流電圧を同一電圧であって経時的に変化するように、各スイッチング素子Tr1〜Tr6のON/OFF動作を制御する。交流電圧の各相の相間電圧はゼロ電圧(位相差ゼロ)となるとともに、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比は経時的に変化する。これにより、モータ5を駆動させることなく、コンデンサ4に蓄積された電荷を放電することができるとともに、放電時に発生するピークを抑制することができる。
また、本実施形態において、モータコントローラ10は、放電処理において、デッドタイムTdを経時的に変化させる。そして、モータコントローラ10は、交流電圧の各相のゲート駆動信号に対して一律に同一のデッドタイムTdを設定する。これにより、複雑な方法を要することなく、デッドタイムTdを経時的に変化させれば、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。その結果、放電時に発生するピークを抑制することができる。
さらに、本実施形態において、モータコントローラ10は、放電処理において、搬送波の周波数fcに基づいてデッドタイムTdを変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークを分散化(側帯波化)することができ、その結果、ピークを抑制することができる。
加えて、本実施形態において、モータコントローラ10は、放電処理において、各スイッチング素子Tr1〜Tr6がターンオン期間中にOFFへと切り替わらないように、デッドタイムTdを設定する。各スイッチング素子Tr1〜Tr6がON/OFFする回数は、デッドタイムTdの値にかかわらず、同じ回数となる。これにより、デッドタイムTdを経時的に変化させても、デッドタイムTdを固定した場合の放電時間と同時間で、コンデンサ4に蓄積された電荷を放電することができる。
また、本実施形態において、モータコントローラ10は、少なくとも搬送波の周波数fcよりも低い周波数fdでデッドタイムTdを変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークの分散度を増加させることができ、その結果、ピークをより抑制することができる。
≪第2実施形態≫
次に、第2実施形態に係るインバータ制御装置について説明する。本実施形態に係るインバータ制御装置は、インバータ3と、モータコントローラ30を備えている。モータコントローラ30は、上述の実施形態に係るモータコントローラ10と比べてブロックの構成が異なる以外は、同様の構成であるため、上述の実施形態で図2を用いた説明を援用する。
次に図7を参照して、モータコントローラ30について説明をする。図7は、本実施形態に係るモータコントローラ30の要部を示すブロック図である。なお、上述の実施形態と同様の構成には同一の記号を付し、繰り返しの説明は省略して、上述の実施形態においてした説明を援用する。
本実施形態のモータコントローラ30は、デッドタイム設定部27の代わりに、ゼロ相電圧加算部41を備えている点で、上述の実施形態に係るモータコントローラ10と異なる。また、PWM変換部24は、上述の実施形態に係るPWM変換部24と比べて、ゲート駆動信号を生成する際に使用するデッドタイムが異なる。
ゼロ相電圧加算部41には、車両コントローラ8から放電指令と、2相3相変換部23により変換された3相交流電圧指令値vu*、vv*、vw*と、PWM変換部24から搬送波の周波数fcとが入力される。
ゼロ相電圧加算部41は、放電指令を受信すると、各相の電圧指令値を経時的に変化させる。ゼロ相電圧加算部41が設定する電圧指令値の具体例については後述する。反対に、ゼロ相電圧加算部41は、車両コントローラ8から放電指令を受信していない場合、すなわち、車両が走行中の場合には、後述するゼロ相電圧Vzをゼロ電圧に設定する。そして、ゼロ相電圧加算部41は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、入力される3相交流電圧指令値vu*、vv*、vw*に置き換えるとともに、PWM変換部24へ出力する。
次に、放電処理における各相の電圧指令値の設定方法について具体例を用いて説明する。
車両コントローラ8から放電指令を受信すると、ゼロ相電圧加算部41には、2相3相変換部23で設定された、ゼロ電圧の3相交流電圧指令値vu*、vv*、vw*が入力される。本実施形態では、ゼロ相電圧加算部41は、インバータ3の出力電圧である三相交流電圧において、各相の相間電圧が変化しないようにするため、3相交流電圧指令値vu*、vv*、vw*を一律に変化させる。具体的には、ゼロ相電圧加算部41は、各相の相電圧の直流成分(ゼロ相電圧Vz)を、各相の電圧指令値に一律に加算する。これにより、インバータ3が出力する各相の相間電圧に影響を与えることなく、各スイッチング素子がON/OFFするデューティ比を制御する。
ゼロ相電圧加算部41は、まず、ゼロ相電圧Vzの範囲を設定するため、ゼロ相電圧Vzの絶対値Kzを設定する。
ゼロ相電圧加算部41は、スイッチング素子のターンオン期間(遅延時間)と搬送波の周波数fcに基づいて、絶対値Kzを設定する。具体的には、ゼロ相電圧加算部41は、スイッチング素子のON期間が最小期間となるように、絶対値Kzを設定する。言い換えれば、絶対値Kzは、スイッチング素子がターンオン期間中にOFFへ切り替わらないように設定され、下記式(5)を満たす。これにより、スイッチング素子がON/OFFする回数は、ゼロ相電圧Vzを固定した場合にスイッチング素子がON/OFFする回数と同じとなる。
ただし、Kzはゼロ相電圧の絶対値、fcは搬送波の周波数、Tdはデッドタイムを示す。なお、デッドタイムTdは、最小デッドタイムTd
_minとする。また、上記式(5)は、搬送波の最大値が1、かつ、搬送波の最小値が−1の場合の式とする。
なお、ゼロ相電圧Vzの絶対値Kzを設定する方法は特に限定されない。例えば、搬送波の周波数fc毎に絶対値Kzを予め実験等で求めておき、マップ保存してもよい。ゼロ相電圧加算部41は、保存したマップに基づいて、ゼロ相電圧Vzの絶対値Kzを設定してもよい。
ゼロ相電圧加算部41は、次に、所定の波形を選択し、この波形の周波数でゼロ相電圧Vzを変化させる。以降では、選択した波形として正弦波を用いて説明するが、これに限定されず、他の波形、例えば、余弦波、三角波であってもよい。
ゼロ相電圧加算部41は、正弦波の周波数fzとして、予め定めた基準周波数よりも高く、かつ、搬送波の周波数fcよりも低い周波数を設定する。例えば、周波数fz又は基準周波数を予め実験等で求めておき、上記ゼロ相電圧Vzの絶対値Kzと同様に、マップ処理にて、搬送波の周波数fcに対応した周波数fzを設定してもよい。なお、正弦波の周波数fzとしては、搬送波の周波数fcの数%〜数10%の周波数が好ましい。例えば、搬送波の周波数fcが10kHzの場合には、正弦波の周波数fzを100Hz〜1kHzに設定するのが好ましい。なお、上記基準周波数は、上述の実施形態の説明で使用した基準周波数と同じ周波数であっても異なる周波数でもよい。
以上のような設定処理を経て、ゼロ相電圧Vzは正弦波として設定される。ただし、当該正弦波は、振幅をゼロ相電圧の絶対値Kz、振幅の中心をゼロ電圧、周波数を周波数fzの正弦波とする。ゼロ相電圧Vzは、下記式(6)で表せる。
ゼロ相電圧加算部41は、設定したゼロ相電圧Vzを3相交流電圧指令値vu*、vv*、vw*に一律に加算して、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を演算する。そして、ゼロ相電圧加算部41は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、PWM変換部24へ出力する。
本実施形態では、PWM変換部24には、ゼロ相電圧加算部41により演算された最終3相交流電圧指令値Vu1*、Vv1*、Vw1*が入力される。また、PWM変換部24は、予め設定されたデッドタイムTd(例えば、上述した実施形態の最小デッドタイムTd_min)を有しており、このデッドタイムTdを用いて、ゲート駆動信号を生成する。なお、PWM変換部24は、この2点以外の点は、上述した実施形態のPWM変換部24と同様の機能を有しているため、説明を省略する。本実施形態では、放電処理において、PWM変換部24は、ゼロ相電圧加算部41により演算された、経時的に変化する各相の電圧指令値(最終3相交流電圧指令値vu1*、Vv1*、Vw1*)に基づいて、ゲート駆動信号を生成して各スイッチング素子Tr1〜Tr6へ出力する。
次に、図2、8を参照して、モータコントローラ30の放電処理時のゲート駆動信号について説明する。図8は、本実施形態の放電処理における、ゲート駆動信号のタイミングチャートである。
図8(a)は、PWM変換部24に入力される最終3相交流電圧指令値Vu1*、Vv1*、Vw1*と搬送波のタイミングチャートである。図8(a)では、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、ゼロ電圧に設定された3相交流電圧指令値vu*、vv*、vw*に上記式(6)で表されるゼロ相電圧Vzを加算したものとする。
図8(a)に示すように、モータコントローラ30の放電処理では、PWM変換部24には、ゼロ相電圧加算部41で演算された、経時的に変化する各相の電圧指令値が入力され、PWM変換部24は、この電圧指令値に基づいてゲート駆動信号を生成する。PWM変換部44は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*と搬送波Cとをそれぞれ比較することで、各相に対応したPWM信号(図示なし)を生成する。最終3相交流電圧指令値Vu1*、Vv1*、Vw1*には、各相間の位相差はないため、生成した各相のPWM信号には、位相差は発生せず(位相差ゼロ)、当該各相のPWM信号は全て同一のパルス信号となる。なお、PWM変換部44は、搬送波Cとして周波数fcの三角波を用いるものとする。
図8(b)は、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。
図8(b)では、PWM変換部24は、上記PWM信号と最小デッドタイムTd_minに基づいて、インバータ3の各スイッチング素子Tr1〜Tr6を駆動するゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を出力している。
図8(b)に示すように、モータコントローラ30の放電処理時のゲート駆動信号は、上アームの各スイッチング素子(Tr1、Tr3、Tr5)のON期間と、下アームの各スイッチング素子(Tr2、Tr4、Tr6)のON期間とが重ならない信号となる。また、上アームの各スイッチング素子のゲート駆動信号のON及びOFFの位相差はゼロとなり、同様に、下アームの各スイッチング素子のゲート駆動信号のON及びOFFの位相差はゼロとなる。
また、本実施形態では、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*が正弦波で表せるように、各相の電圧指令値は経時的に変化する。そのため、図8(b)に示すように、上アームの各スイッチング素子のゲート駆動信号について、ON期間とOFF期間のON/OFFデューティ比は経時的に変化するとともに、OFFからONへ切り替わるタイミングも経時的に変化する。同様に、下アームの各スイッチング素子のゲート駆動信号について、ON期間とOFF期間のON/OFFデューティ比は経時的に変化するとともに、OFFからONへ切り替わるタイミングも経時的に変化する。これにより、上述した実施形態と同様に、インバータ3が出力する各相の交流電圧は同一電圧であって経時的に変化する。これにより、コンデンサ4に蓄積された電荷の放電タイミングは経時的に変化する。
次に、図9を参照して、本実施形態におけるゼロ相電圧の設定フローについて説明する。図9は、本実施形態のゼロ相電圧加算処理を示すフローチャートである。なお、以下に説明するゼロ相電圧加算処理は、モータコントローラ30により実行される。
ステップS201では、モータコントローラ30は、車両コントローラ8から放電指令を受信したか否かを判定する。放電指令が受信されていないと判定すると、ステップS202へ進み、反対に、放電指令が受信されたと判定すると、ステップS203へ進む。
ステップS202では、モータコントローラ30は、車両が走行状態と判断し、ゼロ相電圧Vzを演算しない(Vz=0)とともに、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、入力される3相交流電圧指令値vu*、vv*、vw*に置き換えて、ゼロ相電圧加算処理を終了する。
ステップS203では、モータコントローラ30は、放電処理のために、ゼロ相電圧Vzを設定して、各相の電圧指令値(最終3相交流電圧指令値Vu1*、Vv1*、Vw1*)を設定する。例えば、モータコントローラ30は、ゼロ相電圧Vzとして、振幅をゼロ相電圧の絶対値Kz、振幅の中心がゼロ電圧、周波数が周波数fzの正弦波を設定する(上記式(6)参照)。
ステップS204では、モータコントローラ30は、ステップS203で設定された、各相の電圧指令値に基づいて、ゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を生成する。そして、モータコントローラ30は、生成したゲート駆動信号をインバータ3の各スイッチング素子Tr1〜Tr6へ出力する。これにより、ステップS204では、コンデンサ4に蓄積された電荷の放電が開始される。
ステップS205、S206は、上述した実施形態に係るステップS105、S106と同様である。すなわち、ステップS205では、モータコントローラ10により、所定期間が経過した否かの判定が行われ、所定期間が経過している場合には、ステップS206へ進み、所定期間が経過していない場合には、ステップS204へ戻る。また、ステップS206では、コンデンサ4に蓄積された電荷の放電が終了したか否の判定が行われ、放電が終了している場合には、放電処理を終了させ、放電が終了していない場合には、ステップS204へ戻る。
次に、図10を参照して、本実施形態に係るインバータ制御装置の奏する効果について説明する。図10は、本実施形態の放電処理における、インバータの出力電圧の周波数スペクトルの一例である。
図10(a)は、比較例に係るインバータ制御装置において、インバータの出力電圧の周波数スペクトルの一例であり、図10(b)は本実施形態に係るインバータ制御装置において、インバータ3の出力電圧の周波数スペクトルの一例である。なお、比較例に係るインバータ制御装置とは、本実施形態に係るインバータ制御装置と比べて、放電処理における各相の電圧指令値がゼロ電圧に固定されている点以外は、同様の構成のものとする。
図10(a)、(b)の横軸は周波数、縦軸は信号レベルを示し、上述した実施形態で説明した図6(a)、(b)と同様である。
図10(a)では、周波数fc(搬送波の周波数)及び周波数fc3(周波数fcの3倍周波数)において、信号レベルのピークが発生している。これは、上述した実施形態で説明した図6(a)と同様であるため、説明は省略する。
図10(b)では、周波数fc及び周波数fc3の周辺の周波数帯(側帯波帯)に、信号レベルが発生している。また、図10(a)と同様に、周波数fc及び周波数fc3において、信号レベルのピークが発生している。しかし、この2つのピークは、図10(a)に示す2つのピークに比べていずれも抑制されている。つまり、図10(b)では、ノイズの原因となるピークの分散化(側帯波化)により、ピークが抑制していることを示している。これは、上記のように、本実施形態では、各相の電圧指令値を経時的に変化させることで、スイッチング素子がON/OFFするデューティ比を経時的に変化させているためである。つまり、本実施形態においても、上述した実施形態と同様の効果が得られている。
なお、本実施形態では、各相の電圧指令値を正弦波により経時的に変化させているため、図10(b)では、周波数fc2(周波数fcの2倍周波数)及び周波数fc4(周波数fcの4倍周波数)においても、信号レベルのピークが発生している。しかし、本実施形態と比較例では、スイッチング素子がON/OFFする回数は同じ回数であるため、コンデンサ4から放電される電荷の総量は同じとなる。そのため、本実施形態では、比較例の放電時間と同じ時間で、コンデンサ4に蓄積された電荷を放電している。
以上のように、本実施形態では、モータコントローラ30は、放電処理において、各相の電圧指令値(最終3相交流電圧指令値Vu1*、Vv1*、Vw1*)を経時的に変化させる。そして、モータコントローラ30は、一律に同一の電圧指令値を設定する。これにより、複雑な方法を要することなく、各相の電圧指令値を経時的に変化させれば、一定周期内において各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。その結果、放電時に発生するピークを抑制することができる。
また、本実施形態では、モータコントローラ30は、放電処理において、搬送波の周波数fcに基づいて各相の電圧指令値を変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークを分散化(側帯波化)することができ、その結果、ピークを抑制することができる。
さらに、本実施形態では、モータコントローラ30は、放電処理において、各スイッチング素子Tr1〜Tr6がターンオン期間中にOFFへと切り替わらないように、各相の電圧指令値を設定する。各スイッチング素子Tr1〜Tr6がON/OFFする回数は、電圧指令値の値にかかわらず、同じ回数となる。これにより、各相の電圧指令値を経時的に変化させても、各相の電圧指令値を固定した場合の放電時間と同時間で、コンデンサ4に蓄積された電荷を放電することができる。
加えて、本実施形態では、モータコントローラ30は、少なくとも搬送波の周波数fcよりも低い周波数fzで各相の電圧指令値を変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークの分散度を増加させることができ、その結果、ピークをより抑制することができる。
なお、以上に説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
例えば、上述した第1実施形態では、デッドタイムTdを経時的に変化させ、また、上述した第2実施形態では、各相の電圧指令値を経時的に変化させる構成を例示したが、これに限定されない。放電処理において、デッドタイムTd及び各相の電圧指令値を、同時に経時的に変化させる構成であってもよい。また、デッドタイムTdを経時的に変化する期間と、各相の電圧指令値を経時的に変化させる期間とを切り替える構成でもよい。いずれの場合においても、放電処理において、各スイッチング素子Tr1〜Tr6のON/OFFするタイミングは経時的に変化する。そのため、インバータ3の出力電圧の周波数スペクトルにおいて、信号レベルのピークを、インバータ制御装置の周辺環境に応じた最小ピークまで抑制することができ、これにより、インバータ制御装置の周辺環境に柔軟に対応することができる。
また、例えば、上述した2つの実施形態では、デッドタイムTd又はゼロ相電圧Vzを経時的に変化させるために、波形を選択する構成を例示したが、これに限定されない。例えば、経時的に変化するランダム値や乱数を選択してもよい。
さらに、例えば、上述した第2実施形態では、ゼロ電圧の3相交流電圧指令値vu*、vv*、vw*にゼロ相電圧を加算して、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を設定する構成を例示したがこれに限られない。例えば、予め、ゼロ電圧の3相交流電圧指令値vu*、vv*、vw*に所定の直流電圧指令値を加算し(オフセットを付加)、加算した3相交流電圧指令値vu*、vv*、vw*にゼロ相電圧Vzを加算してもよい。なお、この場合には、ゼロ相電圧の絶対値Kzから上記所定の直流電圧指令値を減算する必要があるが、上述した実施形態と同様に、各スイッチング素子Tr1〜Tr6のON/OFFするタイミングは経時的に変化する。
上記の直流電源は本発明のバッテリ1に相当し、上記のコンデンサ4は本発明の蓄電部に相当し、モータコントローラ10、30は本発明のコントローラに相当する。