Open source solar spectrum project/オープンソースの太陽光スペクトルプロジェクト

| タイプ | 太陽光発電システム |
|---|---|
| 著者 | O. オルマケア A. アブラハムセ N. トラヴィ F. ロメロ O. ウルキディ ジョシュア M. ピアース ロブ・アンドリュース |
| 位置 | キングストン、カナダ コチャバンバ、ボリビア ミシガン、米国 |
| 状態 | |
| 年 |
このオープンソース太陽スペクトルアナライザーの目標は、波長と傾斜角に依存する太陽光束の直接/拡散データ取得のための機械的および電子的制御を共同で設計することでした。このプロジェクトでは、2つのシステム(カナダに1つ、ボリビアに1つ)を構築し、運用を開始しました。これらのシステムは、光ファイバー入力を0度から90度まで10度ごとに調整し、シャドウバンドのオン/オフを調整することで、全天日射量と拡散日射量を測定します。これらの測定は1時間ごとに行われ、UV-VISからNIRスペクトルまでをカバーする十分な解像度を備えています。
これを実現するために、オンタリオ州キングストンにあるクイーンズ応用持続可能性グループは、ボリビアのコチャバンバにあるボリビア私立大学[1]と提携しました。この提携により、場所の違いに加えて、国際的な協力がどのように実施できるか、また生産性と効率性を向上させる方法についての洞察を得ることができました。
個々の分光計を除き、両システムは可能な限り類似するように設計されます。これにより、両サイトから比較可能なデータを取得し、太陽放射の地理的な違いと太陽光発電出力への潜在的な影響を比較することが可能になります。
このページでは、太陽スペクトルを記録するための自動分光計の構築方法について説明します。CADファイル、設計図、ソフトウェアなどへのリンクが含まれています。すべての構成部品とその購入先へのリンク、校正手順なども記載されています。UPBとカナダにある2つの事例を再現するために必要なものがすべて揃っており、データストリームへのリンクも含まれています。
出版物
O. Ormachea ; A. Abrahamse ; N. Tolavi ; F. Romero ; O. Urquidi ; JM Pearce ; R. Andrews;拡散太陽放射および全天日射を監視するための可変角度分光計システムの設置。Proc . SPIE 8785、第 8 回イベロアメリカ光学会議および第 11 回ラテンアメリカ光学、レーザー、および応用会議、87850M (2013 年 11 月 18 日);DOI: http://dx.doi.org/10.1117/12.2025480
太陽スペクトル理論
地球大気における光の減衰と透過は、太陽光発電技術、農業、気象予報、気候研究など、多くの分野で重要です。地球大気の不均一性と絶えず変化する太陽の幾何学的配置のため、太陽光資源は変動し、地球上の地理的に離れた場所では大きく異なる影響を与える可能性があります。
太陽放射は光のスペクトルで構成されており、紫外線 (UV)、可視光 (Vis)、近赤外線 (NIR) に大別できます。地球の大気圏の端、いわゆる 0 エア マス (AM0) に存在する光は、地球外日射量 (Go) と定義され、これは常に変化する量ですが、一般的には工学用途では1366.1 W/m 2と定義されています。 [ 1 ]地球外スペクトルが地球の大気圏を通過すると、さまざまな大気成分によって減衰されます。晴天 (雲なし) での太陽透過に対する相対的な影響が大きい順に、エアロゾル (散乱)、微粒子 (レイリー散乱)、水蒸気、オゾン、二酸化炭素、酸素などがあります。
これらの大気成分による減衰レベルは、それらの相対濃度と、太陽光が通過する光路長に依存します。太陽が真上にある場合、光路長は1エアマス(AM1)と呼ばれます。太陽高度が地平線から低下するにつれて、太陽光は地表に到達するまでに長い距離を通過する必要があり、したがってエアマスは増加します。多くの太陽光発電アプリケーションでは、1000 W/m 2(1太陽光)の放射照度を伴うエアマス1.5(AM1.5)が標準的な大気条件とみなされます。この条件をもたらす大気成分の概要と、標準AM1.5大気(ASTM G-173)の定義については、包括的な説明がこちらにあります。太陽光資源測定の理論の概要については、PVアプリケーション向けの太陽光資源測定に関する関連ページを参照してください。太陽幾何学に関するより詳細な概要については、The Solar Resourceの関連ページを参照してください。AM1.5 スペクトルからの放射照度のスペクトル分布を以下に示します。
太陽光減衰
大気中の太陽エネルギーの減衰は、放射の積分値(広帯域)とスペクトル内の分布の両方に影響を与えます。一般的に、エアマスの増加はスペクトルを「赤」(赤外線)方向にシフトさせる傾向があり、朝夕の赤い空で観察できます。雲量の増加はスペクトルを「青」(紫外線)方向にシフトさせる傾向があり、曇りの日に日焼けをしたときに気づくかもしれません。上の図に示すように、放射の減衰は放射源にも依存します。直接および周太陽放射とは、大気中で散乱されない放射を指し、鏡面反射性、つまり指向性があり、遮られると影を形成します。拡散放射は、スカイドームから来る放射であり、等方性(スカイドームのすべての部分から均等に来る)と考えることができますが、高度な放射モデリングでは、この仮定は有効ではありません。これは、影の内側の領域を照らす放射光であり、散乱光によって形成されるものと考えることができます。したがって、晴天時のAM1.5Gスペクトルから、大気中の散乱光が比較的少なく、その結果、拡散放射の量が小さくなり、スペクトルの紫外線領域に集中していることがわかります。
AM1.5を超える
ただし、ここで注意すべきは、AM1.5スペクトルを前提とするのは、ほとんどの大気条件において有効な仮定ではなく、大気成分や太陽の配置の変化に伴い、スペクトルは一日や一年を通して大きく変動する可能性があるということです。その例として、広帯域放射量が400W/m²である2つの日を以下に示します。1つは高気塊の晴天の日、もう1つは低気塊の曇天の日です。
太陽光発電デバイスの性能は分光応答性によって特徴づけられるため、同等の広帯域放射照度における2つのスペクトル間の分光分布の変動は、太陽光発電デバイスの性能とモデリングに影響を与える可能性があります。地理的に離れた場所で地上から太陽光の分光組成を測定することで、太陽光資源のより詳細な分析が可能になり、さまざまな分光組成の太陽光照射を最も効果的に利用できる太陽光発電技術の選択と設計に役立ちます。
設計と施工

初期設計は、SolidWorks という 3D モデリング プログラムで作成されました。このプロ仕様のプログラムは、著者が使い慣れているため選択されましたが、多数のオープンソース プログラムを使用することも可能でした (オープンソース CAD パッケージの包括的なリストについては[2]を参照)。これにより、実際の建設が始まる前に、特定の公差と寸法を決定することができました。
可能な限り、一般的な材料とサイズを用いて設計することで、一般の人々が適切な材料を見つけやすくすることを目標としました。この目標に沿って、シンプルなアルミ角管とシンプルなアルミ管を使用することにしました。
この設計では、分光計への入力として光ファイバーケーブルを保持できるだけでなく、拡散反射光を測定するためにシャドウバンドを出し入れできる必要がありました。システム全体は建物の側面またはポールに屋外設置されるため、剛性と自立性が必要でした。箱型構造は、低コストでこの剛性を実現しました。図面一覧はこちらをご覧ください。
シャドウバンドと分光計の光ファイバーケーブルの動きは、2つの小型ステッピングモーターで制御されます。これらはフレームにボルトで固定され、カラーを介してシャドウバンドと光ファイバーロッドに接続されています。これらのモーターは、モータードライバーボードとArduinoボードによって駆動されます。モータードライバーボードは2つのステッピングモーターを同時に駆動でき、Arduinoの上に直接接続できるため、優れたソリューションです。
Arduinoパッケージを選んだ主な理由は、プロジェクトがオープンソースであることに加え、コーディングと実装がシンプルで使いやすいからです。Arduinoパッケージは堅牢で、多くのアプリケーションで使用でき、低コストであることも大きな利点です。ソフトウェアについては、電子回路のセクションで詳しく説明します。
実際の建設作業については、設計図を学校の工作室に送り、そこで材料を購入してもらい、迅速かつ簡単に組み立ててもらいました。これは時間的な制約があったためですが、実際にはこのプロジェクトは非常にシンプルで、器用な人なら誰でも週末に自宅のガレージで組み立てられるものでした。
電子機器および制御
ソフトウェアと電子機器に関する資料は、実際の機械構造に関する資料よりも多く存在します。システムを適切に機能させるには、モーター制御、分光計による測定、データ保存、そして太陽光計算をすべて同期させて実行する必要があります。

システムの主要な構成要素であり、おそらく最も重要なのは分光計です。分光計は、直射日光と拡散日光の両方の放射プロファイルを測定できるだけでなく、太陽スペクトルのわずかな変化を検出できる十分な解像度を備えている必要があります。特定のモデルとしては、200~2500nmの全スペクトルを測定できるAvantes分光計があり、このスペクトル内の絶対放射照度を測定できます。これにより、200~2500nmの全太陽放射照度、紫外線領域のごく一部、および赤外線スペクトルの一部を測定できます。この分光計は、収集したすべてのデータを保存するためにコンピュータに接続する必要があります。両者はシンプルなUSB接続で接続され、データは自由に転送されます。
より複雑な電子システムはモーター制御のシステムです。独立したデュアル制御を実現するには、さまざまなツールを使用する必要がありました。まず、Arduinoに接続して2つのステッピングモーターを個別に制御できるデュアルモータードライバーです。このArduinoは太陽の位置に関する重要な計算をすべて行い、それをモータードライバーボードに送信して各モーターの位置に変換します。以下は、ステッピングモーターを動かし、太陽の位置を計算するために使用したコードです。[ 2 ]
ステッパー駆動コード
ご注意ください:このページに掲載されているコードは古い可能性があります。現在はGitHubで公開されています: https://github.com/Queens-Applied-Sustainability/Open-Source-Solar-Spectrum
分光計コード
分光計が正しいタイミングで測定を行うためには、リアルタイムクロックとメイン制御システムが搭載されているArduinoとの接続が必要です。分光計の背面にはD-Sub 26コネクタがあり、これを使って「スペクトル保存」「ダーク保存」「リファレンス保存」のトリガーを行います。
- 図1a:D-Sub 26コネクタ
- 図1b:AdafruitモーターシールドとArduino
- 図1c:D-Sub 26オス型コネクタのピン配置
Arduinoボードでは、スペクトルを測定する際に、Dsubコネクタのピン6に短いTTL HIGHパルスが送信されます。これにより、分光計がスペクトルを保存し、コンピュータのメモリに保存します。
分光計のTTL HIGHトリガーの簡単な例
リアルタイムクロックをArduinoに接続するには、SDAピンとSCLピンを使用する必要があります。ほとんどのArduinoボードでは、SDA(データライン)はアナログ入力ピン4、SCL(クロックライン)はアナログ入力ピン5に接続されています。Arduino Megaでは、SDAはデジタルピン20、SCLは21です。モーターシールドでは、これらのピンはモータードライバ回路で使用されていないため、使用できるように引き出されています。
校正と検証
分光計と光源の校正を使用する
このセクションは整理する必要があります。分光計を購入したとき、両方ともスペクトル応答が完全に校正されていたため、300nmの光を検出したときは、実際に300nmの光でした。しかし、絶対放射照度が校正されていたのは1台の分光計だけでした。つまり、数千ドル相当の機器を購入せずに、この分光計を校正する方法を決定しなければなりませんでした。校正済みのユニットが1台あったので、自分たちで方法を考案しました。

校正済みの分光計を用いて、ELHハロゲンプロジェクター電球の詳細な測定を行うことができました。これらの電球はスペクトル範囲が広く、24時間点灯しても出力が安定しています(低下率は1%未満)。電球を分光計のセンサーから一定の距離に設置し、電球の温度と出力が定常状態に達するまで待ちました。その後、電球からの光の全スペクトルを取得し、このハロゲン電球のスペクトルと強度データをExcelファイルとして作成しました。
コチャバンバの両地点で電球の明るさが同じになるように、距離パラメータを含むExcelファイルとハロゲン電球を送付します。ボリビアでは、送信されたスペクトルを数値積分し、790.20 W/m^2という結果を得ました。
センサーとしてKipp&Zonen日射計[3]を使用し、その感度係数(15.87 µV/W/m^2)を用いて、等価式から12.55mVの出力を得る必要があることが分かりました。
次に、220-120Vトランスに接続された可変変圧器でハロゲン電球に電源を供給し、251mm離れた場所にマルチメーターに接続された日射計センサーを配置しました(図1参照)。光が安定するまで20分間待ちました。必要な強度レベル(12.55mV)に達したら、可変変圧器からの81.2V交流で、日射計を分光計(コサインレセプタに接続されたファイバーの端)に切り替えました(図2参照)。その後、送信されたスペクトルを基準スペクトルとして取得し、SpectraSuiteの手順に従って絶対放射照度モードを取得します。

データが取得され、グラフが一致すれば、キャリブレーションは完了です。キャリブレーション前とキャリブレーション後の両方の曲線は、図3aと図3bに示されています。
- 図3a:ハロゲンランプのカウント数
- 図3b:ハロゲン光(μW/cm² / nm)
分光計の検証
分光計の結果を検証するために、既知の光源の測定を行う必要がありました。最良の選択は、実際の屋外の太陽光を調べることでした。これは、私たちが求めている結果を最もよくシミュレートできるからです。当初、スペクトルプロットが期待どおりに見えなかったため、予想とは異なる結果が得られました。
部品リスト
| 一部 | 量 | 説明 |
|---|---|---|
| 分光計 | 変数 | Avantes AvaSpec-2048 標準光ファイバー分光計 Avantes AvaSpec-NIR256/512-2.5TEC [4] OceanOptics USB4000 UV-VIS [5] |
| ステッピングモーター | 2 | 双極性、200ステップ[6] |
| モータードライバーボード(MShield) | 1 | Adafruitステッピングモータードライバーボード[7] |
| アルミ角管 | 125インチ | 2.5インチ×1.5インチ |
| アルミ板 0.125インチ | 35インチ | 1/8インチ厚のアルミ板 |
| 1インチアルミ丸棒/1インチポリマー丸棒 | 1 | サイズを小さく |
| Arduino Uno | 1 | システムの「頭脳」 |
| DSUB 26コネクタ | 1 | 26ピンコネクタ オス[8] |
| ボルトとナット | 16 | 1/4-28 X 3インチ 部分ねじ付きボルト + ナットとワッシャー[9] |
運用手順
運用手順は非常にシンプルで、必要なのはコンピューターと日当たりの良い場所だけです。
始める
まず最初に、コンピューター、電源、そして可能であればインターネット接続が可能な場所にシステムを設置してください。北半球の場合は南向き、南半球の場合は北向きの場所に設置する必要があります。これは、センサーが一年を通して太陽を捉えられるようにするためです。設置場所は、地平線から頭上まで見渡せる場所が理想的です。壁や屋上などが適しています。
位置
設置場所が決まったら、設置場所の耐候性を確認し、雪や悪天候の影響を受けないようにすることが重要です。設置場所は少なくとも1年間は変更されない状態を維持する必要があります。そのため、ステッピングモーターや分光計の筐体、設置場所の湿度や温度などを確認する必要があります。
ポジショニング
設置場所が決まったら、方位と向きに関してシステムを較正することが重要です。まず、システムが南を向いていることを確認し、さらに重要な点として、シャドウバンドとファイバーカプラの初期位置が仰角0度に設定されていることを確認してください。これは、連続する測定値がすべて既知のレベルで行われることを保証するためです。
ステッピングモーター
ステッピングモーターはモーターシールドに接続する必要があります。
下記の表は、Adafruitストアで購入した上記記載の特定のステッピングモーターに関するものです。ステッピングモーターの種類によって、配線の色コードやコイルが異なる場合があります。下記の手順に従えば、お使いのステッピングモーターのピン配置を確認できます。
| デバイス | ステッパー番号 | カラーターミナル |
|---|---|---|
| ファイバーカップル | 1 | 黄色、赤色 - M1 緑、茶色 - M2 |
| シャドウバンド | 2 | 黄色、赤 - M3 緑、茶色 - M4 |

これらの異なる色の配線はステッピングモーターの異なるコイルを表しており、そのため、この特定の方法で接続する必要があります。配線が正しく接続されていることを確認するには、異なる配線の組み合わせ間の抵抗を測定すると便利です。これらの組み合わせのうち2つは同じ抵抗値を示し、残りの2つは無限大の抵抗値を示します。抵抗値が同じであるこの2組のペアを、それぞれM1とM2に接続する必要があります。最後に、配線が接続されたら、ボードの左右にあるモータードライバーチップにヒートシンクを取り付けることが重要です。このサイトでは、より詳しい説明が提供されています。
端子M+とGNDは、12V 350mA以下の電源に接続する必要があります。2つのステッピングモーターを制御するには、5V 800mAで十分です。単一の電源を使用する場合は、ジャンパーをPWRピンに接続したままにしておく必要があります。
ソフトウェア
分光計の操作に使用するソフトウェアは、Avantes分光計に付属のAvasoft 7.5.3 USBソフトウェアです。分光計に接続後、以下の設定作業を行う必要があります。
- VIS分光計とIR分光計を、VIS分光計をマスターとしてリンクします。
- 分光計間のスムーズな移行を確保するため、可視光(VIS)チャンネルと赤外線(IR)チャンネルを統合する。
- 光源を覆い、暗スペクトルを記録する
- データからダークスペクトルを差し引く
- 生の測定値(カウント数)が飽和状態(66,000カウント以上)にならないように、積分時間を設定してください。現在、積分時間はVISチャンネルで47ms、IRチャンネルで12msに設定されています。
- Excel出力を有効にする(出力遅延0秒)
- 履歴チャンネル機能を設定し、VIS分光計とIR分光計からのスペクトルを含めるようにします。
- 履歴チャンネルを実行
履歴チャネルがExcel出力で実行されている場合、AvasoftはArduinoコントローラによってトリガーされると、Excelのインスタンスを2つ起動し、分光計からのデータでそれらを入力し始めます。これらのExcelファイルを定期的に保存するために、1日に1回実行してその日の測定値をExcelに保存する外部スクリプトが必要でした。このスクリプトはAutoItオートメーションを使用して作成され、実行可能ファイルとしてコンパイルされました。スクリプトは履歴チャネルウィンドウをアクティブにし、ウィンドウを閉じてファイルへの書き込みを停止し、各Excelシートを個別に開き、システム時刻から派生したファイル名で保存し、Excelを閉じて履歴チャネル機能を再度有効にして、翌日のデータ収集の準備をします。使用したスクリプトは以下のとおりです。
データ
この実験で生成されたデータは、以下の命名規則に従った日ごとのExcelファイルのペアで構成されています。
これらのデータファイルは統合されたデータベースにまとめられ、.csvおよび.h5ファイル形式で配布されています。これらのデータセットを統合するために、以下の処理手順が実行されました。
可視光データファイルと赤外線データファイルをデータベースとしてインポートする
集光ヘッドの角度位置を特定します。最初の測定値は水平面から90度の位置、2番目は80度の位置、といった具合に0度まで測定します。
各データベースに対して、日付と位置のマルチインデックスを設定します。
可視光チャンネルと赤外線チャンネルを日付と位置のインデックスで結合し、各日を保持するマスターデータベースに追加します。
毎日、午前1時と90度の値をその日の各値から差し引くことで、暗補正を行います。
誤ったタイムスタンプで収集されたデータ(2013年2月25日から2013年4月22日までのデータは12時間遅れていた)はタイムシフトする。
各時間ごとのタイムスタンプと位置における積算エネルギーを計算し、これらの値をSummary_infoデータベースに格納します。
毎時タイムスタンプごとに、近隣のOSOTFから日射計、気象データ、モジュール性能データを取得し、概要情報データベースに追加する。
この処理のワークフロー全体は、pandasモジュールを使用してPythonで実装されており、コードはプロジェクトのGitHubおよびこちらで入手できます。「http://bit.ly/OSOTF_Parser」
データへのアクセスと操作
データは、Pythonのpandasモジュールを使用して簡単にアクセスできる形式で提供されています。IPythonコンソールを起動し、以下のコマンドを使用してデータをアクティブメモリにロードできます。
storepath はスペクトルデータを含む .h5 ファイルの場所です。これにより、データは 2 レベルのマルチインデックスを持つ pandas データフレームとして読み込まれます。最上位レベルは日付と時刻、第 2 レベルは各時刻の位置です。2 つのデータフレームが作成され、master には各インデックス位置のスペクトル情報が、Summary_info には統合スペクトルエネルギーと近くの OSOTF から収集された値が含まれます。
特定の時間と角度におけるスペクトルにアクセスするには、以下のPythonコードを使用できます。
年、月、日、時間、および位置はユーザーが定義する必要があります。
OpenSCAD Shadow Band コード

関連プロジェクト
関連項目
参考文献
| 著者 | |
|---|---|
| ライセンス | CC-BY-SA-3.0 |
| 組織 | ボリビアナ プリバダ大学、MOST、クイーンズ大学 |
| 引用元 | Mdevuono、R.Andrews、Faviola Romero (2011–2026)。「オープンソース太陽スペクトルプロジェクト」。Appropedia 。2026年8月6日取得。 |



