実証の見通しは以下のとおり
発電力測定技術の必要性 考察
発電力測定技術の原理 アルゴリズム
実験装置を設置 データ取り
発電力測定技術のユースケース
プロトタイプ 要求仕様
プロトタイプ 製作
プロトタイプ 評価 1直ストリング 9直ストリング
正答率向上
発電力測定技術ベースのMPPT
影対策
パネルに影がかかると発電力が低下するが低電流域においてはΔE/ΔIが変化しない 
よって発電力測定ユニットはパネル影による発電力低下を検知しない
パネル設置の設計において一般に影ができるのは朝あるいは夕の太陽高度が低くパネル
面への日射が弱いときであり「思いっきり安いソーラー発電」においてパネル影による
影響は自家消費率が若干低下するのみなのでここでは改善検討の優先順は低い ただし
商用あるいはバッテリーによるバックアップがないシステムに発電力測定ユニットを適
用する場合には影検知が必要になると思われ検討を始めてはみた
結果影の存在はVocの変化に現れるが 温度変化の影響はさらに大きい 温度センサに
よりパネル表面温度を計測し温度変化によるVoc変化を除去すれば影によるVoc変化を
知ることができそうだが そこで検討は中断した
DCバス経由でヒーポンの稼働率制御が可能か そのワイドレンジは?
パネル4枚で120~160VDCの出力でヒーポンが安定動作できるか
発電力がヒーポンの消費電力を下回ったときに商用電力の突き合わせでバックアップできるか
ヒーポン動作中に解列したときの消弧策
 (案)数A以上の電気機器への電力供給を消弧コネクタとする
	商用のAC→DCを半坡整流とする
ヒューズ切断時 消弧剤入りヒューズを利用

2023.1.20 発電力測定技術の必要性
最大パワー300Wのソーラーパネルをお昼の太陽にかざしたら300Wの電気機器が稼働できるはず、それでは夕方のすこし弱まった太陽にかざしたら何Wの電気機器を稼働できるだろう‥? 答えは‥電気機器を接続してみなければわからない たとえば100Wのテレビを接続してみてソーラーパネルが過負荷でダウンしなければ いまこのソーラーパネルは100Wの発電力がありそうだということになる 100Wのテレビが映らなければこのソーラーパネルは夕日では100W未満の発電力しかないとなる 繰り返すが電気機器を接続してみなければわからない‥ 
こんなに頼りないモノをあれこれ工夫しながら使っている たとえばソーラーパネルでバッテリーを充電してから使う これならバッテリーの能力上限までの電気機器を接続できる(バッテリーの能力上限は仕様書に明記してある) ただしバッテリーは超重い そして寿命がある また広く住宅に設置されているソーラー発電ではパワコンにMPPT(最大電力点追従)制御が装備されているが停電したときの自立運転時はMPPT制御が使えないのでそのときには十分に小さな機器‥たとえば携帯やパソコンの充電だけが安心して利用できる
結論‥ソーラー発電は安い電気が使えるといいながら けっこう制約が多い
もし「このパネルいま何Wの発電力があるか」を測定できたらソーラー発電をもっと快適に利用できる そこでソーラーパネルの発電力測定技術の実現方法を考えはじめた

2023.2.20 発電力測定の原理
いちばん簡単にソーラーパネルの発電力を測定するにはパネル出力の電圧と電流の挙動から計算するのが良いと感じた またΔE/ΔIという数値は内部抵抗的なイメージがあるし 特性グラフからパネル表面温度の影響を受けにくそうに見える等々‥思考実験を繰り返しながらソーラーパネルの説明書を眺めているうちに パネルのEI特性グラフの立ち上がり角度はパネル発電力(W)と相関しているようだ、と気づいた
発電力EI特性グラフ
念のため特性グラフに分度器をあてて確かめたが間違いなさそう 実機で確認してみよう‥
2023.2.25 実験環境を設営
晴れた週末 実証サイトに単管パイプでスタンドを建て パネル(300W縦1.6m横1.0m)の傾斜角を変えられるように取り付けた 単管パイプはDIYソーラー用に大量に使用した余剰がたくさんあるからこういうとき助かる 太陽とパネルが正対したときパネルの発電力は最大の300Wとなり太陽光線とパネルが平行になったら発電力は0Wになる
パネル回転スタンド
パネルがいま何Wの日射をうけているかを知るためにパネルに対して鉛直に日射計をとりつけてある 日射計出力(パネルに入射している太陽光の日射強度W/m2)に比例係数を掛けると発電力(W)がわかる その他パネル表面温度などすべてのデータはあとあとの解析のためArduino経由でパソコンに取り込みExcel表にしてある
Excelファイルの画像…

雲がなく日射が安定している天候で可変負荷をI=0Aから徐々に増加しながらパネル出力の電圧と電流をExcelに記録してゆき ピーク電力に達したところで測定を終了し横軸E縦軸Iの散布図を描くと発電力EI特性グラフができる パネルを回転させて日射強度を変えながら同じ作業を行うと発電力の違う数種のEIグラフができて立ち上がり角度と発電力にある種の相関があることが確認できた
立ち上がり角
2023.3.4 発電力測定原理の修正
当初は負荷が0Aのときの立ち上がり角度と発電力(W)に相関があるということでスタートしたが 実用を考えるとある程度の大きさの負荷I(A)が利用されている状態でΔE/ΔIから発電力(W)を計算できれば都合が良い Excel表中ΔE/ΔIはEIグラフの傾きを表しうちI=0A近傍の値は立ち上がり角度を表す値ということを踏まえると それを拡大解釈して あるI(A)におけるΔE/ΔIの値と発電力(W)に相関があるはずだ
何種類かの発電力に対して横軸I縦軸ΔE/ΔIの散布図を描いてみると確かにあるI(A)におけるΔE/ΔIの値と発電力(W)は相関しているようだ たとえばI=2AにおいてΔE/ΔI=1.5だったとすれば発電力は120W弱だとわかる
散布図
2023.3.18 パネル表面温度による発電力変化
ここまでの検討で、ソーラーパネル出力の電圧電流の変化から発電力が計算できることがわかった ただし実験データ取得時のパネル表面温度において という条件つき
実はソーラーパネルは夏には強日射にさらされ冬の早朝には凍り付くのでパネルの表面温度は年間で-10~60℃とダイナミックに変化する、そしてソーラーパネルは表面温度が上昇すると発電力が著しく低下する(70℃の変化で発電力は30%低下する!) だからパネル表面温度を知らずして発電力を語れない
そこでパネル表面温度を計測して標準温度25℃との差だけ発電力を補正するか‥ということになるがこれが簡単にはゆかない ソーラー発電システムは複数枚のパネルが直列接続されていて場所によって大きく温度が違うのでどこに温度センサを取り付けたら正しい計測になるのかわからない
一週間ほど試行錯誤を繰り返して編み出したのは以下の方法 パネル表面温度が上がるとなぜ発電力が低下するか という原理の検討はすっとばして決め込んだ 
まずいままで あるパネル表面温度のときの発電力・・と言っていたのは実は発電力ではなくパネルに入射している日射強度(日射強度はパネル表面温度と無関係) そしてある日射強度に於ける最大出力点(Emax,Imax)と現在の動作点(E0,I0)の差をE0toEmaxとI0toImaxと定義する そのうえで横軸をI0としてE0toEmaxとI0toImaxをグラフにする なおこの関係はパネル表面温度の影響は小さいとおもわれる

そうしておくと現在パネルに入射している日射強度がわかればグラフからE0toEmaxとI0toImaxが求められるので 現在の動作点(E0,I0)と併せ最大出力点の電力(つまり発電力)は(E0+E0toEmax)×(I0+I0toImax)で求められる
最大電力の計算グラフ

うれしいのはこの方法で計算した発電力には現在のパネル表面温度が反映されている 温度を計測することなく‥ なぜかというと現在の動作点にパネル表面温度が反映されていて動作点が変わってもパネル表面温度の影響は大きくは変わらないから
この方法の誤差は以下のように想定できる パネルカタログに記載がある最大出力の温度係数-0.38%/℃のうち今回Vocの温度係数0.3%/℃を考慮できたので残りの0.08%/℃が未知の誤差として残っている つまりパネルの動作温度域-10~60℃にて5.6%の誤差が発生すると思われる これくらいの誤差ならば今回の用途では許容される
なお未知の誤差の正体はIsc(短絡電流)の温度係数と 最大出力点が温度上昇でEIカーブの左上に移動する傾向を盛り込めていないことによると思われるので必要があればさらに検討をおこなう

2023.5.20 発電力測定技術のユースケース
プロトタイプの要件定義をおこなうため 発電力測定技術のユースケースを想定する
①「思いっきり安いソーラー発電」(機器稼働率制御型オフグリッドソーラー)
 負荷起動待機時に
日射上昇に応じて最小起動電力を超えたか判断 さらに
安定して稼働できるか推定して負荷の稼働率を決定する
複数の負荷で発電力を按分して利用するさい
優先する負荷を起動したあと発電力の余力を測定しその範囲で残った負荷を起動する
 複数の負荷が稼働中に日射降下したとき
早めに一部の負荷をシャットダウンしたあと発電力の余力を測定し残った負荷をどう制御すべきか検討する

②連系型ソーラー発電(全量買取り 余剰買取り)
 パワコンのMPPTによる発電力(実力値)と 発電力測定技術による発電力(理論値)を比較し発電システムの故障を察知する
停電時に利用する自立運転自立運転時に
 現在利用できる発電力をガイダンス表示して安心して負荷を使えるようにする

③工場の自家消費(逆潮流禁止)ソーラー発電
 余剰発電力を測定し その電力を
  例えばボイラの予熱に利用することで化石燃料の消費を減らす

2023.5.30 プロトタイプの要件定義
300Wクラスのパネル×1~9枚のストリングの現日射における最大発電力を測定する
最大発電力(W)の測定精度は真値に対して±10%
ただし数秒間隔の連続した測定値の変動は±5%で測定する
測定に許される時間は10ms 
影がかかったストリングの発電力低下は検知しない

(注意)発電力測定の主目的はソーラー発電力の変動に追随した負荷制御のための「現在の発電力」情報を提供することであり 付加機能として日射変動やストリングへの影により発電力が急降下したことの通知を行うが 負荷の安全なシャットダウンやバッテリーや商用電源によるバックアップは個別に行う必要がある

ハード ブロック図:
ソーラーパネル×1枚のシステムにおいて四季で変化するIVカーブを1mVの分解能で計測できること(Iの分解能はあまり気にならない) ただし同型式のパネルをn直接続したシステムでは電圧計測が平均処理されると考えると分解能はn倍でよい
ハードブロック図
ソフト フローチャート
発電力測定ユニットの周辺にはノイズ源が多数ありまた信号のステップ的な変化を鈍らせてはならないためハード的なノイズ除去には限度がある そこでソフトの処理でノイズを除去する
また測定中に日射変化が起こると大きな誤差が生じるのでそれを弁別しその測定データは無効とする
ソフトフローチャート

2025.1.1 いったん振り返り
プロトタイプの要件定義をおこなってからはや1年半が経過した その間やっていたのは試行錯誤 プロならばたぶん3日で終わることを1年半かけて片付けたことになる 分不相応なことに手を出したと幾度も反省したが稚拙であっても継続が大切とダラダラと続けることができたのはセルフコントロールが許されたから サラリーマンでやっていたらとっくに首だったろう
問題は五球スーパー(知らないヒトは気にしないでください)時代のラジオ少年が長い営業職時代を経て突然 なんとかなるだろとミリボルト計測の世界に踏み込んだこと でも新技術の価値探索と実現性実証に興味を持つのはたぶんその道の素人で だれも助けてくれないし迷惑かけてもナンだからプロトタイプ作りから自分でやることになるので すこしはそんな人の参考になればと思ってやってきたことをリストにしておく 詳しく解説できればよいがそんな技術力は持ち合わせないので勘弁してください・・

 ArduinoUNOminimaR4の動作範囲を実験で推定 そこまでの情報提供はないから
 電流計測チップの0点付近の非直線性を実験で推定
 安価なクラフト品の電子負荷をだましだまし利用→パワートランジスタを多数破損
 Cc(定電流)レベルを外部制御できるD/Dコンが欲しくてamazonで購入したD/Dコンの表面実装チップの足をコテとカッターナイフで浮かせて改造する技の考案と習得
ブレッドボードで実験回路をつくりみごとに微少な接触抵抗による電圧降下の罠にはまった 相当な長期間 はまった
  →mVの回路をブレッドボードで組むのは禁止とだれか言ってほしかった
 オペアンプの異常発振
 温度計測チップの異常発振
 ArduinoのA/Dをドライブするパワーの不足
 測定時の外乱排除 他パネルからの反射光侵入 日射計への影 インバーターノイズ
 日射変化スピードと測定スピードと測定誤差のトレードオフ
 日射急減への対処のため定時間で回る計測ループにすべての処理を埋め込む技の習得
 測定結果の妥当性判断 特に測定時に日射変動が起こったかどうかを知る方法の探索
 経験もないのにプログラムを構造化しようとして大混乱
→Arduinoはラベルジャンプを許容しているのでラベルを多用してスッキリした
 各種の原因によるバグ取り

まだまだあった気がするが 分析できないメモが多く ここまでにしておく

2025.1.20 プロトタイプ製作
アナログ入力は計装アンプを介してArduino unoMINIMAR4のADに入力
DOでΔI制御や稼働率制御のためのPWM信号を出力する
プロトタイプ上面 プロトタイプ裏面

2025.4.14 性能評価結果 単パネル
大変粗い評価ではあるが いろいろな日射条件(W/m2)と動作点(E,I)における正答率を散布図にしてみた
プロトタイプ正答率
結果 発電力計算プログラムに内蔵している変換テーブルの補間式のゆがみを修正するとともに測定中に日射変化があったデータを排除すれば正答率0.95~1.05が期待できそう

2025.9.16 9直ストリングでも問題なく測定できるか
このアルゴリズムがあながち外れてはいないとわかり 心持ち楽しい気分で9直ストリングでの発電力測定性能を確かめておこうと思い立った プロトタイプはもともと複数パネル対応していたので入力電圧を1/9にしてパラメータを設定すると実験できる 売電サイトの9直ストリングが測定対象

驚いたのは 9直の340Vをプロトタイプに接続すると 念のため取り付けたテスターの読み値が340Vまで上昇するのみ1秒くらいかかったこと なおテスターはプロトタイプのパネル電圧入力に並列に接続していた いやな予感がしたがそのまま測定プログラムを動かすとやはり 測定値の誤差が20%と大きく 負荷稼働率ステップ変化のΔIの読み値も設計値の0.15Aに対して0.1A前後をうろうろしている この段階で9直にしたときには何らかの原因でステップ応答時間が相当長くなっていてステップ変化が終わるまでに計測しているんじゃないかと思いついた パネルのインピーダンスによるものかプロトタイプ入力のローパスCR回路によるものか・・ なお1直の場合にはステップ平衡までの時間は10msと設定していたがそれでは不足しているらしい 平衡までの時間があまりに長いとその間に日射変動することも多くなり発電力測定自体が成り立たない可能性もある
楽しい気分は吹っ飛んだ・・
さらにひげ取り計測アルゴリズムでは取り切れないノイズを読み取っていることも発見した そのせいか強日射での測定値の正答率が70~80%くらいに低下していることにも気がついた 晴天では確かに性能が出ていたのに・・
まずはこの現象の原因を探り 対策案をプロトタイプに反映して効果を確認する

2025.10.17 続9直ストリングでも問題なく測定できるか
9直でステップ応答に時間がかかるのは負荷としてPCSを使っていたから と判明
試しに抵抗負荷を使ってみたら応答に数ミリ秒しかかからない よって9直評価は抵抗負荷でおこなうことにして それとは別にPCS負荷の場合に最適な設定を見定める もうひとつは曇りや薄曇りの際に測定値が大きく上振れしたり下振れしたりする気がすることの検証 これは1直のシステムに立ち戻って観察し現状の発電力測定アルゴリズムの限界を見定めたい 髭取り計測ルーチンに癖がありそうな気もするので改善できるならやりたい

応答の遅れに関して
ハード面の確認
 テスター自体の遅れを疑う
 CR回路を外すと?
プログラム面の確認
 ステップ平衡までの時間を400msまで伸ばしてその間の計測値変化を1ms毎に確認して最適な待ち時間を設定する
ノイズ源の特定
 負荷として使っている自立運転モードのパワコンの代わりに抵抗負荷を接続してみる
 曇天の日射がノイズを含むのかを晴天での測定実験との対比で確認する
高日射で正答率が低下することの確認
 これは1直でも確認された いままでプロトタイプ評価はまずは基本性能が実現可能かを知りたかったのでできるだけ安定した日射でおこなっていたので見ない振りをしてきた部分
必要なら曇天の不安定な日射でも使い物になるアルゴリズムへの改善をおこなう