以下、本発明の一実施形態に係る太陽電池セル検査装置について図面を用いて説明する。図1は、この太陽電池セル検査装置の全体概略図である。太陽電池セル検査装置は、磁気センサ10を支持固定するセンサ支持台11を有し、センサ支持台11は、X方向スライド機構20によってX方向(紙面左右方向)に移動するとともに、Y方向スライド機構30によってY方向(紙面垂直方向)に移動する。センサ支持台11は、図2に詳細に示すように、方形状の平板で構成されて、上面にて磁気センサ10を支持固定する。このセンサ支持台11は、X方向スライド機構20の一部を構成する方形状の移動部材21により支持されている。この移動部材21には、センサ支持台11を上下に変位させて磁気センサ10の上下方向位置を調整する調整機構(図示しない)が設けられており、調整つまみ22の操作によりセンサ支持台11が上下方向に位置調整されるようになっている。
移動部材21の下面には、Y方向に所定の幅を有する凸部21aが設けられている。この凸部21aは、X方向に延設された支持部材23の上面に設けた溝23aに侵入して、溝23a内をX方向にスライドするようになっている。支持部材23の溝23a内には、X方向に延設されて移動部材21の凸部21aを貫通する雄ねじ24が収容されている。移動部材21の凸部21a内には、雄ねじ24に螺合した図示しないナットが組み込まれており、雄ねじ24の回転により、移動部材21がX方向に移動するようになっている。すなわち、雄ねじ24と移動部材21に組み込まれたナットにより、ボールねじ機構が構成されている。雄ねじ24の一端は、支持部材23の一端に組み付けたX方向モータ25の回転軸に連結され、雄ねじ24の他端は支持部材23の他端に回転可能に支持されている。これにより、X方向モータ25の回転により雄ねじ24が軸線周りに回転して、移動部材21、センサ支持台11及び磁気センサ10がX方向に移動する。
支持部材23のX方向の両端近傍部の下面には、X方向に所定の幅を有する凸部23b,23cがそれぞれ設けられている。これらの凸部23b、23cは、Y方向にそれぞれ延設された支持部材31,32の上面に設けた溝31a,32aに侵入して、溝31a,32a内をY方向にスライドするようになっている。支持部材31の溝31a内には、Y方向に延設されて支持部材23の凸部23bを貫通する雄ねじ33が収容されている。支持部材23の凸部23b内には、雄ねじ33に螺合した図示しないナットが組み込まれており、雄ねじ33の回転により、支持部材23がY方向に移動するようになっている。すなわち、雄ねじ33と支持部材23に組み込まれたナットにより、ボールねじ機構が構成されている。雄ねじ33の一端は、支持部材31の一端に組み付けたY方向モータ34の回転軸に連結され、雄ねじ33の他端は支持部材31の他端に回転可能に支持されている。これにより、Y方向モータ34の回転により雄ねじ33が軸線周りに回転して、支持部材23が移動部材21、センサ支持台11及び磁気センサ10と共にY方向に移動する。
また、この太陽電池セル検査装置は、太陽電池パネルSPを載置するための、ステージ40を備えている。ステージ40は、支持部材31,32の各端部から上方に延設された連結部41a,41b,41c,41dを介して、支持部材31,32の上方に配置された方形状の枠体42を有している。枠体42は、支持部材31,32の上方にそれぞれ位置する支持部42a,42bと、両支持部42a,42bの両端部をそれぞれ連結する支持部42c、42dとを備えている。支持部42a,42b,42cには、内側方向に突出して太陽電池パネルSPを載置する載置部が設けられている。支持部42a,42bには、移動載置部材43が両端部にてY方向に摺動可能に組み付けられている。この移動載置部材43にも、支持部42c方向に突出して太陽電池パネルSPを載置する載置部が設けられている。そして、太陽電池パネルSPを枠体42の支持部42a,42b,42c及び移動載置部材43上に載置した状態では、磁気センサ10が太陽電池パネルSPの下方に位置するようになっている。
ふたたび図1の説明に戻ると、ステージ40の枠体42上には複数の発光素子(LED)50が配置されている。複数の発光素子50はマトリクス状に配置されて、太陽電池パネルSPをステージ40上に載置した状態で、太陽電池パネルSP全体に均一な光量(すなわち強度)の光が照射されるようになっている。
X方向モータ25内には、X方向モータ25の回転を検出して、その回転を表す回転信号を出力するエンコーダ25aが組み込まれている。この回転信号は、X方向モータ25が所定の微少角度だけ回転するたびにハイレベルとローレベルとを交互に切替えるパルス列信号であって、回転方向を識別するために互いにπ/2だけ位相のずれたA相信号とB相信号とで構成される。回転信号は、X方向位置検出回路61及びX方向フィードモータ制御回路62に出力される。X方向位置検出回路61は、前記回転信号のパルス数をX方向モータ25の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値からX方向モータ25によるステージ40(太陽電池パネルSP)に対するセンサ支持台11のX方向位置(すなわち磁気センサ10のX方向位置)を検出し、検出したX方向位置をX方向フィードモータ制御回路62及び後述するコントローラ70に出力する。X方向フィードモータ制御回路62は、コントローラ70の指示により、X方向モータ25の駆動及び停止を制御する。このX方向モータ25の駆動時においては、X方向フィードモータ制御回路62は、エンコーダ25aからの回転信号を用いてX方向モータ25を所定の回転速度で回転させる。
X方向位置検出回路61におけるカウント値の初期設定は、電源投入時にコントローラ70の指示によって行われる。すなわち、コントローラ70は、電源投入時に、X方向フィードモータ制御回路62にセンサ支持台11の初期位置に対応したX方向限界位置への移動、及びX方向位置検出回路61に初期設定を指示する。この指示により、X方向フィードモータ制御回路62は、X方向モータ25を駆動してセンサ支持台11を初期位置に対応したX方向限界位置まで移動させる。X方向位置検出回路61は、センサ支持台11のX方向への移動中、X方向モータ25内のエンコーダ25aからの回転信号を入力し続けている。そして、センサ支持台11が初期位置に対応したX方向限界位置まで達してX方向モータ25の回転が停止すると、X方向位置検出回路61はエンコーダ25aからの回転信号の入力停止を検出して、カウント値を「0」にリセットする。このとき、X方向位置検出回路61は、X方向フィードモータ制御回路62に出力停止のための信号を出力し、これにより、X方向フィードモータ制御回路62はX方向モータ25への駆動信号の出力を停止する。その後に、X方向モータ25が駆動された際には、X方向位置検出回路61は、回転信号のパルス数をX方向モータ25の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値に基づいてセンサ支持台11のX方向位置を計算し、計算したX方向位置をX方向フィードモータ制御回路62及びコントローラ70に出力し続ける。
Y方向モータ34内には、Y方向モータ34の回転を検出して、前記X方向モータ25と同様に、その回転を表す回転信号を出力するエンコーダ34aが組み込まれている。この回転信号は、Y方向位置検出回路63及びY方向フィードモータ制御回路64に出力される。Y方向位置検出回路63は、前記回転信号のパルス数をY方向モータ34の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値からY方向モータ34によるセンサ支持台11のY方向位置(すなわち磁気センサ10のY方向位置)を検出し、検出したY方向位置をY方向フィードモータ制御回路64及びコントローラ70に出力する。Y方向フィードモータ制御回路64は、コントローラ70の指示により、前記X方向フィードモータ制御回路62の場合と同様に、Y方向モータ34の駆動及び停止を制御する。
Y方向位置検出回路63におけるカウント値の初期設定は、電源投入時にコントローラ70の指示によって行われる。すなわち、コントローラ70は、電源投入時に、Y方向フィードモータ制御回路64にセンサ支持台11の初期位置に対応したY方向限界位置への移動、及びY方向位置検出回路63に初期設定を指示する。この指示により、Y方向フィードモータ制御回路64は、Y方向モータ34を駆動してセンサ支持台11を初期位置に対応したY方向限界位置まで移動させる。Y方向位置検出回路63は、センサ支持台11のY方向への移動中、Y方向モータ34内のエンコーダ34aからの回転信号を入力し続けている。そして、センサ支持台11が初期位置に対応したY方向限界位置まで達してY方向モータ34の回転が停止すると、Y方向位置検出回路63はエンコーダ34aからの回転信号の入力停止を検出して、カウント値を「0」にリセットする。このとき、Y方向位置検出回路63は、Y方向フィードモータ制御回路64に出力停止のための信号を出力し、これにより、Y方向フィードモータ制御回路64はY方向モータ34への駆動信号の出力を停止する。その後に、Y方向モータ34が駆動された際には、Y方向位置検出回路63は、回転信号のパルス数をY方向モータ34の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値に基づいてセンサ支持台11のY方向位置を計算し、計算したY方向位置をY方向フィードモータ制御回路64及びコントローラ70に出力し続ける。
この太陽電池セル検査装置は、さらに、発光信号供給回路65、光源駆動回路66、センサ信号取出回路67、ロックインアンプ68及びコントローラ70を備えている。発光信号供給回路65は、正弦波発振器及び矩形波変換回路を含み、コントローラ70によって作動制御されて、正弦波発振器によって発振される正弦波信号を発光制御信号として光源駆動回路66に供給する。なお、発光制御信号は、「0」を基準に正負に変化する信号であり、その周波数は、例えば数10ヘルツから数100ヘルツ程度である。また、発光信号供給回路65は、前記正弦波信号からなる発光制御信号を矩形波変換回路による変換により、前記発光制御信号と同期して「0」を中心として正負に変化する矩形波信号を生成して、参照信号としてロックインアンプ68に出力する。光源駆動回路66も、コントローラ70によって作動制御されて、前記供給された発光制御信号によって発光素子50を発光制御する。発光素子50は、前記発光制御信号に同期して正弦波状に変化する発光強度で太陽電池パネルSPの表面を照射する。
次に、磁気センサ10について説明しておく。磁気センサ10は、図3に示すように、X方向の磁界を検出するX方向磁気センサ10Aと、Y方向の磁界の変化を検出するY方向磁気センサ10Bとを備えている。X方向磁気センサ10Aは、抵抗r11,r12,r13及び磁気抵抗素子MR1からなるブリッジ回路で構成されており、抵抗r11,r13の接続点と、抵抗r12及び磁気抵抗素子MR1の接続点との間に、センサ信号取出回路67の後述する定電圧供給回路67aから電圧+V,−Vが印加されるようになっている。また、X方向磁気センサ10Aにおいては、抵抗r13及び磁気抵抗素子MR1の接続点と、抵抗r11,r12間の接続点との間の電圧をX方向磁気検出信号として出力する。抵抗r11,r12,r13の値は同じであり、磁界の強さが「0」であるときの磁気抵抗素子MR1の抵抗値に等しい。これにより、ほぼ「0」を基準としたX方向の磁界の正負の変化により、X方向磁気検出信号はほぼ「0」を基準にX方向の磁界の大きさに比例して正負に変化する電圧信号となる。
Y方向磁気センサ10Bは、抵抗r21,r22,r23及び磁気抵抗素子MR2からなるブリッジ回路で構成されており、抵抗r21,r22の接続点と、抵抗r23及び磁気抵抗素子MR2の接続点との間に、センサ信号取出回路67の後述する定電圧供給回路67bから電圧+V,−Vが印加されるようになっている。また、Y方向磁気センサ10Bにおいては、抵抗r22及び磁気抵抗素子MR2の接続点と、抵抗r21,r23間の接続点との間の電圧をY方向磁気検出信号として出力する。抵抗r21,r22,r23の値は同じであり、磁界の強さが「0」であるときの磁気抵抗素子MR2の抵抗値に等しい。これにより、ほぼ「0」を基準としたY方向の磁界の正負の変化により、Y方向磁気検出信号はほぼ「0」を基準にY方向の磁界の大きさに比例して正負に変化する電圧信号となる。
センサ信号取出回路67は、定電圧供給回路67a,67b及び増幅器67c,67dを備えている。定電圧供給回路67a,67bは、コントローラ70からの指示により、X方向磁気センサ10A及びY方向磁気センサ10Bに対して、定電圧+V,−Vを供給する。増幅器67c、67dは、X方向磁気検出信号及びY方向磁気検出信号をそれぞれ増幅してロックインアンプ68に出力する。
ロックインアンプ68は、図4に詳細に示すように、X方向磁気センサ10Aから増幅器67cを介して供給されるX方向磁気検出信号を入力するハイパスフィルタ68aと、Y方向磁気センサ10Bから増幅器67dを介して供給されるY方向磁気検出信号を入力するハイパスフィルタ68bとを備えている。ハイパスフィルタ68a,68bは、X方向磁気検出信号及びY方向磁気検出信号に含まれる、磁界の強さに比例した信号成分以外の不要な成分を取り除くとともに、信号をグランドレベルを中心に変化するようにする。
ハイパスフィルタ68aの出力は、増幅器68cを介して位相検波回路68d,68eに供給される。位相検波回路68d,68eは、それぞれ乗算器によって構成されている。位相検波回路68dは、ハイパスフィルタ68a及び増幅器68cを介して供給されるX方向磁気検出信号に、発光信号供給回路65からの参照信号を乗算してローパスフィルタ68fに出力する。位相検波回路68eは、ハイパスフィルタ68a及び増幅器68cを介して供給されるX方向磁気検出信号に、発光信号供給回路65からの参照信号を位相シフト回路68gで90度位相を遅らせた遅延参照信号を乗算してローパスフィルタ68hに出力する。これにより、ローパスフィルタ68fにはX方向磁気検出信号の発光制御信号(参照信号)と同期した成分が供給され、ローパスフィルタ68fは供給された成分信号をローパスフィルタ処理してX方向磁気検出信号の発光制御信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ68hにはX方向磁気検出信号の発光制御信号よりも90度位相を遅らせた信号(遅延参照信号)と同期した成分が供給され、ローパスフィルタ68hは供給された成分信号をローパスフィルタ処理してX方向磁気検出信号の発光制御信号よりも90度位相を遅らせた信号と同期した成分の大きさを表す信号を出力する。
ハイパスフィルタ68bの出力は、増幅器68iを介して位相検波回路68j,68kに供給される。位相検波回路68j,68kには、ローパスフィルタ68m,68nが接続されている。位相検波回路68j,68k及びローパスフィルタ68m,68nは、前述した位相検波回路68d,68e及びローパスフィルタ68f,68hと同様に構成されている。これにより、ローパスフィルタ68mにはY方向磁気検出信号の発光制御信号(参照信号)と同期した成分が供給され、ローパスフィルタ68mは供給された成分信号をローパスフィルタ処理してY方向磁気検出信号の発光制御信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ68nにはY方向磁気検出信号の発光制御信号よりも90度位相を遅らせた信号(遅延参照信号)と同期した成分が供給され、ローパスフィルタ68nは供給された成分信号をローパス処理してY方向磁気検出信号の発光制御信号よりも90度位相を遅らせた信号と同期した成分の大きさを表す信号を出力する。ローパスフィルタ68f,68h,68m,68nは、A/D変換器68o,68p,68q,68rにそれぞれ接続されている。A/D変換器68o,68p,68q,68rは、所定の時間間隔ごとに、ローパスフィルタ68f,68h,68m,68nからの信号をそれぞれA/D変換してコントローラ70に供給する。
ふたたび図1の説明に戻り、コントローラ70は、CPU、ROM、RAMを備えたマイクロコンピュータと、ハードディスクや不揮発性メモリなどの記憶装置と、入出力インタフェース等から構成される電子制御装置である。コントローラ70は、記憶装置に記憶された図5A及び図5Bのデータ取得プログラム及び図6A乃至図6Fの評価プログラムを実行してこの太陽電池セル検査装置の動作を制御する。コントローラ70には、作業者が各種パラメータや処理等を指示するための入力装置71と、作業者に対して作動状況等を視覚的に知らせるための表示装置72とが接続されている。
次に、太陽電池パネルSPについて説明しておく。太陽電池パネルSPは、図7に示すように、マトリクス状に配置された多数の太陽電池セルSCが、基板80上に固定されている。本実施形態では、X方向にtmax個、Y方向にsmax個の太陽電池セルSCが配置されているものとする。
各太陽電池セルSCは、図8A及び図8Bに示すように、方形状に形成され、外部に電力を取出すための長尺状の一対の取出電極(正電極及び負電極)81,82を上面にて平行に延設させており、一対の取出電極81,82の間を前記取出電極81,82と同一方向に延設させた複数の発電セル83を直列接続した構造を有している。各発電セル83は、表面電極83a、半導体層83b及び裏面電極83cからなる。半導体層83bは、上側をN層とするとともに下側をP層としており、発生電流は裏面電極83cから表面電極83aの方向に流れる。隣り合う発電セル83,83間は、一方の表面電極83aと他方の裏面電極83cが導電層84によって電気的に接続され、かつ絶縁層85によって絶縁されている。一端(図示右側端)の発電セル83の表面電極83aは、導電層からなる内部電極86を介して取出電極81に接続され、この発電セル83の外側には絶縁層87aが設けられている。他端(図示左側端)の発電セル83の裏面電極83cは、導電層からなる内部電極88を介して取出電極82に接続されており、この発電セル83の外側には絶縁層87bが設けられている。この太陽電池セルSCの上面はガラス層89で覆われており、取出電極81,82は、内部電極86,88に導電性ペースト又は半田により接続されている。
そして、図7に示すように、Y方向に配置されたsmax個の太陽電池セルSCの各電極81,82は接続線91でそれぞれ直列に接続され、この直列に接続されたsmax個の電極81,82は接続線92,93によりそれぞれ並列に接続されている。そして、接続線92,93から電力が出力されるようになっている。なお、この太陽電池セルSCの検査の場合には、接続線92,93間に後述する抵抗Rcsが導線L1,L2を介して接続される。そして、電流は図示矢印の方向に流れる。
次に、上記のように構成した太陽電池セル検査装置の動作について説明する。作業者は、図7に示すように、検査対象となる太陽電池パネルSPに導線L1,L2を介して小さな抵抗Rcs(例えば、5オーム程度の抵抗)を接続して、ステージ40の枠体42上に載置する。この場合、太陽電池パネルSPのX−Y平面の原点となる位置(後述するプログラムで変数n,mが共に「1」となる位置)の近傍のコーナーを、枠体42のコーナーの一つ(本実施形態では図2の右下に位置するコーナー)に合わせ、移動載置部材43を移動させて太陽電池パネルSPを固定する。なお、抵抗Rcsを接続する理由は、発光素子50を用いた光の照射により、太陽電池セルSCの発電による電流が太陽電池セルSCを流れるようにするためである。この状態で、太陽電池セル検査装置の電源が投入されると、上述したように、コントローラ70の指示により、X方向フィードモータ制御回路62及びY方向フィードモータ制御回路64はセンサ支持台11(すなわち磁気センサ10)をX方向及びY方向の限界位置に移動させるとともに、X方向位置検出回路61及びY方向位置検出回路63は検出されるX方向位置及びY方向位置を初期値に設定する。
その後、作業者は、入力装置71を操作することにより、太陽電池パネルSPの計測に必要なパラメータを入力する。この場合、必要なパラメータとしては、太陽電池セルSCのX方向及びY方向の数tmax,smax、各太陽電池セルSCのX方向及びY方向の長さとなどである。この入力されたパラメータは、コントローラ70に記憶される。また、後述するデータ処理プログラムや評価プログラムにて使用されるX方向終了位置Xmax、Y方向終了位置Ymax、値Nn、値Nm等のパラメータが、この入力されたパラメータから計算されて記憶される。
次に、作業者は、入力装置71の操作により、コントローラ70に図5A及び図5Bのデータ取得プログラムの実行を開始させる。すなわち、太陽電池パネルSPの計測の開始をコントローラ70に指示する。この指示に応答して、コントローラ70は、図5AのステップS10にてデータ取得プログラムの実行を開始し、ステップS11にて変数nを「0」に初期設定するとともに、変数m,aをそれぞれ「1」に初期設定する。変数n,mは、太陽電池パネルSPに対する磁気センサ10の走査位置を示す変数である。なお、磁気センサ10は、図9に示すように、まず、X方向に初期値Xsによって表される開始位置から終了値Xmaxによって表される終了位置を越えるまで所定の微小値ΔXずつ移動制御される。そして、X方向の終了位置に達すると、磁気センサ10はY方向に所定の微小値ΔYだけ移動制御され、その後に、X方向の終了位置からX方向の開始位置まで微小値ΔXずつ移動制御される。そして、ふたたび、磁気センサ10はY方向に微小値ΔYだけ移動制御されて、X方向の開始位置から終了位置まで微小値ΔXずつ移動制御される。このように、磁気センサ10は、X方向に往復運動しながらY方向に移動して、太陽電池パネルSPを走査する。なお、微小値ΔX,ΔYは、太陽電池セルSCの縦横の長さに比べて極めて小さい。変数aは、「1」により磁気センサ10の中心位置がX軸方向正側に移動している状態を表し、「−1」により磁気センサ10の中心位置がX軸方向負側に移動している状態を表している。以降、この磁気センサ10の中心位置を検査位置という。
前記ステップS11の処理後、コントローラ70は、ステップS12にて、X方向フィードモータ制御回路62に対して磁気センサ10をX軸方向に移動して検査位置がX軸方向の初期値Xsによって表される初期位置になるように指示するとともに、Y方向フィードモータ制御回路64に対して磁気センサ10をY軸方向に移動して検査位置がY軸方向の初期値Ysによって表される初期位置になるように指示する。この指示に応答して、X方向フィードモータ制御回路62は、X方向位置検出回路61からX方向検出位置(X軸方向の検査位置すなわち測定位置)を入力しながら、X方向検出位置が初期値Xsに一致するまでX方向モータ25を駆動制御する。Y方向フィードモータ制御回路64は、Y方向位置検出回路63からY方向検出位置(Y軸方向の検査位置すなわち測定位置)を入力しながら、Y方向検出位置が初期値Ysに一致するまでY方向モータ34を駆動制御する。
ステップS12の処理後、コントローラ70は、ステップS13にて発光信号供給回路65の作動開始を指示する。この指示に応答して、発光信号供給回路65は、正弦波状の発光制御信号を光源駆動回路66に供給するとともに、前記発光制御信号と同期した矩形波状の参照信号をロックインアンプ68に供給し始める。次に、コントローラ70は、ステップS14にて光源駆動回路66の作動開始を指示する。この指示に応答して、光源駆動回路66は、前記供給された発光制御信号に応じて正弦波状に変化する駆動制御信号を発光素子50に供給して、発光素子50を発光制御し始める。次に、コントローラ70は、ステップS15にてセンサ信号取出回路67の作動開始を指示する。この指示に応答して、センサ信号取出回路67内の定電圧供給回路67a,67bは、X方向磁気センサ10A及びY方向磁気センサ10Bに定電圧信号+V,−Vを供給し始める。これにより、X方向磁気センサ10A及びY方向磁気センサ10BによるX方向磁気検出信号及びY方向磁気検出信号が、増幅器67c,67dを介してロックインアンプ68にそれぞれ供給され始める。
このX方向磁気検出信号及びY方向磁気検出信号について説明する。前記発光素子50の発光制御により、発光素子50は、その発光強度を前記発光制御信号に同期して正弦波状に変化させながら、太陽電池パネルSPの表面全体に均等に光を照射する。この光の照射により、太陽電池パネルSPの各太陽電池セルSCは前記発光強度に応じて電力を発電し始める。この電力の発電により、各太陽電池セルSCには電流が流れ始めるとともに、導線L1,L2を介して抵抗Rcsにも電流が流れ始める(図7の矢印参照)。各太陽電池セルSCの表裏面近傍には、前記電流による磁界が発生する。そして、X方向磁気センサ10Aは、X方向の磁界Hの大きさに比例した電圧をX方向磁気検出信号として出力し始める。また、Y方向磁気センサ10Bは、Y方向の磁界Hの大きさに比例した電圧をY方向磁気検出信号として出力し始める。これらのX方向磁気検出信号及びY方向磁気検出信号は、前記発光素子50の発光強度が正弦波状に変化するので、正弦波状に変化する信号である。ただし、X方向磁気検出信号及びY方向磁気検出信号の位相は、発光素子50を駆動制御するための正弦波状の発光制御信号とは若干異なる。
ロックインアンプ68においては、入力されたX方向磁気検出信号がハイパスフィルタ68a及び増幅器68cを介して位相検波回路(乗算器)68d,68eにそれぞれ供給されるとともに、入力されたY方向磁気検出信号がハイパスフィルタ68b及び増幅器68iを介して位相検波回路(乗算器)68j,68kにそれぞれ供給される。位相検波回路68d,68jには、発光信号供給回路65からの矩形波状の参照信号が供給されている。また、位相検波回路68e,68kには、前記参照信号の位相を位相シフト回路68gで90度遅らせた遅延参照信号が供給されている。そして、位相検波回路68d,68eは、増幅器68cを介して供給されたX方向磁気検出信号に参照信号及び遅延参照信号をそれぞれ乗算して、乗算した信号をローパスフィルタ68f,68hを介してA/D変換器68o,68pにそれぞれ供給する。位相検波回路68j,68kは、増幅器68cを介して供給されたY方向磁気検出信号に参照信号及び遅延参照信号をそれぞれ乗算して、乗算した信号をローパスフィルタ68m,68nを介してA/D変換器68q,68rにそれぞれ供給する。
ここで、ローパスフィルタ68f,68h,68m,68nは供給された信号の成分の大きさを表す信号すなわち正弦波状の信号の振幅に比例した大きさを表す信号を出力するように機能する。したがって、A/D変換器68oには、X方向磁気検出信号の参照信号(すなわち発光制御信号)に同期した信号成分の大きさを表す信号が供給される。A/D変換器68pには、X方向磁気検出信号の参照信号から90度だけ位相の遅れた信号成分の大きさを表す信号が供給される。A/D変換器68qには、Y方向磁気検出信号の参照信号に同期した信号成分の大きさを表す信号が供給される。A/D変換器68rには、Y方向磁気検出信号の参照信号から90度だけ位相の遅れた信号成分の大きさを表す信号が供給される。そして、A/D変換器68o,68p,68q,68rは、それぞれ供給された信号を所定時間ごとにサンプリングしてA/D変換し、A/D変換したサンプリングデータをコントローラ70に供給する。したがって、コントローラ70には前記各信号成分の所定時間ごとの大きさを表すサンプリングデータが所定時間ごとに供給されるようになる。
前記ステップS15の処理後、コントローラ70は、ステップS16にて変数nに変数aを加算する。この場合、ステップS16の処理前の変数nは「0」であり、変数aは「1」であるので、変数nは「1」に変更される。前記ステップS16の処理後、コントローラ70は、ステップS17にて、ロックインアンプ68のA/D変換器68o,68p,68q,68rから供給されるサンプリングデータを取込み、ステップS18にて取込んだ各サンプリングデータの数が所定数Kに達したか否かを判定する。この所定数Kは、例えば数個から数十個の各サンプリングデータの数を表す値に設定されている。各サンプリングデータの数が所定数Kに達していなければ、コントローラ70は、ステップS18にて「No」と判定して、ステップS17にてA/D変換器68o,68p,68q,68rから次に出力されるサンプリングデータを取込む。そして、A/D変換器68o,68p,68q,68rから取込んだ各サンプリングデータの数が所定数Kに達すると、コントローラ70は、ステップS18にて「Yes」と判定して、ステップS19以降の処理を実行する。ステップS17にて取込まれたサンプリングデータは、変数n,mによって指定されるサンプリングデータ群として、RAMに記憶される。
具体的には、A/D変換器68oから取込んだ所定数Kのサンプリングデータ、すなわちX方向磁気検出信号の参照信号と同期した信号成分の大きさを表す所定数Kのデータは、サンプリングデータ群Sx1(n,m)としてRAMに記憶される。A/D変換器68pから取込んだ所定数Kのサンプリングデータ、すなわちX方向磁気検出信号の遅延参照信号と同期した信号成分の大きさを表す所定数Kのデータは、サンプリングデータ群Sx2(n,m)としてRAMに記憶される。A/D変換器68pから取込んだ所定数Kのサンプリングデータ、すなわちY方向磁気検出信号の参照信号と同期した信号成分の大きさを表す所定数Kのデータは、サンプリングデータ群Sy1(n,m)としてRAMに記憶される。A/D変換器68rから取込んだ所定数Kのサンプリングデータ、すなわちY方向磁気検出信号の遅延参照信号と同期した信号成分の大きさを表す所定数Kのデータは、サンプリングデータ群Sy2(n,m)としてRAMに記憶される。なお、この場合の変数n,mは、共に「1」である。
前記ステップS17,S18の処理後、コントローラ70は、ステップS19にて変数aが「1」であるか否かを判定する。変数aは「1」に初期設定されているので、この場合、コントローラ70は、ステップS19にて「Yes」と判定して、ステップS20にて、値Xs+n・ΔXがX軸方向の終了値Xmaxよりも大きいか否かを判定する。値Xs+n・ΔXは、X軸方向の走査間隔を表す所定値ΔXに変数nを乗算して初期値Xsを加算した値であり、次のX軸方向の検出位置(X軸方向の走査位置すなわち測定位置)を表す値(図9参照)である。値Xs+n・ΔXが終了値Xmax以下であれば、コントローラ70は、ステップS20にて「No」と判定して、ステップS21にて、X方向フィードモータ制御回路62に、磁気センサ10の中心位置をX軸方向正側に移動させるように指示する。これにより、X方向フィードモータ制御回路62は、X方向モータ25を作動させて磁気センサ10の中心位置をX軸方向正側に移動させ始める。
次に、コントローラ70は、ステップS22にてX方向位置検出回路61からX方向位置を入力し、ステップS23にて入力したX方向位置が次のX軸方向の検出位置に達したか否か、すなわちX方向位置を示す値が値Xs+n・ΔX以上になったか否かを判定する。そして、X方向位置検出回路61から入力したX方向位置が次のX軸方向の検出位置に達するまで、コントローラ70は、ステップS23にて「No」と判定し続けて、ステップS22,S23の処理を繰り返し実行する。X方向位置検出回路61から入力したX方向位置が次のX軸方向の検出位置に達すると、コントローラ70は、ステップS23にて「Yes」と判定し、ステップS24にてX方向フィードモータ制御回路62に、磁気センサ10のX軸方向正側への移動を停止させることを指示する。これにより、X方向フィードモータ制御回路62は、X方向モータ25の作動を停止させて、磁気センサ10のX軸方向正側への移動を停止させる。その結果、磁気センサ10は、値Xs+n・ΔXで表されたX軸方向位置、かつY軸方向初期値Ysを磁気センサ10の検出位置として、太陽電池パネルSPの磁界を検出し始める。
前記ステップS24の処理後、コントローラ70は、ステップS16に戻って、ステップS16の処理によって変数nに変数a(この場合、a=1)を加算して、前述のステップS17,S18のサンプリングデータの取込み処理を実行する。これらのステップS17,S18の処理により、値Xs+(n−1)・ΔXで表されたX軸方向位置、かつY軸方向初期値Ysを検出位置とする磁気センサ10の磁界検出によるサンプリングデータがRAMに新たに記憶される。具体的には、X方向磁気検出信号の参照信号及び遅延参照とそれぞれ同期した信号成分の大きさを表す所定数Kのサンプリングデータが、サンプリングデータ群Sx1(n,m),Sx2(n,m)としてRAMに記憶される。また、Y方向磁気検出信号の参照信号及び遅延参照信号とそれぞれ同期した信号成分の大きさを表す所定数Kのサンプリングデータが、サンプリングデータ群Sy1(n,m),Sy2(n,m)としてRAMに記憶される。なお、この場合の変数nは「2」であり、変数mは「1」である。
そして、コントローラ70は、次のX軸方向の検出位置(X軸方向の走査位置)を表す値Xs+n・ΔXが終了値Xmaxよりも大きくなるまで、ステップS16〜S24の処理により、磁気センサ10による検出位置をX軸方向正側に所定値ΔXずつ移動させるとともに、変数nを「1」ずつ増加させながら、サンプリングデータを取込む。そして、次のX軸方向の検出位置を表す値Xs+n・ΔXが終了値Xmaxよりも大きくなると、コントローラ70は、ステップS20にて「Yes」と判定して、プログラムを図5BのステップS30に進める。この状態では、サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1,2,3・・・nmax,m=1)がRAMに記憶される。なお、値nmaxは、終了値Xmax直前の検出位置によるサンプリングデータ群に関する変数nの値であって、X軸方向における検出位置の数を表している。
コントローラ70は、ステップS30において、Y方向フィードモータ制御回路64に、磁気センサ10による検出位置をY軸方向正側に移動させるように指示する。これにより、Y方向フィードモータ制御回路64は、Y方向モータ34を作動させて磁気センサ10による検出位置をY軸方向正側に移動させ始める。次に、コントローラ70は、ステップS31にてY方向位置検出回路63からY方向位置を入力し、ステップS32にて入力したY方向位置が次のY軸方向の検出位置Ys+m・ΔYに達したか否かを判定する。この次のY軸方向の検出位置Ys+m・ΔYは、X軸方向の次の検出位置Xs+n・ΔXと同様に、Y軸方向の走査間隔を表す所定値ΔYに変数mを乗算して初期値Ysを加算した値である(図9参照)。そして、Y方向位置検出回路63から入力したY方向位置が次のY軸方向の検出位置に達するまで、コントローラ70は、ステップS32にて「No」と判定し続けて、ステップS31,S32の処理を繰り返し実行する。Y方向位置検出回路63から入力したY方向位置が次のY軸方向の検出位置に達すると、コントローラ70は、ステップS32にて「Yes」と判定し、ステップS33にてY方向フィードモータ制御回路64に、磁気センサ10のY軸方向正側への移動を停止させることを指示する。これにより、Y方向フィードモータ制御回路64は、Y方向モータ34の作動を停止させて、磁気センサ10検出位置のY軸方向正側への移動を停止させる。その結果、磁気センサ10は、値Xs+(n-1)・ΔX(=Xs+(nmax-1)・ΔX)で表されたX軸方向位置、かつ値Ys+m・ΔY(=Ys+ΔY)で表されたY軸方向位置を検出位置として、太陽電池パネルSPの表面近傍の磁界を検出し始める。
前記ステップS33の処理後、コントローラ70は、ステップS34にて、Y方向位置検出回路63からY方向位置を入力して、入力したY方向位置が終了値Ymaxによって表されたY軸方向の走査終了位置を越えたか否かを判定する。Y方向位置が走査終了位置を越えていなければ、コントローラ70は、ステップS34にて「No」と判定して、ステップS35にて変数mに「1」を加算し、ステップS36にて変数aに「−1」を乗算する。この場合、ステップS35の処理によって変数mは「2」になり、ステップS36の処理によって変数aは「−1」になる。また、変数nは値nmaxに保たれている。前記ステップS36の処理後、コントローラ70は、ステップS17に戻って、ステップS17,S18の処理より、K個ずつの各サンプリングデータ群Sx1(nmax,2),Sx2(nmax,2),Sy1(nmax,2),Sy2(nmax,2)をロックインアンプ68からそれぞれ取込み記憶する。
前記ステップS17,S18の処理後、コントローラ70は、ステップS19にて変数aは「1」であるか否かを判定する。この場合、前記ステップS36の処理によって変数aは「−1」に設定されているので、コントローラ70は、ステップS19にて「No」と判定して、ステップS25にて、値Xs+(n−2)・ΔXがX軸方向の初期値Xsよりも小さいか否かを判定する。この場合、変数nはnmaxであり、値Xs+(n−2)・ΔXは、太陽電池パネルSPの図9における右端から2番目の検出位置を左側へ移動させた際における次のX軸方向の検出位置(X軸方向の走査位置)を表す値である。値Xs+(n−2)・ΔXが初期値Xsよりも小さくなければ、コントローラ70は、ステップS25にて「No」と判定して、ステップS26にて、X方向フィードモータ制御回路62に、磁気センサ10による検出位置をX軸方向負側に移動させるように指示する。これにより、X方向フィードモータ制御回路62は、X方向モータ25を作動させて磁気センサ10による検出位置をX軸方向負側に移動させ始める。
次に、コントローラ70は、ステップS27にてX方向位置検出回路61からX方向位置を入力し、ステップS28にて入力したX方向位置が次のX軸方向の検出位置に達したか否か、すなわちX方向位置を示す値が値Xs+(n−2)・ΔX以下になったか否かを判定する。そして、X方向位置検出回路61から入力したX方向位置が次のX軸方向の検出位置に達するまで、コントローラ70は、ステップS28にて「No」と判定し続けて、ステップS27,S28の処理を繰り返し実行する。X方向位置検出回路61から入力したX方向位置が次のX軸方向の検出位置に達すると、コントローラ70は、ステップS28にて「Yes」と判定し、ステップS29にてX方向フィードモータ制御回路62に、検出位置のX軸方向負側への移動を停止させることを指示する。これにより、X方向フィードモータ制御回路62は、X方向モータ25の作動を停止させて、磁気センサ10による検出位置のX軸方向負側への移動を停止させる。その結果、磁気センサ10は、値Xs+(n−2)・ΔX(=Xs+(nmax−2)・ΔX)で表されたX軸方向位置、かつ値Ys+(m−1)・ΔYs(=Ys+ΔYs)で表されたY軸方向位置を検出位置として、太陽電池パネルSPの表面近傍の磁界を検出し始める。
前記ステップS29の処理後、コントローラ70は、ステップS16に戻って、ステップS16の処理によって変数nに変数a(この場合、a=−1)を加算して、前述のステップS17,S18のサンプリングデータの取込み処理を実行する。これらのステップS17,S18の処理により、前記ステップS16の処理前の値Xs+(n−2)・ΔX(=Xs+(nmax−2)・ΔX)で表されたX軸方向位置、かつ値Ys+(m−1)・ΔYs(=Ys+ΔYs)で表されたY軸方向位置を検出位置とするK個ずつの各サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)が取込み記憶される。なお、この取込み記憶されるサンプリングデータ群に関する変数nは値nmax−1であり、変数mは「2」である。
そして、コントローラ70は、次のX軸方向の検出位置(X軸方向の走査位置)を表す値Xs+(n−2)・ΔXが初期値Xsよりも小さくなるまで、ステップS16〜S19,S25〜S29の処理により、検出位置をX軸方向負側に所定値ΔXずつ移動させるとともに、変数nを「1」ずつ減少させながら、サンプリングデータを取込む。そして、次のX軸方向の検出位置を表す値Xs+(n−2)・ΔXが初期値Xsよりも小さくなると、コントローラ70は、ステップS25にて「Yes」と判定して、図5BのステップS30に進む。なお、このときの変数nは「1」である。この状態では、前述したサンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1,2,3・・・nmax,m=1)に加えて、サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1,2,3・・・nmax,m=2)がRAMに記憶される。
コントローラ70は、前述したステップS30〜S33の処理により、Y方向モータ34を作動させて磁気センサ10による検出位置を次のY軸方向検出位置Ys+m・ΔYに移動させる。その結果、磁気センサ10は、初期値Xsで表されたX軸方向の初期位置、かつ値Ys+m・ΔY(=Ys+2・ΔY)で表されたY軸方向位置を検出位置として、太陽電池パネルSPの表面近傍の磁界を検出し始める。次に、コントローラ70は、Y方向位置検出回路63によって検出されたY方向位置が終了位置を越えていないことを条件に、コントローラ70は、ステップS34にて「No」と判定して、ステップS35にて変数mに「1」を加算し、ステップS36にて変数aに「−1」を乗算する。この場合、ステップS35の処理によって変数mは「3」になり、ステップS36の処理によって変数aは「1」になる。また、変数nは「1」に保たれている。前記ステップS36の処理後、コントローラ70は、ステップS17に戻って、ステップS17,S18の処理より、K個ずつの各サンプリングデータ群Sx1(1,3),Sx2(1,3),Sy1(1,3),Sy2(1,3)をロックインアンプ68からそれぞれ取込み記憶する。
前記ステップS17,S18の処理後、コントローラ70は、ステップS19にて変数aは「1」であるか否かを判定する。この場合、前記ステップS36の処理によって変数aは「1」に設定されているので、コントローラ70は、ステップS19にて「Yes」と判定して、前述したステップS20〜S24,S16〜S19の処理を、値Xs+n・ΔXが終了値Xmaxよりも大きくなるまで繰り返し実行する。これにより、磁気センサ10による検出位置がX軸方向正側に走査されて、サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1,2,3・・・nmax,m=3)がRAMに新たに記憶される。
そして、変数mを「3」に設定した状態で、磁気センサ10の検出位置のX軸方向正側への走査が終了すると、ステップS20の判定処理により、ステップS30〜S36の処理が実行されて、磁気センサ10による検出位置が次のY軸方向位置に変更されるとともに、変数m,aが変更される。そして、前述したステップS16〜S19,S25〜S29の処理により、磁気センサ10による検出位置がX軸方向負側へ走査され、サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1,2,3・・・nmax,m=4)がRAMに新たに記憶される。
このようなステップS16〜S36の処理により、磁気センサによる検出位置がX軸方向を往復するように走査されるとともにY軸方向正側に走査されて、Y方向位置検出回路63によって検出されるY方向位置が終了値Ymaxよりも大きくなると、コントローラ70は、ステップS34にて「Yes」と判定して、ステップS37以降の処理を実行する。この状態では、RAM内に、K個ずつの各サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1〜nmax,m=1〜mmax)が記憶されている。なお、値mmaxは、終了値Ymax直前の検出位置によるサンプリングデータ群に関する変数mの値であって、Y軸方向における検出位置の数を表している。
コントローラ70は、ステップS37にてセンサ信号取出回路67の作動停止を指示し、ステップS38にて光源駆動回路66の作動停止を指示し、ステップS39にて発光信号供給回路65の作動停止を指示する。これらの作動停止の指示により、発光素子50、発光信号供給回路65、光源駆動回路66、センサ信号取出回路67、ロックインアンプ68及び磁気センサ10の作動が停止する。前記ステップS39の処理後、コントローラ70は、ステップS40にて、センサ支持台11をX方向駆動限界位置まで移動させることをX方向位置検出回路61及びX方向フィードモータ制御回路62に指示するとともに、センサ支持台11をY方向駆動限界位置まで移動させることをY方向位置検出回路63及びY方向フィードモータ制御回路64に指示して、ステップS41にてデータ取得プログラムの実行を終了する。X方向フィードモータ制御回路62は、前述の初期設定のように、X方向位置検出回路61と協働して、センサ支持台11をX方向駆動限界位置まで移動させる。Y方向フィードモータ制御回路64は、前述のように、Y方向位置検出回路63と協働して、センサ支持台11をY方向駆動限界位置まで移動させる。
次に、前記データ取得プログラムで取得した所定数Kずつのサンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)(n=1〜nmax,m=1〜mmax)を用いて、太陽電池パネルSPを評価する方法について説明する。この場合、作業者は、入力装置71を操作して、コントローラ70に図6A乃至図6Fの評価プログラムを実行させる。この評価プログラムにおいては、太陽電池パネルSPの合否判定が行われたり、作業者が太陽電池パネルSPの合否を判定するために、太陽電池パネルSPのX−Y座標の各点における電流の大きさと向きである電流分布の画像が表示装置に表示される。そこで、評価プログラムを説明する前に、太陽電池セルSCの電極に異常が発生した場合について説明しておく。この種の太陽電池セルSCにおいては、取出電極81,82が内部電極86,88に導電性ペースト又は半田により接続されているので、取出電極81,82と内部電極86,88との間の接続不良が異常の原因となる。
1つの太陽電池セルSCにおいて、正常な場合と異常(前記接続不良)な場合との電流の分布について、図10を用いて説明する。(A)は、×印位置にて、取出電極81と内部電極86との間に接続不良の異常が発生している状態を示している。(B)は、実線により、太陽電池セルSCが正常な状態において、取出電極81の位置における電流の大きさを、取出電極81のY方向位置に対応させて示している。また、(B)は、破線により、太陽電池セルSCに前記異常が発生した状態において、取出電極81の位置における電流の大きさを、取出電極81のY方向位置に対応させて示している。この場合、Y方向位置に応じて電流の大きさが変化するのは、(A)の矢印のように電流が流れるため、すなわち上側位置に流れる電流は下側位置にも重なって流れるためである。なお、この場合の電流の大きさとは、電流の向きとは無関係な電流の大きさの絶対値(後述するIxy)である。したがって、(B)のグラフからは、太陽電池セルSCが正常な場合と異常な場合とでは、電流の大きさの変化において差があまり大きくなく、電流の大きさは共に滑らかに変化していることが分かる。これは、接続不良の異常箇所においても、取出電極81及び内部電極86自体には、異常が発生しているわけではなく、取出電極81及び内部電極86が延設されているY方向には前記接続不良の異常とは無関係に充分な電流が流れ得るからであると推定される。
一方、(C)は、実線により、太陽電池セルSCが正常な状態において、取出電極81の位置におけるX方向(取出電極81に直交する方向)の電流の大きさを、取出電極81のY方向位置に対応させて示している。また、(C)は、破線により、太陽電池セルSCに前記異常が発生した状態において、取出電極81の位置のX方向の電流の大きさを、取出電極81のY方向位置に対応させて示している。この場合も、Y方向位置に応じて電流の大きさが変化するのは、(A)の矢印のように電流が流れるため、すなわち上側位置に流れる電流は下側位置にも重なって流れるためである。そして、(C)のグラフからは、太陽電池セルSCが正常な場合と異常な場合とでは、X方向の電流の大きさの変化において差が大きく、正常な場合にはX方向の電流の大きさは滑らかに変化しているが、異常な場合にはX方向の電流の大きさは異常箇所近傍で大きく変動していることが分かる。これは、接続不良の異常箇所において、異常箇所を避けて電流がY方向に傾いて流れ、X方向の電流の大きさが減少するためであると推定される。
一方、(D)は、実線により、太陽電池セルSCが正常な状態において、取出電極81の位置近傍におけるX方向(取出電極81に直交する方向)の電流の大きさを、取出電極81のY方向位置に対応させて示している。また、(D)は、破線により、太陽電池セルSCに前記異常が発生した状態において、取出電極81の位置近傍におけるX方向電流の大きさを、取出電極81のY方向位置に対応させて示している。この場合も、Y方向位置に応じて電流の大きさが変化するのは、太陽電池セルSCにおいて(A)の矢印のように電流が流れるため、すなわち上側位置に流れる電流は下側位置にも重なって流れるためである。そして、(D)のグラフからは、太陽電池セルSCが正常な場合と異常な場合とでは、(C)の場合よりも、X方向の電流の大きさの変化において差が大きく、正常な場合にはX方向の電流の大きさは滑らかに変化しているが、異常な場合にはX方向の電流の大きさは異常箇所近傍で大きく変動していることが分かる。これも、接続不良の異常箇所において、異常箇所を避けて電流がY方向に傾いて流れ、X方向の電流が減少するためであると推定される。
本発明は、これらの取出電極81の位置又は位置近傍におけるX方向の電流の大きさの変化に着目してなされたもので、後述する説明では、このX方向の電流の大きさをIxとして説明する。また、取出電極82と内部電極88との間の接続不良による異常の発生時においても同じ結果を得ている。すなわち、本発明は、取出電極81,82の位置又はその近傍位置におけるX方向の電流の大きさIxのY方向に沿った変化において、X方向の電流の大きさIxの変動が接続不良部分の近傍にて大きくなることに着目して、取出電極81,82と内部電極86,88との接続不良を検出するようにしている。
次に、評価プログラムの実行について説明する。この評価プログラムの実行は図6AのステップS100にて開始され、コントローラ70は、ステップS102にて変数n,mをそれぞれ「1」に初期設定するとともに、変数CHを「0」に初期設定する。変数n,mは、それぞれX,Y軸方向における検出位置を指定するための変数である。そして、値nmax,mmaxは、前述のように、それぞれX,Y軸方向における検出位置の数を表している。変数CHは、詳しくは後述するが、「0」により取出電極81,82がY軸方向に延設されていることを表し、「1」により取出電極81,82がX軸方向に延設されていることを表す。前記ステップS102の処理後、コントローラ70は、ステップS104にて、変数n,mによって指定される所定数Kずつのサンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)の磁界の大きさの各平均値Sx1,Sx2,Sy1,Sy2を計算する。具体的には、各サンプリングデータ群Sx1(n,m),Sx2(n,m),Sy1(n,m),Sy2(n,m)ごとに、K個のサンプリングデータを加算して値Kで除算する。
次に、コントローラ70は、ステップS106にて、前記計算した平均値Sx1,Sx2を用いた下記式1,2の演算の実行により、X方向磁気検出信号の極大値Hxと、X方向磁気検出信号の参照信号に対する位相シフト量θxとを計算する。
Hx=(Sx12+Sx22)1/2 …式1
θx=tan-1(Sx2/Sx1) …式2
これにより、X方向磁気検出信号としてHx・sin(2πft+θx)が検出されたことになる。なお、fは、発光信号供給回路65から出力される発光信号及び参照信号の周波数に等しい。
次に、コントローラ70は、ステップS108にて、前記計算した平均値Sy1,Sy2を用いた下記式3,4の演算の実行により、Y方向磁気検出信号の極大値Hyと、Y方向磁気検出信号の参照信号に対する位相シフト量θyとを計算する。
Hy=(Sy12+Sy22)1/2 …式3
θy=tan-1(Sy2/Sy1) …式4
これにより、Y方向磁気検出信号としてHy・sin(2πft+θy)が検出されたことになる。
次に、コントローラ70は、ステップS110にて、前記計算したHx,θx,Hy,θyを用いた下記式5,6の演算の実行により、発光素子50の発光量すなわち通電電流が最大となるタイミング(前記X方向磁気検出信号Hx・sin(2πft+θx)及び前記Y方向磁気検出信号Hy・sin(2πft+θy)における2πftがπ/2のタイミング)における、検査位置の磁界の強さHxy及び磁界の向きθxyを計算する。この場合、通電電流が最大となるタイミングを採用した理由は、位相シフト量θx,θyは小さく、通電電流が最大となるタイミング近傍で検査位置の磁界の強さHxyが最大値近傍の値になるためである。なお、位相シフト量θx,θyが小さくなく、通電電流が最大となるタイミング近傍で検査位置の磁界の強さHxyが最大値近傍にならない場合には、磁界の強さHxyが最大値近傍になるようなタイミングの角度をπ/2に代えて用いればよい。
Hxy=[{Hx・sin(π/2+θx)}2+{Hy・sin(π/2+θy)}2]1/2 …式5
θxy=tan-1{Hy・sin(π/2+θy)}/{Hx・sin(π/2+θx)} …式6
次に、コントローラ70は、ステップS112にて、太陽電池パネルSPに流れる電流は前記磁界の強さHxyに比例し、かつ方向が磁界の方向θxyと−π/2異なることから、前記計算したHxy,θxyを用いた下記式7,8の演算の実行により、通電電流が最大となるタイミングにおける、太陽電池パネルSPの検査位置に流れる電流の大きさIxy及び方向θixyを計算する。ただし、値Kは、比例定数である。
Ixy=K・Hxy …式7
θixy=θxy−π/2 …式8
そして、このステップS112にて、前記計算された電流の大きさIxy及び方向θixyは、太陽電池パネルSPの検査位置を表す変数n,mを用いて電流の大きさデータIxy(n,m)及び方向データθixy(n,m)としてRAM又は記憶装置に記憶される。
次に、コントローラ70は、ステップS114にて、前記計算したIxy,θixyを用いた下記式9,10の演算の実行により、太陽電池パネルSPの検査位置においてX方向及びY方向に流れる電流の大きさIx,Iyを計算する。
Ix=Ixy・cosθixy …式9
Iy=Ixy・sinθixy …式10
そして、このステップS114にて、前記計算された電流の大きさIx,Iyも、太陽電池パネルSPの検査位置を表す変数n,mを用いて電流の大きさデータIx(n,m),Iy(n,m)としてRAM又は記憶装置に記憶される。
次に、コントローラ70は、ステップS116にて変数nがX軸方向の検出位置数を表す値nmaxに達したか否かを判定する。変数nが値nmaxに達していなければ、コントローラ70は、ステップS116にて「No」と判定し、ステップS118にて変数nに「1」を加算してステップS104に戻る。そして、前述したステップS104〜S114の処理を実行した後、コントローラ70は、ステップS116にてふたたび変数nが値nmaxに達したか否かを判定する。変数nが値nmaxに達しない限り、ステップS104〜118の処理が繰り返し実行される。
このようなステップS104〜S118の繰り返し処理中、変数nが値nmaxに達すると、コントローラ70は、ステップS116にて「Yes」と判定して、ステップS120にて変数mがY軸方向の検出位置数を表す値mmaxに達したか否かを判定する。変数mが値mmaxに達しなければ、コントローラ70は、ステップS120にて「No」と判定し、ステップS112にて変数mに「1」を加算し、ステップS124にて変数nを「1」に初期設定して、ステップS104に戻る。そして、変数nが所定値nmaxに達するまで前述したステップS104〜S118の処理を繰り返し実行した後、コントローラ70は、ステップS120にてふたたび変数mが値mmaxに達したか否かを判定する。変数mが値mmaxに達しない限り、ステップS104〜124の処理が繰り返し実行される。そして、変数mが値mmaxに達すると、コントローラ70は、ステップS120にて「Yes」と判定して、図6BのステップS130に進む。
この時点では、太陽電池パネルSPの検査位置ごとに、電流の大きさデータIxy(n,m)、電流の方向データθixy(n,m)、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)(n=1〜nmax,m=1〜mmax)が、RAM又は記憶装置に記憶されている。
次に、コントローラ70は、ステップS130にて、前記計算した全ての電流の大きさデータIxy(n,m)の中から、取出電極81,82位置及びその近傍位置の電流の大きさデータIxy(n,m)を取出す。この場合、電流の大きさデータIxy(n)の分布は、図11に示すように、取出電極81,82位置及びその近傍位置における大きな電流の分布と、それ以外の部分における小さな電流の分布とに大別される。したがって、このステップS130においては、前記全ての電流の大きさデータIxy(n)の中から、予め決められた所定値以上の値を有する電流の大きさデータIxy(n)を抽出すればよい。
次に、太陽電池パネルSPのステージ40上への置き方により、取出電極81,82がY軸方向に延設されているか、X軸方向に延設されているかを検出するステップS140〜S162の処理を実行する。コントローラ70は、まず、ステップS140にて変数nを「1」に初期設定し、ステップS142にて、前記ステップS134の処理によって抽出した電流の大きさデータIxy(n,m)において、変数nによって指定され、かつ変数mが連続している大きさデータIxy(n,m)の数を計算して値Nnとして設定する。そして、コントローラ70は、ステップS144にて、値Nnが所定数以上であるかを判定する。この判定処理は、取出電極81,82が変数nによって指定されるX軸方向位置にあり、かつY軸方向に延設されていれば、前記値Nnは1つの太陽電池セルSCのY軸方向の長さをY軸方向の検出間隔ΔY(図9参照)で除した値程度の大きさであることに基づくものである。したがって、前記所定数は、上述したように、作業者が入力した1つの太陽電池セルSCのY軸方向の長さを検出間隔ΔYで除した値よりも若干小さな値である。この場合、値Nnが所定数以上でなければ、コントローラ70は、ステップS144にて「No」と判定して、ステップS146に進む。
ステップS146においては、コントローラ70は、変数nをX軸方向の検出間隔ΔX(図9参照)に乗算した値n・ΔXが所定距離以上であるかを判定する。この処理は、後述する変数nの増加による検出位置のX軸方向への変化により、1つ分の太陽電池セルSCのX軸方向の幅に対応した長さ分だけ、前記ステップS142,S144の処理を実行し終えたかを判定するものである。したがって、前記所定距離は、作業者が入力した1つの太陽電池セルSCのX軸方向の長さにほぼ等しい。値n・ΔXが所定距離以上でなければ、コントローラ70は、ステップS146にて「No」と判定して、ステップS148にて変数nに「1」を加算して、ステップS142に戻る。そして、これらのステップS142〜S146からなる循環処理中に、ステップS142の処理によって計算された値Nnが所定数以上になると、コントローラ70は、ステップS144にて「Yes」すなわち取出電極81,82はY軸方向に延設されていると判定して、図6CのステップS170に進む。一方、値Nnが所定数以上になったことが検出されず、値n・ΔXが所定距離以上になると、コントローラ70は、ステップS146にて「Yes」すなわち取出電極81,82はY軸方向に延設されていないと判定して、ステップS150〜S156の処理を実行する。
ステップS150〜S156の処理は、取出電極81,82がX軸方向に延設されているかを検出する処理である。コントローラ70は、まず、ステップS150にて変数mを「1」に初期設定し、ステップS152にて、前記ステップS134の処理によって抽出した電流の大きさデータIxy(n,m)において、変数mによって指定され、かつ変数nが連続している大きさデータIxy(n,m)の数を計算して値Nmとして設定する。そして、コントローラ70は、ステップS154にて、値Nmが所定数以上であるかを判定する。この判定処理は、取出電極81,82が変数mによって指定されるY軸方向位置にあり、かつX軸方向に延設されていれば、前記値Nmは1つの太陽電池セルSCのX軸方向の長さをX軸方向の検出間隔ΔX(図9参照)で除した値程度の大きさであることに基づくものである。したがって、前記所定数は、作業者が入力した1つの太陽電池セルSCのX軸方向の長さを検出間隔ΔXで除した値よりも若干小さな値である。この場合、値Nmが所定数以上でなければ、コントローラ70は、ステップS154にて「No」と判定して、ステップS156に進む。
ステップS156においては、コントローラ70は、変数mをY軸方向の検出間隔ΔY(図9参照)に乗算した値m・ΔYが所定距離以上であるかを判定する。この処理は、後述する変数mの増加による検出位置のY軸方向への変化により、1つ分の太陽電池セルSCのY軸方向の幅に対応した長さ分だけ、前記ステップS152,S154の処理を実行し終えたかを判定するものである。したがって、前記所定距離は、作業者が入力した1つの太陽電池セルSCのY軸方向の長さにほぼ等しい。値m・ΔYが所定距離以上でなければ、コントローラ70は、ステップS156にて「No」と判定して、ステップS158にて変数mに「1」を加算して、ステップS152に戻る。そして、これらのステップS152〜S156からなる循環処理中に、ステップS152の処理によって計算された値Nmが所定数以上になると、コントローラ70は、ステップS154にて「Yes」すなわち取出電極81,82はX軸方向に延設されていると判定して、ステップS160,S162の処理後、図6CのステップS170に進む。
ステップS160においては、コントローラ70は、前記ステップS134の処理によって抽出した電流の大きさデータIxy(n,m)を電流の大きさデータIxy(m,n)に並び換える。これは、後述する処理において、取出電極81,82がX軸方向に延設されている場合と、取出電極81,82がY軸方向に延設されている場合との処理を共通にするもので、電流の大きさデータIxy(n,m)のX座標値をY座標値に変更し、Y座標値をX座標値に変更することになる。そして、ステップS162においては、コントローラ70は、変数CHを、前記電流の大きさデータIxy(n,m)を電流の大きさデータIxy(m,n)に並び換えを表すとともに、取出電極81,82がX軸方向に延設されていること表す「1」に変更する。
一方、値Nmが所定数以上になったことが検出されず、値m・ΔYが所定距離以上になると、コントローラ70は、ステップS156にて「Yes」すなわち取出電極81,82はY軸方向に延設されていないと判定して、図6FのステップS268に進む。なお、このステップS156における「Yes」との判定は、取出電極81,82のX軸方向の延設も、Y軸方向の延設も検出されないことを意味する。
次に、取出電極81,82の位置を示す電極位置座標Bxy(n,m)(すなわち磁気センサ10による検出位置群)を検出して、マトリクス状に配置した取出電極81,82のX方向及びY方向の順番を特定するX方向電極番号gx及びY方向電極番号gy(図7参照)を、前記検出した電極位置座標Bxy(n,m)に割当てる図6C及び図6DのステップS170〜S210の処理について説明する。なお、値n,mは、X軸方向及びY軸方向の磁気センサ10による検出位置をそれぞれ示す変数である。まず、コントローラ70は、図6CのステップS170にて、変数nを「1」に初期設定するとともに、X方向電極番号gx及びY方向電極番号gyをそれぞれ「1」に初期設定する。
次に、コントローラ70は、ステップS172にて、前記ステップS130にて抽出した全ての電流の大きさデータIxy(n,m)に含まれて変数nによって指定される電流の大きさデータIxy(n,m)の数を値Nnmとして計算する。そして、コントローラ70は、ステップS174にて、この値Nnmが所定数以上であるかを判定する。これらのステップS172,S174の処理は、変数nによって指定されるX方向位置が取出電極81,82の位置に対応していれば、取出電極81,82の位置では電流の大きさデータIxy(n,m)はかなり大きいはずであるので、値Nnmもかなり大きいはずである。なお、前記所定数は、取出電極81,82のY方向の合計長さとY方向の移動距離単位ΔYによって決まる値であり、例えば、前記合計長さを移動距離単位ΔYで除した値よりも若干小さな値である。変数nによって指定されるX方向位置が取出電極81,82の位置に対応していなければ、値Nnmは小さいので、コントローラ70は、ステップS174にて「No」と判定して、ステップS176にて変数nがX軸方向の検出位置数を表す値nmaxに達したか判定する。変数nが値nmaxに達していなければ、コントローラ70は、ステップS176にて「No」と判定して、ステップS178にて変数nに「1」を加算して、前記ステップS172,S174の処理を実行する。
変数nによって指定されるX方向位置が取出電極81,82の位置に対応して値Nnmが所定数よりも大きくなると、コントローラ70は、ステップS174にて「Yes」と判定して、ステップS180にて、Y軸方向の磁気センサ10の検出位置を示す変数mを「1」に初期設定するとともに、取出電極81,82のY軸方向の検出位置の数(取出電極81,82の長さをY軸方向の移動距離単位ΔYで除した数)をカウントするための変数pを「0」に初期設定して、ステップS182の判定処理を実行する。
ステップS182においては、変数n,mによって指定されるX方向の電流の大きさデータIx(n,m)が所定の小さな値ΔIx以下であるかを判定することにより、変数n,mによって示される検出位置が取出電極81,82の位置にあるか、取出電極81,82の間の接続線91にあるかを判定する。これは、変数mによって指定されるY軸方向位置が取出電極81,82に対応した位置にあるときには、X方向の電流の大きさデータIx(n,m)はある程度の値を示す(図10参照)が、変数mによって指定されるY軸方向位置が取出電極81,82の間の接続線91に対応した位置にあるときには、X方向の電流の大きさデータIx(n,m)はほぼ「0」である。
したがって、変数mによって指定されるY方向位置が取出電極81,82に対応する位置であれば、コントローラ70は、ステップS182にて「No」と判定して、ステップS184にて変数pに「1」を加算し、ステップS186にて変数mに「1」を加算して、ステップS182に戻る。変数mの増加によって検出位置がY方向に移動されても、検出位置が取出電極81,82に対応する位置である限り、前記ステップS182〜S186の循環処理が繰り返し実行されて、変数pが変数mの増加に従って増加する。このステップS182〜S186の循環処理中、検出位置が取出電極81,82を超えて接続線91の領域に入ると、コントローラ70は、ステップS182にて「Yes」と判定して、図6DのステップS188に進む。
ステップS188においては、前記変数pが所定数以上であるかを判定する。この場合、所定数は、取出電極81,82の長さを移動距離単位ΔYで除した値よりも若干小さな値であり、前記入力した太陽電池セルSCのY方向の長さと移動距離単位ΔYとにより予め決められた値である。取出電極81,82の位置に対応したX方向の電流の大きさIx(n,m)が正確に検出されていれば、変数pは所定数以上であるので、コントローラ70はステップS188にて「Yes」と判定して、ステップS190にて取出電極81,82のX−Y座標位置を表す電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)内のいずれかにX方向電極番号gx及びY方向電極番号gyが割当てられているか否かを判定する。この判定処理は、今回検出した取出電極81,82の位置を表す電極位置座標Bxy(n,m)を定義して同電極位置座標Bxy(n,m)にX方向電極番号gx及びY方向電極番号gyを割当てる前に、X方向位置が変数n−1で指定される前回検出の取出電極81,82の位置に対応した電極位置座標Bxy(n−1,m)にX方向電極番号gx及びY方向電極番号gyが既に割当てられているかを判定するものである。もし、前回検出の取出電極81,82の位置を表す電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)に未だX方向電極番号gx及びY方向電極番号gyが割当てられていなければ(すなわち電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)が未だ定義されていなければ)、コントローラ70は、ステップS190にて「No」と判定して、ステップS192にて電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)を定義してX方向電極番号gx及びY方向電極番号gyを割当て、ステップS202に進む。この場合、変数pの使用により、取出電極81,82の長さに対応した位置分の電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が定義されて、この定義された電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)にX方向電極番号gx及びY方向電極番号gyが割当てられたことになる。
一方、前回検出の電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)にX方向電極番号gx及びY方向電極番号gyが既に割当てられていれば、コントローラ70は、ステップS190にて「Yes」と判定して、ステップS194,S196に進む。ステップS194においては、前回検出の電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)に対応した位置の電流の大きさデータIxy(n−1,m−p)〜Ixy(n−1,m−1)の平均値Iavebが計算される。また、ステップS196においては、今回検出の電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)に対応した位置の電流の大きさデータIxy(n,m−p)〜Ixy(n,m−1)の平均値Iaveaが計算される。そして、コントローラ70は、ステップS198にて、今回の平均値Iaveaが前回の平均値Iaveb以上であるか否かを判定する。今回の平均値Iaveaが前回の平均値Iaveb以上であれば、コントローラ70は、ステップS198にて「Yes」と判定して、前回検出の電極位置座標Bxy(n−1,m−p)〜Bxy(n−1,m−1)に割当てられているX方向電極番号gx及びY方向電極番号gyを、今回検出の電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)に割当て、ステップS202に進む。一方、今回の平均値Iaveaが前回の平均値Iaveb以上でなければ、コントローラ70は、ステップS198にて「No」と判定して、前記割当ての変更を行うことなく、ステップS202に進む。これらのステップS190〜S200の処理により、1つの取出電極81又は82に対しては、最も平均電流の大きな1組の電流の大きさデータIxy(n,m−p)〜Ixy(n,m−1)に対応した電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)にのみ、X方向電極番号gx及びY方向電極番号gyが割当てられる。ステップS202においては、コントローラ70は、Y方向電極番号gyに「1」を加算して、ステップS204に進む。これは、図7のY方向に沿って次の取出電極81,82の検出を意味する。
また、前記ステップS188の判定処理において、「No」すなわち変数pが所定数未満である場合には、コントローラ70は、ステップS188にて「No」と判定して、ステップS190〜S202の処理を実行しないで、ステップS204に進む。この場合、電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)に対する、X方向電極番号gx及びY方向電極番号gyの割当ては行われない。
ステップS204においては、変数mが値mmax(すなわち終了値Ymax直前の検出位置によるサンプリングデータ群に関する変数mの値)に達したかが判定される。変数mが値mmaxに達していなければ、コントローラ70は、ステップS204にて「No」と判定して、ステップS206にて変数pを「0」に初期設定して、図6CのステップS186に進む。コントローラ70は、ステップS186にて変数mに「1」を加算し、ステップS182の判定処理をふたたび実行する。ステップS182の処理は、前述のように、Y方向の検出位置が取出電極81,82に対応しているか、取出電極81,82間の接続線91に対応しているかを判定する処理である。そして、検出位置が接続線91に対応した位置にある状態では、X方向の電流の大きさデータIx(n,m)は所定値ΔIx以下であり、コントローラ70は、ステップS182にて「Yes」と判定して、図6DのステップS188に進む。この場合、変数pは前記ステップS206の処理により「0」に保たれるので、コントローラ70はステップS188にて「No」と判定し続けて、図6DのステップS188,S204,S206及び図6CのステップS186,S182の循環処理を繰り返し実行する。
この循環処理中、ステップS186による変数mの増加により、検出位置が取出電極81,82に対応した位置まで来ると、前述の場合と同様に、コントローラ70は、ステップS182にて「No」と判定して、ステップS182〜S186の循環処理を繰り返し実行する。そして、検出位置が接続線91の領域に入ると、前述のように、コントローラ70は、ステップS182にて「Yes」と判定して、図6DのステップS188〜S202の処理を実行する。これらのステップS188〜S202の処理により、Y方向の次の取出電極81,82に対応した電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が定義されて次のX方向電極番号gx及びY方向電極番号gyが割当てられる。また、変数pが所定数未満のときには、ステップS188における「No」との判定のもとに、X方向電極番号gx及びY方向電極番号gyの割当ては行われない。
これらのステップS188〜S202の処理後、コントローラ70は、前記ステップS204,S206の処理を実行して、ふたたび図6CのステップS186に進む。これにより、変数mの増加により、図7に示すY方向の取出電極81,82の位置を表す電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が次々に定義されてX方向電極番号gx及びY方向電極番号gyが割当てられていく。そして、変数mが値mmaxに達すると、コントローラ70は、ステップS204にて「Yes」と判定し、ステップS208にてX方向電極番号gxに「1」を加算し、ステップS210にてY方向電極番号gyを「1」に戻して、図6CのステップS178に進む。コントローラ70は、ステップS178にて変数nに「1」を加算した後、ステップS172に進み、前述したステップS172〜S178の循環処理により、図7に示すX方向の次の取出電極81,82の列を検出する。そして、前記ステップS182〜S206の処理により、次のX方向の列におけるY方向の複数の取出電極81,82を検出し、前記ステップS208,S210の処理後の図6CのステップS172〜S186及び図6DのステップS188〜S206の処理により、X方向に移動しながら次々に取出電極81,82を検出して、取出電極81,82の位置を表す電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が次々に定義されてX方向電極番号gx及びY方向電極番号gyが割当てられていく。そして、変数nが値nmax(終了値Xmax直前の検出位置によるサンプリングデータ群に関する変数nの値)に達すると、コントローラ70は、ステップS176にて「Yes」と判定して、図6EのステップS220に進む。
次に、太陽電池パネルSPの合否の判定及び電流分布の画像表示を行う図6E及び図6FのステップS220〜S270の処理について説明する。まず、コントローラ70は、ステップS220にて、変数k,s,t,epを「1」にそれぞれ初期設定する。変数kは、図7に示すように、X方向電極番号gxを指定するための1〜kmaxで変化する変数である。変数sは、Y方向電極番号gyを指定するための1〜smaxで変化する変数である。変数tは、X方向の太陽電池セルSCを指定するための1〜tmaxで変化する変数である。変数epは、1つの太陽電池セルSC内の取出電極81,82を指定するための変数であり、「1」により図7の左側の取出電極82を示し、「2」により図7の右側の取出電極81を示す。なお、前記変数k,s,t,epの「1」への初期設定により、図7の最も上側かつ左側の取出電極82が指定されることになる。
前記ステップS222の処理後、コントローラ70は、ステップS222にて、変数epが「1」であるか否かを判定する。この初期の状態では、変数epは「1」であるので、コントローラ70は、ステップS222にて「Yes」と判定して、ステップS224にて値neを予め決めた正の小さな整数値Aに設定する。一方、後述するように、変数epが「2」である場合は、コントローラ70は、ステップS222にて「No」と判定して、ステップS226にて値neを予め決めた絶対値の小さな負の整数値−Aに設定する。この値ne(値A,−A)は、図7の取出電極81,82の内側の検出位置、すなわち前述したステップS170〜S210の処理によって変数gx,gyを割当てた電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が示すX方向位置の内側の検出位置(取出電極82にあっては右側位置、取出電極81にあっては左側位置)を指定するための値である。これは、図10(C)(D)で説明したように、太陽電池セルSCの異常時(取出電極81,82と内部電極86,88との接続不良)においては、取出電極81,82の位置よりもそれらの近傍位置のX方向の電流の大きさのY方向における変化が大きいためである。したがって、値Aは、前記電極位置座標Bxy(n,m−p)〜Bxy(n,m−1)が示すX方向位置と、前記異常時の電流の大きさの変化が最大となるX方向位置との差に対応した値がX方向の検出間隔ΔXを用いて計算して予め設定されている。
前記ステップS224の処理後のステップS228においては、コントローラ70は、変数kに等しいX方向電極番号gx及び変数sに等しいY方向電極番号gyが割当てられた電極位置座標群Bxy(n,m)の右側近傍位置の電極位置座標群Bxy(n+ne,m)に対応したX方向の電流の大きさデータ群Ix(n+ne,m)を抽出する。すなわち、X方向電極番号gx(=k)及びY方向電極番号gy(=s)によって指定される取出電極82の右側の近傍位置であって、取出電極82と平行な位置のX方向の電流の大きさデータ群Ix(n+ne,m)が抽出される。なお、このX方向の電流の大きさデータ群Ix(n+ne,m)は、「1」ずつ順次増加する変数mによって指定される取出電極82のY方向の長さ分のデータ数を含む。
前記ステップS228の処理後、コントローラ70は、ステップS230にて、前記抽出したX方向の電流の大きさデータ群Ix(n+ne,m)を用いて次のような計算を実行する。まず、前記抽出したX方向の電流の大きさデータ群Ix(n+ne,m)を、変数mが増加する方向に連続して所定数ごとの複数のグループ(例えば、5〜10程度のグループ)に振り分ける。ただし、最も大きな変数mを含むグループにおけるデータ数は前記所定数よりも小さい可能性があるが、他のグループのデータ数は前記所定数となる。このグループへの振り分け後、グループごとに、前記抽出したX方向の電流の大きさデータIx(n+ne,m)の平均値Iavex(t,s,ep)をそれぞれ計算する。
次に、グループごとに、前記抽出したX方向の電流の大きさデータIx(n+ne,m)の最大値から最小値を減算して、減算結果を前記計算した平均値Iavex(t,s,ep)で除算して、除算結果である(最大値−最小値)/Iavex(t,s,ep)をグループごとの評価データB(t,s,ep)とする。次に、グループごとに、前記抽出したX方向の電流の大きさデータIx(n+ne,m)の標準偏差を前記計算した平均値Iavex(t,s,ep)で除算して、除算結果である標準偏差/Iavex(t,s,ep)をグループごとの評価データC(t,s,ep)とする。なお、この状態では、前記振り分けたグループ数分の評価データB(t,s,ep),C(t,s,ep)がそれぞれ計算されることになる。そして、これらの評価データB(t,s,ep),C(t,s,ep)は、X方向の電流の大きさデータIx(n+ne,m)の変動を表すデータとして機能する。
前記ステップS230の処理後、コントローラ70は、ステップS232にて、グループごとの評価データB(t,s,ep)の中から最大値を選定するとともに、グループごとの評価データC(t,s,ep)の中からも最大値を選定する。そして、コントローラ70は、ステップS234にて前記評価データB(t,s,ep)の最大値が所定の許容値よりも大きいか否かを判定するとともに、ステップS236にて前記評価データC(t,s,ep)の最大値が所定の許容値(前記ステップS234の許容値とは異なる値)よりも大きいか否かを判定する。前記評価データB(t,s,ep)の最大値が所定の許容値以下であり、かつ前記評価データC(t,s,ep)の最大値が所定の許容値以下であれば、コントローラ70は、ステップS234,S236にて共に「No」と判定して、図6FのステップS240に進む。
一方、前記評価データB(t,s,ep)の最大値が所定の許容値よりも大きければ、コントローラ70は、ステップS234にて「Yes」と判定して、ステップS238にてエラーデータEr(t,s,ep)を“1”に設定して、図6FのステップS240に進む。また、前記評価データB(t,s,ep)の最大値が前記所定の許容値以下であっても、前記評価データC(t,s,ep)の最大値が所定の許容値よりも大きければ、コントローラ70は、ステップS236にて「Yes」と判定して、ステップS238にてエラーデータEr(t,s,ep)を“1”に設定して、図6FのステップS240に進む。すなわち、変数t,s,epによって指定される取出電極82に異常(取出電極82と内部電極88との接続不良)が発生し、図10を用いて前述したように、X方向の電流の大きさデータIx(n+ne,m)の変動が大きければ、変数t,s,epによって指定されるエラーデータEr(t,s,ep)が“1”に設定される。この“1”に設定されたエラーデータEr(t,s,ep)は、RAM又は記憶装置に記憶される。
ステップS240においては、コントローラ70は、変数epが「2」であるかを判定する。この場合、変数epは「1」であるので、コントローラ70は、ステップS242にて変数epに「1」を加算して「2」に設定し、ステップS244にて変数kに「1」を加算して「2」に設定して、図6EのステップS222に戻る。この状態では、変数s,tは「1」に初期設定されたままであり、変数k,epは「2」に変更されているので、図7の最も上側かつ左から2番目の取出電極81が指定されることになる。そして、コントローラ70は、ステップS222にて「No」すなわち変数epが「1」でないと判定して、ステップS226にて値neを負の値−Aに設定する。そして、コントローラ70は、前述したステップS228〜S238の処理を実行する。ステップS228においては、値epが負の値−Aに設定されているために、変数kに等しいX方向電極番号gx及び変数sに等しいY方向電極番号gyが割当てられた電極位置座標群Bxy(n,m)の左側近傍位置の電極位置座標群Bxy(n+ne,m)に対応したX方向の電流の大きさデータ群Ix(n+ne,m)が抽出される。すなわち、X方向電極番号gx(=k)及びY方向電極番号gy(=s)によって指定される取出電極81の左側の近傍位置であって、取出電極81と平行な位置のX方向の電流の大きさデータ群Ix(n+ne,m)が抽出される。
そして、ステップS230,232の処理により、図7の最も上側かつ左から2番目の取出電極81に関しても、前記取出電極82の場合と同様に、所定数からなるグループごとに、平均値Iavex(t,s,ep)及び評価データB(t,s,ep),C(t,s,ep)が計算されるとともに、グループごとの評価データB(t,s,ep),C(t,s,ep)の最大値が選定される。そして、ステップS234〜S238の処理により、前記選定された最大値である評価データB(t,s,ep),C(t,s,ep)が評価されて、前記取出電極81に異常(取出電極81と内部電極86との接続不良)が発生していれば、変数t,s,epによって指定されるエラーデータEr(t,s,ep)が“1”に設定されてRAM又は記憶装置に記憶される。
前記ステップS234〜S238の処理後、コントローラ70は、ステップS240にて変数epが「2」であるかをふたたび判定する。この場合、変数epが「2」であるので、コントローラ70は、ステップS240にて「Yes」と判定し、ステップS246にて変数tが前記入力したX方向の太陽電池セルSCの数tmaxに達したか否かを判定する(図7参照)。変数tがX方向の太陽電池セルSCの数tmaxに達していなければ、コントローラ70は、ステップS246にて「No」と判定し、ステップS248にて変数tに「1」を加算し、ステップS250にて変数epを初期値「1」に戻し、ステップS244にて変数kに「1」を加算して、図6EのステップS222に戻る。そして、コントローラ70は、前述した図6EのステップS222,S224,S228〜S238の処理により、図7の最も上側かつ左から3番目の取出電極82に関して、所定数からなるグループごとに、平均値Iavex(t,s,ep)及び評価データB(t,s,ep),C(t,s,ep)を計算するとともに、これらの評価データB(t,s,ep),C(t,s,ep)を評価し、前記取出電極82に異常(取出電極82と内部電極88との接続不良)が発生していれば、エラーデータEr(t,s,ep)を“1”に設定してRAM又は記憶装置に記憶する。
そして、前述した図6FのステップS240〜S242の処理により、変数epが「2」に設定されるとともに変数kに「1」が加算されて、図6EのステップS222,S226〜S238の処理が実行される。これらの処理により、図7の最も上側かつ左から4番目の取出電極81に関して、所定数からなるグループごとに、平均値Iavex(t,s,ep)及び評価データB(t,s,ep),C(t,s,ep)が計算されるとともに、これらの評価データB(t,s,ep),C(t,s,ep)が評価されて、前記取出電極81に異常(取出電極81と内部電極86との接続不良)が発生していれば、エラーデータEr(t,s,ep)が“1”に設定されてRAM又は記憶装置に記憶される。
その後、図6FのステップS240〜S250及び図6EのステップS222〜S238の処理が繰返し実行されて、図7の最上段の全ての太陽電池セルSCの取出電極81,82が評価され、前記取出電極81,82の異常(取出電極81,82と内部電極86,88との接続不良)に応じて、エラーデータEr(t,s,ep)が“1”に設定されてRAM又は記憶装置に記憶される。この状態では、変数tが前記入力したX方向の太陽電池セルSCの数tmaxに達しているので、コントローラ70は、ステップS246にて「Yes」と判定して、ステップS252に進む。
ステップS252においては、コントローラ70は、変数sが前記入力したY方向の太陽電池セルSCの数smaxに達したか否かを判定する(図7参照)。変数sがY方向の太陽電池セルSCの数smaxに達していなければ、コントローラ70は、ステップS252にて「No」と判定し、ステップS254にて変数sに「1」を加算し、ステップS256にて変数k,t,epを初期値「1」に戻して、図6EのステップS222に戻る。そして、コントローラ70は、前述した図6EのステップS222〜S238及び図6FのステップS240〜S256の処理を繰り返し実行して、図7の最上段から2段目以降の変数t,s,epによって指定される取出電極81,82の評価データB(t,s,ep),C(t,s,ep)を計算するとともに、前記取出電極81,82の異常(取出電極81,82と内部電極86,88との接続不良)に応じて、エラーデータEr(t,s,ep)を“1”に設定してRAM又は記憶装置に記憶する。
そして、これらの図6EのステップS222〜S238及び図6FのステップS240〜S256の処理を全ての取出電極81,82に関して実行した後、コントローラ70は、ステップS252にて「Yes」すなわち変数sがY方向の太陽電池セルSCの数smaxに達していると判定して、ステップS258に進む。
ステップS258においては、コントローラ70は、前記RAM又は記憶装置に記憶した電流の大きさデータIxy(n,m)、電流の方向データθixy(n,m)、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)(n=1〜N,m=1〜M)から表示用画像データを生成して、表示装置72に画像データによって表された画像を表示する。この画像は、例えば、太陽電池セルSCの検査位置ごとに、電流の大きさデータIxy(n,m)に応じて明度、色彩などを異ならせて表示するとともに、電流の方向データθixy(n,m)によって示された方向を示す矢印を表示する。また、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)に応じて明度、色彩などを異ならせて表示するとよい。なお、取出電極81,82がX方向に延設されていて、図6BのステップS150〜S162の処理によって変数CHが“1”である場合には、表示装置72における電流の大きさデータIxy(m,n)、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)(n=1〜N,m=1〜M)の表示状態を90度回転させる。
また、本実施形態では、取出電極81,82の異常(取出電極81,82と内部電極86,88との接続不良)を視覚判断できるように、取出電極81,82の対応位置及びその近傍位置(取出電極81,82の間であって取出電極81,82の近傍位置)のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)のみを、取出電極81,82ごと又は太陽電池セルSCごとに表示するようにするとよい。この場合、ステップS228の処理により抽出したX方向の電流の大きさデータIx(n+ne,m)をそれぞれ記憶しておいて、取出電極81,82の近傍位置に関しては、X方向の電流の大きさデータIx(n+ne,m)を表示装置72で表示する。また、取出電極81,82の対応位置に関しては、前記値ne分だけ左側又は右側のX方向の電流の大きさデータIx(n,m)を表示装置72で表示する。さらに、取出電極81,82の近傍位置及び対応位置のX方向の電流の大きさデータIx(n+ne,m),Ix(n,m)を同時に表示してもよい。
前記ステップS258の処理後、コントローラ70は、ステップS260にて、エラーデータEr(t,s,ep)(t=1〜tmax,s=1〜smax,ep=1,2)の中に“1”を示すエラーデータが存在するかを調べる。“1”を示すエラーデータが存在しなければ、コントローラ70は、ステップS260にて「No」と判定して、ステップS262にて表示装置72に「合格」を表示し、ステップS272にてこの評価プログラムの実行を終了する。一方、“1”を示すエラーデータが存在すると、コントローラ70は、ステップS260にて「Yes」と判定して、ステップS264にて表示装置72に「不合格」を表示し、ステップS266にて、エラーデータE(t,s,ep)が“1”である変数t,s,epを取り出して、前記表示した画像中の変数t,s,epによって指定される取出電極81,82を欠陥ありとして表示する。
次に、図6BのステップS156にて「Yes」と判定されて、図6FのステップS268,S270の処理に進められた場合について説明する。これらは、入力ミス、検査装置の異常などにより太陽電池セルSCの自動的な合否の判定が不能であったり、不能である可能性が高い場合である。この場合も、コントローラ70は、ステップS268にて、前記ステップS258の処理と同様に、電流の大きさデータIxy(n,m)、電流の方向データθixy(n,m)、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)(n=1〜N,m=1〜M)から表示用画像データを生成して、表示装置72に画像データによって表された画像を表示する。
特に、可能であれば、取出電極81,82の異常(取出電極81,82と内部電極86,88との接続不良)を視覚判断できるように、取出電極81,82の対応位置及びその近傍位置(取出電極81,82の間であって取出電極81,82の近傍位置)のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)のみを、取出電極81,82ごと又は太陽電池セルSCごとに表示するようにするとよい。この場合には、取出電極81,82の位置が検出されていないので、作業者が、表示装置72の表示画面を見ながら、表示画像を移動させて取出電極81,82の対応位置及びその近傍位置のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)を表示させる必要がある。
次に、コントローラ70は、ステップS270にて、「取出電極81,82の合否判定は不能」である旨を表示装置72に表示して、ステップS272にてこの評価プログラムの実行を終了する。
上記のように動作する太陽電池セル検査装置においては、発光素子50は、発光信号供給回路65及び光源駆動回路66の駆動制御により、ステージ40上に載置した太陽電池パネルSPの表面全体にわたって、所定周期で強度が変化する光を均等に照射する。そして、X方向及びY方向スライド機構20,30により、磁気センサ10で太陽電池パネルSPの表面全体を走査し、センサ信号取出回路67及びロックインアンプ68が、太陽電池パネルSPに発電によって流れる電流により発生する磁界であって、前記所定周期と等しい周期で強度が変化する磁界を検出する。したがって、外乱光や、外部磁界が存在しても、コストを抑えたうえで、これらの影響を受けずに、太陽電池パネルSPに対向する複数の箇所で磁界を検出することができる。
そして、前記検出結果に基づいて、コントローラ70は、ステップS10〜S41,S100〜S124の処理により、太陽電池パネルSPに対向する複数の箇所における磁界の検出結果に基づいて、太陽電池パネルSPの複数の箇所における電流の大きさデータIxy(n,m)、X方向の電流の大きさデータIx(n,m)及びY方向の電流の大きさデータIy(n,m)を計算する。そして、コントローラ70は、ステップS130、S170〜S210の処理により、太陽電池パネルSP上の複数の太陽電池セルSCの取出電極位置Bxy(n,m)を検出する。さらに、コントローラ70は、ステップS230〜S256の処理により、取出電極81,82の近傍位置Bxy(n+ne,m)のX方向の電流の大きさデータIx(n+ne,m)群ごとに、X方向の電流の大きさデータIx(n+ne,m)のY方向に沿った変化において、X方向の電流の大きさデータIx(n+ne,m)の変動が大きい部分の変動量を表す特性値として評価データB(t,s,ep),C(t,s,ep)を計算し、この評価データB(t,s,ep),C(t,s,ep)を用いて各太陽電池セルSCの取出電極81,82と内部電極86,88との接続不良を検出する。そして、コントローラ70は、ステップS260〜S266の処理により、表示装置72に前記接続不良の有無を表示するので、作業者は前記接続不良を視覚的に確認できる。
また、ステップS258,S268の処理により、コントローラ70は、太陽電池パネルSP上の複数の太陽電池セルSCの取出電極位置Bxy(n,m)及びその近傍位置Bxy(n+ne,m)のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)を表示装置72に表示する。これにより、作業者は、太陽電池セルSCの取出電極位置Bxy(n,m)及びその近傍位置Bxy(n+ne,m)のX方向の電流の大きさデータIx(n,m) ,Ix(n+ne,m)の分布を視覚を通じて認識でき、この分布の異常から太陽電池セルSCの取出電極81,82と内部電極86,88との接続不良を判断できるようになる。
以上、本発明の一実施形態について説明したが、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形も可能である。
上記実施形態においては、発光素子50から出射される光を太陽電池パネルSPに照射し、太陽電池パネルSPの発電によって太陽電池パネルSPに流れる電流によって発生される磁界を磁気センサ10で検出するようにした。しかし、これに代えて、外部から太陽電池パネルSPの接続線92,93(図7参照)に、導線L1,L2を介して電圧を印加して、太陽電池パネルSPに電流を流すようにしてもよい。
この変形例においては、図12に示すように、上記発光信号供給回路65及び光源駆動回路66に代えて、通電信号供給回路65a及び通電回路66aを備えている。通電信号供給回路65aは、上記発光信号供給回路65と同様に構成され、「0」を基準に正負に変化する正弦波信号を通電回路66aに供給するとともに、前記通電信号と同期して「0」を中心として正負に変化する矩形波信号をロックインアンプ68に供給する。通電回路66aは、通電信号供給回路65aから供給される「0」を基準に正負に変化する正弦波信号に正のオフセット電圧を加算して、前記オフセット電圧を中心に正弦波状に変化して常に正の範囲内で変化する通電信号に変換して、太陽電池パネルSPの接続線92,93に導線L1,L2を介して供給する。具体的には、図7に示すように、導線L1を接続線92に接続して正の範囲内で変化する通電信号を供給し、導線L2を接続線93に接続して接地する。その他の構成は、上記実施形態と同じである。
これにより、この変形例では、図7の矢印とは逆向きに電流が流れ、すなわち導線L1から取出電極81に向かって電流が流れるとともに、取出電極82から導線L2に向かって電流が流れ、各太陽電池セルSCにおいては、取出電極81から発電セル83を介して取出電極82に向かって電流が流れる。したがって、取出電極81,82に上記実施形態とは逆向きの電流が流れるが、この変形例においても、太陽電池セルSCに異常(取出電極81,82と内部電極86,88との接続不良)が発生した場合には、図10(C)(D)に示すように、取出電極81,82位置及びそれらの内側近傍位置にてX方向に流れる電流の大きさデータIx(n,m),Ix(n+ne,m)の変動が大きくなる。ただし、このX方向に流れる電流及びY方向に流れる電流の向きは逆となる。そして、他の構成は上記実施形態と同じであるので、この変形例においても、上記実施形態と同様に、太陽電池セルSCの異常がコントローラ70によって自動的に検出されるとともに、作業者が視覚的に判断できるようになる。また、この場合も、通電信号供給回路65a、通電回路66a、センサ信号取出回路67及びロックインアンプ68により、外乱光や、外部磁界が存在しても、これらの影響を受けずに、太陽電池パネルSPに対向する複数の箇所で磁界を検出することができる。
また、上記実施形態及び変形例では、取出電極81,82の内側近傍位置にてX方向に流れる電流の大きさデータIx(n+ne,m)の変動により太陽電池セルSCに異常(取出電極81,82と内部電極86,88との接続不良)を検出するようにした。しかし、これに代えて、図10(C)に示すように、太陽電池セルSCに異常(取出電極81,82と内部電極86,88との接続不良)が発生すれば、取出電極81,82位置にてX方向に流れる電流の大きさデータIx(n,m)も変動するので、取出電極81,82位置にてX方向に流れる電流の大きさデータIx(n,m)の変動により太陽電池セルSCに異常(取出電極81,82と内部電極86,88との接続不良)を検出するようにしてもよい。この場合、取出電極81,82の位置でもX方向の電流の大きさが「0」でないのは、取出電極81,82では常にY方向に電流は流れるが、取出電極81,82の近傍位置にてX方向に流れる電流が存在するために、取出電極81,82位置にて磁界から計算した電流にはX方向成分が含まれるためである。なお、この場合には、図6(E)のステップS222〜S226の処理が不要となるとともに、ステップS228においては電極位置座標群Bxy(n,m)に対応したX方向の電流の大きさデータ群Ix(n,m)が抽出されるとともに、ステップS230の平均値Iavex(t,s,ep)及び評価データB(t,s,ep),C(t,s,ep)の計算においては前記抽出されたX方向の電流の大きさデータ群Ix(n,m)が利用される。
また、上記実施形態及び変形例では、複数の太陽電池セルSCを有する太陽電池パネルSPを検査するようにした。しかし、本発明は、これに代えて、太陽電池セルSCを個々に検査する検査装置にも適用できる。
また、上記実施形態及び変形例においては、X方向電極番号gx及びY方向電極番号gyを電極位置座標Bxy(n,m)に割当てる図6C及び図6DのステップS170〜S210の処理において、電流の大きさデータIxy(n,m)及びX方向の電流の大きさデータIx(n,m)を用いて取出電極81,82の位置を検出するようにした。しかし、取出電極81,82位置を流れる電流の向きはほぼY方向であるので、前記電流の大きさデータIxy(n,m)に代えて、Y方向の電流の大きさデータIy(n,m)を用いるようにしてもよい。
また、上記実施形態及び変形例では、図6AのステップS104〜S112の処理より、磁気センサ10の検出位置のX方向磁気検出信号の極大値Hx、X方向磁気検出信号の参照信号に対する位相シフト量θx、Y方向磁気検出信号の極大値Hy、Y方向磁気検出信号の参照信号に対する位相シフト量θy、磁界の強さHxy及び磁界の向きθxyを計算して、ステップS112,S114の処理により、磁気センサ10の検出位置の電流の大きさIxy(n,m)、前記電流の方向θixy(n,m)、X方向の電流の大きさIx(n,m)及びY方向の電流の大きさIy(n,m)を計算した。そして、X方向の電流の大きさIx(n,m)を用いて、取出電極81,82に関する評価データB(t,s,ep),C(t,s,ep)を計算して太陽電池セルSCの取出電極81,82と内部電極86,88との接続不良を評価するようにした。しかし、電流の大きさIxは磁界の大きさHxyに比例しており、電流の方向は磁界の方向とπ/2異なるだけである。したがって、磁界に関する情報を電流に関する情報に変換しなくても、磁気センサ10の各検出位置のY方向磁気検出信号の極大値Hyを、上記実施形態のX方向の電流の大きさIx(n,m)に代えて用いることにより、太陽電池セルSCの取出電極81,82と内部電極86,88との接続不良に関する評価データB(t,s,ep),C(t,s,ep)を計算して前記接続不良を評価するようにしてもよい。
また、上記実施形態及び変形例では、取出電極81,82の位置を自動的に検出し、検出した位置及びその近傍位置のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)に関する評価データB(t,s,ep),C(t,s,ep)を計算して、取出電極81,82と内部電極86,88との接続不良の有無を判定するようにした。しかし、これに代えて、作業者が表示装置72に表示される電流分布の画像を見て取出電極81,82の位置をコントローラ70に指示し、コントローラ70がこの指示された位置及びその近傍のX方向の電流の大きさデータIx(n,m),Ix(n+ne,m)に関する評価データを計算して、取出電極81,82と内部電極86,88との接続不良の有無を判定するようにしてもよい。
また、コントローラ70は、判定まで行わなくて、評価データB(t,s,ep),C(t,s,ep)を計算して表示装置72に表示し、作業者に取出電極81,82と内部電極86,88との接続不良の有無を判定させるようにしてもよい。さらに、コントローラ70は、評価データB(t,s,ep),C(t,s,ep)の計算も行わずに、取出電極81,82の位置及びその近傍位置のX方向の電流の大きさIx(n,m),Ix(n+ne,m)の分布を画像で表示装置72に表示し、作業者はこの表示を見て取出電極81,82と内部電極86,88との接続不良の有無を判定するようにしてもよい。
また、上記実施形態及び変形例においては、磁気センサ10を載置したセンサ支持台11をX,Y方向に移動するようにした。しかし、これに代えて、太陽電池パネルSP又は太陽電池セルSCをセットするステージを複数の発光素子と共にX,Y方向に移動するようにしてもよい。また、センサ支持台11とステージ40の双方がX,Y方向に移動するようにしてもよい。さらには、磁気センサ10及び太陽電池パネルSP(又は太陽電池セルSC)をセットするステージを移動させずに、多数の磁気センサ10を、マトリクス状に配置するようにしてもよい。
また、検査対象物に電圧を印加する上記変形例の形態においては、磁気センサ10を載置したセンサ支持台11は検査対象物である太陽電パネルSP又は太陽電池セルSCをセットするステージ40の下を移動するようにしたが、ステージ40の上を移動するようにしてもよい。この場合は、磁気センサ10が検査対象物と対向するように、センサ支持台11を下側に向ければよい。また、検査対象物に複数の発光素子から光を照射する上記実施形態においても、センサ支持台11を移動させる機構により複数の発光素子から照射される光が遮光される影響を無視してよければ、センサ支持台11を下側に向け、磁気センサ10を載置したセンサ支持台11をステージ40の上を移動させるようにしてもよい。
また、上記実施形態及び変形例においては、取出電極81,82に関する評価データB(t,s,ep),C(t,s,ep)を計算して、評価データの値によって取出電極81,82と内部電極86,88との接続不良の有無を判定するようにした。しかし、太陽電池パネルSP又は太陽電池セルSCの形状及び大きさが1つに限定されていれば、取出電極81,82に関するX方向の電流の大きさデータIx(n,m)の分布と共に、正常な取出電極81,82に関するX方向の電流の大きさデータIx(n,m)の分布を表示して、作業者に対比観察により取出電極81,82と内部電極86,88との接続の合否判定を行わせるようにしてもよい。
また、上記実施形態においては、複数の発光素子(LED)50をマトリクス状に配置した光源を利用したが、太陽電池パネルSP又は太陽電池セルSCをセットするステージ40上の光量が均一になるならば、どのような光源でもよく、蛍光灯、ランプ等の光源でもよい。
また、上記実施形態及び変形例では、磁気センサとして磁気抵抗素子(MR素子)を利用したが、これに代えて、ホール素子、磁気インピーダンス素子効果センサ、フラックスゲート、超伝導量子干渉素子などを利用するようにしてもよい。