【自作ソーラー発電 DIY】窓ガラス内に設置でMax19V4A76Wほどの発電で満足・その後バッテリーヘタリ

ソーラー発電の準備から接続、ディープサイクルバッテリーに蓄電をまとめました。

ソーラーパネルの設置場所は部屋の窓内なのでそれほどの発電はしませんでしたが、思ったよりも発電して、自作ソーラー発電の初めの一歩としては満足です。

2021年、現在はディープサイクルバッテリーをやめて、ソーラーパネルからリチウムイオン電池内蔵のポータブルバッテリーに蓄電しています。

目次

自作ソーラー発電に必要なもの 準備

自作ソーラー発電の準備

自作ソーラー発電から。今までは住居を転々とするタイプの人間なのでモノを増やすことに抵抗があったのですが、部屋が広くなったのを機に前々から気になっていた自作ソーラー発電に手をだすことにしました。(これからも今住んでいる賃貸マンションに飽きたら他に引っ越していきます。)

自作といってもソーラーパネルやバッテリー・コントローラーをただ接続するだけなので特に難しいことは無いのですが、電気を扱うので注意して設置していきます。

今回は準備編ということで自作ソーラー発電に必要なソーラーパネルやバッテリー・バッテリー充電器、それとソーラー発電した電気をバッテリーに流したりストップしたりをコントロールするチャージコントローラーもそろえます。

あとは細かい材料のケーブルとかUSBポートなど。順に紹介していきます。

ソーラー発電に必須なもの

ソーラーパネル 太陽光で発電するパネル
バッテリー 発電した電気を貯めておくもの
チャージコントローラー ソーラーで発電した電気を適正な電圧にしてバッテリーに送電する装置
ケーブル ソーラーからチャージコントローラーへ、チャージコントローラーからバッテリーをつなぐためのケーブル。

最低限これだけあればソーラー発電してバッテリーに電気を貯めることができます。貯めた電気を使うためには他にも必要になります。

あったほうがいいもの

電気を使うための小物 ケーブルや5V(USB)に変換するアダプタなどの細かいものが必要になります。
バッテリー充電器 バッテリーを満充電する装置
100Vインバーター 直流電流を100V交流に変換する装置

12Vのバッテリーを買いましたので、100Vに変換して使わないでそのまま12Vで使うか5Vに変換してUSB機器の電源として使います。こちらの細々としたモノも海外通販のほうが安い場合が多かったので紹介していきます。

バッテリー充電器も買いました。一応ディープサイクルバッテリーという何回も充電放電できるバッテリーですが、容量が無い状態が続くとバッテリーがヘタってくると思うので、連続雨の日などはバッテリー充電器で充電します。

100V 交流にするインバーターを導入するとコンセントにさせる機器を使えますが、今回は特に100V電源は使うつもりはないので、12V 直流の機器に接続して使うか5Vに変換してUSBで使うのみとします。

どちらにせよそれほど大容量のバッテリーではないので100Vの機器を使ったらバッテリーがすぐに無くなりそうなので実用的ではないですよね?

選んだソーラーパネルとチャージコントローラー

Banggoodからはソーラーパネルとチャージコントローラーの商品提供していただきました。ありがとうございます。

Banggood EPEVER MT50 + MPPT 12/24V 40A solar charge controller

EPEVERという中華ソーラーチャージコントローラー大手メーカーで初心者でも手軽に扱えそうなチャージコントローラー。

MPPT方式のチャージコントローラーで有線LANで接続するMT50リモートメーターのセットがやってきました。

1世代古いタイプのEPEVER MPPTの40Aタイプです。ソーラーパネル1枚では40Aも使わないと思いますが、今後パネルが増えていったら本領を発揮すると思うので40Aにしておきました。

コレのほかにチャージコントローラーをPCと接続するeLog01をebay.comで買いました。下の方で紹介します。

Banggood Elfeland SP-23 130W 18V Sun Power Semi Flexible Solar Panel

Elfeland SP-23 130W 18V Sun Power Semi Flexible Solar Panel

ソーラーパネルは部屋の中の窓に設置するのでなんでもいいのですが、軽くてフレキシブルタイプのパネルを選びました。

最大18Vの電圧で7Aくらいまでの電流を発電しますが、光があたる強弱で電圧・電流の値は変わるのでそれをチャージコントローラーがうまくコントロールしてくれて自動的に12Vに変換してバッテリーに流してくれる仕組みになっています。

Max130Wまで発電してくれるようですが、今回はベランダや屋上(賃貸マンションなので無理)ではなく、窓の中に設置するのでそれほどの発電は期待できそうになく、Maxで60Wほど発電できれば御の字だと思います。

1180x540cmの長さですが、実物を見ると思ったよりも小さかったのでもう少し大きめのパネルでもいけたかもしれない。

開閉しない窓がもう一つあるので次回もう一枚導入する場合はもっと大きいパネルを試してみます。

Banggood 3.5 FT Black MC4 10AWG MC4 Solar Stripping Cable Connector

3.5 FT Black MC4 10AWG MC4 Solar Stripping Cable Connector
7ドル弱で買いました。ソーラーパネルからチャージコントローラーに接続するのにそのままつなげますが、ソーラーパネルのプラグを切ってしまうのも後々使いづらくなりそうなので、間にこのケーブルを接続してチャージコントローラーと接続します。

ebay Epever eLOG01 For Tracer BN Tracer A MPPT Solar Controller With RS485 Port AE

Epever eLOG01 For Tracer BN Tracer A MPPT Solar Controller With RS485 Port AE

こちらはPC(Windows)とUSBでつなぐときに使うEPEVER MPPT専用のコントローラー。

だいぶ発売時期が古い機器のようでMini USB接続になってました・・・でも2400円ほどと安いので古くても問題ないです。

PCとつなげて専用ソフトを使うとチャージコントローラーを詳細に設定できるようです。

付属品としてLANケーブルとMiniUSBケーブルも入ってますので別途ケーブルは必要ないようです。ソーラーパネルを接続したらPCで設定してみます。

バッテリー・充電器など買ったもの

バッテリー充電器 OMEGA PRO OP-0007

OMEGA PRO OP-0007
OMEGAPRO OP-0007

オートメンテナンス機能あり

ソーラー発電できない雨や曇り続きの時にバッテリー容量がなくなってきたら充電するために、バッテリー充電器も買いました。

OMEGA PRO OP-0007を購入。こちらはバッテリーがへたってきた時に使う「オートメンテナンス機能」なるものが搭載されていてヘタったバッテリーを復活してくれる。ディープサイクルバッテリーを2年くらい使ってヘタってきたら試してみます。

ACDELCO Voyager M31MF ディープサイクルバッテリー

ACDELCO Voyager M31MF ディープサイクルバッテリー
ACDELCOVoyager M31MF

通常の自動車やバイクに搭載されているバッテリーはエンジンスタートの時に瞬間的に大きな電流を必要とするのとは違って、長時間電力供給できるように作られたのがディープサイクルバッテリーです。なので自作ソーラー発電のバッテリーとしては最適だと思います。

ただこちらはソーラーパネルのバッテリーとしては良くないらしいと書いてあるブログ等がみつかるのですが?(充電時に16V必要だから?ヘタり復活するバッテリー充電器買ったら問題ないかな?)どこが良くないのかわからないので安いから買ってみました。

バッテリーのパーツ

ディープサイクルバッテリーを裸のまま置いておくのはちょっと危険なのでバッテリーケースに入れておくことにしました。(以前オートキャンプにハマっていたころ車にバッテリーを裸の状態でケーブルつなげたまま適当に放置したらプラスとマイナスが接触して煙出てあやうく火事になりかけたことがあります・・・)↓ おもにアマゾンで買いました。

こちら↓マイナス用?のようですが、勘違いしてプラス用も使えると思って2個買いました。プラスは突起物が2・3mm大きいのですが無理やりはめれば入った。

チャージコントローラーからディープサイクルバッテリーまでの配線用。実際にはバッテリーを室外に置くことにしたのでこれだけではケーブルが足りなかった。

USB電源のパーツ

細かいパーツは日本より海外通販のebayやBanggoodのほうが安かったので買い揃えました。

Banggood Excellway ET15 20Pcs 2 Pin Spring Terminal Block Electric Cable Wire Connector

Excellway ET15 20Pcs 2 Pin Spring Terminal Block Electric Cable Wire Connector

ケーブルを延長する時にケーブルとケーブル同士をつなげて使うもの。オレンジのレバーを上げてケーブルを刺して、ぱちっと下ろすだけで接続完了。

Banggood Excellway 222-413 10Pcs 3 Pin Spring Terminal Blocks Electric Cable Lever Wire

Excellway 222-413 10Pcs 3 Pin Spring Terminal Blocks Electric Cable Lever Wire

こちらは並列つなぎにする時に使用。+と-別々につなぐ。

3つケーブルを挿せるのでINが1本、Outが2本で並列つなぎで使っていきます。

2個をボンドでくっつけてプラス用、マイナス用でつないでいきます。

Banggood Waterproof Car Auto 10 15 20 30A Amp In Line Blade Fuse Holder Fuses - 15

Waterproof Car Auto 10 15 20 30A Amp In Line Blade Fuse Holder Fuses - 15

バッテリーから12V電源をひくときに間に「+」側にヒューズを入れました。

15Aでいいかなぁ、と思ったのでとりあえず15Aのヒューズをいれてみる。

Banggood 50 Pcs 10A To 30A Large Size Auto Insurance Tablets Fuse Kit Car Insurance Tablets Blade

50 Pcs 10A To 30A Large Size Auto Insurance Tablets Fuse Kit Car Insurance Tablets Blade

ドジなのでトラブルあってヒューズ飛んだら使えなくなるので念のために予備のヒューズも買いました。

Banggood 3pcs DC8V-35V To 5V 8A Power Step Down Module 4-Port USB Mobile Phone Car Charger

3pcs DC8V-35V To 5V 8A Power Step Down Module 4-Port USB Mobile Phone Car Charger

こちらは8~35Vの電源を5VにしてUSBとして使える便利なパーツです。

しかも電源はDCポートにさすだけ。右側にも配線を接続するポートがありますのでDCプラグでなくとも使えます。

ケースは3Dプリンタ(自分で3Dデータ作って)で出力して磁石をはめこんで棚の裏にくっつけます。(後ほど紹介していきます。)

Banggoodで買った4ポート12V→5V USBハブの入力ポートがDCポートも使えたのでこちら↓も買いました。これでケーブルを剥いて端子に止めなくてもDCプラグをさせば接続完了で便利。

その他、Banggoodよりもebay.comのほうが安かったので買ったアイテム↓Banggoodでもebayでも日本アマゾンでもこういった電子パーツ製品はどちらにせよ中国から送料無料で送られてくるので海外通販に抵抗がなければAmazon.co.jpで買うよりもebayやBanggoodで買ったほうがお得です。

ebay NEW Dual USB Output DC-DC Step Down Power Module 9V/12V/24V/36V to 5V USB 3A

NEW Dual USB Output DC-DC Step Down Power Module 9V/12V/24V/36V to 5V USB 3A

こちらも9・12・24・36Vの電源を5V3AのUSB2ポートに変換してくれるパーツ。

こちらも3Dプリンターでケースを作って棚に設置します。

ebay DC 7V-24V to 5V 3A Buck KIS3R33S 5V USB than Step Down Module For Arduino

DC 7V-24V to 5V 3A Buck KIS3R33S 5V USB than Step Down Module For Arduino

こちらも1ポートのUSB変換パーツ。1ポートで3A使えるので、電流にシビアなラズパイ(Raspberry Pi)に接続用にかいました。

ラズパイやESP32を使って自宅Iot化や自作半自動水耕栽培も今後は記事にしていく予定。

まずはバッテリーを充電してみる

ソーラーパネルが来る前にディープサイクルバッテリーとバッテリー充電器が届いたので、とりあえず室内で充電してみます。バッテリーは一応密封型ですが水素が発生するというので室内で充電をするのは避けたほうがいいと思いますが・・・とりあえず充電してみます。

ディープサイクルバッテリー 電圧テスト

最初にバッテリーの状態を見るためにどのくらいの電圧が出るかテストします。12Vのバッテリーなので12V以上の電圧が出ればよさそう。

ディープサイクルバッテリー

電圧計測したところ12.69V出たので製造してから日がたってない良い製品にあたったようです。中には最初から9Vくらいしか出ない場合もあるようで、そういう場合は交換してもらったほうがよさそう。

充電状態は初期の状態で「緑」だったので70%はありました。↓

ディープサイクルバッテリー充電池

充電器はお店が間違えて違う型番のモノが来た・・・

形が同じようなものなので最初は気が付きませんでしたが、バッテリー充電器が買ったものと違うものが送られてきました・・・

OP-BC02

気がついたので使う前に交換してもらいます。しかしケーブルが固くて使いにくそう。

せっかくなので画像を撮っておきました。

OMEGA PRO OP-0007が来た!

交換してもらって今度は注文したものが届いたので、早速充電してみましょう。なにも接続しないで電源をコンセントに刺すと↓「OFF」の文字が。一度コンセントを抜きます。

オメガプロ OP-0007はより有名なACデルコ AD-0007と同じ製品で名前だけ違うようです。ですが、ACデルコ AD-0007のほうが少し高い価格だったので安いオメガプロ OP-0007を買ってみました。

公式ページ↓に説明があります。2007年ほどに発売された機器のようなのでもう10年前の商品がまだ売っているのでこういった製品はあまり新発売になることは無いようですね。

こちらの製品もケーブルがぶっといからか、かなり固く取り回ししづらい。筐体も中華な高品質でメタリックなデザインを見慣れたせいかプラのオモチャっぽい形をしていて時代を感じさせる。

OMEGA PRO OP-0007が来た

まずは赤い「+」のクリップとバッテリーの「+」端子を挟む、続いて黒い「-」クリップとバッテリーの「-」端子を接続。

続いて、コンセントを挿すと「On」の表示に。数秒すると自動的に充電開始される。

OMEGA PRO OP-0007 接続

充電は12V~16Vで自動的に電圧が決められるようです。アンペアのほうは選択できるようですが?「電流選択」ボタンを押しているうちに勝手に自動で充電開始してしまったのでそのまま充電します。

新品時に70%ほどの充電率で2時間弱で100%の充電になりました。

部屋で充電しましたが・・・Xiaomi Airモニター(レビュー)↓がCo2a(Co2 二酸化炭素)が9999・TVOC(揮発性有機化合物 空気中のガスなど)3.597と異様に高い数値をしめしています。他のCo2センサーでは500PPMほどだったのでCo2ではなく水素?かなにか違うものに反応してそれが発生している可能性があって、やはりバッテリーは部屋で充電するのはちょい危険そうなので外にだすことにします。(PM2.5も高めで湿度は95.9%と湿度も異常です。他の湿度計は60%前後でした。)

OMEGA PRO OP-0007 Co2

窓全開で窓の前で充電しているのにこの状態・・・

充電完了後、徐々にCO2a(Co2ではない?)が下がってきて約2時間後には500~600PPMまで下がりました。他の自作Co2センサー(後ほど紹介します。)ではバッテリー充電時も正常値の400~600PPM前後が続いていたので、XiaomiAirモニターのCo2a(最後の「a」はなんだろう?)とCo2センサーは仕組みが違うのかもしれません。

この数値を見てちょっとびびったのでバッテリーは外に置いて、電線はエアコン室外機の配管の隙間を通してみます。

謎のガスが出るのでバッテリーは外に設置する

ケーブル追加購入

バッテリーは室内に設置するつもりだったので外に設置する場合はケーブルを延長しなければいけないので追加で買いました。

延長ケーブルは以下を買いました。

バッテリーから12V電源を取り出すケーブル

バッテリーを充電する時に使うバッテリー充電器用の延長コード。充電する時に中のコンセントをつないで使います。通常はコンセントを抜いておけば雨が吹き込んでも大丈夫。

チャージコントローラーからバッテリーまでのケーブル用↓Yahoo!ショッピングが一番やすかった。

配線

配線は以下のように。なってしまって・・・ちょっと適当なので後ほどホームセンターでスパイラルチューブでも買ってきて巻きます。

チャージコントローラーとバッテリーの間にはヒューズいらないと思うので、ヒューズは12V電源用のケーブルに15Aをつけました。10Aのヒューズにしようか様子をみてみます。

こんな感じに↓設置した。エアコン室外機の左に置こうとおもったけどケーブルが足りないので室外機の上に設置。

バッテリーは室外機の上、左の箱の中にバッテリー充電器を置いておく。

とりあえずバッテリーを充電できたので12Vケーブルを室内に入れて5V変換してUSB機器に使えるようになった。まだバッテリーはチャージコントローラーに接続していません。

自作ソーラー発電 接続図

といってもソーラーパネルとチャージコントローラーとバッテリーをただつなぐだけで完成するので大した作業は必要ないので簡単であっさり接続完了しました。

とりあえずはソーラーパネルが1枚しかないので以下のように接続してみます。この構成でうまくいったらソーラーパネルを追加していきたいと思っています。ソーラーパネルを増やして並列接続すると一部の1.5sqのケーブルが細すぎるので40A程度まで耐えられるもっと太いケーブルに変更する必要がありそうですが現状はソーラーパネルが一枚なのでこれでよさそう。

ソーラー発電で充電したバッテリーの使い道は主にラズパイやArduinoなどでポンプなどを制御して半自動水耕栽培関連で使います。

自作ソーラー 構築図4

前回の記事で自作ソーラー発電に必要な品物を買った様子はこちら↓

この春から、まだ経験していないことに挑戦していきます。まずは手始めとして自作ソーラー発電から。今までは住居を転々とするタイプの人間なのでモノを増やすことに抵抗があったのですが、部屋が広くなったのを機に前々から気になっていた自作ソーラー発電に手をだすことにしました。(これからも今住んでいる賃貸マンションに飽きた...

ソーラーパネルはこちら↓の窓の開閉しない下側部分、腰窓に置くだけ。それとチャージコントローラーも腰窓に突っ張り棒を使って設置します。(画像では腰窓部分にUSBソーラーを置いてあります。)

ソーラー発電の使いみち 窓

まずはチャージコントローラーを設置してバッテリーとつなげます。

チャージコントローラー設置

MPPT方式のチャージコントローラーを設置していきます。

チャージコントローラー EPEVER  MPPT 12/24V 40A + MT50がやってきた

Banggoodからチャージコントローラーがやってきました。箱はちょっと潰れ気味。

自作ソーラー チャージコントローラー箱

中身はこれだけ(英語の取説もあります)。↓右側のMT50はソーラーの発電量やバッテリーの状態を表示してくれます。ただ、本体(左側)でもボタンを押すと発電量などが表示されるので、EPEVER MPPT 40A本体・MT50を近くに設置する場合は必要ないのかもしれません。自分の場合はPCで詳細が分かるようになったのでMT50は特に必要ありませんでしたがせっかくあるので使うことにします。

自作ソーラー チャージコントローラーセット

EPEVER MPPT 40A本体の下にケーブルを接続する穴が6個あいてます。左2つがソーラー接続、中2つはバッテリーに接続、右側2つは12V(自分の場合)の直流電源を接続しますが今の所バッテリーから直接12Vのケーブルを引っ張ってきて使ってます。

この右側のランプアイコンの電源を使ってもバッテリーから引いた電源と同じなのだろうか?「Enter」ボタンを押すとランプアイコンに送電・停電を切り替えることができる。自作ソーラーを構築した他の方はチャージコントローラーから直接電力を引っ張ってないみたいなのでとりあえずはランプアイコンの電源は使わないことにして慣れてきたら試してみます。

自作ソーラー チャージコントローラー 下

右側のCOMポートに有線LANケーブルでMT50を接続する。本体を外に設置して、LANケーブルを引っ張ってきて部屋の中で発電量などを見る時にMT50が活躍しそう。

左端のTempSensorは別途温度センサーが販売されていますが、特に必要なさそうなので付属の終端ピンを刺しておきます。

MT50は台座が取れて中に余ったLANケーブルを収めておけるようになっていました。

自作ソーラー チャージコントローラーMT50リモートメーター

EPEVER MPPT 40A本体の裏面はヒートシンクがあってけっこうな熱がでるみたい。本体の温度は数日間みてますが現在は最大35度ほどしか上がらないようです。通常は20度くらい。

ソーラーパネルが増えたらチャージコントローラーの温度が上がるのでしょうか?

自作ソーラー チャージコントローラー ヒートシンク

板に取り付ける

賃貸マンションなので壁に穴をあけて取り付けるわけにはいかないので、板にビス穴をあけてとりつけます。

本体とMT50にはビスを通す穴があるのでその位置に穴を開けて取り付ける。

自作ソーラー チャージコントローラーMT50リモートメーター

板は3Dプリンターがなかったころにこの板↓をつかって工作しようとしましたが3Dプリンターがやってきたので必要なくなって部屋の隅に放置されていたもの。3Dプリンターが来てからなんでもプリントできるので家具やちょっとしたパーツなど簡単につくれてかなり便利な生活に変わりました♪、まだ体験したことがない方はぜひ3・4万円なので試して損はないと思います。ちなみに自分が使っている3Dプリンターはコレ(Anycubic I3 Mega)です。

板は腰窓の枠に突っ張り棒で固定してみます。

自作ソーラー チャージコントローラー 裏

本体やMT50のビス穴に合わせて穴をあけていきます。それと突っ張り棒と板を結束バンドで固定するための穴もあけます。

自作ソーラー チャージコントローラー 板穴あけ

こちらの道具もBanggoodで買いました。

どちらも10数ドルで買えて細かい穴あけや切断に使えるのでかなり便利です。

近すぎてあまり意味はなさそうですが本体とMT50を隣り合わせにつなげます。

自作ソーラー チャージコントローラー 板 印

画面が2つあってあまり意味は無いのですが・・・こんな感じ↓に隣り合わせに板にくっつけてみました。

自作ソーラー チャージコントローラー 板

そして突っ張り棒で腰窓枠に突っ張って仮に設置。これでよさそう。  自作ソーラー チャージコントローラー 設置

続いてソーラーパネルを設置していきます。

18V 130W ソーラーを設置

初ソーラーパネルがやってきたので設置します・・・・設置といっても腰窓にただ置くだけという適当すぎる設置です。

ソーラーパネルはこちら↓の曲げられるタイプのフレキシブルパネルで厚み2.5mm,サイズは1180x540mm、最大130W発電できて18V、Max6.1A IP67防水なので外に設置してもよさそう。Banggoodからやってきました。

実際に来た時の画像はこちら↓思ったより固く曲げにくい。大きめのダンボールの中に厚めのライトロンでカバーしてあったので海外から来ても安心です。パネル表面にシールが付いているのでまずはシールをめくる。

自作ソーラー ソーラー

裏面はこのようになっていてケーブルが出ているだけ。

自作ソーラー ソーラー 裏

とりあえず↓こんなふうに設置しました。屋根につけるともっと効率よく発電してくれると思いますがなにせ賃貸マンションなので屋根や外には設置できず、多分ずっと適当に置くだけの状態。これでも少しは発電しますので実験としてはいいかな。

現状では少しななめになってカーテンで支えてます。斜めではなく垂直でも同じような発電量だったら窓にテープでくっつけたほうがカーテンの開け締めで邪魔しないのかもしれない。

自作ソーラー 設置場所

ソーラーパネル・チャージコントローラー・バッテリーをつなげる

まずはバッテリーとチャージコントローラーをつなげます。下画像ではまだソーラーパネルを接続していない状態。ソーラーパネルが表示されるところ(液晶パネル左側)に月アイコンが表示されています。

自作ソーラー チャージコントローラー設置

次にソーラーパネルとEPEVER MPPT 40Aチャージコントローラーを接続(左下のソーラーアイコンの+と-とソーラーパネルを接続)するとあっさり発電開始されました♪

ケーブルの選び方

ソーラーパネルからチャージコントローラー、またはチャージコントローラーからバッテリーへつなぐケーブルは流れる許容電流によってケーブルの太さを選んだほうがよさそうです。

許容電流に合わない細いケーブルを使うと熱を帯びて発火する恐れもあるというので気をつけます。

選び方は発電する予定のアンペア以下のケーブルを選ぶ。自分の場合はチャージコントローラーが40Aなので40A以上の電流を流しても大丈夫な3.5sqのケーブルを選ぶのがベストですね。60Aのチャージコントローラーだったら5.5sqのケーブルを選ぶといったようなことでしょうか。

以下の表を目安にケーブルを選びます。日本では単位にスケアを使うようです。ebay.comなどの海外で買う場合はAWGという単位をつかうようです。

許容電流(A)
単心
sq(スケア)
mm2
AWG
25 1.25 16
32 2 14
47 3.5 12
62 5.5 10

つなぎで買った1.5sqのケーブルですと約27Aまでしか電流を流せないのでソーラーパネルを追加して並列接続していくと許容範囲外の電流が流れてしまう。

今はソーラーパネルが1枚なので大丈夫そうです。

バッテリーとチャージコントローラーを接続するケーブル

上画像真ん中の2本のバッテリーアイコンに接続してバッテリーにつなげます。

最初はバッテリーを室内に設置するつもりで↑こちらのケーブルだけで済まそうと思いましたが、バッテリー充電中に謎のガスが出るので以下のケーブルを買って延長してベランダに設置しました。

こちらのケーブルは上の4sq(43Aくらい)の太さのケーブルと違って1.5sq(スケア)の太さしかないのでだいたい27Aくらいしか電流を流せないので今後ソーラーパネルが増えた(並列接続で40A近くなった)場合にはソーラーパネルからチャージコントローラーの間のケーブルとしては使えなさそう。とりあえずは安かった・・・のでこのケーブルを使います。

ソーラーパネルを増やす予定だったのでケチって失敗しました・・・今度は47Aまで流せる単線3.5sqの太さで10Mのケーブルを買ってみます。

MT50の表示

右側のMT50は常時発電量とバッテリーの充電量が表示されて、バッテリーアイコンの上に顔アイコンでバッテリー残量の状態が表示されます。

自作ソーラー チャージコントローラーMT50

残量が多いとニコニコ顔で残量が少なくなってくると怒り顔になる。5日ほど雨や曇りの日が続いても気にせずUSB機器や照明を使い続けたらバッテリー残量がなくなって怒り顔になった。

自作ソーラー チャージコントローラーMT50  無い

ディープサイクルバッテリーの表示をみてみると赤くなっている。↓70%以上の充電量になるにはソーラー発電だと数日かかりそうなのでバッテリー充電器で80%ほど充電する。

自作ソーラー バッテリー 赤

MT50はEscボタンを押して上下ボタンを押すと発電量や各種設定が可能。このあたりはパソコンとつなげて専用ソフトからでも設定できます。といってもまだ詳しく理解していないのでこれから試してみます。

自作ソーラー チャージコントローラーMT50 設定

窓設置で最高4A程度の発電量

数日間ソーラー発電してみて、快晴の日に瞬間的にですが最高の発電量はだいたい19V4Aほどの発電で76Wほど発電するようです。窓ガラスの内側でこの発電量だったら概ね満足です。

自作ソーラー チャージコントローラー3.5A

発電した12Vバッテリーの使いみち

ソーラーパネルで発電してディープサイクルバッテリーに貯めた電力は12Vのまま5Vに変換してUSB機器の電源としてつかったりLED照明や水耕栽培のポンプなどで使います。

当面はインバーターを導入して交流100V電源として使うことはしないことにします。

ソーラー発電の使いみち USB

USB機器や水耕栽培に必要な電力として使う。

IKEAのHYLLISシェルフユニットがピッタリ

1500円という激安なIKEAのシェルフを買って水耕栽培の水槽やUSB機器の設置場所として窓際に置いてみました。ブリキの鉄板でできているのでごちゃごちゃしたラズパイなどのガジェットに3Dプリンターでケースを作って磁石をつけて棚の裏にくっつけておくのにもちょうどよい。

https://www.ikea.com/jp/ja/catalog/products/80278579/

HYLLIS ヒュッリス シェルフユニット, 室内/屋外用 亜鉛メッキ, 60x27x140 cm.

1個買って試してみたけど、ちょいキャシャなので3Dプリンターで窓枠とくっつける部材を作ってみた。

ソーラー発電の使いみち 棚

こんなふうに窓枠と棚をくっつけてグラグラして倒れないようにしたけど・・・カーテン閉まらない・・・

ソーラー発電の使いみち 棚 留め

コレだと↑カーテン閉められなくて昼間眩しすぎるので、外して棚を少し前にだしてカーテン締められるようにした。↓でもちょっとグラグラするので下に重いものを置く。

ソーラー発電の使いみち 棚 設置

バッテリーからケーブル配線してUSB機器の電源として使う

バッテリーからのケーブルは1.25sqの細めのケーブルを使いました。このケーブルは12V12Aまで電流を流せるので多分問題ないですよね??多分。

途中でつなげたり分岐したりするのでBanggoodで買ったExcellway ET15 20Pcs 2 Pin Spring Terminal Block Electric Cable Wire Connectorを使って分岐します。

ソーラー発電の使いみち 電線

12Vなどの電源を5VにしてUSBポートに送電してくれる便利なパーツ3pcs DC8V-35V To 5V 8A Power Step Down Module 4-Port USB Mobile Phone Car Chargerに3Dプリンターでケースを作って100円ショップで買った強力磁石をはめ込んでブリキ棚の裏にくっつけておく。

ソーラー発電の使いみち USBポート

USB4ポートの3Dデータも公開しておきます。縦に3Dプリントするとサポート剤なしでプリントできて、サポート剤を除去する作業が必要なくて簡単かもしれません。

USB4Port 3Dデータ

あまり出来はよくなく・・・ビス穴などがちょいズレ気味なので予めご了承くださいませ。

3D design USB4port created by Bey.jp with Tinkercad

裏にDCプラグがあるので別途パーツを買って差し込むだけで接続完了するので便利。

ソーラー発電の使いみち USBポート 裏

このあたりのパーツ類は興味がありましたらこちらを御覧ください。↓

この春から、まだ経験していないことに挑戦していきます。まずは手始めとして自作ソーラー発電から。今までは住居を転々とするタイプの人間なのでモノを増やすことに抵抗があったのですが、部屋が広くなったのを機に前々から気になっていた自作ソーラー発電に手をだすことにしました。(これからも今住んでいる賃貸マンションに飽きた...

これらを使って棚にケーブルが目立たないように配線していきます。

LEDフロアライト

交流100Vを直流9V1AにするACアダプターを使って発光するLEDフロアライトをACアダプターを使わずにバッテリーから引いた12V電源を9Vに変換して使います。

以前デスクライトもACアダプターを使わずに自作パソコンの12V電源から9Vに変換して使った様子は以下のページ。今もこのデスクライトを使っています。

自宅作業部屋のデスク周りがノートパソコンから自作パソコンに変わったので大分スッキリしてきましたが、今度は配線周り、ACアダプタがぐちゃぐちゃしてタコ足配線なのが気になって、なんとか減らす方法はないかと考えていました。

今回は12Vバッテリーの電源をLEDフロアライト↓、変換パーツに3Dプリンターでケースを作ってつなげてみました。バッチリ使えてこれでACアダプターがまた一つ減って嬉しい♪

LEDフロアライト

ケースの3Dデータは以下からダウンロードできます。(ビス穴がちょっとずれてるかもしれませんのでそのあたりはご勘弁を・・・)

LEDフロアライト 3Dデータ

3D design 9V-box created by Bey.jp with Tinkercad

棚にあるUSB機器やポンプ・照明で電力を使う

調子にのってIKEAのシェルフを3つにして現状(ソーラーパネル設置前)はこんなふうにしてみた↓水耕栽培の容器はIKEAのスクエアボックスや100円ショップのボックスを加工したり3Dプリンターのパーツをくっつけたりして作りました。水耕栽培の状態も後ほどご報告します。

ソーラー発電の使いみち 現状

自作ソーラー発電の今後

あっさりとソーラー発電できてしまったので、調子にのってソーラーパネルを増やしていきます。

その前にパソコンと接続してPCからでも専用ソフトで発電の様子が見えるようにして、最終的には発電の各種数値をハックして自前のデータベースに保存してグラフにしていきます。

あと、バッテリー切れになるとUSB機器などが使えなくなる問題があります。バッテリー切れ時に電力を自動的に12VDC出力のACアダプターに切り替えるシステムもラズパイを使って構築していきます。

あとバッテリーも曇っていてソーラー発電しない期間が長い場合は5日ほどでバッテリー切れになのでバッテリーももう一台必要なのかもしれません。まぁ、引っ越す時が辛いのでバッテリーは増やさずにバッテリー充電機で充電すればいいのかな?

ソーラーパネル2枚追加

自作ソーラー発電がうまくいったので、味をしめてソーラーパネル2枚追加、それとパソコンで専用ソフトで発電量などの状態を見ることができるeLOG01と、Bluetooth接続でアプリで状態を見れるeBOX-BLE-01をチャージコントローラーに接続して試してみました。

そしてソーラーパネル2枚追加しましたが、接続のしかたがわるかった?のか期待していた発電量は1枚のときとあまり変わらない??のですが、こんなものなんでしょうか?この記事の下のほうで検証してみます。

PC接続のeLOG01とBluetooth接続のeBOX-BLE-01と両方試した結果、eBOX-BLE-01のほうはスマホなどのアプリで簡単な表示しかしてくれませんでしたが、パソコンソフトで表示してくれるeLOG01はチャージコントローラーの設定もできて機能満載でまだ使いこなせていませんで、こちらのほうが使えるが重大な欠点が・・・

今回はソーラーパネル合計3枚接続して、パソコンソフトEPEVER Solar Station Monitorで発電の様子をみてみます。(次回はBluetooth(BLE)通信のeBOX-BLE-01を接続してみます。)

ソーラー3 接続図

まずは新たなソーラーパネル2枚と今まで使っていたソーラーパネル1枚を比較してみましょう。

フレキシブルソーラーパネル3枚を配線と設置場所

Banggoodから来たソーラーパネル2枚

新たに来たソーラーパネルは以下の2枚。今ある1枚のソーラーパネルが18Vなのでそれに合わせて2枚とも18Vのパネルを選びました。いずれも100数十ドルの安めのソーラーパネル。

Elfeland SP-37 18V 100W 1050*540mm Semi-Flexible Monocrystalline Solar Panel

Elfeland SP-37 18V 100W 1050*540mm Semi-Flexible Monocrystalline Solar Panel

Elfelandのフレキシブルソーラーパネル。前回レビューしたElfeland SP-23 130Wよりも少し長さが短いのですが、最高100Wまでしか発電しない。

18V 100W Monocrystalline Flexible ETFE Solar Panel Flexible Monocrystalline Solar Panel

18V 100W Monocrystalline Flexible ETFE Solar Panel Flexible Monocrystalline Solar Panel

こちらも18V 100Wで表面がざらざらしたフレキシブルソーラーパネル。

いずれも軽くて薄くて多少は曲がるのが特徴です。

Banggoodの梱包

梱包は緩衝材でウレタンフォームが入っているので割れることなく届きました。

梱包 ソーラー

フレキシブルソーラー3枚

ソーラーパネルが合計で3枚になりました。この3枚を窓の内側に設置していきます。

上から順にETFE Solar Panel・Elfeland SP-37・Elfeland SP-23になります。

  • ETFE Solar Panel 100W
  • Elfeland SP-37 100W
  • Elfeland SP-23 140W

ソーラー 3枚

下2枚はElfelandのソーラーパネル。一番上のソーラーパネルは表面がぼつぼつした仕上がりになっています。

ソーラー 3枚 違い

よく見ると2枚目の角あたりにヒビが入っているような。

ソーラー 3枚 違い2

こちらの3枚を並列接続していきます。並列だと電圧の18Vはそのままに電流がMax20Aほどになるという予想で設置。しかし予想に反してあまり電流があがらす3枚足しても4日間最高40Wほどしか発電しない・・・接続の仕方が悪かったかな?まぁ、雨続きだったのか?分かりませんがしばらく様子見するしかなさそう。

新しく来た2枚のソーラーパネルの仕様は以下、

ETFE Solar Panel

ETFE Solar Panel

Elfeland SP-37

Elfeland SP-37

そしてこちらが↓最初に来たElfeland SP-23の仕様。

Elfeland SP-23 140W

Elfeland SP-23 140W

追加2枚のソーラーパネル設置

追加で買ったもの

2枚追加になるのでソーラーのケーブルとソーラーパネルを並列接続する分岐プラグを買いました。

前回ソーラーパネル1枚だったので細いケーブルで大丈夫そうでしたが今度は3枚になるのでチャージコントローラーからバッテリーまでのケーブルを太いケーブルに変更します。

バッテリーに接続するために圧着端子が必要なのでそれもアマゾンで購入↓

圧着するための専用ペンチも必要なのでこちらも買った。

ソーラー用のMC4コネクタを外すときやコネクタを作るときに使うスパナも買っておきます。

ソーラーパネル3枚を並列接続するための分岐コネクタをeBay.comで買いました。

2PCS MC4 Solar Panel Y/T Branch Cable Connector M/F Adapter Parallel Clip Plug E

2PCS MC4 Solar Panel Y/T Branch Cable Connector M/F Adapter Parallel Clip Plug E

←画像ではメス2個になってますが、やってきたのはオス・メス1個ずつの1セットになります。

細かい工具などが必要になったのでちょこちょこ買ってしまった。

ソーラーパネル3枚と接続

ケーブルは赤と黒ではなく黒2本だったので、ケーブル1本は赤マジックで赤く塗って間違えないようにバッテリーとチャージコントローラーに繋げました。

ソーラーパネル ケーブル

ソーラーパネル3枚にそれぞれ+と-の分岐コネクタを接続してチャージコントローラーにつなぐ。ソーラーケーブルのMC4コネクタは「+」がオス、「-」がメスになっているので接続を間違えることはない。

ソーラーパネル設置場所2

ソーラーパネル3枚設置場所

新たに2枚を追加して合計3枚を窓の内側に設置しました。(ごちゃごちゃしていてスンマセン)赤枠の3枚がソーラーパネルを設置した場所。青枠2枚はUSBソーラーパネルでいずれも窓ガラスの内側に設置。

ソーラーパネル設置場所

ソーラーパネル設置 腰窓に2枚と、カーテンレールの内側から1枚をぶら下げた。

設置できたのでeLOG01をチャージコントローラーに接続してパソコンの専用ソフトSolar Station Monitorをインストールして発電量を確認してみましょう。

PCソフトで発電状態を可視化するeLOG01接続

チャージコントローラーとeLOG01を接続して、eLOG01とUSBケーブルでパソコンとつなげます。

eLOG01とRJ45分岐アダプタ

Epever eLOG01 For Tracer BN Tracer A MPPT Solar Controller With RS485 Port AE

Epever eLOG01 For Tracer BN Tracer A MPPT Solar Controller With RS485 Port AE

eBayで買いました。だいぶ古い機器のようです。3000円弱で安かった。

RJ45 Splitter Adapter 1 to 2 Ways Dual Female Port CAT5/CAT 6 LAN Ethernet Cable

RJ45 Splitter Adapter 1 to 2 Ways Dual Female Port CAT5/CAT 6 LAN Ethernet Cable

こちらはeLOG01はRJ45(LAN)の出力もあるので必要ありませんが、後ほどハックしてラズパイに接続するのに使うので買っておきました。

eLOG01をチャージコントローラーに接続

eBayからeLOG01がやってきたので接続します。ケーブルもちゃんと入っているので追加で買うものはありませんでした。

eLOG01接続 セット

真ん中にボタン電池のCR1220を入れるところがありましたが、RJ45でチャージコントローラーから5V電圧が来ているので入れなくても動きました。

eLOG01接続 電池

こちら↓右側側面にUSB Mini-BポートはパソコンのUSBに接続、RJ45ポートはMT50(発電状態を液晶ディスプレイ表示する機器)に接続します。

eLOG01接続 USB

左側側面のRJ45はチャージコントローラーとつなぎます。

eLOG01接続 LAN

準備ができましたのでパソコンソフトEPEVER Solar Station Monitorをインストールして発電の状態を可視化してみましょう♪

EPEVER Solar Station Monitorで発電を可視化

それではいよいよ発電している様子をパソコン画面に表示させてみましょう。

まずはダウンロード・インストールから、なお、このソフトはちょっとクセがあるようで?ちゃんと接続できていてもタイムアウトするときもあるので使いづらいです。

EPEVER Solar Station Monitor ダウンロード

パソコンソフトは以下のページよりダウンロードできます。

Best MPPT solar charge controllers, Inverters & Hybrid Inverter Chargers. EPEVER, EPSOLAR charge controllers.

こちらのページで以下のように「Charge Controller (v1.93) - Windows .zip」をクリックするとダウンロードできます。

ソーラー ソフト

Androidアプリは右下の「Charge Controller (Sealed) - Android .apk」になります。Sealedは密封型のバッテリーでバッテリー液を補充できないタイプのもの。ACDELCO ボイジャー用ディープサイクルバッテリーも密封型です。

アプリはGoogle Playストアで「Epever」と検索すると出てきますが、なぜかうまく通信できなかったので、もし動かなかった場合は上記ダウンロードページよりDLしてインストールしてみてください。(野良アプリなので多少注意が必要です。)

インストールはZipを解凍した中の

Controller-PCTools-V1.93\PCsoftware\setup.exe

こちらをダブルクリックするとインストーラが起動しますので「Next」を押して行ってインストールしてください。

Controller-PCTools-V1.93\Installation guidance\The Setup Steps and Use of Common Software1.pdf

同じく解凍したフォルダの中のこちら↑に簡単な英語のインストール方法の取説もありますので御覧ください。

COMポート指定・デバイスマネージャーで設定

ソフトからCOMポートを指定して接続するので、まずはUSBケーブルのCOMポート番号を調べるためにスタートボタンを右クリックして「デバイスマネージャー」を選びます。

以下のようにポート(COMとLPT)の▷をクリックして広げるとポートがでてくるので、USBを探すとXR21B1411 USB UARTと出てきました。COM3がeLOG01のポート番号です。

eLOG01接続  COM

XR21B1411 USB UARTを設定する必要があります。まずは右クリックして「Port Settings」タブを選択して以下のようにBits per secondを「115200」に、RS-485にチェックを入れます。

Solar Station Monitor 設定2

これでデバイスマネージャーの設定は完了。

チャージコントローラー・バッテリー・ソーラーパネル登録設定

Solar Station Monitorを起動すると以下のようなCOMポートを選ぶ画面になるので、デバイスマネージャーで調べた番号を選択する。Baud rateの速度は115200にしてAddを押します。

Solar Station Monitor 起動時

次はソーラーパネルやバッテリーのタイプを設定する以下のような画面になります。

Solar Station Monitor 設定

上記の画面で設定しなくても後ほど「Edit Station」で設定可能です。↓

Solar Station Monitor6

最初に「Station Infomation」タブで以下のように設定しました。

  • Station Name:適当な名前
  • Device ID:最初は「1」が良いようです。
  • Country:Japan
  • City:Fukuoka
  • Rated Power(W):ソーラーパネルの合計最大W数
  • Installation Time:ソーラー発電始める日
  • Battery Capacity(Ah):バッテリーの最大容量

Solar Station Monitor2

続いてSolarタブを押してソーラーパネルの設定をしましょう。

  • PV Type:ソーラーパネルの名前
  • Peak Power:最大発電量
  • Number Of Paralleled Arrays:パネル数
  • Total Peak Power(W):最大発電量

Solar Station Monitor

次にBatteryダブを押して使うバッテリーの設定をしていきましょう。ちなみに↓下画像右のように画像も登録できますが、いつの間にか消えますので意味ないです・・・

  • Battery Type:密封型の場合はSealedを選ぶ
  • Battery Capacity(Ah):バッテリーの最大容量
  • Voltage Of Each Battery:バッテリーの電圧

Solar Station Monitor バッテリー

最後のControllerタブはPortにさっきデバイスマネージャーで調べたCOMポート番号が選択されていればOKです。

Solar Station Monitor3

ソーラー発電状況を可視化♪

設定完了して右上のほうにある「Start Monitoring」を押すと以下のようにソーラーの発電量やバッテリーの充電量が表示されます。

Solar Station Monitor7

ソーラーパネルの状況やバッテリー充電状況もリアルタイム(Interval(s)で情報取得する間隔の秒数を設定)で表示できるのが素敵すぎます。

Solar Station Monitor4

発電量Wや電圧をグラフで表示してくれるのもいいですね。

Solar Station Monitor 発電

ただ、物理的にちゃんと接続してるのにエラーになって接続できないときがあるんです・・・

エラーになる(接続が不安定)

どのタイミングで接続できなくなるのかまだクセをつかめていませんが、接続できなくなるとパソコンを再起動してもUSBケーブルやLANケーブルを抜き差ししても接続できなくなります。

ソーラーパネル3枚 エラー

Operation failed. The operation has timed out.(COM3)とエラーが出て接続できなくなる。

逆に接続しだすと、USB抜き差ししてもPC再起動してもずっと接続できるようになる。パソコンの接触が悪いのか?eLOG01のどこかが悪いのか?いまのところ原因不明。

ソーラーパネル3枚合わせても1枚とあまり変わりない

4/30にソーラーパネル3枚にして5日ほど経ちましたが、グラフを見てもソーラーパネル1枚だったころとあまり発電量が変わらないかなぁ、となんとなく思っていましたが気になったのでちょっとどのくらい変わったのか実験してみました。

曇り空

まずはゴールデンウィーク前半は雨と曇り空で、バッテリーがなくなってしまったので充電してからソーラーパネル3枚で曇り空の日にどのくらい発電するかチェックしてみました。↓

バッテリー充電中

充電器でバッテリーを充電中のときにはチャージコントローラーが働いてか?発電した電力をバッテリーに送らないようでした。

75%くらいまで充電してから曇り空で発電したところ10W程度・・・曇り空とはいえ3枚で10Wって少なすぎる気がした。

晴れの日(5/4)午後に単体ソーラーがどのくらい発電しているか比較してみる

昨日晴れたので午後からソーラーパネルのプラグを取ったりつけたりしてソーラーの発電量を比較してみました。

今回導入した100Wソーラーパネル2枚で0.5Aほど、ということは前回レビューしたElfeland SP-23 130Wが1.5A発電しているということのようです・・・もう少し期待していましたが残念すぎる(泣)

3つ合わせた発電量

0.28AがElfeland SP-37のみ接続したとき、0.5A程度のときは2枚のソーラーパネル接続

窓際に置いただけなのでコレが普通の発電量かわかりませんが、Elfeland SP-23 130Wはかなり良い発電効率のようです。

ソーラーパネル2枚追加して発電状況をパソコンで可視化した感想

追加した2枚のソーラーパネルの発電効率が悪いのはガッカリして、もっと効率の良いソーラーパネルに興味が出てきました。これ以上窓にソーラーパネルを置くと部屋が暗くなって家族から苦情がくるので、2枚のソーラーパネルを処分して新しい発電効率の良いパネルを導入するか考え中。

パソコンで発電量を可視化できるソフトのEPEVER Solar Station Monitorはちゃんと受信できればかなり使い勝手が良くて詳細設定も可能でいいのですが、どこが悪いのか現在は分かっていませんが、うまく接続できないと「Operation failed. The operation has timed out.」の表示が出てPCを再起動したりプラグを抜き刺ししても治らない・・・数日後になにもなかったように接続できるときがあって、イライラする。どこかの電気的な接触が悪いのかな?

なので、RJ45ケーブルを改造してUSBをつけてラズパイに接続・ハックして発電状態をグラフに表示できるようにしました。こちらも後ほど詳細に記事にしていきます。

窓際ソーラー発電は期待していたより少ない発電量で、週に1度はコンセントから充電器を使ってバッテリーを充電する必要があるので、もう少し発電効率の良いソーラーパネルを探す旅がしばらく続きそうです。

ソーラー 蓄電状態を可視化

EPEVERチャーコンをハックしてソーラー発電データを保存+グラフ表示

ソーラー発電している方でEPEVERのチャージコントローラーを使っている方用の内容になります。

最近はこういったマニアックな記事になってしまってすみません。こういったセンシングが集まって総合的な自宅Iotが完成するので必要なところだけ参考にしていただけると嬉しいです。

ソーラー発電は、自分で電気を作っている感覚が面白くてハマってます。それと発電した電力でラズパイやUSB機器を使っているので少し得した気分、だけど実際にはバッテリーがすぐ空になって充電器で充電している始末なので、窓際ソーラー発電はあまり発電せず・・・役に立たないお遊び的なものでした。

現在は賃貸マンションで窓ガラス内側にソーラーパネルを設置しているだけなのであまり発電はされませんが、屋根の上など本格的にソーラー発電されている場合はかなり発電できる気がします。ソーラーパネルが10枚くらいあれば家の電力はまかなえそうな気がします。今度引っ越す時は「ぽつんと一軒家」的な庭が広いところでソーラーパネルを並べてみたい気がしますが・・・家の管理(庭の手入れや部屋掃除)が大変そうなのと古い家だと怖そうで、やっぱり賃貸マンションが楽だし一番かなぁ?

でも賃貸マンションだと窓際に設置するしかなく、直角にソーラーパネルが立っているから夏は太陽が真上に来てしまっているので秋・冬・春が窓際ソーラー発電の本領発揮かもしれません。最初(春)にソーラーパネルを設置した時はもっと発電していたのですが、最近は太陽が真上に来てしまったのかソーラーパネルを3枚に増設したけど発電量が以前より減った気がする。

広い庭付きの一軒家はいいけど管理が大変だし新しめの家は賃料が高そう、賃貸マンションだと庭がないのでソーラーパネルは窓際に設置するしかない、両方デメリットがあるので持ち家一軒家でないかぎりはソーラー発電はあまり向かなそうですね。持ち家一軒家は違う意味できついし引っ越せないのでストレスになって自分には無理です。

ということで現状はあまり役にたたず、将来使えるようになれば今までの経験が活かせる気がしている窓際ソーラー発電ですが、今回は以下のように発電量やソーラーパネルとバッテリーの電圧・電流を取得してInfluxDBに保存・Grafanaでグラフ表示させるところまで書いていきます。

ソーラー InfluxDB Grafana

接続方法は、BLE(Bluetooth Law Energy)接続のEPEVER BLEでハックしようとしましたが、できなかったのでLANを改造してUSB接続のEPEVERチャージコントローラーとラズパイを有線接続してハックしました。

Bluetooth接続のEPEVER BLEは現状解析できず

Bluetooth接続するEPEVERのBLE機器↓をebayで買ってハックしようとして挑戦してみましたが・・・BLEを解析できず力不足であえなく敗退、現状はうまく取得できていません。

なので今回は有線のLANケーブルを改造してUSBでラズパイに接続してデータを取得していきます。

ソーラー発電 データをアプリで表示

ハックはできませんでしたが、EPEVER BLEを使ってアプリで接続すると表示することはできます。アプリはEPEVERのものではなさそうなアプリで操作できました。↓

Android Play Store

他のEPEVER純正?のようなChargeController(Sealed)やChargeController(Li)アプリも試してみましたが、同じような表示ですがなぜかBLE接続できなかった。

ソーラー発電の発電状況をアプリで表示

以下のように発電の状況を表示してくれます。まぁ、一応みれますが今の状況しか表示できず過去のグラフやログなど残ってなさそうなのであまり使う機会はなさそうです。

ソーラーパネルに逆流防止ダイオードを取り付けた

ソーラー発電の記事を見ていただいた方に教えてもらったので逆流防止ダイオードを買ってソーラパネル3枚につなげました。

MC4 In-line Fuse Connector 10A 15A PV Solar Photovoltaic Joint Diode Connector

3個で1000円くらいで買った。

逆流防止ダイオード

MC4のプラグの中に大きめのダイオードが入っていました。

逆流防止ダイオード

これで少しは発電量が上がるかと思いましたが・・・あまり変わらず。ただ、ソーラーパネルに過電流が逆流しないという安心感はあるのでつけておきます。

逆流防止ダイオード

プラス側につけてみました。これで電流が逆流しなくなりそうなので一安心です。

EPEVERチャーコンからソーラーデータを取得

それでは本題のEPEVERチャージコントローラーからLANケーブル→USB変換アダプタを通してラズパイに接続してデータをハックしてみましょう。

こちらの動画を参考にLANケーブルにUSBドングルを付けてラズパイに接続してデータをハックしました。

EPEVERチャージコントローラー持ってる+ラズパイが少しいじれる人は以下のとおりにやれば特に難しいことは無いと思いますので、気軽に作業してみてください。

Setting up Influxdb/Grafana reporting for the EPEver Charge Controller.

ほぼこちら↑言われている通りの作業をすればハックできます。非常に参考になりました。ありがとうございますm(_ _)m

必要なもの

EPEVERチャージコントローラーとラズパイ(ラズパイの簡単OSインストールはこちらを参考にしてください。)をつなげるLANケーブル+USB RS485変換アダプタが必要になります。

  • ラズパイ(Raspberry Pi)
  • USB RS485変換アダプタ
  • LANケーブル
  • EPEVERチャージコントローラー

LANケーブル(RJ-45)は普通の8線のやつ、使用するケーブルは2本しか使わないので2線・4線でも使えるとは思いますが?RJ-45端子を加工する必要があるかと思います。

USB RS485変換アダプタを準備する

USB RS485変換アダプタというのを使います。↓ebayで100円程度で販売されています。

こちら、自分の環境が悪いからかもしれませんが、すぐ壊れます。いままで4ヶ月ほど使ってみて2個壊れました。もしかしてバッテリーを充電しているときに電流が逆流して壊れるのかとも思いましたがそうでもなさそうだし?なので余分に数個予備で持っています。

すぐに壊れるので上のアップグレード版↑も予備に買ってみました。使えるかどうかも分かりませんが、こちらのほうが壊れにくそうな見た目。こんどUSB RS485変換アダプタが壊れたら使ってみます。

USB RS485変換アダプタはアマゾンにも売ってますが最低でも400円弱しますのでebayで買ったほうがお得かと思います。

CC-USB-RS485-150UはPCにつなげるケーブルでハックには使えない

ちなみに以下のケーブルはWindowsPCにつなげるLAN→USBケーブルなのでデータを取得するハックには使えませんでした。

こちらはアマゾンで売っているケーブル↓と温度センサーのセット。温度センサーは特に必要ないのですが、EPEVERチャージコントローラーの左下に差し込みがあるので接続しました。

同じケーブルでebayで500円程度で売っていたのでこちらも買ってみた。

前の記事で紹介した以下のPCとチャージコントローラーを接続するeLOG01と同じ機能のようです。

CC-USB-RS485-150UケーブルをPCと接続したらeLOG01と同じように「XR21B1411 USB UART」と表示された。

ソーラーケーブル

最近はeLOG01が壊れてしまった・・・ようなので代わりにCC-USB-RS485-150Uケーブルを使おうかと考えているところ。たまにPCでソーラー発電の様子もみてみたいので、3ポートのLANケーブル分割アダプター買わないと。

LANケーブル 配線加工

LANケーブルはA結線とB結線があって、8つのケーブルに以下のように色がついています。

A結線(T568A) B結線(T568B)
1
2
3
4
5
6
7
8

この8つのケーブルのうち使うのは4の青、5の白・青です。

USB RS485変換アダプタの上がUSB差し込みの場合は左側に5(白・青)、右側に4(青)ケーブルを接続します。

LANケーブル

かなり細いケーブルですぐに切れてしまうので結束バンドで止めておきました。↓

LANケーブル

これでケーブルの準備は完了。USBをラズパイに、RJ-45をEPEVERチャージコントローラーにさして接続します。

UARTを使えるようにする

ここからはSSHなどでラズパイにアクセスして設定してきます。

/boot/config.txtに「enable_uart=1」を追加します。すでに入っていれば追加しないでもOKです。

$ sudo vim /boot/config.txt
enable_uart=1 #行の最後に追加する。
$ sudo reboot

追加したらリブートします。

USBのデバイス名を固定する

ここで先ほど作成したLANケーブルとUSB RS485変換アダプタが正常にUSBに接続できていれば/dev/ttyUSB0にデバイスがあると思いますが、ラズパイのUSBポートに他のUSBデバイスを刺してある場合にはttyUSB1,ttyUSB2などのデバイス名になってしまって、常にttyUSB0で無い場合もあます。なのでできればデバイス名を固定しておきましょう。

(この項目は他のUSBデバイスを刺す予定が無い場合はほぼttyUSB0になっていると思うので、特に必要なければやらなくてもOKです。)

$ ls /dev/ttyUSB*
/dev/ttyUSB0 #このようになっていれば正常に接続できています。

もし/devの中のttyUSB0~9が一個も表示されていない場合はケーブルがうまく接続されていないかもしれません。(USBケーブル以外の他のUSBガジェットを刺した場合は他の名前になります。例えばMicroSDカードを入れたUSBアダプタを刺すと/dev/sdaなどになります。)

lsusbでUSB機器情報を確認

まずはlsusbでラズパイに接続しているUSB機器の状況をみていきましょう。例として2つのラズパイのUSB機器情報を確認します。

Raspberry Pi 2 B+の場合

$ lsusb
Bus 001 Device 005: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM Wireless LAN Adapter [Ralink RT8070]
Bus 001 Device 004: ID 04e2:1411 Exar Corp.
Bus 001 Device 007: ID 8564:4000 Transcend Information, Inc. RDF8
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Raspberry Pi 2 B+ではWifiが無いので1つWifiのUSBドングルを刺していましてDevice 005 BUFFALO INC.・・・で認識されています。

ここで必要な情報はID 0411:01a2のようなIDに続く4文字:4文字の文字列2つです。1番目の4文字がベンダー名、2番目の文字列がProduct名です。

上のlsusbコマンドを実行した例では該当のUSBケーブルはID 04e2:1411 Exar Corp.

  • idVendor:04e2
  • idProduct:1411
  • メーカー:Exar Corp.

これは間違ったケーブルを接続したときにこのようになりました。正しくケーブルを接続した時は下のラズパイ3B+と同じようにQinHeng Electronics HL-340 USB-Serial adapterとなっていました。

Raspberry Pi 3 B+の場合

$ lsusb
Bus 001 Device 006: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
Bus 001 Device 005: ID 0bda:0109 Realtek Semiconductor Corp.
Bus 001 Device 004: ID 0424:7800 Standard Microsystems Corp.
Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

該当のUSBケーブルは、ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

  • idVendor:1a86
  • idProduct:7523
  • メーカー:QinHeng Electronics HL-340 USB-Serial adapter

Device 005のRealtek Semiconductor Corp.はMicroUSBを刺したUSBアダプタで、/tty/sdaになっています。

さらに詳細情報を知る場合

lsusbで機器情報を取得出来なかったときは以下のコマンドを試してください。

例として自分がやった結果、/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3の部分のATTRS{idVendor}、ATTRS{idProduct}にベンダー・プロダクトが見つかりました。

ただ、その下/devices/platform/soc/3f980000.usb/usb1/1-1にも違うベンダー名(ATTRS{idVendor}=="0424")・プロダクト名(ATTRS{idProduct}=="2514")が表示されまして、その更に下にも他のベンダー名・プロダクト名が表示されていてUSB機器の接続されているケーブルやパーツのベンダー・プロダクトの詳細が表示されるようなので正しいベンダー名・プロダクト名を得るにはもう少し深掘りする必要がありそうです。

$ sudo udevadm info -a -p $(sudo udevadm info -q path -n /dev/ttyUSB0)
・・・省略
  looking at parent device '/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3':
    KERNELS=="1-1.3"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="ff"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="8"
    ATTRS{bMaxPower}=="96mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0254"
    ATTRS{bmAttributes}=="80"
    ATTRS{busnum}=="1"
    ATTRS{configuration}==""
    ATTRS{devnum}=="7"
    ATTRS{devpath}=="1.3"
    ATTRS{devspec}=="  (null)"
    ATTRS{idProduct}=="7523"
    ATTRS{idVendor}=="1a86"
    ATTRS{ltm_capable}=="no"
    ATTRS{maxchild}=="0"
    ATTRS{product}=="USB2.0-Serial"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="removable"
    ATTRS{rx_lanes}=="1"
    ATTRS{speed}=="12"
    ATTRS{tx_lanes}=="1"
    ATTRS{urbnum}=="14"
    ATTRS{version}==" 1.10"

  looking at parent device '/devices/platform/soc/3f980000.usb/usb1/1-1':
    KERNELS=="1-1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="02"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="2mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0bb3"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}==""
    ATTRS{devnum}=="2"
    ATTRS{devpath}=="1"
    ATTRS{idProduct}=="2514"
    ATTRS{idVendor}=="0424"
    ATTRS{ltm_capable}=="no"
    ATTRS{maxchild}=="4"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{rx_lanes}=="1"
    ATTRS{speed}=="480"
    ATTRS{tx_lanes}=="1"
    ATTRS{urbnum}=="75"
    ATTRS{version}==" 2.00"
・・・省略

固定デバイス情報を99-com.rulesに書く

次回再起動から固定デバイス情報をラズパイに認識させるように/etc/udev/rules.d/99-com.rulesファイルにベンダー名・プロダクト名を指定して好きなデバイス名で設定します。

99-com.rulesファイルは新規ファイルか、以下のように記入されているかもしれません。記入されていたらその下に新たに追加します。

$ sudo cat /etc/udev/rules.d/99-com.rules
SUBSYSTEM=="input", GROUP="input", MODE="0660"
SUBSYSTEM=="i2c-dev", GROUP="i2c", MODE="0660"
SUBSYSTEM=="spidev", GROUP="spi", MODE="0660"
SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0660"

SUBSYSTEM=="gpio", GROUP="gpio", MODE="0660"
SUBSYSTEM=="gpio*", PROGRAM="/bin/sh -c '\
        chown -R root:gpio /sys/class/gpio && chmod -R 770 /sys/class/gpio;\
        chown -R root:gpio /sys/devices/virtual/gpio && chmod -R 770 /sys/devices/virtual/gpio;\
        chown -R root:gpio /sys$devpath && chmod -R 770 /sys$devpath\
'"
・・・省略

ルールは以下のようになっていて先ほどlsusbで調べたベンダー名とプロダクト名を入れていきます。

KERNEL=="ttyUSB*", ATTRS{idVendor}=="ベンダー名", ATTRS{idProduct}=="プロダクト名", SYMLINK+="好きな名前"
  • KERNEL:ttyUSB*(ttyUSB0~ttyUSB9までの数字や1文字どれかにあてはまるデバイス)
  • ベンダー名(idVendor):1a86
  • プロダクト名(idProduct):7523
  • 好きな名前:ttyUSB_solar(ttyUSBは含んたほうがよさそう)

これを追加します。sudo vimで以下のように追加しましょう。

$ sudo vim /etc/udev/rules.d/99-com.rules
#以下を追加します。
KERNEL=="ttyUSB*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="ttyUSB_solar"

好きな名前で書いた「ttyUSB_solar」が今後指定するデバイス名になります。

再起動後に確認

99-com.rulesファイルにルールを書き終わったら再起動します。

$ sudo reboot

再起動してttyUSBを調べると以下のようにttyUSB0のエイリアス(ショートカット、別名)としてttyUSB_solarが表示されました。これでttyUSB0がttyUSB1などになってもttyUSB_solarエイリアスが作られるので今後のプログラムで「ttyUSB_solar」を指定するとエラーにならずにデータを取得できます。

$ ls -al /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0  4月 22 06:43 /dev/ttyUSB0
lrwxrwxrwx 1 root root         7  4月 22 06:43 /dev/ttyUSB_solar -> ttyUSB0

下準備 PHPやライブラリをインストール

今回はPHPライブラリPhpEpsolarTracerを使うので、Web開発でよくつかう言語のPHPを使います。

下準備としてラズパイにPHPをインストールします。それと、PHPからInfluxDBにアクセスするためにinfluxdb-phpが必要なので、まずはcomposerをインストールしてcomposerからinfluxdb-phpをインストールしていきます。

PHPをインストール

PHPはインストールしてあるのを前提で進めていきます。sudo dpkg -lコマンドを打って、PHPがなければインストールしてください。

$ sudo dpkg -l | grep php
#以下は例
ii  php-common                            1:49                              all          Common files for PHP packages
ii  php7.0-cli                            7.0.33-0+deb9u3                   armhf        command-line interpreter for the PHP scripting language
ii  php7.0-common                         7.0.33-0+deb9u3                   armhf        documentation, examples and common module for PHP
ii  php7.0-fpm                            7.0.33-0+deb9u3                   armhf        server-side, HTML-embedded scripting language (FPM-CGI binary)
ii  php7.0-json                           7.0.33-0+deb9u3                   armhf        JSON module for PHP
ii  php7.0-opcache                        7.0.33-0+deb9u3                   armhf        Zend OpCache module for PHP
ii  php7.0-readline                       7.0.33-0+deb9u3                   armhf        readline module for PHP
#php7.xx-fpmが入ってなければ以下のようにしてPHPをインストールする。FPMは(FastCGI Process Manager)コマンド用PHP
$ sudo apt-get install php-fpm 

composerインストール

composerはPHPのパッケージの管理システムです。

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ composer require crodas/influx-php:\*

composerは以下のinfluxdb-phpをインストールするために必要です。

composerの本体(vendorディレクトリ)は「/」ディレクトリに移動しておくことにします。

$ sudo mv  vendor /vendor

下のほうのPHPプログラムで「require '/vendor/autoload.php';」とautoload.phpを読み込む行がありますので、もしvendorディレクトリをルート「/」ディレクトリに移動しないで別の場所に置いた場合は、「require '/置いた場所のパス/vendor/autoload.php';」というように変更してくださいね。

phpからinfluxdbに接続するためのライブラリ インストール

こちらのライブラリ↓をインストールします。

influxdb-php: A PHP Client for InfluxDB, a time series database - influxdata/influxdb-php

このほかにInfluxdbと連携するPHPライブラリはInfluxPHPは古いので使わないことにした。

$ composer require influxdb/influxdb-php

以上でPHPが使えるようになって、PHPからInfluxDBに接続可能になりました。

Epever チャージコントローラーからデータを取得するライブラリ 接続テスト

いよいよEPEVERチャージコントローラーのデータを取得してデータを表示する段階にはいってきました。

PhpEpsolarTracerダウンロード

こちらですでにEpeverチャージコントローラーから各種データを取得するライブラリを作られている方がいらっしゃるので使わせていただきますm(_ _)m

Library for communicating with Epsolar/Epever Tracer BN MPPT Solar Charger Controller - toggio/PhpEpsolarTracer

ライブラリをインストールしていきましょう。

$ mkdir script
$ cd script
$ git clone https://github.com/toggio/PhpEpsolarTracer.git #gitからライブラリ取得
$ cd PhpEpsolarTracer #PhpEpsolarTracerに移動

PhpEpsolarTracer example_cli.phpサンプル実行

まずはサンプルを実行してみましょう。これでデータが表示されたら正常にUSBケーブルが接続されてデバイス名がttyUSB0になっています。

以下のようにかなりのデータが表示されます♪

$ php example_cli.php
Info Data
----------------------------------
00 Manufacturer:
Rated Data
----------------------------------
00 PV array rated voltage: 100V
01 PV array rated current: 40A
02 PV array rated power: 1040W
03 Battery rated voltage: 24V
04 Rated charging current: 40A
05 Rated charging power: 1040W
06 Charging Mode: 2
07 Rated load current: 40A

RealTime Data
----------------------------------
00 PV array voltage: 13.31V
01 PV array current: 0.66A
02 PV array power: 8.85W
03 Battery voltage: 11.96V
04 Battery charging current: 0.74A
05 Battery charging power: 8.85W
06 Load voltage: 11.96V
07 Load current: 0A
08 Load power: 0W
09 Battery temperature: 25.77°C
10 Charger temperature: 29.44°C
11 Heat sink temperature: 29.44°C
12 Battery SOC: 31%
13 Remote battery temperature: 0°C
14 System rated voltage: 12V
15 Battery status: 2
16 Equipment status: 15

Statistical Data
----------------------------------
00 Max input voltage today: 22.29V
01 Min input voltage today: 12.71V
02 Max battery voltage today: 12.65V
03 Min battery voltage today: 11.8V
04 Consumed energy today: 0KWH
05 Consumed energy this month: 0KWH
06 Consumed energy this year: 0.02KWH
07 Total consumed energy: 3.81KWH
08 Generated energy today: 0.03KWH
09 Generated energy this moth: 0.24KWH
10 Generated energy this year: 2.04KWH
11 Total generated energy: 11.63KWH
12 Carbon dioxide reduction: 0.01T
13 Net battery current: 0.72A
14 Battery temperature: 25.77°C
15 Ambient temperature: 25.77°C

Settings Data
----------------------------------
00 Battery type: 1
01 Battery capacity: 200Ah
02 Temperature compensation coeff.: 3mV/°C/2V
03 High voltage disconnect: 16V
04 Charging limit voltage: 15V
05 Over voltage reconnect: 15V
06 Equalization voltage: 14.6V
07 Boost voltage: 14.4V
08 Float voltage: 13.8V
09 Boost reconnect voltage: 13.2V
10 Low voltage reconnect: 12.6V
11 Under voltage recover: 12.2V
12 Under voltage warning: 12V
13 Low voltage disconnect: 11.1V
14 Discharging limit voltage: 10.6V
15 Realtime clock (sec): 0
16 Realtime clock (min): 0
17 Realtime clock (hour): 0
18 Realtime clock (day): 0
19 Realtime clock (month): 4
20 Realtime clock (year): 39
21 Equalization charging cycle: 770 day
22 Battery temp. warning hi limit: 43.55°C
23 Battery temp. warning low limit: 0.3°C
24 Controller temp. hi limit: 65°C
25 Controller temp. hi limit rec.: 615.36°C
26 Components temp. hi limit: 85°C
27 Components temp. hi limit rec.: 75°C
28 Line impedance: 85mOhm
29 Night Time Threshold Volt: 75V
30 Light signal on delay time: 0 min.
31 Day Time Threshold Volt: 5V
32 Light signal off delay time: 10 min.
33 Load controlling mode: 600
34 Working time length1 min.: 10
35 Working time length1 hour: 0
36 Working time length2 min.: 0
37 Working time length2 hour: 0
38 Turn on timing1 sec: 256
39 Turn on timing1 min: 256
40 Turn on timing1 hour: 0
41 Turn off timing1 sec: 0
42 Turn off timing1 min: 19
43 Turn off timing1 hour: 0
44 Turn on timing2 sec: 0
45 Turn on timing2 min: 6
46 Turn on timing2 hour: 0
47 Turn off timing2 sec: 0
48 Turn off timing2 min: 19
49 Turn off timing2 hour: 0
50 Length of night min.: 6
51 Length of night hour: 0
52 Battery rated voltage code: 60
53 Load timing control selection: 5
54 Default Load On/Off: 2591
55 Equalize duration: 1 min.
56 Boost duration: 0 min.
57 Dischargning percentage: 1%
58 Charging percentage: 120%
59 Management mode: 30

Coils Data
----------------------------------
00 Manual control the load: 1
01 Enable load test mode: 0
02 Force the load on/off: 0

Discrete Data
----------------------------------
00 Over temperature inside device: 0
01 Day/Night: 0

もし、エラーになる場合は指定しているデバイス名が違うのかもしれません。example_cli.phpを編集してデバイス名を固定した場合は以下のように変更するか、ls /dev/ttyUSB*コマンドを打ってデバイス名を確認しましょう。

$tracer = new PhpEpsolarTracer('/dev/ttyUSB0');
 ↓ 変更する
$tracer = new PhpEpsolarTracer('/dev/ttyUSB_solar');

データが表示されない場合は、ケーブルの接続を見直してみましょう。

PHPでデータをInfluxDBにインサート

Realtime DataとStatistical Dataのみ取得してInfluxDBにインサートしていきます。

PHPを多少知っている方はご自分の環境に合わせて変更してみてくださいね。設定は以下の5項目をあなたのラズパイの仕様に変更しましょう。

  • $db:InfluxDBのデータベース名
  • $table:InfluxDBのmeasurement名
  • $thost:InfluxDBで使うHOST名
  • $user:InfluxDBのユーザー名
  • $pass:InfluxDBのパスワード

InfluxDBのユーザー・パスワード作成方法はこちらで説明してあります。

PHPファイル(solar.php)をPhpEpsolarTracerでディレクトリの中に置きます。

$ cd /home/pi/script/PhpEpsolarTracer
$ vim solar.php

solar.phpは以下の内容で保存。

<?php
require_once 'PhpEpsolarTracer.php';
require '/vendor/autoload.php';

$host  = 'localhost';
$db    = 'sensor';
$table = 'solar';
$thost = 'Epever40A';
$user	 = 'root';
$pass	 = 'xxxxxx';

$tracer = new PhpEpsolarTracer('/dev/ttyUSB_solar');
$client = new InfluxDB\Client($host, 8086, $user, $pass);
$database = $client->selectDB($db);

$solararr=array();
if ($tracer->getRealtimeData()) {//Realtime Data
	for ($i = 0; $i < count($tracer->realtimeData); $i++) {
		$item = $tracer->realtimeData[$i];
		$key = str_replace(" ","-",$tracer->realtimeKey[$i]);
		if($item > 0){$solararr[$key]=$item;}
	}
}
if ($tracer->getStatData()) {//Statistical Data
	for ($i = 0; $i < count($tracer->statData); $i++) {
		$item = $tracer->statData[$i];
		$key = str_replace(" ","-",$tracer->statKey[$i]);
		$key = 'Stat-' . $key;//Realtimeと重複の名前があるために名前を変える
		if($item > 0){$solararr[$key]=$item;}
	}
}
//print_r($solararr);

$points = array(
	new InfluxDB\Point(
		$table, // the name of the measurement
		null, // measurement value
		['host' => $thost], // measurement tags
		$solararr, // measurement fields
		null // timestamp
	)
);
$result = $database->writePoints($points);
print_r($points);
?>

solar.phpをテスト実行

シェルからsolar.phpを実行すると以下のように配列でEPEVERチャージコントローラーから取得したデータが表示されます。

$ php solar.php
Array
(
    [PV-array-voltage] => 14.85
    [PV-array-current] => 0.52
    [PV-array-power] => 7.79
    [Battery-voltage] => 13.44
    [Battery-charging-current] => 0.58
    [Battery-charging-power] => 7.79
    [Load-voltage] => 13.44
    [Battery-temperature] => 27.18
    [Charger-temperature] => 31.99
    [Heat-sink-temperature] => 31.99
    [Battery-SOC] => 87
    [System-rated-voltage] => 12
    [Equipment-status] => 7
    [Stat-Max-input-voltage-today] => 20.98
    [Stat-Min-input-voltage-today] => 0.36
    [Stat-Max-battery-voltage-today] => 16.05
    [Stat-Min-battery-voltage-today] => 8.63
    [Stat-Consumed-energy-this-year] => 3.93
    [Stat-Total-consumed-energy] => 7.72
    [Stat-Generated-energy-today] => 0.06
    [Stat-Generated-energy-this-moth] => 0.14
    [Stat-Generated-energy-this-year] => 18.69
    [Stat-Total-generated-energy] => 28.28
    [Stat-Carbon-dioxide-reduction] => 0.02
    [Stat-Net-battery-current] => 0.6
    [Stat-Battery-temperature] => 27.19
    [Stat-Ambient-temperature] => 27.19
)

あとはInfluxDBでデータがちゃんとインサートされているかみていきましょう。

データがインサートされたかInfluxを確認

シェルでinfluxコマンドを使ってデータがちゃんと登録されているか確認してみましょう。

influxコマンドでDBの中に入ってuse sensorでsensorデータベースを選びます。その中のmeasurement(table)のsolarの中身を「select * from solar」で全部表示させます。

すると以下のように表示されます。↓例では5個のレコードが表示されました。

$ influx
Connected to http://localhost:8086 version 1.7.4
InfluxDB shell version: 1.7.4
Enter an InfluxQL query
> use sensor
Using database sensor
> select * from solar
name: solar
time                Battery-charging-current Battery-charging-power Battery-temperature Battery-voltage Charger-temperature Equipment-status Heat-sink-temperature Load-current Load-voltage PV-array-current PV-array-power PV-array-voltage Remote-battery-temperature Stat-Ambient-temperature Stat-Battery-temperature Stat-Carbon-dioxide-reduction Stat-Consumed-energy-this-year Stat-Generated-energy-this-moth Stat-Generated-energy-this-year Stat-Generated-energy-today Stat-Max-battery-voltage-today Stat-Max-input-voltage-today Stat-Min-battery-voltage-today Stat-Min-input-voltage-today Stat-Net-battery-current Stat-Total-consumed-energy Stat-Total-generated-energy System-rated-voltage host
----                ------------------------ ---------------------- ------------------- --------------- ------------------- ---------------- --------------------- ------------ ------------ ---------------- -------------- ---------------- -------------------------- ------------------------ ------------------------ ----------------------------- ------------------------------ ------------------------------- ------------------------------- --------------------------- ------------------------------ ---------------------------- ------------------------------ ---------------------------- ------------------------ -------------------------- --------------------------- -------------------- ----
1555893814115322952 0.42                     5.28                   23.91               12.58           26.67               15               26.67                              12.58        0.38             5.28           13.89            12                         23.91                    23.91                    0.01                          0.02                           0.64                            2.44                            0.05                        13.93                          21.9                         12.4                           0.18                         0.45                     3.81                       12.03                       167.97               Epever40A
1555893852560052155 0.43                     5.4                    23.95               12.58           26.7                15               26.7                               12.58        0.38             5.4            13.88            12                         23.93                    23.93                    0.01                          0.02                           0.64                            2.44                            0.05                        13.93                          21.9                         12.4                           0.18                         0.42                     3.81                       12.03                       44.26                Epever40A
1555894021818116824 0.35                     4.4                    24.03               12.59           26.79               15               26.79                              12.59        0.31             4.4            13.89            12                         24.02                    24.02                    0.01                          0.02                           0.64                            2.44                            0.05                        13.93                          21.9                         12.4                           0.18                         0.51                     3.81                       12.03                       322.68               Epever40A
1555894082050548083 0.46                     5.79                   23.9                12.59           26.82               15               26.82                              12.59        0.41             5.79           13.9             12                         23.9                     23.9                     0.01                          0.02                           0.64                            2.44                            0.05                        13.93                          21.9                         12.4                           0.18                         0.45                     3.81                       12.03                       542.56               Epever40A
1555894141812646021 0.46                     5.78                   23.98               12.58           26.86               15               26.86                 0.03         12.58        0.41             5.78           13.88            12                         23.98                    23.98                    0.01                          0.02                           0.64                            2.44                            0.05                        13.93                          21.9                         12.4                           0.18                         0.42                     3.81                       12.03                       487.58               Epever40A

こうなっていればもう少しで完成!あとは定期的にPHPプログラムを実行しておけば勝手にデータが蓄積されていきます。

Cronで定期的に実行

Cronで定期的にsolar.phpを実行して、これで設定完了なのであとは完全放置。

$ crontab -e #以下の行を追加
*/1 * * * * /usr/bin/php /home/pi/script/PhpEpsolarTracer/solar.php

Grafanaでグラフ表示

データを定期的にDBに投げる仕組みができたので、最後にデータを人間が見やすいようにフラフ表示していきましょう。

グラフ表示するまでの道のりは少し長いけど以下を参考にしてくださいね。

自宅環境センシングの2回目の記事として今回はラズパイ(Raspberry Pi)にデータベースのInfluxDBを入れて将来的にセンシングしたデータをInfluxDB保存していきます。 そして次回は、GrafanaというデータをWebで美しく表示してくれるデータ可視化ツールとラズパイのCPUやRAM使用率な...
センシングしたデータを保存するInfluxDBは前回ラズパイに構築したので今回はGrafana+telegrafを入れて設定していきます。おまけとしてChromografとvcgencmdを使ってCPU温度やCPU使用率・ARMのデータを取得してInfluxDBにインサートするところまでやっていきます。 I...

ソーラー発電のデータをグラフ化すると以下のようになりました。

Solar.json

Grafanaでグラフ表示は手っ取り早く以下をダウンロードして、ご自分の見やすいように改造しちゃってください。

なおGrafanaのJsonファイルのアップロード方法はこちらに書いてありますので参考にしてくださいね。

solar.jsonファイルをGrafanaにアップロードすると上の画像と同じように表示されます。(ホスト名やDB名を変更した場合は手直ししてくださいね。)

ソーラー発電データのハック グラフ化完成!感想

これでソーラー発電の発電量やバッテリーの状態がグラフにできました。

ただ、定期的にUSB RS485変換アダプタが壊れるので予備が必要かもしれません。今のところ2個壊れただけなので、もしかしたら最初に使っていた2個が不良品だったのかもしれません。

しかし最近は梅雨なのでソーラー発電せず、3日置きにバッテリーを充電しないといけないので面倒、マンションの屋上とかにソーラーパネルを設置したくなってきた。不動産屋さんが許可してくれないだろうなぁ・・・(泣)

本格的に自作ソーラー発電されている方は参考にしてくださると喜びます♪

はやくもディープサイクルバッテリーが ヘタった!

自作ソーラー発電で発電したディープサイクルバッテリーを快調に使っていましたが9月頃になったら??アレ?電圧が下がったまま上がらなくなったゾ。

どうやらディープサイクルバッテリーは使ったらすぐに満充電しておかないとヘタリが早いことを最近知って・・・もう遅い、というより窓際ソーラー発電なので発電量が少なく、発電した電力よりも消費する電力のほうが多いために常にバッテリーの充電状態が半分以下になっていたようで、

バッテリーが ヘタってしまったヨ~(泣)

ディープサイクルバッテリーってこんなに早くヘタるんでしたっけ?以前キャンプで使ってた時は頻繁には使ってないにせよ2年は持っていたので半年ほどでヘタるのはちょっと悲しい。

ということで、どのくらいバッテリーがヘタってしまったかチェックしたくなってバッテリーテスターを導入してみました。↓

KONNWEI KW600 Professional

KONNWEI KW600 Professional

まずはヘタってしまったディープサイクルバッテリー、充電器も買ってあるので充電器でヘタリを治そうとしてますが・・・ダメっぽい。

チェックするディープサイクルバッテリーとバッテリー充電器

ソーラー発電で使っているバッテリーはボイジャーM31MFディープサイクルバッテリー、コレが使って半年ほどでヘタってきました。使い方がかなり悪かったようです(泣)

過放電しすぎということですね・・・定期的に充電器で充電してましたがそれでもダメだったみたいです。

そして、こちら↓のバッテリー充電器で活性化させてディープサイクルバッテリーが復活するか試してみます。

バッテリー充電器 OMEGA PRO OP-0007

OMEGA PRO OP-0007
OMEGAPRO OP-0007

オートメンテナンス機能あり

まずはディープサイクルバッテリーがどのくらいヘタってるのかバッテリーチェッカーでチェックしてみます。

KONNWEI KW600 Professional 開封

海外通販Banggoodからやってきたバッテリーテスターをみていきましょう。

日本で売っている↓こういうのの進化版?というようなテスターです。やってきたKONNWEI KW600 Professionalは日本語も表示可能なので素人でも扱いやすい。

ちょい潰れ気味でした。

KONNWEI KW600 Professional

本体・取説(英語)・MiniUSBケーブルが入っています。

KONNWEI KW600 Professional

本体下に電源のMiniUSBケーブルをさすと動作しますが、設定やテストのみに使う。

実際に使うときはUSBケーブルは接続せずに、バッテリーにクリップを挟んでバッテリーから電力を供給します。

KONNWEI KW600 Professional

ディスプレイがかなり見やすい

まずは設定の言語で日本語に変えました。

KONNWEI KW600 Professional

ディスプレイはかなり見やすくなっています。↓この状態ではMiniUSB接続した状態なのでバッテリーテスト項目が無い。

KONNWEI KW600 Professional

それではディープサイクルバッテリーに接続してバッテリーがどのくらいヘタっているかテストしてみましょう。

ディープサイクルバッテリーのヘタり具合をテスト

まずは結果から・・・

はい、「要交換」でました(泣)

KONNWEI KW600 Professional

気をとりなおして、バッテリーテストの方法をみていきましょう。

バッテリーテスト

赤いクリップを「+」、黒いクリップを「-」にするとバッテリーテスターの電源が点いて「電池残量」が表示されます。↓

KONNWEI KW600 Professional

電池残量を選択で車外を選びました。

KONNWEI KW600 Professional

ちなみに車内にすると↓以下のバッテリーテスト・クランキングテスト・充電テストの3つのテストができるようです。

クランキングテストなど、まだ使い方が分からない。

KONNWEI KW600 Professional

続いてバッテリーの種類を選ぶ、よく分からないので?多分通常電池でしょう。

KONNWEI KW600 Professional

CCAはバッテリーに書いてある625CCAに合わせました。

KONNWEI KW600 Professional

テストしてみます。

結果・・・・ズーン・・・何度見ても凹みます(泣)

KONNWEI KW600 Professional

SOC(電池残容量)、SOH(劣化状態)というようです。どちらにせよ・・・0なので使えないということですね。(せめて1とか2くらいあったら希望はあるのですが、ゼロ・・・というのが辛すぎる。)

KONNWEI KW600 Professional

波形も表示可能。

KONNWEI KW600 Professional

なんとかバッテリーが復活しないか充電器で試す

バッテリーを復活できるスゴイ充電器なので、テストしてみます。

まずは通常の充電で10A充電してみますが、いきなり75%の充電になって3時間くらいで満充電になります。

KONNWEI KW600 Professional

CCA値設定

電源ボタンを押して、左側のCCA値設定ボタンでCCAを600に合わせて充電開始すると・・・「エラー」なります。

KONNWEI KW600 Professional

メンテナンスモード

電圧が低くなっているときに使うモードで、「オプション」ボタンでメンテナンスとレインフォースドアクティベーションを選べる。

メンテナンスを選ぶと1日ほどで表示が停止する。しかしバッテリーは復活せず。

KONNWEI KW600 Professional

レインフォースドアクティベーションは高電圧・光電流でバッテリーを活性化させる方法、最終手段だそうです。コレをやっても改善されず・・・

何回もやれば復活するのかな?

ヘタったディープサイクルバッテリーの使いみち

ヘタったのであまり使いみちはなさそうですが、一応電気は来てましてソーラー発電も続いていますので、ちびちび使えば問題なさそう。

USB昇圧器で再び12Vにする

12Vまでなかなかいかなくなったディープサイクルバッテリーを12Vないと使えない機器に接続するときはUSBの昇圧器↓を使って昇圧してなんとか12Vで使えます。

ディープサイクルバッテリー

ソーラー発電しないときは7~9Vくらいまで電圧が下がってしまう・・・

ebayで600円ほどで売ってたので買いました。

降圧してUSB機器に使おう

バッテリ-の電圧が下がって7VでもUSB接続の機器だったら5Vにして使えそうなので、このような↓12Vを5VUSBで使えるようにしてくれるパーツをebayで買ってUSB機器で使えるようにもできます。

海外通販Banggoodにも激安なUSBコンバーターが売ってます。

こういうのでバッテリーの電力を5Vにして使ってましたが、バッテリ-がヘタってしまったので今後はたくさん接続せずに控えます。

KONNWEI KW600 Professional 使ってみた感想

バッテリーテスターは日本語にもなってかなり使いやすいものでした。ただ自分がバッテリーに対しての知識がないためにこのテスターをまだ使い切れていないのでこれから用語などを勉強して使いこなしていきます。

ヘタってしまったディープサイクルバッテリーの使い方がちょっとだけ分かり良い勉強になりました。というより以前キャンプで使っていたときはディープサイクルバッテリー2台使ったけどこんなに早くヘタったのだろうか?気が付かなかった。家に帰ったら満充電したのでヘタらなかったのでしょうね。

もうこういうバッテリーは気を使って大変なので、今度はリチウムイオン電池のポータブルバッテリーが気になってきた。

KONNWEI KW600 Professional

KONNWEI KW600 Professional

※この商品はサンプル提供していただいてレビューしています。

スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。