太陽光発電装置からの発電電力を負荷に応じた電力に変換する電力変換装置と、上記太陽光発電装置の出力電圧を検出する電圧検出部と、上記太陽光発電装置の出力電流を検出する電流検出部と、検出された上記出力電圧および上記出力電流に基づいて上記太陽光発電装置の発電電力を演算する演算部、上記太陽光発電装置の出力電圧が出力電圧指令に追従するように上記電力変換装置を制御すると共に上記出力電圧指令を正方向あるいは負方向に変化させる電圧変化部、および上記電圧変化部を制御して上記演算部で演算される上記発電電力が最大となる出力電圧を探索する電圧探索部を有して、上記発電電力が最大となるように上記電力変換装置を制御する制御装置とを備え、上記電圧検出部および上記電流検出部は、上記制御装置の電圧変化部が上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をNN≧2回行い、上記制御装置の電圧探索部は、上記N回の検出値に基づいて発電電力を評価する発電電力評価手段を備え、上記発電電力評価手段により、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定することを特徴とする最大電力追従装置。上記発電電力評価手段は、上記N回の検出値のうち上記最大出力電圧から降順に選択した複数の出力電圧における各発電電力と、上記N回の検出値のうち上記最小出力電圧から昇順に選択した複数の出力電圧における各発電電力とを比較して、次回の上記太陽光発電装置の出力電圧を変化させる方向を決定することを特徴とする請求項1に記載の最大電力追従装置。上記発電電力評価手段は、上記最大出力電圧から降順に選択した複数の出力電圧における各発電電力の平均値である高圧側平均発電電力と、上記最小出力電圧から昇順に選択した複数の出力電圧における各発電電力の平均値である低圧側平均発電電力とを比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定することを特徴とする請求項2に記載の最大電力追従装置。上記発電電力評価手段は、上記最大出力電圧における発電電力と上記最小出力電圧における発電電力との差の絶対値が予め設定された閾値より小さい時、上記最大出力電圧における発電電力と上記最小出力電圧における発電電力との平均値と、上記電圧変化部の出力電圧指令を変化させる前の上記太陽光発電装置の発電電力とを比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定することを特徴とする請求項1に記載の最大電力追従装置。上記発電電力評価手段は、上記高圧側平均発電電力と上記低圧側平均発電電力との差の絶対値が予め設定された閾値より小さい時、上記高圧側平均発電電力と上記低圧側平均発電電力との平均値と、上記電圧変化部の出力電圧指令を変化させる前の上記太陽光発電装置の発電電力とを比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定することを特徴とする請求項3に記載の最大電力追従装置。太陽光発電装置の出力電圧を制御する出力電圧指令を変化させ、上記太陽光発電装置の発電電力が最大となる出力電圧を探索して上記太陽光発電装置の動作を制御する最大電力追従方法であって、上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をN回N≧2行う処理と、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記出力電圧指令を変化させる方向を決定する処理とを備えたことを特徴とする最大電力追従方法。上記N回の検出値のうち上記最大出力電圧から降順に選択した複数の出力電圧における各発電電力と、上記N回の検出値のうち上記最小出力電圧から昇順に選択した複数の出力電圧における各発電電力とを比較して、次回の上記出力電圧指令を変化させる方向を決定することを特徴とする請求項6に記載の最大電力追従方法。上記最大出力電圧から降順に選択した複数の出力電圧における各発電電力の平均値である高圧側平均発電電力と、上記最小出力電圧から昇順に選択した複数の出力電圧における各発電電力の平均値である低圧側平均発電電力とを比較して、次回の上記出力電圧指令を変化させる方向を決定することを特徴とする請求項7に記載の最大電力追従方法。上記最大出力電圧における発電電力と上記最小出力電圧における発電電力との差の絶対値が予め設定された閾値より小さい時、上記最大出力電圧における発電電力と上記最小出力電圧における発電電力との平均値と、上記出力電圧指令を変化させる前の上記太陽光発電装置の発電電力とを比較して、次回の上記出力電圧指令を変化させる方向を決定することを特徴とする請求項6に記載の最大電力追従方法。上記高圧側平均発電電力と上記低圧側平均発電電力との差の絶対値が予め設定された閾値より小さい時、上記高圧側平均発電電力と上記低圧側平均発電電力との平均値と、上記出力電圧指令を変化させる前の上記太陽光発電装置の発電電力とを比較して、次回の上記出力電圧指令を変化させる方向を決定することを特徴とする請求項8に記載の最大電力追従方法。上記従来の電力制御装置は、電圧目標値を変化させた時刻t0から時間経過した次回の時刻t1までの期間のうち、太陽電池の電圧波形から最大電力値となる電圧検出値を1点採用し、その電圧検出値を次回の電圧目標値に設定している。このため、電圧目標値を変化させた後の太陽電池の電圧波形が、電圧目標値を変化させたことにより一時的に大きく脈動したり、外部的な要因等により一時的に大きく脈動したりした場合、その一時的に大きく脈動した時に最大電力値を検出してしまうという可能性がある。そして、その一時的に大きく脈動した時の最大電力値における電圧検出値を電圧目標値とした場合、電圧目標値が本来の太陽電池の最大出力点と大きくずれてしまうことが考えられる。この発明は、上記のような課題を解決するためになされたもので、仮に太陽電池から出力される電圧波形が一時的に大きく脈動した場合であっても、精度良く最大出力点を追従する最大電力追従装置および最大電力追従方法を提供することを目的とする。この発明に係る最大電力追従装置は、太陽光発電装置からの発電電力を負荷に応じた電力に変換する電力変換装置と、上記太陽光発電装置の出力電圧を検出する電圧検出部と、上記太陽光発電装置の出力電流を検出する電流検出部と、検出された上記出力電圧および上記出力電流に基づいて上記太陽光発電装置の発電電力を演算する演算部、上記太陽光発電装置の出力電圧が出力電圧指令に追従するように上記電力変換装置を制御すると共に上記出力電圧指令を正方向あるいは負方向に変化させる電圧変化部、および上記電圧変化部を制御して上記演算部で演算される上記発電電力が最大となる出力電圧を探索する電圧探索部を有して、上記発電電力が最大となるように上記電力変換装置を制御する制御装置とを備えている。そして、上記電圧検出部および上記電流検出部は、上記制御装置の電圧変化部が上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をNN≧2回行い、上記制御装置の電圧探索部は、上記N回の検出値に基づいて発電電力を評価する発電電力評価手段を備え、上記発電電力評価手段により、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定する。この発明に係る最大電力追従方法は、太陽光発電装置の出力電圧を制御する出力電圧指令を変化させ、上記太陽光発電装置の発電電力が最大となる出力電圧を探索して上記太陽光発電装置の動作を制御する最大電力追従方法である。そして、上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をN回N≧2行う処理と、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記出力電圧指令を変化させる方向を決定する処理とを備えている。この発明に係る最大電力追従装置は、太陽光発電装置からの発電電力を負荷に応じた電力に変換する電力変換装置と、上記太陽光発電装置の出力電圧を検出する電圧検出部と、上記太陽光発電装置の出力電流を検出する電流検出部と、検出された上記出力電圧および上記出力電流に基づいて上記太陽光発電装置の発電電力を演算する演算部、上記太陽光発電装置の出力電圧が出力電圧指令に追従するように上記電力変換装置を制御すると共に上記出力電圧指令を正方向あるいは負方向に変化させる電圧変化部、および上記電圧変化部を制御して上記演算部で演算される上記発電電力が最大となる出力電圧を探索する電圧探索部を有して、上記発電電力が最大となるように上記電力変換装置を制御する制御装置とを備え、上記電圧検出部および上記電流検出部は、上記制御装置の電圧変化部が上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をNN≧2回行い、上記制御装置の電圧探索部は、上記N回の検出値に基づいて発電電力を評価する発電電力評価手段を備え、上記発電電力評価手段により、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記電圧変化部の出力電圧指令を変化させる方向を決定する。このため、出力電圧指令を変化させたことにより生じる太陽光発電装置の出力電圧の過渡的な変動が落ち着いてから、出力電圧の検出を行うことができる。そして、仮に外的な要因等により出力電圧が一時的に大きく脈動する場合であっても、最大出力電圧と最小出力電圧との2種類の検出値から次回の出力電圧指令を変化させる方向を決定するため、太陽光発電装置本来の最大電力を精度良く追従することができる。また、この発明に係る最大電力追従方法は、太陽光発電装置の出力電圧を制御する出力電圧指令を変化させ、上記太陽光発電装置の発電電力が最大となる出力電圧を探索して上記太陽光発電装置の動作を制御する最大電力追従方法であって、上記出力電圧指令を変化させて一定時間経過後から上記太陽光発電装置の出力電圧および出力電流の検出をN回N≧2行う処理と、上記N回の検出値のうち最大出力電圧と最小出力電圧とを選択し、上記最大出力電圧と上記最小出力電圧とにおける各発電電力を比較して、次回の上記出力電圧指令を変化させる方向を決定する処理とを備えている。このため、出力電圧指令を変化させたことにより生じる太陽光発電装置の出力電圧の過渡的な変動が落ち着いてから、出力電圧の検出を行うことができる。そして、仮に外的な要因等により出力電圧が一時的に大きく脈動する場合であっても、最大出力電圧と最小出力電圧との2種類の検出値から次回の出力電圧指令を変化させる方向を決定するため、太陽光発電装置本来の最大電力を精度良く追従することができる。実施の形態1.図1はこの発明の実施の形態1における最大電力追従装置を用いた太陽光発電システムの構成例を示すブロック図である。図1に示すように、太陽光発電システムは、太陽光から電力を発生させる太陽光発電装置1と、太陽光で発電された電力を消費する負荷6と、太陽光発電装置1と負荷6との間に設けられ、太陽光発電装置1からの発電電力を制御してその発電電力を負荷6に応じた電力に変換して供給する最大電力追従装置10とを備えている。最大電力追従装置10は、DC/DCコンバータやDC/ACインバータなどから構成される電力変換装置5と、太陽光発電装置1の出力電圧を検出する電圧検出部2と、太陽光発電装置の出力電流を検出する電流検出部3と、太陽光発電装置1からの発電電力が最大となるように電力変換装置5を制御する制御装置4とを備えている。制御装置4は、電圧検出部2および電流検出部3によりそれぞれ検出される出力電圧および出力電流に基づいて太陽光発電装置1の発電電力を演算する演算部41と、太陽光発電装置1の出力電圧が出力電圧指令に追従するように電力変換装置5を制御すると共に、出力電圧指令を所定の時間周期で正方向あるいは負方向に所定の変化量ΔV変化させる電圧変化部42と、電圧変化部42を制御して演算部41で演算される太陽光発電装置1の発電電力が最大となる出力電圧を探索する電圧探索部43とを備えている。そして、電圧探索部43は、電圧検出部2および電流検出部3によりそれぞれ検出される出力電圧および出力電流に基づいて太陽光発電装置1の発電電力を評価する発電電力評価手段44を備えている。次に、最大電力追従装置10の動作について説明する。まず、動作の基本的な考え方を、図2、3を用いて説明する。図2、3は電圧変化部42の出力電圧指令をΔV変化させた時の太陽光発電装置1の出力電圧の脈動波形を示し、横軸が時間、縦軸が出力電圧である。図2は出力電圧指令を正方向に変化させた場合、すなわちΔV>0の場合の出力電圧の脈動波形を示し、図3は出力電圧指令を負方向に変化させた場合、すなわちΔV<0の場合の出力電圧の脈動波形を示している。まず、図2を参照して、出力電圧指令を正方向に変化させた場合について説明する。太陽光発電装置1の出力電圧がV1、発電電力がP1のある時間t=0において、電圧変化部42が出力電圧指令をΔV変化させている。出力電圧V1にΔVを加算した電圧V2をここでの出力電圧指令値とする。図に示すように、出力電圧指令をΔV変化させることで、太陽光発電装置1の出力電圧は出力電圧指令に追従するよう変化する。出力電圧指令を変化させた直後は出力電圧は一時的に大きく脈動するが、時間経過に伴い徐々に落ち着き、定常的な脈動となる。電圧検出部2および電流検出部3は、出力電圧指令を変化させて一定時間Δt経過後から所定の時間間隔でN回のサンプリングを行い、出力電圧、出力電流を検出する。このN回のサンプリングにより得られた検出値に基づいて演算部41は各出力電圧における発電電力を演算している。時間Δt、サンプリング回数Nは、太陽光システムの使用状況等に応じて予め設定され、本実施の形態1では、例えばΔt=0.05秒とし、N=14とする。電圧探索部43の発電電力評価手段44は、上記N回のサンプリングによる検出値のうち最大出力電圧から降順にM個Mは複数と、最小出力電圧から昇順にM個を選択する。選択個数Mの値は、太陽光システムの使用状況等に応じて予め設定され、本実施の形態1では、M=3とする。従って、高圧側出力電圧として、Vt1、Vt2、Vt3を選択し、低圧側出力電圧としてVt4、Vt5、Vt10を選択する。そして、発電電力評価手段44は、選択した高圧側出力電圧Vt1、Vt2、Vt3における各発電電力Pt1、Pt2、Pt3と、低圧側出力電圧Vt4、Vt5、Vt10における各発電電力Pt4、Pt5、Pt10とを比較して、次回の電圧変化部42の出力電圧指令を変化させる方向を決定する。具体的には、高圧側出力電圧Vt1、Vt2、Vt3における各発電電力Pt1、Pt2、Pt3の平均値である高圧側平均発電電力PaPa=Pt1Pt2Pt3/3と、低圧側出力電圧Vt4、Vt5、Vt10における各発電電力Pt4、Pt5、Pt10の平均値である低圧側平均発電電力PbPb=Pt4Pt5Pt10/3とを求め、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値を発電電力増減量ΔPΔP=Pa-Pbとして、ΔPの符号が正であれば次回の出力電圧指令を正方向に変化させ、ΔPの符号が負であれば次回の出力電圧指令を負方向に変化させる。次に、図3を参照して、出力電圧指令を負方向に変化させた場合について説明する。出力電圧指令を負方向に変化させた場合の動作は、図2で説明した出力電圧指令を正方向に変化させる場合の動作とほぼ同様であるため簡単に説明する。太陽光発電装置1の出力電圧がV1、発電電力がP1のある時間t=0において、電圧変化部42が出力電圧指令をΔV変化させている。出力電圧V1に負の値であるΔVを加算した電圧V2をここでの出力電圧指令値とする。電圧検出部2および電流検出部3は、出力電圧指令を変化させて一定時間Δt経過後から所定の時間間隔でN回のサンプリングを行い、出力電圧、出力電流を検出する。電圧探索部43の発電電力評価手段44は、N回のサンプリングによる検出値のうち最大出力電圧から降順にVt4、Vt5、Vt10を選択し、最小出力電圧から昇順にVt1、Vt2、Vt3を選択する。そして、高圧側出力電圧Vt4、Vt5、Vt10における各発電電力Pt4、Pt5、Pt10の平均値である高圧側平均発電電力Paと、低圧側出力電圧Vt1、Vt2、Vt3における各発電電力Pt1、Pt2、Pt3の平均値である低圧側平均発電電力Pbとを求め、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値を発電電力増減量ΔPΔP=Pa-Pbとして、ΔPの符号が正であれば次回の出力電圧指令を正方向に変化させ、ΔPの符号が負であれば次回の出力電圧指令を負方向に変化させる。ここで、ΔPの符号が正であれば次回の出力電圧指令を正方向に変化させ、ΔPの符号が負であれば次回の出力電圧指令を負方向に変化させる理由について説明する。図4は、太陽光発電装置1における出力電圧と発電電力の一般的な特性を示す図であり、図4では、ΔPが負の場合、すなわちPa<Pbとなる場合を示している。仮に高圧側出力電圧図2の場合Vt1、Vt2、Vt3、図3の場合Vt4、Vt5、Vt10の平均値をVaとし、低圧側出力電圧図2の場合Vt4、Vt5、Vt10、図3の場合Vt1、Vt2、Vt3の平均値をVbとする。図に示すように、高圧側の電圧Vaにおける高圧側平均発電電力Paの方が、低圧側の電圧Vbにおける低圧側平均発電電力Pbよりも小さいとすると、電圧変化部42が時間t=0の時に変化させた出力電圧指令値V2は、太陽光発電装置1の最大発電電力となるVmaxよりも大きい値であると考えられ、次回の出力電圧指令を負方向に変化させる必要がある。同様に、ΔPの符号が正であれば次回の出力電圧指令を正方向に変化させる必要がある。なお、上記説明では、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値を発電電力増減量ΔPとし、このΔPの符号により次回の電圧変化部42の出力電圧指令を変化させる方向を決定していた。しかし、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値の絶対値が非常に小さい場合は、太陽光発電装置1の出力電圧の電圧波形の脈動が非常に小さい場合と考えられる。脈動が非常に小さい場合は、電圧検出部2や電流検出部3での検出時の誤差により、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値の符号が本来得られるべき符号と逆転してしまうことがある。従って、予め閾値Pαを設定しておき、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値の絶対値が閾値Pαよりも小さい場合は、電圧波形の脈動が非常に小さいと判断し、上記説明とは異なる以下の方法で、次回の電圧変化部42の出力電圧指令を変化させる方向を決定する。なお、閾値Pαは、例えば定格出力電力の100分の1の値などに設定される。高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値の絶対値がPαよりも小さい場合、高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値と、電圧変化部42の出力電圧指令を変化させる前の太陽光発電装置1の発電電力P1とを比較することにより、次回の電圧変化部42の出力電圧指令を変化させる方向を決定する。具体的には、高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値から、電圧変化部42の出力電圧指令を変化させる前の太陽光発電装置1の発電電力P1を引いた値を発電電力増減量ΔPとし、このΔPの符号が正であれば次回の出力電圧指令を正方向に、このΔPの符号が負であれば次回の出力電圧指令を負方向に変化させる。次に、最大電力追従装置10の詳細な動作を図5を用いて説明する。図5は最大電力追従装置10の処理フローを説明する全体フローチャートである。ステップS1では、最大電力追従装置10の動作が開始された時の太陽光発電装置1の出力電圧V1、発電電力P1を求め、電圧変化部42の出力電圧指令の変化量ΔVの値を設定する。ステップS2では、電圧変化部42が出力電圧指令をΔVだけ変化させる。すなわち、電圧変化部42の出力電圧指令値をV1にΔVを加算した値である電圧V2に設定する。ステップS3では時間タイマーtを0にセットし、ステップS4で時間タイマーtと予め設定している時間Δtとを比較する。t>Δtの条件がYesになったらステップS5に進み、処理1Aを行う。処理1Aは、発電電力評価手段44が、N回のサンプリングでの検出値のうち最大出力電圧から降順にM個、最小出力電圧から昇順にM個の出力電圧を選択するための初期設定を行う。処理1Aの処理フローを図6で説明する。処理1Aが開始されると、ステップS51でカウンターjを0にセットする。ステップS52でカウンターjと選択個数Mを比較する。M>jの条件がYesならば、ステップS53でカウンターjに1を加算し、ステップS54で降順に選択するVmax[j]の値を大きな負の値例えば-9999に設定し、昇順に選択するVmin[j]の値を大きな正の値例えば9999に設定し、ステップS52に戻る。ステップS52でM>jの条件がNoならば、処理1Aを終了し、図5に示すステップS6に進む。この処理により、M=3の場合であれば、最大出力電圧Vmax[1]に-9999が、Vmax[1]の次に大きい出力電圧Vmax[2]に-9999が、Vmax[2]の次に大きい出力電圧Vmax[3]に-9999が、そして最小出力電圧Vmin[1]に9999が、Vmin[1]の次に小さい出力電圧Vmin[2]に9999が、Vmin[2]の次に小さい出力電圧Vmin[3]に9999が、初期設定値として入力される。図5に戻り、ステップS6では、サンプリングの数をカウントするためのカウンターiを0に設定する。ステップS7では、予め設定されたサンプリング回数Nと、カウンターiを比較する。N>iの条件がYesならば、ステップS8でカウンターiに1を加算し、ステップS9でi番目のサンプリングを行って、太陽光発電装置1の出力電圧Vi、発電電力Piを得る。電圧検出部2および電流検出部3により出力電圧Vi、出力電流を検出し、その検出値から演算部41により発電電力Piを演算する。続いて、ステップS10で処理1B、ステップS11で処理1Cを順次行い、ステップS7に戻る。処理1Bは、N回のサンプリングでの検出値のうち最大出力電圧から降順にM個を選択するための処理である。具体的には、ステップS9で得られた出力電圧Viが、最大出力電圧から降順にM個の出力電圧に該当するかを判定し、該当する場合は、出力電圧Viおよび発電電力Piを記憶しておく。処理1Bの処理フローを図7で説明する。処理1Bが開始されると、ステップS101でカウンターjを0にセットする。ステップS102でカウンターjと選択個数Mを比較する。M>jの条件がNoであれば、処理1Bを終了し、図5に示すステップS11の処理1Cに進む。M>jの条件がYesならば、ステップS103でカウンターjに1を加算する。ステップS104では、ステップS9で得られた出力電圧Viと、最大出力電圧から降順に選択されたj番目の出力電圧Vmax[j]との値を比較する。Vi>Vmax[j]の条件がNoであればステップS102に戻る。Vi>Vmax[j]の条件がYesであれば、ステップS105にてカウンターkを選択個数Mに設定する。ステップS106では、カウンターkとカウンターjとを比較する。k>jの条件がYesであれば、最大出力電圧から降順に選択されたVmax[k]とその時の発電電力Pmax[k]を、最大出力電圧から降順に選択されたk-1番目の出力電圧Vmax[k-1]とその時の発電電力Pmax[k-1]に設定する。ステップS108でカウンターkから1を減算し、ステップS106に戻る。k>jの条件がNoであれば、ステップS109に進み、最大出力電圧から降順に選択されたj番目の出力電圧Vmax[j]と、その時の発電電力Pmax[j]を、それぞれ、ステップS9で得られたi番目のサンプリングにおける出力電圧Vi、発電電力Piに設定し、処理1Bを終了し、図5に示すステップS11の処理1Cに進む。処理1Cは、N回のサンプリングでの検出値のうち最小出力電圧から昇順にM個を選択するための処理である。具体的には、ステップS9で得られた出力電圧Viが、最小出力電圧から昇順にM個の出力電圧に該当するかを判定し、該当する場合は、出力電圧Viおよび発電電力Piを記憶しておく。処理1Cの処理フローを図8で説明する。処理1Cが開始されると、ステップS111でカウンターjを0にセットする。ステップS112でカウンターjと選択個数Mを比較する。M>jの条件がNoであれば、処理1Cを終了し、図5に示すステップS7に戻る。M>jの条件がYesならば、ステップS113でカウンターjに1を加算する。ステップS114では、ステップS9で得られた出力電圧Viと、最小出力電圧から昇順に選択されたj番目の出力電圧Vmin[j]との値を比較する。Vi<Vmin[j]の条件がNoであればステップS112に戻る。Vi<Vmin[j]の条件がYesであれば、ステップS115にてカウンターkを選択個数Mに設定する。ステップS116では、カウンターkとカウンターjとを比較する。k>jの条件がYesであれば、最小出力電圧から昇順に選択されたk番目の出力電圧Vmin[k]とその時の発電電力Pmin[k]を、最小出力電圧から昇順に選択されたk-1番目の出力電圧Vmin[k-1]とその時の発電電力Pmin[k-1]に設定する。ステップS118でカウンターkから1を減算し、ステップS116に戻る。k>jの条件がNoであれば、ステップS119に進み、最小出力電圧から昇順に選択されたj番目の出力電圧Vmin[j]と、その時の発電電力Pmin[j]を、それぞれ、ステップS9で得られたi番目のサンプリングにおける出力電圧Vi、発電電力Piに設定し、処理1Cを終了し、図5に示すステップS7に戻る。ステップS7でN>iの条件がNoならば、ステップS12に進む。ステップS12では、N回のサンプリングでの検出値のうち、最大出力電圧から降順に選択されたM個の出力電圧における各発電電力の平均値である高圧側平均発電電力Paと、最小出力電圧から昇順に選択されたM個の出力電圧における各発電電力の平均値である低圧側平均発電電力Pbとの値を0に設定する。そして、ステップS13で処理1Dを行う。処理1Dは、上記ステップS10、S11で得られた値から、高圧側平均発電電力Paと、低圧側平均発電電力Pbとを求める。処理1Dの処理フローを図9で説明する。処理1Dが開始されると、ステップS131でカウンターjを0にセットする。ステップS132でカウンターjと選択個数Mを比較する。M>jの条件がYesならば、ステップS133でカウンターjに1を加算する。ステップS134では、この時点における高圧側平均発電電力Paに、ステップS10で得られた発電電力Pmax[j]に重みを1/Mをかけた値を加算して、新たな高圧側平均発電電力Paとする。また、この時点における低圧側平均発電電力Pbに、ステップS11で得られた発電電力Pmin[j]に重みを1/Mをかけた値を加算して、新たな低圧側平均発電電力Pbとする。そして、ステップS132に戻る。ステップ132でM>jの条件がNoであれば、処理1Dを終了し、図5に示すステップS14に進む。ステップS14では、処理1Dで得られた高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値P2を求める。ステップS15では、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値の絶対値と、予め設定された閾値Pαとを比較する。|Pa-Pb|<Pαの条件がNoならば、ステップS16に進み、高圧側平均発電電力Paから低圧側平均発電電力Pbを引いた値を発電電力増減量ΔPとする。|Pa-Pb|<Pαの条件がYesならば、ステップS17に進み、ステップS14で求めた高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値P2から、ステップS1で求めた電圧変化部42が出力電圧指令をΔV変化させる前の太陽光発電装置1の発電電力P1を引いた値を発電電力増減量ΔPとする。ステップS18では、発電電力増減量ΔPの符号を判定する。ΔP>0の条件がNoならばΔPの符号は負であると判定し、ステップS19にて出力電圧指令の変化量ΔVを-|ΔV|に設定して次回のΔVとする。ΔP>0の条件がYesならばΔPの符号は正であると判定し、ステップS20にて出力電圧指令の変化量ΔVを|ΔV|に設定して次回のΔVとする。ステップS21では、太陽光発電装置1の出力電圧V1をステップS2で設定された出力電圧指令値V2に設定し、出力電圧V1の時の発電電力P1をステップS14で求めた高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値P2に設定する。ステップS22において、最大電力追従装置10の動作を停止するための停止指令がないかどうかを判定し、停止指令がなければNoであればステップS2に戻り、ステップS2~S22の動作を繰り返す。停止指令があればYesであれば最大電力追従装置10の動作を終了する。以上のように、本実施の形態1では、N回のサンプリングでの検出値のうち、最大出力電圧から降順に選択した複数個の高圧側出力電圧における各発電電力の平均値である高圧側平均発電電力Paと、最小出力電圧から昇順に選択した複数個の低圧側出力電圧における各発電電力の平均値である低圧側平均発電電力Pbとを比較して、次回の電圧変化部42の出力電圧指令を変化させる方向を決定する。高圧側出力電圧における発電電力と低圧側出力電圧における発電電力との2種類の検出値から出力電圧指令を変化させる方向を決定するため、仮に外的な要因等により出力電圧が一時的に大きく脈動する場合であっても、太陽光発電装置1の本来の最大電力を精度良く追従することができる。さらに、高圧側出力電圧として最大出力電圧から降順に複数個選択し、低圧側出力電圧として最小出力電圧から昇順に複数個選択するため、上記一時的な脈動における出力電圧のみを検出値として用いることがないため、太陽光発電装置1の最大電力の追従をより精度良く行うことができ、電力を有効に使うことができる。また、N回のサンプリングは電圧変化部42が出力電圧指令を変化させて一定時間経過後から行うため、出力電圧指令を変化させたことにより生じる太陽光発電装置の出力電圧の過渡的な変動が落ち着いてから出力電圧の検出を行うことができ、出力電圧指令を変化させたことによる過渡的な出力電圧の変動の影響を受けずに、太陽光発電装置1の最大電力の追従を行うことができる。また、出力電圧指令を変化させた直後は、日射量の変化による太陽光発電装置1の発電電力の増減はほとんどないが、出力電圧指令を変化させて一定時間経過後からサンプリングを行うことで、日照量の変化による発電電力の影響を考慮しながら、太陽光発電装置1の最大電力の追従を行うことができる。また、太陽光発電装置1の出力電圧の電圧波形の脈動が非常に小さい場合には、高圧側平均発電電力Paと低圧側平均発電電力Pbとの比較により、出力電圧指令を変化させる方向を決定すると、電圧検出部2や電流検出部3での検出時の誤差により、本来変化させるべき方向と逆の方向に決定してしまうことがある。しかし、本実施の形態1では、高圧側平均発電電力Paと低圧側平均発電電力Pbとの差の絶対値が予め設定された閾値Pαより小さい時、高圧側平均発電電力Paと低圧側平均発電電力Pbとの平均値と、出力電圧指令を変化させる前の太陽光発電装置の発電電力P1を比較して、次回の出力電圧指令を変化させる方向を決定するため、出力電圧指令を変化させる方向を誤って決定してしまうことを防止し、太陽光発電装置1の最大電力の追従を確実に行うことができる。なお、本実施の形態1では、選択個数Mを複数とし、N回のサンプリングでの検出値のうち、最大出力電圧から降順に選択した複数の高圧側出力電圧における各発電電力の平均値である高圧側平均発電電力Paと、最小出力電圧から昇順に選択した複数の低圧側出力電圧における各発電電力の平均値である低圧側平均発電電力Pbとを比較して、次回の電圧変化部42の出力電圧指令を変化させる方向を決定したが、必ずしも高圧側および低圧側の出力電圧を複数個ずつ選択する必要はない。例えば、選択個数Mが1であってもよく、高圧側出力電圧として最大出力電圧のみを選択し、低圧側出力電圧として最小出力電圧のみを選択して、最大出力電圧と最小出力電圧とにおける各発電電力を比較することで次回の出力電圧指令を変化させる方向を決定してもよい。このようにしても、高圧側出力電圧における発電電力と低圧側出力電圧における発電電力との2種類の検出値から出力電圧指令を変化させる方向を決定するため、仮に外部的な要因等により出力電圧が一時的に大きく脈動する場合であっても、太陽光発電装置1の本来の最大電力を精度良く追従することができる。また、例えば、N回のサンプリングでの検出値のうち最大出力電圧および最小出力電圧は、外的な要因等による特異点であるとして検出値から除き、最大出力電圧の次に大きい出力電圧を最大出力電圧として選択し、最小出力電圧の次に小さい出力電圧を最小出力電圧として選択することもできる。また、本実施の形態1では、N回のサンプリングでの検出値のうち、最大出力電圧から降順に選択した複数個の高圧側出力電圧における各発電電力の平均値である高圧側平均発電電力Paと、最小出力電圧から昇順に選択した複数個の低圧側出力電圧における各発電電力の平均値である低圧側平均発電電力Pbとを比較して、次回の電圧変化部42の出力電圧指令を変化させる方向を決定したが、高圧側の各発電電力と低圧側の各発電電力との比較は、各発電電力の平均値を比較する方法に限られるものではない。例えば各発電電力を加算して比較する等、どのような比較方法であってもよい。また、この発明は、その発明の範囲内において、実施の形態を適宜、変形、省略することが可能である。