(57)【特許請求の範囲】
【請求項１】
交流電源から供給される交流電圧を整流する整流回路と、
入力される制御信号に基づいてオン、オフする少なくとも１つのスイッチング素子を備え、前記スイッチング素子のオン、オフにより、前記整流回路からの入力電圧を昇圧または降圧させる電力変換回路と、
前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求める目標電流算出部と、デューティ算出部とを有する制御部と、
を備え、
前記デューティ算出部は、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める、
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項２】
請求項１に記載のＡＣ−ＤＣ変換回路であって、
前記交流電源から要求される交流入力電流制限値から、前記交流入力電圧値×前記前回求めた駆動期間×前記スイッチング素子のスイッチング周期／（前記電力変換回路内のコイルのインダクタンス値×２）を減算した値を限界値とする限界値算出手段と、
前記目標電流値が前記限界値よりも大きい場合、前記限界値を前記目標電流値とする補正手段と、
を備えることを特徴とするＡＣ−ＤＣ変換回路。
【請求項３】
請求項２に記載のＡＣ−ＤＣ変換回路であって、
前記限界値算出手段は、前記交流入力電圧値の位相が９０°又は２７０°のときに前記限界値を求める
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項４】
請求項１〜３の何れか１項に記載のＡＣ−ＤＣ変換回路であって、
前記目標電流値の変位量の最大値、並びに、前記目標電流値と１周期前の前記目標電流値との差分を求め、前記差分が前記目標電流値の変位量の最大値よりも大きい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最大値を加算したものを前記目標電流値とする目標電流制限手段を備える
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項５】
請求項４に記載のＡＣ−ＤＣ変換回路であって、
前記目標電流制限手段は、前記目標電流値の変位量の最小値を求め、前記差分が前記目標電流値の変位量の最小値よりも小さい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最小値を加算したものを前記目標電流値とする
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項６】
請求項１〜５の何れか１項に記載のＡＣ−ＤＣ変換回路であって、
補償値＝１／（前記交流入力電圧値の平均値の平方根）を計算することにより、補償値を求める補償部を備え、
前記目標電流算出部は、前記交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値と、前記補償部により求められる補償値とから、前記目標電流値を求める
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項７】
交流電源から供給される交流電圧を整流する整流回路からの入力電圧を、少なくとも１つのスイッチング素子のオン、オフにより、昇圧または降圧させる電力変換回路に設けられる制御部によって実行される力率改善方法であって、
前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求め、
前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める、
ことを特徴とする力率改善方法。
【請求項８】
入力される制御信号に基づいてオン、オフする複数のスイッチング素子を備え、前記複数のスイッチング素子のオン、オフにより、交流電源から供給される交流電圧を整流するとともに昇圧または降圧させる電力変換回路と、
前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求める目標電流算出部と、デューティ算出部とを有する制御部と、
を備え、
前記デューティ算出部は、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める、
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項９】
請求項８に記載のＡＣ−ＤＣ変換回路であって、
前記交流電源から要求される交流入力電流制限値から、前記交流入力電圧値×前記前回求めた駆動期間×前記スイッチング素子のスイッチング周期／（前記電力変換回路内のコイルのインダクタンス値×２）を減算した値を限界値とする限界値算出手段と、
前記目標電流値が前記限界値よりも大きい場合、前記限界値を前記目標電流値とする補正手段と、
を備えることを特徴とするＡＣ−ＤＣ変換回路。
【請求項１０】
請求項９に記載のＡＣ−ＤＣ変換回路であって、
前記限界値算出手段は、前記交流入力電圧値の位相が９０°又は２７０°のときに前記限界値を求める
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項１１】
請求項８〜１０の何れか１項に記載のＡＣ−ＤＣ変換回路であって、
前記目標電流値の変位量の最大値、並びに、前記目標電流値と１周期前の前記目標電流値との差分を求め、前記差分が前記目標電流値の変位量の最大値よりも大きい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最大値を加算したものを前記目標電流値とする目標電流制限手段を備える
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項１２】
請求項１１に記載のＡＣ−ＤＣ変換回路であって、
前記目標電流制限手段は、前記目標電流値の変位量の最小値を求め、前記差分が前記目標電流値の変位量の最小値よりも小さい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最小値を加算したものを前記目標電流値とする
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項１３】
請求項８〜１２の何れか１項に記載のＡＣ−ＤＣ変換回路であって、
補償値＝１／（前記交流入力電圧値の平均値の平方根）を計算することにより、補償値を求める補償部を備え、
前記目標電流算出部は、前記交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値と、前記補償部により求められる補償値とから、前記目標電流値を求める
ことを特徴とするＡＣ−ＤＣ変換回路。
【請求項１４】
複数のスイッチング素子のオン、オフにより、交流電源から供給される交流電圧を整流するとともに昇圧または降圧させる電力変換回路に設けられる制御部によって実行される力率改善方法であって、
前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期（Ｎは２以上の整数）先の電流値を求め、
前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める、
ことを特徴とする力率改善方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＣ−ＤＣ変換回路の力率改善方法に関する。
【背景技術】
【０００２】
入力端子が系統電源に接続されるＡＣ−ＤＣ変換回路は、電源ラインの引き回し方によるインダクタンス成分などの影響によりＡＣ−ＤＣ変換回路の入力端子までのインピーダンスが大きく変化する。そのため、該インピーダンスの規定が難しくなり、インピーダンスによってはＡＣ−ＤＣ変換回路に設けられる力率改善回路（以下、Power Factor Correction circuit（ＰＦＣ回路））の力率改善の制御が難しくなる。例えば、力率改善の制御の影響でＡＣ−ＤＣ変換回路の電流が発振または振動してしまう。また、電流が発振または振動すると、入力電圧および入力電流（外乱を含む）に対する力率改善の制御の応答性が悪くなる。しかし、ＡＣ−ＤＣ変換回路としては幅広いインピーダンスで動作保証する必要がある。
【０００３】
例えば、力率改善回路として動作し、入力電圧が低く、かつ、負荷が重い場合の回路部品に対する負担を軽減するのに好適な昇圧型ＡＣ−ＤＣ変換回路が知られている。この昇圧型ＡＣ−ＤＣ変換回路によれば、整流された入力電圧よりも高い直流出力電圧を出力する昇圧回路を備えている。また、出力電圧検出信号、インダクタ電流検出信号及び入力整流電圧検出信号が入力され、スイッチング素子にパルス幅制御動作を与えて、直流出力電圧を安定化し、かつ、インダクタに流れる電流を、入力電圧の波形に追従させる制御回路を備えている。制御回路は、基準電圧と、直流出力電圧との誤差を、予め定められた利得で増幅して、出力電圧検出信号を生成する電圧誤差増幅器を備えている。電圧誤差増幅器は、利得が１０〜２０ｄＢの範囲内に選定される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−３５８３６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は上記のような実情に鑑みてなされたものであり、力率改善制御の応答性を向上させる力率改善回路を有するＡＣ−ＤＣ変換回路および力率改善方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
実施の態様のひとつであるＡＣ−ＤＣ変換回路は、交流電源から供給される交流電圧を整流する整流回路と、入力される制御信号に基づいてオン、オフする少なくとも１つのスイッチング素子を備え、前記スイッチング素子のオン、オフにより、前記整流回路からの入力電圧を昇圧または降圧させる電力変換回路と、前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求める目標電流算出部と、デューティ算出部とを有する制御部とを備え、前記デューティ算出部は、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める。
【０００７】
また、実施の態様のひとつであるＡＣ−ＤＣ変換回路は、入力される制御信号に基づいてオン、オフする複数のスイッチング素子を備え、前記複数のスイッチング素子のオン、オフにより、交流電源から供給される交流電圧を整流するとともに昇圧または降圧させる電力変換回路と、前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求める目標電流算出部と、デューティ算出部とを有する制御部とを備え、前記デューティ算出部は、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める。
【０００８】
また、上記ＡＣ−ＤＣ変換回路は、前記交流電源から要求される交流入力電流制限値から、前記交流入力電圧値×前記前回求めた駆動期間×前記スイッチング素子のスイッチング周期／（前記電力変換回路内のコイルのインダクタンス値×２）を減算した値を限界値とする限界値算出手段と、前記目標電流値が前記限界値よりも大きい場合、前記限界値を前記目標電流値とする補正手段とを備えるように構成してもよい。
【０００９】
また、前記限界値算出手段は、前記交流入力電圧値の位相が９０°又は２７０°のときに前記限界値を求めるように構成してもよい。
また、上記ＡＣ−ＤＣ変換回路は、前記目標電流値の変位量の最大値、並びに、前記目標電流値と１周期前の前記目標電流値との差分を求め、前記差分が前記目標電流値の変位量の最大値よりも大きい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最大値を加算したものを前記目標電流値とする目標電流制限手段を備えるように構成してもよい。
【００１０】
また、前記目標電流制限手段は、前記目標電流値の変位量の最小値を求め、前記差分が前記目標電流値の変位量の最小値よりも小さい場合、前記１周期前の前記目標電流値に前記目標電流値の変位量の最小値を加算したものを前記目標電流値とするように構成してもよい。
【００１１】
また、上記ＡＣ−ＤＣ変換回路は、補償値＝１／（前記交流入力電圧値の平均値の平方根）を計算することにより、補償値を求める補償部を備え、前記目標電流算出部は、前記交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値と、前記補償部により求められる補償値とから、前記目標電流値を求めるように構成してもよい。
【００１２】
また、実施の態様のひとつである力率改善方法は、交流電源から供給される交流電圧を整流する整流回路からの入力電圧を、少なくとも１つのスイッチング素子のオン、オフにより、昇圧または降圧させる電力変換回路に設けられる制御部によって実行される力率改善方法であって、前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求め、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める。
【００１３】
また、実施の態様のひとつである力率改善方法は、複数のスイッチング素子のオン、オフにより、交流電源から供給される交流電圧を整流するとともに昇圧または降圧させる電力変換回路に設けられる制御部によって実行される力率改善方法であって、前記交流電源から供給される交流入力電圧値と、前記電力変換回路の直流出力電圧値と、前記電力変換回路内の電流値とから、目標電流値となるＮ周期先の電流値（Ｎは２以上の整数）を求め、前記目標電流値に基づいて、前記Ｎ周期より後のＭ周期先に反映する前記スイッチング素子の駆動期間を求める。
【発明の効果】
【００１４】
本実施の形態によれば、ＡＣ−ＤＣ変換回路の力率改善制御の応答性を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】実施形態１の力率改善回路を有するＡＣ−ＤＣ変換回路の一実施例を示す図である。
【図２】実施形態１の制御部の一実施例を示す図である。
【図３】実施形態１の制御部の動作の一実施例を示すフロー図である。
【図４】実施形態１の制御部の動作の一実施例のタイムチャートを示す図である。
【図５】実施形態１の設定情報、入力情報、計算情報各々の一実施例のデータ構造を示す図である。
【図６】実施形態２の力率改善回路を有するＡＣ−ＤＣ変換回路の一実施例を示す図である。
【図７】実施形態２の制御部の動作の一実施例のタイムチャートを示す図である。
【図８】ＡＣ−ＤＣ変換回路の入出力や制限値などの一例を示す図である。
【図９】実施形態１又は実施形態２の制御部の変形例を示す図である。
【図１０】限界算出部の動作の一例を示すフローチャートである。
【図１１】制御部の動作の一実施例のタイムチャートを示す図である。
【図１２】設定情報、入力情報、計算情報のデータ構造例を示す図である。
【図１３】制御部の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
実施形態１は、ＡＣ−ＤＣ変換回路へ供給される入力電圧、入力電流に対する力率改善制御の応答性を向上させ、力率改善制御の応答性の悪化による電流の発振と振動を押さえ込む。なお、実施形態１では電流の発振と振動発振現象を抑えるため、位相補償のし易い電流モード制御を採用する。
【００１７】
以下図面に基づいて、実施形態について詳細を説明する。
図１は、力率改善回路（電力変換回路）を有するＡＣ−ＤＣ変換回路の一実施例を示す図である。図１のＡＣ−ＤＣ変換回路１は系統電源２に接続され、コイルＬ１、ダイオードＤ１〜Ｄ５、スイッチング素子Ｓ１、コンデンサＣ１、電圧計３（第１の電圧計）、電圧計５（第２の電圧計）、電流計４、Ａ／Ｄ変換部６〜８、駆動部９、制御部１０を備えている。
【００１８】
図１のＡＣ−ＤＣ変換回路１の構成要素について説明する。
系統電源２は交流電源であり、例えば、ＡＣ１００ＶまたはＡＣ２００Ｖなどの電力供給源である。ダイオードＤ１〜Ｄ４は、整流回路（ダイオードブリッジ回路）を構成するダイオードである。図１に示す力率改善回路の構成について説明する。電圧計３は、系統電源２からＡＣ−ＤＣ変換回路１に入力される交流入力電圧Ｖａｃを計測してＡ／Ｄ変換部６に出力する。コイルＬ１は昇圧用のチョークコイルである。ダイオードＤ５は整流ダイオードである。スイッチング素子Ｓ１は、例えば、Metal-Oxide-Semiconductor Field-Effect Transistor（ＭＯＳＦＥＴ）、Insulated Gate Bipolar Transistor（ＩＧＢＴ）などが考えられる。図１ではスイッチング素子Ｓ１としてＭＯＳＦＥＴを用いた場合について示されている。なお、図１ではＭＯＳＦＥＴのドレイン−ソース間に寄生ダイオードが示されている。コンデンサＣ１は平滑コンデンサである。電流計４は、力率改善回路に供給される電流Ｉを計測してＡ／Ｄ変換部８に出力する。例えば、電流Ｉをアナログ／ディジタル変換可能な電圧にしてからＡ／Ｄ変換部８に出力する。電圧計５は、ＡＣ−ＤＣ変換回路１から出力される直流出力電圧Ｖｈを計測してＡ／Ｄ変換部７に出力する。例えば、直流出力電圧Ｖｈを分圧してアナログ／ディジタル変換可能な電圧にしてからＡ／Ｄ変換部７に出力する。
【００１９】
Ａ／Ｄ変換部６は、電圧計３の測定した交流入力電圧Ｖａｃに対応する電圧をアナログディジタル変換して、ディジタル信号Ｖａｃ＿ｍを生成して制御部１０に出力する。Ａ／Ｄ変換部８は、電流計４の測定した電流Ｉに対応する電圧をアナログディジタル変換して、ディジタル信号Ｉｍを生成して制御部１０に出力する。Ａ／Ｄ変換部７は、電圧計５の測定した直流出力電圧Ｖｈに対応する電圧をアナログディジタル変換して、ディジタル信号Ｖｈ＿ｍを生成して制御部１０に出力する。なお、制御部１０にＡ／Ｄ変換部が設けられている場合には、Ａ／Ｄ変換部６、７、８はなくてもよい。
【００２０】
駆動部９は、制御部１０から出力されるスイッチング素子Ｓ１をオン／オフさせる制御信号を、スイッチング素子Ｓ１を駆動可能な電圧に増幅して駆動信号を生成し、駆動信号をスイッチング素子Ｓ１のゲート端子に供給する。
【００２１】
制御部１０は、予め設定されている周期Ｔごとに、ディジタル信号Ｖａｃ＿ｍ、Ｉｍ、Ｖｈ＿ｍを用いて制御信号を生成する。制御部１０は、例えば、Central Processing Unit（ＣＰＵ）やプログラマブルなデバイス（Field Programmable Gate Array（ＦＰＧＡ）、Programmable Logic Device（ＰＬＤ）など）を用いることが考えられる。なお、記録部は制御部１０と別に、制御部１０の外部に設けてもよい。制御信号は、例えば、Pulse Width Modulation（ＰＷＭ）制御によって生成された信号である。
【００２２】
図１のＡＣ−ＤＣ変換回路１の回路構成について説明する。
電圧計３の一方の端子（ａ点）は、系統電源２の一方の端子とダイオードＤ２のアノードとダイオードＤ３のカソードとに接続されている。電圧計３の他方の端子（ｂ点）は、系統電源２の他方の端子とダイオードＤ１のアノードとダイオードＤ４のカソードとに接続されている。ダイオードＤ１のカソードとダイオードＤ２のカソードは、コイルＬ１の一方に接続されている。ダイオードＤ３のアノードとダイオードＤ４のアノードは、スイッチング素子Ｓ１のソース端子とコンデンサＣ１の他方の端子と電圧計５の他方の端子とグランドＧＮＤと出力端子（ｄ）とに接続されている。コイルＬ１の他方の端子は電流計４の一方の端子に接続され、電流計４の他方の端子はダイオードＤ５のアノードとスイッチング素子Ｓ１のドレイン端子に接続されている。ダイオードＤ５のカソードは、コンデンサＣ１の一方の端子と電圧計５の一方の端子と出力端子（ｃ点）とに接続されている。
【００２３】
電圧計３の出力端子はＡ／Ｄ変換部６に接続され、電流計４の出力端子はＡ／Ｄ変換部８に接続され、電圧計５の出力端子はＡ／Ｄ変換部７に接続されている。Ａ／Ｄ変換部６の出力端子は制御部１０の第１の入力端子に接続され、Ａ／Ｄ変換部８の出力端子は制御部１０の第２の入力端子に接続され、Ａ／Ｄ変換部７の出力端子は制御部１０の第３の入力端子に接続されている。制御部１０の出力端子は駆動部９の入力端子に接続され、駆動部９の出力端子はスイッチング素子Ｓ１のゲート端子に接続されている。
【００２４】
制御部１０について説明する。
図２は、制御部１０の一実施例を示す図である。図２に示す制御部１０は、目標電流算出部とデューティ算出部２５、デューティ保持部２６を有している。目標電流算出部は、誤差算出部２１、ＰＩ制御部２２、補償部２３、積算部２４を有している。
【００２５】
誤差算出部２１は、ディジタル信号Ｖｈ＿ｍに含まれる出力電圧値と目標出力電圧値Ｖｈ＿ｒｅｆの示す値とを用いて、式１により差分値△Ｖｈ＿ｍを算出する。目標出力電圧Ｖｈ＿ｒｅｆは、目標とする出力電圧に対応する値で記録部に記録されている。
【００２６】
△Ｖｈ＿ｍ  ＝  Ｖｈ＿ｒｅｆ  −  Ｖｈ＿ｍ              （式１）
Ｖｈ＿ｒｅｆ：目標出力電圧値
Ｖｈ＿ｍ    ：ディジタル信号Ｖｈ＿ｍに含まれる出力電圧値
△Ｖｈ＿ｍ  ：差分値
ＰＩ制御部２２は、差分値△Ｖｈ＿ｍを入力とし、ＰＩ制御を用いて計算値ｙを求め、その計算値ｙを積算部２４に出力する。例えば、式２を用いて計算値ｙを求めることが考えられる。
【００２７】
ｙ  ＝  （Ｋｐ×△Ｖｈ＿ｍ）＋（Ｋｉ×Σ△Ｖｈ＿ｍ）    （式２）
Ｋｐ：比例ゲイン係数
Ｋｉ：積分ゲイン係数
なお、本例ではＰＩ制御を用いているがＰＩＤ制御を用いてもよい。
【００２８】
補償部２３は電力補償をするための補償値ｚを求める。例えば、交流入力電圧ＶａｃがＡＣ１００ＶからＡＣ２００Ｖに切り替えられたときなどに電力補償をするために、式３に示す補償値ｚを求めて、積算部２４に出力する。
【００２９】
ｚ  ＝  １／（Ｖａｃの平均値）＾２                      （式３）
Ｖａｃの平均：周期Ｔごとサンプリングした交流入力電圧の平均値
なお、「＾２」は平方根を示す。また、電力補償をしないでよい場合には補償部２３は必要ない。
【００３０】
積算部２４は、計算値ｙと補償値ｚと交流入力電圧Ｖａｃ＿ｍを用いて式４に示す計算をし、目標電流値Ｉｔａｒｇｅｔ＿ｍを求める。
Ｉｔａｒｇｅｔ＿ｍ  ＝  ｙ×ｚ×Ｖａｃ＿ｍ              （式４）
なお、補償部２３がない場合には補償値ｚは積算しなくてもよい。
【００３１】
デューティ算出部２５は、目標電流値Ｉｔａｒｇｅｔ＿ｍ、ディジタル信号Ｖｈ＿ｍに含まれる値、ディジタル信号Ｖａｃ＿ｍに含まれる値、ディジタル信号Ｉｍに含まれる値を用いて、式５または式６により駆動期間Ｄｍ＋１を求める。ここで、Ｄｍ＋１の値はスイッチング素子Ｓ１を駆動させる期間である。また、Ｄｍは式５または式６を用いて計算した前回のＤｍ＋１の値である。ディジタル信号Ｖａｃ＿ｍに含まれる交流入力電圧Ｖａｃに対応する値を用いてＶａｃ≧０であるか否かを判定する。Ｖａｃ≧０であれば式５を用いて駆動期間Ｄｍ＋１を求める。また、Ｖａｃ＜０であれば式６を用いて駆動期間Ｄｍ＋１を求める。ここで、上記０は電圧値０Ｖを示す。
【００３２】
Ｄｍ＋１  ＝  Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ_ｍ）    （式５）
＋２×（１−Ｖａｃ_ｍ／Ｖｈ_ｍ）−Ｄｍ
Ｄｍ＋１  ＝  −Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ_ｍ）  （式６）
＋２×（１＋Ｖａｃ_ｍ／Ｖｈ_ｍ）−Ｄｍ
Ｌ      ：図１に示されるＬ１のインダクタンスの値
Ｔ      ：周期
Ｉｍ＋２：目標電流値Ｉｔａｒｇｅｔ＿ｍ
なお、インダクタンスＬは電流値Ｉｍを用いて求めることができ、例えば、Ｉｍを変数として一次関数で近似させることができる。また、目標電流値Ｉｔａｒｇｅｔ＿ｍとは電流値Ｉｍに対するＩｍ＋２に相当する。すなわち、電流値に対する２周期先の電流値が目標電流値となる。なお、Ｎ周期先の電流値（Ｎは２以上の整数）を目標電流値とし、その目標電流値に基づいて求めたスイッチング素子Ｓ１の駆動期間をＮ周期より後のＭ周期先（ＭはＮよりも小さい整数）に反映するように構成してもよい。
【００３３】
デューティ保持部２６は、前回式５または式６により計算した駆動期間Ｄｍ＋１を前回の駆動期間Ｄｍとして保持する。そして、今回の駆動期間Ｄｍ＋１を計算する際に前回の駆動期間Ｄｍをデューティ算出部２５に出力する。なお、デューティ保持部２６は記録部であってもよい。
【００３４】
制御部１０の動作について図３、図４、図５を用いて説明する。
図３は、制御部１０の動作の一実施例を示すフロー図である。図４は、制御部１０の動作の一実施例のタイムチャートを示す図である。図５は、設定情報、入力情報、計算情報各々の一実施例のデータ構造を示す図である。
【００３５】
ステップＳ１では、制御部１０がディジタル信号Ｖａｃ＿ｍ、Ｖｈ＿ｍ、Ｉｍのそれぞれに含まれる値を取得する。ディジタル信号Ｖａｃ＿ｍ、Ｖｈ＿ｍ、Ｉｍのそれぞれに含まれる値は、図４に示すタイミングｔ１、ｔ３、ｔ５で制御部１０が取得する。そして、取得したディジタル信号Ｖａｃ＿ｍ、Ｖｈ＿ｍ、Ｉｍのそれぞれに含まれる値は、図５に示す入力情報５２に記録される。入力情報５２は、「出力電圧値」「入力電圧値」「電流値」を有している。「出力電圧値」には、ディジタル信号Ｖｈ＿ｍに含まれる値が記録されている。本例では、ディジタル信号Ｖｈ＿ｍに含まれる値「Ｖｈ＿ｍ」が記録されている。「入力電圧値」は、ディジタル信号Ｖａｃ＿ｍに含まれる値が記録されている。本例では、ディジタル信号Ｖａｃ＿ｍに含まれる値「Ｖａｃ＿ｍ」が記録されている。「電流値」は、ディジタル信号Ｉｍに含まれる値が記録されている。本例では、ディジタル信号Ｉｍに含まれる値「Ｉｍ」が記録されている。
【００３６】
図４の場合であれば、タイミングｔ１でディジタル信号Ｖａｃ＿ｍ、Ｖｈ＿ｍ、Ｉｍのそれぞれに含まれる値「Ｖａｃ＿ｍ」「Ｖｈ＿ｍ」「Ｉｍ」を取得して、「出力電圧値」「入力電圧値」「電流値」にそれぞれ記録する。タイミングｔ３では、ディジタル信号Ｖａｃ＿ｍ＋１、Ｖｈ＿ｍ＋１、Ｉｍ＋１のそれぞれに含まれる値「Ｖａｃ＿ｍ＋１」「Ｖｈ＿ｍ＋１」「Ｉｍ＋１」を取得して、「出力電圧値」「入力電圧値」「電流値」にそれぞれ記録する。タイミングｔ５では、ディジタル信号Ｖａｃ＿ｍ＋２、Ｖｈ＿ｍ＋２、Ｉｍ＋２のそれぞれに含まれる値「Ｖａｃ＿ｍ＋２」「Ｖｈ＿ｍ＋２」「Ｉｍ＋２」を取得して、「出力電圧値」「入力電圧値」「電流値」にそれぞれ記録する。
【００３７】
ステップＳ２で制御部１０は差分値を求める。例えば、記録部に記録されている目標出力電圧値Ｖｈ＿ｒｅｆを取得して、式１に示す計算をして差分値を求め、差分値を計算情報５３に記録する。すなわち、制御部１０は目標出力電圧Ｖｈ＿ｒｅｆと出力電圧値Ｖｈ＿ｍとの差を求め差分値△Ｖｈ＿ｍとする。目標出力電圧値Ｖｈ＿ｒｅｆは、図５に示す設定情報５１から取得する。設定情報５１は、「目標出力電圧」「周期」を有している。「目標出力電圧」は、目標とする出力電圧に対応する値で、本例では「Ｖｈ＿ｒｅｆ」が記録されている。「周期」は、スイッチング素子Ｓ１を駆動するために設定される周期で、本例では、「Ｔ」が記録されている。
【００３８】
計算情報５３は、「差分値」「目標電流値」「前回駆動期間」「今回駆動期間」「インダクタンス値」を有している。「差分値」には、目標出力電圧値Ｖｈ＿ｒｅｆからディジタル信号Ｖｈ＿ｍの示す値を差し引いて求めた差分値が記録されている。本例では、目標出力電圧値Ｖｈ＿ｒｅｆから入力情報５２の出力電圧値Ｖｈ＿ｍを差し引いて求めた差分値「△Ｖｈ＿ｍ」が記録されている。
【００３９】
図４に示すタイムチャートの場合であれば、目標出力電圧値Ｖｈ＿ｒｅｆからタイミングｔ１で取得した入力情報５２の出力電圧値Ｖｈ＿ｍを差し引いて求めた差分値「△Ｖｈ＿ｍ」が計算情報５３に記録される。また、タイミングｔ３であれば目標出力電圧値Ｖｈ＿ｒｅｆからタイミングｔ３で取得した入力情報５２の出力電圧値Ｖｈ＿ｍ＋１を差し引いて求めた差分値「△Ｖｈ＿ｍ＋１」が計算情報５３に記録される。また、タイミングｔ５であれば目標出力電圧値Ｖｈ＿ｒｅｆからタイミングｔ５で取得した入力情報５２の出力電圧値Ｖｈ＿ｍ＋２を差し引いて求めた差分値「△Ｖｈ＿ｍ＋２」が計算情報５３に記録される。
【００４０】
ステップＳ３、Ｓ４、Ｓ５では、制御部１０がＰＩ制御の計算を行う。ステップＳ３で制御部１０はＫｐ×差分値を求める。ステップＳ４で制御部１０はＫｉ×Σ差分値を求める。比例ゲイン係数Ｋｐと積分ゲイン係数Ｋｉは、例えば、記録部に記録されている。差分値△Ｖｈ＿ｍは、計算情報５３から取得する。ステップＳ５では、制御部１０がＫｐ×差分値＋Ｋｉ×Σ差分値を求める。
【００４１】
図４に示すタイムチャートの場合であれば、タイミングｔ１より後でタイミングｔ３より前のタイミングで、比例ゲイン係数Ｋｐと積分ゲイン係数Ｋｉと、計算情報５３に記録されている差分値△Ｖｈ＿ｍとを用いて、ｙ＝Ｋｐ×△Ｖｈ＿ｍ＋Ｋｉ×Σ△Ｖｈ＿ｍを求める。タイミングｔ３より後でタイミングｔ５より前のタイミングであれば、比例ゲイン係数Ｋｐと積分ゲイン係数Ｋｉと、計算情報５３に記録されている差分値△Ｖｈ＿ｍ＋１とを用いて、ｙ＝（Ｋｐ×△Ｖｈ＿ｍ＋１）＋（Ｋｉ×Σ△Ｖｈ＿ｍ＋１）を求める。タイミングｔ５より後でタイミングｔ７より前のタイミングであれば、比例ゲイン係数Ｋｐと積分ゲイン係数Ｋｉと、計算情報５３に記録されている差分値△Ｖｈ＿ｍ＋２とを用いて、ｙ＝（Ｋｐ×△Ｖｈ＿ｍ＋２）＋（Ｋｉ×Σ△Ｖｈ＿ｍ＋２）を求める。
【００４２】
ステップＳ６では制御部１０が式４に従い計算をして目標電流値を求め、目標電流値を記録部に記録する。例えば、図５に示す計算情報５３の「目標電流値」に記録する。本例では、目標電流値「Ｉｔａｒｇｅｔ＿ｍ」が記録されている。
【００４３】
図４に示すタイムチャートの場合、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ５の処理が終了すると、計算値ｙ（＝（Ｋｐ×△Ｖｈ＿ｍ）＋（Ｋｉ×Σ△Ｖｈ＿ｍ））と、補償値ｚ（＝１／（Ｖａｃ＿ｍの平均値）＾２）、入力情報５２の入力電圧値Ｖａｃ＿ｍを用いて、目標電流値Ｉｔａｒｇｅｔ＿ｍが計算される。タイミングｔ３より後でタイミングｔ５より前のタイミングでステップＳ５の処理が終了すると、計算値ｙ（＝（Ｋｐ×△Ｖｈ＿ｍ＋１）＋（Ｋｉ×Σ△Ｖｈ＿ｍ＋１））と、補償値ｚ（＝１／（Ｖａｃ＿ｍ＋１の平均値）＾２）、入力情報５２の入力電圧値Ｖａｃ＿ｍ＋１を用いて、不図示の目標電流値Ｉｔａｒｇｅｔ＿ｍ＋１が計算される。タイミングｔ５より後でタイミングｔ７より前のタイミングでステップＳ５の処理が終了すると、計算値ｙ（＝（Ｋｐ×△Ｖｈ＿ｍ＋２）＋（Ｋｉ×Σ△Ｖｈ＿ｍ＋２））と、補償値ｚ（＝１／（Ｖａｃ＿ｍ＋２の平均値）＾２）、入力情報５２の入力電圧値Ｖａｃ＿ｍ＋２を用いて、不図示の目標電流値Ｉｔａｒｇｅｔ＿ｍ＋２が計算される。
【００４４】
なお、図４のＩｔａｒｇｅｔ＿ｍ−２はタイミングｔ１の２周期前に計算され、Ｉｔａｒｇｅｔ＿ｍ−１はタイミングｔ１の１周期前に計算された目標電流値である。
ステップＳ７では、制御部１０が入力情報５２から入力電圧値Ｖａｃ＿ｍに含まれる交流入力電圧Ｖａｃに対応する値を用いてＶａｃ≧０であるか否かを判定する。Ｖａｃ≧０であればステップＳ８に移行し、Ｖａｃ＜０であればステップＳ９に移行する。
【００４５】
ステップＳ８では、制御部１０が式５に従い計算をして今回の駆動期間を求め、今回の駆動期間を記録部に記録する。ステップＳ９では、制御部１０が式６に従い計算をして今回の駆動期間を求め、今回の駆動期間を記録部に記録する。本例では、計算情報５３の「今回駆動期間」に「Ｄｍ＋１」が記録されている。インダクタンスＬは、計算情報５３の「インダクタンス値」から取得する。「インダクタンス値」には、例えば、Ｌ＝−２１Ｉｍ＋８６０などの一次関数を用いて、周期ごとに計算された値が記録される。本例では、「Ｌ」が記録されている。ただし、上記一次関数に限定されるものではなく、回路構成によって適宜傾きと切片を変更することが望ましい。
【００４６】
図４に示すタイムチャートの場合、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ（＝Ｉｍ＋２）を用いて、今回駆動期間Ｄｍ＋１＝Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ＿ｍ）＋２×（１−Ｖａｃ＿ｍ／Ｖｈ＿ｍ）−Ｄｍが計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ（＝Ｉｍ＋２）を用いて、今回駆動期間Ｄｍ＋１＝−Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ＿ｍ）＋２×（１＋Ｖａｃ＿ｍ／Ｖｈ＿ｍ）−Ｄｍが計算される。
【００４７】
タイミングｔ３より後でタイミングｔ５より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋１（＝Ｉｍ＋３）を用いて、今回駆動期間Ｄｍ＋２＝Ｌ×（Ｉｍ＋３−Ｉｍ＋１）／（Ｔ×Ｖｈ＿ｍ＋１）＋２×（１−Ｖａｃ＿ｍ＋１／Ｖｈ＿ｍ＋１）−Ｄｍ＋１が計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋１（＝Ｉｍ＋３）を用いて、今回駆動期間Ｄｍ＋２＝−Ｌ×（Ｉｍ＋３−Ｉｍ＋１）／（Ｔ×Ｖｈ＿ｍ＋１）＋２×（１＋Ｖａｃ＿ｍ＋１／Ｖｈ＿ｍ＋１）−Ｄｍ＋１が計算される。
【００４８】
タイミングｔ５より後でタイミングｔ７より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋２（＝Ｉｍ＋４）を用いて、不図示の今回駆動期間Ｄｍ＋３＝Ｌ×（Ｉｍ＋４−Ｉｍ＋２）／（Ｔ×Ｖｈ＿ｍ＋２）＋２×（１−Ｖａｃ＿ｍ＋２／Ｖｈ＿ｍ＋２）−Ｄｍ＋２が計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋２（＝Ｉｍ＋４）を用いて、今回駆動期間Ｄｍ＋３＝−Ｌ×（Ｉｍ＋４−Ｉｍ＋２）／（Ｔ×Ｖｈ＿ｍ＋２）＋２×（１＋Ｖａｃ＿ｍ＋２／Ｖｈ＿ｍ＋２）−Ｄｍ＋２が計算される。
【００４９】
ステップＳ１０では、制御部１０がステップＳ８またはＳ９で計算した駆動期間を前回の駆動期間として保存する。本例では、計算情報５３の「今回駆動期間」に「Ｄｍ＋１」が記録されている。
【００５０】
図４に示すタイムチャートの場合、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋１を前回の駆動期間Ｄｍとして、計算情報５３の「前回駆動期間」に保存する。本例では、「Ｄｍ」が記録されている。タイミングｔ３より後でタイミングｔ５より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋２を前回の駆動期間Ｄｍ＋１として、計算情報５３の「前回駆動期間」に保存する。タイミングｔ５より後でタイミングｔ７より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋３を前回の駆動期間Ｄｍ＋２として、計算情報５３の「前回駆動期間」に保存する。
【００５１】
次に、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ１０の処理が終了すると、駆動期間Ｄｍ＋１を期間ｔ３〜ｔ５（周期Ｔ）に反映させる。図４の例では、制御部１０がタイミングｔ３を検出すると、スイッチング素子Ｓ１を駆動させるために制御信号をＯＮ状態にする。そして、駆動部９は制御信号が入力されると制御信号の電圧を増幅してスイッチング素子Ｓ１のゲート端子に出力する。図４の期間ｔ３〜ｔ４（駆動期間Ｄｍ＋１）参照。次に、制御部１０がタイミングｔ４を検出すると、図４の期間ｔ４〜ｔ５の間スイッチング素子Ｓ１をオフ状態にさせるために制御信号をＯＦＦ状態にする。その結果、駆動部９は制御信号がＯＦＦ状態であるのでスイッチング素子Ｓ１を駆動しない。なお、タイミングは、例えば、カウンタや時計ＩＣなどを用いて周期を計測することが考えられる。
【００５２】
また、図４の駆動期間Ｄｍ＋２は期間ｔ３〜ｔ５で求められ、期間ｔ５〜ｔ７に反映される。
実施形態１によれば、ＡＣ−ＤＣ変換回路へ供給される入力電圧、入力電流に対する力率改善制御の応答性を向上させ、力率改善制御の応答性の悪化による電流の発振と振動を押さえ込むことができる。その結果、高調波エミッションの結果も大きく向上させることができ、入力電流がより正弦波（Ｓｉｎ波）に近づけることができる。
【００５３】
なお、今回の駆動期間Ｄｍ＋１を算出する際、電流を一次近似式として計算しているが、その他の近似式または近似なしでも可能である。
また、図４に示した入力情報５２へ記録する値各々のサンプリングタイミングは電流波形の谷の部分で行っているが、サンプリングタイミングは谷の部分に限定されるものではない。
【００５４】
実施形態２について説明する。
実施形態２は、図６に示すＡＣ−ＤＣ変換回路へ供給される入力電圧、入力電流に対する力率改善制御の応答性を向上させ、力率改善制御の応答性の悪化による電流の発振と振動を押さえ込む。
【００５５】
図６は、実施形態２の力率改善回路を有するＡＣ−ＤＣ変換回路の一実施例を示す図である。図６のＡＣ−ＤＣ変換回路６０は系統電源２に接続され、コイルＬ１（第１のコイル）、コイルＬ２（第２のコイル）、ダイオードＤ５（第１のダイオード）、ダイオードＤ６（第２のダイオード）、スイッチング素子Ｓ１（第１のスイッチング素子）、スイッチング素子Ｓ２（第２のスイッチング素子）、コンデンサＣ１、電圧計３（第１の電圧計）、電圧計５（第２の電圧計）、電流計４（電流計）、Ａ／Ｄ変換部６〜８、駆動部９、制御部１０を備えている。
【００５６】
図６のＡＣ−ＤＣ変換回路６０の構成要素について説明する。
コイルＬ１、ダイオードＤ５、スイッチング素子Ｓ１、コンデンサＣ１、電圧計３、５、電流計４、Ａ／Ｄ変換部６〜８、駆動部９、制御部１０については、実施形態１で説明しているので省略する。
【００５７】
コイルＬ２は昇圧用のチョークコイルである。ダイオードＤ６は整流ダイオードである。スイッチング素子Ｓ２は、例えば、Metal-Oxide-Semiconductor Field-Effect Transistor（ＭＯＳＦＥＴ）、Insulated Gate Bipolar Transistor（ＩＧＢＴ）などが考えられる。図６ではスイッチング素子Ｓ２としてＭＯＳＦＥＴを用いた場合について示されている。なお、図６ではＭＯＳＦＥＴのドレイン−ソース間に寄生ダイオードが示されている。
【００５８】
図６のＡＣ−ＤＣ変換回路６０の回路構成について説明する。
電圧計３の一方の端子（ａ点）は、系統電源２の一方の端子とコイルＬ１の一方の端子とに接続されている。電圧計３の他方の端子（ｂ点）は、系統電源２の他方の端子とコイルＬ２の他方の端子とに接続されている。コイルＬ１の他方の端子は電流計４の一方の端子に接続され、電流計４の他方の端子はダイオードＤ５のアノードとスイッチング素子Ｓ１のドレイン端子に接続されている。コイルＬ２の他方の端子はダイオードＤ６のアノードとスイッチング素子Ｓ２のドレイン端子に接続されている。スイッチング素子Ｓ１とスイッチング素子Ｓ２の各々のソース端子は、コンデンサＣ１の他方の端子と電圧計５の他方の端子とグランドＧＮＤと出力端子（ｄ）とに接続されている。ダイオードＤ５とダイオードＤ６の各々のカソードは、コンデンサＣ１の一方の端子と電圧計５の一方の端子と出力端子（ｃ点）とに接続されている。
【００５９】
電圧計３の出力端子はＡ／Ｄ変換部６に接続され、電流計４の出力端子はＡ／Ｄ変換部８に接続され、電圧計５の出力端子はＡ／Ｄ変換部７に接続されている。Ａ／Ｄ変換部６の出力端子は制御部１０の第１の入力端子に接続され、Ａ／Ｄ変換部８の出力端子は制御部１０の第２の入力端子に接続され、Ａ／Ｄ変換部７の出力端子は制御部１０の第３の入力端子に接続されている。制御部１０の出力端子は駆動部９の入力端子に接続され、駆動部９の出力端子はスイッチング素子Ｓ１とスイッチング素子Ｓ２の各々のゲート端子に接続されている。
【００６０】
実施形態２では、実施形態１で説明した図３のステップＳ８またはＳ９において、制御部１０が式５または式６に従い計算をして今回の駆動期間を求め、今回の駆動期間を記録部に記録する。
【００６１】
図７に示すタイムチャートの場合、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ（＝Ｉｍ＋２）を用いて、今回駆動期間Ｄｍ＋１＝Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ＿ｍ）＋２×（１−Ｖａｃ＿ｍ／Ｖｈ＿ｍ）−Ｄｍが計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ（＝Ｉｍ＋２）を用いて、今回駆動期間Ｄｍ＋１＝−Ｌ×（Ｉｍ＋２−Ｉｍ）／（Ｔ×Ｖｈ＿ｍ）＋２×（１＋Ｖａｃ＿ｍ／Ｖｈ＿ｍ）−Ｄｍが計算される。ここで、目標電流値Ｉｔａｒｇｅｔ＿ｍとは電流値Ｉｍに対するＩｍ＋２に相当する。すなわち、電流値に対する２周期先の電流値が目標電流値となる。
【００６２】
タイミングｔ３より後でタイミングｔ５より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋１（＝Ｉｍ＋３）を用いて、今回駆動期間Ｄｍ＋２＝Ｌ×（Ｉｍ＋３−Ｉｍ＋１）／（Ｔ×Ｖｈ＿ｍ＋１）＋２×（１−Ｖａｃ＿ｍ＋１／Ｖｈ＿ｍ＋１）−Ｄｍ＋１が計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋１（＝Ｉｍ＋３）を用いて、今回駆動期間Ｄｍ＋２＝−Ｌ×（Ｉｍ＋３−Ｉｍ＋１）／（Ｔ×Ｖｈ＿ｍ＋１）＋２×（１＋Ｖａｃ＿ｍ＋１／Ｖｈ＿ｍ＋１）−Ｄｍ＋１が計算される。
【００６３】
タイミングｔ５より後でタイミングｔ７より前のタイミングでステップＳ７の処理が終了すると、ステップＳ８の場合、制御部１０が式５に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋２（＝Ｉｍ＋４）を用いて、不図示の今回駆動期間Ｄｍ＋３＝Ｌ×（Ｉｍ＋４−Ｉｍ＋２）／（Ｔ×Ｖｈ＿ｍ＋２）＋２×（１−Ｖａｃ＿ｍ＋２／Ｖｈ＿ｍ＋２）−Ｄｍ＋２が計算される。ステップＳ９の場合、制御部１０が式６に従い今回の駆動期間を求める。すなわち、目標電流値Ｉｔａｒｇｅｔ＿ｍ＋２（＝Ｉｍ＋４）を用いて、今回駆動期間Ｄｍ＋３＝−Ｌ×（Ｉｍ＋４−Ｉｍ＋２）／（Ｔ×Ｖｈ＿ｍ＋２）＋２×（１＋Ｖａｃ＿ｍ＋２／Ｖｈ＿ｍ＋２）−Ｄｍ＋２が計算される。
【００６４】
ステップＳ１０では、制御部１０がステップＳ８またはＳ９で計算した駆動期間を前回の駆動期間として保存する。
図７に示すタイムチャートの場合、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋１を前回の駆動期間Ｄｍとして、計算情報５３の「前回駆動期間」に保存する。本例では、「Ｄｍ」が記録されている。タイミングｔ３より後でタイミングｔ５より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋２を前回の駆動期間Ｄｍ＋１として、計算情報５３の「前回駆動期間」に保存する。タイミングｔ５より後でタイミングｔ７より前のタイミングでステップＳ８またはＳ９の処理が終了すると、ステップＳ８またはＳ９で計算した駆動期間Ｄｍ＋３を前回の駆動期間Ｄｍ＋２として、計算情報５３の「前回駆動期間」に保存する。
【００６５】
次に、タイミングｔ１より後でタイミングｔ３より前のタイミングでステップＳ１０の処理が終了すると、駆動期間Ｄｍ＋１を期間ｔ３〜ｔ５（周期Ｔ）に反映させる。図７の例では、制御部１０がタイミングｔ３を検出すると、スイッチング素子Ｓ１とスイッチング素子Ｓ２を駆動させるために制御信号をＯＮ状態にする。そして、駆動部９は制御信号が入力されると制御信号の電圧を増幅してスイッチング素子Ｓ１とスイッチング素子Ｓ２のゲート端子に出力する。図７の期間ｔ３〜ｔ４（駆動期間Ｄｍ＋１）参照。次に、制御部１０がタイミングｔ４を検出すると、図７の期間ｔ４〜ｔ５の間スイッチング素子Ｓ１とスイッチング素子Ｓ２をオフ状態にさせるために制御信号をＯＦＦ状態にする。その結果、駆動部９は制御信号がＯＦＦ状態であるのでスイッチング素子Ｓ１とスイッチング素子Ｓ２を駆動しない。なお、タイミングは、例えば、カウンタや時計ＩＣなどを用いて周期を計測することが考えられる。
【００６６】
なお、図９の駆動期間Ｄｍ＋２は期間ｔ３〜ｔ５で求められ、期間ｔ５〜ｔ７に反映される。
実施形態２によれば、ＡＣ−ＤＣ変換回路へ供給される入力電圧、入力電流に対する力率改善制御の応答性を向上させ、力率改善制御の応答性の悪化による電流の発振と振動を押さえ込むことができる。その結果、高調波エミッションの結果も大きく向上させることができ、入力電流がより正弦波（Ｓｉｎ波）に近づけることができる。
【００６７】
なお、今回の駆動期間Ｄｍ＋１を算出する際、電流を一次近似式として計算しているが、その他の近似式または近似なしでも可能である。
また、図５に示した入力情報５２へ記録する値各々のサンプリングタイミングは電流波形の谷の部分で行っているが、サンプリングタイミングは谷の部分に限定されるものではない。
【００６８】
図８（ａ）は、「交流入力電圧Ｖａｃ」、「交流入力実電流Ｉｉｎ」、「交流入力電流平均値Ｉａｃ」の一例を示す図であり、図８（ｂ）は、図８（ａ）に示す破線枠内の拡大図であり、さらに、「ディジタル信号Ｉｍ」、「補正値Ｉｃ」、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」、「交流入力実電流リプル幅ＩＲＩＰ＿ＰＥＡＫ」の一例を示す図である。
【００６９】
図８（ａ）及び図８（ｂ）に示すように、「交流入力実電流Ｉｉｎ」が最小値（谷）になるときに「ディジタル信号Ｉｍ」を取得する場合、その取得した「ディジタル信号Ｉｍ」はコイルＬ１やコイルＬ２に流れる「交流入力実電流Ｉｉｎ」の平均値である「交流入力電流平均値Ｉａｃ」に対して誤差が発生する。
【００７０】
また、図８（ｂ）に示すように、系統電源２において、「交流入力電流平均値Ｉａｃ」に対して「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」が設けられている場合がある。この場合、「ディジタル信号Ｉｍ」と「交流入力電流平均値Ｉａｃ」との誤差が大きいと、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」と「交流入力電流平均値Ｉａｃ」との間に少なくともその誤差分のマージンをもたせるために「今回の目標電流値Ｉｔａｇｅｔ＿ｍ」を、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」が設けられていない場合に比べて小さく設定する必要がある。そして、このように「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を小さくしてしまうと、ＡＣ−ＤＣ変換回路の出力電力も小さくなるため、例えば、ＡＣ−ＤＣ変換回路を充電器として採用した場合、充電時間が長くなってしまう。
【００７１】
そこで、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」に固定値を加算するなどして「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「補正値Ｉｃ」に補正することが考えられるが、ＡＣ−ＤＣ変換回路に他の系統電源２が接続されて「交流入力電圧Ｖａｃ」が変化したり、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」自体が変化すると、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」と「交流入力電流平均値Ｉａｃ」との間のマージンも変化するため、固定値の設定が難しくなってしまう。
【００７２】
そこで、「交流入力電圧Ｖａｃ」や「交流入力電流制限値Ｉｍ＿ｌｍｔ」の変化に併せて固定値も変えられるように、予め複数の固定値を用意しておくことが考えられるが、その準備に手間や時間がかかってしまう。
【００７３】
図９は、このような問題を考慮した制御部１０の変形例を示す図である。なお、図２に示す構成と同じ構成には同じ符号を付しその説明を省略する。また、図９に示す制御部１０は、上記実施形態１の制御部１０及び上記実施形態２の制御部１０のどちらの制御部１０として採用されてもよい。
【００７４】
図９に示す制御部１０において、図２に示す制御部１０と異なる点は、限界値算出部２８（限界値算出手段）、補正部２９（補正手段）、目標電流制限部３０（目標電流制限手段）、及び目標電流保持部３１をさらに備えている点である。
【００７５】
限界値算出部２８は、目標電流算出部３２に備えられ、「制限値ＩＬＭＴ」、「ディジタル信号Ｉｍ」、「ディジタル信号Ｖａｃ＿ｍ」、及び「前回駆動期間Ｄｍ」に基づいて、「限界値Ｉｉｎ＿ｌｍｔ」を算出する。
【００７６】
図１０は、限界値算出部２８の動作の一例を示すフローチャートである。また、図１１は、図９に示す制御部１０の動作の一実施例のタイムチャートを示す図である。図１２は、設定情報５１、入力情報５２、及び計算情報５３のデータ構造例を示す図である。
【００７７】
まず、限界値算出部２８は、「交流入力電圧Ｖａｃ」の位相が９０°又は２７０°になると（Ｓ１００がＹｅｓ）、図１２に示す入力情報５２から「ディジタル信号Ｖａｃ＿ｍ」、「ディジタル信号Ｉｍ」、及び「制限値ＩＬＭＴ」（交流入力電流制限値）を取得する（Ｓ１０１）。なお、「制限値ＩＬＭＴ」は、例えば、系統電源２からハイブリッド車や電気自動車などの車両に搭載されるＡＣ−ＤＣ変換回路へ送られる、「交流入力実電流Ｉｉｎ」の振幅値を制限するためのコントロールパイロット信号などに含まれる情報とする。
【００７８】
次に、限界値算出部２８は、「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」＝「制限値ＩＬＭＴ」×√２を計算することにより、「制限値ＩＬＭＴ」の実効値として「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」を求める（Ｓ１０２）。
【００７９】
次に、限界値算出部２８は、図１２に示す設定情報５１から「周期Ｔ」を取得し、図１２に示す入力情報５２から「ディジタル信号Ｖａｃ＿ｍ」を取得し、図１２に示す計算情報５３から「前回駆動期間Ｄｍ」及び「インダクタンスＬ」を取得し、「交流入力実電流リプル幅ＩＲＩＰ＿ＰＥＡＫ」＝「ディジタル信号Ｖａｃ＿ｍ」×「前回駆動期間Ｄｍ」×「周期Ｔ」／「インダクタンスＬ」を計算することにより、図８（ｂ）や図１１に示すタイミングｔ１における「交流入力実電流Ｉｉｎ」の振幅値として「交流入力実電流リプル幅ＩＲＩＰ＿ＰＥＡＫ」を求める（Ｓ１０３）。
【００８０】
次に、限界値算出部２８は、「限界値Ｉｉｎ＿ｌｍｔ」＝「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」−「交流入力実電流リプル幅ＩＲＩＰ＿ＰＥＡＫ」／２を計算することにより、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を大きい値に補正する際の限界値として「限界値Ｉｉｎ＿ｌｍｔ」を求める（Ｓ１０４）。例えば、この「限界値Ｉｉｎ＿ｌｍｔ」を「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」とすると、「交流入力電流平均値Ｉａｃ」を「交流入力電流最大制限値ＩＬＭＴ＿ＰＥＡＫ」よりも大きくさせないようにしつつ「交流入力電流平均値Ｉａｃ」をできるだけ大きな値にさせることができる。これにより、ＡＣ−ＤＣ変換回路の出力電圧の低減を抑えることができる。
【００８１】
そして、限界値算出部２８は、「交流入力電圧Ｖａｃ」がゼロクロスタイミング（０［Ｖ］）になると（Ｓ１０５がＹｅｓ）、現在の「限界値Ｉｉｎ＿ｌｍｔ」をＳ１０４で求めたタイミングｔ１における「限界値Ｉｉｎ＿ｌｍｔ」に更新する。例えば、限界値算出部２８は、図１２に示す設定情報５１の「限界値Ｉｉｎ＿ｌｍｔ」をＳ１０４で求めたタイミングｔ１における「限界値Ｉｉｎ＿ｌｍｔ」に更新する。このように「交流入力電圧Ｖａｃ」がゼロクロスタイミングのときに「限界値Ｉｉｎ＿ｌｍｔ」を更新すると、その更新に伴って生じる「今回駆動期間Ｄｍ＋１」の変位量を小さくすることができるため、「限界値Ｉｉｎ＿ｌｍｔ」の更新時におけるＡＣ−ＤＣ変換回路の出力電力の変動を抑えることができる。
【００８２】
なお、限界値算出部２８は、「ディジタル信号Ｖａｃ＿ｍ」や「ディジタル信号Ｉｍ」の取得タイミング毎（例えば、図８（ｂ）や図１１に示すタイミングｔ１、ｔ３、ｔ５、ｔ７）にＳ１の処理を開始するものとする。
【００８３】
また、図９に示す積算部２４は、ＰＩ制御部２２により求められる「計算値ｙ」と、補償部２３により求められる「補償値ｚ」と、図１２に示す入力情報５２から取得される「ディジタル信号Ｖａｃ＿ｍ」とを用いて、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」＝「計算値ｙ」×「補償値ｚ」×「ディジタル信号Ｖａｃ＿ｍ」を計算することにより、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求める。なお、補償部２３がない場合には「補償値ｚ」は積算しなくてもよい。
【００８４】
補正部２９は、目標電流算出部３２に備えられ、積算部２４により求められる「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」と、限界値算出部２８で算出される「限界値Ｉｉｎ＿ｌｍｔ」との比較結果に基づいて、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」として出力するか、又は、「限界値Ｉｉｎ＿ｌｍｔ」を「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」として出力するかを判断する。
【００８５】
目標電流制限部３０は、演算部３３と、比較部３４と、演算部３５とを備える。
演算部３３は、「ΔＩｔａｒｇｅｔ＿ｍａｘ」及び「ΔＩｔａｒｇｅｔ＿ｍｉｎ」を求めるとともに、目標電流算出部３２で算出された「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と、目標電流保持部３１に保持されている「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分を求める（Ｓ６５）。なお、「ΔＩｔａｒｇｅｔ＿ｍａｘ」は、「目標電流値Ｉｔａｒｇｅｔ」の変位量の最大値であり、「ΔＩｔａｒｇｅｔ＿ｍｉｎ」は、「目標電流値Ｉｔａｒｇｅｔ」の変位量の最小値である。例えば、「ディジタル信号Ｉｍ」がＸ［Ａ］のとき、「目標電流値Ｉｔａｒｇｅｔ」はＸ√２sin(２π×ｆ０×ｔ)という関数で表され、「目標電流値Ｉｔａｒｇｅｔ」の変位量の傾き（ΔＩｔａｒｇｅｔ／「周期Ｔ」）はこの関数の傾き（微分）以上にはならない。すなわち、演算部３３は、「ΔＩｔａｒｇｅｔ＿ｍａｘ」＝Ｘ√２×２×π×ｆ０×ｃｏｓ(２π×ｆ０×「周期Ｔ」)×Ｔを計算するとともに、「ΔＩｔａｒｇｅｔ＿ｍｉｎ」＝−Ｘ√２×２×π×ｆ０×ｃｏｓ(２π×ｆ０×Ｔ)×Ｔを計算することにより、「ΔＩｔａｒｇｅｔ＿ｍａｘ」及び「ΔＩｔａｒｇｅｔ＿ｍｉｎ」を求める。なお、ｆ０はスイッチング素子Ｓ１やスイッチング素子Ｓ２のスイッチング周波数とする。なお、演算部３３は、「交流入力電圧Ｖａｃ」又は「交流入力実電流Ｉｉｎ」に基づいて、「ΔＩｔａｒｇｅｔ＿ｍａｘ」及び「ΔＩｔａｒｇｅｔ＿ｍｉｎ」を求めるように構成してもよい。
【００８６】
比較部３４は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ_ｍａｘ」よりも大きいか、又は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ_ｍｉｎ」よりも小さいかを判断する。
【００８７】
演算部３５は、比較部３４の比較結果に応じた「目標電流値Ｉｔａｒｇｅｔ＿ｍ」を出力する。
目標電流保持部３１は、演算部３５から出力される「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、１周期後の「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求める際に使用される「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ−１」として保持する。
【００８８】
図１３は、図９に示す制御部１０の動作の一例を示すフローチャートである。なお、図１３に示すＳ１〜Ｓ５は、図３に示すＳ１〜Ｓ５と同様であるため、その説明を省略する。
【００８９】
積算部２４は、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求め、その「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を図１２に示す計算情報５３に記録する（Ｓ６１）。
次に、補正部２９は、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が「限界値Ｉｉｎ＿ｌｍｔ」よりも小さいか否かを判断する（Ｓ６２）。
【００９０】
「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が「限界値Ｉｉｎ＿ｌｍｔ」よりも小さいと判断すると（Ｓ６２がＹｅｓ）、補正部２９は、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」として出力する（Ｓ６３）。
【００９１】
一方、「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が「限界値Ｉｉｎ＿ｌｍｔ」よりも大きいと判断すると（Ｓ６２がＮｏ）、補正部２９は、「限界値Ｉｉｎ＿ｌｍｔ」を「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」として出力とする（Ｓ６４）。
【００９２】
次に、演算部３３は、「ΔＩｔａｒｇｅｔ＿ｍａｘ」及び「ΔＩｔａｒｇｅｔ＿ｍｉｎ」を求めるとともに、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分を求める（Ｓ６５）。
【００９３】
次に、比較部３４は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＞「ΔＩｔａｒｇｅｔ_ｍａｘ」であるか否かを判断する（Ｓ６６）。
【００９４】
「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＞「ΔＩｔａｒｇｅｔ_ｍａｘ」であると判断されると（Ｓ６６がＹｅｓ）、演算部３５は、「今回の目標電流値Ｉｔａｒｇｅｔ_ｍ」＝「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＋「ΔＩｔａｒｇｅｔ_ｍａｘ」を計算することにより、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」（例えば、図１１に示すタイミングｔ５における「交流入力実電流Ｉｉｎ」を「ディジタル信号Ｉｍ＋２」とするための「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」）を求める（Ｓ６７）。
【００９５】
そして、目標電流保持部３１は、Ｓ６７で求められた「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、１周期後の「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求める際に使用される「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ−１」として保持する（Ｓ６８）。
【００９６】
このように、演算部３５は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ＿ｍａｘ」よりも大きい場合、すなわち、今回求めた「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が大き過ぎる場合、その「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」とせずに、「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」と「ΔＩｔａｒｇｅｔ＿ｍａｘ」とを加算した値に制限する。
【００９７】
一方、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＞「ΔＩｔａｒｇｅｔ_ｍａｘ」でないと判断すると（Ｓ６６がＮｏ）、比較部３０は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＜「ΔＩｔａｒｇｅｔ_ｍｉｎ」であるか否かを判断する（Ｓ６９）。
【００９８】
「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＜「ΔＩｔａｒｇｅｔ_ｍｉｎ」であると判断されると（Ｓ６９がＹｅｓ）、演算部３５は、「今回の目標電流値Ｉｔａｒｇｅｔ_ｍ」＝「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＋「ΔＩｔａｒｇｅｔ_ｍｉｎ」を計算することにより、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」（例えば、図１１に示すタイミングｔ５における「交流入力実電流Ｉｉｎ」を「ディジタル信号Ｉｍ＋２」とするための「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」）を求める（Ｓ７０）。
【００９９】
そして、目標電流保持部３１は、Ｓ７０で求められた「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、１周期後の「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求める際に使用される「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ−１」として保持する（Ｓ６８）。
【０１００】
このように、演算部３５は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ＿ｍｉｎ」よりも小さい場合、すなわち、今回求めた「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が小さ過ぎる場合、その「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」とせずに、「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」と「ΔＩｔａｒｇｅｔ＿ｍｉｎ」とを加算した値に制限する。
【０１０１】
また、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＜「ΔＩｔａｒｇｅｔ_ｍｉｎ」でないと判断すると（Ｓ６９がＮｏ）、演算部３５は、「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「今回の目標電流値Ｉｔａｒｅｇｔ＿ｍ」（例えば、図１１に示すタイミングｔ５における「交流入力実電流Ｉｉｎ」を「ディジタル信号Ｉｍ＋２」とするための「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」）とする（Ｓ７１）。
【０１０２】
そして、目標電流保持部３１は、Ｓ７１で求められた「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を、１周期後の「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を求める際に使用される「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ−１」として保持する（Ｓ６８）。
【０１０３】
このように、演算部３５は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ＿ｍａｘ」よりも大きくない場合で、かつ、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」と「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」との差分が「ΔＩｔａｒｇｅｔ＿ｍｉｎ」よりも小さくない場合、すなわち、今回求めた「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が適当な大きさである場合、その「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」とする。
【０１０４】
次に、デューティ算出部２５は、「ディジタル信号Ｖａｃ＿ｍ」≧０であるか否かを判断する（Ｓ７）。
「ディジタル信号Ｖａｃ＿ｍ」≧０であると判断すると（Ｓ７がＹｅｓ）、デューティ算出部２５は、「今回駆動期間Ｄｍ＋１」＝「インダクタンスＬ」×（「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」）−「ディジタル信号Ｉｍ」）／（「周期Ｔ」×「出力電圧値Ｖｈ＿ｍ」）＋２×（１−「ディジタル信号Ｖａｃ＿ｍ」／「出力電圧値Ｖｈ＿ｍ」）−「前回駆動期間Ｄｍ」を計算することにより、「今回駆動期間Ｄｍ＋１」を求める（Ｓ８）。例えば、デューティ算出部２５は、図１１に示すタイミングｔ３を検出すると、駆動信号をローレベルからハイレベルにする。駆動部９は、駆動信号がローレベルからハイレベルになると、スイッチング素子Ｓ１をターンオンする。また、デューティ算出部２５は、図１１に示すタイミングｔ４を検出すると、駆動信号をハイレベルからローレベルにする。駆動部９は、駆動信号がハイレベルからローレベルになると、スイッチング素子Ｓ１をターンオフする。これにより、図９に示す制御部１０は、図１１に示すタイミングｔ５において「ディジタル信号Ｉｍ＋２」を得ることができる。なお、図１３に示すフローチャートが実行される度に、「インダクタンスＬ」が求められるように構成してもよい。
【０１０５】
そして、デューティ保持部２６は、Ｓ８で求められた「今回駆動期間Ｄｍ＋１」を、１周期後の「今回駆動期間Ｄｍ＋１」を求める際に使用される「前回駆動期間Ｄｍ」として保持する（Ｓ１０）。
【０１０６】
一方、「ディジタル信号Ｖａｃ＿ｍ」≧０でないと判断すると（Ｓ７がＮｏ）、デューティ算出部２５は、「今回駆動期間Ｄｍ＋１」＝−「インダクタンスＬ」×（「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」−「ディジタル信号Ｉｍ」）／（「周期Ｔ」×「出力電圧値Ｖｈ＿ｍ」）＋２×（１＋「交流入力電圧Ｖａｃ＿ｍ」／「出力電圧値Ｖｈ＿ｍ」）−「前回駆動期間Ｄｍ」を計算することにより、「今回駆動期間Ｄｍ＋１」を求める（Ｓ９）。
【０１０７】
そして、デューティ保持部２６は、Ｓ９で求められた「今回駆動期間Ｄｍ＋１」を、1周期後の「今回駆動期間Ｄｍ＋１」を求める際に使用される「前回駆動期間Ｄｍ」として記録部に記録する（Ｓ１０）。
【０１０８】
このように、図９に示す制御部１０では、積算部２４により求められる「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が「限界値Ｉｉｎ＿ｌｍｔ」よりも大きい場合、その「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「限界値Ｉｉｎ＿ｌｍｔ」に補正している。また、図９に示す制御部１０では、「目標電流値Ｉｔａｒｇｅｔ」の変位量の増減が小さく、補正後の「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」が適当な値である場合、その補正後の「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」としている。この場合、「交流入力電流平均値Ｉａｃ」を「交流入力電流制限値ＩＬＭＴ＿ＰＥＡＫ」よりも大きくさせないようにしつつ、「交流入力電流平均値Ｉａｃ」をできるだけ大きな値にさせることができるため、出力電圧値Ｖｈの低下を抑えることができる。
【０１０９】
また、図９に示す制御部１０では、「限界値Ｉｉｎ＿ｌｍｔ」を「制限値ＩＬＭＴ」や「ディジタル信号Ｖａｃ＿ｍ」に基づいて求めているため、ＡＣ−ＤＣ変換回路に他の系統電源２が接続されることによる「交流入力電圧Ｖａｃ」の変化や系統電源２から要求される「制限値ＩＬＭＴ」の変化に応じて、「限界値Ｉｉｎ＿ｌｍｔ」を変化させることができ、複数の「限界値Ｉｉｎ＿ｌｍｔ」を予め用意しておく必要がない。
【０１１０】
また、図９に示す制御部１０では、「交流入力電圧Ｖａｃ」の位相が９０°又は２７０°のときに、「限界値Ｉｉｎ＿ｌｍｔ」が求めているため、「交流入力電流平均値Ｉａｃ」（「ディジタル信号Ｉｍ」）の変化が最も小さいときに「限界値Ｉｉｎ＿ｌｍｔ」を求めることができ、「限界値Ｉｉｎ＿ｌｍｔ」の精度を向上させることができる。
【０１１１】
また、図９に示す制御部１０では、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＞「ΔＩｔａｒｇｅｔ_ｍａｘ」である場合、「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」と「ΔＩｔａｒｇｅｔ＿ｍａｘ」との加算値を「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」としている。また、図９に示す制御部１０は、「仮の目標電流値Ｉｔａｒｇｅｔ_ｍ」−「前回の目標電流値Ｉｔａｒｇｅｔ_ｍ−１」＜「ΔＩｔａｒｇｅｔ_ｍｉｎ」である場合、「前回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」と「ΔＩｔａｒｇｅｔ＿ｍｉｎ」との加算値を「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」としている。このように、「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」の変位量が大きい場合、その「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」の変位量に制限をかけることができるため、「今回の目標電流値Ｉｔａｒｇｅｔ＿ｍ」を適当な値に設定することができる。これにより、ＡＣ−ＤＣ変換回路の「出力電圧値Ｖｈ」の変動を抑えることができる。
【０１１２】
なお、図９に示す制御部１０において、ディーティ算出部２５は、目標電流算出部３２から出力される「仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」に基づいて、「今回起動期間Ｄｍ＋１」を求めるようにしてもよい。この場合、図９に示す目標電流制限部３０や目標電流保持部３１及び図１３に示すＳ６５〜Ｓ７１を省略することができる。
【０１１３】
また、図９に示す制御部１０において、目標電流制限部３０は、積算部２４から出力される「仮の仮の目標電流値Ｉｔａｒｇｅｔ＿ｍ」の変位量に対して制限をかけるようにしてもよい。この場合、図９に示す限界値算出部２８や補正部２９及び図１３に示すＳ６２〜Ｓ６４を省略することができる。
【０１１４】
また、図９に示す制御部１０において、限界値算出部２８や補正部２９は、目標電流算出部３２の外部に設けられてもよい。
また、本発明は、上記実施の形態に限定されるものでなく、本発明の要旨を逸脱しない範囲内で種々の改良、変更が可能である。
【符号の説明】
【０１１５】
１、６０  ＡＣ−ＤＣ変換回路
２  系統電源
３、５  電圧計
４  電流計
６、７、８  Ａ／Ｄ変換部
９  駆動部
１０  制御部
２１  誤差算出部
２２  ＰＩ制御部
２３  補償部
２４  積算部
２５  デューティ算出部
２６  デューティ保持部
Ｃ１  コンデンサ
Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５、Ｄ６  ダイオード
Ｌ１、Ｌ２  コイル
Ｓ１、Ｓ２  スイッチング素子
【図１】
0005870708.tif 000002
【図２】
0005870708.tif 000003
【図３】
0005870708.tif 000004
【図４】
0005870708.tif 000005
【図５】
0005870708.tif 000006
【図６】
0005870708.tif 000007
【図７】
0005870708.tif 000008
【図８】
0005870708.tif 000009
【図９】
0005870708.tif 000010
【図１０】
0005870708.tif 000011
【図１１】
0005870708.tif 000012
【図１２】
0005870708.tif 000013
【図１３】
0005870708.tif 000014