(57)【要約】【課題】低日射量状態を検知したとき、最大電力点への追従制御の精度を上げて太陽電池電圧の振動を抑制する。【解決手段】制御回路１０は、インバータ出力電圧検出部６とインバータ出力電流検出部７とにより検出された出力電圧および出力電流の積による出力電力から太陽電池１の最大電力を検知したとき、そのときの太陽電池電圧を太陽電池電圧検出部５から読み込んで保持し、保持した太陽電池電圧が所定数になる毎に、その中から最大値の太陽電池電圧を選択し、太陽電池の電力が低下する低日射量状態を検知したときに、選択した最大値の太陽電池電圧を目標太陽電池電圧とし、太陽電池１の太陽電池電圧がその目標太陽電池電圧とほぼ一致するようにインバータ回路３を制御する。【選択図】図１
2008226870.tif 000002
【特許請求の範囲】
【請求項１】
太陽電池より発生する直流電力を交流電力に変換する電力変換器と、
太陽電池の電圧を検出する太陽電池電圧検出部と、
前記電力変換器の出力電圧を検出する出力電圧検出部と、
前記電力変換器の出力電流を検出する出力電流検出部と、
前記太陽電池電圧検出部、前記出力電圧検出部および前記出力電流検出部のそれぞれの検出結果に基づいて目標太陽電池電圧を算出する目標太陽電池電圧算出部と、
前記太陽電池電圧が目標太陽電池電圧とほぼ一致するように前記電力変換器の出力電流を制御し、太陽電池の電力を最大電力に推移させる電力制御部と、
前記出力電圧検出部と前記出力電流検出部とにより検出された出力電圧および出力電流の積による出力電力から太陽電池の最大電力を検知したとき、そのときの太陽電池電圧を前記太陽電池電圧検出部から読み込んで保持し、保持した最新の所定数の太陽電池電圧の中から最大値の太陽電池電圧を選択する最大太陽電池電圧判別部とを備え、
前記目標太陽電池電圧算出部は、太陽電池の電力が低下する低日射量状態を検知したときに、前記最大太陽電池電圧判別部により選択された最大値の太陽電池電圧を目標太陽電池電圧として前記電力制御部に設定することを特徴とする太陽光発電システム。
【請求項２】
前記目標太陽電池電圧算出部は、出力電力が予め設定された閾値より低いときに低日射量状態と判断することを特徴とする請求項１記載の太陽光発電システム。
【請求項３】
前記目標太陽電池電圧算出部は、最大値の太陽電池電圧を目標太陽電池電圧としたときから少なくとも所定時間経過するとその目標太陽電池電圧を一旦クリアにし、再び、最大太陽電池電圧判別部により最大値の太陽電池電圧が選択されたときは、これを新たな目標太陽電池電圧として設定し直すことを特徴とする請求項１又は２記載の太陽光発電システム。
【請求項４】
前記出力電圧検出部と前記出力電流検出部とにより検出された出力電圧および出力電流の積による出力電力を、前記太陽電池電圧検出部からの太陽電池電圧で微分して電力変化量を算出する電力変化量算出部を備え、
前記最大太陽電池電圧判別部は、その電力変化量算出部により算出された電力変化量の符号が反転したとき、そのときの太陽電池電圧が太陽電池の最大電力となる電圧値と判断してその太陽電池電圧を保持することを特徴とする請求項１乃至３の何れかに記載の太陽光発電システム。
【請求項５】
前記最大太陽電池電圧判別部は、前記電力変化量算出部により算出された電力変化量の符号が反転したとき、そのときの太陽電池電圧が太陽電池の最大電力となる電圧値と判断して、その太陽電池電圧が予め設定された上限値以下かどうかを判定し、上限値以下の太陽電池電圧を保持することを特徴とする請求項４記載の太陽光発電システム。
【請求項６】
前記最大太陽電池電圧判別部は、最大値の太陽電池電圧が予め設定された上限値より大きいとき、上限値を最大値の太陽電池電圧とすることを特徴とする請求項１乃至４の何れかに記載の太陽光発電システム。
【請求項７】
前記最大太陽電池電圧判別部は、最大値の太陽電池電圧が予め設定された下限値を下回るとき、下限値を最大値の太陽電池電圧とすることを特徴とする請求項１乃至４の何れかに記載の太陽光発電システム。
【請求項８】
前記最大太陽電池電圧判別部は、最大値の太陽電池電圧を予め設定された補正値により補正し、かつ、その補正した太陽電池電圧が予め設定された上限値を超えているかどうかを判定し、補正した太陽電池電圧が上限値を超えているときはその上限値を最大値の太陽電池電圧とし、また、補正した太陽電池電圧が上限値より小さいときは予め設定された下限値より大きいかどうかを判定し、補正した太陽電池電圧が下限値より小さいときはその下限値を最大値の太陽電池電圧とすることを特徴とする請求項１乃至４の何れかに記載の太陽光発電システム。
【請求項９】
太陽電池より発生する直流電力を交流電力に変換する電力変換器と、
太陽電池の電圧を検出する太陽電池電圧検出部と、
前記電力変換器の出力電圧を検出する出力電圧検出部と、
前記電力変換器の出力電流を検出する出力電流検出部と、
前記太陽電池電圧検出部、前記出力電圧検出部および前記出力電流検出部のそれぞれの検出結果に基づいて目標太陽電池電圧を算出する目標太陽電池電圧算出部と、
前記太陽電池電圧が目標太陽電池電圧とほぼ一致するように前記電力変換器の出力電流を制御し、太陽電池の電力を最大電力に推移させる電力制御部と、
前記出力電圧検出部と前記出力電流検出部とにより検出された出力電圧および出力電流の積による出力電力から太陽電池の最大電力を検知したとき、そのときの太陽電池電圧を前記太陽電池電圧検出部から読み込んで保持し、保持した太陽電池電圧が所定数になる毎に、その中で電圧値の大きい方から所定番目の太陽電池電圧を最大値として選択する最大太陽電池電圧判別部とを備え、
前記目標太陽電池電圧算出部は、太陽電池の電力が低下する低日射量状態を検知したときに、前記最大太陽電池電圧判別部により選択された太陽電池電圧を目標太陽電池電圧として前記電力制御部に設定することを特徴とする太陽光発電システム。
【請求項１０】
前記目標太陽電池電圧算出部は、出力電力が予め設定された閾値より低いときに低日射量状態と判断することを特徴とする請求項９記載の太陽光発電システム。
【請求項１１】
前記目標太陽電池電圧算出部は、最大値とする太陽電池電圧を目標太陽電池電圧としたときから少なくとも所定時間経過するとその目標太陽電池電圧を一旦クリアにし、再び、最大太陽電池電圧判別部により最大値とする太陽電池電圧が選択されたときは、これを新たな目標太陽電池電圧として設定し直すことを特徴とする請求項９又は１０記載の太陽光発電システム。
【請求項１２】
前記出力電圧検出部と前記出力電流検出部とにより検出された出力電圧および出力電流の積による出力電力を、前記太陽電池電圧検出部からの太陽電池電圧で微分して電力変化量を算出する電力変化量算出部を備え、
前記最大太陽電池電圧判別部は、その電力変化量算出部により算出された電力変化量の絶対値が所定値より小さいとき、そのときの太陽電池電圧が太陽電池の最大電力となる電圧値と判断してその太陽電池電圧を保持することを特徴とする請求項９乃至１１の何れかに記載の太陽光発電システム。
【請求項１３】
前記最大太陽電池電圧判別部は、電力変化量の絶対値と所定値との比較から太陽電池電圧が太陽電池の最大電力となる電圧値と判断した際、その太陽電池電圧が上限値より小さいかどうかを判定し、上限値より小さいときはその太陽電池電圧を保持することを特徴とする請求項１２記載の太陽光発電システム。
【請求項１４】
前記最大太陽電池電圧判別部は、選択した太陽電池電圧を予め設定された補正値により補正して最大値の太陽電池電圧とすることを特徴とする請求項９乃至１３の何れかに記載の太陽光発電システム。
【請求項１５】
前記最大太陽電池電圧判別部は、補正した太陽電池電圧が予め設定された上限値より大きいとき、上限値を最大値の太陽電池電圧とすることを特徴とする請求項１４記載の太陽光発電システム。
【請求項１６】
前記最大太陽電池電圧判別部は、補正した太陽電池電圧が予め設定された下限値を下回るとき、下限値を最大値の太陽電池電圧とすることを特徴とする請求項１４記載の太陽光発電システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、太陽電池を電源とする太陽光発電システム、特に低日射量における太陽電池の電力を制御する太陽光発電システムに関するものである。
【背景技術】
【０００２】
現在、太陽電池を用いた発電システムの開発が進んでおり、太陽電池から生じる直流電力を効率よく交流負荷や既存の交流電力系統に与えるための研究が広く行われている。太陽電池は、入射される日射量をパラメータとした場合、日射量の増大に従って電力が高くなる傾向を有しており、また、その太陽電池の動作点により出力電力が大幅に変動する特性を有している。
【０００３】
このような特性を有する太陽電池から最大電力を効率よく取り出すために、山登り法といわれる最大電力点追従制御方法が提案されている。これは、図１０に示すように、山形状の太陽電池電圧―太陽電池電力特性を利用したもので、太陽電池の電力が最大となる最大電力点ＭＰＰを有している。先ず、太陽電池の動作点がＭ１の位置にあった場合、一定の変化幅で太陽電池の電圧を上昇させていくと、その電力はＭＰＰの方向に増加して行く。一方、太陽電池の動作点がＭＰＰを越えＭ２の位置になった場合、太陽光発電システムでは、太陽電池の電力の減少を検出するので、今度は太陽電池の電圧を減少させ、電力が増加するように制御を行う。これにより、太陽電池の電力は、再びＭＰＰの方向に向かって増加し、再度ＭＰＰを越えると減少し始める。そこで、再び電力の減少を検知すると、再び太陽電池の電圧を所定の変化幅で増加させる方向へ変化させる。以上の動作を繰り返し行うことにより、太陽電池の動作点をＭＰＰ近傍で往復させ、太陽電池の電力を最大電力点ＭＰＰに常に追従させている。日射量大のときの太陽電池電圧は、図１１（ａ）に示すようにＭＰＰに追従した状態となりほぼ安定している（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開昭６１−９７７２１号公報（第２−３頁、第３図）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前述した従来の最大電力追従制御方法では、太陽電池とインバータ回路の間に、比較的大容量の電圧平滑用のコンデンサが接続されているため、太陽電池側から見たインバータ回路の電流制限作用による抵抗成分と、そのコンデンサの静電容量間で構成されるＣＲ回路により、いわゆる一次遅れ現象が生じる。低日射量時は太陽電池から見た、インバータ回路側の出力抵抗が大きいため、一次遅れ現象の影響が日中等の最大日射量時と比較して大きくなる。また、図１０中の日射量小に示すように、日射量大の状態（日射１００％とする）の太陽電池電圧−太陽電池電力特性に対して、日射量小の状態（例えば最大日射量の１０％）の特性は広範囲の電圧値（動作点Ｍ３）にわたって、ほぼ平坦な特性となっている。
【０００６】
これら一次遅れ現象と太陽電池電圧―太陽電池電力特性の影響により、最大電力点ＭＰＰへの追従精度が低下してしまうことが生じていた。検出精度が低下する低日射量状態でも、目標太陽電池電圧をその都度演算してＭＰＰに追従させようとする制御を行っているため、太陽電池電圧の過補償の状態が発生し、このため、図１１（ｂ）に示すように、太陽電池電圧の振動が大きくなってＭＰＰから大きく逸脱する傾向にあり、結果として最大電力点ＭＰＰへの追従制度が低下し、電力の取り出し効率が低下するという課題があった。また、太陽電池電圧の大きな振動により、インバータ回路の動作が不安定になるという課題もあった。
【０００７】
本発明は、前記のような課題を解決するためになされたもので、低日射量状態を検知したとき、最大電力点への追従制御の精度を上げて太陽電池電圧の振動を抑制するとともに、インバータ回路の動作を安定化させることのできる太陽光発電システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る太陽光発電システムは、太陽電池より発生する直流電力を交流電力に変換する電力変換器と、太陽電池の電圧を検出する太陽電池電圧検出部と、電力変換器の出力電圧を検出する出力電圧検出部と、電力変換器の出力電流を検出する出力電流検出部と、太陽電池電圧検出部、出力電圧検出部および出力電流検出部のそれぞれの検出結果に基づいて目標太陽電池電圧を算出する目標太陽電池電圧算出部と、太陽電池電圧が目標太陽電池電圧とほぼ一致するように電力変換器の出力電流を制御し、太陽電池の電力を最大電力に推移させる電力制御部と、出力電圧検出部と出力電流検出部とにより検出された出力電圧および出力電流の積による出力電力から太陽電池の最大電力を検知したとき、そのときの太陽電池電圧を太陽電池電圧検出部から読み込んで保持し、保持した太陽電池電圧が所定数になる毎に、その中から最大値の太陽電池電圧を選択する最大太陽電池電圧判別部とを備え、目標太陽電池電圧算出部は、太陽電池の電力が低下する低日射量状態を検知したときに、最大太陽電池電圧判別部により選択された最大値の太陽電池電圧を目標太陽電池電圧として電力制御部に設定する。
【発明の効果】
【０００９】
本発明においては、出力電圧検出部と出力電流検出部とにより検出された電力変換器の出力電圧および出力電流の積による出力電力から太陽電池の最大電力を検知したとき、そのときの太陽電池電圧を太陽電池電圧検出部から読み込んで保持し、保持した太陽電池電圧が所定数になる毎に、その中から最大値の太陽電池電圧を選択し、太陽電池の電力が低下する低日射量状態を検知したときに、選択した最大値の太陽電池電圧を目標太陽電池電圧とし、これを太陽電池の最大電力追従制御に用いるようにしたので、低日射量時における太陽電池電圧の大きな振動を収束させることが可能になり、このため、太陽電池の電力取り出し効率を向上させるとともに、電力変換部であるインバータ回路の安定した動作を確保できる。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
図１は本発明の実施の形態１に係る太陽光発電システムの概略構成を示す回路図、図２は実施の形態１に係る太陽光発電システムの制御回路の構成を示すブロック図である。
実施の形態１の太陽光発電システムは、例えば商用電力系統４に連係されており、主要部として、複数の太陽電池モジュールが組み合わされてなる太陽電池１、電力変換器であるインバータ回路３、インバータ回路３を制御する制御回路１０などが備えられている。インバータ回路３の入力側には、太陽電池１に発生する電圧を平滑化するコンデンサ２および太陽電池１の電圧（以下、「太陽電池電圧ＶPV」という）を検出する太陽電池電圧検出部５が設けられ、インバータ回路３の出力側には、インバータ出力電圧ＶOUT を検出するインバータ出力電圧検出部６およびインバータ出力電流ＩOUT を検出するインバータ出力電流検出部７が設けられている。前述した太陽電池電圧ＶPV、インバータ出力電圧ＶOUT およびインバータ出力電流ＩOUT は、時間ｔ１（数十ms程度）毎に制御回路１０により読み込まれている。
【００１１】
この制御回路１０は、各検出部５、６、７によって検出された太陽電池電圧ＶPV、インバータ出力電圧ＶOUT およびインバータ出力電流ＩOUT に基づいて、インバータ回路３の出力電圧が商用電力系統４の系統電圧と系統周波数に同期するように制御し、かつ、太陽電池１の出力電力がその都度最大となるように常時最大電力点ＭＰＰ（図１０参照）を追従する制御を行っている。以下、図２を用いて制御回路の構成を説明する。
【００１２】
例えば、インバータ出力電圧ＶOUT とインバータ出力電流ＩOUT を乗算してインバータ出力電力ＰOUT を算出する乗算器１１と、単位太陽電池電圧あたりのインバータ出力電力ＰOUT の変化量ｄＰOUT ／ｄＶPVを算出する電力変化量算出部１２と、目標太陽電池電圧ＶPVref を算出する目標太陽電池電圧算出部１３と、太陽電池電圧ＶPVと目標太陽電池電圧ＶPVref との偏差を求める加算器１４と、その偏差値をＰＩＤ制御して目標インバータ出力電流ＩOUTrefを生成し、かつ、インバータ出力電流ＩOUT がその目標インバータ出力電流ＩOUTrefになるようにインバータ回路３のスイッチング素子（図示せず）をＰＷＭ制御するＰＩＤ制御部１５（電力制御部）と、最大太陽電池電圧判別部１６および記憶部１７とを有している。
【００１３】
前述した目標太陽電池電圧算出部１３は、時間ｔ２（数百ms程度）毎にインバータ出力電力ＰOUT を読み込んで、予め設定された閾値Ｃより高いかどうかを判定し、インバータ出力電力ＰOUT が閾値Ｃより大きいときは、高日射量状態と判断して制御モードをＭｏｄｅ＝１（山登りモード）にセットし、かつ、そのときの変化量ｄＰOUT ／ｄＶPVに基づいて目標太陽電池電圧ＶPVref を算出する。また、インバータ出力電力ＰOUT が閾値Ｃより小さいときは、低日射量状態と判断して制御モードをＭｏｄｅ＝０（低日射モード）にセットし、所定時間経過後に後述する最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref として加算器１４に設定する。Ｍｏｄｅ＝０のときの制御は、インバータ出力電力ＰOUT が閾値Ｃより大きくなったとき、又は前記の所定時間より短い時間を経過したときに解除され、再びＭｏｄｅ＝１による制御に入る。目標太陽電池電圧ＶPVref は、変化量ｄＰOUT ／ｄＶPVがゼロより大きいとき、前回の目標太陽電池電圧ＶPVref(k-1)に所定値Ｄを加算して得られた電圧値であり、変化量ｄＰOUT ／ｄＶPVがゼロより小さいときは、前回の目標太陽電池電圧ＶPVref(k-1)から所定値Ｄを減算して得られた電圧値である。
【００１４】
太陽電池電圧判別部１６は、Ｍｏｄｅ＝１のときに変化量ｄＰOUT ／ｄＶPVの微分値の符号が反転しているかどうかを判定し、その微分値の符号が反転しているときは、そのときの太陽電池電圧ＶPVが最大電力点ＭＰＰを与える電圧値と判断して、記憶部１７に予め設定された５つのエリアに順次に書き込み、その５つのエリア全てに太陽電池電圧ＶPVを書き込んだときは、その中から最大値の太陽電池電圧ＶPVを選択して最大太陽電池電圧ＶPVmax とし目標太陽電池電圧算出部１３に送出する。記憶部１７に書き込まれる太陽電池電圧ＶPVは、例えば図５（ｂ）に示すように、インバータ出力電力ＰOUT が極大となる点をａ〜ｇとすると、そのときの太陽電池電圧ＶPVが同図（ａ）に示すようにａ’〜ｇ’となる。また、インバータ出力電力ＰOUT が最大電力点ＭＰＰを通過するとき、変化量ｄＰOUT ／ｄＶPVの符号は反転し、この符号が反転したときの太陽電池電圧ＶPVが最大電力点ＭＰＰを与える電圧値と見なされて記憶部１７に書き込まれる。
【００１５】
次に、図３および図４を用いて実施の形態１の動作を説明する。図３は実施の形態１に係る太陽光発電システムの目標太陽電池電圧算出部の動作を示すフローチャート、図４は最大太陽電池電圧判別部の動作を示すフローチャートである。
制御回路１０がｔ１（数十ms程度）毎に太陽電池電圧ＶPV、インバータ出力電圧ＶOUT およびインバータ出力電流ＩOUT を読み込むと、その都度、制御回路１０の乗算器１１は、インバータ出力電圧ＶOUT とインバータ出力電流ＩOUT とからインバータ出力電力ＰOUT を算出し、電力変化量算出部１２は、太陽電池電圧ＶPVとインバータ出力電力ＰOUT とから単位太陽電池電圧あたりのインバータ出力電力ＰOUT の変化量ｄＰOUT ／ｄＶPVを算出して、目標太陽電池電圧算出部１３と最大太陽電池電圧判別部１６とにそれぞれ送出する。また、最大太陽電池電圧設定部１６は、図４に示すように、Ｍｏｄｅが「１」かどうかを判定し（Ｓ２０）、Ｍｏｄｅが「１」のときは、電力変化量算出部１２により算出された変化量ｄＰOUT ／ｄＶPVの微分値の符号が反転しているかどうかを判定する（Ｓ２１）。
【００１６】
最大太陽電池電圧判別部１６は、その微分値の符号が反転していると判断したときは、そのときの太陽電池電圧ＶPVが最大電力点ＭＰＰを与える電圧値と判断して、その太陽電池電圧ＶPVを記憶部１７に書き込む。この太陽電池電圧ＶPVを書き込む際に、記憶部１７に設けられた５つのエリア全てに太陽電池電圧ＶPVを書き込んでいた場合は、最も古い太陽電池電圧ＶPVをクリアにして、新しい太陽電池電圧ＶPVを保存するようにしている（Ｓ２２）。そして、記憶部１７への書き込みが５つになる毎に、その中から最大値の太陽電池電圧ＶPVを選択して最大太陽電池電圧ＶPVmax とし（Ｓ２３）、目標太陽電池電圧算出部１３に送出する。
【００１７】
一方、目標太陽電池電圧算出部１３は、図３に示すように、ｔ２（数百ms程度）毎に実行する。まず、Ｍｏｄｅが「１」かどうかを判定し（Ｓ１）、Ｍｏｄｅが「０」のときはＳ９に進むが、Ｍｏｄｅが「１」のときは、入力されたインバータ出力電力ＰOUT が閾値Ｃより高いかどうかを判定する（Ｓ２）。インバータ出力電力ＰOUT が閾値Ｃより低いときは低日射量状態と判断してＳ３に進むが、インバータ出力電力ＰOUT が閾値Ｃより高いときは、高日射量状態と判断してタイマの時間ｔSUN を「Ｈ」にリセットし（Ｓ４）、再びＭｏｄｅを「１」にセットする（Ｓ１２）。そして、実行開始時に入力された変化量ｄＰOUT ／ｄＶPVを読み込んで「０」より大きいかどうかを判定する（Ｓ１３）。変化量ｄＰOUT ／ｄＶPVが「０」より大きいときは、太陽電池電圧ＶPVが最大電力点ＭＰＰの左側に位置していると判断して、前回の目標太陽電池電圧ＶPVref(k-1)に所定値Ｄを加算し、その値を目標太陽電池電圧ＶPVref として加算器１４に設定する（Ｓ１４）。また、変化量ｄＰOUT ／ｄＶPVが「０」より小さいときは、太陽電池電圧ＶPVが最大電力点ＭＰＰの右側に位置していると判断して、前回の目標太陽電池電圧ＶPVref(k-1)から所定値Ｄを減算し、その値を目標太陽電池電圧ＶPVref として加算器１４に設定する（Ｓ１５）。この目標太陽電池電圧ＶPVref を時間ｔ２毎に繰り返し設定することにより、太陽電池電圧ＶPVは、ほぼ最大電力点ＭＰＰ付近となる。
【００１８】
また、目標太陽電池電圧算出部１３は、Ｓ２において、インバータ出力電力ＰOUT が閾値Ｃより低いと判断したとき（低日射量状態）、先にリセットした時間ｔSUN から「１」を減算し（Ｓ３）、その時間ｔSUN が「０」になったかどうかを判定する（Ｓ５）。時間ｔSUN が「０」でないときは、Ｓ１２に進んで高日射量状態と同じ動作を繰り返す。これは、天候が低日射量状態に変わっても高日射状態に戻る可能性があるためである。時間ｔSUN が「０」になるまで低日射量状態が続いた場合は、タイマの時間ｔSUN を「Ｈ」よりも短い「Ｌ」にセットし（Ｓ６）、Ｍｏｄｅを「０」にセットする（Ｓ７）。この時、最大太陽電池電圧判別部１６によって選択された最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref とし（Ｓ８）、加算器１４に設定する。
【００１９】
また、目標太陽電池電圧算出部１３は、時間ｔ２が経過すると、前記と同様にＭｏｄｅが「１」かどうかを判定する（Ｓ１）。この時点では、Ｍｏｄｅが「０」であるため、Ｓ９においてインバータ出力電力ＰOUT が閾値Ｃより高いかどうかを判定し、インバータ出力電力ＰOUT が閾値Ｃより高いときは、天候が低日射量状態から高日射量状態に変わったと判断してＳ４に進むが、インバータ出力電力ＰOUT が閾値Ｃより低いときは、Ｓ６でセットした時間ｔSUN から「１」を減算し（Ｓ１０）、その時間ｔSUN が「０」になったかどうかを判定する（Ｓ１１）。時間ｔSUN が「０」になったときはＳ１２に進むが、時間ｔSUN が「０」でないときはＭｏｄｅ「０」を保持し（Ｓ７）、最大太陽電池電圧判別部１６によって選択された最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref とし（Ｓ８）、加算器１４に設定する。Ｍｏｄｅ＝０（低日射量状態）における最大電力点追従制御をｔ２毎に行っているうちに、Ｓ９においてインバータ出力電力ＰOUT が閾値Ｃより高いと判断したときは、タイマの時間ｔSUN を「Ｈ」にリセットしてからＭｏｄｅを「１」にセットし（Ｓ４、Ｓ１２）、また、Ｓ１１において時間ｔSUN が「０」になったことを確認したときは、Ｍｏｄｅを「１」にセットし（Ｓ１２）、高日射量時の最大電力点追従のための目標太陽電池電圧ＶPVref の算出に入る。
【００２０】
低日射量状態（Ｍｏｄｅ＝０）では、ある程度以上の太陽電池１の電力が得られないことがあり、その場合、最大電力点ＭＰＰの探索と追従が困難であるため、最大太陽電池電圧判別部１６によって選択された最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref としてほぼ一定にしている。これにより、太陽電池電圧ＶPVの震動が抑制されて収束方向へ向かい、ある程度の効率を維持することができる。また、Ｓ９においてインバータ出力電力ＰOUT が閾値Ｃより高いと判断したとき、あるいはＳ１１において時間ｔSUN が「０」になったことを確認したときは、Ｍｏｄｅを「１」にセットして目標太陽電池電圧ＶPVref の算出に入るようにしているのは、日射条件が時々刻々と変動することから、同一電圧での長時間の動作点固定は、最大電力点ＭＰＰからのずれが大きくなりうる可能性がある。この場合、一旦、Ｍｏｄｅ＝１（高日射状態）に移行し、再度、最大電力点ＭＰＰを与える最大太陽電池電圧ＶPVmax を得るようにしている。
【００２１】
以上のように実施の形態１によれば、Ｍｏｄｅ＝１（山登りモード）からＭｏｄｅ＝０（低日射モード）へ移行した際、最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref として設定するようにしたので、ＰＩＤ制御部１５を介したインバータ回路３の制御により太陽電池電圧ＶPVの振動は収束する。最大太陽電池電圧ＶPVmax はコンデンサ２を介したインバータ出力電力ＰOUT を基に算出しているため、理想の最大電力点ＭＰＰを与える太陽電池電圧ＶPVとはズレが生じるものの、図６に示すように最大電力点追従が困難な低日射量時でも太陽電池電圧ＶPVの振動を収束させることが可能になり、このため、電力取り出し効率が改善され、インバータ回路３の安定した動作を確保することができる。
【００２２】
なお、実施の形態１では、Ｍｏｄｅ＝０（低日射モード）のとき最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref として設定するようにしたが、最大太陽電池電圧ＶPVmax に上限値又は下限値を設けて、検出誤差等から太陽電池電圧ＶPVが最大電力点ＭＰＰから大きく逸脱しないようにしても良い。
【００２３】
また、電力変化量算出部１２により算出された変化量ｄＰOUT ／ｄＶPVの符号が反転したとき、そのときの太陽電池電圧ＶPVが太陽電池１の最大電力となる電圧値と判断して、その太陽電池電圧ＶPVが予め設定された上限値以下かどうかを判定し、上限値以下の太陽電池電圧ＶPVを記憶部１７に書き込むようにしても良い。これは、検出誤差等から最大太陽電池電圧ＶPVmax が最大電力点ＭＰＰから大きく逸脱しないようにするためである。
【００２４】
実施の形態２．
実施の形態１は、高日射量時（Ｍｏｄｅ＝１）に選択された最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref とし、これを低日射量状態のときに最大電力点追従制御に用いて、太陽電池電圧ＶPVを振動させることなく太陽電池１の最大電力点ＭＰＰに接近させるようにしたものであるが（図６参照）、実施の形態２では、最大太陽電池電圧ＶPVmax を選択する毎に、その電圧ＶPVmax を値に応じて補正をするようにしたもので、制御回路１０の最大太陽電池電圧判別部１６に、最大太陽電池電圧ＶPVmax を補正するための補正値Ｄ、上限値Ｖupper および下限値Ｖlower がそれぞれ設定されている。これ以外については実施の形態１と同様に、ある程度の日射量が得られる日中は山登りモード（Ｍｏｄｅ＝１）で最大電力点ＭＰＰの追従制御が行われている（図３参照）。また、最大電力点追従制御と同時に低日射量状態の検知が行われており、低日射量状態が所定時間（ｔsun ＝Ｈ）継続されたことを検知した場合は、低日射モード（Ｍｏｄｅ＝０）へ移行し、そして、山登りモードへの移行判定を随時行っている。
【００２５】
以下、図７および図８を用いて最大太陽電池電圧ＶPVmax の補正に関わる動作を説明する。図７は実施の形態２に係る太陽光発電システムの最大太陽電池電圧判別部の動作を示すフローチャート、図８は実施の形態２での最大電力点追従制御における太陽電池電圧ＶPVの波形図である。
最大太陽電池電圧判別部１６は、図７に示すように、ｔ１（数十ms程度）毎にＭｏｄｅが「１」かどうかを判定し（Ｓ２０）、Ｍｏｄｅが「０」のとき、これ以降の動作を行うことなく終了するが、Ｍｏｄｅが「１」のときは、そのときに電力変化量算出部１２により算出された変化量ｄＰOUT ／ｄＶPVの微分値を読み込んで、その微分値の符号が反転しているかどうかを判定する（Ｓ２１）。その微分値の符号が反転していないときは動作を終了するが、微分値の符号が反転しているときは、そのときの太陽電池電圧ＶPVが最大電力点ＭＰＰを与える電圧値と判断して、その太陽電池電圧ＶPVを記憶部１７に書き込む。この太陽電池電圧ＶPVを書き込む際に、記憶部１７に設けられた５つのエリア全てに太陽電池電圧ＶPVを書き込んでいた場合は、最も古い太陽電池電圧ＶPVをクリアにして、新しい太陽電池電圧ＶPVを保存するようにしている（Ｓ２２）。そして、記憶部１７への書き込みが５つになる毎に、その中から最大値の太陽電池電圧ＶPVを選択して最大太陽電池電圧ＶPVmax’ とする（Ｓ２３）。
【００２６】
そして、その最大太陽電池電圧ＶPVmax’ に予め設定された補正値Ｄを加算し（Ｓ２４）、その値ＶPVmax’＋Ｄ が上限値Ｖupper より低いかどうかを判定する（Ｓ２５）。ＶPVmax’＋Ｄ が上限値Ｖupper より低いときは、下限値Ｖlower よりも高いかどうかを判定する（Ｓ２７）。Ｓ２５においてＶPVmax’＋Ｄ が上限値Ｖupper より高いと判断したときは、その上限値Ｖupper を最大太陽電池電圧ＶPVmax とし（Ｓ２６）、目標太陽電池電圧算出部１３に送出する。また、Ｓ２７においてＶPVmax’＋ Ｄが下限値Ｖlower よりも低いと判断したときは、その下限値Ｖlower を最大太陽電池電圧ＶPVmax とし（Ｓ２８）、目標太陽電池電圧算出部１３に送出する。また、ＶPVmax’＋ Ｄが上限値Ｖupper より低く（Ｓ２５）、かつ、下限値Ｖlower よりも高いとき（Ｓ２７）、つまり、上限値Ｖupper と下限値Ｖlower の間にあるときは、Ｓ２４で算出したＶPVmax’＋Ｄ を最大太陽電池電圧ＶPVmax とし（Ｓ２９）、目標太陽電池電圧算出部１３に送出する。
【００２７】
前記の最大太陽電池電圧ＶPVmax は、実施の形態１と同様に、低日射量状態が所定時間（ｔsun ＝Ｈ）継続されてＭｏｄｅ＝０に移行した際に、目標太陽電池電圧算出部１３により目標太陽電池電圧ＶPVref として加算器１４に設定される。これ以降の動作については、前述した実施の形態１と同じであるため割愛する。
【００２８】
以上のように実施の形態２によれば、Ｍｏｄｅ＝１（山登りモード）からＭｏｄｅ＝０（低日射モード）へ移行した際、山登りモード時に算出された補正の最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref として設定するようにしたので、図８に示すように太陽電池電圧ＶPVの振動を収束させて、ほぼ太陽電池１の最大電力点ＭＰＰ上となり、このため、低日射量時の電力取り出し効率が改善され、インバータ回路３の安定した動作を確保できる。
【００２９】
なお、実施の形態２では、記憶部１７に書き込まれた５つの太陽電池電圧ＶPVから最大太陽電池電圧ＶPVmax’ を選択した際に、一定の補正値Ｄを加算するようにしたが、補正値Ｄを乗算器１１によって算出されるインバータ出力電力ＰOUT に比例して変更するようにインバータ出力電力ＰOUT の関数としても良い。
【００３０】
実施の形態３．
実施の形態３は、図２で説明した制御回路１０の最大太陽電池電圧判別部１６が異なるだけであるため、最大太陽電池電圧判別部１６についてのみ図９に示すフローチャートに基づいて説明をする。
実施の形態３における制御回路１０の最大太陽電池電圧判別部１６は、ｔ１（数十ms程度）毎にＭｏｄｅが「１」かどうかを判定し（Ｓ３０）、Ｍｏｄｅが「０」のとき、これ以降の動作を行うことなく終了するが、Ｍｏｄｅが「１」のときは、そのときに電力変化量算出部１２によって算出された変化量ｄＰOUT ／ｄＶPVを読み込んで、変化量ｄＰOUT ／ｄＶPVの絶対値が所定値Ｅより小さいかどうかを判定する（Ｓ３１）。絶対値が所定値Ｅより大きいときはＳ３２に進むことなく動作を終了するが、絶対値が所定値Ｅより小さいときは、そのときの太陽電池電圧ＶPVが最大電力点ＭＰＰを与える電圧値とみなして、上限値Ｖu-bound より小さいかどうかを判定する（Ｓ３２）。この上限値Ｖu-bound は、ノイズや日射急変等の外乱により、Ｓ３１の判断だけでは太陽電池電圧ＶPVとして真の最大電力点ＭＰＰを与える太陽電池動作点電圧と異なる値がデータとして記憶部１７に書き込まれる可能性を回避するために、最大電力点ＭＰＰを与えるとみなした太陽電池電圧ＶPVの上限を規定するものである。
【００３１】
Ｓ３２において、太陽電池電圧ＶPVが上限値Ｖu-bound より大きいと判断したときはＳ３３に進むことなく動作を終了するが、太陽電池電圧ＶPVが上限値Ｖu-bound より小さいと判断したときは、記憶部１７に書き込む。太陽電池電圧ＶPVを書き込む際に、記憶部１７に設けられた５つのエリア全てに太陽電池電圧ＶPVを書き込んだ場合、最も古い太陽電池電圧ＶPVをクリアにして、新しい太陽電池電圧ＶPVを保存するようにしている（Ｓ２２）。そして、記憶部１７への書き込みが５つになる毎に、その中から例えば２番目に大きい太陽電池電圧ＶPVを選択し（Ｓ３４）、選択した太陽電池電圧ＶPVに補正値を加算し（Ｓ３５）、その加算値ＶPVmax’ を最大太陽電池電圧ＶPVmax として目標太陽電池電圧算出部１３に送出する。
【００３２】
以上のように実施の形態３によれば、Ｍｏｄｅ＝１（山登りモード）からＭｏｄｅ＝０（低日射モード）へ移行した際、山登りモード時に算出された補正の最大太陽電池電圧ＶPVmax を目標太陽電池電圧ＶPVref として設定するようにしたので、図８に示すように太陽電池電圧ＶPVの振動を収束させて、ほぼ太陽電池１の最大電力点ＭＰＰ上となり、このため、低日射量時の電力取り出し効率が改善され、インバータ回路３の安定した動作を確保できる。
【００３３】
なお、実施の形態３では、太陽電池電圧ＶPVを記憶部１７から選択する際、５つの太陽電池電圧ＶPVの中から２番目に大きい太陽電池電圧ＶPVを選択するようにしたが、これに限定されるものではなく、例えば３番目に大きい太陽電池電圧ＶPVを選択して補正値を加算するようにしても良い。また、選択した太陽電池電圧ＶPVに補正値を加算するようにしたが、補正値で減算するようにしても良い。
【００３４】
また、補正した太陽電池電圧ＶPVが予め設定された上限値より大きいとき、上限値を最大太陽電池電圧ＶPVmax として用いるようにしても良いし、また、補正した太陽電池電圧ＶPVが予め設定された下限値を下回ったとき、下限値を最大太陽電池電圧ＶPVmax として用いるようにしても良い。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施の形態１に係る太陽光発電システムの概略構成を示す回路図である。
【図２】実施の形態１に係る太陽光発電システムの制御回路の構成を示すブロック図である。
【図３】実施の形態１に係る太陽光発電システムの目標太陽電池電圧算出部の動作を示すフローチャートである。
【図４】最大太陽電池電圧判別部の動作を示すフローチャートである。
【図５】山登りモードにおける太陽電池電圧ＶPVとインバータ出力電力ＰOUT の相関を示す波形図である。
【図６】実施の形態１での最大電力点追従制御における太陽電池電圧ＶPVの波形図である。
【図７】実施の形態２に係る太陽光発電システムの最大太陽電池電圧判別部の動作を示すフローチャートである。
【図８】実施の形態２での最大電力点追従制御における太陽電池電圧ＶPVの波形図である。
【図９】実施の形態３に係る太陽光発電システムの最大太陽電池電圧判別部の動作を示すフローチャートである。
【図１０】太陽電池電圧と太陽電池電力の相関を示す図である。
【図１１】従来の最大電力点追従制御における太陽電池電圧の波形図である。
【符号の説明】
【００３６】
１  太陽電池、２  コンデンサ、３  インバータ回路、４  商用電力系統、５  太陽電池電圧検出部、６  インバータ出力電圧検出部、７  インバータ出力電流検出部、１０  制御回路、１１  乗算器、１２  電力変化量算出部、１３  目標太陽電池電圧算出部、１４  加算器、１５  ＰＩＤ制御部、１６  最大太陽電池電圧判別部、１７  記憶部。
【図１】
2008226870.tif 000003
【図２】
2008226870.tif 000004
【図３】
2008226870.tif 000005
【図４】
2008226870.tif 000006
【図５】
2008226870.tif 000007
【図６】
2008226870.tif 000008
【図７】
2008226870.tif 000009
【図８】
2008226870.tif 000010
【図９】
2008226870.tif 000011
【図１０】
2008226870.tif 000012
【図１１】
2008226870.tif 000013