(57)【要約】【課題】従来技術の山登り法では、太陽電池のパネルの一部に影が生じて、太陽電池の出力に複数の極大値が発生すると最大電力への追従ができなくなる。【解決手段】日射状態の変化に追従して太陽電池出力設定値を適正値に制御する太陽光発電システムの制御方法において、太陽電池出力設定値を遺伝子と見なしかつ出力電力を遺伝子の評価値とし、複数個の遺伝子を無作為に抽出し各遺伝子に対応する出力電力を評価値として、記憶、選択しかつ交叉・突然変異を繰り返して出力電圧の最大と最小との差を所定範囲まで収束させる遺伝的アルゴリズム工程と、収束した出力電圧の最大値に応じた太陽電池出力設定値と所定量大きいと小さい値とを設定し、この値に応じた出力電力の一番大きい値を選択し、この動作を繰り返して出力電力の最大値を追従する山登り工程とを具備したことを特徴とする太陽光発電システムの制御方法である。【選択図】図１
2006107425.tif 000002
【特許請求の範囲】
【請求項１】
太陽電池からの出力電圧又は出力電流が予め定めた太陽電池出力設定値と略等しくなるようにインバータを制御し、日射状態の変化に伴う太陽電池電圧−電力特性の変動に
追従して太陽電池からの出力電力値が略最大値になるように前記太陽電池出力設定値を適正値に制御する太陽光発電システムの制御方法において、
前記太陽電池出力設定値を遺伝子と見なしかつ太陽電池からの出力電力値を遺伝子の評価値とする遺伝的アルゴリズムに基づくＧＡ制御器を具備し、第１ステップでは前記太陽電池出力設定値の設定範囲から複数個の遺伝子を無作為又は予め定めた条件に基づいて抽出して第１世代の初期集団を形成し、この初期集団の各遺伝子に対応する各太陽電池出力設定値によって前記インバータを順次動作させると共に動作中の太陽電池からの出力電力値を各遺伝子の評価値として記憶し、続いて前記初期集団の各遺伝子を前記ＧＡ制御器に入力し各遺伝子の評価値によって選択しかつ交叉・突然変異させて所定個数の遺伝子を出力して第２世代集団を形成し、第２ステップでは前記第２世代集団の各遺伝子に対応する各太陽電池出力設定値によって前記インバータを順次動作させると共に動作中の太陽電池からの出力電力値を各遺伝子の評価値として記憶し、続いて前記第２世代遺伝子を前記ＧＡ制御器に入力し各遺伝子の評価値によって選択しかつ交叉・突然変異させて所定個数の遺伝子を出力して第３世代集団を形成し、以後前記第２ステップの動作を繰り返して各遺伝子を収束させて遺伝子集団の世代を新しくし、前記各遺伝子に応じた太陽電池出力設定値の最大値と最小値との差が所定の範囲になるまで前記各遺伝子を収束させる遺伝的アルゴリズム工程と、
続いて、前記収束した遺伝子の中で評価値が最も大きい遺伝子に対応した太陽電池出力設定値を基準太陽電池出力設定値とし、この基準太陽電池出力設定値より所定量大きい値及び所定量小さい値を生成し、前記３つの太陽電池出力設定値によってインバータを順次動作させると共に出力電力値が最も大きい前記太陽電池出力設定値を次の前記基準太陽電池出力設定値として設定し、以後このステップの動作を繰り返し、前記太陽電池電圧−電力特性の変動に対応するために予め設定された切換条件を満たしたときは前記遺伝的アルゴリズム工程に戻す山登り工程と、
を具備したことを特徴とする太陽光発電システムの制御方法。
【請求項２】
前記太陽光発電システムの制御を開始する際に、予め定めた太陽電池出力設定値を前記基準太陽電池出力設定値として前記山登り工程を前記遺伝的アルゴリズム工程に先立って行う請求項１記載の太陽光発電システムの制御方法。
【請求項３】
前記山登り工程の切換条件を、前記山登り工程の動作時間が所定時間に達したときとする請求項１又は請求項２記載の太陽光発電システムの制御方法。
【請求項４】
前記山登り工程の切換条件を、前記出力電力値が前回ステップの前記出力電力値よりも所定値以上変化したときとする請求項１又は請求項２記載の太陽光発電システムの制御方法。
【請求項５】
前記山登り工程の切換条件を、前記出力電力値が前ステップの前記出力電力値よりも所定値以上変化し、かつ、前記山登り工程の動作時間が所定時間に達したときとする請求項１又は請求項２記載の太陽光発電システムの制御方法。
【請求項６】
前記山登り工程から前記遺伝的アルゴリズム工程に移行する際に、前記山登り工程の最後のステップによる前記基準太陽電池出力設定値に対応する遺伝子を含めて前記初期集団を形成する請求項１乃至５のいずれかに記載の太陽光発電システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、太陽電池からの出力電力値が略最大値となるように制御する太陽光発電システムに係り、特に太陽電池のパネル面の日射量の不均一によって生じる出力電力の複数の極大値の最大電力を精度良く追従する技術に関するものである。
【背景技術】
【０００２】
図５は、従来技術の太陽光発電システムのブロック図である。同図において、ＳＣ１乃至ＳＣ３は太陽電池で、例えば３枚並列に接続されている。ＰＴは太陽電池の出力電圧を検出する出力電圧検出回路、ＣＴは太陽電池の出力電流を検出する出力電流検出回路、ＣＣはマイクロプロセッサにより山登り法を用いたＭＰＰＴ制御（Ｍａｘｉｍｕｍ  Ｐｏｗｅｒ  Ｐｏｉｎｔ  Ｔｒａｃｋｉｎｇ）（以後、山登り法ＨＣと言う）を行なうコントローラである。このマイクロプロセッサＣＣには、太陽電池の出力電圧値及び出力電流値を読み込むためのＡ／Ｄ変換器が内蔵されている。ＩＮは太陽電池からの直流出力を電圧に変換するＤＣ／ＡＣインバータ回路（又はＤＣ／ＤＣコンバータ回路）、ＡＤは負荷、ＳＰは商用の系統電源である。ここで、コントローラＣＣのマイクロプロセッサは太陽電池ＳＣの出力電圧と出力電流とを乗算することによって太陽電池ＳＣからの出力電力を算出し、メモリー内にその電圧、電力値を記憶する。また、コントローラＣＣはパルス幅制御回路ＰＷＭを介してＤＣ／ＡＣインバータ回路ＩＮの出力を制御し、太陽電池ＳＣからの出力電圧を制御することができる。
【０００３】
図６は、従来技術の太陽光発電システムの山登り法を説明するためのフローチャートであり、このフローチャートと図７に示す極大値を追従する図を参照しながら動作を説明する。
【０００４】
図７に示す、電力−電圧特性の所定の動作点Ａに応じた太陽電池出力設定値を初期値とする（ステップＳ１）。この初期値を第１の太陽電池出力設定値としてインバータを動作させて第１の太陽電池出力電圧Ｖ１を測定する（ステップＳ２）。上記第１の太陽電池出力設定値に応じて出力される第１の太陽電池出力電流Ｉ１を測定する（ステップＳ３）。コントローラＣＣのマイクロプロセッサは、上記第１の太陽電池出力電圧Ｖ１と第１の太陽電池出力電流Ｉ１とを乗算して第１の太陽電池出力電力Ｗ１を算出し、メモリーに上記第１の太陽電池出力電圧Ｖ１及び第１の太陽電池出力電力Ｗ１の値を記憶する（ステップＳ４）。
【０００５】
次に、第１の太陽電池出力設定値より所定量大きい第２の太陽電池出力設定値を設定してインバータを動作させ、図７に示す第１の太陽電池出力電圧Ｖ１を第２の太陽電池出力電圧Ｖ２へと上昇させる（ステップＳ５）。
【０００６】
上記第２の太陽電池出力設定値に応じて出力される第２の太陽電池出力電流Ｉ２を測定する（ステップＳ６）。コントローラＣＣのマイクロプロセッサは、上記第２の太陽電池出力電圧Ｖ２と第２の太陽電池出力電流Ｉ２とを乗算して第２の太陽電池出力電力Ｗ２を算出し、メモリーに上記第２の太陽電池出力電圧Ｖ２及び第２の太陽電池出力電力Ｗ２の値を記憶する（ステップＳ７）。
【０００７】
続いて、第１の太陽電池出力設定値より所定量小さい第３の太陽電池出力設定値を設定してインバータを動作させて、図７に示す第１の太陽電池出力電圧Ｖ１を第３の太陽電池出力電圧Ｖ３へと降下させる（ステップＳ８）。
【０００８】
上記第３の太陽電池出力設定値に応じて出力される第３の太陽電池出力電流Ｉ３を測定する（ステップＳ９）。コントローラＣＣのマイクロプロセッサは、上記第３の太陽電池出力電圧Ｖ３と第３の太陽電池出力電流Ｉ３とを乗算して第３の太陽電池出力電力Ｗ３を算出し、メモリーに上記第３の太陽電池出力電圧Ｖ３と第３の太陽電池出力電力Ｗ３との値を記憶する（ステップＳ１０）。
【０００９】
上記より記憶された、図７に示す太陽電池出力電圧Ｖ１、Ｖ２、Ｖ３（Ｖ３＜Ｖ１＜Ｖ２）における出力電力値Ｗ１、Ｗ２、Ｗ３の相互の大小を比較し、最も出力電力値が大きかった点Ｂへ動作点Ａを移動し、この一連の操作を繰り返すことにより、図７に示す最大電力点ＭＰ１へと動作点の追従を行なう。上述の技術を開示した山登り法の先行文献として、例えば、特許文献１がある。
【００１０】
【特許文献１】特開２００１−３２５０３１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来技術の山登り法では、図７に示すように、動作点Ａを任意の初期値に設定し、この動作点Ａ（基準太陽電池出力設定値）での出力電力値する。次に、強制的に動作点Ａを所定値だけ高い方に移動させ、その動作点での出力電力値を求める。同様に、所定値だけ低い方へ移動させ、出力電力値を求める。このようにして求めた３点の動作点での出力電力値を比較して電力値が大きい点Ｂ（次の基準太陽電池出力設定値）へと動作点Ａを移動する。この一連の操作を繰り返すことによって、最大電力点ＭＰ１を追従する。
【００１２】
しかし、太陽電池の日射状態が変化してパネルの一部に影が生じると、図７に示すように、電圧−電力特性には例えば２つの極大値ＬＰ、ＭＰ２を持つ大小の山が生じる。このような場合には、初期の動作点をＣに設定して山登り法で最大電力点を追従すると、大きい山の極大値ＭＰ２を最大電力点として追従することができる。しかし、初期の動作点をＡに設定して最大電力点を追従すると小さい山の極大値ＬＰを最大電力点であると誤認して追従し、大きい山ＭＰ２への最大電力点の追に失敗してしまう。
【００１３】
さらに、太陽電池の日射状態が複雑に変化してパネルの数ヶ所に影が生じ、電圧−電力特性に図示省略の３つ以上の複雑な極大値が発生すると、従来の山登り法では最大電力点の追従がほぼ不可能となり、太陽光発電システムは最大電力で運転できなくなる。
【００１４】
そこで、本発明では、上記課題を解決することができる太陽光発電システムの制御方法を提供する。
【課題を解決するための手段】
【００１５】
上述した課題を解決するために、第１の発明は、太陽電池からの出力電圧又は出力電流が予め定めた太陽電池出力設定値と略等しくなるようにインバータを制御し、日射状態の変化に伴う太陽電池電圧−電力特性の変動に
追従して太陽電池からの出力電力値が略最大値になるように前記太陽電池出力設定値を適正値に制御する太陽光発電システムの制御方法において、
前記太陽電池出力設定値を遺伝子と見なしかつ太陽電池からの出力電力値を遺伝子の評価値とする遺伝的アルゴリズムに基づくＧＡ制御器を具備し、第１ステップでは前記太陽電池出力設定値の設定範囲から複数個の遺伝子を無作為又は予め定めた条件に基づいて抽出して第１世代の初期集団を形成し、この初期集団の各遺伝子に対応する各太陽電池出力設定値によって前記インバータを順次動作させると共に動作中の太陽電池からの出力電力値を各遺伝子の評価値として記憶し、続いて前記初期集団の各遺伝子を前記ＧＡ制御器に入力し各遺伝子の評価値によって選択しかつ交叉・突然変異させて所定個数の遺伝子を出力して第２世代集団を形成し、第２ステップでは前記第２世代集団の各遺伝子に対応する各太陽電池出力設定値によって前記インバータを順次動作させると共に動作中の太陽電池からの出力電力値を各遺伝子の評価値として記憶し、続いて前記第２世代遺伝子を前記ＧＡ制御器に入力し各遺伝子の評価値によって選択しかつ交叉・突然変異させて所定個数の遺伝子を出力して第３世代集団を形成し、以後前記第２ステップの動作を繰り返して各遺伝子を収束させて遺伝子集団の世代を新しくし、前記各遺伝子に応じた太陽電池出力設定値の最大値と最小値との差が所定の範囲になるまで前記各遺伝子を収束させる遺伝的アルゴリズム工程と、
続いて、前記収束した遺伝子の中で評価値が最も大きい遺伝子に対応した太陽電池出力設定値を基準太陽電池出力設定値とし、この基準太陽電池出力設定値より所定量大きい値及び所定量小さい値を生成し、前記３つの太陽電池出力設定値によってインバータを順次動作させると共に出力電力値が最も大きい前記太陽電池出力設定値を次の前記基準太陽電池出力設定値として設定し、以後このステップの動作を繰り返し、前記太陽電池電圧−電力特性の変動に対応するために予め設定された切換条件を満たしたときは前記遺伝的アルゴリズム工程に戻す山登り工程と、
を具備したことを特徴とする太陽光発電システムの制御方法である。
【００１６】
また、第２の発明は、前記太陽光発電システムの制御を開始する際に、予め定めた太陽電池出力設定値を前記基準太陽電池出力設定値として前記山登り工程を前記遺伝的アルゴリズム工程に先立って行う第１の発明記載の太陽光発電システムの制御方法である。
【００１７】
また、第３の発明は、前記山登り工程の切換条件を、前記山登り工程の動作時間が所定時間に達したときとする第１又は第２の発明記載の太陽光発電システムの制御方法である。
【００１８】
また、第４の発明は、前記山登り工程の切換条件を、前記出力電力値が前回ステップの前記出力電力値よりも所定値以上変化したときとする第１又は第２の発明記載の太陽光発電システムの制御方法である。
【００１９】
また、第５の発明は、前記山登り工程の切換条件を、前記出力電力値が前ステップの前記出力電力値よりも所定値以上変化し、かつ、前記山登り工程の動作時間が所定時間に達したときとする第１又は第２の発明記載の太陽光発電システムの制御方法である。
【００２０】
また、第６の発明は、前記山登り工程から前記遺伝的アルゴリズム工程に移行する際に、前記山登り工程の最後のステップによる前記基準太陽電池出力設定値に対応する遺伝子を含めて前記初期集団を形成する第１乃至第５の発明のいずれかに記載の太陽光発電システムの制御方法である。
【発明の効果】
【００２１】
第１乃至第６の発明によれば、太陽電池の日射状態が変化してパネルの一部に影が生じ太陽電池電圧−電力特性に複数の極大値が発生しても、遺伝的アルゴリズム工程により最大極大値近傍を探索し、山登り工程により速やかに最大極大値に到達することができる。したがって、日射状態の変化に伴う最大出力電力点の移動に応答よく追従することができる。
【００２２】
さらに、第２の発明によれば、最初に山登り工程から始めることによって、太陽光発電システムの制御開始時において太陽電池パネルに影がかからない場所に設置される場合等には、制御開始時の最大出力電力点への到達を速やかにすることができる。
【００２３】
さらに、第５の発明によれば、日射状態の変化を検知しかつ山登り工程の動作時間が所定値に達したときに遺伝的アルゴリズム工程に切り換える。このために、山登り工程が短時間になることが多発するのを防止することができ、太陽光発電システムの総合効率を高めることができる。
【００２４】
さらに、第６の発明によれば、評価値の高い遺伝子を初期集団に含ませることによって、遺伝的アルゴリズム工程の収束速度を向上させることができる。
【発明を実施するための最良の形態】
【００２５】
［実施の形態１］
図１は、本発明の実施の形態に係る太陽光発電システムのブロック図である。同図において、図５に示す従来技術の太陽光発電システムのブロック図と同一符号は、同一動作を行なうので説明は省略し、符号が相違する構成について説明する。
【００２６】
図１に示す太陽光発電システムのブロック図において、コントローラＣＣは、遺伝的アルゴリズム制御（ＧＡ）と山登り制御（ＨＣ）とを行なうコントローラであって、マイクロプロセッサによって処理される。ここで、コントローラＣＣのマイクロプロセッサは、太陽電池ＳＣの出力電圧と出力電流とを乗算することによって太陽電池ＳＣの出力電力を算出し、メモリー内にその出力電圧、出力電力値を記憶する。また、コントローラＣＣはパルス幅制御回路ＰＷＭを介してＤＣ／ＡＣインバータＩＮの出力を制御して、太陽電池ＳＣからの出力電圧を制御する。
【００２７】
次に、遺伝的アルゴリズム制御（ＧＡ）について説明する。図示省略の太陽電池出力設定値を遺伝子と見なし、かつ太陽電池からの出力電力値を遺伝子の評価値として記憶する。続いて、太陽電池出力設定値の設定範囲から複数個の遺伝子を無作為に抽出して初期集団を形成する。続いて、これらの遺伝子を評価値によって選択し、かつ交叉・突然変異させて所定個数の遺伝子を生成して第２世代集団を形成する。この動作を繰り返すことによって次々と遺伝子集団の世代を更新し、世代集団を形成する各遺伝子に応じた太陽電池出力設定値の最大値と最小値との差が所定の範囲になるまで収束させる。
【００２８】
続いて、山登り制御（ＨＣ）について説明する。上記遺伝的アルゴリズムによって所定の範囲に収束した状態において評価値（出力電力値）が最大の遺伝子を選択し、この遺伝子に応じた太陽電池出力設定値を初期の基準太陽電池出力設定値とする。以下の動作は図６で上述した動作と同一である。まず、この初期の基準太陽電池出力設定値によってインバータを動作させると共に、動作中の太陽電池からの出力電力値を算出して記憶する。次に、上記第１の基準太陽電池出力設定値より所定量大きい太陽電池出力設定値の出力電力値を算出して記憶し、続いて、上記第１の基準太陽電池出力設定値より所定量小さい太陽電池出力設定値の出力電力値を算出して記憶する。そして、上記記憶した３つの出力電力値の大小を比較して一番大きい出力電力値の太陽電池出力設定値を次の基準太陽電池出力設定値とする。以後、上記の動作を繰り返して太陽電池からの出力電力値が略最大値となる太陽電池出力設定値に収束させる。そして、日射状態の変化に伴う太陽電池電圧−電力特性の変動に対応するために、予め設定された切換条件を満たしたときは上記の遺伝的アルゴリズム制御に戻す。切換条件としては、後述するように、山登り制御の動作時間が所定値に達したとき、太陽電池電圧−電力特性の大きな変動を検知したとき、所定時刻になったとき、気温が大きく変化したとき、照度が大きく変化したとき等がある。
【００２９】
図２は、本発明の実施の形態１の動作を説明するフローチャートである。このフローチャートと図３の極大値を追従する図とを参照しながら動作を説明する。
【００３０】
太陽電池出力設定値の設定範囲からｎ個の遺伝子を無作為に抽出する（ステップＴ１）。そして、カウンタｉに１を設定する（ステップＴ２）。
【００３１】
上記ｎ個の遺伝子のうち所定の遺伝子に対応する太陽電池出力設定値を第１の太陽電池出力設定値とし、上記第１の太陽電池出力設定値によってインバータを動作させて第１の太陽電池出力電圧Ｖ１を測定する（ステップＴ３）。上記第１の太陽電池出力設定値に応じて出力される第１の太陽電池出力電流Ｉ１を測定する（ステップＴ４）。コントローラＣＣのマイクロプロセッサは、上記第１の太陽電池出力電圧Ｖ１と第１の太陽電池出力電流Ｉ１とを乗算して第１の太陽電池出力電力Ｗ１を算出してメモリーに記憶する（ステップＴ５）。そして、カウンタｉに１を加算する（ステップＴ６）。
【００３２】
次に、太陽電池出力設定値ｎ個（例えば、１０個）の出力電力を全て測定したかを判別して、Ｎｏの場合にはステップＴ３に戻り、上記残りのｎ−１個の遺伝子のうち所定の遺伝子に対応する太陽電池出力設定値を第２の太陽電池出力設定値とし、上記第２の太陽電池出力設定値によってインバータを動作させて第２の太陽電池出力電圧Ｖ２を測定する（ステップＴ３）。上記第２の第太陽電池出力設定値に応じて出力される第２の太陽電池出力電流Ｉ２を測定する（ステップＴ４）。コントローラＣＣのマイクロプロセッサは、第２の太陽電池出力電圧Ｖ２と第２の太陽電池出力電流Ｉ２とを乗算して第２の太陽電池出力電力Ｗ２を算出してメモリーに記憶する（ステップＴ４）。続いて、カウンタｉに１を加算する（ステップＴ６）。
【００３３】
以後同様の動作を繰り返し、第ｎの太陽電池出力設定値に応じた第ｎの太陽電池出力電流Ｉｎを測定し、第ｎの太陽電池出力電力Ｗｎを算出してメモリーに記憶し、図３（Ａ）に示す第１世代の初期集団を形成する（ステップＴ７）。
【００３４】
次に、上記初期集団のうち、無作為に遺伝子２個を抽出して評価値である太陽電池出力電力値の大きい方を選択し、上記選択を繰り返して２個の遺伝子を選択する（ステップＴ８）。
【００３５】
上記選択した２個の遺伝子の評価値を２進数の文字列に変換し、予め定めた確率である任意点で交叉させて新たに２個の遺伝子を生成する（ステップＴ９）。
【００３６】
上記交叉した遺伝子に対して、予め定めた低い確率で意図的に文字列の一部を変化させて突然変異を行なう（ステップＴ１０）。
【００３７】
上記選択と交叉との回数がｎ／２（例えば１０／２）以下のとき、ステップＴ８に戻る（ステップＴ１１）。上記選択、交叉及び突然変異の回数がｎ／２のときは、ステップ１２に進み、以後、上記の動作を繰り返して遺伝子集団の世代を新しくして各遺伝子を収束させる。図３（Ｂ）に示す第ｎ世代の集団が形成され、この第ｎ世代集団の各遺伝子に応じた太陽電池出力電圧（太陽電池出力設定値）の最大値と最小値との差ΔＶが所定の範囲になるまで上述の動作を繰り返し、上記所定の範囲になるとステップＴ１３に進む（ステップ１２）。
【００３８】
上記遺伝的アルゴリズム工程によって収束した各遺伝子の中で評価値が最も大きい遺伝子に応じた太陽電池出力設定値を初期の基準太陽電池出力設定値とし、この基準太陽電池出力設定値を第１の太陽電池出力設定値とする（ステップＴ１３）。
【００３９】
上記第１の太陽電池出力設定値（基準太陽電池出力設定値）に応じてインバータを動作させて、図３（Ｃ）に示す、第１の太陽電池出力電圧Ｖ１を測定する（ステップＴ１４）。上記第１の太陽電池出力設定値に応じて出力される第１の太陽電池出力電流Ｉ１を測定する（ステップＴ１５）。コントローラＣＣのマイクロプロセッサは、上記第１の太陽電池出力電圧Ｖ１と第１の太陽電池出力電流Ｉ１とを乗算して第１の太陽電池出力電力Ｗ１を算出し、メモリーに上記第１の太陽電池出力電圧Ｖ１と第１の太陽電池出力電力Ｗ１との値を記憶する（ステップＴ１６）。
【００４０】
次に、第１の太陽電池出力設定値より所定量大きい第２の太陽電池出力設定値を設定してインバータを動作させると、図３（Ｃ）に示すように、太陽電池出力電圧は第２の太陽電池出力電圧Ｖ２となる（ステップＴ１７）。
【００４１】
上記第２の太陽電池出力設定値に応じて出力される第２の太陽電池出力電流Ｉ２を測定する（ステップＴ１８）。コントローラＣＣのマイクロプロセッサは、上記第２の太陽電池出力電圧Ｖ２と第２の太陽電池出力電流Ｉ２とを乗算して第２の太陽電池出力電力Ｗ２を算出し、メモリーに上記第２の太陽電池出力電圧Ｖ２と第２の太陽電池出力電力Ｗ２との値を記憶する（ステップＴ１９）。
【００４２】
続いて、上記第１の太陽電池出力設定値より所定量小さい第３の太陽電池出力設定値を設定してインバータを動作させると、図３（Ｃ）に示すように、太陽電池出力電圧は第３の太陽電池出力電圧Ｖ３となる（ステップＴ２０）。
【００４３】
上記第３の太陽電池出力設定値に応じて出力される第３の太陽電池出力電流Ｉ３を測定する（ステップＴ２１）。コントローラＣＣのマイクロプロセッサは、上記第３の太陽電池出力電圧Ｖ３と第３の太陽電池出力電流Ｉ３とを乗算して第３の太陽電池出力電力Ｗ３を算出して、メモリーに上記第３の太陽電池出力電圧Ｖ３と第３の太陽電池出力電力Ｗ３との値を記憶する（ステップＴ２２）。
【００４４】
上記より記憶された、図３（Ｃ）に示す太陽電池出力電圧Ｖ１、Ｖ２、Ｖ３（Ｖ３＜Ｖ１＜Ｖ２）における出力電力値Ｗ１、Ｗ２、Ｗ３の相互の大小を比較して一番大きい出力電力値に応じた太陽電池出力設定値を選択し次の基準太陽電池出力設定値とする。上記動作を繰り返して次々と新しい基準太陽電池出力設定値を生成して最大電力点を追従する。
【００４５】
上述の遺伝的アルゴリズム工程によって複数の極大値の中で一番大きい極大値近傍に到達し、続いてこの最大極大値近傍の値を用いて山登り工程を行ない速やかに最大極大値に到達する。
【００４６】
続いて、上記山登り工程が予め定めた切換条件満たすと、上記遺伝的アルゴリズム工程のステップＴ１に戻る（ステップＴ２４）。この切換条件の例は上述した通りであり、日射状態（影の状態）の変化に伴う太陽電池電圧−電力特性の変動に追従することができる。すなわち、図４（Ａ）に示すように、日射状態が変化して太陽電池電圧−電力特性における複数の極大値の形状に変化が生じた場合、上記遺伝的アルゴリズム工程に戻し新たな最大極大値近傍を探索する。
【００４７】
以後、図２に示すフローチャートの動作を繰り返し、図４（Ｂ）に示すように、遺伝子集団の世代を新しくし、この第ｎ世代集団の各遺伝子に応じた太陽電池出力電圧（太陽電池出力設定値）の最大値と最小値との差ΔＶが所定の範囲になるまで上述の動作を繰り返す。
【００４８】
次に、図４（Ｃ）に示すように、太陽電池出力電圧Ｖ１、Ｖ２、Ｖ３（Ｖ３＜Ｖ１＜Ｖ２）における出力電力値Ｗ１、Ｗ２、Ｗ３の相互の大小を比較して一番大きい出力電力値に応じた基準太陽電池出力設定値を設定し、上記動作を繰り返して次々と新しい基準太陽電池出力設定値を生成して最大電力点を追従する。
【００４９】
［実施の形態２］
本発明の実施の形態２は、実施の形態１において、太陽光発電システムの制御を開始する際に、予め定めた太陽電池出力設定値を初期の基準太陽電池出力設定値として山登り工程を遺伝的アルゴリズム工程に先立って行うものである。すなわち、実施の形態２では、上述した図２において、ステップＴ１からの遺伝的アルゴリズム工程に先立って、ステップＴ１３〜Ｔ２４の山登り工程を追加的に実施するものである。このときに、最初のステップＴ１３では、初期の基準太陽電池出力設定値を予め設定する。
【００５０】
太陽光発電システムは太陽が昇る朝に制御を開始する。この開始時点において太陽電池パネルの設置場所から見て太陽電池パネルの一部に影がかかる心配がないのであれば、最初に山登り工程を行う実施の形態２の方が最大出力電力点に速やかに到達することができる。そして、日射状態の変化に伴って太陽電池電圧−電力特性が変動したときは、遺伝的アルゴリズム工程に切り換えて複数の極大値の中から最大極大値近傍を探索する。
【００５１】
［実施の形態３］
本発明の実施の形態３は、実施の形態１又は２において、山登り工程の切換条件を、山登り工程の動作時間が所定時間に達したときとするものである。すなわち、実施の形態３では、上述した図２において、ステップＴ２４の切換条件を「山登り工程の動作時間が所定時間に達したとき」とするものである。実施の形態３では、山登り工程の動作時間が所定値に達すると、その間に日射状態が変化して太陽電池電圧−電力特性が変動し最大出力電力点が移動している可能性があるので、遺伝的アルゴリズム工程に切り換える。これによって、複数の極大値の中から最大極大値近傍を探索することができ、常に最大出力電力点を追従することができる。
【００５２】
［実施の形態４］
本発明の実施の形態４は、実施の形態１又は２において、山登り工程の切換条件を、出力電力値が前回ステップの出力電力値よりも所定値以上変化したときとするものである。すなわち、実施の形態４では、上述した図２において、ステップＴ２４の切換条件を「出力電力値が前回ステップの出力電力値よりも所定値以上変化したとき」とするものである。実施の形態４では、日射状態が変化して太陽電池電圧−電力特性が変動したことを出力電力値が所定値以上変化したことによって判別して遺伝的アルゴリズム工程に切り換える。これによって、複数の極大値の中から最大極大値近傍を探索することができ、常に最大出力電力点を追従することができる。
【００５３】
［実施の形態５］
本発明の実施の形態５は、実施の形態１又は２において、山登り工程の切換条件を、出力電力値が前回ステップの出力電力値よりも所定値以上変化し、かつ、山登り工程の動作時間が所定時間に達したときとするものである。すなわち、実施の形態５では、上述した図２において、ステップＴ２４の切換条件を「出力電力値が前回ステップの出力電力値よりも所定値以上変化し、かつ、山登り工程の動作時間が所定時間に達したとき」とするものである。実施の形態５では、日射状態が変化して太陽電池電圧−電力特性が変動したことを出力電力値が所定値以上変化したことによって判別し山登り工程の動作時間が所定値に達したときに遺伝的アルゴリズム工程に切り換える。これは、日射状態の変化に対応すると共に、短時間の山登り工程で直ぐに遺伝的アルゴリズム工程に切り換わることを防止するためである。山登り工程が短時間で切り換わることが多発すると、太陽光発電システムの総合効率をかえって低下させることがある。
【００５４】
［実施の形態６］
本発明の実施の形態６は、実施の形態１乃至５において、山登り工程から遺伝的アルゴリズム工程に移行する際に、山登り工程の最後のステップによる基準太陽電池出力設定値に対応する遺伝子を含めて初期集団を形成するものである。すなわち、実施の形態６では、上述した図２において、山登り工程から遺伝的アルゴリズム工程に移行する際に、山登り工程の最後のステップＴ２３による基準太陽電池出力設定値に対応する遺伝子を含めて、ステップＴ１に示す初期集団を形成するものである。実施の形態６では、評価値の高い遺伝子を初期集団に含ませることによって、遺伝的アルゴリズム工程の収束速度を向上させることができる。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施形態に係る太陽光発電システムのブロック図である。
【図２】本発明の実施の形態１の動作を説明するフローチャートである。
【図３】実施の形態１により極大値を追従する図である。
【図４】実施の形態１により極大値を追従する第２の図である。
【図５】従来技術の太陽光発電システムのブロック図である。
【図６】従来技術の動作を説明するフローチャートである。
【図７】従来技術により極大値を追従する図である。
【符号の説明】
【００５６】
ＡＤ          負荷
ＣＣ          コントローラ
ＣＴ          電流検出回路
ＩＮ          インバータ回路
ＬＰ          極大点
ＭＰ          最大極大点、最大出力電力点
ＰＴ          電圧検出回路
ＰＷＭ        パルス幅制御回路
ＳＰ          系統電源
ＳＣ１        太陽電池
ＳＣ２        太陽電池
ＳＣ３        太陽電池
【図１】
2006107425.tif 000003
【図２】
2006107425.tif 000004
【図３】
2006107425.tif 000005
【図４】
2006107425.tif 000006
【図５】
2006107425.tif 000007
【図６】
2006107425.tif 000008
【図７】
2006107425.tif 000009