以下、各実施の形態について図面を参照して詳しく説明する。なお、同一または相当する部分には同一の参照符号を付して、その説明を繰り返さない。
<実施の形態1>
[電源装置の全体構成]
図1は、実施の形態1による電源装置の構成を示す図である。図2は、図1の電源装置の変形例を示す回路図である。図1および図2の電源装置20は、たとえば、給湯器、空気調和機、および冷蔵庫などの冷凍機器において、圧縮機用の同期モータ(M)12を駆動するために好適に用いることができる。
図1を参照して、電源装置20は、全波整流回路2と、整流電圧検出部9と、整流電流検出部4と、力率改善(PFC)回路14と、平滑用コンデンサ7と、直流電圧検出部8と、インバータ回路11と、電流検出アンプ部10と、マイクロコンピュータ13とを含む。
全波整流回路2は、単相交流電源1(電力系統など)から入力された単相の交流電源電圧Vacを全波整流する。図1の例では、全波整流回路2はダイオードブリッジによって構成される。
全波整流回路2の出力電圧および出力電流(以下、「整流電圧Vrec」および「整流電流Irec」と称する)は、整流電圧検出部9および整流電流検出部4によってそれぞれ検出される。具体的に、整流電圧検出部9は、全波整流回路2の出力側(PFC回路14の入力側)の高電圧ノード16Pと低電圧ノード16Nとの間に設けられ、たとえば、抵抗分圧回路によって構成される。抵抗分圧回路の分圧電圧が、整流電圧Vrecの検出信号<Vrec>としてマイクロコンピュータ13に入力される。整流電流検出部4は、低電圧ノード16Nとインバータ回路11の入力側(PFC回路14の出力側)の低電圧ノード17Nとの間の電源線に挿入された抵抗素子を含む。抵抗素子に生じた電圧は、電流検出アンプ部10によって増幅された後、整流電流Irecの検出信号<Irec>としてマイクロコンピュータ13に入力される。
PFC回路14は、整流電流Irecの波形が整流電圧Vrecの波形に比例した正弦波状(全波整流波形)になるように(すなわち、整流電流Irecと整流電圧Vrecとが同位相になり、整流電流Irecの瞬時値が整流電圧Vrecの瞬時値に比例するように)、整流電流Irecの波形を整形するものである。これによって、電源装置20に入力される交流電源電流Iacを、交流電源電圧Vacと同相の正弦波にすることができる。PFC回路14は、さらに、PFC回路14の出力電圧(インバータ回路11の入力電圧)が目標直流電圧に等しくなるように制御する。PFC回路14のこれらの機能は、スイッチング素子5のスイッチングデューティ比(周期に対するオン時間の比率)を、マイクロコンピュータ13から出力された制御信号Spfcによって制御することによって実現される。
図1の例では、PFC回路14は、いわゆる昇圧チョッパによって構成され、リアクトル3と、スイッチング素子5と、ダイオード6とを含む。リアクトル3およびダイオード6は、この並び順でPFC回路14の入力側の高電圧ノード16Pと、PFC回路14の出力側の高電圧ノード17Pとの間に直列に接続される。スイッチング素子5は、リアクトル3とダイオード6との接続ノードと、PFC回路14の出力側の低電圧ノード17Nとの間に接続される。スイッチング素子5として、図1に示されているIGBT(Insulated Gate Bipolar Transistor)の他に、パワーMOSFET(Metal Oxide Semiconductor Field Effect Transistor)、パワーバイポーラトランジスタなどを用いることができ、その種類は特に限定されない。
図2に示すように、リアクトル3A、スイッチング素子5A、およびダイオード6Aからなる第1の昇圧チョッパと並列に、リアクトル3B、スイッチング素子5B、およびダイオード6Bからなる第2の昇圧チョッパを設けた構成としてもよい。図2の力率改善回路14のスイッチング素子5A,5Bのスイッチングデューティ比(単にデューティ比とも称する)は、マイクロコンピュータ13から供給される制御信号SpfcA,SpfcBによってそれぞれ制御される。
再び図1を参照して、PFC回路14の出力側(インバータ回路11の入力側)の高電圧ノード17Pと低電圧ノード17N(接地ノードGND)との間には、PFC回路の出力電圧を平坦化する平滑用コンデンサ7と、平滑用コンデンサ7と並列に直流電圧検出部8とが設けられる。直流電圧検出部8は、抵抗分圧回路を含み、抵抗分圧回路による分圧電圧が直流電圧Vdcの検出信号<Vdc>としてマイクロコンピュータ13に入力される。
インバータ回路11は、平滑用コンデンサ7によって平坦化された直流電圧Vdcを三相交流電圧に変換する。変換によって得られた三相交流電圧は、モータ12のステータに供給される。インバータ回路11は、たとえば、三相ブリッジインバータである。
マイクロコンピュータ13は、CPU、RAM(Random Access Memory)、ROM(Read Only Memory)、カウンタ、A/D(Analog to Digital)変換器、入出力インターフェース回路などを内蔵する。ROMとしてフラッシュメモリを備えているのが望ましい。
マイクロコンピュータ13は、上記のPFC回路14およびインバータ回路11を制御する制御部として機能する。具体的に、マイクロコンピュータ13は、全波整流回路2の出力電圧(整流電圧Vrec)および出力電流(整流電流Irec)、ならびにインバータ回路11に入力される直流電圧Vdcに基づいて、PWM(Pulse Width Modulation)制御方式の制御信号Spfcを生成する。PFC回路14に設けられたスイッチング素子5は、この制御信号Spfcに応答してオンまたはオフに切り替わる。
さらに、マイクロコンピュータ13は、インバータ回路11に入力される直流電圧Vdcおよび直流電流Idcの検出信号<Vdc>,<Idc>ならびにインバータ回路11からモータ12のいずれかの相に出力されるモータ電流の検出信号(図示省略)に基づいて、PWM制御方式の制御信号Sinvを生成する。インバータ回路11に含まれる各スイッチング素子は、この制御信号Sinvに応答してオンまたはオフに切り替わる。
以下、マイクロコンピュータ13によるPFC制御についてさらに詳しく説明する。
[マイクロコンピュータによるPFC制御]
(1.概要)
PFC制御において、マイクロコンピュータ13は、予め定める周期ごとに(たとえば、PWM制御信号Spfcのキャリア周期ごとに)整流電圧Vrec、整流電流Irec、および直流電圧Vdcを検出する。そして、マイクロコンピュータ13は、検出した整流電圧Vrecと整流電流Irecとで位相および波形が一致するとともに、直流電圧Vdcが目標直流電圧に到達するように、スイッチングデューティ比DRを算出する。マイクロコンピュータ13は、算出したデューティ比DRを有する制御信号SpfcをPFC回路14のスイッチング素子5に出力する。すなわち、マイクロコンピュータ13の内部のメモリには、次式(1)のように、整流電圧Vrec、整流電流Irec、および直流電圧Vdcの各検出値を引数とする関数fが保持されている。
DR=f[Vrec、Irec、Vdc] …(1)
上記のスイッチングデューディ比は、キャリア周期毎に算出されたり、数キャリア周期毎に算出されたりすることが多い。一般的にはマイクロコンピュータの処理能力に応じて、デューティ比を計算する周期が設定される。この実施の形態では、キャリア周期とデューティ比の算出頻度とは可変とし、任意に設定できるようにしている。
なお、PFC制御では、デューティ比を算出する毎にその時点で検出された直流電圧Vdcの値を使用すると、整流電流Irecに歪みが発生しやすい。そこで、整流電圧Vrecの位相および波形と整流電流Irecの位相および波形とをより一致させるため、デューティ比の算出に用いる直流電圧Vdcは、交流電源電圧Vacの1周期毎もしくは半周期毎の平均値を使用する。このため、交流電源電圧Vacの1周期もしくは半周期中において目標直流電圧も一定の値に設定される。ただし、後述するように直流電圧Vdcの検出値が急激に低下した場合には、目標直流電圧は一時的に低減される。
目標直流電圧の設定値は、予め決められて、マイクロコンピュータ13内部のメモリに格納されている。以下では、メモリに格納されている予め決められた目標直流電圧の値をVdc_setと記載する。
図3は、メモリに格納されている目標直流電圧の設定値について説明するための図である。目標直流電圧の設定値Vdc_setは、同期モータ12の負荷によらず一定にしてもよいし、図3(A)に示すように同期モータ12の回転速度に応じて変更してもよいし、図3(B)に示すように整流電流Irecの大きさ(交流電源電圧Vacのピーク値または実効値に等しい)に応じて変更してもよい。
さて、整流電圧Vrecの位相および波形と整流電流Irecの位相および波形とを一致させるには、PFC回路14にある程度の昇圧能力を持たせるような目標直流電圧値の設定が必要である。すなわち、目標直流電圧値は、PFC回路14が無い場合の直流電圧値(平滑用コンデンサ7で平坦化された値)の3〜4倍程度に設定されるのが一般的である。たとえば、交流電源電圧Vacの実効値を100Vとすると、目標直流電圧値は、280V〜400V程度の範囲で設定されることが多い。
上記のように目標直流電圧が比較的高く設定されているので、PFC制御が開始されたときには、実際に出力される直流電圧Vdc(以下、実働直流電圧と称する)の値よりも目標直流電圧が大きくなる。このため、検出された整流電圧Vrec、整流電流Irec、直流電圧Vdcの各値に基づいて算出されたスイッチングデューティ比をそのまま制御信号Srecとして出力すると、急激に直流電圧値が増加して直流電圧がオーバーシュートしてしまう。このオーバーシュートによって、直流電圧値がインバータ回路11を構成する各部品の耐電圧を超える可能性がある。
そこで、実施の形態1の電源装置20は、PFC制御の開始時(出力開始時)に、目標直流電圧の設定値Vdc_setに実働直流電圧を即座に追随させるのではなく、実働直流電圧を徐々に増加させることによって、追随するまでの時間を遅らせる制御、すなわち、ソフトスタート制御を行う。ソフトスタート制御を行うことによって実働直流電圧のオーバーシュートを抑えることができる。
上記のソフトスタート制御は、マイクロコンピュータを用いたソフトウェア制御によって実行される。以下では、まず、PFC制御の開始時にソフトスタートを行うための制御手順について説明し、次にその制御手順を拡張して交流電源電圧Vacの大きさ(ピーク値または実効値)が急に低下した場合の制御手順について説明する。
なお、以下の制御手順では、目標直流電圧として2つのパラメータVdc_set、Vdc_aimを使用する。Vdc_setは、予め決められた目標直流電圧の設定値であり、マイクロコンピュータ13のメモリに格納されている。Vdc_aimは、実際のPFC制御に使用される目標直流電圧値であり、通常時はVdc_setに等しいが、PFC制御の開始時および交流電源電圧Vacの大きさが急激に低下したときには、一時的にVdc_setと異なる値に変更される。
(2.PFC制御開始時のソフトスタート制御)
図4は、PFC制御開始時におけるソフトスタート制御の手順を示すフローチャートである。図4の制御手順は、図1のマイクロコンピュータ13のCPUによって制御プログラムが実行されることによって実現される。
まず、CPUは、初回フラグFlg_1stが“0”であるか否かを判定する(ステップS100)。初回フラグFlg_1stは、PFC制御開始前には初期値として“0”に設定されている。PFC制御の開始後、ソフトスタート制御が完了したときに、CPUは初回フラグFlg_1stを“1”に変更する(ステップS125参照)。なお、PFC制御の開始前には、図1のPFC回路14のスイッチング素子5は常時オフの状態である。
さらに、PFC制御を開始する際に(ステップS100でYES)、CPUは、カウント数を表す変数cが“0”であるか否かを判定する(ステップS105)。ソフトスタート制御の開始前には、変数cは初期値である0に設定されている。ソフトスタート制御の開始後は、変数cは1ずつ増加されて0より大きくなる(ステップS120を参照)。
ソフトスタート制御を開始する際に(ステップS105でYES)、CPUは、パラメータ(Vdc_ini,Vdc_diff)の初期設定を行う(ステップS110)。具体的にCPUは、PFC制御開始直前における実働直流電圧の検出値Vdc_actualを初期直流電圧Vdc_iniとしてメモリに記憶する。さらに、CPUは、目標直流電圧の設定値Vdc_setと初期直流電圧Vdc_iniとの差分Vdc_diffを次式(2)に従って算出し、算出した差分Vdc_diffをメモリに記憶する。
Vdc_diff=Vdc_set−Vdc_ini …(2)
既に説明したようにPFC制御開始時点では(ステップS100でYES)、実働直流電圧の検出値Vdc_actualよりも目標直流電圧の設定値(Vdc_set)の方がかなり大きくなる。そこで、CPUは、ソフトスタート制御では、実際の制御に用いる目標直流電圧Vdc_aimを予め定められた目標値Vdc_setよりも低く(具体的には初期直流電圧Vdc_iniに等しく)設定し、カウント数(変数c)が目標到達回数CNTに達するまでの間(ステップS115でNOの間)、Vdc_aimを徐々に増加させて元の設定値Vdc_setに戻すようにする。言い換えると、カウント数(変数c)が目標到達回数CNTに達するまでの間、実働直流電圧Vdcが目標直流電圧の設定値Vdc_setに到達するのを遅延させることになる。
具体的に、CPUは、ソフトスタート制御の際に、次式(3)に従って目標直流電圧Vdc_aimを算出する(ステップS120)。目標直流電圧を算出する度に、変数cは1ずつ増加される(ステップS120)。
Vdc_aim=Vdc_ini+Vdc_diff×c/CNT …(3)
カウント数(変数c)が目標到達回数CNTに達すると(ステップS115でYES)、Vdc_aimはVdc_setに等しくなる。このとき、CPUは、初回フラグFlg_1stを“1”に変更することによって、ソフトスタート制御を終了する(ステップS125)。ソフトスタート制御の終了後は、CPUは、実際の制御に用いる目標直流電圧Vdc_aimを予め定められた目標値Vdc_setに等しく設定する(ステップS130)。
上記のソフトスタート制御において、目標到達回数CNTの値は変更することが可能である。さらには、上記のステップS100〜S130で表わされる一連の手順の繰り返し頻度も任意に設定することが可能である。
たとえば、1ms(1ミリ秒)毎に図4のステップS100〜S130で表わされる一連の手順を実行するように設定するとともに、目標到達回数CNTを2000に設定したとする。そうすると、1ms毎にVdc_diff/2000ずつ、実働直流電圧が目標直流電圧値の設定値Vdc_setに近づき、2000ms後に実働直流電圧が目標直流電圧の設定値Vdc_setに到達する。目標到達回数CNTを変更することによって、実働直流電圧が目標直流電圧の設定値Vdc_setに到達するまでの遅延時間を変更することが可能である。
なお、カウント数(変数c)が目標到達回数CNTに到達した後(すなわち、ソフトスタート制御の終了後)は、初回フラグFlg_1stが“1”にセットされるため(ステップS125)、図4のステップS100では常にNOに判定される。したがって、ソフトスタート制御の終了後は、ステップS100以外の判定は行われずに、目標直流電圧Vdc_aimに予め設定された目標値Vdc_setを代入するステップS130がすぐに実行される。
(3.交流電源電圧の大きさが瞬時的に低下した場合)
PFC制御の開始時のみに上記ソフトスタート制御を行った場合には、たとえば交流電源電圧が瞬時的に低下した場合にPFC制御の開始時と同様に直流電圧がオーバーシュートしてしまう可能性がある。この結果、実働直流電圧がインバータ回路11に内蔵されている部品の耐圧を超える可能性がある。
上記の理由から、実施の形態1による電源装置20では、PFC制御の開始後も実働直流電圧が目標直流電圧よりも大きく低下した場合に、PFCを開始する際と同様のソフトスタート制御が行われる。以下、図1のブロック図と図5のフローチャートとを参照して詳しく説明する。
図5は、実施の形態1によるPFC制御の手順を示すフローチャートである。図5の制御手順は、図1のマイクロコンピュータ13のCPUによって制御プログラムが実行されることによって実現される。
図5に示すPFC制御の手順では、図4の初回フラグFlg_1stに代えて、ソフトスタートフラグFlg_softが用いられる。ソフトスタートフラグFlg_softは、ソフトスタート制御の実行中は0であり、ソフトスタート制御を行っていないときは1である。直流電圧の目標値Vdc_aimおよび設定値Vdc_setの定義は図4の場合と同じである。初期状態(PFC制御を開始する前)では、直流電圧の目標値Vdc_aimは予め設定された値Vdc_set(たとえば、図3を参照)に等しく設定されている。
図5に示すように、まず、CPUは、直流電圧検出部8によって検出された実働直流電圧Vdc_actualが、直流電圧の目標値Vdc_aimよりも許容電圧差Vdc_saを超えて低下しているか否かを判定する(ステップS200)。すなわち、CPUは、次式(4)が満たされているか否かを確認する。
(Vdc_aim−Vdc_actual)>Vdc_sa …(4)
既に説明したようにPFC制御の開始時には上式(4)の条件が満たされている。さらに、交流電源電圧Vacが瞬時的に低下した場合にも上式(4)の条件が満たされている。CPUは、上式(4)の条件が満たされている場合には、ソフトスタートフラグFlg_softおよび変数cをそれぞれ0に初期化する(ステップS205)。
ソフトスタートフラグFlg_softが0の場合(ステップS210でYES)の動作、すなわちソフトスタート制御の動作(ステップS215〜S235)は、図4のステップS105〜S125と同様であるので詳しい説明を繰り返さない。変数cが目標到達回数CNTに到達すると(ステップS225でYES)、CPUは、ソフトスタートフラグFlg_softを1に設定してソフトスタート制御を終了する(ステップS235)。
なお、ソフトスタート制御が終了した後は、上式(4)が満たされない限り(すなわち、ステップS200でYESとならない限り)、ソフトスタートフラグFlg_softは“1”が維持されるので、ステップS210はNOと判定される。したがって、ソフトスタート制御の終了後は、ステップS200およびステップS210以外の判定は行われずに、目標直流電圧Vdc_aimに予め設定された目標値Vdc_setを代入するステップS240がすぐに実行される。
[PFC制御の具体例]
図6は、実施の形態1の場合において、交流電源電圧と目標直流電圧および実働直流電圧との関係を示す図である。図6(A)はソフトスタート制御が無しの場合を示し、図6(B)はソフトスタート制御が有りの場合を示す。図6(A)および(B)において、目標直流電圧Vdc_aimは破線で示され、図1の直流電圧検出部8で検出された直流電圧の値Vdc_actual(実働直流電圧)は実線で示されている。交流電源電圧Vacはピーク値(振幅)のみが示されている。
図6(A)を参照して、PFC制御が開始される時刻t1より前では、図1の直流電圧検出部8で検出された直流電圧の値Vdc_actual(実働直流電圧)は、目標直流電圧Vdc_aimよりも小さい。ソフトスタート制御を行わない場合には、実際の目標直流電圧Vdc_aimは、予め定められた目標直流電圧の設定値Vdc_setに常に等しい。このため、時刻t1でPFC制御が開始されると、実働直流電圧Vdc_actualが急激に増加してオーバーシュートする。
時刻t3に交流電源電圧Vacの振幅が瞬時的に低下する。これによって、実働直流電圧Vdc_actualの波形には、アンダーシュートおよびオーバーシュートが発生する。交流電源電圧Vacの振幅は、時刻t5までの間で緩やかに増加し元の振幅に戻る。
図6(B)を参照して、ソフトスタート制御を行う場合には、PFC制御が開始される時刻t1において、CPUは、目標直流電圧Vdc_aimを現時点の実働直流電圧Vdc_actualに等しく、すなわち、Vdc_iniに等しく設定する(図5のステップS230でc=0の場合)。CPUは、時刻t1から時刻t2までの間(すなわち、変数cが目標到達回数CNTに達するまでの間)、目標直流電圧Vdc_aimを予め定められた目標電圧設定値Vdc_setまで徐々に増加させる(ステップS230)。これによって、実働直流電圧Vdc_actualのオーバーシュートを防止することができる。
次に、時刻t3において交流電源電圧Vacの振幅が瞬時的に低下すると、実働直流電圧Vdc_actualも急激に低下する。この結果、前述の式(4)の関係が満たされるようになるので、CPUは、目標直流電圧Vdc_aimを現時点の実働直流電圧Vdc_actualに等しく、すなわち、Vdc_iniに等しく設定する(図5のステップS230でc=0の場合)。CPUは、時刻t3から時刻t4までの間(すなわち、変数cが目標到達回数CNTに達するまでの間)、目標直流電圧Vdc_aimを予め定められた目標電圧設定値Vdc_setまで徐々に増加させる(ステップS230)。これによって、実働直流電圧Vdc_actualのオーバーシュートを防止することができる。
[実施の形態1の効果]
実施の形態1の電源装置によれば、マイクロコンピュータによるソフトウェア制御でPFC回路の動作を制御するので、アナログ回路で構成された制御回路に比べて、電気素子点数を削減することができ、電装基板の実装スペースを減少させることができる。さらに、ソフトウェア制御であるので、PWM信号のデューティ比の設定変更を容易に行うことができる。
さらに、実施の形態1の電源装置によれば、実働直流電圧を目標直流電圧まで徐々に到達させる(すわなち、到達時間を遅延させる)ソフトスタート制御を、PFC制御開始時だけでなく、PFC制御開始後に実働直流電圧が目標直流電圧に比べて急に低下した場合にも行う。たとえば、交流電源電圧の大きさが瞬時的に減少した場合には、実働直流電圧が目標直流電圧に比べて急に低下する。ソフトスタート制御を行うことによって、PWM信号のデューティ比の急激な変化を防止することできるので、実働直流電圧のオーバーシュートを抑制することができる。
さらに、実施の形態1の電源装置は、交流電源電圧に瞬時的な低下があっても安定して動作させることができるので、交流電源電圧が不安定な地域でも使用することができる。これまでオーバーシュートを考慮して選定していた部品の耐圧を低減してコストダウンを図ることができるので、より安価な電源装置を提供することが可能になる。
<実施の形態2>
実施の形態2の電源装置は、交流電源電圧の振幅が低下した後に元の振幅に復帰した場合、もしくは交流電源電圧の振幅が瞬時的に増加した場合の制御に関するものである。これらの場合、交流電源電圧の振幅が増加する直前の状態でPFC回路がある程度の昇圧能力を有しているので、その状態で交流電源電圧が増加すると、PFC回路の昇圧能力が高すぎるせいでPFC回路の出力直流電圧がオーバーシュートしてしまう。実施の形態2の電源装置は、上記の場合に直流電圧のオーバーシュートを抑制するものである。以下、図面を参照して具体的に説明する。
[PFC制御の概要]
図7は、整流回路の出力電圧の検出タイミングについて説明するための図である。図1で説明したように、マイクロコンピュータ13は、整流電圧Vrecの検出値、整流電流Irecの検出値、および直流電圧Vdcの検出値を所定期間毎に取得している。図7に示すように、整流電圧Vrecの検出値は、交流電源電圧Vacのゼロクロス点(このとき、整流電圧Vrecもゼロになる)を基準として、同一位相ごとにマイクロコンピュータ13の内蔵メモリに格納される。
図8は、整流電圧の格納形式を説明するための図である。図8に示すように、整流電圧Vrecの検出値は、位相を表すテーブル番号(Table No.)に対応付けてマイクロコンピュータ13の内蔵メモリに格納される。図8では、整流電圧Vrecの1周期前(すなわち、交流電源電圧Vacの半周期前)の検出値のみがメモリに格納される例が示されているが、所定周期前までの複数の検出値を各位相ごとにメモリに格納するようにしてもよい。
図1のマイクロコンピュータ13のCPUは、テーブル番号ごとに(すなわち、位相ごとに)テーブルに保持された過去の整流電圧Vrec(瞬時値)の検出値Vrec_oldと今回取得した現在の整流電圧Vrec(瞬時値)の検出値Vrec_newとを比較する。この場合、過去の整流電圧Vrecの検出値Vrec_oldは、1周期前の同位相の検出値でもよいし、複数周期(1周期前から所定周期前まで)に亘って検出された同位相における値の平均値でもよい。比較の結果、今回取得した整流電圧の検出値Vrec_newが、前回までに取得された整流電圧の検出値Vrec_oldよりも閾値Vrec_thを超える増加率で増加している場合、すなわち、下式(5)が満たされる場合には、CPUは、目標直流電圧Vdc_aimを一時的に低下させる制御を行う。
Vrec_new>Vrec_old×(1+Vrec_th) …(5)
ここで、閾値Vrec_thは、一例として、20%(0.2)に設定される(この値は任意の値に変更可能である)。言い換えると、整流電圧Vrecの増加倍率の閾値(1+Vrec_th)は120%(1.2)である。目標直流電圧Vdc_aimの低減率は、たとえば、Vrec_thに等しく設定してもよいし、整流電圧Vrecの増加率に等しく設定してもよい。すなわち、上式(5)が満たされた場合、目標直流電圧Vdc_aimは、以下の式(6)または式(7)を満たすように変更される。
Vdc_aim=Vdc_set×(1−Vrec_th) …(6)
Vdc_aim=Vdc_set×(1−(Vrec_new−Vrec_old)/Vrec_old) …(7)
通常、目標直流電圧Vdc_aimは、交流電源電圧Vacの1周期もしくは半周期の間(ゼロクロス点から次のゼロクロス点までを半周期とする)一定値に維持されているが、上記の目標直流電圧Vdc_aimの設定変更は、交流電源電圧Vacの1周期または半周期の途中でも可能である。ただし、1周期または半周期の途中で目標直流電圧Vdc_aimを変更した場合には、その1周期または半周期の間は目標直流電圧Vdc_aimを一定値に保つようにする。
上記の制御では、現在の整流電流(瞬時値)の検出値Vrec_newが、前回までの同位相の整流電流(瞬時値)の検出値Vrec_oldに対して一度でも閾値Vrec_thを超える増加割合で増加した場合に、目標直流電圧Vdc_aimを低下させる制御を行うとした。これに対して、ノイズの影響を避けるため、所定回数連続して(すなわち、連続する所定数の位相で)現在の整流電流の検出値Vrec_newが閾値Vrec_thを超える増加率で増加した場合に、目標直流電圧Vdc_aimを低減させる制御を行うようにしてもよい。上記の所定回数は、任意の値に設定可能である。
なお、同期モータがある程度高い回転速度で動作している場合は、実働直流電圧Vdcが低下しすぎると脱調等の異常が発生する可能性があるので、あまりに低い目標直流電圧Vdc_aimを設定することは望ましくない。そのため、同期モータが安全に動作し続けることができる直流電圧の下限値を回転速度に応じて予め実験などで確認し、確認した下限値をマイクロコンピュータのメモリに格納しておくのが望ましい。この場合、整流電圧Vacの瞬時値が1周期前までの同位相の値に比べて閾値倍率を超えるほど増加した場合には、目標直流電圧Vdc_aimを上記の下限値に設定してもよいし、上式(6)または(7)に従って計算した結果が上記の下限値より小さくなっている場合に、目標直流電圧Vdc_aimを上記の下限値に設定するようにしてもよい。
このように整流電圧Vrecの瞬時値が瞬間的に増加した場合に目標直流電圧Vdc_aimを低減させる制御(以下、「目標電圧低減制御」と称する)を行うことによって、PFC回路から出力される実働直流電圧のオーバーシュートを抑えることができる。
目標直流電圧Vdc_aimを低下させた場合、実働直流電圧Vdcは低下させた目標直流電圧Vdc_aimまで徐々に低下する。CPUは、実働直流電圧Vdcが目標直流電圧Vdc_aimに到達したか否かの判定を行い、実働直流電圧Vdcが目標直流電圧Vdc_aimに到達したときに、目標直流電圧Vdc_aimを元の目標直流電圧の設定値Vdc_set(図3を参照)に戻す制御を行う。この場合、CPUは、実施の形態1で説明したように、目標直流電圧Vdc_aimをその設定値Vdc_setまで徐々に増加させるソフトスタート制御を行う。
[PFC制御の詳細]
図9は、実施の形態2によるPFC制御の手順を示すフローチャートである。以下、図1および図9を参照して、PFC制御手順について説明する。以下の説明では、前述の式(6)および(7)における閾値Vrec_thを20%(0.2)としている。前述したように閾値Vrec_thは20%(0.2)に限らず任意の値に設定可能である。
まず、CPUは、図7および図8で説明したテーブル番号(Table No.)が0にリセットされているか、すなわち、整流電圧Vrecの位相が0に戻っているか否かを判定する(ステップS300)。たとえば、交流電源電圧Vacのゼロクロス点を位相0に定義する。
図10は、電源装置に設けられたゼロクロス検知部について説明するための図である。図10を参照して、ゼロクロス検知部15は、交流電源1の電圧瞬時値を連続的に検出し、交流電源電圧Vacの瞬時値の符号が変化したときに、ゼロクロスを検知したことをマイクロコンピュータ13のCPUに通知する。CPUは、交流電源電圧Vacのゼロクロス検出の通知を受けたときに、整流電圧Vrecを格納するためのテーブルのテーブル番号を0にリセットする。なお、ゼロクロス検知部15での検知に代えて、検出した整流電圧Vrecが最も小さい値になったときにテーブル番号を0にリセットするようにしてもよい。
再び図9を参照して、テーブル番号(Table No.)が0にリセットされたとき(ステップS300でYES)、すなわち、整流電圧Vrecの位相が0に戻ったとき、CPUは、変更許可フラグFlg_changeを0に設定する(ステップS305)。変更許可フラグFlg_changeは、整流電圧Vrecの1周期(交流電源電圧Vacの半周期)の間で1回のみ目標直流電圧を変更可能にするために設けられている。変更許可フラグFlg_changeが0の場合に、目標直流電圧Vdc_aimの変更が可能である。
次に、CPUは、変更許可フラグFlg_changeが0であり、かつ、目標電圧低減フラグFlg_decrが0であるか否かを判定する(ステップS310)。目標電圧低減フラグFlg_decrは、初期状態では0であり、目標電圧低減制御を行っている間は1に設定される。したがって、目標電圧低減制御の実行中(Flg_decr=1)もしくは目標電圧低減制御の終了直後でテーブル番号がリセットされるまでの間(Flg_change=1)は、上記のステップS310はNOと判定される。逆に、ステップS310でYESの場合は、現在の整流電圧Vrecの周期内で目標電圧低減制御が未だ行われていないことを意味している。
ステップS310でYESと判定された場合には、CPUは、検出された現在の整流電圧Vrec_new[i]と同位相(すなわち、同じテーブル番号i)の過去の整流電圧Vrec_old[i]とを比較し、前者が後者の1.2倍を超えて増加しているか否か、すなわち前述の式(5)の関係(ただし、Vrec_th=0.2)が満たされているか否かを判定する(ステップS315)。この結果、前述の式(5)の関係が満たされている場合には(ステップS315でYES)、CPUは、前述の式(6)に従って、目標直流電圧Vdc_aimを設定値Vdc_setの0.8倍まで低減し、変更許可フラグFlg_changeおよび目標電圧低減フラグFlg_decrを両方とも1に変更する(ステップS320)。変更許可フラグFlg_changeを1に設定することによって、目標電圧低減制御の終了後、同一周期内で目標直流電圧Vdc_aimを再度変更すること(ステップS320)を禁止することができる。
目標電圧低減制御の実行中(Flg_decr=1)の間、CPUは、実働直流電圧の検出値Vdc_actualが、低減された目標直流電圧Vdc_aimに等しくなったか否かを判定する(ステップS325)。
実働直流電圧の検出値Vdc_actualが目標直流電圧Vdc_aimに等しくなった場合には(ステップS325でYES)、CPUは、目標直流電圧Vdc_aimを元の設定値Vdc_setに戻すとともに、目標電圧低減フラグFlg_decrを0に戻すことによって目標電圧低減制御を終了する(ステップS330)。この際、CPUは、ソフトスタートフラグFlg_softを0に設定し、変数cを0に設定することにより(ステップS330)、図5で説明したソフトスタート制御(ステップS200からS240まで)を実行する(ステップS340)。ソフトスタート制御を実行することによって、目標直流電圧Vdc_aimを元の設定値Vdc_setに戻した際の実働直流電圧Vdcのオーバーシュートを防止することができる。
なお、目標電圧低減制御の実行中(Flg_decr=1)には(ステップS335でNO)、目標直流電圧Vdc_aimをその設定値Vdc_setよりも低下した値に維持する必要があるので、図5のフロー(ステップS200〜S240)は実行されない。
[PFC制御の具体例]
図11は、実施の形態2の場合において、交流電源電圧と目標直流電圧および実働直流電圧との関係を示す図である。図11(A)はソフトスタート制御も目標電圧低減制御も行われない場合を示し、図11(B)はソフトスタート制御および目標電圧低減制御が行わるれる場合を示す。図11(A)および(B)において、目標直流電圧Vdc_aimは破線で示され、実働直流電圧の検出値Vdc_actualは実線で示されている。交流電源電圧Vacはピーク値(振幅)のみが示されている。
図11(A)を参照して、ソフトスタート制御も目標電圧低減制御も行われない場合は、目標直流電圧Vdc_aimは設定値Vdc_setに等しく一定値に維持される。図11(A)に示すように交流電源電圧Vacの振幅が、時刻t1から時刻t2までの間で緩やかに減少し、時刻t2で瞬間的に元の振幅に戻った場合、実働直流電圧Vdc_actualは時刻t2においてオーバーシュートする。
一方、図11(B)を参照して、ソフトスタート制御および目標電圧低減制御を実行する場合は、時刻t3において交流電源電圧Vacの振幅が元の振幅に戻ると、目標直流電圧Vdc_aimの値は、前述の式(6)に従って所定の割合だけ低減する。その後、時刻t3において実働直流電圧Vdc_actualが目標直流電圧Vdc_aimに等しくなると、時刻t3から時刻t4までの間でソフトスタート制御が実行される。すなわち、目標直流電圧Vdc_aimを元の設定値Vdc_setに徐々に戻すことによって、実働直流電圧Vdc_actualを目標直流電圧の設定値Vdc_setに徐々に近づける。
[実施の形態2の効果]
上記のとおり、実施の形態2の電源装置によれば、交流電源電圧の振幅が低下した後に元の振幅に急に復帰した場合もしくは交流電源電圧が瞬時的に増加した場合に、PFC回路の出力直流電圧のオーバーシュートを防止することができる。
<実施の形態3>
実施の形態3では、実施の形態1で説明したソフトスタート制御の実行中に、実施の形態2で説明したような整流電圧Vrecの瞬時的な増加を検出した場合の制御について説明する。この場合は、実施の形態2で説明したような目標電圧低減制御は実行されない。具体的に図9のフローチャートでは、ステップS310においてソフトスタートフラグFlg_softが1に等しいか否かがさらに判定され、ソフトスタートフラグFlg_softが1の場合(ソフトスタート制御の実行中)は(ステップS310でNO)、ステップS315およびステップS320は実行されない。以下、このような制御を行う理由について説明する。
PFC制御仕様として、数十ミリ秒以上電源が停止した場合はPFC制御を停止させる制御仕様が一般的である。このため、電源電圧の瞬断が発生してもPFC制御が動作し続ける場合は、電源の停止時間は数十ミリ秒以下であることが多い。
一方、ソフトスタート制御では、電源の瞬断により目標直流電圧Vdc_aimと実働直流電圧Vdc_actualとに差が発生した場合、実働直流電圧を目標直流電圧の設定値Vdc_setに到達させるまでの時間を数百ミリ秒〜数千ミリ秒に設定することが想定されている。
ここで、数ミリ秒から数十ミリ秒間の瞬停後すぐに電源が復帰したとしても、この電源復帰のタイミングは実働直流電圧を目標直流電圧へ近づける過程の前半であると考えられる。たとえば、1000ミリ秒かけて実働直流電圧が目標直流電圧の設定値Vdc_setへ到達するように制御する仕様である場合、10ミリ秒間の電源瞬断後に電源電圧が復帰するタイミングは、1000ミリ秒の期間の最初の1/100である。このタイミングでは、目標直流電圧Vdc_aimは実働直流電圧Vdc_actualよりもかなり低く設定されることになるので、目標直流電圧Vdc_aimを再度低く設定し直す必要なく、実働直流電圧がオーバーシュートする可能性も低い。したがって、上述したように、ソフトスタート制御の実行中には、目標電圧低減制御は実行されない。
<付記>
以下、上記の各実施の形態に記載した内容の一部を列挙する。
[1] 一実施の形態による電源装置(20)は、整流回路(2)と、力率改善回路(14)と、インバータ回路(11)と、マイクロコンピュータ(13)とを備える。整流回路(2)は、交流電源電圧(Vac)を整流する。力率改善回路(14)は、整流回路(2)から出力された整流電流(Irec)の波形を整形する。インバータ回路(11)は、力率改善回路(14)から出力された直流電圧(Vdc)を交流電圧に変換する。マイクロコンピュータ(13)は、力率改善回路(14)およびインバータ回路(11)の動作を制御する。マイクロコンピュータ(13)は、直流電圧(Vdc)が目標値(Vdc_aim)に等しくなるように力率改善回路(14)をフィードバック制御し、目標値(Vdc_aim)と直流電圧(Vdc)との差が閾値電圧(Vdc_sa)を超えるほど直流電圧(Vdc)が減少した場合には、目標値(Vdc_aim)を現在の直流電圧(Vdc)に応じた値に低下させ、その後、目標値(Vdc_aim)を徐々に元の値に戻す第1の特別制御を実行するように構成される。
PFC制御を開始する際もしくは交流電源電圧(Vac)の大きさが瞬時的に低下した場合には、現在の直流電圧(Vdc)が目標値(Vdc_aim)に比べて大きく低下する。この場合、上記のように目標値を現在の直流電圧に応じた値に低下させ、その後、目標値を徐々に元の値に戻す第1の特別制御(ソフトスタート制御)を実行することによって、直流電圧のオーバーシュートを防止することができる。
[2] 上記[1]の電源装置(20)において、マイクロコンピュータ(13)は、整流回路(2)から出力された整流電圧(Vrec)の周期ごとに複数の位相で整流電圧(Vrec)の瞬時値を取得する。マイクロコンピュータ(13)は、取得した整流電圧の現在の瞬時値(Vrec_new[i])が、同位相の1周期前の瞬時値(Vrec_old[i])もしくは同位相の1周期前から所定周期前までの瞬時値の平均値に比べて、閾値倍率(1+Vrec_th)を超えるほど増加した場合に、目標値を一時的に低下させる第2の特別制御を実行するように構成される。
交流電源電圧(Vac)の振幅が低下した後に元の振幅に急に復帰した場合もしくは交流電源電圧(Vac)が瞬時的に増加した場合にも、直流電圧(Vdc)がオーバーシュートする可能性がある。この場合、上記のように目標値(Vdc_aim)を一時的に低下させる第2の特別制御(目標電圧低減制御)を実行することによって、直流電圧(V_dc)のオーバーシュートを防止することができる。
[3] 上記[2]の電源装置(20)において、マイクロコンピュータ(13)は、第2の特別制御において、低下させた目標値(Vdc_aim)に直流電圧(Vdc)が到達した場合には、目標値(Vdc_aim)を徐々に元の値に戻すように構成される。
第2の特別制御において、上記のように一時的に低下させた直流電圧の目標値(Vdc_aim)を徐々に元の値に戻すことによって、直流電圧のオーバーシュートを防止することができる。
[4] 上記[3]の電源装置(20)において、マイクロコンピュータ(13)は、第1の特別制御の実行中には、第2の特別制御を実行しないように構成される。
この理由は、第1の特別制御の実行中には、直流電圧の目標値(Vdc_aim)が低下した状態であるので、第2の特別制御によって目標値(Vdc_aim)をさらに低く設定し直す必要がないからである。
[5] 上記[1]〜[4]の電源装置(20)において、インバータ回路(11)から出力された交流電圧は、冷凍機器に設けられた圧縮機用のモータ(12)の駆動に用いられる。
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。