(57)【特許請求の範囲】
【請求項１】
電極間に導線を介して抵抗を接続した状態の検査対象物である太陽電池パネル又は太陽電池セルの表面全体にわたって、所定の周期で強度が変化する光を照射する光照射手段と、
前記光照射手段による光の照射によって前記検査対象物に電流が流れることにより発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を、前記検査対象物に対向する複数の箇所で検出する磁界検出手段と、
前記磁界検出手段によって検出された前記検査対象物に対向する複数の箇所における磁界の検出結果に基づいて、前記検査対象物の複数の箇所における電流の大きさの分布又は前記検査対象物に対向する複数の箇所における磁界の強さの分布を計算する分布計算手段と、
前記分布計算手段によって計算された前記検査対象物の複数の箇所における電流の大きさの分布又は前記検査対象物に対向する複数の箇所における磁界の強さの分布に基づいて、前記複数の電極の延設方向の各部に流れる電流の大きさの分布又は同電流による磁界の強さの分布に関する特性を表す第１特性値を電極ごとに計算する第１特性値計算手段と
を備えたことを特徴とする太陽電池検査装置。
【請求項２】
電極間に導線を介して抵抗を接続した状態の検査対象物である太陽電池パネル又は太陽電池セルの表面全体にわたって、所定の周期で強度が変化する光を照射する光照射手段と、
前記光照射手段による光の照射によって前記検査対象物に電流が流れることにより発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を、前記検査対象物に対向する複数の箇所で検出する磁界検出手段と、
前記磁界検出手段によって検出された前記検査対象物に対向する複数の箇所における磁界の検出結果に基づいて、前記検査対象物の複数の箇所における電流の大きさの分布又は前記検査対象物に対向する複数の箇所における磁界の強さの分布を計算する分布計算手段と、
前記分布計算手段によって計算された前記検査対象物の複数の箇所における電流の大きさの分布又は前記検査対象物に対向する複数の箇所における磁界の強さの分布に基づいて、前記複数の電極間に流れる電流の大きさの分布又は同電流による磁界の強さの分布に関する特性を表す第２特性値を計算する第２特性値計算手段と
を備えたことを特徴とする太陽電池検査装置。
【請求項３】
請求項１又は２に記載した太陽電池検査装置において、さらに、
前記分布計算手段によって計算された電流の大きさの分布又は磁界の強さの分布を表示する表示手段を設けたことを特徴とする太陽電池検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、太陽電池セル又は複数の太陽電池セルを接続して構成される太陽電池パネルの欠陥を検出する太陽電池検査装置に関する。
【背景技術】
【０００２】
太陽電池パネルは、高温、低温、雨、雪等に晒される環境下で使用されるため、長期間が経過すると、太陽電池パネルを構成する個々の太陽電池セルの表面の電極を半田又は導電性ペーストで接続している箇所や、太陽電池セル間を接続している配線の接続箇所が劣化する可能性がある。そのため、長期間使用した太陽電池パネルは、接続不良や欠陥が発生していないことを検査する必要がある。また、太陽電池セルを製造した直後又は太陽電池セルから太陽電池パネルを製造した直後も、太陽電池セルの表面の電極を半田又は導電性ペーストで接続している箇所や、太陽電池セル間を接続している配線の接続箇所に接続不良がないことを検査する必要がある。
【０００３】
太陽電池セルや、複数の太陽電池セルから構成される太陽電池パネルを検査する方法にはいくつかの方法があるが、例えば下記特許文献１に紹介されているように、発電によって発生する電流によって各点で発生する磁界を磁気センサにより検出し、磁界の分布状態又は磁界から計算され得る電流の分布状態を、正常なものと比較することで異常の有無を判断する方法がある。この方法であれば、太陽電池セルであっても、太陽電池パネル（下記特許文献１では太陽電池モジュールと記載されている）であっても、検査対象を発電により電流が流れる状態にすれば、接続不良等の不具合箇所を非接触で精度よく検出することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１７１０６５号公報
【発明の概要】
【０００５】
しかしながら、太陽電池は検査のために照射される光以外の外乱光によっても発電するため、外乱光が検査対象物の各部で一様の強度でない場合には、検査精度が悪くなるという問題がある。また、外乱光の影響なくすことでこの問題に対処する場合は、暗室のように検査を行う場所が限定されてしまうため、検査対象物を検査を行う場所に持ち込む手間が必要になるという問題がある。また、磁気センサは発電によって発生する電流による磁界に、地磁気や検査対象物の近くにある電線等で発生する磁界といった外部磁界も加えた磁界を検出するので、外部磁界が検査対象物の各部で一様な強さでない場合にも、検査精度が悪くなるという問題がある。また、外部磁界をなくすことでこの問題に対処する場合には、磁気シールドされた部屋で電線等の磁界を発生させるものを検査対象物から極力遠ざけるというように、検査対象物を検査を行う場所に持ち込む手間に加えて、検査のための設備コストが高くなるという問題がある。
【０００６】
さらに、前記特許文献１に記載されているように、磁界分布又は電流分布を正常なものと比較することで異常の有無を判断する場合は、検査対象物が一定の大きさで表面の電極が同じ位置にある必要がある。しかし、太陽電池セルや、太陽電池パネルには様々な大きさと構造のものがあり、全ての検査対象物に対応する基準の検査結果を用意することは極めて困難である。このため、あらゆる太陽電池セルや、太陽電池パネルを検査対象物とする場合には、検査員が磁界分布又は電流分布を見て、不具合箇所を判断する必要があり、的確に不具合箇所を検出するのが困難であるという問題もある。
【０００７】
本発明は、この問題を解決するためになされたもので、外乱光や外部磁界が存在しても、低コストで、これらの影響を受けずに太陽電池セルや、太陽電池パネルの検査を行うことができ、さらにあらゆる種類の太陽電池セルや、太陽電池パネルの検査対象物に対しても、精度よく不具合箇所を検出できる太陽電池検査装置を提供することにある。なお、下記本発明の各構成要件の記載においては、本発明の理解を容易にするために、実施形態の対応箇所の符号を括弧内に記載しているが、本発明の各構成要件は、実施形態の符号によって示された対応箇所の構成に限定解釈されるべきものではない。
【０００８】
上記目的を達成するために、本発明の第１の特徴は、電極間に導線を介して抵抗を接続した状態の検査対象物である太陽電池パネル（ＳＰ）又は太陽電池セル（ＳＣ）の表面全体にわたって、所定の周期で強度が変化する光を照射する光照射手段（５０，６５，６６）と、光照射手段による光の照射によって検査対象物に電流が流れることにより発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を、検査対象物に対向する複数の箇所で検出する磁界検出手段（１０，２０，３０，４０、６１〜６５，６７，６８）と、磁界検出手段によって検出された検査対象物に対向する複数の箇所における磁界の検出結果に基づいて、検査対象物の複数の箇所における電流の大きさの分布又は検査対象物に対向する複数の箇所における磁界の強さの分布を計算する分布計算手段（７０，Ｓ１０〜Ｓ４１，Ｓ１００〜Ｓ１２４）と、分布計算手段によって計算された検査対象物の複数の箇所における電流の大きさの分布又は検査対象物に対向する複数の箇所における磁界の強さの分布に基づいて、複数の電極の延設方向の各部に流れる電流の大きさの分布又は同電流による磁界の強さの分布に関する特性を表す第１特性値を電極ごとに計算する第１特性値計算手段（Ｓ１７０〜Ｓ２１４，Ｓ２２０〜Ｓ２５６，Ｓ２６０、Ｓ２６４〜Ｓ２７６，Ｓ２８４〜Ｓ２９８）とを備えたことにある。
【０００９】
この場合、光照射手段を、発光する発光素子と、所定の周期で大きさの変化する駆動信号で発光素子を駆動する駆動回路とで構成するとよい。また、磁界検出手段を、光の照射によって検査対象物に電流が流れることにより発生する磁界を検査対象物に対向する複数の箇所で検出する磁気センサ手段と、磁気センサ手段によって検出された磁界から前記所定の周期と等しい周期で強さが変化する磁界成分を取出す磁界成分取出手段とで構成するとよい。また、この場合の特性値としては、例えば、１つの電極の各部に流れる電流の平均値を全ての電極の各部に流れる電流の平均値で除した値、１つの電極の各部に流れる電流の最大値と最小値との差を１つの電極の各部に流れる電流の平均値で除した値、１つの電極の各部に流れる電流の標準偏差を１つの電極の各部に流れる電流の平均値で除した値、１つの太陽電池セル内の全ての電極の各部に流れる電流の平均値の最大値と最小値との差を前記１つの太陽電池セル内の全ての電極の各部に流れる電流の平均値で除した値である。また、この場合、前記第１特性値を計算する電流を、同電流に対応した磁界で置き換えることもできる。さらに、この場合、前記第１特性値を所定の許容値と比較して検査対象物の合否の判定を自動的に行ったり、前記第１特性値を表示して作業者に検査対象物の合否の判定を行わせたりするとよい。
【００１０】
また、本発明の第２の特徴は、前記本発明の第１の特徴において、前記第1特性値計算手段を、分布計算手段によって計算された検査対象物の複数の箇所における電流の大きさの分布又は検査対象物に対向する複数の箇所における磁界の強さの分布に基づいて、複数の電極間に流れる電流の大きさの分布又は同電流による磁界の強さの分布に関する特性を表す第２特性値を計算する第２特性値計算手段（Ｓ１７０〜Ｓ２１４，Ｓ２２０〜Ｓ２５６，Ｓ２６２、Ｓ２６４，Ｓ２７８〜Ｓ２９８）に変更したことにある。
【００１１】
この場合の第２特性値としては、例えば、１つの太陽電池セル内の複数の電極間の各部を流れる電流の平均値を、全ての太陽電池セル内の複数の電極間の各部を流れる電流の平均値で除した値である。また、この場合、前記第２特性値を計算する電流を、同電流に対応した磁界で置き換えることもできる。さらに、この場合も、前記第２特性値を所定の許容値と比較して検査対象物の合否の判定を自動的に行ったり、前記第２特性値を表示して作業者に検査対象物の合否の判定を行わせたりするとよい。
【００１２】
上記のように構成した本発明の第１及び第２の特徴においては、検査対象物（太陽電池パネル又は太陽電池セル）に照射して発電を起こさせる光の強度を所定の周期で変化させ、検査対象物に電流が流れることにより発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を、複数の箇所で検出するようにした。これにより、外乱光や、外部磁界が存在しても、コストを抑えたうえで、これらの影響を受けずに、検査対象物に対向する複数の箇所で磁界を検出することができる。そして、分布計算手段により、検査対象物の複数の箇所における電流の大きさの分布又は検査対象物に対向する複数の箇所における磁界の強さの分布を得ることができる。
【００１４】
発明者は、実験の結果、太陽電池セル又は太陽電池パネルにおいて、電極間の断線、電極間の接触不良等がある異常な状態では、前記第１及び第２特性値が正常な状態から大きく変化することを発見している。したがって、前記本発明の第１及び第２の特徴によれば、電極間の断線、電極間の接触不良等がある異常な太陽電池セル又は太陽電池パネルを的確に検出できる。
【００１５】
また、本発明の他の特徴は、さらに、分布計算手段によって計算された電流の大きさの分布又は磁界の強さの分布を表示する表示手段（７０，７２，Ｓ３００，Ｓ３１０）を設けたことにある。
【００１６】
これによれば、作業者は、検査対象物の複数の箇所における電流の大きさの分布又は検査対象物に対向する複数の箇所における磁界の強さの分布を視覚を通じて認識でき、分布の異常から検査対象物の正常及び異常を判断できるようになる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態に係る太陽電池検査装置の全体構成図である。
【図２】図１のステージ及び磁気センサの移動機構の具体例を示す概略斜視図である。
【図３】図１の磁気センサ及びセンサ信号取出回路の詳細回路ブロック図である。
【図４】図１のロックインアンプの詳細回路ブロック図である。
【図５Ａ】図1のコントローラによって実行されるデータ取得プログラムの前半部分を示すフローチャートである。
【図５Ｂ】前記データ取得プログラムの後半部分を示すフローチャートである。
【図６Ａ】図1のコントローラによって実行される評価プログラムの先頭部分を示すフローチャートである。
【図６Ｂ】図1のコントローラによって実行される評価プログラムの図６Ａに続く部分を示すフローチャートである。
【図６Ｃ】図1のコントローラによって実行される評価プログラムの図６Ｂに続く部分を示すフローチャートである。
【図６Ｄ】図1のコントローラによって実行される評価プログラムの図６Ｃに続く部分を示すフローチャートである。
【図６Ｅ】図1のコントローラによって実行される評価プログラムの図６Ｄに続く部分を示すフローチャートである。
【図６Ｆ】図1のコントローラによって実行される評価プログラムの図６Ｅに続く部分を示すフローチャートである。
【図６Ｇ】図1のコントローラによって実行される評価プログラムの図６Ｆに続く部分を示すフローチャートである。
【図６Ｈ】図1のコントローラによって実行される評価プログラムの図６Ｇに続く部分を示すフローチャートである。
【図７】太陽電池パネルの一例を示す概略平面図である。
【図８Ａ】図７の太陽電池セルの概略断面図である。
【図８Ｂ】図７の太陽電池セルの接続状態を説明するための概略図である。
【図９】磁気センサによる太陽電池パネルの走査態様を説明するための説明図である。
【図１０Ａ】太陽電池セルの電極に異常が発生した場合における電極方向及び電極間方向の電流の大きさの変化を説明するための説明図である。
【図１０Ｂ】太陽電池セルの電極に他の異常が発生した場合における電極方向及び電極間方向の電流の大きさの変化を説明するための説明図である。
【図１０Ｃ】太陽電池セルの電極にさらに他の異常が発生した場合における電極方向及び電極間方向の電流の大きさの変化を説明するための説明図である。
【図１１】太陽電池パネルに流れる電流の大きさの分布図である。
【図１２】太陽電池パネルのバスバー電極位置の検出を説明するための説明図である。
【図１３】(Ａ)は接続線を介したバスバー電極と裏面電極との接続状態を説明するための説明図であり、(Ｂ)はバスバー電極及び接続線に流れる電流の大きさを示すグラフである。
【図１４Ａ】図１０Ａの状態にある太陽電池セルの電流分布の表示状態を示す図である。
【図１４Ｂ】図１０Ｂの状態にある太陽電池セルの電流分布の表示状態を示す図である。
【図１４Ｃ】図１０Ｃの状態にある太陽電池セルの電流分布の表示状態を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の一実施形態に係る太陽電池検査装置について図面を用いて説明する。図1は、この太陽電池検査装置の全体概略図である。太陽電池検査装置は、磁気センサ１０を支持固定するセンサ支持台１１を有し、センサ支持台１１は、Ｘ方向スライド機構２０によってＸ方向（紙面左右方向）に移動するとともに、Ｙ方向スライド機構３０によってＹ方向（紙面垂直方向）に移動する。センサ支持台１１は、図２に詳細に示すように、方形状の平板で構成されて、上面にて磁気センサ１０を支持固定する。このセンサ支持台１１は、Ｘ方向スライド機構２０の一部を構成する方形状の移動部材２１により支持されている。この移動部材２１には、センサ支持台１１を上下に変位させて磁気センサ１０の上下方向位置を調整する調整機構（図示しない）が設けられており、調整つまみ２２の操作によりセンサ支持台１１が上下方向に位置調整されるようになっている。
【００１９】
移動部材２１の下面には、Ｙ方向に所定の幅を有する凸部２１ａが設けられている。この凸部２１ａは、Ｘ方向に延設された支持部材２３の上面に設けた溝２３ａに侵入して、溝２３ａ内をＸ方向にスライドするようになっている。支持部材２３の溝２３ａ内には、Ｘ方向に延設されて移動部材２１の凸部を貫通する雄ねじ２４が収容されている。移動部材２１の凸部２１ａ内には、雄ねじ２４に螺合した図示しないナットが組み込まれており、雄ねじ２４の回転により、移動部材２１がＸ方向に移動するようになっている。すなわち、雄ねじ２４と移動部材２１に組み込まれたナットにより、ボールねじ機構が構成されている。雄ねじ２４の一端は、支持部材２３の一端に組み付けたＸ方向モータ２５の回転軸に連結され、雄ねじ２４の他端は支持部材２３の他端に回転可能に支持されている。これにより、Ｘ方向モータ２５の回転により雄ねじ２４が軸線周りに回転して、移動部材２１、センサ支持台１１及び磁気センサ１０がＸ方向に移動する。
【００２０】
支持部材２３のＸ方向の両端近傍部の下面には、Ｘ方向に所定の幅を有する凸部２３ｂ，２３ｃがそれぞれ設けられている。これらの凸部２３ｂ、２３ｃは、Ｙ方向にそれぞれ延設された支持部材３１，３２の上面に設けた溝３１ａ，３２ａに侵入して、溝３１ａ，３２ａ内をＹ方向にスライドするようになっている。支持部材３１の溝３１ａ内には、Ｙ方向に延設されて支持部材２３の凸部２３ｂを貫通する雄ねじ３３が収容されている。支持部材２３の凸部２３ｂ内には、雄ねじ３３に螺合した図示しないナットが組み込まれており、雄ねじ３３の回転により、支持部材２３がＹ方向に移動するようになっている。すなわち、雄ねじ３３と支持部材２３に組み込まれたナットにより、ボールねじ機構が構成されている。雄ねじ３３の一端は、支持部材３１の一端に組み付けたＹ方向モータ３４の回転軸に連結され、雄ねじ３３の他端は支持部材３１の他端に回転可能に支持されている。これにより、Ｙ方向モータ３４の回転により雄ねじ３３が軸線周りに回転して、支持部材２３が移動部材２１、センサ支持台１１及び磁気センサ１０と共にＹ方向に移動する。
【００２１】
また、この太陽電池検査装置は、太陽電池パネルＳＰを載置するための、ステージ４０を備えている。ステージ４０は、支持部材３１，３２の各端部から上方に延設された連結部４１ａ，４１ｂ，４１ｃ，４１ｄを介して、支持部材３１，３２の上方に配置された方形状の枠体４２を有している。枠体４２は、支持部材３１，３２の上方にそれぞれ位置する支持部４２ａ，４２ｂと、両支持部４２ａ，４２ｂの両端部をそれぞれ連結する支持部４２ｃ、４２ｄとを備えている。支持部４２ａ，４２ｂ，４２ｃには、内側方向に突出して太陽電池パネルＳＰを載置する載置部が設けられている。支持部４２ａ，４２ｂには、移動載置部材４３が両端部にてＹ方向に摺動可能に組み付けられている。この移動載置部材４３にも、支持部材４２方向に突出して太陽電池パネルＳＰを載置する載置部が設けられている。そして、太陽電池パネルＳＰを枠体４２の支持部４２ａ，４２ｂ，４２ｃ及び移動載置部材４３上に載置した状態では、磁気センサ１０が太陽電池パネルＳＰの下方に位置するようになっている。
【００２２】
ふたたび図１の説明に戻ると、ステージ４０の枠体４２上には複数の発光素子（ＬＥＤ）５０が配置されている。複数の発光素子５０はマトリクス状に配置されて、太陽電池パネルＳＰをステージ４０上に載置した状態で、太陽電池パネルＳＰ全体に均一な光量（すなわち強度）の光が照射されるようになっている。
【００２３】
Ｘ方向モータ２５内には、Ｘ方向モータ２５の回転を検出して、その回転を表す回転信号を出力するエンコーダ２５ａが組み込まれている。この回転信号は、Ｘ方向モータ２５が所定の微少角度だけ回転するたびにハイレベルとローレベルとを交互に切替えるパルス列信号であって、回転方向を識別するために互いにπ／２だけ位相のずれたＡ相信号とＢ相信号とで構成される。回転信号は、Ｘ方向位置検出回路６１及びＸ方向フィードモータ制御回路６２に出力される。Ｘ方向位置検出回路６１は、前記回転信号のパルス数をＸ方向モータ２５の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値からＸ方向モータ２５によるステージ４０（太陽電池パネルＳＰ）に対するセンサ支持台１１のＸ方向位置（すなわち磁気センサ１０のＸ方向位置）を検出し、検出したＸ方向位置をＸ方向フィードモータ制御回路６２及び後述するコントローラ７０に出力する。Ｘ方向フィードモータ制御回路６２は、コントローラ７０の指示により、Ｘ方向モータ２５の駆動及び停止を制御する。このＸ方向モータ２５の駆動時においては、フィードモータ制御回路６２は、エンコーダ２５ａからの回転信号を用いてＸ方向モータ２５を所定の回転速度で回転させる。
【００２４】
Ｘ方向位置検出回路６１におけるカウント値の初期設定は、電源投入時にコントローラ７０の指示によって行われる。すなわち、コントローラ７０は、電源投入時に、Ｘ方向フィードモータ制御回路６２にセンサ支持台１１の初期位置に対応したＸ方向限界位置への移動、及びＸ方向位置検出回路６１に初期設定を指示する。この指示により、Ｘ方向フィードモータ制御回路６２は、Ｘ方向モータ２５を駆動してセンサ支持台１１を初期位置に対応したＸ方向限界位置まで移動させる。Ｘ方向位置検出回路６１は、センサ支持台１１のＸ方向への移動中、Ｘ方向モータ２５内のエンコーダ２５ａからの回転信号を入力し続けている。そして、センサ支持台１１が初期位置に対応したＸ方向限界位置まで達してＸ方向モータ２５の回転が停止すると、Ｘ方向位置検出回路６１はエンコーダ２５ａからの回転信号の入力停止を検出して、カウント値を「０」にリセットする。このとき、Ｘ方向位置検出回路６１は、Ｘ方向フィードモータ制御回路６２に出力停止のための信号を出力し、これにより、Ｘ方向フィードモータ制御回路６２はＸ方向モータ２５への駆動信号の出力を停止する。その後に、Ｘ方向モータ２５が駆動された際には、Ｘ方向位置検出回路６１は、回転信号のパルス数をＸ方向モータ２５の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値に基づいてセンサ支持台１１のＸ方向位置を計算し、計算したＸ方向位置をＸ方向フィードモータ制御回路６２及びコントローラ７０に出力し続ける。
【００２５】
Ｙ方向モータ３４内には、Ｙ方向モータ３４の回転を検出して、前記Ｘ方向モータ２５と同様に、その回転を表す回転信号を出力するエンコーダ３４ａが組み込まれている。この回転信号は、Ｙ方向位置検出回路６３及びＹ方向フィードモータ制御回路６４に出力される。Ｙ方向位置検出回路６３は、前記回転信号のパルス数をＹ方向モータ３４の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値からＹ方向モータ３４によるセンサ支持台１１のＹ方向位置（すなわち磁気センサ１０のＹ方向位置）を検出し、検出したＹ方向位置をＹ方向フィードモータ制御回路６４及びコントローラ７０に出力する。Ｙ方向フィードモータ制御回路６４は、コントローラ７０の指示により、前記Ｘ方向フィードモータ制御回路６２の場合と同様に、Ｙ方向モータ３４の駆動及び停止を制御する。
【００２６】
Ｙ方向位置検出回路６３におけるカウント値の初期設定は、電源投入時にコントローラ７０の指示によって行われる。すなわち、コントローラ７０は、電源投入時に、Ｙ方向フィードモータ制御回路６４にセンサ支持台１１の初期位置に対応したＹ方向限界位置への移動、及びＹ方向位置検出回路６３に初期設定を指示する。この指示により、Ｙ方向フィードモータ制御回路６４は、Ｙ方向モータ３４を駆動してセンサ支持台１１を初期位置に対応したＹ方向限界位置まで移動させる。Ｙ方向位置検出回路６３は、センサ支持台１１のＹ方向への移動中、Ｙ方向モータ３４内のエンコーダ３４ａからの回転信号を入力し続けている。そして、センサ支持台１１が初期位置に対応したＹ方向限界位置まで達してＹ方向モータ３４の回転が停止すると、Ｙ方向位置検出回路６３はエンコーダ３４ａからの回転信号の入力停止を検出して、カウント値を「０」にリセットする。このとき、Ｙ方向位置検出回路６３は、Ｙ方向フィードモータ制御回路６４に出力停止のための信号を出力し、これにより、Ｙ方向フィードモータ制御回路６４はＹ方向モータ３４への駆動信号の出力を停止する。その後に、Ｙ方向モータ３４が駆動された際には、Ｙ方向位置検出回路６３は、回転信号のパルス数をＹ方向モータ３４の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値に基づいてセンサ支持台１１のＹ方向位置を計算し、計算したＹ方向位置をＹ方向フィードモータ制御回路６４及びコントローラ７０に出力し続ける。
【００２７】
この太陽電池検査装置は、さらに、発光信号供給回路６５、光源駆動回路６６、センサ信号取出回路６７、ロックインアンプ６８及びコントローラ７０を備えている。発光信号供給回路６５は、正弦波発振器及び矩形波変換回路を含み、コントローラ７０によって作動制御されて、正弦波発振器によって発振される正弦波信号を発光制御信号として光源駆動回路６６に供給する。なお、発光制御信号は、「０」を基準に正負に変化する信号であり、その周波数は、例えば数１０ヘルツから数１００ヘルツ程度である。また、発光信号供給回路６５は、前記正弦波信号からなる発光制御信号を矩形波変換回路による変換により、前記発光制御信号と同期して「０」を中心として正負に変化する矩形波信号を生成して、参照信号としてロックインアンプ６８に出力する。光源駆動回路６６も、コントローラ７０によって作動制御されて、前記供給された発光制御信号によって発光素子５０を発光制御する。発光素子５０は、前記発光制御信号に同期して正弦波状に変化する発光強度で太陽電池パネルＳＰの表面を照射する。
【００２８】
次に、磁気センサ１０について説明しておく。磁気センサ１０は、図３に示すように、Ｘ方向の磁界を検出するＸ方向磁気センサ１０Ａと、Ｙ方向の磁界の変化を検出するＹ方向磁気センサ１０Ｂとを備えている。Ｘ方向磁気センサ１０Ａは、抵抗ｒ11，ｒ12，ｒ13及び磁気抵抗素子ＭＲ１からなるブリッジ回路で構成されており、抵抗ｒ11，ｒ13の接続点と、抵抗ｒ12及び磁気抵抗素子ＭＲ１の接続点との間に、センサ信号取出回路６７の後述する定電圧供給回路６７ａから電圧＋Ｖ，−Ｖが印加されるようになっている。また、Ｘ方向磁気センサ１０Ａにおいては、抵抗ｒ13及び磁気抵抗素子ＭＲ１の接続点と、抵抗ｒ11，ｒ12間の接続点との間の電圧をＸ方向磁気検出信号として出力する。抵抗ｒ11，ｒ12，ｒ13の値は同じであり、磁界の強さが「０」であるときの磁気抵抗素子ＭＲ１の抵抗値に等しい。これにより、ほぼ「０」を基準としたＸ方向の磁界の正負の変化により、Ｘ方向磁気検出信号はほぼ「０」を基準にＸ方向の磁界の大きさに比例して正負に変化する電圧信号となる。
【００２９】
Ｙ方向磁気センサ１０Ｂは、抵抗ｒ21，ｒ22，ｒ23及び磁気抵抗素子ＭＲ２からなるブリッジ回路で構成されており、抵抗ｒ21，ｒ22の接続点と、抵抗ｒ23及び磁気抵抗素子ＭＲ２の接続点との間に、センサ信号取出回路６７の後述する定電圧供給回路６７ｂから電圧＋Ｖ，−Ｖが印加されるようになっている。また、Ｙ方向磁気センサ１０Ｂにおいては、抵抗ｒ22及び磁気抵抗素子ＭＲ２の接続点と、抵抗ｒ21，ｒ23間の接続点との間の電圧をＹ方向磁気検出信号として出力する。抵抗ｒ21，ｒ22，ｒ23の値は同じであり、磁界の強さが「０」であるときの磁気抵抗素子ＭＲ２の抵抗値に等しい。これにより、ほぼ「０」を基準としたＹ方向の磁界の正負の変化により、Ｙ方向磁気検出信号はほぼ「０」を基準にＹ方向の磁界の大きさに比例して正負に変化する電圧信号となる。
【００３０】
センサ信号取出回路６７は、定電圧供給回路６７ａ，６７ｂ及び増幅器６７ｃ，６７ｄを備えている。定電圧供給回路６７ａ，６７ｂは、コントローラ７０からの指示により、Ｘ方向磁気センサ１０Ａ及びＹ方向磁気センサ１０Ｂに対して、定電圧＋Ｖ，−Ｖを供給する。増幅器６７ｃ、６７ｄは、Ｘ方向磁気検出信号及びＹ方向磁気検出信号をそれぞれ増幅してロックインアンプ６８に出力する。
【００３１】
ロックインアンプ６８は、図４に詳細に示すように、Ｘ方向磁気センサ１０Ａから増幅器６７ｃを介して供給されるＸ方向磁気検出信号を入力するハイパスフィルタ６８ａと、Ｙ方向磁気センサ１０Ｂから増幅器６７ｄを介して供給されるＹ方向磁気検出信号を入力するハイパスフィルタ６８ｂとを備えている。ハイパスフィルタ６８ａ，６８ｂは、Ｘ方向磁気検出信号及びＹ方向磁気検出信号に含まれる、磁界の強さに比例した信号成分以外の不要な成分を取り除くとともに、信号をグランドレベルを中心に変化するようにする。
【００３２】
ハイパスフィルタ６８ａの出力は、増幅器６８ｃを介して位相検波回路６８ｄ，６８ｅに供給される。位相検波回路６８ｄ，６８ｅは、それぞれ乗算器によって構成されている。位相検波回路６８ｄは、ハイパスフィルタ６８ａ及び増幅器６８ｃを介して供給されるＸ方向磁気検出信号に、発光信号供給回路６５からの参照信号を乗算してローパスフィルタ６８ｆに出力する。位相検波回路６８ｅは、ハイパスフィルタ６８ａ及び増幅器６８ｃを介して供給されるＸ方向磁気検出信号に、発光信号供給回路６５からの参照信号を位相シフト回路６８ｇで９０度位相を遅らせた遅延参照信号を乗算してローパスフィルタ６８ｈに出力する。これにより、ローパスフィルタ６８ｆにはＸ方向磁気検出信号の発光制御信号（参照信号）と同期した成分が供給され、ローパスフィルタ６８ｆは供給された成分信号をローパスフィルタ処理してＸ方向磁気検出信号の発光制御信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ６８ｈにはＸ方向磁気検出信号の発光制御信号よりも９０度位相を遅らせた信号（遅延参照信号）と同期した成分が供給され、ローパスフィルタ６８ｈは供給された成分信号をローパスフィルタ処理してＸ方向磁気検出信号の発光制御信号よりも９０度位相を遅らせた信号と同期した成分の大きさを表す信号を出力する。
【００３３】
ハイパスフィルタ６８ｂの出力は、増幅器６８ｉを介して位相検波回路６８ｊ，６８ｋに供給される。位相検波回路６８ｊ，６８ｋには、ローパスフィルタ６８ｍ，６８ｎが接続されている。位相検波回路６８ｊ，６８ｋ及びローパスフィルタ６８ｍ，６８ｎは、前述した位相検波回路６８ｄ，６８ｅ及びローパスフィルタ６８ｆ，６８ｈと同様に構成されている。これにより、ローパスフィルタ６８ｍにはＹ方向磁気検出信号の発光制御信号（参照信号）と同期した成分が供給され、ローパスフィルタ６８ｍは供給された成分信号をローパスフィルタ処理してＹ方向磁気検出信号の発光制御信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ６８ｎにはＹ方向磁気検出信号の発光制御信号よりも９０度位相を遅らせた信号（遅延参照信号）と同期した成分が供給され、ローパスフィルタ６８ｎは供給された成分信号をローパス処理してＹ方向磁気検出信号の発光制御信号よりも９０度位相を遅らせた信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ６８ｆ，６８ｈ，６８ｍ，６８ｎは、Ａ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒにそれぞれ接続されている。Ａ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒは、所定の時間間隔ごとに、ローパスフィルタ６８ｆ，６８ｈ，６８ｍ，６８ｎからの信号をそれぞれＡ／Ｄ変換してコントローラ７０に供給する。
【００３４】
ふたたび図１の説明に戻り、コントローラ７０は、ＣＰＵ、ＲＯＭ、ＲＡＭを備えたマイクロコンピュータと、ハードディスクや不揮発性メモリなどの記憶装置と、入出力インタフェース等から構成される電子制御装置である。コントローラ７０は、記憶装置に記憶された図５Ａ及び図５Ｂのデータ取得プログラム及び図６Ａ乃至図６Ｈの評価プログラムを実行してこの太陽電池検査装置の動作を制御する。コントローラ７０には、作業者が各種パラメータや処理等を指示するための入力装置７１と、作業者に対して作動状況等を視覚的に知らせるための表示装置７２とが接続されている。
【００３５】
次に、太陽電池パネルＳＰについて説明しておく。太陽電池パネルＳＰは、図７に示すように、マトリクス状に配置された多数の太陽電池セルＳＣが、基板８０上に固定されている。本実施形態では、Ｘ方向にｔmax個、Ｙ方向にｓmax個の太陽電池セルＳＣが配置されているものとする。各太陽電池セルＳＣには様々な構造があるが、図８Ａの拡大概略断面図に示すように、裏面電極８１、ｐ＋形層８２、ｐ形層８３、ｎ形層８４及び反射防止膜８５を積層して構成されている。また、太陽電池セルＳＣは、平板状かつ長尺状に形成され等間隔で横方向に配列された複数のグリッド電極（受光面電極）８６を備え、グリッド電極８６の下端面はｎ形層８４に接続されて上端面を上方に突出させている。複数のグリッド電極８６の上端面には、棒状に形成した一対のバスバー電極８７がそれらの下面にて接続されている。
【００３６】
そして、Ｙ方向に配置されたｓmax個の太陽電池セルＳＣは直列に接続され、この直列に接続されたｓmax個の太陽電池セルＳＣからなるｔmax組の太陽電池セルＳＣ群がそれぞれ並列に接続されている。この場合、Ｙ方向に配置されたｓmax個の太陽電池セルＳＣにおいては、図８Ｂに示すように、隣の太陽電池セルＳＣのバスバー電極８７を接続線８８を介して裏面電極８１に接続するようにしている。また、直列に接続されたｓmax個の太陽電池セルＳＣからなるｔmax組の太陽電池セルＳＣ群においては、具体的には、太陽電池セルＳＣ群のＹ方向一端の太陽電池セルＳＣのバスバー電極８７が接続線８９ａによって共通に接続されるとともに、Ｙ方向他端の太陽電池セルＳＣの裏面電極８１が接続線８９ｂによって共通に接続されている。そして、接続線８９ａ，８９ｂの出力端には、出力端子９０ａ，９０ｂが設けられている。なお、太陽電池セルＳＣの接続方法においては、Ｘ方向の複数列の太陽電池セルＳＣを直列に接続してもよい。
【００３７】
次に、上記のように構成した太陽電池検査装置の動作について説明する。作業者は、図７に示すように、検査対象となる太陽電池パネルＳＰの出力端子９０ａ，９０ｂ間に導線Ｌ１，Ｌ２を介して小さな抵抗Ｒcs（例えば、５オーム程度の抵抗）を接続して、ステージ４０の枠体４２上に載置する。この場合、太陽電池パネルＳＰのＸ−Ｙ平面の原点となる位置（後述するプログラムで変数ｎ，ｍが共に「１」となる位置）の近傍のコーナーを、枠体４２のコーナーの一つ（本実施形態では図２の右下に位置するコーナー）に合わせ、移動載置部材４３を移動させて太陽電池パネルＳＰを固定する。なお、抵抗Ｒcsを接続する理由は、発光素子５０を用いた光の照射により、太陽電池セルＳＣの発電による電流が太陽電池セルＳＣを流れるようにするためである。この状態で、太陽電池検査装置の電源が投入されると、上述したように、コントローラ７０の指示により、Ｘ方向フィードモータ制御回路６２及びＹ方向フィードモータ制御回路６４はセンサ支持部材１１（すなわち磁気センサ１０）をＸ方向及びＹ方向の限界位置に移動させるとともに、Ｘ方向位置検出回路６１及びＹ方向位置検出回路６３は検出されるＸ方向位置及びＹ方向位置を初期値に設定する。
【００３８】
その後、作業者は、入力装置７１を操作することにより、太陽電池パネルＳＰの計測に必要なパラメータを入力する。この場合、必要なパラメータとしては、太陽電池セルＳＣのＸ方向及びＹ方向の数ｔmax，ｓmax、各太陽電池セルＳＣのＸ方向及びＹ方向の長さ、各太陽電池セルＳＣ内のバスバー電極８７の数（図７に示す太陽電池セルＳＣにおいては２個）などである。この入力されたパラメータは、コントローラ７０に記憶される。また、後述するデータ処理プログラムや評価プログラムにて使用されるＸ方向終了位置Ｘmax、Ｙ方向終了位置Ｙmax、値Ｎｎ、値Ｎｍ、値ｃｅ等のパラメータが、この入力されたパラメータから計算されて記憶される。
【００３９】
次に、作業者は、入力装置７１の操作により、コントローラ７０に図５Ａ及び図５Ｂのデータ取得プログラムの実行を開始させる。すなわち、太陽電池パネルＳＰの計測の開始をコントローラ７０に指示する。この指示に応答して、コントローラ７０は、図５ＡのステップＳ１０にてデータ取得プログラムの実行を開始し、ステップＳ１１にて変数ｎを「０」に初期設定するとともに、変数ｍ，ａをそれぞれ「１」に初期設定する。変数ｎ，ｍは、太陽電池パネルＳＰに対する磁気センサ１０の走査位置を示す変数である。なお、磁気センサ１０は、図９に示すように、まず、Ｘ方向に初期値Ｘｓによって表される開始位置から終了値Ｘmaxによって表される終了位置を越えるまで所定の微小値ΔＸずつ移動制御される。そして、Ｘ方向の終了位置に達すると、磁気センサ１０はＹ方向に所定の微小値ΔＹだけ移動制御され、その後に、Ｘ方向の終了位置からＸ方向の開始位置まで微小値ΔＸずつ移動制御される。そして、ふたたび、磁気センサ１０はＹ方向に微小値ΔＹだけ移動制御されて、Ｘ方向の開始位置から終了位置まで微小値ΔＸずつ移動制御される。このように、磁気センサ１０は、Ｘ方向に往復運動しながらＹ方向に移動して、太陽電池パネルＳＰを走査する。なお、微小値ΔＸ，ΔＹは、太陽電池セルＳＣの縦横の長さに比べて極めて小さい。変数ａは、「１」により磁気センサ１０の中心位置がＸ軸方向正側に移動している状態を表し、「−１」により磁気センサ１０の中心位置がＸ軸方向負側に移動している状態を表している。以降、この磁気センサ１０の中心位置を検査位置という。
【００４０】
前記ステップＳ１１の処理後、コントローラ７０は、ステップＳ１２にて、Ｘ方向フィードモータ制御回路６２に対して磁気センサ１０をＸ軸方向に移動して検査位置がＸ軸方向の初期値Ｘｓによって表される初期位置になるように指示するとともに、Ｙ方向フィードモータ制御回路６４に対して磁気センサ１０をＹ軸方向に移動して検査位置がＹ軸方向の初期値Ｙｓによって表される初期位置になるように指示する。この指示に応答して、Ｘ方向フィードモータ制御回路６２は、Ｘ方向位置検出回路６１からＸ方向検出位置（Ｘ軸方向の検査位置すなわち測定位置）を入力しながら、Ｘ方向検出位置が初期値Ｘｓに一致するまでＸ方向モータ２５を駆動制御する。Ｙ方向フィードモータ制御回路６４は、Ｙ方向位置検出回路６３からＹ方向検出位置（Ｙ軸方向の検査位置すなわち測定位置）を入力しながら、Ｙ方向検出位置が初期値Ｙｓに一致するまでＹ方向モータ３４を駆動制御する。
【００４１】
ステップＳ１２の処理後、コントローラ７０は、ステップＳ１３にて発光信号供給回路６５の作動開始を指示する。この指示に応答して、発光信号供給回路６５は、正弦波状の発光制御信号を光源駆動回路６６に供給するとともに、前記発光制御信号と同期した矩形波状の参照信号をロックインアンプ６８に供給し始める。次に、コントローラ７０は、ステップＳ１４にて光源駆動回路６６の作動開始を指示する。この指示に応答して、光源駆動回路６６は、前記供給された発光制御信号に応じて正弦波状に変化する駆動制御信号を発光素子５０に供給して、発光素子５０を発光制御し始める。次に、コントローラ７０は、ステップＳ１５にてセンサ信号取出回路６７の作動開始を指示する。この指示に応答して、センサ信号取出回路６７内の定電圧供給回路６７ａ，６７ｂは、Ｘ方向磁気センサ１０Ａ及びＹ方向磁気センサ１０Ｂに定電圧信号＋Ｖ，−Ｖを供給し始める。これにより、Ｘ方向磁気センサ１０Ａ及びＹ方向磁気センサ１０ＢによるＸ方向磁気検出信号及びＹ方向磁気検出信号が、増幅器６７ｃ，６７ｄを介してロックインアンプ６８にそれぞれ供給され始める。
【００４２】
このＸ方向磁気検出信号及びＹ方向磁気検出信号について説明する。前記発光素子５０の発光制御により、発光素子５０は、その発光強度を前記発光制御信号に同期して正弦波状に変化させながら、太陽電池パネルＳＰの表面全体に均等に光を照射する。この光の照射により、太陽電池パネルＳＰは前記発光強度に応じて電力を発電し始める。この電力の発電により、各太陽電池セルＳＣの表面には電流が流れるとともに、電極を介して導線Ｌ１，Ｌ２及び抵抗Ｒcsに電流が流れ、各太陽電池セルＳＣの表裏面近傍には、前記電流による磁界が発生する。そして、Ｘ方向磁気センサ１０Ａは、Ｘ方向の磁界Ｈの大きさに比例した電圧をＸ方向磁気検出信号として出力し始める。また、Ｙ方向磁気センサ１０Ｂは、Ｙ方向の磁界Ｈの大きさに比例した電圧をＹ方向磁気検出信号として出力し始める。これらのＸ方向磁気検出信号及びＹ方向磁気検出信号は、前記発光素子５０の発光強度が正弦波状に変化するので、正弦波状に変化する信号である。ただし、Ｘ方向磁気検出信号及びＹ方向磁気検出信号の位相は、発光素子５０を駆動制御するための正弦波状の発光制御信号とは若干異なる。
【００４３】
ロックインアンプ６８においては、入力されたＸ方向磁気検出信号がハイパスフィルタ６８ａ及び増幅器６８ｃを介して位相検波回路（乗算器）６８ｄ，６８ｅにそれぞれ供給されるとともに、入力されたＹ方向磁気検出信号がハイパスフィルタ６８ｂ及び増幅器６８ｉを介して位相検波回路（乗算器）６８ｊ，６８ｋにそれぞれ供給される。位相検波回路６８ｄ，６８ｊには、発光信号供給回路６５からの矩形波状の参照信号が供給されている。また、位相検波回路６８ｅ，６８ｋには、前記参照信号の位相を位相シフト回路６８ｇで９０度遅らせた遅延参照信号が供給されている。そして、位相検波回路６８ｄ，６８ｅは、増幅器６８ｃを介して供給されたＸ方向磁気検出信号に参照信号及び遅延参照信号をそれぞれ乗算して、乗算した信号をローパスフィルタ６８ｆ，６８ｈを介してＡ／Ｄ変換器６８ｏ，６８ｐにそれぞれ供給する。位相検波回路６８ｊ，６８ｋは、増幅器６８ｃを介して供給されたＹ方向磁気検出信号に参照信号及び遅延参照信号をそれぞれ乗算して、乗算した信号をローパスフィルタ６８ｍ，６８ｎを介してＡ／Ｄ変換器６８ｑ，６８ｒにそれぞれ供給する。
【００４４】
ここで、ローパスフィルタ６８ｆ，６８ｈ，６８ｍ，６８ｎは供給された信号の成分の大きさを表す信号すなわち正弦波状の信号の振幅に比例した大きさを表す信号を出力するように機能する。したがって、Ａ／Ｄ変換器６８ｏには、Ｘ方向磁気検出信号の参照信号（すなわち発光制御信号）に同期した信号成分の大きさを表す信号が供給される。Ａ／Ｄ変換器６８ｐには、Ｘ方向磁気検出信号の参照信号から９０度だけ位相の遅れた信号成分の大きさを表す信号が供給される。Ａ／Ｄ変換器６８ｑには、Ｙ方向磁気検出信号の参照信号に同期した信号成分の大きさを表す信号が供給される。Ａ／Ｄ変換器６８ｒには、Ｙ方向磁気検出信号の参照信号から９０度だけ位相の遅れた信号成分の大きさを表す信号が供給される。そして、Ａ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒは、それぞれ供給された信号を所定時間ごとにサンプリングしてＡ／Ｄ変換し、Ａ／Ｄ変換したサンプリングデータをコントローラ７０に供給する。したがって、コントローラ７０には前記各信号成分の所定時間ごとの大きさを表すサンプリングデータが所定時間ごとに供給されるようになる。
【００４５】
前記ステップＳ１５の処理後、コントローラ７０は、ステップＳ１６にて変数ｎに変数ａを加算する。この場合、ステップＳ１６の処理前の変数ｎは「０」であり、変数ａは「１」であるので、変数ｎは「１」に変更される。前記ステップＳ１６の処理後、コントローラ７０は、ステップＳ１７にて、ロックインアンプ６８のＡ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒから供給されるサンプリングデータを取込み、ステップＳ１８にて取込んだ各サンプリングデータの数が所定数Ｋに達したか否かを判定する。この所定数Ｋは、例えば数個から数十個の各サンプリングデータの数を表す値に設定されている。各サンプリングデータの数が所定数Ｋに達していなければ、コントローラ７０は、ステップＳ１８にて「Ｎｏ」と判定して、ステップＳ１７にてＡ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒから次に出力されるサンプリングデータを取込む。そして、Ａ／Ｄ変換器６８ｏ，６８ｐ，６８ｑ，６８ｒから取込んだ各サンプリングデータの数が所定数Ｋに達すると、コントローラ７０は、ステップＳ１８にて「Ｙｅｓ」と判定して、ステップＳ１９以降の処理を実行する。ステップＳ１７にて取込まれたサンプリングデータは、変数ｎ，ｍによって指定されるサンプリングデータ群として、ＲＡＭに記憶される。
【００４６】
具体的には、Ａ／Ｄ変換器６８ｏから取込んだ所定数Ｋのサンプリングデータ、すなわちＸ方向磁気検出信号の参照信号と同期した信号成分の大きさを表す所定数Ｋのデータは、サンプリングデータ群Ｓx1(ｎ,ｍ)としてＲＡＭに記憶される。Ａ／Ｄ変換器６８ｐから取込んだ所定数Ｋのサンプリングデータ、すなわちＸ方向磁気検出信号の遅延参照信号と同期した信号成分の大きさを表す所定数Ｋのデータは、サンプリングデータ群Ｓx2(ｎ,ｍ)としてＲＡＭに記憶される。Ａ／Ｄ変換器６８ｐから取込んだ所定数Ｋのサンプリングデータ、すなわちＹ方向磁気検出信号の参照信号と同期した信号成分の大きさを表す所定数Ｋのデータは、サンプリングデータ群Ｓy1(ｎ,ｍ)としてＲＡＭに記憶される。Ａ／Ｄ変換器６８ｒから取込んだ所定数Ｋのサンプリングデータ、すなわちＹ方向磁気検出信号の遅延参照信号と同期した信号成分の大きさを表す所定数Ｋのデータは、サンプリングデータ群Ｓy2(ｎ,ｍ)としてＲＡＭに記憶される。なお、この場合の変数ｎ，ｍは、共に「１」である。
【００４７】
前記ステップＳ１７，Ｓ１８の処理後、コントローラ７０は、ステップＳ１９にて変数ａが「１」であるか否かを判定する。変数ａは「１」に初期設定されているので、この場合、コントローラ７０は、ステップＳ１９にて「Ｙｅｓ」と判定して、ステップＳ２０にて、値Ｘｓ＋ｎ・ΔＸがＸ軸方向の終了値Ｘmaxよりも大きいか否かを判定する。値Ｘｓ＋ｎ・ΔＸは、Ｘ軸方向の走査間隔を表す所定値ΔＸに変数ｎを乗算して初期値Ｘｓを加算した値であり、次のＸ軸方向の検出位置（Ｘ軸方向の走査位置すなわち測定位置）を表す値（図９参照）である。値Ｘｓ＋ｎ・ΔＸが終了値Ｘmax以下であれば、コントローラ７０は、ステップＳ２０にて「Ｎｏ」と判定して、ステップＳ２１にて、Ｘ方向フィードモータ制御回路６２に、磁気センサ１０の中心位置をＸ軸方向正側に移動させるように指示する。これにより、Ｘ方向フィードモータ制御回路６２は、Ｘ方向モータ２５を作動させて磁気センサ１０の中心位置をＸ軸方向正側に移動させ始める。
【００４８】
次に、コントローラ７０は、ステップＳ２２にてＸ方向位置検出回路６１からＸ方向位置を入力し、ステップＳ２３にて入力したＸ方向位置が次のＸ軸方向の検出位置に達したか否か、すなわちＸ方向位置を示す値が値Ｘｓ＋ｎ・ΔＸ以上になったか否かを判定する。そして、Ｘ方向位置検出回路６１から入力したＸ方向位置が次のＸ軸方向の検出位置に達するまで、コントローラ７０は、ステップＳ２３にて「Ｎｏ」と判定し続けて、ステップＳ２２，Ｓ２３の処理を繰り返し実行する。Ｘ方向位置検出回路６１から入力したＸ方向位置が次のＸ軸方向の検出位置に達すると、コントローラ７０は、ステップＳ２３にて「Ｙｅｓ」と判定し、ステップＳ２４にてＸ方向フィードモータ制御回路６２に、磁気センサ１０のＸ軸方向正側への移動を停止させることを指示する。これにより、Ｘ方向フィードモータ制御回路６２は、Ｘ方向モータ２５の作動を停止させて、磁気センサ１０のＸ軸方向正側への移動を停止させる。その結果、磁気センサ１０は、値Ｘｓ＋ｎ・ΔＸで表されたＸ軸方向位置、かつＹ軸方向初期値Ｙｓを磁気センサ１０の検出位置として、太陽電池パネルＳＰの磁界を検出し始める。
【００４９】
前記ステップＳ２４の処理後、コントローラ７０は、ステップＳ１６に戻って、ステップＳ１６の処理によって変数ｎに変数ａ（この場合、ａ＝１）を加算して、前述のステップＳ１７，Ｓ１８のサンプリングデータの取込み処理を実行する。これらのステップＳ１７，Ｓ１８の処理により、値Ｘｓ＋(ｎ−１)・ΔＸで表されたＸ軸方向位置、かつＹ軸方向初期値Ｙｓを検出位置とする磁気センサ１０の磁界検出によるサンプリングデータがＲＡＭに新たに記憶される。具体的には、Ｘ方向磁気検出信号の参照信号及び遅延参照とそれぞれ同期した信号成分の大きさを表す所定数Ｋのサンプリングデータが、サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)としてＲＡＭに記憶される。また、Ｙ方向磁気検出信号の参照信号及び遅延参照信号とそれぞれ同期した信号成分の大きさを表す所定数Ｋのサンプリングデータが、サンプリングデータ群Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)としてＲＡＭに記憶される。なお、この場合の変数ｎは「２」であり、変数ｍは「１」である。
【００５０】
そして、コントローラ７０は、次のＸ軸方向の検出位置（Ｘ軸方向の走査位置）を表す値Ｘｓ＋ｎ・ΔＸが終了値Ｘmaxよりも大きくなるまで、ステップＳ１６〜Ｓ２４の処理により、磁気センサ１０による検出位置をＸ軸方向正側に所定値ΔＸずつ移動させるとともに、変数ｎを「１」ずつ増加させながら、サンプリングデータを取込む。そして、次のＸ軸方向の検出位置を表す値Ｘｓ＋ｎ・ΔＸが終了値Ｘmaxよりも大きくなると、コントローラ７０は、ステップＳ２０にて「Ｙｅｓ」と判定して、プログラムを図５ＢのステップＳ３０に進める。この状態では、サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１，２，３・・・ｎmax，ｍ＝１）がＲＡＭに記憶される。なお、値ｎmaxは、終了値Ｘmax直前の検出位置によるサンプリングデータ群に関する変数ｎの値であって、Ｘ軸方向における検出位置の数を表している。
【００５１】
コントローラ７０は、ステップＳ３０において、Ｙ方向フィードモータ制御回路６４に、磁気センサ１０による検出位置をＹ軸方向正側に移動させるように指示する。これにより、Ｙ方向フィードモータ制御回路６４は、Ｙ方向モータ３４を作動させて磁気センサ１０による検出位置をＹ軸方向正側に移動させ始める。次に、コントローラ７０は、ステップＳ３１にてＹ方向位置検出回路６３からＹ方向位置を入力し、ステップＳ３２にて入力したＹ方向位置が次のＹ軸方向の検出位置Ｙｓ＋ｍ・ΔＹに達したか否かを判定する。この次のＹ軸方向の検出位置Ｙｓ＋ｍ・ΔＹは、Ｘ軸方向の次の検出位置Ｘｓ＋ｎ・ΔＸと同様に、Ｙ軸方向の走査間隔を表す所定値ΔＹに変数ｍを乗算して初期値Ｙｓを加算した値である（図９参照）。そして、Ｙ方向位置検出回路６３から入力したＹ方向位置が次のＹ軸方向の検出位置に達するまで、コントローラ７０は、ステップＳ３２にて「Ｎｏ」と判定し続けて、ステップＳ３１，Ｓ３２の処理を繰り返し実行する。Ｙ方向位置検出回路６３から入力したＹ方向位置が次のＹ軸方向の検出位置に達すると、コントローラ７０は、ステップＳ３２にて「Ｙｅｓ」と判定し、ステップＳ３３にてＹ方向フィードモータ制御回路６４に、磁気センサ１０のＹ軸方向正側への移動を停止させることを指示する。これにより、Ｙ方向フィードモータ制御回路６４は、Ｙ方向モータ３４の作動を停止させて、磁気センサ１０検出位置のＹ軸方向正側への移動を停止させる。その結果、磁気センサ１０は、値Ｘｓ＋(ｎ-１)・ΔＸ（＝Ｘｓ＋(ｎmax-１)・ΔＸ）で表されたＸ軸方向位置、かつ値Ｙｓ＋ｍ・ΔＹ（＝Ｙｓ＋ΔＹ）で表されたＹ軸方向位置を検出位置として、太陽電池パネルＳＰの表面近傍の磁界を検出し始める。
【００５２】
前記ステップＳ３３の処理後、コントローラ７０は、ステップＳ３４にて、Ｙ方向位置検出回路６３からＹ方向位置を入力して、入力したＹ方向位置が終了値Ｙmaxによって表されたＹ軸方向の走査終了位置を越えたか否かを判定する。Ｙ方向位置が走査終了位置を越えていなければ、コントローラ７０は、ステップＳ３４にて「Ｎｏ」と判定して、ステップＳ３５にて変数ｍに「１」を加算し、ステップＳ３６にて変数ａに「−１」を乗算する。この場合、ステップＳ３５の処理によって変数ｍは「２」になり、ステップＳ３６の処理によって変数ａは「−１」になる。また、変数ｎは値ｎmaxに保たれている。前記ステップＳ３６の処理後、コントローラ７０は、ステップＳ１７に戻って、ステップＳ１７，Ｓ１８の処理より、Ｋ個ずつの各サンプリングデータ群Ｓx1(ｎmax,２)，Ｓx2(ｎmax,２)，Ｓy1(ｎmax,２)，Ｓy2(ｎmax,２)をロックインアンプ６８からそれぞれ取込み記憶する。
【００５３】
前記ステップＳ１７，Ｓ１８の処理後、コントローラ７０は、ステップＳ１９にて変数ａは「１」であるか否かを判定する。この場合、前記ステップＳ３６の処理によって変数ａは「−１」に設定されているので、コントローラ７０は、ステップＳ１９にて「Ｎｏ」と判定して、ステップＳ２５にて、値Ｘｓ＋(ｎ−２)・ΔＸがＸ軸方向の初期値Ｘｓよりも小さいか否かを判定する。この場合、変数ｎはｎmaxであり、値Ｘｓ＋(ｎ−２)・ΔＸは、太陽電池パネルＳＰの図９における右端から２番目の検出位置を左側へ移動させた際における次のＸ軸方向の検出位置（Ｘ軸方向の走査位置）を表す値である。値Ｘｓ＋(ｎ−２)・ΔＸが初期値Ｘｓよりも小さくなければ、コントローラ７０は、ステップＳ２５にて「Ｎｏ」と判定して、ステップＳ２６にて、Ｘ方向フィードモータ制御回路６２に、磁気センサ１０による検出位置をＸ軸方向負側に移動させるように指示する。これにより、Ｘ方向フィードモータ制御回路６２は、Ｘ方向モータ２５を作動させて磁気センサ１０による検出位置をＸ軸方向負側に移動させ始める。
【００５４】
次に、コントローラ７０は、ステップＳ２７にてＸ方向位置検出回路６１からＸ方向位置を入力し、ステップＳ２８にて入力したＸ方向位置が次のＸ軸方向の検出位置に達したか否か、すなわちＸ方向位置を示す値が値Ｘｓ＋(ｎ−２)・ΔＸ以下になったか否かを判定する。そして、Ｘ方向位置検出回路６１から入力したＸ方向位置が次のＸ軸方向の検出位置に達するまで、コントローラ７０は、ステップＳ２８にて「Ｎｏ」と判定し続けて、ステップＳ２７，Ｓ２８の処理を繰り返し実行する。Ｘ方向位置検出回路６１から入力したＸ方向位置が次のＸ軸方向の検出位置に達すると、コントローラ７０は、ステップＳ２８にて「Ｙｅｓ」と判定し、ステップＳ２９にてＸ方向フィードモータ制御回路６２に、検出位置のＸ軸方向負側への移動を停止させることを指示する。これにより、Ｘ方向フィードモータ制御回路６２は、Ｘ方向モータ２５の作動を停止させて、磁気センサ１０による検出位置のＸ軸方向負側への移動を停止させる。その結果、磁気センサ１０は、値Ｘｓ＋(ｎ−２)・ΔＸ（＝Ｘｓ＋(ｎmax−２)・ΔＸ）で表されたＸ軸方向位置、かつ値Ｙｓ＋(ｍ−１)・ΔＹｓ（＝Ｙｓ＋ΔＹｓ）で表されたＹ軸方向位置を検出位置として、太陽電池パネルＳＰの表面近傍の磁界を検出し始める。
【００５５】
前記ステップＳ２９の処理後、コントローラ７０は、ステップＳ１６に戻って、ステップＳ１６の処理によって変数ｎに変数ａ（この場合、ａ＝−１）を加算して、前述のステップＳ１７，Ｓ１８のサンプリングデータの取込み処理を実行する。これらのステップＳ１７，Ｓ１８の処理により、前記ステップＳ１６の処理前の値Ｘｓ＋(ｎ−２)・ΔＸ（＝Ｘｓ＋(ｎmax−２)・ΔＸ）で表されたＸ軸方向位置、かつ値Ｙｓ＋(ｍ−１)・ΔＹｓ（＝Ｙｓ＋ΔＹｓ）で表されたＹ軸方向位置を検出位置とするＫ個ずつの各サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)が取込み記憶される。なお、この取込み記憶されるサンプリングデータ群に関する変数ｎは値ｎmax−１であり、変数ｍは「２」である。
【００５６】
そして、コントローラ７０は、次のＸ軸方向の検出位置（Ｘ軸方向の走査位置）を表す値Ｘｓ＋(ｎ−２)・ΔＸが初期値Ｘｓよりも小さくなるまで、ステップＳ１６〜Ｓ１９，Ｓ２５〜Ｓ２９の処理により、検出位置をＸ軸方向負側に所定値ΔＸずつ移動させるとともに、変数ｎを「１」ずつ減少させながら、サンプリングデータを取込む。そして、次のＸ軸方向の検出位置を表す値Ｘｓ＋(ｎ−２)・ΔＸが初期値Ｘｓよりも小さくなると、コントローラ７０は、ステップＳ２５にて「Ｙｅｓ」と判定して、図５ＢのステップＳ３０に進む。なお、このときの変数ｎは「１」である。この状態では、前述したサンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１，２，３・・・ｎmax，ｍ＝１）に加えて、サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１，２，３・・・ｎmax，ｍ＝２）がＲＡＭに記憶される。
【００５７】
コントローラ７０は、前述したステップＳ３０〜Ｓ３３の処理により、Ｙ方向モータ３４を作動させて磁気センサ１０による検出位置を次のＹ軸方向検出位置Ｙｓ＋ｍ・ΔＹに移動させる。その結果、磁気センサ１０は、初期値Ｘｓで表されたＸ軸方向の初期位置、かつ値Ｙｓ＋ｍ・ΔＹ（＝Ｙｓ＋２・ΔＹ）で表されたＹ軸方向位置を検出位置として、太陽電池パネルＳＰの表面近傍の磁界を検出し始める。次に、コントローラ７０は、Ｙ方向位置検出回路６３によって検出されたＹ方向位置が終了位置を越えていないことを条件に、コントローラ７０は、ステップＳ３４にて「Ｎｏ」と判定して、ステップＳ３５にて変数ｍに「１」を加算し、ステップＳ３６にて変数ａに「−１」を乗算する。この場合、ステップＳ３５の処理によって変数ｍは「３」になり、ステップＳ３６の処理によって変数ａは「１」になる。また、変数ｎは「１」に保たれている。前記ステップＳ３６の処理後、コントローラ７０は、ステップＳ１７に戻って、ステップＳ１７，Ｓ１８の処理より、Ｋ個ずつの各サンプリングデータ群Ｓx1(１,３)，Ｓx2(１,３)，Ｓy1(１,３)，Ｓy2(１,３)をロックインアンプ６８からそれぞれ取込み記憶する。
【００５８】
前記ステップＳ１７，Ｓ１８の処理後、コントローラ７０は、ステップＳ１９にて変数ａは「１」であるか否かを判定する。この場合、前記ステップＳ３６の処理によって変数ａは「１」に設定されているので、コントローラ７０は、ステップＳ１９にて「Ｙｅｓ」と判定して、前述したステップＳ２０〜Ｓ２４，Ｓ１６〜Ｓ１９の処理を、値Ｘｓ＋ｎ・ΔＸが終了値Ｘmaxよりも大きくなるまで繰り返し実行する。これにより、磁気センサ１０による検出位置がＸ軸方向正側に走査されて、サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１，２，３・・・ｎmax，ｍ＝３）がＲＡＭに新たに記憶される。
【００５９】
そして、変数ｍを「３」に設定した状態で、磁気センサ１０の検出位置のＸ軸方向正側への走査が終了すると、ステップＳ２０の判定処理により、ステップＳ３０〜Ｓ３６の処理が実行されて、磁気センサ１０による検出位置が次のＹ軸方向位置に変更されるとともに、変数ｍ，ａが変更される。そして、前述したステップＳ１６〜Ｓ１９，Ｓ２５〜Ｓ２９の処理により、磁気センサ１０による検出位置がＸ軸方向負側へ走査され、サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１，２，３・・・ｎmax，ｍ＝４）がＲＡＭに新たに記憶される。
【００６０】
このようなステップＳ１６〜Ｓ３６の処理により、磁気センサによる検出位置がＸ軸方向を往復するように走査されるとともにＹ軸方向正側に走査されて、Ｙ方向位置検出回路６３によって検出されるＹ方向位置が終了値Ｙmaxよりも大きくなると、コントローラ７０は、ステップＳ３４にて「Ｙｅｓ」と判定して、ステップＳ３７以降の処理を実行する。この状態では、ＲＡＭ内に、Ｋ個ずつの各サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１〜ｎmax，ｍ＝１〜ｍmax）が記憶されている。なお、値ｍmaxは、終了値Ｙmax直前の検出位置によるサンプリングデータ群に関する変数ｍの値であって、Ｙ軸方向における検出位置の数を表している。
【００６１】
コントローラ７０は、ステップＳ３７にてセンサ信号取出回路６７の作動停止を指示し、ステップＳ３８にて光源駆動回路６６の作動停止を指示し、ステップＳ３９にて発光信号供給回路６５の作動停止を指示する。これらの作動停止の指示により、発光素子５０、発光信号供給回路６５、光源駆動回路６６、センサ信号取出回路６７、ロックインアンプ６８及び磁気センサ１０の作動が停止する。前記ステップＳ３９の処理後、コントローラ７０は、ステップＳ４０にて、センサ支持台１１をＸ方向駆動限界位置まで移動させることをＸ方向位置検出回路６１及びＸ方向フィードモータ制御回路６２に指示するとともに、センサ支持台１１をＹ方向駆動限界位置まで移動させることをＹ方向位置検出回路６３及びＹ方向フィードモータ制御回路６４に指示して、ステップＳ４１にてデータ取得プログラムの実行を終了する。Ｘ方向フィードモータ制御回路６２は、前述の初期設定のように、Ｘ方向位置検出回路６１と協働して、センサ支持台１１をＸ方向駆動限界位置まで移動させる。Ｙ方向フィードモータ制御回路６４は、前述のように、Ｙ方向位置検出回路６３と協働して、センサ支持台１１をＹ方向駆動限界位置まで移動させる。
【００６２】
次に、前記データ取得プログラムで取得した所定数Ｋずつのサンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)（ｎ＝１〜ｎmax，ｍ＝１〜ｍmax）を用いて、太陽電池パネルＳＰを評価する方法について説明する。この場合、作業者は、入力装置７１を操作して、コントローラ７０に図６Ａ乃至図６Ｈの評価プログラムを実行させる。この評価プログラムにおいては、太陽電池パネルＳＰの合否判定が行われたり、作業者が太陽電池パネルＳＰの合否を判定するために、太陽電池パネルＳＰのＸ−Ｙ座標の各点における電流の大きさと向きである電流分布の画像が表示装置に表示される。そこで、評価プログラムを説明する前に、太陽電池セルＳＣの電極に異常が発生した場合における電流分布について説明しておく。
【００６３】
図１０Ａは、太陽電池セルＳＣの電極の１つが断線している場合における電流の大きさの分布の実験結果を示している。(Ａ)は、１つの太陽電池セルＳＣに着目して、一対のバスバー電極８７，８７と一対の裏面電極８１，８１（裏面電極側端子８１ａ，８１ａを図示）との間に抵抗を接続した等価回路を示している。なお、電流の方向は、図示上方向及び右方向を正とする。この状態で、図示左側のバスバー電極８７に流れる電流の大きさは、Ｙ方向位置において次のように変化する。まず、断線が生じていない場合には、図示左側のバスバー電極８７に流れる電流の大きさの分布は、(Ｂ)のＡに示すように、Ｙ方向位置が変化してもほぼ一定となった。一方、バスバー電極８７側を断線させた場合（(Ａ)のＢ断線）、図示左側のバスバー電極８７に流れる電流の大きさは、(Ｂ)のＢに示すように、断線箇所に近い下部であるＹ方向位置では小さく、上方に向かうに従って大きくなる。また、裏面電極側端子８１ａ側を断線させた場合（(Ａ)のＣ断線）、図示左側のバスバー電極８７に流れる電流の大きさは、(Ｂ)のＣに示すように、断線箇所に遠い下部であるＹ方向位置では大きく、上方に向かうに従って大きくなる。これらは、断線箇所に近い位置の電流が流れ難く、断線した位置から離れるに従って、グリッド電極８６などを介して流れ込む電流が増加するためであると推定される。
【００６４】
(Ｃ)は、前述したＡ，Ｂ，Ｃの条件下で、右側のバスバー電極８７に流れる電流の大きさのＹ方向における分布を示している。この場合、(Ｂ)の場合とは逆に、左側のバスバー電極８７の断線箇所に近いＹ方向位置の電流の大きさは大きく、前記断線箇所から離れたＹ方向位置ほど電流の大きさは小さくなる。これは、左側のバスバー電極８７を流れることができなくなった分の電流が右側のバスバー電極８７に流れ込んでいるためと推定される。このように、バスバー電極８７側及び裏面電極側端子８１ａ側を断線させた場合には、左側及び右側のバスバー電極８７，８７に流れる電流の大きさは、断線してない場合に比べて極めて大きく変化することが分かる。なお、前記説明では、電流の大きさ（電流の絶対値）の変化について説明したが、バスバー電極８７内を流れる電流の向きはほぼＹ方向であるので、Ｙ方向の電流の大きさを用いても同じ結果が得られる。
【００６５】
また、(Ｄ)は、前述したＡ，Ｂ，Ｃの条件下で、左右のバスバー電極８７，８７間に流れる電流の大きさのＸ方向における分布を示している。この場合の電流分布は、左右のバスバー電極８７，８７の長尺方向全体にわたるＸ方向の電流分布の平均値又はバスバー電極の８７，８７の長尺方向の中間位置のＸ方向の電流分布である。この電流には、グリッド電極８６にＸ方向に流れる電流に加えて、太陽電池セルＳＣの表面に流れる面電流も含まれる。正常な場合、バスバー電極８７，８７間にはほとんど電流が流れていない。一方、Ｂ断線の場合には、負方向（すなわち左方向）の電流が流れている。また、Ｃ断線の場合には、正方向（すなわち右方向）の電流が流れている。これらは、断線により流れることができなくなった分の電流がバスバー電極８７，８７間に流れるためと推定される。このように、前記断線により、バスバー電極８７，８７間に流れる電流の大きさも、正常な場合に比べて大きく変化する。また、このバスバー電極８７，８７間を流れる電流の向きはＸ方向である傾向が強いので、Ｘ方向の電流の大きさを用いても同じ結果が得られる。
【００６６】
図１０Ｂは、太陽電池セルＳＣの左側のバスバー電極８７の接触抵抗ｒが大きい場合における電流の大きさの分布の実験結果を示している。(Ａ)は、１つの太陽電池セルＳＣに着目して、左右のバスバー電極８７，８７間に抵抗を接続した等価回路を示している。この場合、接触抵抗ｒを、左右のバスバー電極８７，８７間に、５０ｃｍ及び１５０ｃｍの電線を接続することにより実現している。なお、左右のバスバー電極８７，８７間の距離は、例えば５ｃｍである。また、この場合も、電流の方向は、図示上方向及び右方向を正とする。このような接触抵抗ｒにより、図示左側のバスバー電極８７に流れる電流の大きさは、Ｙ方向位置において次のように変化する。まず、正常時（左右のバスバー電極８７，８７が通常に接続されている場合）には、図示左側のバスバー電極８７に流れる電流の大きさの分布は、(Ｂ)のＡに示すように、Ｙ方向位置が変化してもほぼ一定となった。一方、左右のバスバー電極８７，８７間に５０ｃｍの電線を接続した場合には、図示左側のバスバー電極８７に流れる電流の大きさは、(Ｂ)のＢに示すように、接触抵抗ｒが大きい下部であるＹ方向位置では小さく、上方に向かうに従って大きくなる。また、左右のバスバー電極８７，８７間に１５０ｃｍの電線を接続した場合には、図示左側のバスバー電極８７に流れる電流の大きさは、(Ｂ)のＣに示すように、接触抵抗ｒが大きい下部であるＹ方向位置ではさらに小さくなる。これらは、接触抵抗ｒが大きくて電流が流れ難い位置の電流が小さくなり、前記電流が流れ難い位置から離れるに従って、グリッド電極８６などを介して流れ込む電流が増加するためであると推定される。そして、この電流の変化は、前記図１０Ａの断線の場合に比べて小さいものである。
【００６７】
(Ｃ)は、前述したＡ，Ｂ，Ｃの条件下で、右側のバスバー電極８７に流れる電流の大きさのＹ方向における分布を示している。この場合も、(Ｂ)の場合とは逆に、左側のバスバー電極８７の接触抵抗ｒの大きなＹ方向位置の電流の大きさは大きく、前記断線箇所から離れたＹ方向位置ほど電流の大きさは小さくなる。この場合も、左側のバスバー電極８７を流れることができなくなった分の電流が右側のバスバー電極８７に流れ込んでいるためと推定される。このように、バスバー電極８７側の接触抵抗が大きくなった場合も、前記断線の場合よりはその変化は小さいが、左側及び右側のバスバー電極８７，８７に流れる電流の大きさは、接触抵抗が正常な場合に比べて極めて大きく変化することが分かる。また、裏面電極８１側の接触抵抗が大きくなった場合も、同様な現象が現われる。なお、この場合も、前記説明では、電流の大きさ（電流の絶対値）の変化について説明したが、バスバー電極８７内を流れる電流の向きはほぼＹ方向であるので、Ｙ方向の電流の大きさを用いても同じ結果が得られる。
【００６８】
また、(Ｄ)は、前述したＡ，Ｂ，Ｃの条件下で、左右のバスバー電極８７，８７間に流れる電流の大きさのＸ方向における分布を示している。この場合の電流分布も、左右のバスバー電極８７，８７の長尺方向全体にわたるＸ方向の電流分布の平均値又はバスバー電極の８７，８７の長尺方向の中間位置のＸ方向の電流分布である。この電流にも、グリッド電極８６にＸ方向に流れる電流に加えて、太陽電池セルＳＣの表面に流れる面電流も含まれる。正常な場合、バスバー電極８７，８７間にはほとんど電流が流れていない。一方、左右のバスバー電極８７，８７間に５０ｃｍの電線を接続した場合には、負方向（すなわち左方向）の電流が流れている。また、左右のバスバー電極８７，８７間に１５０ｃｍの電線を接続した場合には、前記Ｂの場合よりも絶対値の大きな負方向（すなわち左方向）の電流が流れている。これは、接触抵抗ｒにより流れることができなくなった分の電流がバスバー電極８７，８７間に流れるためと推定される。このように、電極の接触抵抗が大きくなった場合も、前記断線の場合よりはその変化は小さいが、バスバー電極８７，８７間に流れる電流の大きさも、正常な場合に比べて大きく変化する。また、このバスバー電極８７間を流れる電流の向きはＸ方向である傾向が強いので、Ｘ方向の電流の大きさを用いても同じ結果が得られる。
【００６９】
図１０Ｃは、太陽電池セルＳＣのバスバー電極８７とグリッド電極８６との間に接触不良が生じている場合における電流の大きさの分布の実験結果を示している。(Ａ)は、１つの太陽電池セルＳＣに着目して、左側のバスバー電極８７が図示上部位置（図示×印位置）にてグリッド電極８６と接触不良である状態の等価回路を示している。なお、この場合も、電流の方向は、図示上方向及び右方向を正とする。この状態で、図示左側のバスバー電極８７に流れる電流の大きさは、Ｙ方向位置において次のように変化する。まず、バスバー電極８７とグリッド電極８６との間に接触不良が生じていない場合には、図示左側のバスバー電極８７に流れる電流の大きさの分布は、(Ｂ)のＡに示すように、若干は変化するもののＹ方向位置が変化してもほぼ一定となった。一方、バスバー電極８７とグリッド電極８６との間に接触不良が生じた場合、図示左側のバスバー電極８７に流れる電流の大きさは、(Ｂ)のＢに示すように、接触不良位置から遠い下部であるＹ方向位置では大きく、接触不良位置である上方に向かうに従って小さくなる。これは、接触不良位置では、バスバー電極８７に流れる電流が減少するためであると推定される。
【００７０】
(Ｃ)は、前述したＡ，Ｂの条件下で、右側のバスバー電極８７に流れる電流の大きさのＹ方向における分布を示している。この場合、(Ｂ)の場合とは逆に、左側のバスバー電極８７の接触不良に近い上部であるＹ方向位置の電流の大きさは大きく、前記接触不良箇所から離れたＹ方向位置ほど電流の大きさは小さくなる。これは、左側のバスバー電極８７を流れることができなくなった分の電流が右側のバスバー電極８７に流れ込んでいるためと推定される。このように、バスバー電極８７とグリッド電極８６との間に接触不良が生じた場合も、左側及び右側のバスバー電極８７，８７に流れる電流の大きさは、接触不良が生じていない場合に比べて極めて大きく変化することが分かる。なお、前記説明では、電流の大きさ（電流の絶対値）の変化について説明したが、この場合も、バスバー電極８７内を流れる電流の向きはほぼＹ方向であるので、Ｙ方向の電流の大きさを用いても同じ結果が得られる。
【００７１】
また、(Ｄ)は、前述したＡ，Ｂの条件下で、左右のバスバー電極８７，８７間に流れる電流の大きさのＸ方向における分布を示している。この場合の電流分布も、左右のバスバー電極８７，８７の長尺方向全体にわたるＸ方向の電流分布の平均値又はバスバー電極の８７，８７の長尺方向の中間位置のＸ方向の電流分布である。この場合も、この電流には、グリッド電極８６にＸ方向に流れる電流に加えて、太陽電池セルＳＣの表面に流れる面電流も含まれる。正常な場合、バスバー電極８７，８７間にはほとんど電流が流れていない。一方、バスバー電極８７とグリッド電極８６との間に接触不良が生じている場合には、正方向（すなわち右方向）の電流が流れている。これは、接触不良箇所により流れることができなくなった分の電流がバスバー電極８７，８７間に流れるためと推定される。このように、バスバー電極８７とグリッド電極８６との間に接触不良が生じた場合も、バスバー電極８７，８７間に流れる電流の大きさも、正常な場合に比べて大きく変化する。また、この場合も、このバスバー電極８７，８７間を流れる電流の向きはＸ方向である傾向が強いので、Ｘ方向の電流の大きさを用いても同じ結果が得られる。
【００７２】
次に、評価プログラムの実行について説明する。この評価プログラムの実行は図６ＡのステップＳ１００にて開始され、コントローラ７０は、ステップＳ１０２にて変数ｎ，ｍをそれぞれ「１」に初期設定するとともに、変数ＣＨを「０」に初期設定する。変数ｎ，ｍは、それぞれＸ，Ｙ軸方向における検出位置を指定するための変数である。そして、値ｎmax，ｍmaxは、前述のように、それぞれＸ，Ｙ軸方向における検出位置の数を表している。変数ＣＨは、詳しくは後述するが、「０」によりバスバー電極８７がＹ軸方向に延設されていることを表し、「１」によりバスバー電極８７がＸ軸方向に延設されていることを表す。前記ステップＳ１０２の処理後、コントローラ７０は、ステップＳ１０４にて、変数ｎ，ｍによって指定される所定数Ｋずつのサンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)の磁界の大きさの各平均値Ｓx1，Ｓx2，Ｓy1，Ｓy2を計算する。具体的には、各サンプリングデータ群Ｓx1(ｎ,ｍ)，Ｓx2(ｎ,ｍ)，Ｓy1(ｎ,ｍ)，Ｓy2(ｎ,ｍ)ごとに、Ｋ個のサンプリングデータを加算して値Ｋで除算する。
【００７３】
次に、コントローラ７０は、ステップＳ１０６にて、前記計算した平均値Ｓx1，Ｓx2を用いた下記式１，２の演算の実行により、Ｘ方向磁気検出信号の極大値Ｈｘと、Ｘ方向磁気検出信号の参照信号に対する位相シフト量θｘとを計算する。
Ｈｘ＝(Ｓx12＋Ｓx22)1/2  …式１
θｘ＝tan-1(Ｓx2/Ｓx1)  …式２
これにより、Ｘ方向磁気検出信号としてＨｘ・sin(２πｆｔ＋θｘ)が検出されたことになる。なお、ｆは、発光信号供給回路６５から出力される発光信号及び参照信号の周波数に等しい。
【００７４】
次に、コントローラ７０は、ステップＳ１０８にて、前記計算した平均値Ｓy1，Ｓy2を用いた下記式３，４の演算の実行により、Ｙ方向磁気検出信号の極大値Ｈｙと、Ｙ方向磁気検出信号の参照信号に対する位相シフト量θｙとを計算する。
Ｈｙ＝(Ｓy12＋Ｓy22)1/2  …式３
θｙ＝tan-1(Ｓy2/Ｓy1)   …式４
これにより、Ｙ方向磁気検出信号としてＨｙ・sin(２πｆｔ＋θｙ)が検出されたことになる。
【００７５】
次に、コントローラ７０は、ステップＳ１１０にて、前記計算したＨｘ，θｘ，Ｈｙ，θｙを用いた下記式５，６の演算の実行により、通電電流が最大となるタイミング（前記Ｘ方向磁気検出信号Ｈｘ・sin(２πｆｔ＋θｘ)及び前記Ｙ方向磁気検出信号Ｈｙ・sin(２πｆｔ＋θｙ)における２πｆｔがπ／２のタイミング）における、検査位置の磁界の強さＨxy及び磁界の向きθxyを計算する。この場合、通電電流が最大となるタイミングを採用した理由は、位相シフト量θｘ，θｙは小さく、通電電流が最大となるタイミング近傍で検査位置の磁界の強さＨxyが最大値近傍の値になるためである。なお、位相シフト量θｘ，θｙが小さくなく、通電電流が最大となるタイミング近傍で検査位置の磁界の強さＨxyが最大値近傍にならない場合には、磁界の強さＨxyが最大値近傍になるようなタイミングの角度をπ／２に代えて用いればよい。
Ｈxy＝[{Ｈｘ・sin(π/２+θx)}2＋{Ｈｙ・sin(π/２+θｙ)}2]1/2  …式５
θxy＝tan-1{Ｈｙ・sin(π/２+θｙ)}/{Ｈｘ・sin(π/２+θx)}  …式６
【００７６】
次に、コントローラ７０は、ステップＳ１１２にて、太陽電池パネルＳＰに流れる電流は前記磁界の強さＨxyに比例し、かつ方向が磁界の方向θxyと−π／２異なることから、前記計算したＨxy，θxyを用いた下記式７，８の演算の実行により、通電電流が最大となるタイミングにおける、燃料電池ＦＣの電解質中の検査位置に流れる電流の大きさＩxy及び方向θixyを計算する。ただし、値Ｋは、比例定数である。
Ｉxy＝Ｋ・Ｈxy  …式７
θixy＝θxy−π／２  …式８
そして、このステップＳ１１２にて、前記計算された電流の大きさＩxy及び方向θixyは、燃料電池ＦＣの検査位置を表す変数ｎ，ｍを用いて電流の大きさデータＩxy(ｎ，ｍ)及び方向データθixy(ｎ，ｍ)としてＲＡＭ又は記憶装置に記憶される。
【００７７】
次に、コントローラ７０は、ステップＳ１１４にて、前記計算したＩxy，θixyを用いた下記式９，１０の演算の実行により、太陽電池パネルＳＰの検査位置においてＸ方向及びＹ方向に流れる電流の大きさＩx，Ｉyを計算する。
Ｉx＝Ｉxy・cosθixy  …式９
Ｉy＝Ｉxy・sinθixy  …式１０
そして、このステップＳ１１４にて、前記計算された電流の大きさＩx，Ｉyも、太陽電池パネルＳＰの検査位置を表す変数ｎ，ｍを用いて電流の大きさデータＩx(ｎ，ｍ)，Ｉy(ｎ，ｍ)としてＲＡＭ又は記憶装置に記憶される。
【００７８】
そして、コントローラ７０は、ステップＳ１１６にて変数ｎがＸ軸方向の検出位置数を表す値ｎmaxに達したか否かを判定する。変数ｎが値ｎmaxに達していなければ、コントローラ７０は、ステップＳ１１６にて「Ｎｏ」と判定し、ステップＳ１１８にて変数ｎに「１」を加算してステップＳ１０４に戻る。そして、前述したステップＳ１０４〜Ｓ１１４の処理を実行した後、コントローラ７０は、ステップＳ１１６にてふたたび変数ｎが値ｎmaxに達したか否かを判定する。変数ｎが値ｎmaxに達しない限り、ステップＳ１０４〜１１８の処理が繰り返し実行される。
【００７９】
このようなステップＳ１０４〜Ｓ１１８の繰り返し処理中、変数ｎが値ｎmaxに達すると、コントローラ７０は、ステップＳ１１６にて「Ｙｅｓ」と判定して、ステップＳ１２０にて変数ｍがＹ軸方向の検出位置数を表す値ｍmaxに達したか否かを判定する。変数ｍが値ｍmaxに達しなければ、コントローラ７０は、ステップＳ１２０にて「Ｎｏ」と判定し、ステップＳ１１２にて変数ｍに「１」を加算し、ステップＳ１２４にて変数ｎを「１」に初期設定して、ステップＳ１０４に戻る。そして、変数ｎが所定値ｎmaxに達するまで前述したステップＳ１０４〜Ｓ１１８の処理を繰り返し実行した後、コントローラ７０は、ステップＳ１２０にてふたたび変数ｍが値ｍmaxに達したか否かを判定する。変数ｍが値ｍmaxに達しない限り、ステップＳ１０４〜１２４の処理が繰り返し実行される。そして、変数ｍが値ｍmaxに達すると、コントローラ７０は、ステップＳ１２０にて「Ｙｅｓ」と判定して、図６ＢのステップＳ１３０に進む。
【００８０】
この時点では、太陽電池パネルＳＰの検査位置ごとに、電流の大きさデータＩxy(ｎ，ｍ)、電流の方向データθixy(ｎ，ｍ)、Ｘ方向の電流の大きさデータＩx(ｎ，ｍ)及びＹ方向の電流の大きさデータＩy(ｎ，ｍ)（ｎ＝１〜ｎmax，ｍ＝１〜ｍmax）が、ＲＡＭ又は記憶装置に記憶されている。
【００８１】
次に、バスバー電極８７位置の電流の大きさデータIxy(ｎ，ｍ)を抽出するステップＳ１３０〜Ｓ１３４の処理を実行する。まず、コントローラ７０は、ステップＳ１３０にて、前記計算した全ての電流の大きさデータＩxy(ｎ，ｍ)の中から、最大の電流の大きさを最大電流Ｉmaxとして抽出する。次に、コントローラ７０は、ステップＳ１３２にて、全ての電流の大きさデータＩxy(ｎ，ｍ)の分布において、度数分布が極大であり、かつ前記最大電流Ｉmaxに最も近い電流の大きさを電流値Ｉｃとして計算する。図１１は、前記電流の大きさデータＩxy(ｎ)の分布、最大電流Ｉmax及び電流値Ｉｃを示している。前記ステップＳ１３２の処理後、コントローラ７０は、ステップＳ１３４にて、前記全ての電流の大きさデータＩxy(ｎ)の中から、値{Ｉｃ−２・(Ｉmax-Ｉｃ)}以上の電流の大きさデータＩxy(ｎ)を抽出する。これらのステップＳ１３０〜１３４の処理は、バスバー電極８７位置の電流の大きさデータIxy(ｎ，ｍ)は、他の部分と比べて際立って大きいことに基づく。これにより、少なくとも、バスバー電極８７位置の電流の大きさデータを含む大きな電流の大きさデータIxy(ｎ，ｍ)が抽出される。
【００８２】
次に、太陽電池パネルＳＰのステージ４０上への置き方により、バスバー電極８７がＹ軸方向に延設されているか、Ｘ軸方向に延設されているかを検出するステップＳ１４０〜Ｓ１６２の処理を実行する。コントローラ７０は、まず、ステップＳ１４０にて変数ｎを「１」に初期設定し、ステップＳ１４２にて、前記ステップＳ１３４の処理によって抽出した電流の大きさデータIxy(ｎ，ｍ)において、変数ｎによって指定され、かつ変数ｍが連続している大きさデータIxy(ｎ，ｍ)の数を計算して値Ｎｎとして設定する。そして、コントローラ７０は、ステップＳ１４４にて、値Ｎｎが所定数以上であるかを判定する。この判定処理は、バスバー電極８７が変数ｎによって指定されるＸ軸方向位置にあり、かつＹ軸方向に延設されていれば、前記値Ｎｎは１つの太陽電池セルＳＣのＹ軸方向の長さをＹ軸方向の検出間隔ΔＹ（図９参照）で除した値程度の大きさであることに基づくものである。したがって、前記所定数は、上述したように、作業者が入力した１つの太陽電池セルＳＣのＹ軸方向の長さを検出間隔ΔＹで除した値よりも若干小さな値である。この場合、値Ｎｎが所定数以上でなければ、コントローラ７０は、ステップＳ１４４にて「Ｎｏ」と判定して、ステップＳ１４６に進む。
【００８３】
ステップＳ１４６においては、コントローラ７０は、変数ｎをＸ軸方向の検出間隔ΔＸ（図９参照）に乗算した値ｎ・ΔＸが所定距離以上であるかを判定する。この処理は、後述する変数ｎの増加による検出位置のＸ軸方向への変化により、１つ分の太陽電池セルＳＣのＸ軸方向の幅に対応した長さ分だけ、前記ステップＳ１４２，Ｓ１４４の処理を実行し終えたかを判定するものである。したがって、前記所定距離は、作業者が入力した１つの太陽電池セルＳＣのＸ軸方向の長さにほぼ等しい。値ｎ・ΔＸが所定距離以上でなければ、コントローラ７０は、ステップＳ１４６にて「Ｎｏ」と判定して、ステップＳ１４８にて変数ｎに「１」を加算して、ステップＳ１４２に戻る。そして、これらのステップＳ１４２〜Ｓ１４６からなる循環処理中に、ステップＳ１４２の処理によって計算された値Ｎｎが所定数以上になると、コントローラ７０は、ステップＳ１４４にて「Ｙｅｓ」すなわちバスバー電極８７はＹ軸方向に延設されていると判定して、図６ＣのステップＳ１７０に進む。一方、値Ｎｎが所定数以上になったことが検出されず、値ｎ・ΔＸが所定距離以上になると、コントローラ７０は、ステップＳ１４６にて「Ｙｅｓ」すなわちバスバー電極８７はＹ軸方向に延設されていないと判定して、ステップＳ１５０〜Ｓ１５６の処理を実行する。
【００８４】
ステップＳ１５０〜Ｓ１５６の処理は、バスバー電極８７がＸ軸方向に延設されているかを検出する処理である。コントローラ７０は、まず、ステップＳ１５０にて変数ｍを「１」に初期設定し、ステップＳ１５２にて、前記ステップＳ１３４の処理によって抽出した電流の大きさデータIxy(ｎ，ｍ)において、変数ｍによって指定され、かつ変数ｎが連続している大きさデータIxy(ｎ，ｍ)の数を計算して値Ｎｍとして設定する。そして、コントローラ７０は、ステップＳ１５４にて、値Ｎｍが所定数以上であるかを判定する。この判定処理は、バスバー電極８７が変数ｍによって指定されるＹ軸方向位置にあり、かつＸ軸方向に延設されていれば、前記値Ｎｍは１つの太陽電池セルＳＣのＸ軸方向の長さをＸ軸方向の検出間隔ΔＸ（図９参照）で除した値程度の大きさであることに基づくものである。したがって、前記所定数は、作業者が入力した１つの太陽電池セルＳＣのＸ軸方向の長さを検出間隔ΔＸで除した値よりも若干小さな値である。この場合、値Ｎｍが所定数以上でなければ、コントローラ７０は、ステップＳ１５４にて「Ｎｏ」と判定して、ステップＳ１５６に進む。
【００８５】
ステップＳ１５６においては、コントローラ７０は、変数ｍをＹ軸方向の検出間隔ΔＹ（図９参照）に乗算した値ｍ・ΔＹが所定距離以上であるかを判定する。この処理は、後述する変数ｍの増加による検出位置のＹ軸方向への変化により、１つ分の太陽電池セルＳＣのＹ軸方向の幅に対応した長さ分だけ、前記ステップＳ１５２，Ｓ１５４の処理を実行し終えたかを判定するものである。したがって、前記所定距離は、作業者が入力した１つの太陽電池セルＳＣのＹ軸方向の長さにほぼ等しい。値ｍ・ΔＹが所定距離以上でなければ、コントローラ７０は、ステップＳ１５６にて「Ｎｏ」と判定して、ステップＳ１５８にて変数ｍに「１」を加算して、ステップＳ１５２に戻る。そして、これらのステップＳ１５２〜Ｓ１５６からなる循環処理中に、ステップＳ１５２の処理によって計算された値Ｎｍが所定数以上になると、コントローラ７０は、ステップＳ１５４にて「Ｙｅｓ」すなわちバスバー電極８７はＸ軸方向に延設されていると判定して、ステップＳ１６０，Ｓ１６２の処理後、図６ＣのステップＳ１７０に進む。
【００８６】
ステップＳ１６０においては、コントローラ７０は、前記ステップＳ１３４の処理によって抽出した電流の大きさデータIxy(ｎ，ｍ)を電流の大きさデータIxy(ｍ，ｎ)に並び換える。これは、後述する処理において、バスバー電極８７がＸ軸方向に延設されている場合と、バスバー電極８７がＹ軸方向に延設されている場合との処理を共通にするもので、電流の大きさデータIxy(ｎ，ｍ)のＸ座標値をＹ座標値に変更し、Ｙ座標値をＸ座標値に変更することになる。そして、ステップＳ１６２においては、コントローラ７０は、変数ＣＨを、前記電流の大きさデータIxy(ｎ，ｍ)を電流の大きさデータIxy(ｍ，ｎ)に並び換えを表すとともに、バスバー電極８７がＸ軸方向に延設されていること表す「１」に変更する。
【００８７】
一方、値Ｎｍが所定数以上になったことが検出されず、値ｍ・ΔＹが所定距離以上になると、コントローラ７０は、ステップＳ１５６にて「Ｙｅｓ」すなわちバスバー電極８７はＹ軸方向に延設されていないと判定して、図６ＨのステップＳ３１０に進む。なお、このステップＳ１５６における「Ｙｅｓ」との判定は、バスバー電極８７のＸ軸方向の延設も、Ｙ軸方向の延設も検出されないことを意味する。
【００８８】
次に、バスバー電極８７の位置を示す電極位置座標Ｂxy(ｎ，ｍ)（すなわち磁気センサ１０による検出位置群）を検出して、マトリクス状に配置したバスバー電極８７のＸ方向及びＹ方向の順番を特定するＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙ（図７参照）を、前記検出した電極位置座標Ｂxy(ｎ，ｍ)に割当てる図６Ｃ及び図６ＤのステップＳ１７０〜Ｓ２１４の処理について説明する。なお、値ｎ，ｍは、Ｘ軸方向及びＹ軸方向の磁気センサ１０による検出位置をそれぞれ示す変数である。まず、コントローラ７０は、図６ＣのステップＳ１７０にて、変数ｎを「１」に初期設定するとともに、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙをそれぞれ「１」に初期設定する。
【００８９】
次に、コントローラ７０は、ステップＳ１７２にて、前記ステップＳ１３４にて抽出した電流の大きさデータIxy(ｎ，ｍ)に含まれて変数ｎによって指定される電流の大きさデータIxy(ｎ，ｍ)の数を値Ｎnmとして計算する。そして、コントローラ７０は、ステップＳ１７４にて、この値Ｎnmが所定数以上であるかを判定する。これらのステップＳ１７２，Ｓ１７４の処理は、変数ｎによって指定されるＸ方向位置がバスバー電極８７の位置に対応していれば、バスバー電極８７の位置では電流の大きさデータIxy(ｎ，ｍ)は大きいはずであるので、値Ｎnmも大きいはずである。なお、前記所定数は、バスバー電極８７のＹ方向の合計長さとＹ方向の移動距離単位ΔＹによって決まる値であり、例えば、前記合計長さを移動距離単位ΔＹで除した値の半分程度の値である。値を低めに設定するのは、後述するように、異常により電流の大きさが小さいバスバー電極８７が存在する可能性があるためである。変数ｎによって指定されるＸ方向位置がバスバー電極８７の位置に対応していなければ、値Ｎnmは小さいので、コントローラ７０は、ステップＳ１７４にて「Ｎｏ」と判定して、ステップＳ１７６にて変数ｎがＸ軸方向の検出位置数を表す値ｎmaxに達したか判定する。変数ｎが値ｎmaxに達していなければ、コントローラ７０は、ステップＳ１７６にて「Ｎｏ」と判定して、ステップＳ１７８にて変数ｎに「１」を加算して、前記ステップＳ１７２，Ｓ１７４の処理を実行する。
【００９０】
変数ｎによって指定されるＸ方向位置がバスバー電極８７の位置に対応して値Ｎnmが所定数よりも大きくなると、コントローラ７０は、ステップＳ１７４にて「Ｙｅｓ」と判定して、ステップＳ１８０にて、Ｙ軸方向の磁気センサ１０の検出位置を示す変数ｍを「１」に初期設定するとともに、バスバー電極８７のＹ軸方向の検出位置の数（バスバー電極８７の長さをＹ軸方向の移動距離単位ΔＹで除した数）をカウントするための変数ｐを「０」に初期設定して、ステップＳ１８２〜Ｓ１８６の判定処理を実行する。
【００９１】
これらのステップＳ１８２〜Ｓ１８６の判定処理について説明する前に、バスバー電極８７に対応するＸ方向位置のＹ方向の電流の大きさデータIxy(ｎ，ｍ)の分布について説明しておく。図１２に示すように、複数のバスバー電極８７はＹ方向に沿って配置されている。そして、複数のバスバー電極８７は、図１２及び図１３(Ａ)に示すように、接続線８８によって裏面電極８１に接続されている。この場合、バスバー電極８７を流れる電流の大きさデータIxy(ｎ，ｍ)が大きいが、接続線８８を流れる電流はＸ−Ｙ平面を流れる電流ではなく、Ｚ方向（下方向）に流れる成分を含むために小さい。したがって、複数のバスバー電極８７に沿ってＹ方向に流れる電流は、図１３(Ｂ)に示すように、バスバー電極８７に対応する位置では大きく、接続線８８に対応した位置では小さく、バスバー電極８７と接続線８８間では連続的に急激に変化する。
【００９２】
ふたたび、図６Ｃの説明に戻ると、ステップＳ１８２においては、前記ステップＳ１３４の処理によって抽出した電流の大きさデータ群Ｉxy(ｎ，ｍ)（ただし、変数ｎは特定値）の中に、変数ｍによって指定される電流の大きさデータＩxy(ｎ，ｍ)が存在するか否かが判定される。この場合、変数ｍに指定されるＹ方向位置がバスバー電極８７に対応する位置であれば、図１３(Ｂ)に示すように、その位置の電流の大きさデータＩxy(ｎ，ｍ)は大きいので、前記ステップＳ１８２の判定においては、「Ｙｅｓ」すなわち存在すると判定される。また、変数ｍに指定されるＹ方向位置が接続線８８に対応する位置であってバスバー電極８７から離れた位置にあれば、その位置の電流の大きさデータＩxy(ｎ，ｍ)は小さいので、前記ステップＳ１８２の判定においては、「Ｎｏ」すなわち存在しないと判定される。
【００９３】
ステップＳ１８４においては、変数ｎ，ｍによって指定される電流の大きさデータＩxy(ｎ，ｍ)と、変数ｎ，ｍ−１によって指定される電流の大きさデータＩxy(ｎ，ｍ−１)とを用いて計算した値{Ｉxy(ｎ，ｍ)−Ｉxy(ｎ，ｍ−１)}／Ｉxy(ｎ，ｍ−１)が所定の負の値−Ｉｏ以下であるか否かが判定される。これは、変数ｍによって指定される位置が変数ｍの増加によりバスバー電極８７を越えて接続線８８の領域に入ったものの、バスバー電極８７に近いために、前記ステップＳ１８２の処理によって「Ｙｅｓ」すなわち存在すると判定されたときでも、バスバー電極８７に対応する位置でないことを判定するものである。すなわち、変数ｍによって指定されるＹ方向位置が接続線８８領域に入った直後であれば、電流の大きさデータIxy(ｎ，ｍ)は急激に減少しているはずであるから、変数ｍによって指定されるＹ方向位置の電流の大きさデータIxy(ｎ，ｍ)は、変数ｍ−１によって指定される前記Ｙ方向位置の１つの前のＹ方向位置の電流の大きさデータIxy(ｎ，ｍ)よりある程度小さくなるはずである。したがって、この場合には、前記計算した値{Ｉxy(ｎ，ｍ)−Ｉxy(ｎ，ｍ−１)}／Ｉxy(ｎ，ｍ−１)は、ある程度絶対値の大きな負の値となるはずである。したがって、変数ｍによって指定される位置がバスバー電極８７を越えて接続線８８の領域に入っても、前記ステップＳ１８２の処理によって「Ｙｅｓ」すなわち存在すると判定された場合には、このステップＳ１８４にて「Ｙｅｓ」と判定され、それ以外の場合には「Ｎｏ」と判定される。
【００９４】
ステップＳ１８６においては、変数ｎ，ｍによって指定される電流の大きさデータＩxy(ｎ，ｍ)と、変数ｎ，ｍ＋１によって指定される電流の大きさデータＩxy(ｎ，ｍ−１)とを用いて計算した値{Ｉxy(ｎ，ｍ)−Ｉxy(ｎ，ｍ＋１)}／Ｉxy(ｎ，ｍ＋１)が所定の負の値−Ｉｏ以下であるか否かが判定される。これは、変数ｍによって指定される位置が接続線８８の領域にあるものの、変数の増加によってバスバー電極８７に近づいてきたために、前記ステップＳ１８２の処理によって「Ｙｅｓ」すなわち存在すると判定されたときでも、バスバー電極８７に対応する位置でないことを判定するものである。すなわち、変数ｍによって指定されるＹ方向位置がバスバー電極８７領域に入る直前であれば、電流の大きさデータIxy(ｎ，ｍ)は急激に増加しているはずであるから、変数ｍによって指定されるＹ方向位置の電流の大きさデータIxy(ｎ，ｍ)は、変数ｍ＋１によって指定される前記Ｙ方向位置の１つの後のＹ方向位置の電流の大きさデータIxy(ｎ，ｍ)よりある程度小さくなるはずである。したがって、この場合には、前記計算した値{Ｉxy(ｎ，ｍ)−Ｉxy(ｎ，ｍ＋１)}／Ｉxy(ｎ，ｍ＋１)は、ある程度絶対値の大きな負の値となるはずである。したがって、変数ｍによって指定される位置がバスバー電極８７に近づいた接続線８８の領域にあっても、前記ステップＳ１８２の処理によって「Ｙｅｓ」すなわち存在すると判定された場合には、このステップＳ１８６にて「Ｙｅｓ」と判定され、それ以外の場合には「Ｎｏ」と判定される。
【００９５】
したがって、変数ｍによって指定されるＹ方向位置がバスバー電極８７に対応する位置であれば、コントローラ７０は、ステップＳ１８２にて「Ｙｅｓ」と判定するとともに、ステップＳ１８４，Ｓ１８６にてそれぞれ「Ｎｏ」と判定して、ステップＳ１８８にて変数ｐに「１」を加算し、ステップＳ１９０にて変数ｍに「１」を加算して、ステップＳ１８２に戻る。変数ｍの増加によって検出位置がＹ方向に移動されても、検出位置がバスバー電極８７に対応する位置である限り、前記ステップＳ１８２〜Ｓ１９０の循環処理が繰り返し実行されて、変数ｐが変数ｍの増加に従って増加する。このステップＳ１８２〜Ｓ１９０の循環処理中、検出位置がバスバー電極８７を超えて接続線８８の領域に入ると、コントローラ７０は、ステップＳ１８２にて「Ｎｏ」又はステップＳ１８４，Ｓ１８６にて「Ｙｅｓ」と判定して、図６ＤのステップＳ１９２に進む。
【００９６】
ステップＳ１９２においては、前記変数ｐが所定数以上であるかを判定する。この場合、所定数は、バスバー電極８７の長さを移動距離単位ΔＹで除した値よりも若干小さな値であり、本実施形態の場合、前記入力した太陽電池セルＳＣのＹ方向の長さと移動距離単位ΔＹとにより予め決められた値である。バスバー電極８７の位置に対応した電流の大きさＩxy(ｎ，ｍ)が正確に検出されていれば、変数ｐは所定数以上であるので、コントローラ７０はステップＳ１９２にて「Ｙｅｓ」と判定して、ステップＳ１９４にてバスバー電極８７のＸ−Ｙ座標位置を表す電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)内のいずれかにＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられているか否かを判定する。この判定処理は、今回検出したバスバー電極８７の位置を表す電極位置座標Ｂxy(ｎ，ｍ)を定義して同電極位置座標Ｂxy(ｎ，ｍ)にＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙを割当てる前に、Ｘ方向位置が変数ｎ−１で指定される前回検出のバスバー電極８７の位置に対応した電極位置座標Ｂxy(ｎ−１，ｍ)にＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが既に割当てられているかを判定するものである。もし、前回検出のバスバー電極８７の位置を表す電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)に未だＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられていなければ（すなわち電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)が未だ定義されていなければ）、コントローラ７０は、ステップＳ１９４にて「Ｎｏ」と判定して、ステップＳ１９６にて電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)を定義してＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙを割当て、ステップＳ２０６に進む。この場合、変数ｐの使用により、バスバー電極８７の長さに対応した位置分の電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)が定義されて、この定義された電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)にＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられたことになる。
【００９７】
一方、前回検出の電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)にＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが既に割当てられていれば、コントローラ７０は、ステップＳ１９４にて「Ｙｅｓ」と判定して、ステップＳ１９８，Ｓ２００に進む。ステップＳ１９８においては、前回検出の電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)に対応した位置の電流の大きさデータＩxy(ｎ−１，ｍ−ｐ)〜Ｉxy(ｎ−１，ｍ−１)の平均値Ｉavebが計算される。また、ステップＳ２００においては、今回検出の電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)に対応した位置の電流の大きさデータＩxy(ｎ，ｍ−ｐ)〜Ｉxy(ｎ，ｍ−１)の平均値Ｉaveaが計算される。そして、コントローラ７０は、ステップＳ２０２にて、今回の平均値Ｉaveaが前回の平均値Ｉaveb以上であるか否かを判定する。今回の平均値Ｉaveaが前回の平均値Ｉaveb以上であれば、コントローラ７０は、ステップＳ２０２にて「Ｙｅｓ」と判定して、前回検出の電極位置座標Ｂxy(ｎ−１，ｍ−ｐ)〜Ｂxy(ｎ−１，ｍ−１)に割当てられているＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙを、今回検出の電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)に割当て、ステップＳ２０６に進む。一方、今回の平均値Ｉaveaが前回の平均値Ｉaveb以上でなければ、コントローラ７０は、ステップＳ２０２にて「Ｎｏ」と判定して、前記割当ての変更を行うことなく、ステップＳ２０６に進む。これらのステップＳ１９４〜Ｓ２０４の処理により、１つのバスバー電極８７に対しては、最も平均電流の大きな１組の電流の大きさデータＩxy(ｎ，ｍ−ｐ)〜Ｉxy(ｎ，ｍ−１)に対応した電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)にのみ、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられる。ステップＳ２０６においては、コントローラ７０は、Ｙ方向電極番号ｇｙに「１」を加算して、ステップＳ２０８に進む。これは、図１２のＹ方向に沿って次のバスバー電極８７の検出を意味する。
【００９８】
また、前記ステップＳ１９２の判定処理において、「Ｎｏ」すなわち変数ｐが所定数未満である場合には、コントローラ７０は、ステップＳ１９２にて「Ｎｏ」と判定して、ステップＳ１９４〜Ｓ２０６の処理を実行しないで、ステップＳ２０８に進む。この場合、電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)に対する、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙの割当ては行われない。
【００９９】
ステップＳ２０８においては、変数ｍが値ｍmax（すなわち終了値Ｙmax直前の検出位置によるサンプリングデータ群に関する変数ｍの値）に達したかが判定される。変数ｍが値ｍmaxに達していなければ、コントローラ７０は、ステップＳ２０８にて「Ｎｏ」と判定して、ステップＳ２１０にて変数ｐを「０」に初期設定して、図６ＣのステップＳ１９０に進む。コントローラ７０は、ステップＳ１９０にて変数ｍに「１」を加算し、ステップＳ１８２〜Ｓ１８４の判定処理をふたたび実行する。ステップＳ１８０〜Ｓ１８４の処理は、前述のように、Ｙ方向の検出位置がバスバー電極８７間の接続線８８に対応していることを判定する処理である。そして、検出位置が接続線８８に対応した位置にある状態では、コントローラ７０は、ステップＳ１８２にて「Ｎｏ」又はステップＳ１８４，Ｓ１８６にて「Ｙｅｓ」と判定して、図６ＤのステップＳ１９２に進む。この場合、変数ｐは前記ステップＳ２１０の処理により「０」に保たれるので、コントローラ７０はステップＳ１９２にて「Ｎｏ」と判定し続けて、図６ＤのステップＳ１９２，Ｓ２０８，Ｓ２１０及び図６ＣのステップＳ１９０，Ｓ１８２〜Ｓ１８６の循環処理を繰り返し実行する。
【０１００】
この循環処理中、ステップＳ１９０による変数ｍの増加により、検出位置がバスバー電極８７に対応した位置まで来ると、前述の場合と同様に、コントローラ７０は、ステップＳ１８２にて「Ｙｅｓ」、ステップＳ１８４，Ｓ１８６にてそれぞれ「Ｎｏ」と判定して、ステップＳ１８２〜Ｓ１９０の循環処理を繰り返し実行する。そして、検出位置が接続線８８の領域に入ると、前述のように、コントローラ７０は、ステップＳ１８２にて「Ｎｏ」又はステップＳ１８４，Ｓ１８６にて「Ｙｅｓ」と判定して、図６ＤのステップＳ１９２〜Ｓ２０６の処理を実行する。これらのステップＳ１９２〜Ｓ２０６の処理により、Ｙ方向の次のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)が定義されて次のＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられる。また、変数ｐが所定数未満のときには、ステップＳ１９２における「Ｎｏ」との判定のもとに、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙの割当ては行われない。
【０１０１】
これらのステップＳ１９２〜Ｓ２０６の処理後、コントローラ７０は、前記ステップＳ２０８，Ｓ２１０の処理を実行して、ふたたび図６ＣのステップＳ１９０に進む。これにより、変数ｍの増加により、図１２に示すＹ方向のバスバー電極８７の位置を表す電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)が次々に定義されてＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられていく。そして、変数ｍが値ｍmaxに達すると、コントローラ７０は、ステップＳ２０８にて「Ｙｅｓ」と判定し、ステップＳ２１２にてＸ方向電極番号ｇｘに「１」を加算し、Ｙ方向電極番号ｇｙを「１」に戻して、図６ＣのステップＳ１７８に進む。コントローラ７０は、ステップＳ１７８にて変数ｎに「１」を加算した後、ステップＳ１７２に進み、前述したステップＳ１７２〜Ｓ１７８の循環処理により、図１２に示すＸ方向の次のバスバー電極８７の列を検出する。そして、前記ステップＳ１８２〜Ｓ２１０の処理により、次のＸ方向の列におけるＹ方向の複数のバスバー電極８７を検出し、前記ステップＳ２１２，Ｓ２１４の処理後の図６ＣのステップＳ１７０〜Ｓ１９０及び図６ＤのステップＳ１９２〜Ｓ２１０の処理により、Ｘ方向に移動しながら次々にバスバー電極８７を検出して、バスバー電極８７の位置を表す電極位置座標Ｂxy(ｎ，ｍ−ｐ)〜Ｂxy(ｎ，ｍ−１)が次々に定義されてＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられていく。そして、変数ｎが値ｎmax（終了値Ｘmax直前の検出位置によるサンプリングデータ群に関する変数ｎの値）に達すると、コントローラ７０は、ステップＳ１７６にて「Ｙｅｓ」と判定して、図６ＥのステップＳ２２０に進む。
【０１０２】
次に、前記ステップＳ１７０〜Ｓ２１４の処理によって抽出されるべきバスバー電極８７の位置を示す電極位置座標Ｂxy(ｎ，ｍ)（すなわち磁気センサ１０による検出位置群）が断線や接触不良等の異常により電流の大きさデータが小さいために抽出されていない箇所を検出し、検出した箇所の電極位置座標Ｂxy(ｎ，ｍ)にＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙ（図７参照）を割当てる図６Ｅ及び図６ＦのステップＳ２２０〜Ｓ２５６の処理について説明する。まず、コントローラ７０は、図６ＥのステップＳ２２０にて、変数ｋ，ｓを「１」にそれぞれ初期設定する。変数ｋは、Ｘ方向においてバスバー電極８７を指定するための変数である。変数ｓは、Ｙ方向においてバスバー電極８７を指定するための変数である。
【０１０３】
次に、コントローラ７０は、ステップＳ２２２にて、前記Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙの割当て処理により割当てられたＹ方向電極番号ｇｙの最大値が、前記入力したＹ方向の太陽電池セルＳＣの数に等しい否かを判定する。すなわち、割当てられたＸ方向電極番号ｇｘの少なくとも１つにおいて、Ｙ方向の全てのバスバー電極８７の位置が検出されているかを判定する。図１２の左側からＸ方向に沿って２列のバスバー電極８７のように、Ｙ方向の全てのバスバー電極８７が検出されていて、Ｙ方向電極番号ｇｙの最大値がＹ方向の太陽電池セルＳＣの数に等しければ、コントローラ７０は、ステップＳ２２２にて「Ｙｅｓ」と判定して、ステップＳ２２４に進む。一方、Ｙ方向電極番号ｇｙの最大値がＹ方向の太陽電池セルＳＣの数に等しくなければ、コントローラ７０は、ステップＳ２２２にて「Ｎｏ」と判定して、図６ＨのステップＳ３１０に進む。これは、Ｘ方向の全てのバスバー電極８７の列において、Ｙ方向の全てのバスバー電極８７の位置が検出されていないことは、入力ミス又は何らかの異常が発生している可能性が高いからである。
【０１０４】
ステップＳ２２４においては、変数ｋに等しいＸ方向電極番号ｇｘ（ｇｘ＝ｋ）によって特定されるＹ方向電極番号ｇｙの最大値が、前記入力したＹ方向の太陽電池セルＳＣの数に等しいか否かが判定される。前記最大値がＹ方向の太陽電池セルＳＣの数に等しいとき（図１２の左の２列のバスバー電極８７群）、すなわち全てのＹ方向の磁気センサ１０による検出位置群が抽出されているとき、コントローラ７０は、ステップＳ２２４にて「Ｙｅｓ」と判定し、ステップＳ２２６にて変数ｋはＸ方向電極番号ｇｘの最大値（すなわちＸ方向の太陽電池セルＳＣの数に１つの太陽電池セルＳＣにおけるバスバー電極８７の数を乗算した値）に等しいかを判定する。そして、等しくないことを条件に、ステップＳ２２８にて変数ｋに「１」を加算して、ふたたび前記ステップＳ２２４の判定処理を実行する。これにより、全てのＹ方向の磁気センサ１０による検出位置群が抽出されていれば、Ｘ方向におけるバスバー電極８７の位置を指定するための変数ｋを順次増加させながら、ステップＳ２２４〜Ｓ２２８の処理を実行する。
【０１０５】
前記ステップＳ２２４にて「Ｎｏ」すなわち全てのＹ方向の磁気センサ１０による検出位置群が抽出されていないと判定されたとき、コントローラ７０は、ステップＳ２３０にて、変数ｋに等しいＸ方向電極番号ｇｘが割当てられている電極位置座標Ｂxy(ｎ，ｍ)のＹ方向の中央値ＡvemをＹ方向電極番号ｇｙごとに計算する。次に、コントローラ７０は、ステップＳ２３２にて、変数ｓ＋１によって指定されるＡvem(ｓ＋１)から変数ｓによって指定されるＡvem(ｓ)及び値ｃｅを減算した絶対値｜Ａvem(ｓ＋１)−Ａvem(ｓ)−ｃｅ｜が所定の小さな値Δｐ以下であるかを判定する。この場合、変数ＣＨが「０」であってバスバー電極８７がＹ軸方向に延設されている場合には、値ｃｅは、太陽電池セルＳＣのＹ方向の長さを移動距離単位ΔＹで除した値である。一方、変数ＣＨが「１」であってバスバー電極８７がＸ軸方向に延設されている場合、すなわち前記図６ＢのステップＳ１６０の処理によって電流の大きさデータIxy(ｎ，ｍ)が電流の大きさデータＩxy(m,n)に並べ換えられている場合、値ｃｅは、太陽電池セルＳＣのＸ方向の長さを移動距離単位ΔＸで除した値である。したがって、値ｃｅは、バスバー電極８７の延設方向における位置検出数に等しい。
【０１０６】
今、バスバー電極８７がＹ方向にて連続して検出されていれば、前記絶対値｜Ａvem(ｓ＋１)−Ａvem(ｓ)−ｃｅ｜はほぼ「０」である。したがって、この場合には、コントローラ７０は、ステップＳ２３２にて「Ｙｅｓ」と判定して、ステップＳ２３４にて変数ｓに「１」を加算し、ステップＳ２３６にて変数ｓ＋１によって指定される次の中央値Ａvem(ｓ＋１)が存在していることを条件に「Ｙｅｓ」と判定して、ふたたびステップＳ２３２の判定処理を実行する。一方、図１２のＸ方向の３列目のように、Ｙ方向の４番目のバスバー電極８７が検出されていない場合、変数ｓが「３」であるとき、前記絶対値｜Ａvem(ｓ＋１)−Ａvem(ｓ)−ｃｅ｜はほぼ値ｃｅとなる。この場合には、コントローラ７０は、ステップＳ２３２にて「Ｎｏ」と判定し、ステップＳ２３８にて変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙに割当てられた電極位置座標Ｂxy(ｎ，ｍ)の変数ｍに値ｃｅをそれぞれ加算した電極位置座標Ｂxy(ｎ，ｍ＋ｃｅ)を新たに定義し、定義した電極位置座標Ｂxy(ｎ，ｍ＋ｃｅ)に変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓ＋１に等しいＹ方向電極番号ｇｙを割当て、変数ｍの中央値Ａvem(ｇｙ)を計算する。次に、ステップＳ２４０にて、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓ＋１以上のＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)のＹ方向電極番号ｇｙをそれぞれＹ方向電極番号ｇｙ＋１に変更する。これにより、図１２のＸ方向の３列目でＹ方向の４番目のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算され、Ｙ方向電極番号ｇｙも順番にＹ方向の全ての電極位置座標Ｂxy(ｎ，ｍ)に割当てられる。
【０１０７】
また、図１２のＸ方向の４列目のように、Ｙ方向の３番目及び４番目のバスバー電極８７が連続して検出されていない場合、変数ｓが「２」であるとき、前記絶対値｜Ａvem(ｓ＋１)−Ａvem(ｓ)−ｃｅ｜はほぼ値２・ｃｅとなる。そして、この場合には、前述のステップＳ２３８，Ｓ２４０の処理により、Ｘ方向に４列目でＹ方向の３番目のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算され、Ｙ方向電極番号ｇｙも順番にＹ方向の全ての電極位置座標Ｂxy(ｎ，ｍ)に割当てられる。しかし、この場合には、この補充によっても、変数ｓが「３」になったとき、前記絶対値｜Ａvem(ｓ＋１)−Ａvem(ｓ)−ｃｅ｜はほぼ値ｃｅとなる。したがって、ステップＳ２３４の処理後、コントローラ７０は、ステップＳ２３６にて「Ｙｅｓ」と判定し、ステップＳ２３２にて「Ｎｏ」と判定して、ふたたびステップＳ２３８，Ｓ２４０の処理を実行する。これにより、Ｘ方向に４列目でＹ方向の４番目のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算され、Ｙ方向電極番号ｇｙも順番にＹ方向の全ての電極位置座標Ｂxy(ｎ，ｍ)に割当てられる。その結果、４列目のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)の数も太陽電池セルＳＣの数に等しくなる。なお、３つ以上の電極位置座標Ｂxy(ｎ，ｍ)が欠落しても同様に、前記ステップＳ２３２〜Ｓ２４０の処理により、欠落した電極位置座標Ｂxy(ｎ，ｍ)は補充される。
【０１０８】
前記ステップＳ２３２〜Ｓ２４０の処理中、変数ｓ＋１によって指定される中央値Ａvem(ｓ＋１)が存在しなくなると、すなわちＹ方向の次の電極位置座標Ｂxy(ｎ，ｍ)の中央値Ａvem(ｓ＋１)が存在しなくなると、コントローラ７０は、ステップＳ２３６にて「Ｎｏ」と判定して、ステップＳ２４２にて変数ｓが変数ｋに等しいＸ方向電極番号ｇｘによって特定されるＹ方向電極番号ｇｙの最大値であるかを判定する。最大値であれば、コントローラ７０は、ステップＳ２４２にて「Ｙｅｓ」と判定し、前述したステップＳ２２６以降の処理を実行する。このステップＳ２２８の処理により、変数ｋがＸ方向電極番号ｇｘの最大値に等しくなると、すなわちＸ方向の最後の列の電極位置座標Ｂxy(ｎ，ｍ)の補充処理が終了すると、コントローラ７０は、ステップＳ２２８にて「Ｙｅｓ」と判定して、図６ＧのステップＳ２６０に進む。
【０１０９】
一方、図１２のＸ方向の５列目及び６列目のように、Ｙ方向の最後のバスバー電極８７が検出されていない場合、又は図１２のＸ方向の７列目及び８列目のように、Ｙ方向の最初のバスバー電極８７が検出されていない場合には、前述したステップＳ２３２，Ｓ２３８，Ｓ２４０の処理では、電極位置座標Ｂxy(ｎ，ｍ)の欠落を補充できない。そして、この場合には、中央値Ａvem(ｓ＋１)（すなわち次の中央値Ａvem）が存在しなくなった時点でも、変数ｓがＹ方向電極番号ｇｙの最大値に等しくなく、コントローラ７０は、ステップＳ２４２にて「Ｎｏ」と判定して、図６ＦのステップＳ２４４に進む。
【０１１０】
ステップＳ２４４においては、コントローラ７０は、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)のＸ座標値ｎをＸ方向座標ｎｘとして設定するとともに、変数ｓによって指定される中央値Ａvem(ｓ)に前記所定値ｃｅ（太陽電池セルＳＣのＹ方向の検出位置数）を加算した値Ａvem(ｓ)＋ｃｅをＹ方向座標ｎｙとする。そして、座標ｎｘ，ｎｙで指定される電流の大きさデータＩxy(ｎｘ−ａ，ｎｙ−ａ)〜Ｉxy(ｎｘ＋ａ，ｎｙ＋ａ)の中から最大値を抽出して最大電流値Ｉemaxとする。なお、値ａは、５〜数１０程度の予め決められた値である。これにより、電極位置座標Ｂxy(ｎ，ｍ)の中央座標値を囲む位置の所定範囲における電流の大きさデータIxy(ｎ，ｍ)の最大値が最大電流値Ｉemaxとして設定される。前記ステップＳ２４４の処理後、コントローラ７０は、ステップＳ２４６にて前記最大電流値Ｉemaxが設定値以上であるかを判定する。なお、この設定値は、太陽電池セルＳＣが存在するならば、太陽電池セルＳＣが異常であっても、そのバスバー電極８７位置にて検出される比較的小さな予め決められた電流値である。
【０１１１】
そして、前記位置にバスバー電極８７が存在して、前記最大電流値Ｉemaxが設定値以上であれば、コントローラ７０は、ステップＳ２４６にて「Ｙｅｓ」と判定してステップＳ２４８に進む。これは、図１２のＸ方向の５列目又は６列目のように、Ｙ方向の最後のバスバー電極８７が検出されていない場合の処理である。ステップＳ２４８においては、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)の変数ｍに所定値ｃｅをそれぞれ加算した電極位置座標Ｂxy(ｎ，ｍ＋ｃｅ)を新たに定義し、新たに定義した電極位置座標Ｂxy(ｎ，ｍ＋ｃｅ)に変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓ＋１に等しいＹ方向電極番号ｇｙを割当て、変数ｍの中央値Ａvem(ｇｙ)を計算する。これにより、検出されていなかったＹ方向の後方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算される。そして、コントローラ７０は、図６ＥのステップＳ２３４以降の処理を実行するが、図１２のＸ方向の５列目のように、Ｙ方向の最後の１つのバスバー電極８７が検出されていなかった場合には、ステップＳ２３４の処理よって増加された変数ｓはＹ方向電極番号ｇｙの最大値を示すことになるので、ステップＳ２４２にて「Ｙｅｓ」と判定されてステップＳ２２６以降に進められる。
【０１１２】
しかし、図１２のＸ方向の６列目のように、Ｙ方向の最後の２つのバスバー電極８７が検出されていなかった場合には、ステップＳ２４２にてふたたび「Ｎｏ」と判定されて、前述したステップＳ２４４〜Ｓ２４８からなる処理が実行されて、検出されていなかったＹ方向の後方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)がさらに補充されるとともに、その中央値Ａvemも計算される。その結果、全てのバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充される。さらに、Ｙ方向の最後の３つ以上のバスバー電極８７が検出されていなかった場合にも、前述したステップＳ２４４〜Ｓ２４８からなる処理が実行されて、検出されていなかったＹ方向の後方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算される。
【０１１３】
次に、図１２のＸ方向の７列目及び８列目のように、Ｙ方向の最初のバスバー電極８７が検出されていない場合について説明する。この場合には、前記ステップＳ２４４の処理によって計算されるＹ方向座標ｎｙ（＝Ａvem(ｓ)＋ｃｅ）付近には、太陽電池セルＳＣは存在しない。したがって、この場合には、コントローラ７０は、ステップＳ２４６にて「Ｎｏ」と判定して、ステップＳ２５０に進む。ステップＳ２４４においては、コントローラ７０は、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)のＸ座標値ｎをＸ方向座標ｎｘとして設定するとともに、中央値Ａvem(１)から前記所定値ｃｅを減算した値Ａvem(１)−ｃｅをＹ方向座標ｎｙとする。そして、座標ｎｘ，ｎｙで指定される電流の大きさデータＩxy(ｎｘ−ａ，ｎｙ−ａ)〜Ｉxy(ｎｘ＋ａ，ｎｙ＋ａ)の中から最大値を抽出して最大電流値Ｉsmaxとする。なお、この場合も、値ａは、５〜数１０程度の予め決められた値である。これにより、電極位置座標Ｂxy(ｎ，ｍ)の中央座標値を囲む位置の所定範囲における電流の大きさデータIxy(ｎ，ｍ)の最大値が最大電流値Ｉsmaxとして設定される。前記ステップＳ２５０の処理後、コントローラ７０は、ステップＳ２５２にて、前記ステップＳ２４６と同様に、前記最大電流値Ｉsmaxが前記設定値以上であるかを判定する。
【０１１４】
そして、前記位置にバスバー電極が存在して、前記最大電流値Ｉsmaxが設定値以上であれば、コントローラ７０は、ステップＳ２５２にて「Ｙｅｓ」と判定してステップＳ２５４に進む。これは、図１２のＸ方向の７列目又は８列目のように、Ｙ方向の最初のバスバー電極８７が検出されていない場合の処理である。ステップＳ２５４においては、変数ｋに等しいＸ方向電極番号ｇｘ及び「１」であるＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)の変数ｍから前記所定値ｃｅをそれぞれ減算した電極位置座標Ｂxy(ｎ，ｍ−ｃｅ)を新たに定義し、新たに定義した電極位置座標Ｂxy(ｎ，ｍ−ｃｅ)に変数ｋに等しいＸ方向電極番号ｇｘ及び「１」であるＹ方向電極番号ｇｙを割当て、変数ｍの中央値Ａvem(ｇｙ)を計算する。これにより、検出されていなかったＹ方向の前方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算される。前記ステップＳ２５４の処理後、コントローラ７０は、ステップＳ２５６にて、変数ｋに等しいＸ方向電極番号ｇｘ及び「２」以上のＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)のＹ方向電極番号ｇｙをそれぞれＹ方向電極番号ｇｙ＋１に変更する。これにより、図１２のＸ方向の７列目でＹ方向の１番目のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算され、Ｙ方向電極番号ｇｙも順番にＹ方向の全ての電極位置座標Ｂxy(ｎ，ｍ)に割当てられる。
【０１１５】
そして、コントローラ７０は、図６ＥのステップＳ２３４以降の処理を実行するが、図１２のＸ方向の７列目のように、Ｙ方向の最初の１つのバスバー電極８７のみが検出されていなかった場合には、ステップＳ２３４の処理によって増加された変数ｓはＹ方向電極番号ｇｙの最大値を示すことになるので、ステップＳ２４２にて「Ｙｅｓ」と判定されてステップＳ２２６以降に進められる。
【０１１６】
しかし、図１２のＸ方向の８列目のように、Ｙ方向の最初の２つのバスバー電極８７が検出されていなかった場合には、ステップＳ２４２にてふたたび「Ｎｏ」と判定されて、前述したステップＳ２５０〜Ｓ２５６からなる処理が実行されて、検出されていなかったＹ方向の前方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算される。その結果、全てのバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充される。さらに、Ｙ方向の最初の３つ以上のバスバー電極８７が検出されていなかった場合にも、前述したステップＳ２５０〜Ｓ２５６からなる処理が実行されて、検出されていなかったＹ方向の前方のバスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)が補充されるとともに、その中央値Ａvemも計算される。
【０１１７】
また、図６ＦのステップＳ２４６において「Ｎｏ」と判定されるとともに、ステップＳ２５２においても「Ｎｏ」と判定された場合には、コントローラ７０は、図６ＨのステップＳ３１０以降に進める。これは、バスバー電極８７に対応した電極位置座標Ｂxy(ｎ，ｍ)の補充ができない場合には、太陽電池検査装置に異常が発生していて、太陽電池パネルＳＰの異常を的確に検出できない可能性が高いためである。
【０１１８】
次に、太陽電池パネルＳＰの合否の判定及び電流分布の画像表示を行う図６Ｇ及び図６ＨのステップＳ２６０〜Ｓ３１２の処理について説明する。まず、コントローラ７０は、ステップＳ２６０にて、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられている全ての電極位置座標Ｂxy(ｎ，ｍ)群に対応した全てのＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)群のデータであって、各大きさデータＩｙ(ｎ，ｍ)群の両端部に対応する大きさデータＩxy(ｎ，ｍ)群を除いた全ての大きさデータＩxy(ｎ，ｍ)群のトータル平均値Ｉavtyを計算する。この処理により、図７において、全てのバスバー電極８７の両端部を除いてバスバー電極８７に流れる電流の検出位置ごとのＹ方向の電流のトータル平均値Ｉavtyが計算される。各大きさデータＩｙ(ｎ，ｍ)群の両端部すなわちバスバー電極８７の両端部を除く理由は、この両端部では電流が安定しないことがあるためで、両端部の長さとしては全長の数パーセントから２０パーセント程度である。
【０１１９】
次に、コントローラ７０は、ステップＳ２６２にて、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられている全ての電極位置座標Ｂxy(ｎ，ｍ)群に対応した全てのＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)群以外の、Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)群のトータル平均値Ｉavtxを計算する。すなわち、全てのＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)群から、全ての電極位置座標Ｂxy(ｎ，ｍ)群に対応した全てのＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)群を除いたＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)群の平均値Ｉavtxを計算する。この処理により、図７において、全てのバスバー電極８７が位置する部分を除く、太陽電池パネルＳＰの全体に流れるＸ方向の電流のトータル平均値Ｉavtxを計算することになる。そして、コントローラ７０は、ステップＳ２６４にて、変数ｋ，ｓ，ｔ，ｅｐ，ｑを「１」にそれぞれ初期設定する。変数ｋは、図７に示すように、Ｘ方向電極番号ｇｘを指定するための１〜ｋmaxで変化する変数である。変数ｓは、Ｙ方向電極番号ｇｙを指定するための１〜ｓmaxで変化する変数である。変数ｔは、Ｘ方向の太陽電池セルＳＣを指定するための１〜ｔmaxで変化する変数である。変数ｅｐは、１つの太陽電池セルＳＣ内のバスバー電極８７を指定するための変数であり、図７では「１」又は「２」である。変数ｑは、バスバー電極８７の長尺方向の位置を指定するための変数であり、本実施形態では「１」〜「３」で変化する。
【０１２０】
前記ステップＳ２６４の処理後、コントローラ７０は、ステップＳ２６６にて、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙが割当てられた電極位置座標Ｂxy(ｎ，ｍ)に対応したＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)から、前記ステップＳ２６０の場合と同様に両端部を除いたＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)を抽出する。そして、ステップＳ２６８にて、前記抽出したＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)を用いて次のような計算を実行する。まず、変数ｋに等しいＸ方向電極番号ｇｘ及び変数ｓに等しいＹ方向電極番号ｇｙが割当てられた１つのバスバー電極８７に流れる平均電流として、前記抽出したＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)の平均値Ｉaveyを計算する。この平均値Ｉaveyを、変数ｔ，ｓ，ｅｐによって指定される評価データＡ(ｔ,ｓ,ｅｐ)としてＲＡＭ又は記憶装置に記憶しておく。
【０１２１】
次に、前記ステップＳ２６８にて、前記計算した平均値Ｉaveyの絶対値｜Ｉavey｜を前記ステップＳ２６０の処理により計算したトータル平均値Ｉavtyの絶対値｜Ｉavty｜で除算して、除算結果｜Ｉavey｜／｜Ｉavty｜を１つのバスバー電極８７に流れる電流レベルを評価するための評価データＢ(ｔ，ｓ，ｅｐ)としてＲＡＭ又は記憶装置に記憶しておく。また、前記抽出したＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)の最大値から最小値を減算して、減算結果を前記計算した平均値Ｉaveyの絶対値｜Ｉavey｜で除算して、除算結果（最大値−最小値）／｜Ｉavey｜を、１つのバスバー電極８７に流れる電流レベルの変動を評価するための評価データＣ(ｔ，ｓ，ｅｐ)としてＲＡＭ又は記憶装置に記憶しておく。また、前記抽出したＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)の標準偏差σを前記計算した平均値Ｉaveyの絶対値｜Ｉavey｜で除算して、除算結果σ／｜Ｉavey｜を、１つのバスバー電極８７に流れる電流レベルの変動を評価するための評価データＤ(ｔ，ｓ，ｅｐ)としてＲＡＭ又は記憶装置に記憶しておく。
【０１２２】
前記ステップＳ２６８の処理後、コントローラ７０は、ステップＳ２７０にて、変数ｅｐが前記入力した太陽電池セルＳＣの電極数に達したか否かを判定する。変数ｅｐが太陽電池セルＳＣの電極数に達していなければ、コントローラ７０は、ステップＳ２７０にて「Ｎｏ」と判定し、ステップＳ２７２にて変数ｅｐに「１」を加算し、かつステップＳ２７４にて変数ｋに「１」を加算して、ステップＳ２６６に戻る。そして、変数ｅｐが太陽電池セルＳＣの電極数に達するまで、ステップＳ２６６〜２７４の処理を実行する。これにより、変数ｔ，ｓによって指定される１つの太陽電池セルＳＣの各バスバー電極８７に関する評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)が計算されてＲＡＭ又は記憶装置に記憶されることになる。
【０１２３】
変数ｅｐが太陽電池セルＳＣの電極数に達すると、コントローラ７０は、ステップＳ２７０にて「Ｙｅｓ」と判定し、ステップＳ２７６にて、前記計算したＸ方向電極番号ｇｘ及びＹ方向電極番号ｇｙが割当てられた太陽電池セルＳＣの全てのバスバー電極８７に関する評価データＡ(ｔ，ｓ，ｅｐ)を用いて、それらの最大値から最小値を減算してそれらの平均値で除算することにより、１つの太陽電池セルＳＣ内のバスバー電極８７間の電流のばらつきを評価するための評価データＥ(ｔ，ｓ)を計算してＲＡＭ又は記憶装置に記憶する。
【０１２４】
次に、コントローラ７０は、ステップＳ２７８にて、値(ｋ−ｅｐ＋１)に等しいＸ方向電極番号ｇｘ及び値ｓに等しいＹ方向電極番号ｇｙが割当てられている電極位置座標Ｂxy(ｎ，ｍ)と、値ｋに等しいＸ方向電極番号ｇｘ及び値ｓに等しいＹ方向電極番号ｇｙが割当てられている電極位置座標Ｂxy(ｎ，ｍ)と間の全ての座標(ｎ，ｍ)のうちで、変数ｍが値{Ａvem(ｓ)−(２−ｑ)・ｃｅ／３}である座標(ｎ，ｍ)に対応したＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)を抽出する。ここで、抽出されるＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)について説明しておく。図７に示すように、変数ｋはＸ方向のバスバー電極８７を指定するもので、値ｅｐは１つの太陽電池セルＳＣ内のバスバー電極８７の数（図７の例では２つ）を表すものである。そして、このステップＳ２７８の処理の時点では、前記ステップＳ２６６〜Ｓ２７４の循環処理の終了により、変数ｋはＸ方向に配置された各太陽電池セルＳＣの図示右側の最後のバスバー電極８７を指定するための値になっている。したがって、図７の最も左側の太陽電池セルＳＣの処理時には、同最も左側の太陽電池セルＳＣのＸ方向の両端のバスバー電極８７の位置に挟まれたＸ方向の全ての座標(ｎ，ｍ)のうちで、値{Ａvem(ｓ)−(２−ｑ)・ｃｅ／３}により指定されたＹ方向位置の座標が指定される。そして、値Ａvem(ｓ)は変数ｓによって指定されるＹ方向の太陽電池セルＳＣのバスバー電極８７のＹ方向の中央位置を表し、値ｃｅはバスバー電極８７のＹ方向の長さにほぼ等しいので、最初、変数ｑが「１」であるときには、前記バスバー電極８７の位置に挟まれたＸ方向の全ての座標(ｎ，ｍ)のうちで、バスバー電極８７のＹ方向の中央位置からバスバー電極８７の長さの１／３だけ小さなＹ方向位置の座標(ｎ，ｍ)に対応したＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)が抽出される。
【０１２５】
前記ステップＳ２７８の処理後、コントローラ７０は、ステップＳ２８０にて、前記抽出したＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)を用いて次の計算を実行する。まず、抽出した全ての大きさデータＩｘ(ｎ，ｍ)の平均値Ｉavexを計算する。次に、この平均値の絶対値｜Ｉavex｜を前記ステップＳ２６２の処理によって計算したＸ方向の電流の大きさのトータル平均値の絶対値｜Ｉavtx｜で除算して、除算結果をバスバー電極８７間の電流レベルを評価するための評価値データＦ(ｔ,ｓ，ｑ)としてＲＡＭ又は記憶装置に記憶しておく。
【０１２６】
次に、コントローラ７０は、ステップＳ２８２にて変数ｑが「３」に達したか否かを判定する。そして、変数ｑが「３」に達していなければ、コントローラ７０は、ステップＳ２８２にて「Ｎｏ」と判定し、ステップＳ２８３にて変数ｑに「１」を加算して、前述したステップＳ２７８，Ｓ２８０の処理を実行する。この場合、変数ｑは「２」であるので、ステップＳ２７８の処理においては、前記バスバー電極８７の位置に挟まれたＸ方向の全ての座標(ｎ，ｍ)のうちで、バスバー電極８７のＹ方向の中央位置の座標(ｎ，ｍ)に対応したＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)が抽出される。そして、この抽出した大きさデータＩｘ(ｎ，ｍ)に関しても、ステップＳ２８０の処理により、平均値Ｉavexが計算され、この平均値Ｉavexを用いて評価値データＦ(ｔ,ｓ，ｑ)＝｜Ｉavex｜／｜Ｉavtx｜が計算されてＲＡＭ又は記憶装置に記憶される。
【０１２７】
そして、ステップＳ２８２の判定処理がふたたび実行される。この場合も、変数ｑは「３」に達していないので、コントローラ７０は、前記ステップＳ２８３，Ｓ２７８、Ｓ２８０の処理を実行する。この場合、変数ｑは「３」に設定されているので、ステップＳ２７８の処理においては、前記バスバー電極８７の位置に挟まれたＸ方向の全ての座標(ｎ，ｍ)のうちで、バスバー電極８７のＹ方向の中央位置からバスバー電極８７の長さの１／３だけ大きなＹ方向位置の座標(ｎ，ｍ)に対応したＸ方向の電流の大きさデータＩｘ(ｎ，ｍ)が抽出される。そして、この場合も、抽出した大きさデータＩｘ(ｎ，ｍ)に関しても、ステップＳ２８０の処理により、平均値Ｉavexが計算され、この平均値Ｉavexを用いて評価値データＦ(ｔ,ｓ，ｑ)＝｜Ｉavex｜／｜Ｉavtx｜が計算されてＲＡＭ又は記憶装置に記憶される。前記ステップＳ２７８の処理後、変数ｑは「３」であるので、コントローラ７０は、ステップＳ２８２にて「Ｙｅｓ」と判定して、図６ＨのステップＳ２８４に進む。なお、この時点では、変数ｔ，ｓによって指定される１つの太陽電池セルＳＣに関して、評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）がＲＡＭ又は記憶装置に記憶されている。
【０１２８】
ステップＳ２８４においては、コントローラ７０は、変数ｔ，ｓによって指定される太陽電池セルＳＣに関して、評価データＢ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）がそれぞれ許容値よりも大きいか否かを判定する。この場合、許容値は、太陽電池セルＳＣの異常を判定するための、各評価データごとに予め決められた値である。そして、評価データＢ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）のうちのいずれか１つでも許容値よりも大きければ、コントローラ７０は、ステップＳ２８４にて「Ｙｅｓ」と判定して、ステップＳ２８６にて変数ｔ，ｓによって指定されるエラーデータＥｒ(ｔ，ｓ)を太陽電池セルＳＣの異常を表す“１”に設定して、ステップＳ２８８に進む。なお、エラーデータＥｒ(ｔ，ｓ)は、初期において全て正常を表す“０”に設定されている。一方、全ての評価データＢ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）がそれぞれ許容値以下であれば、コントローラ７０は、ステップＳ２８４にて「Ｎｏ」と判定して、ステップＳ２８８に進む。
【０１２９】
ステップＳ２８８においては、コントローラ７０は、変数ｔが前記入力したＸ方向の太陽電池セルＳＣの数ｔmaxに達したか否かを判定する（図７参照）。変数ｔがＸ方向の太陽電池セルＳＣの数ｔmaxに達していなければ、コントローラ７０は、ステップＳ２８８にて「Ｎｏ」と判定し、ステップＳ２９０にて変数ｔに「１」を加算し、ステップＳ２９２にて変数ｅｐ，ｑを初期値「１」に戻して、図６ＧのステップＳ２７４に戻る。そして、コントローラ７０は、前述した図６ＧのステップＳ２６６〜Ｓ２８３及び図６ＨのステップＳ２８４，Ｓ２８６の処理を繰り返し実行して、変数ｔ，ｓによって指定される太陽電池セルＳＣの評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）及びエラーデータＥｒ(ｔ，ｓ)を計算してＲＡＭ又は記憶装置に記憶する。そして、これらの図６ＧのステップＳ２６６〜Ｓ２８３及び図６ＨのステップＳ２８４，Ｓ２８６の処理を、変数ｔがＸ方向の太陽電池セルＳＣの数ｔmaxに達するまで行い、変数ｎがＸ方向の太陽電池セルＳＣの数ｔmaxに達すると、コントローラ７０は、ステップＳ２８８にて「Ｙｅｓ」と判定して、ステップＳ２９４に進む。その結果、図７の最も左側から最も右側の太陽電池セルＳＣに関する評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）及びエラーデータＥｒ(ｔ，ｓ)がＲＡＭ又は記憶装置に記憶されることになる。
【０１３０】
ステップＳ２９４においては、コントローラ７０は、変数ｓが前記入力したＹ方向の太陽電池セルＳＣの数ｓmaxに達したか否かを判定する（図７参照）。変数ｓがＹ方向の太陽電池セルＳＣの数ｓmaxに達していなければ、コントローラ７０は、ステップＳ２９４にて「Ｎｏ」と判定し、ステップＳ２９６変数ｓに「１」を加算し、ステップＳ２９８にて変数ｋ，ｔ，ｅｐ，ｑを初期値「１」に戻して、図６ＧのステップＳ２６６に戻る。そして、コントローラ７０は、前述した図６ＧのステップＳ２６６〜Ｓ２８３及び図６ＨのステップＳ２８４〜Ｓ２９２の処理を繰り返し実行して、変数ｔ，ｓによって指定される太陽電池セルＳＣの評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）及びエラーデータＥｒ(ｔ，ｓ)を計算してＲＡＭ又は記憶装置に記憶する。そして、これらの図６ＧのステップＳ２６６〜Ｓ２８３及び図６ＨのステップＳ２８４〜Ｓ２９２の処理を、変数ｓがＹ方向の太陽電池セルＳＣの数ｓmaxに達するまで行い、変数ｎがＹ方向の太陽電池セルＳＣの数ｓmaxに達すると、コントローラ７０は、ステップＳ２９４にて「Ｙｅｓ」と判定して、ステップＳ３００に進む。その結果、図７の全ての太陽電池セルＳＣに関する評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)，Ｆ(ｔ，ｓ，ｑ)（ｑ＝１〜３）及びエラーデータＥｒ(ｔ，ｓ)がＲＡＭ又は記憶装置に記憶されることになる。
【０１３１】
ステップＳ３００においては、コントローラ７０は、前記ＲＡＭ又は記憶装置に記憶した電流の大きさデータＩxy(ｎ，ｍ)、電流の方向データθixy(ｎ，ｍ)、Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)及びＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)（ｎ＝１〜Ｎ，ｍ＝１〜Ｍ）から表示用画像データを生成して、表示装置７２に画像データによって表された画像を表示する。この画像は、例えば、太陽電池セルＳＣの検査位置ごとに、電流の大きさデータＩxy(ｎ，ｍ)に応じて明度、色彩などを異ならせて表示するとともに、電流の方向データθixy(ｎ，ｍ)によって示された方向を示す矢印を表示する。また、Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)及びＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)に応じて明度、色彩などを異ならせて表示するとよい。この場合、バスバー電極８７がＸ方向に延設されていて変数ＣＨが“１”である場合には、表示装置７２における電流の大きさデータIxy(ｍ，ｎ)の表示状態を９０度回転させる。
【０１３２】
図１４Ａ乃至図１４Ｃは、１つ太陽電池セルＳＣに関する表示例を示している。図１４Ａは、図１０Ａの正常及び断線異常に対応した例である。(Ａ)は太陽電池セルが正常の場合であり、(Ｂ)は左側のバスバー電極８７側の表面側接続線に断線が生じた場合であり、(Ｃ)は左側の裏面電極８１側の裏面側接続線に断線が生じた場合である。図１４Ｂは、図１０Ｂの正常及び抵抗増大に対応した例である。(Ａ)は太陽電池セルが正常の場合であり、(Ｂ)は左側のバスバー電極８７側の表面側接続線として５０ｃｍの導線を追加した場合であり、(Ｃ)は左側のバスバー電極８７側の表面側接続線として１５０ｃｍの導線を追加した場合である。図１４Ｃは、図１０Ｂの正常及びバスバー電極８７とグリッド電極８６との接続不良に対応した例である。(Ａ)は太陽電池セルが正常の場合であり、(Ｂ)は左側のバスバー電極８７とグリッド電極８６とが接続不良の場合である。
【０１３３】
前記ステップＳ３００の処理後、コントローラ７０は、ステップＳ３０２にて、エラーデータＥｒ(ｔ，ｓ)（ｔ＝１〜ｔmax，ｓ＝１〜ｓmax）の中に“１”を示すエラーデータが存在するかを調べる。“１”を示すエラーデータが存在しなければ、コントローラ７０は、ステップＳ３０２にて「Ｎｏ」と判定して、ステップＳ３０４にて表示装置７２に「合格」を表示し、ステップＳ３１４にてこの評価プログラムの実行を終了する。一方、“１”を示すエラーデータが存在すると、コントローラ７０は、ステップＳ３０２にて「Ｙｅｓ」と判定して、ステップＳ３０６にて表示装置７２に「不合格」を表示し、ステップＳ３０８にて、エラーデータＥ（ｔ，ｓ）が“１”である変数ｔ，ｓを取り出して、前記表示した画像中の変数ｔ，ｓによって指定される太陽電池セルＳＣを欠陥ありの太陽電池セルＳＣとして表示する。
【０１３４】
次に、図６ＢのステップＳ１５６にて「Ｙｅｓ」、図６ＥのステップＳ２２２にて「Ｎｏ」、図６ＦのステップＳ２５２にて「Ｎｏ」と判定されて、図９ＨのステップＳ３１０，Ｓ３１２の処理に進められた場合について説明する。これらは、入力ミス、検査装置の異常などにより太陽電池セルＳＣの自動的な合否の判定が不能であったり、不能である可能性が高い場合である。この場合も、コントローラ７０は、ステップＳ３１０にて、前記ステップＳ３００の処理と同様に、電流の大きさデータＩxy(ｎ，ｍ)、電流の方向データθixy(ｎ，ｍ)、Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)及びＹ方向の電流の大きさデータＩｙ(ｎ，ｍ)（ｎ＝１〜Ｎ，ｍ＝１〜Ｍ）から表示用画像データを生成して、表示装置７２に画像データによって表された画像を表示する。次に、コントローラ７０は、ステップＳ３１２にて、「太陽電池セルＳＣの合否判定は不能」である旨を表示装置７２に表示して、ステップＳ３１４にてこの評価プログラムの実行を終了する。
【０１３５】
上記のように動作する実施形態においては、発光素子５０は、発光信号供給回路６５及び光源駆動回路６６の駆動制御により、ステージ４０上に載置した太陽電池パネルＳＰの表面全体にわたって、所定の周期で強度が変化する光を均等に照射する。そして、Ｘ方向及びＹ方向スライド機構２０，３０により、磁気センサ１０で太陽電池パネルＳＰの表面全体を走査し、センサ信号取出回路６７及びロックインアンプ６８が、太陽電池パネルＳＰに発電によって流れる電流により発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を検出する。したがって、外乱光や、外部磁界が存在しても、コストを抑えたうえで、これらの影響を受けずに、太陽電池パネルＳＰに対向する複数の箇所で磁界を検出することができる。
【０１３６】
そして、前記検出結果に基づいて、コントローラ７０は、ステップＳ１０〜Ｓ４１，Ｓ１００〜Ｓ１２４の処理により、太陽電池パネルＳＰに対向する複数の箇所における磁界の検出結果に基づいて、太陽電池パネルＳＰの複数の箇所における電流の大きさの分布を計算する。したがって、外乱光や、外部磁界が存在しても、コストを抑えたうえで、これらの影響を受けずに、太陽電池パネルＳＰの複数の箇所における電流の大きさの分布を的確に得ることができる。さらに、上記実施形態においては、コントローラ７０は、ステップＳ３００，Ｓ３１０の処理により、前記計算された電流の大きさの分布を表示装置７２に表示する。その結果、作業者は、太陽電池パネルＳＰの複数の箇所における電流の大きさの分布を視覚を通じて認識でき、分布の異常から太陽電池パネルＳＰの正常及び異常を判断できるようになる。
【０１３７】
また、上記実施形態においては、コントローラ７０は、ステップＳ１７０〜Ｓ２１４，Ｓ２２０〜Ｓ２５６，Ｓ２６０〜Ｓ２９８の処理により、前記太陽電池パネルＳＰの複数の箇所における電流の大きさの分布に基づいて、複数のバスバー電極８７の延設方向の各部に流れる電流の大きさに関する特性を表す評価データＢ，Ｃ，Ｄ，Ｅと、複数のバスバー電極８７間に流れる電流の大きさの分布に関する特性を表す評価データＦを計算するとともに、これらの評価データＢ，Ｃ，Ｄ，Ｅ，Ｆを用いて太陽電池パネルＳＰの合否の判定を自動的に行うようにした。これらの評価データＢ，Ｃ，Ｄ，Ｅ，Ｆは、実験の結果、太陽電池パネルＳＰにおいて、電極間の断線、電極間の接触不良等がある異常な状態では正常な状態から大きく変化することが分かっている。したがって、これらの評価データＢ，Ｃ，Ｄ，Ｅ，Ｆを用いることで、太陽電池パネルＳＰの合否の判定は的確に行われる。
【０１３８】
以上、本発明の一実施形態について説明したが、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形も可能である。
【０１３９】
上記実施形態では、複数の太陽電池セルＳＣを有する太陽電池パネルＳＰを検査するようにした。しかし、本発明は、これに代えて、太陽電池ＳＣを個々に検査する検査装置にも適用できる。
【０１４０】
また、上記実施形態においては、１つの太陽電池セルＳＣの両端部のバスバー電極８７間のＸ方向の電流の大きさデータＩｘ(ｍ，ｎ)の分布に関して、図６ＧのステップＳ２７８〜Ｓ２８２の処理によりＹ方向の３箇所の分布を計算するようにした。しかし、この分布に関しては、３箇所よりも少ない１箇所又は２箇所であってもよいし、４箇所以上であってもよい。また、１つの太陽電池セルＳＣの両端部のバスバー電極８７間全体のＸ方向の電流の大きさデータＩｘ(ｍ，ｎ)の平均を計算するようにしてもよい。
【０１４１】
また、上記実施形態においては、Ｘ方向電極番号ｇｘ及びＹ方向電極番号ｇｙを電極位置座標Ｂxy(ｎ，ｍ)に割当てる図６Ｃ及び図６ＤのステップＳ１７０〜Ｓ２１４の処理において、電流の大きさデータIxy(ｎ，ｍ)を用いてバスバー電極８７の位置を検出するようにした。しかし、バスバー電極８７位置を流れる電流の向きはほぼＹ方向であるので、前記電流の大きさデータIxy(ｎ，ｍ)に代えて、Ｙ方向の電流の大きさデータＩｙ(ｎ，ｍ)を用いるようにしてもよい。さらに、上記実施形態においては、バスバー電極８７に流れる電流の評価のための評価データＡ(ｔ，ｓ，ｅｐ)，Ｂ(ｔ，ｓ，ｅｐ)，Ｃ(ｔ，ｓ，ｅｐ)，Ｄ(ｔ，ｓ，ｅｐ)，Ｅ(ｔ，ｓ)の算出のための図６ＧのステップＳ２６０，Ｓ２６６〜Ｓ２７６の処理において、Ｙ方向の電流の大きさデータＩｙ(ｎ，ｍ)を用いた。しかし、前記のように、バスバー電極８７位置を流れる電流の向きはほぼＹ方向であるので、前記Ｙ方向の電流の大きさデータＩｙ(ｎ，ｍ)に代えて、電流の大きさデータIxy(ｎ，ｍ)を用いるようにしてもよい。また、評価データＦ(ｔ，ｓ，ｑ)の算出のための図６ＧのステップＳ２６２，Ｓ２７８〜Ｓ２８３の処理において、Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)を用いた。しかし、バスバー電極８７間を流れる電流の向きは主にＸ方向であるので、前記Ｘ方向の電流の大きさデータＩｘ(ｎ，ｍ)に代えて、電流の大きさデータIxy(ｎ，ｍ)を用いるようにしてもよい。
【０１４２】
また、上記実施形態及び変形例では、図６ＡのステップＳ１０４〜Ｓ１１２の処理より、磁気センサ１０の検出位置のＸ方向磁気検出信号の極大値Ｈｘ、Ｘ方向磁気検出信号の参照信号に対する位相シフト量θｘ、Ｙ方向磁気検出信号の極大値Ｈｙ、Ｙ方向磁気検出信号の参照信号に対する位相シフト量θｙ、磁界の強さＨxy及び磁界の向きθxyを計算して、ステップＳ１１２，Ｓ１１４の処理により、磁気センサ１０の検出位置の電流の大きさＩxy(ｎ，ｍ)、前記電流の方向θixy(ｎ，ｍ)、Ｘ方向の電流の大きさＩｘ(ｎ，ｍ)及びＹ方向の電流の大きさＩｙ(ｎ，ｍ)を計算した。そして、これらの電流の大きさＩxy(ｎ，ｍ)、前記電流の方向θixy(ｎ，ｍ)、Ｘ方向の電流の大きさＩｘ(ｎ，ｍ)及びＹ方向の電流の大きさＩｙ(ｎ，ｍ)を用いて、太陽電池セルＳＣに関する評価データを計算して太陽電池セルＳＣを評価するようにした。しかし、電流の大きさＩxyは磁界の大きさＨxyに比例しており、電流の方向θixyは磁界の方向θxyとπ／２異なるだけである。したがって、磁界に関する情報を電流に関する情報に変換しなくても、磁気センサ１０の各検出位置のＸ方向磁気検出信号の極大値Ｈｘ、Ｙ方向磁気検出信号の極大値Ｈｙ及び磁界の強さＨxyを、上記実施形態のＸ方向の電流の大きさＩｘ(ｎ，ｍ)、Ｙ方向の電流の大きさＩｙ(ｎ，ｍ)及び電流の大きさＩxy(ｎ，ｍ)に代えて用いることにより、各太陽電池セルＳＣに関する評価データを計算して太陽電池パネルＳＰを評価するようにしてもよい。
【０１４３】
また、上記実施形態では、バスバー電極８７の位置を自動的に検出し、検出した位置の電流の大きさの分布に関する評価データを計算して、各太陽電池セルＳＣの合否判定を行うようにした。しかし、これに代えて、作業者が表示装置７２に表示される電流分布の画像を見てバスバー電極８７の位置をコントローラ７０に指示し、コントローラ７０がこの指示された位置の電流の大きさの分布に関する評価データを計算して、各太陽電池セルＳＣの合否判定を行うようにしてもよい。また、コントローラ７０は、合否判定まで行わなくて、評価データを計算して表示装置７２に表示し、作業者に各太陽電池セルＳＣの合否判定を行わせるようにしてもよい。さらに、コントローラ７０は、評価データの計算も行わずに、電流分布を図１０のようなグラフや図１４のような画像で表示装置７２に表示し、作業者はこの表示を見て各太陽電池セルＳＣの合否を判定するようにしてもよい。
【０１４４】
また、上記実施形態及び変形例においては、磁気センサ１０を載置したステージ４０をＸ，Ｙ方向に移動するようにした。しかし、これに代えて、検査対象物である太陽電池パネルＳＰ又は太陽電池セルＳＣをセットするステージを複数の発光素子と共にＸ，Ｙ方向に移動するようにしてもよい。また、双方のステージがＸ，Ｙ方向に移動するようにしてもよい。さらには、磁気センサ１０及び検査対象物である太陽電池パネルＳＰ（又は太陽電池セルＳＣ）をセットするステージを移動させずに、多数の磁気センサ１０を、マトリクス状に配置するようにしてもよい。
【０１４５】
また、上記実施形態及び変形例においては、太陽電池パネルＳＰ又は太陽電池セルＳＣの各種評価データを計算して、各種評価データの値によって太陽電池パネルＳＰ又は太陽電池セルＳＣの合否を判定するようにした。しかし、検査対象である太陽電池パネルＳＰ又は太陽電池セルＳＣの形状及び大きさが１つに限定されていれば、正常な太陽電池パネルＳＰ又は太陽電池セルＳＣに関する各種計算パラメータ（例えば、電流の大きさデータＩxy(ｍ、ｎ)、Ｘ方向の電流の大きさデータＩｘ(ｍ，ｎ)、Ｙ方向の電流の大きさデータＩｘ(ｍ，ｎ)など）との比較により、太陽電池パネルＳＰ又は太陽電池セルＳＣの合否判定を行うようにしてもよい。また、検査対象である太陽電池パネルＳＰ又は太陽電池セルＳＣの電流分布（又は磁界分布）と共に、正常な太陽電池パネルＳＰ又は太陽電池セルＳＣの電流分布（又は磁界分布）を表示して、作業者に対比観察により検査対象である太陽電池パネルＳＰ又は太陽電池セルＳＣの合否判定を行わせるようにしてもよい。
【０１４６】
また、上記実施形態においては、複数の発光素子（ＬＥＤ）５０をマトリクス状に配置した光源を利用したが、検査対象物である太陽電池パネルＳＰ又は太陽電池セルＳＣをセットするステージ４０上の光量が均一になるならば、どのような光源でもよく、蛍光灯、ランプ等の光源でもよい。
【０１４７】
また、上記実施形態では、磁気センサとして磁気抵抗素子（ＭＲ素子）を利用したが、これに代えて、ホール素子、磁気インピーダンス素子効果センサ、フラックスゲート、超伝導量子干渉素子などを利用するようにしてもよい。
【符号の説明】
【０１４８】
１０…磁気センサ、２０…Ｘ方向スライド機構、２５…Ｘ方向モータ、３０…Ｙ方向スライド機構、３４…Ｙ方向モータ、４０…ステージ、５０…発光素子、６５…発光信号供給回路、６７…センサ信号取出回路、６８…ロックインアンプ、７０…コントローラ、７１…入力装置、７２…表示装置、８６…グリッド電極、８７…バスバー電極、ＳＰ…太陽電離パネル、ＳＣ…太陽電池セル
【要約】
【課題】  製造コストを抑えたうえで、外乱光及び外部磁界の影響を受けずに太陽電池パネル又は太陽電池セルの検査を行う。
【解決手段】  ステージ４０上に、電極間に導線を介して抵抗を接続した太陽電池パネルＳＰを載置する。発光素子５０、発光信号供給回路６５及び光源駆動回路６６は、太陽電池パネルＳＰの表面全体にわたって、所定の周期で強度が変化する光を照射する。センサ信号取出回路６７及びロックインアンプ６８は、前記光の照射によって前記検査対象物に電流が流れることにより発生する磁界であって、前記所定の周期と等しい周期で強度が変化する磁界を検出する。
【選択図】  図１【図１】
0004803314.tif 000002
【図２】
0004803314.tif 000003
【図３】
0004803314.tif 000004
【図４】
0004803314.tif 000005
【図５Ａ】
0004803314.tif 000006
【図５Ｂ】
0004803314.tif 000007
【図６Ａ】
0004803314.tif 000008
【図６Ｂ】
0004803314.tif 000009
【図６Ｃ】
0004803314.tif 000010
【図６Ｄ】
0004803314.tif 000011
【図６Ｅ】
0004803314.tif 000012
【図６Ｆ】
0004803314.tif 000013
【図６Ｇ】
0004803314.tif 000014
【図６Ｈ】
0004803314.tif 000015
【図７】
0004803314.tif 000016
【図８Ａ】
0004803314.tif 000017
【図８Ｂ】
0004803314.tif 000018
【図９】
0004803314.tif 000019
【図１０Ａ】
0004803314.tif 000020
【図１０Ｂ】
0004803314.tif 000021
【図１０Ｃ】
0004803314.tif 000022
【図１１】
0004803314.tif 000023
【図１２】
0004803314.tif 000024
【図１３】
0004803314.tif 000025
【図１４Ａ】
0004803314.tif 000026
【図１４Ｂ】
0004803314.tif 000027
【図１４Ｃ】
0004803314.tif 000028