以下、本発明の実施形態を図面に基づいて説明する。
≪第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と並列に接続されている。また、リレー2とコンデンサ4の間には、バッテリ1の直流電圧を検出する電圧センサ13がバッテリ1と並列接続されている。電圧センサ13は、検出したバッテリ1の直流電圧を後述するモータコントローラ10(図2参照)に出力する。
車両コントローラ8は、中央演算装置CPU、リードオンメモリROM及びランダムアクセスメモリRAMを備える。車両コントローラ8は、ハイブリッド車両のアクセル信号、ブレーキ信号、シフトポジション信号、キースイッチ信号等の運転者による操作情報9に基づいて、駆動トルク指令及びトルク指令値T*を算出する。車両コントローラ8は、駆動トルク指令を、エンジン6を制御するエンジンコントローラ(図示しない)に出力するとともに、トルク指令値T*を後述するモータコントローラ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から、各相の電流センサ信号が入力され、さらに、電圧センサ13から、バッテリ1の検出電圧Vbが入力される。モータコントローラ10は、トルク指令値T*、位置センサ信号、各相の電流センサ信号、検出電圧Vbに基づいて、パルス幅変調(PWM)信号を生成する。そして、モータコントローラ10は、生成したPWM信号に基づいて、インバータ3を構成する各スイッチング素子Tr1〜Tr6が所定のタイミングでON/OFFするように制御する。モータコントローラ10は、各スイッチング素子Tr1〜Tr6のゲート端子にそれぞれゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を出力する。
図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には、電圧センサ13により検出されたバッテリ1の直流電圧Vbと、後述するPWM変換部24で使用する搬送波の周波数fc及びデッドタイムTdとが入力される。2相3相変換部23は、直流電圧Vb、周波数fc、及びデッドタイムTdに基づいて、デッドタイム補償電圧ΔVを演算する。デッドタイム補償電圧ΔVは下記式(2)で表せる。
2相3相変換部23は、変換した3相交流電圧指令値vu*、vv*、vw*に、各相の電流の向きに応じてデッドタイム補償電圧ΔVを加算する。これにより、後述するPWM変換部24において、各相の電圧指令値と搬送波との比較に基づいて、ゲート駆動信号を生成すると、生成されたゲート駆動信号はデッドタイムTdが補償された信号となる。2相3相変換部23は、上記デッドタイム補償電圧ΔVを含む3相交流電圧指令値vu*、vv*、vw*をゼロ相電圧加算部に出力する。
ここで、デッドタイムとは、インバータ3の対をなすスイッチング素子のON期間が互いに重ならない期間である。このデッドタイムは、対をなすスイッチング素子がともにONすることで、対をなすスイッチング素子にバッテリ1又はコンデンサ4から大電流が流れることを防ぐために設けられる。図1又は図2では、デッドタイムとは、例えば、上アームのスイッチング素子Tr1のON期間と下アームのスイッチング素子Tr2のON期間とが重ならない期間となる。言い換えると、デッドタイムとは、対をなすスイッチング素子のうち、一方側のスイッチング素子Tr1のOFF期間と、他方側のスイッチング素子Tr2のOFF期間とが重なる期間となる。
PWM変換部24には、後述するゼロ相電圧加算部27で演算された最終3相交流電圧指令値Vu1*、Vv1*、Vw1*が入力される。また、PWM変換部24は、予め設定されたデッドタイムTdを有している。PWM変換部24は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1と搬送波をそれぞれ比較することで、各交流電圧指令値に対応するPWM信号を生成する。搬送波には、例えば、周波数が数kHz〜10数kHz程度の三角波が挙げられる。PWM変換部24は、搬送波の周波数fc及びデッドタイムTdを2相3相変換部及びゼロ相電圧加算部27へ出力する。
そして、PWM変換部24は、各相のPWM信号の電圧をインバータ3の各スイッチング素子Tr1〜Tr6のゲート端子が駆動する電圧までレベルシフトさせる。最後に、PWM変換部24は、レベルシフトされたPWM信号から各スイッチング素子Tr1〜Tr6に対応したゲート駆動信号(Pu/Nu、Pv/Nv、Pw/Nw)を生成する。PWM変換部24は、生成したゲート駆動信号をインバータ3の各スイッチング素子Tr1〜Tr6へ出力する。なお、ゲート駆動信号を生成する方法は、上記方法に限定されず、他の回路構成であってもよい。
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には、2相3相変換部23で演算された、3相交流電圧指令値vu*、vv*、vwと、PWM変換部24が有する搬送波の周波数fc及びデッドタイムTdと、電気角速度/磁極位置検出部26で演算された電気角速度ωとが入力される。また、ゼロ相電圧加算部27には、電圧センサ13で検出されたバッテリ1の直流電圧Vbが入力される。
ゼロ相電圧加算部27は、電気角速度ω及び搬送波の周波数fcに基づいて、3相交流電圧指令値vu*、vv*、vwを経時的に変化させるか否かを判定する。具体的には、ゼロ相電圧加算部27は、電気角速度ω及び搬送波の周波数fcがともに予め定められた所定の閾値よりも小さい(遅い)場合には、後述するモータ5のロック状態と判定し、3相交流電圧指令値vu*、vv*、vwを経時的に変化させる。ゼロ相電圧加算部27が設定する電圧指令値の具体例については後述する。
反対に、ゼロ相電圧加算部27は、電気角速度ω又は搬送波の周波数fcが所定の閾値以上の場合には、モータ5はロック状態でないと判定し、後述するゼロ相電圧Vzをゼロ電圧に設定する。そして、ゼロ相電圧加算部27は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、入力される3相交流電圧指令値vu*、vv*、vw*に置き換えるとともに、PWM変換部24へ出力する。
なお、モータ5のロック状態において、スイッチング素子の発熱を抑制するため、搬送波の周波数fcを下げることが一般的である。この場合、周波数が下がることで可聴域に達する恐れがあり、運転者へのノイズの原因となる恐れがある。そのため、本実施形態では、搬送波の周波数fcが所定の閾値以下となる場合に、モータ5のロック状態と判定する。
ここで、モータ5のロック状態について説明する。モータ5が多相交流モータの場合、モータ5の回転が外力によりロックされると、モータ5の各相の電流は固定される。この状態で、運転者がアクセルを踏むと、車両コントローラ8により高いトルク指令値T*が演算され、インバータ3は実質的に直流電圧をモータ5に出力する。つまり、モータ5のロック状態では、2相3相電圧が演算する3相交流電圧指令値vu*、vv*、vw*は、電圧値が小さく経時的に固定された指令値となり、ゼロ相電圧加算部27には、当該電圧値が入力される。なお、以降では、ロック状態には、モータ5の回転が停止した状態だけでなく、モータ5の回転が極低回転の状態も含むものとする。
ゼロ相電圧加算部27は、モータ5のロック状態を判定すると、3相交流電圧指令値vu*、vv*、vw*を経時的に変化させる。本実施形態では、ゼロ相電圧加算部27は、インバータ3の出力電圧である三相交流電圧において、各相の相間電圧が変化しないようにするため、3相交流電圧指令値vu*、vv*、vw*を一律に変化させる。具体的には、ゼロ相電圧加算部27は、各相の相電圧の直流成分(ゼロ相電圧Vz)を、各相の電圧指令値に一律に加算する。これにより、インバータ3が出力する各相の相間電圧に影響を与えることなく、各スイッチング素子がON/OFFするデューティ比を制御する。
ゼロ相電圧加算部27は、まず、ゼロ相電圧Vzの範囲を設定するため、ゼロ相電圧Vzの絶対値Kzを設定する。
ゼロ相電圧加算部27は、バッテリ1の直流電圧Vbに基づいて絶対値Kzを設定する。具体的には、ゼロ相電圧加算部27は、直流電圧Vbの1/2(Vb/2)から、3相交流電圧指令値vu*、vv*、vw*のうち最大の指令値を減算することで、絶対値Kzを設定する。言い換えれば、絶対値Kzは、3相交流電圧指令値vu*、vv*、vw*のうち最大の指令値にゼロ相電圧Vzを加算しても、Vb/2を超えないように設定され、下記式(3)で表せる。これにより、インバータ3の出力トルクに影響を与えることなく、各スイッチング素子がON/OFFするデューティ比を制御する。
ただし、Kzはゼロ相電圧の絶対値、Vbはバッテリ1の直流電圧、max()は()内の最大値、vu
*、vv
*、vw
*は3相交流電圧指令値を示す。
なお、ゼロ相電圧Vzの絶対値Kzを設定する方法は特に限定されない。例えば、3相交流電圧指令値vu*、vv*、vw*毎に絶対値Kzを予め実験等で求めておき、マップ保存してもよい。ゼロ相電圧加算部27は、保存したマップに基づいて、ゼロ相電圧Vzの絶対値Kzを設定してもよい。
ゼロ相電圧加算部27は、次に、所定の波形を選択し、この波形の周波数でゼロ相電圧Vzを変化させる。以降では、選択した波形として正弦波を用いて説明するが、これに限定されず、他の波形、例えば、余弦波、三角波であってもよい。
ゼロ相電圧加算部27は、正弦波の周波数fzとして、予め定めた基準周波数よりも高く、かつ、搬送波の周波数fcよりも低い周波数を設定する。基準周波数とは、搬送波の周波数fcに応じて異なる周波数であり、後述するインバータ3の出力電圧の周波数スペクトルにおいて、周波数fcの逓倍周波数で発生するピークを分散化(側帯波化)できる周波数である。例えば、周波数fz又は基準周波数を予め実験等で求めておき、上記ゼロ相電圧Vzの絶対値Kzと同様に、マップ処理にて、搬送波の周波数fcに対応した周波数fzを設定してもよい。なお、正弦波の周波数fzとしては、搬送波の周波数fcの数%〜数10%の周波数が好ましい。例えば、搬送波の周波数fcが10kHzの場合には、正弦波の周波数fzを100Hz〜1kHzに設定するのが好ましい。
以上のような設定処理を経て、ゼロ相電圧Vzは正弦波として設定される。当該正弦波は、振幅をゼロ相電圧の絶対値Kz、振幅の中心をゼロ電圧、周波数を周波数fzの正弦波とする。ゼロ相電圧Vzは、下記式(4)で表せる。
ゼロ相電圧加算部27は、設定したゼロ相電圧Vzを3相交流電圧指令値vu*、vv*、vw*に一律に加算して、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を演算する。そして、ゼロ相電圧加算部27は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、PWM変換部24へ出力する。
次に、図2、4、5を参照して、モータ5がロック状態におけるゲート駆動信号について説明する。図4は、比較例において、モータ5のロック状態でのゲート駆動信号のタイミングチャートである。図5は、本実施形態において、モータ5のロック状態でのゲート駆動信号のタイミングチャートである。なお、比較例とは、本実施形態に係るインバータ装置と比べて、モータ5がロックしてもゼロ相電圧加算処理を実行しない点以外は、同様の構成のものとする。
図4(a)は、PWM変換部24に入力される3相交流電圧指令値vu*、vv*、vw*と搬送波のタイミングチャートである。
図4(a)に示すように、モータ5のロック状態では、PWM変換部24には、電圧値が小さく経時的に固定された3相交流電圧指令値vu*、vv*、vw*が入力される。3相交流電圧指令値vu*、vv*、vw*の正負符号は、モータ5のロックした状態により変動するため、図4(a)及び後述する図5(a)は一例を示している。
比較例に係るPWM変換部は、この3相交流電圧指令値vu*、vv*、vw*と搬送波Cとをそれぞれ比較することで、各相に対応したPWM信号(図示なし)を生成する。3相交流電圧指令値vu*、vv*、vw*は経時的に固定された指令値であるため、生成した各相のPWM信号も経時的に固定されたパルス信号となる。なお、比較例に係るPWM変換部は、搬送波Cとして周波数fcの三角波を用いる。
図4(b)は、比較例に係るPWM変換部が出力するゲート駆動信号のタイミングチャートである。図4(b)では、比較例に係るPWM変換部は、上記PWM信号に基づいて、インバータ3の各スイッチング素子Tr1〜Tr6を駆動するゲート駆動信号(Pu/Nu、Pv/Nv)を出力している。なお、ゲート駆動信号Pw/Nwは、ゲート駆動信号Pv/Nvと同一信号となるため、省略している。
図4(b)に示すように、比較例において、ゲート駆動信号はON及びOFFの周期は同一となる。つまり、モータ5のロック状態では、各スイッチング素子がON/OFFする周期は固定される。また、上アームの各スイッチング素子のOFF期間と、下アームの各スイッチング素子のOFF期間とが重なる期間は、それぞれデッドタイムTdとなる。
図4(b)の点線で囲まれた期間Ti1〜Ti3は、U相の上アームのスイッチング素子Tr1がONする期間と、V相(W相)の下アームのスイッチング素子Tr4(Tr6)がONする期間とが重なる期間を示している。これらの期間Ti1〜Ti3では、バッテリ1の電流はU相の上アームのスイッチング素子Tr1、モータ5(U相、V相)、及びV相の下アームのスイッチング素子Tr4を流れている。比較例では、これらの期間Ti〜Ti3は、一定周期毎に発生している。つまり、バッテリ1の電流は、経時的に固定された周期で、スイッチング素子Tr1、モータ5、及びスイッチング素子Tr4を流れる。なお、W相の下アームのスイッチング素子Tr6もONしているため、上記期間Ti〜Ti3では、スイッチング素子Tr6にも電流が流れている。
一方、本実施形態では、図5(a)に示すように、モータ5のロック状態では、PWM変換部24には、経時的に変化する最終3相交流電圧指令値Vu1*、Vv1*、Vw1*が入力される。図5(a)は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*と搬送波のタイミングチャートである。図5(a)では、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*を、経時的に固定された3相交流電圧指令値vu*、vv*、vw*に上記式(4)で表されるゼロ相電圧Vzを加算したものとする。
PWM変換部24は、最終3相交流電圧指令値Vu1*、Vv1*、Vw1*と搬送波Cとをそれぞれ比較することで、各相に対応したPWM信号(図示なし)を生成する。最終3相交流電圧指令値Vu1*、Vv1*、Vw1*は、経時的に変化する指令値であるため、生成した各相のPWM信号のデューティ比は経時的に変化する。なお、PWM変換部24は、搬送波Cとして周波数fcの三角波を用いるものとする。
図5(b)は、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。図5(b)では、PWM変換部24は、上記PWM信号に基づいて、インバータ3の各スイッチング素子Tr1〜Tr6を駆動するゲート駆動信号(Pu/Nu、Pv/Nv)を出力している。
図5(b)に示すように、各スイッチング素子Tr1〜Tr4のゲート駆動信号は、ON期間とOFF期間のON/OFFデューティ比が経時的に変化し、OFFからONへ切り替わるタイミングも経時的に変化する信号となる。そのため、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比は、経時的に変化している。
図5(b)の点線で囲まれた期間Ti1’〜Ti3’は、図4(b)に示すTi1〜Ti3と対応する期間である。本実施形態では、これらの期間Ti1’〜Ti3’は、異なる周期毎に発生している。言い換えると、U相の上アームのスイッチング素子Tr1と、U相とは異なるV相の下アームのスイッチング素子Tr4とがともにONする状態の周期は、経時的に変化している。そのため、バッテリ1の電流は、経時的に変化する周期で、スイッチング素子Tr1、モータ5、及びスイッチング素子Tr4を流れる。
次に、図6を参照して、本実施形態における各相の電圧指令値の設定フローについて説明する。図6は、本実施形態のゼロ相電圧加算処理を示すフローチャートである。なお、以下に示すゼロ相電圧加算処理は、モータコントローラ10により実行される。
ステップS101では、モータコントローラ10には、各パラメータが入力される。具体的には、3相交流電圧指令値vu*、vv*、vw*、搬送波の周波数fc、及びモータの電気角速度ωが入力される。
ステップS102では、モータコントローラ10は、入力された3相交流電圧指令値に対して、ゼロ相電圧Vzを加算するか否かを判定する。本実施形態では、ゼロ相電圧Vzを経時的に変化させる電圧であるため、このステップでは、各相の電圧指令値を経時的に変化させるか否かを判定している。具体的には、モータコントローラ10は、電気角速度ω及び搬送波の周波数fcに基づいて、モータ5がロック状態であるか否かを判定する。モータコントローラ10は、電気角速度ω及び搬送波の周波数fcがともに予め定められた所定の閾値よりも小さい(遅い)場合には、モータ5がロック状態と判定する。反対に、モータコントローラ10は、電気角速度ω又は搬送波の周波数fcが所定の閾値以上の場合には、モータ5はロック状態でないと判定する。モータ5がロック状態でないと判定されると、ステップS103へ進み、モータ5がロック状態と判定されると、ステップS104へ進む。
ステップS103では、モータコントローラ10は、モータ5がロック状態でないと判断し、ゼロ相電圧Vzをゼロ電圧に設定して固定する。ゼロ相電圧Vzが設定されると、モータコントローラ10は、ゼロ相電圧加算処理を終了する。
ステップS104では、モータコントローラ10は、経時的に変化するゼロ相電圧Vzを設定する。例えば、モータコントローラ10は、ゼロ相電圧Vzとして、振幅をゼロ相電圧の絶対値Kz、振幅の中心がゼロ電圧、周波数が周波数fzの正弦波を設定する(上記式(3)、(4)参照)。
ステップS105では、モータコントローラ10は、各相の電圧指令値を設定する。モータコントローラ10は、入力された3相交流電圧指令値に、ステップS104で設定したゼロ相電圧Vzを加算して、各相の電圧指令値を設定する。そして、モータコントローラ10は、ゼロ相電圧加算処理を終了する。
次に、図7を参照して、本実施形態に係るインバータ制御装置の奏する効果について説明する。図7は、モータ5のロック状態における、インバータ3の出力電圧の周波数スペクトルの一例である。
図7(a)は、比較例に係るインバータ制御装置において、インバータの出力電圧の周波数スペクトルの一例であり、図7(b)は、本実施形態に係るインバータ制御装置において、インバータ3の出力電圧の周波数スペクトルの一例である。なお、比較例に係るインバータ制御装置とは、本実施形態に係るインバータ制御装置と比べて、モータ5がロックした状態であっても、各相の電圧指令値に経時的に変化するゼロ相電圧を加算しない点以外は、同様の構成のものとする。
図7(a)、(b)の横軸は周波数、縦軸は信号レベルを示し、信号レベルとは、出力電圧の周波数スペクトルの大きさを示しており、信号レベルが高くなるほど高ノイズの原因となる。
図7(a)では、搬送波の逓倍周波数毎に、信号レベルのピークが発生している。一般的に、搬送波により変調された信号を用いて交流電圧を発生させると、交流電圧の周波数成分には、搬送波の逓倍周波数毎に、信号レベルのピークが発生する。これらのピークは、ノイズとしてインバータ制御装置の周辺機器へ影響を与える恐れがある。また、これらのピークは、高周波騒音の原因となる恐れがある。
一方、図7(b)では、上記逓倍周波数の周辺の周波数帯(側帯波帯)において、信号レベルが発生している。また、図7(a)と同様に、搬送波の逓倍周波数毎に、信号レベルが発生している。しかし、逓倍周波数毎のピークは、図7(a)に示す逓倍周波数毎のピークに比べていずれも抑制されている。つまり、図7(b)では、ノイズの原因となるピークの分散化(側帯波化)により、ピークが抑制していることを示している。本実施形態では、各相の電圧指令値を経時的に変化させることで、ゲート駆動信号は、ON期間とOFF期間のON/OFFデューティ比が経時的に変化し、OFFからONへ切り替わるタイミングも経時的に変化する信号となる。そのため、所定の相の上アームのスイッチング素子がONするとともに、別の相の下アームのスイッチング素子がONして、インバータ3に電流が流れる期間は、経時的に変化する。これにより、インバータ3の出力電圧の周波数成分に含まれる、信号レベルのピークを分散化できる。
以上のように、本実施形態に係るインバータ制御装置は、バッテリ1の両端子にそれぞれ電気的に接続され、各相で上アーム及び下アームで構成される複数対のスイッチング素子Tr1〜Tr6を有するインバータ3と、各スイッチング素子のON/OFF動作を制御するモータコントローラ10と、を備えている。インバータ3は、バッテリ1の直流電圧から変換して多相の交流電圧をモータ5に出力する。モータコントローラ10は、モータ5がロック状態の際に、U相の上アームのスイッチング素子Tr1と、V相の下アームのスイッチング素子Tr4(W相の下アームのスイッチング素子Tr6)のいずれもがONする状態の周期が、経時的に変化するように、各スイッチング素子Tr1〜Tr6のON/OFF動作を制御する。これにより、バッテリ1の電流が流れる周期は、経時的に変化する。その結果、モータ5のロック状態で発生する、ノイズを抑制することができる。
また、本実施形態では、モータコントローラ10は、モータ5のロック状態において、各相の電圧指令値(最終3相交流電圧指令値Vu1*、Vv1*、Vw1*)を経時的に変化させる。そして、モータコントローラ10は、一律に同一の電圧指令値を設定する。これにより、複雑な方法を要することなく、各相の電圧指令値を経時的に変化させれば、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。その結果、モータ5のロック状態で発生する、ピークを抑制することができる。
さらに、本実施形態では、モータコントローラ10は、モータ5のロック状態において、搬送波の周波数fcに基づいて各相の電圧指令値を変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークを分散化(側帯波化)することができ、その結果、ピークを抑制することができる。
加えて、本実施形態では、モータコントローラ10は、バッテリ1の直流電圧Vbに基づいて各相の電圧指令値を変化させる。ゼロ相電圧Vzの絶対値Kzは、バッテリ1の直流電圧Vbの高さに応じて適切に設定される。これにより、インバータ3の出力電圧の周波数スペクトルにおけるピークを分散化するように、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。
また、本実施形態では、モータコントローラ10は、少なくとも搬送波の周波数fcよりも低い周波数fzで各相の電圧指令値を変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークの分散度を増加させることができ、その結果、ピークをより抑制することができる。
さらに、本実施形態では、モータコントローラ10は、モータ5の電気角速度ω及び搬送波の周波数fcに基づいて、各相の電圧指令値を経時的に変化させるか否かを判定する。スイッチング素子のデューティ比が固定される条件は絞られ、これにより、各相の電圧指令値を経時的に変化させる処理を軽減することができる。
≪第2実施形態≫
次に、第2実施形態に係るインバータ制御装置について説明する。本実施形態に係るインバータ制御装置は、インバータ3と、モータコントローラ30を備えている。モータコントローラ30は、上述の実施形態に係るモータコントローラ10と比べてブロックの構成が異なる以外は、同様の構成であるため、上述の実施形態で図2を用いた説明を援用する。
次に図8を参照して、モータコントローラ30について説明をする。図8は、本実施形態に係るモータコントローラ30の要部を示すブロック図である。なお、上述の実施形態と同様の構成には同一の記号を付し、繰り返しの説明は省略して、上述の実施形態においてした説明を援用する。
本実施形態のモータコントローラ30は、ゼロ相電圧加算部27の代わりに、デッドタイム設定部41を備えている点で、上述の実施形態に係るモータコントローラ10と異なる。また、2相3相変換部23は、3相交流電圧指令値vu*、vv*、vw*に負荷するデッドタイム補償電圧ΔVが上述の実施形態に係る2相3相変換部23と異なる。
デッドタイム設定部41には、電圧センサ13で検出されたバッテリ1の直流電圧Vb、PWM変換部24が有する搬送波の周波数fc、電気角速度/磁極位置検出部26で演算された電気角速度ωが入力される。
デッドタイム設定部41は、電気角速度ω及び搬送波の周波数fcに基づいて、デッドタイムTdを経時的に変化させるか否かを判定する。具体的には、デッドタイム設定部41は、電気角速度ω及び搬送波の周波数fcがともに予め定められた所定の閾値よりも小さい(遅い)場合には、モータ5のロック状態と判定し、デッドタイムTdを経時的に変化させる。デッドタイム設定部41が設定するデッドタイムTdの具体例については後述する。
反対に、デッドタイム設定部41は、電気角速度ω又は搬送波の周波数fcが所定の閾値以上の場合には、モータ5はロック状態でないと判定し、デッドタイムTdを、予め定められた所定の最小期間である最小デッドタイムTd_minに設定する。
次に、モータ5がロック状態と判定された場合の、デッドタイムTdの設定方法について具体例を用いて説明する。
本実施形態では、インバータ3の出力電圧である交流電圧において、各相の相間電圧が変化しないようにするため、各相のデッドタイムTdを一律に変化させる。これにより、各相の相間電圧に影響を与えることなく、各スイッチング素子がON/OFFするデューティ比を制御する。
デッドタイム設定部41は、まず、デッドタイムの範囲を設定するため、デッドタイムの最小値及び最大値を設定する。デッドタイム設定部41は、最小値として上記最小デッドタイムTd_minを設定する。
デッドタイム設定部41は、バッテリ1の直流電圧Vbに基づいて、最大デッドタイムTd_maxを設定する。具体的には、デッドタイム設定部41は、2相3相変換部23において、3相交流電圧指令値vu*、vv*、vw*にデッドタイム補償電圧ΔVを加算しても、直流電圧Vbの1/2(Vb/2)を超えないように、最大デッドタイムTd_maxを設定する。言い換えれば、最大デッドタイムTd_maxは、少なくとも直流電圧Vbの1/2よりも低い値に設定される。これにより、インバータ3は、デッドタイム補償電圧ΔVを加算する前の3相交流電圧指令値vu*、vv*、vw*に基づく交流電圧を、モータ5に出力する。このように、デッドタイムの範囲を設定することで、モータ5の出力トルクに影響を与えることなく、上述した実施形態と同様に、各スイッチング素子がON/OFFするデューティ比を経時的に変化させることができる。
なお、最小デッドタイムTd_min、最大デッドタイムTd_maxを設定する方法は特に限定されない。例えば、最小デッドタイムTd_min、最大デッドタイムTd_maxを、搬送波の周波数fcやバッテリ1の直流電圧Vb毎に予め実験等で求めておき、マップ保存してもよい。デッドタイム設定部41は、保存したマップに基づいて、最小デッドタイムTd_min、最大デッドタイムTd_maxを設定してもよい。
デッドタイム設定部41は、次に、所定の波形を選択し、この波形の周波数でデッドタイムTdを変化させる。以降では、選択した波形として正弦波を用いて説明するが、これに限定されず、他の波形、例えば、余弦波、三角波であってもよい。
デッドタイム設定部41は、正弦波の周波数fdとして、予め定めた基準周波数よりも高く、かつ、搬送波の周波数fcよりも低い周波数を設定する。例えば、周波数fd又は基準周波数を予め実験等で求めておき、上記最小デッドタイムTd_min、最大デッドタイムTd_maxと同様に、マップ処理にて、搬送波の周波数fcに対応する周波数fd又は基準周波数を設定してもよい。なお、正弦波の周波数fdとしては、搬送波の周波数fcの数%〜数10%の周波数が好ましい。例えば、搬送波の周波数fcが10kHzの場合には、正弦波の周波数fdを100Hz〜1kHzに設定するのが好ましい。
以上のような設定処理を経て、デッドタイムTdは正弦波として設定される。当該正弦波は、最小値を最小デッドタイムTd_min、最大値を最大デッドタイムTd_max、周波数を周波数fdの正弦波とする。デッドタイムTdは、下記式(5)、(6)で表わせる。デッドタイム設定部41は、設定したデッドタイムTdを、2相3相変換部23へ出力する。
2相3相変換部23には、デッドタイム設定部41で設定されたデッドタイムTdが入力される。デッドタイムTd以外の2相3相変換部23に入力されるパラメータは、上述した実施形態と同様であるため、説明は省略する。
2相3相変換部23は、直流電圧Vb、周波数fc、及びデッドタイムTdに基づいて、デッドタイム補償電圧ΔVを演算する(上記式(2)参照)。また、上述した実施形態と同様に、2相3相変換部23は、軸電圧指令値vd*及びq軸電圧指令値vq*と磁極位置検出値θに基づいて、3相交流電圧指令値vu*、vv*、vw*に変換する。そして、2相3相変換部23は、変換した3相交流電圧指令値vu*、vv*、vw*に、デッドタイム補償電圧ΔVを加算する。2相3相変換部23は、上記デッドタイム補償電圧ΔVを含む3相交流電圧指令値vu*、vv*、vw*をPWM変換部24に出力する。
本実施形態では、デッドタイムTdは経時的に変化するため、デッドタイム補償電圧ΔV及びデッドタイム補償電圧ΔVを含む3相交流電圧指令値vu*、vv*、vw*も、経時的に変化する。そのため、PWM変換部24が生成するゲート駆動信号には、経時的に変化するデッドタイムTdが反映される。
次に、図2、9、10を参照して、モータ5がロックした状態でのゲート駆動信号について説明する。図9は、モータ5がロックした状態におけるゲート駆動信号のタイミングチャートの一例であって、デッドタイムTdが最小デッドタイムTd_minの場合を示している。図10は、モータがロック状態におけるゲート駆動信号のタイミングチャートの他の例であって、デッドタイムTdが最大デッドタイムTd_maxの場合を示している。
図9(a)は、PWM変換部24に入力される3相交流電圧指令値vu*、vv*、vw*と搬送波のタイミングチャートである。図9(a)に示すように、モータ5のロック状態では、PWM変換部24には、電圧値が小さく経時的に固定された3相交流電圧指令値vu*、vv*、vw*が入力される。この3相交流電圧指令値vu*、vv*、vw*には、最小デッドタイムTd_min相当のデッドタイム補償電圧ΔVが含まれている。
図9(b)は、PWM変換部24が出力するゲート駆動信号のタイミングチャートである。図9(b)に示すように、モータ5のロック状態でのゲート駆動信号は、ON及びOFFの周期は同一となる。また、上アームの各スイッチング素子のOFF期間と、下アームの各スイッチング素子のOFF期間とが重なる期間は、それぞれデッドタイムTd_minとなる。
一方、図10(a)は、図9(a)に対応するタイミングチャートであり、図10(a)に示すように、PWM変換部24には、経時的に固定された3相交流電圧指令値vu*、vv*、vw*が入力される。この3相交流電圧指令値vu*、vv*、vw*には、最大デッドタイムTd_max相当のデッドタイム補償電圧ΔVが含まれている。そのため、図10(a)に示す各相の電圧指令値は、図9(a)に示す各相の電圧指令値よりも正負方向に差分Δvだけ大きくなる。
図10(b)は、図9(b)に対応するタイミングチャートであり、図10(b)に示すように、モータ5のロック状態でのゲート駆動信号は、ON及びOFFの周期は同一となる。また、上アームの各スイッチング素子のOFF期間と、下アームの各スイッチング素子のOFF期間とが重なる期間は、それぞれデッドタイムTd_maxとなる。
本実施形態では、デッドタイム設定部41は、最小デッドタイムTd_minから最大デッドタイムTd_maxの範囲内で、デッドタイムTdを経時的に変化させる。例えば、デッドタイム設定部41は、正弦波を選択して、デッドタイムTdを正弦波の周波数で変化させる。デッドタイムTdは、最小デッドタイムTd_minに設定された後(図9)、正弦波の周波数fdで変化するように連続的に設定され、所定期間が経過すると、最大デッドタイムTd_maxに設定される(図10)。つまり、ゲート駆動信号は、図9(b)の状態から図10(b)の状態となり、その後、再び図9(b)の状態となる。以降、ゲート駆動信号は、時間の経過に応じて、図9(b)から図10(b)の状態へ又は図10(b)の状態から図9(b)の状態へ連続的に変化する。なお、図10(b)に示すゲート駆動信号の点線部は、図9(b)のゲート駆動信号からの変更の様子を示すものとして、図9(b)のゲート駆動信号を示している。
図9(b)の点線で囲まれた期間Ti4〜Ti6及び図10(b)の点線で囲まれた期間Ti4’〜Ti6’は、図4(b)の点線で囲まれた期間Ti1〜Ti3に対応する期間である。これらの期間では、バッテリ1の電流は、U相の上アームのスイッチング素子Tr1、モータ5(U相、V相)、及びV相の下アームのスイッチング素子Tr4を流れている。
図9(b)及び図10(b)に示すように、期間Ti4〜Ti6が発生しているタイミングと、期間Ti4’〜Ti6’が発生するタイミングは異なるタイミングとなる。言い換えると、U相の上アームのスイッチング素子Tr1と、U相とは異なるV相の下アームのスイッチング素子Tr4のいずれもがONする状態の周期は、経時的に変化している。そのため、バッテリ1の電流は、経時的に変化する周期で、スイッチング素子Tr1、モータ5、及びスイッチング素子Tr4(Tr6)を流れる。
このように、本実施形態では、デッドタイムTdを経時的に変化させることで、ゲート駆動信号は、ON期間とOFF期間のON/OFFデューティ比が経時的に変化し、OFFからONへ切り替わるタイミングも経時的に変化する信号となる。そのため、所定の相の上アームのスイッチング素子がONするとともに、別の相の下アームのスイッチング素子がONして、インバータ3に電流が流れる状態の周期は、経時的に変化する。これにより、上述した実施形態と同様の効果、つまり、モータ5がロックした状態において、ノイズの原因となるピークを分散化(側帯波化)させ、ピークを抑制することができる。
次に、図11を参照して、本実施形態におけるデッドタイムの設定フローについて説明する。図11は、デッドタイム設定処理を示すフローチャートである。なお、以下に示すデッドタイム設定処理は、モータコントローラ30により実行される。
ステップS201では、モータコントローラ30には、各パラメータが入力される。具体的には、搬送波の周波数fc、及びモータの電気角速度ωが入力される。
ステップS202は、上述した実施形態のステップS102に対応するステップである。すなわち、モータコントローラ30は、電気角速度ω及び搬送波の周波数fcに基づいて、モータ5がロック状態であるか否かを判定する。モータ5がロック状態でないと判定されると、ステップS203へ進み、モータ5がロック状態と判定されると、ステップS204へ進む。
ステップS203では、モータコントローラ30は、モータ5がロック状態でないと判断し、デッドタイムTdを最小デッドタイムTd_minに設定して固定する。デッドタイムTdが設定されると、モータコントローラ30は、デッドタイム設定処理を終了する。
ステップS204では、モータコントローラ30は、経時的に変化するデッドタイムTdを設定する。例えば、モータコントローラ30は、デッドタイムTdとして、最小値が最小デッドタイムTd_min、最大値が最大デッドタイムTd_max、周波数が周波数fdの正弦波を設定する(上記式(5)、(6)参照)。そして、モータコントローラ30は、デッドタイム設定処理を終了する。
以上のように、本実施形態では、モータコントローラ30は、モータ5のロック状態において、デッドタイムTdを経時的に変化させる。そして、モータコントローラ30は、交流電圧の各相のゲート駆動信号に対して一律に同一のデッドタイムTdを設定する。これにより、複雑な方法を要することなく、デッドタイムTdを経時的に変化させれば、一定周期内において各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。その結果、モータ5のロック状態で発生するピークを抑制することができる。
また、本実施形態では、モータコントローラ30は、モータ5のロック状態において、搬送波の周波数fcに基づいてデッドタイムTdを変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークを分散化(側帯波化)することができ、その結果、ピークを抑制することができる。
さらに、本実施形態では、モータコントローラ30は、モータ5のロック状態において、バッテリ1の直流電圧Vbに基づいてデッドタイムTdを変化させる。最大デッドタイムTd_maxは、バッテリ1の直流電圧Vbの高さに応じて適切に設定される。これにより、バッテリ1の直流電圧Vbの高さに応じて適切に最大デッドタイムTd_maxを設定することができる。その結果、インバータ3の出力電圧の周波数スペクトルにおけるピークを分散化するように、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比を経時的に変化させることができる。
加えて、本実施形態では、モータコントローラ30は、少なくとも搬送波の周波数fcよりも低い周波数fdでデッドタイムTdを変化させる。これにより、インバータ3の出力電圧の周波数スペクトルにおいて、ピークの分散度を増加させることができ、その結果、ピークをより抑制することができる。
また、本実施形態では、モータコントローラ10は、モータ5の電気角速度ω及び搬送波の周波数fcに基づいて、デッドタイムTdを経時的に変化させるか否かを判定する。スイッチング素子のデューティ比が固定される条件は絞られ、これにより、デッドタイムTdを変化させる処理を軽減することができる。
なお、以上に説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
例えば、上述した第1実施形態では、各相の電圧指令値を経時的に変化させ、また、上述した第2実施形態では、デッドタイムTdを経時的に変化させる構成を例示したが、これに限定されない。モータ5のロック状態において、各相の電圧指令値及びデッドタイムTdを同時に経時的に変化させる構成であってもよい。また、各相の電圧指令値を経時的に変化させる期間とデッドタイムTdを経時的に変化する期間と、を切り替える構成でもよい。いずれの場合においても、モータ5のロック状態において、各スイッチング素子Tr1〜Tr6がON/OFFするデューティ比は経時的に変化する。そのため、インバータ3の出力電圧の周波数スペクトルにおいて、信号レベルのピークを、インバータ制御装置の周辺環境に応じた最小ピークまで抑制することができ、これにより、インバータ制御装置の周辺環境に柔軟に対応することができる。
また、例えば、上述した2つの実施形態では、ゼロ相電圧Vz又はデッドタイムTdを経時的に変化させるために、波形を選択する構成を例示したが、これに限定されない。例えば、経時的に変化するランダム値や乱数を選択してもよい。
上記の直流電源は本発明のバッテリ1に相当し、上記のコンデンサ4は本発明の蓄電部に相当し、モータコントローラ10、30は本発明のコントローラに相当する。