<第1の実施の形態>
図1は、実施の形態におけるDC/DCコンバータの制御装置30を含むモータ駆動装置100の基本構成を示している。モータ駆動装置100は、直流電源10、DC/DCコンバータ11、低圧側コンデンサ17、高圧側コンデンサ18及び負荷104を含んで構成される。DC/DCコンバータ11は、リアクトル12、第1スイッチング素子14、第2スイッチング素子16を有する。第1スイッチング素子14は、上側スイッチング素子に相当し、第2スイッチング素子16は、下側スイッチング素子に相当する。負荷104は、インバータ105と、インバータ105に接続され、インバータ105によって駆動されるモータ106とを有する。モータ106はU相、V相、W相の3相交流電流により駆動される3相モータである。
直流電源10の正極にはリアクトル12の一端が接続され、リアクトル12の他端には第1スイッチング素子14の一端及び第2スイッチング素子16の一端の接続点Cが接続される。第1スイッチング素子14の他端は正極母線19を介して、負荷104を構成するインバータ105の正極側に接続される。第2スイッチング素子16の他端は負極母線20を介して、直流電源10の負極とインバータ105の負極側とに接続される。低圧側コンデンサ17は、DC/DCコンバータ11の入力側で、リアクトル12の一端及び直流電源10の正極の間と負極母線20との間に接続され、電圧を平滑化させるために用いられる。高圧側コンデンサ18は、DC/DCコンバータ11の出力側で、正極母線19及び負極母線20の間に接続され、電圧を平滑化させるために用いられる。
なお、実施の形態では、第1スイッチング素子14及び第2スイッチング素子16はNPNトランジスタとする。第1スイッチング素子14は、正極母線19側がコレクタ、リアクトル12側がエミッタとされる。第2スイッチング素子16は、リアクトル12側がコレクタ、負極母線20側がエミッタとされる。また、第1スイッチング素子14及び第2スイッチング素子16のそれぞれに並列に環流ダイオードが接続される。
DC/DCコンバータ11において、第1スイッチング素子14をオフ状態及び第2スイッチング素子16をオン状態とすることで、リアクトル12を介して直流電源10の正極から負極に向けたリアクトル電流iLが流れる。これによって、リアクトル12にエネルギーが蓄積される。次に、第2スイッチング素子16をオフ状態とすることで、リアクトル電流iLが遮断され、リアクトル12の端部に直流電源10の電圧(電源電圧vb)よりも高い電圧が生じる。そして、これに応じた電流が正極母線19に向けて流れて高圧側コンデンサ18が充電されてコンデンサ電圧vcが上昇する。このコンデンサ電圧vcが負荷104に印加される。また、第1スイッチング素子14がオン状態とされることで、高圧側コンデンサ18から直流電源10の正極へ向けたリアクトル電流iLが流れる。これによって、コンデンサ電圧vcが低下する。DC/DCコンバータ11の出力電圧、すなわちコンデンサ電圧vcは、キャリア信号の1周期に対する第1スイッチング素子14のオン割合を示すデューティ比によって決定される。
DC/DCコンバータ11は、制御装置30によって各スイッチング素子14,16のオンオフ状態が制御される。図2は、実施形態におけるDC/DCコンバータ11の制御装置30の制御機能構成を示す図である。
制御装置30は、減算器31と、PI制御器32と、オブザーバ34と、モデル予測制御器(MPC)50と、リミッタ60とを有する。図1に示すように、制御装置30には、コンデンサ電圧vcの測定値が電圧センサ21から入力され、電源電圧vbの測定値が電圧センサ22から入力される。また、制御装置30には、インバータ105の出力電流でありモータ106のU相、V相、W相のステータコイルに流れるコイル電流iu、iv、iwのうち、U相コイル電流iuとW相コイル電流iwとの測定値が電流センサ24により入力される。3相のコイル電流の総和は0であるので、制御装置30は、U相コイル電流iuとW相コイル電流iwとの測定値から残りのV相コイル電流ivを算出により取得する。モータ106には、レゾルバ等の角度センサ26が取り付けられる。角度センサ26は、モータ106を構成するロータの回転角度θを測定し、その測定値を制御装置30に出力する。制御装置30は、回転角度θの測定値からモータ106を構成するロータの回転速度を算出する。
図2に示すように、減算器31は、コンデンサ電圧の指令値vc *と測定値vcとの偏差(vc *−vc)を算出する。その偏差は、PI制御器32に入力される。ここで、コンデンサ電圧の指令値vc *は、モータ106の要求出力Pに基づいて設定される、すなわちモータを要求出力Pで駆動するために必要なコンデンサ電圧値として設定される。例えば、車両にモータ駆動装置100(図1)が搭載される場合において、要求出力Pはアクセルペダルの操作量の測定値、ロータの回転速度の算出値等から算出される。
PI制御器32は、入力された偏差を、比例積分演算であるPI演算してリアクトル電流の指令値iL *を算出する。この指令値iL *は後述のモデル予測制御器50に入力される。
オブザーバ34には、コンデンサ電圧測定値vc、電源電圧測定値vb、及び負荷電流としてのDC/DCコンバータの出力電流の算出値imが入力される。出力電流算出値imは、例えばモータ106で消費されるモータ電力とコンデンサ電圧測定値vcとから算出される。モータ電力は、例えば3相のコイル電流iu、iv、iwの測定値と、異なる2相の線間の電圧を測定する電圧センサ(図示せず)の測定値とから算出される。モータ電力は、要求出力Pから算出されてもよい。
オブザーバ34は、後で詳しく説明するように、コンデンサ電圧測定値vc、電源電圧測定値vb、出力電流算出値im、及び現在デューティ比d(k)からリアクトル電流iL及びコンデンサ電圧vcを推定する。なお、以下において、図中の推定値には上付の波線(チルダ)を付して示している。また、以下において、現在の制御周期で用いる値には(k)を付し、次回の制御周期で用いる値には(k+1)を付して説明する場合がある。制御装置30は、DC/DCコンバータ11のスイッチングの制御を制御周期ごとに行う。
モデル予測制御器50は、リアクトル電流指令値iL *、電源電圧測定値vb、出力電流算出値im、リアクトル電流推定値iL(チルダ)、コンデンサ電圧推定値vc(チルダ)及び現在デューティ比d(k)から、制限前の次回デューティ比d(k+1)を算出する。現在デューティ比d(k)は、前回の制御周期でd(k+1)として算出され、現在の制御周期において各スイッチング素子14,16のスイッチングに用いられているデューティ比である。デューティ比は、後述の図10のモデル予測制御器50で算出されたデューティ比を利用しやすいように、10ビットで表現した値を用いるか、または10ビットで表現された値から所定の換算式で変換された値を用いる。
次回デューティ比d(k+1)は、次回の制御周期で各スイッチング素子14,16のスイッチングに用いられ、DC/DCコンバータ11の出力電圧を制御するためのデューティ比である。制限前のデューティ比は、リミッタ60に入力される。リミッタ60は、入力されたデューティ比を、予め設定された上限及び下限の間に入るように制限する。例えばデューティ比は、ある範囲では低くなるほど、すなわち昇圧率を上昇させる方向に変化させるほど、直流電源10から取り出す出力を高くできるが、デューティ比がその範囲の下限より小さくなると、直流電源10から取り出す出力が低下してしまう。このため、モデル予測制御器50で算出され出力されたデューティ比は、特に下限に制限を設けるように、予め設定された上限及び下限の範囲に入るように制限される。制御装置30は、リミッタ60から出力された次回デューティ比d(k+1)を用いてDC/DCコンバータ11を制御する。以下、オブザーバ34とモデル予測制御器50との構成を詳しく説明する。
図3は、図2に示しているオブザーバ34の全体構成を示す図である。オブザーバ34は、リアクトル電流iLを推定する。オブザーバ34は、スイッチング時間計算器35、第1オブザーバ36、第2オブザーバ37、第3オブザーバ38、第4オブザーバ39及び第5オブザーバ40を含んで構成される。
スイッチング時間計算器35は、外部からDC/DCコンバータ11のデューティ比の設定値の入力を受けると、第1スイッチング素子14及び第2スイッチング素子16のスイッチングの時間である設定時間ΔT1、ΔT3、ΔT5及びデッドタイム時間ΔT2、ΔT4を算出する。第1〜第5オブザーバ36〜40は、時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5と、コンデンサ電圧測定値vc、電源電圧測定値vb、及び出力電流算出値imとに基づいてリアクトル電流推定値iL(チルダ)及びコンデンサ電圧推定値vc(チルダ)を算出する。図4を参照して、スイッチング時間計算器35におけるスイッチングの時間の算出について説明する。
スイッチング時間計算器35は、第1スイッチング素子14のデューティ比と三角波比較PWMとに基づいて、第1スイッチング素子14のオン時間、第2スイッチング素子16のオン時間及びデッドタイム時間を算出する。具体的には、スイッチング時間計算器35は、所定の周期を有する三角波(図4中、太実線で示す)及びデッドタイム時間だけ遅らせた三角波(デッドタイム分遅れ三角波)及びデューティ比d(図4)からパルス幅変調信号(PWM信号)を求める。デッドタイム分遅れ三角波は、図4中、点線で示している。パルス幅変調信号は、第1スイッチング素子(上素子)14及び第2スイッチング素子(下素子)16のオンオフ状態を制御するためのものである。ここで、三角波の下点から第1スイッチング素子14がオン状態からオフ状態へ切り替えられるまで、すなわち三角波がデューティ比d以下となる時間を設定時間ΔT1とする。また、設定時間ΔT1経過後、第1スイッチング素子14がオフ状態にされてから第2スイッチング素子16がオン状態にされるまでをデッドタイム時間ΔT2とする。デッドタイム時間ΔT2は、デューティ比dにおける三角波とデッドタイム分遅れ三角波との時間ずれに相当する。また、デッドタイム時間ΔT2経過後、第2スイッチング素子16がオン状態の間、すなわち三角波がデューティ比を上回る時間を設定時間ΔT3とする。また、設定時間ΔT3経過後、第2スイッチング素子16がオフ状態にされてから第1スイッチング素子14がオン状態にされるまでをデッドタイム時間ΔT4とする。デッドタイム時間ΔT4は、デューティ比dにおける三角波とデッドタイム分遅れ三角波との時間ずれに相当する。また、デッドタイム時間ΔT4経過後、第1スイッチング素子14がオン状態にされてから第2スイッチング素子16がオフ状態にされるまで、すなわち三角波の下点に達するまでの時間を設定時間ΔT5とする。スイッチング時間計算器35は、入力されたデューティ比に応じた第1、第2スイッチング素子14、16のオン時間となるようにPWM信号を求め、それに対応した設定時間ΔT1、ΔT3、ΔT5及びデッドタイム時間ΔT2、ΔT4を設定する。
DC/DCコンバータ11の第1スイッチング素子14及び第2スイッチング素子16は、設定時間ΔT1、ΔT3、ΔT5及びデッドタイム時間ΔT2、ΔT4で決められるPWM信号により制御される。また、スイッチング時間計算器35は、設定時間ΔT1、ΔT3、ΔT5及びデッドタイム時間ΔT2、ΔT4を、後述の第1〜第5オブザーバ36〜40へそれぞれ出力する。
図3に戻って、オブザーバ34は、キャリア信号の周期に同期してサンプリングされた電源電圧vb、出力電流im及びコンデンサ電圧vc(出力電圧に相当)の測定値の入力を受ける。そして、オブザーバ34は、その入力から、それぞれスイッチング時間計算器35で設定された設定時間ΔT1、デッドタイム時間ΔT2、設定時間ΔT3、デッドタイム時間ΔT4及び設定時間ΔT5におけるリアクトル電流推定値iL(チルダ)を求める。実施形態では、図4における三角波の下点に同期した制御タイミングでサンプリングされた電源電圧vb、出力電流im及びコンデンサ電圧vcの測定値の入力を受けて、制御タイミング毎にリアクトル電流iLの推定値を求める。
第1スイッチング素子14がオン状態の場合、DC/DCコンバータ11の状態方程式は数式(1)で表わされる。ここで、r
Lは、リアクトル12の抵抗成分を示す。なお、以下において、時間微分値には上付の点(ドット)を付して示す。
数式(1)に対して双1次変換を適用して離散化すると数式(2)のように表わすことができる。
また、数式(2)に対して係数A、B及びCを数式(3)のように定義できる。
一方、第2スイッチング素子16がオン状態の場合、DC/DCコンバータ11の状態方程式は数式(4)で表わされる。
数式(4)に対して双1次変換を適用して離散化すると数式(5)のように表わすことができる。
また、数式(5)に対して係数A、B及びCを数式(6)のように定義できる。
制御装置30における状態方程式が数式(1)〜数式(6)のように表わされるので、第1オブザーバ36、第2オブザーバ37、第3オブザーバ38及び第4オブザーバ39は、図5に示すような構成となる。また、第5オブザーバ40は、図6に示すような構成となる。
一方、デッドタイム時間ΔT2に対する推定を行う第2オブザーバ37は、図7に示すように、内部に2つのオブザーバ41,42及び切替スイッチ44を備える。オブザーバ41は、第1スイッチング素子14がオン状態のときの状態方程式を用いてリアクトル電流iL及びコンデンサ電圧vcの推定を行うオブザーバである。オブザーバ42は、第2スイッチング素子16がオン状態のときの状態方程式を用いてリアクトル電流iL及びコンデンサ電圧vcの推定を行うオブザーバである。入力されるリアクトル電流iLの推定値が正電流(直流電源10の正極から流れ出る方向)の場合、第1スイッチング素子14がオン状態と同等である。これにより、切替スイッチ44をオブザーバ41側に切り替えてオブザーバ41を使用してリアクトル電流iL及びコンデンサ電圧vcの推定を行う。入力されるリアクトル電流iLの推定値が負電流(直流電源10の正極に流れ込む方向)の場合、第2スイッチング素子16がオン状態である、第1スイッチング素子14がオフ状態と同等である。これにより、切替スイッチ44をオブザーバ42側に切り替えてオブザーバ42を使用してリアクトル電流iL及びコンデンサ電圧vcの推定を行う。デッドタイム時間ΔT4に対する推定を行う第4オブザーバ39も同様の構成とすればよい。
また、数式(1)〜(6)の状態方程式を用いる場合において、リアクトル12のインダクタンスは、実際にはリアクトル電流iLで変化する。これにより、予め設定された関係式と、第5オブザーバ40で推定した前回のリアクトル電流の推定値iL(チルダ)、または前のオブザーバ36〜39で推定したリアクトル電流の推定値iL(チルダ)とを用いて、インダクタンスLを算出する。数式(1)〜(6)の状態方程式を用いた算出には、リアクトル電流の推定値iL(チルダ)を用いて算出したインダクタンスLを用いる。これにより、制御性をより高くできる。図8は、実施形態におけるリアクトルのインダクタンスにおける電流依存性の例を示している。図8では、インダクタンスは、リアクトル電流が0Aのときのインダクタンスを1として正規化して示している。リアクトル電流は、最大電流を1として正規化して示している。このように状態方程式に用いるリアクトルのインダクタンスLとして、リアクトル電流推定値に対する依存性を持つインダクタンスを用い、リアクトル電流に応じて変化させる。
図3に戻って、第1オブザーバ36には、三角波の下点から第1スイッチング素子14がオン状態からオフ状態へ切り替えられるまでの第1スイッチング素子14がオン状態となっている時間ΔT1が入力される。第1オブザーバ36は、時間ΔT1の入力を受けると、第1スイッチング素子14がオン状態のときの状態方程式(数式(2)及び数式(3))のTに時間ΔT1、vc(t)にコンデンサ電圧vcの測定値を代入する。また、第1オブザーバ36は、状態方程式(数式(2)及び数式(3))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、前回第5オブザーバ40で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第1オブザーバ36は、リアクトル電流iLの推定値iL(チルダ)(ΔT1)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT1)を推定して出力する。
第2オブザーバ37には、時間ΔT1経過後、第1スイッチング素子14がオフ状態にされてから第2スイッチング素子16がオン状態にされるまでのデッドタイム時間ΔT2が入力される。第2オブザーバ37は、時間ΔT2の入力を受けると、第1オブザーバ36から入力されたリアクトル電流iLの推定値iL(チルダ)(ΔT1)の向きに応じてオブザーバ41,42のいずれかを選択する。オブザーバ41が選択された場合、第1スイッチング素子14がオン状態のときの状態方程式(数式(2)及び数式(3))のTに時間ΔT2、vc(t)に第1オブザーバ36でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT1)を代入する。また、オブザーバ41は、状態方程式(数式(2)及び数式(3))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第1オブザーバ36で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第2オブザーバ37は、リアクトル電流iLの推定値iL(チルダ)(ΔT2)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT2)を推定して出力する。
一方、オブザーバ42が選択された場合、第2スイッチング素子16がオン状態のときの状態方程式(数式(5)及び数式(6))のTに時間ΔT2、vc(t)に第1オブザーバ36でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT1)を代入する。また、オブザーバ42は、状態方程式(数式(5)及び数式(6))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第1オブザーバ36で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第2オブザーバ37は、リアクトル電流iLの推定値iL(チルダ)(ΔT2)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT2)を推定して出力する。
第3オブザーバ38には、デッドタイム時間ΔT2経過後、第2スイッチング素子16がオン状態の間である時間ΔT3が入力される。第3オブザーバ38は、時間ΔT3の入力を受けると、第2スイッチング素子16がオン状態のときの状態方程式(数式(5)及び数式(6))のTに時間ΔT3、vc(t)に第2オブザーバ37でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT2)を代入する。また、第3オブザーバ38は、状態方程式(数式(5)及び数式(6))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第2オブザーバ37で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第3オブザーバ38は、リアクトル電流iLの推定値iL(チルダ)(ΔT3)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT3)を推定して出力する。
第4オブザーバ39には、時間ΔT3経過後、第2スイッチング素子16がオフ状態にされてから第1スイッチング素子14がオン状態にされるまでのデッドタイム時間ΔT4が入力される。第4オブザーバ39は、時間ΔT4の入力を受けると、第3オブザーバ38から入力されたリアクトル電流iLの推定値iL(チルダ)(ΔT3)の向きに応じてオブザーバ41,42のいずれかを選択する。オブザーバ41が選択された場合、第1スイッチング素子14がオン状態のときの状態方程式(数式(2)及び数式(3))のTに時間ΔT4、vc(t)に第3オブザーバ38でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT3)を代入する。また、オブザーバ41は、状態方程式(数式(2)及び数式(3))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第3オブザーバ38で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第4オブザーバ39は、リアクトル電流iLの推定値iL(チルダ)(ΔT4)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT4)を推定して出力する。
一方、オブザーバ42が選択された場合、第2スイッチング素子16がオン状態のときの状態方程式(数式(5)及び数式(6))のTに時間ΔT4、vc(t)に第3オブザーバ38でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT3)を代入する。また、オブザーバ42は、状態方程式(数式(5)及び数式(6))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第3オブザーバ38で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。これにより、第4オブザーバ39は、リアクトル電流iLの推定値iL(チルダ)(ΔT4)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT4)を推定して出力する。
第5オブザーバ40には、デッドタイム時間ΔT4経過後、第1スイッチング素子14がオン状態にされてから第2スイッチング素子16がオフ状態にされるまでの時間ΔT5が入力される。第5オブザーバ40は、時間ΔT5の入力を受けると、第1スイッチング素子14がオン状態のときの状態方程式(数式(2)及び数式(3))のTに時間ΔT5、vc(t)に第4オブザーバ39でのコンデンサ電圧vcの推定値vc(チルダ)(ΔT4)を代入する。さらに、第5オブザーバ40は、状態方程式(数式(2)及び数式(3))のvb(t)に電源電圧vbの測定値、im(t)に出力電流imの測定値を代入する。また、状態方程式のインダクタンスLを求めるために、第4オブザーバ39で推定したリアクトル電流iLの推定値iL(チルダ)を用いる。さらに前回の第5オブザーバ40での前回のコンデンサ電圧vcの推定値vc(チルダ)(ΔT5)にオブザーバゲインk1,k2を乗算した値をフィードバックする。これにより、第5オブザーバ40は、新たなリアクトル電流iLの推定値iL(チルダ)(ΔT5)及びコンデンサ電圧vcの推定値vc(チルダ)(ΔT5)を推定して出力する。
このような処理によって、各時間ΔT1〜ΔT5におけるリアクトル電流iLの推定値iL(チルダ)(T)及びコンデンサ電圧vcの推定値vc(チルダ)(T)を推定することができる。第5オブザーバ40で推定したリアクトル電流iLの推定値iL(チルダ)及びコンデンサ電圧vcの推定値vc(チルダ)は、モデル予測制御器50(図2)に入力される。
図9は、図2に示しているモデル予測制御器50の概略構成を示している。図10は、図9に示しているモデル予測制御器50の詳細構成を示している。図9、図10に示すように、モデル予測制御器50は、複数のスイッチング時間計算器51と、予測制御本体部(MPC本体)52とを有する。図9では、簡略化してスイッチング時間計算器51を1つのみ示している。図10では、スイッチング時間計算器51を除く部分が、予測制御本体部52を構成する。予測制御本体部52は、複数の加算器53と、複数の予測演算器54と、複数の評価関数演算器55と、最適デューティ比設定部56とを含む。
各スイッチング時間計算器51の機能は、図3で示したスイッチング時間計算器35と同様である。具体的には、スイッチング時間計算器51は、入力されたデューティ比に応じた第1スイッチング素子14及び第2スイッチング素子16のオン時間となるようにPWM信号を求め、それに対応した時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5を設定する。
このとき、図10に示すように、複数のスイッチング時間計算器51には、異なるデューティ比が入力される。まず、現在のデューティ比d(k)を基準として、複数の加算器53によって、所定値ずつ加算するか、または所定値ずつ減算するかによって得た、所定値ずつ異なる複数のデューティ比が、複数のスイッチング時間計算器51に入力される。スイッチング時間計算器51に入力されるデューティ比は仮デューティ比に相当する。
図10に示すモデル予測制御器50では、デューティ比を、10ビットで表現可能な数である0〜1023の値で示している。この場合、デューティ比が1023では、第1スイッチング素子14が1制御周期のすべてでオンされていることを意味する。デューティ比が0では、第1スイッチング素子14が1制御周期のすべてでオフされ、第2スイッチング素子16が1制御周期のすべてでオンされていることを意味する。
また、以下では、現在のデューティ比d(k)を基準として、(d(k)−64)から(d(k)+64)までの範囲で、評価関数が最小となるデューティ比を次回のデューティ比d(k+1)として求める場合を説明する。デューティ比を変化させる範囲として、基準値d(k)に対する幅を64とした理由は、デッドタイムを5μsとし、PWM制御周期を100μsとした場合に、1制御周期におけるデッドタイムの割合を10ビットで表した値より大きい数値とするためである。具体的には、5(μs)/100(μs)×1023=51であるので、51より大きい数値で、かつできるだけ演算負荷が少ないように小さい数値となるように、上記の幅を64とした。
評価関数は、リアクトル電流の予測値と、PI制御器32の出力に関係する値との偏差の2乗である。以下では、評価関数J[d(k)+a]は、数式(7)で示すように、モデル予測制御器50で予測したリアクトル電流予測値と、PI制御器32から出力されるリアクトル電流指令値iL *との偏差の2乗とする。
数式(7)において、aは任意の整数である。例えば以下で説明する例では、aは、−64から+64までのいずれか1つの整数が設定される。
また、以下では、複数のスイッチング時間計算器51のうち、デューティ比として現在デューティ比d(k)が入力されるスイッチング時間計算器51を、スイッチング時間計算器A0と示す。また、デューティ比としてd(k)+iが入力されるスイッチング時間計算器51をスイッチング時間計算器Aiと示し、デューティ比としてd(k)−iが入力されるスイッチング時間計算器51をスイッチング時間計算器−Aiと示す。iは1〜64のいずれか1つの値である。スイッチング時間計算器A0は、現在デューティ比d(k)が入力されるので、図3で示したオブザーバ34の場合と同様に、時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5を設定する。設定された時間は、対応する予測演算器54に入力される。
複数の予測演算器54は、スイッチング時間計算器51と同数が設定される。スイッチング時間計算器A0に対応する予測演算器54は予測演算器B0と示す。また、スイッチング時間計算器Aiに対応する予測演算器54はBiと示し、スイッチング時間計算器−Aiに対応する予測演算器54は−Biと示す。
スイッチング時間計算器Aiは、デューティ比d(k)+iが入力されるので、そのデューティ比に応じた時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5を設定する。設定された時間は、対応する予測演算器Biに入力される。
スイッチング時間計算器−A1は、デューティ比d(k)−iが入力されるので、そのデューティ比に応じた時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5を設定する。設定された時間は、対応する予測演算器−Biに入力される。
予測演算器54は、入力された設定時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5に応じて、リアクトル電流の予測値を算出する。なお、以下において、図中の予測値には、上付の山形線(ハット)を付して示す。
予測演算器B0は、デューティ比d(k)に応じた設定時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5が入力される。予測演算器B0は、入力された設定時間、出力電流算出値im、電源電圧測定値vb、リアクトル電流推定値iL(チルダ)、及びコンデンサ電圧推定値vc(チルダ)に応じて、図3のオブザーバ34と同様に、時間ΔT5でのリアクトル電流予測値を算出する。
以下では、リアクトル電流予測値のうち、現在デューティ比d(k)に基づくリアクトル電流予測値を、iL(ハット)[d(k)]と示す。また、デューティ比d(k)+iに基づくリアクトル電流予測値を、iL(ハット)[d(k)+i]と示し、デューティ比d(k)−iに基づくリアクトル電流予測値を、iL(ハット)[d(k)−i]と示す。
算出されたリアクトル電流予測値iL(ハット)[d(k)]、iL(ハット)[d(k)+i]、iL(ハット)[d(k)−i]は、複数の評価関数演算器55のうち、対応する評価関数演算器55にそれぞれ入力される。
複数の評価関数演算器55は、予測演算器54と同数が設定される。予測演算器B0に対応する評価関数演算器55は評価関数演算器C0と示す。予測演算器Biに対応する評価関数演算器55はCiと示し、予測演算器−Biに対応する評価関数演算器55は−Ciと示す。
評価関数演算器55は、入力されたリアクトル電流予測値iL(ハット)[d(k)]、iL(ハット)[d(k)+i]、iL(ハット)[d(k)−i]と、リアクトル電流指令値iL*とから上記の数式(7)の評価関数J[d(k)+a]を算出する。算出された評価関数J[d(k)+a]は、最適デューティ比設定部56に入力される。
最適デューティ比設定部56は、全部の評価関数演算器55から評価関数J[d(k)+a]が入力され、入力された評価関数の中から最小の評価関数を選択する。そして、最適デューティ比設定部56は、その選択した評価関数の算出で用いたデューティ比(制限前のデューティ比)d(k+1)を最適デューティ比としてリミッタ60(図2)に出力する。リミッタ60は、上記のように最適デューティ比を最適な上限及び下限の範囲に制限する。制御装置30は、制限後の最適デューティ比に応じて、DC/DCコンバータ11の第1スイッチング素子14及び第2スイッチング素子16を制御するためのスイッチング信号(SW信号)を生成し、DC/DCコンバータ11に出力する。DC/DCコンバータ11は、入力されたスイッチング信号によって第1スイッチング素子14及び第2スイッチング素子16のスイッチングが制御される。これにより電源電圧が昇圧されて負荷104に出力される。または負荷104で生じた電圧が降圧されて直流電源10に出力され、直流電源10が充電される。例えば、モータ駆動装置100が車両に搭載され、車輪を駆動するために用いられる場合に、車両の制動時にモータ106が回生電力を発生し、その回生電力により生じた電圧がDC/DCコンバータ11で降圧されて直流電源10に供給される。
上記のDC/DCコンバータの制御装置30によれば、DC/DCコンバータ11において、リアクトル電流iLを測定する電流センサを用いることなく、リアクトル電流iLを効率よく、かつ精度よく推定できる。また、デューティ比を変化させた場合におけるリアクトル電流の予測演算値から最適なデューティ比を設定できるので、過渡応答の立ち上がり時間の短縮と行き過ぎ量の低減との両立を図れる制御を実現できる。
また、2つのスイッチング素子を含むDC/DCコンバータでは、デッドタイムが発生するが、実施形態では、デッドタイムにおけるリアクトル電流及び出力電圧を考慮して精度よくDC/DCコンバータを制御できる。一方、非特許文献1に記載された構成では、スイッチング素子が1つであり、かつ、還流ダイオードがないため、スイッチングにデッドタイムを設ける必要がない。このような非特許文献1の構成を2つのスイッチング素子を含むDC/DCコンバータの構成に組み合わせるだけでは、デッドタイムによって、オブザーバで計算するリアクトルの電流平均値を精度よく計算できない。このため、過渡応答の性能が劣化する。非特許文献1の(3)式の評価関数にあるd∞は、電池電圧Eを使用しており、リアクトル電流より変化が遅い。また、(3)式の評価関数で用いられる││i[k+1]−Ir││2では、現在のリアクトル電流の平均値から近くなるデューティ比しか選択されない。これによって、非特許文献1の構成では、過渡応答が向上されにくい。実施形態では、2つのスイッチング素子14,16を含み還流ダイオードの接続によりデッドタイムが設けられる構成において、リアクトル電流iL及びコンデンサ電圧vcの推定値の誤差を小さくできる。
なお、三角波比較PWMのスイッチング時間の作成方法は、図4に示したデッドタイム時間だけ遅らせた三角波を用いる方法に限定するものではない。実施形態は、第1スイッチング素子14及び第2スイッチング素子16のオン時間とデッドタイムとが計算できれば適用可能である。
<第2の実施の形態>
図11は、実施の形態におけるDC/DCコンバータの制御装置30の制御機能構成の別例を示す図である。図12は、図11の構成におけるモデル予測制御器50の概略構成を示す図である。図13は、図12に示しているモデル予測制御器50の詳細構成を示す図である。
図11に示す別例の構成では、図1から図10に示した構成において、PI制御器32は、コンデンサ電圧の指令値vc*と測定値vcとの偏差(vc*−vc)が減算器31から入力される。そして、PI制御器32は、入力された偏差を、比例積分演算であるPI演算して、コンデンサ電圧指令変化値eを算出して、第2加算器57に出力する。第2加算器57は、コンデンサ電圧指令値vc *に、PI制御器32から出力されたコンデンサ電圧指令変化値eを加算して、補正後コンデンサ電圧指令値vc **を算出する。補正後コンデンサ電圧指令値vc **は、新たなコンデンサ電圧指令値として、第2加算器57からモデル予測制御器50に出力される。コンデンサ電圧指令変化値eは、正、または負、または0の場合がある。補正後コンデンサ電圧指令値vc **はモデル予測制御器50に入力される。図11に示すオブザーバ34の構成は、図1から図10に示した構成のオブザーバ34と同様である。
モデル予測制御器50は、補正後コンデンサ電圧指令値vc **、電源電圧測定値vb、出力電流算出値im、リアクトル電流推定値iL(チルダ)、コンデンサ電圧推定値vc(チルダ)、及び現在デューティ比d(k)から、制限前の次回デューティ比を算出する。算出された制限前の次回デューティ比は、リミッタ60に出力される。
図12、図13に示すように、モデル予測制御器50を構成する予測制御本体部52には、補正後コンデンサ電圧指令値vc **、電源電圧測定値vb、出力電流算出値im、リアクトル電流推定値iL(チルダ)、及びコンデンサ電圧推定値vc(チルダ)が入力される。また、予測制御本体部52には、スイッチング時間計算器51から現在デューティ比d(k)に応じた設定時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5が入力される。
具体的には、図13に示すように、予測制御本体部52を構成する複数の予測演算器54は、対応するスイッチング時間計算器51から、デューティ比に応じた設定時間ΔT1、ΔT2、ΔT3、ΔT4、ΔT5が入力される。予測演算器54は、入力された設定時間、出力電流算出値im、電源電圧測定値vb、リアクトル電流推定値iL(チルダ)、及びコンデンサ電圧推定値vc(チルダ)に応じて、図3のオブザーバ34と同様に、時間ΔT5でのコンデンサ電圧予測値を算出する。
以下では、コンデンサ電圧予測値のうち、現在デューティ比d(k)に基づくコンデンサ電圧予測値を、vc(ハット)[d(k)]と示す。また、デューティ比d(k)+iに基づくコンデンサ電圧予測値を、vc(ハット)[d(k)+i]と示し、デューティ比d(k)−iに基づくコンデンサ電圧予測値を、vc(ハット)[d(k)−i]と示す。
算出されたコンデンサ電圧予測値vc(ハット)[d(k)]、vc(ハット)[d(k)+i]、vc(ハット)[d(k)−i]は、複数の評価関数演算器55のうち、対応する評価関数演算器55にそれぞれ入力される。
評価関数演算器55は、入力されたコンデンサ電圧予測値vc(ハット)[d(k)]、vc(ハット)[d(k)+i]、vc(ハット)[d(k)−i]と、補正後コンデンサ電圧指令値vc **とから数式(8)で示すように、評価関数J[d(k)+a]を算出する。
数式(8)において、aは任意の整数である。例えば図13に示す例では、aは、−64から+64までのいずれか1つの整数が設定される。算出された評価関数J[d(k)+a]は、最適デューティ比設定部56に入力される。評価関数J[d(k)+a]は、コンデンサ電圧の予測値vc(ハット)[d(k)]、vc(ハット)[d(k)+i]、vc(ハット)[d(k)−i]とPI制御器32の出力に関係する値との偏差の2乗である。
最適デューティ比設定部56は、全部の評価関数演算器55から評価関数J[d(k)+a]が入力され、入力された評価関数の中から最小の評価関数を選択する。そして、最適デューティ比設定部56は、その選択した評価関数の算出で用いたデューティ比(制限前のデューティ比)d(k+1)を最適デューティ比としてリミッタ60(図11)に出力する。リミッタ60は、最適デューティ比d(k+1)を最適な上限及び下限の範囲に制限する。制御装置30は、制限後の最適デューティ比に応じて、DC/DCコンバータ11(図1)のスイッチングを制御する。
上記のDC/DCコンバータの制御装置30の場合も、リアクトル電流iLを測定する電流センサを用いることなく、リアクトル電流iLを効率よく、かつ精度よく推定できる。また、デューティ比を変化させた場合におけるコンデンサ電圧の予測演算値から最適なデューティ比を設定でき、過渡応答の立ち上がり時間の短縮と行き過ぎ量の低減との両立を図れる制御を実現できる。その他の構成及び作用は、図1から図10の構成と同様である。
なお、上記の実施の形態では、数式(1)及び数式(4)を、双1次変換を利用して離散化したが、これに限定されるものではなく、0次ホールド、前進差分、後退差分を利用して離散化させてもよい。
以上のように、本発明の実施の形態によれば、第1スイッチング素子14のオン状態と第2スイッチング素子16のオン状態とにおいて異なる状態方程式を適用したオブザーバを用いることでリアクトル電流の推定誤差を抑制することができる。また、デッドタイム時間のリアクトル電流の推定値が正の場合と負の場合においてそれぞれ第1スイッチング素子14がオンの状態方程式、第2スイッチング素子16がオンの状態方程式を適用することでリアクトル電流の推定誤差を抑制することができる。さらに、コンデンサ電圧の推定値をフィードバックすることで、リアクトル電流の推定精度を高めることができる。また、過渡応答の立ち上がり時間の短縮と行き過ぎ量の低減との両立を図れる制御を実現できる。
なお、実施の形態では、同一次元オブザーバを用いたが、最小次元オブザーバを適用してもよい。