家庭菜園ロガーの製作:回路

電源

 単4エネループを3本直列で使う。エネループの公称電圧は1.2Vなので、3.6Vで動作させることになる。満充電時は4.2V程度を示すこともある。Raspberry Pi Pico W の動作電圧は 1.8〜5.5V であり、問題ない。

 パナソニックと三洋ブランドのを同時に使ったりして、行儀が悪いのですが、ちゃんと動いています。電池容量がなくなると、3.2Vを切ったあたりから急に電圧が落ち始めて、2.6V 程度になると動作停止した。電圧が下限値の 1.8V より高くても、必要な電流量を引き出せなければ、動作できないのだろう。

充電回路

 実際に運用した製作例として、下の2つの記事を参考にした。

 今回の回路の消費電力については、後で示す通り、平均 3.7 mA 程度となっている。今回使用する秋月のソーラーパネルは、最大電流が 65 mA。計算上は、1日あたり 3.7/65*24 = 1.37時間フルパワーで充電できれば、連続運用が可能になる。(実際に流す電流はもっと小さい。後で再計算する。)

 上の2つの記事の回路を比べてみると、「工作と競馬2」さんの回路はかなり複雑。使用されているソーラーパネルが最大 9V 出力であることと、リチウムイオン電池を使うために制御回路が必要であることから、必然的に複雑になる。一方、「さとやまノート」さんの回路は極めてシンプルで、ダイオードを1個はさんでソーラーパネルとエネループの正極を接続している。使っているパネルもエネループも同じなので、この回路を流用することにした。

 「さとやまノート」さんの回路図では、ダイオードの品番が特定されていない。手元にあった、普通のシリコンダイオード(小信号用、1SS133)とショットキーバリアダイオード(1S10)を使って試してみた。回路図は下の通り。ソーラーパネルと本回路の間に自作の電流電圧ロガーをはさんで、電流・電圧値をモニターする。

 結果は下のようになった。

 直射日光照射の条件で、1S10の方がやや電圧が低く、電流がわずかに大きくなっている。これは、ショットキーバリアダイオードの方が電圧降下が小さいことと一致している。また、日陰の条件(散乱光のみ)では、電圧は出ているが、電流値は著しく小さくなる。1S10 の方は 2 mA 程度流れており、1SS133 の方はほぼゼロとなった。この結果からは、1S10を選ぶのが妥当と言える。ショットキーバリアダイオードはシリコンダイオードに比べて漏れ電流が大きいので、その影響がどう出るかも検証が必要。(漏れ電流の電流値はもともと非常に小さいため、直接測定では評価が難しい。実際に運用してみて電池電圧の低下を見る必要がある。)

 エネループなどのニッケル水素電池では、「継ぎ足し充電」をするとメモリ効果が発生して、充電できる容量が小さくなる。これを防ぐためには、少量の電流で充電する「トリクル充電」を行えばよい。トリクル充電のための電流の最大値については諸説ある。1時間で満充電になる電流値を 1 C とするとき、C/15, または C/40 が適切という資料がある。

 単4エネループは 750 mAh なので、C/15 = 750/15 = 50 mA, C/40 = 750/40 = 18.8 mA。上の結果だと、直射日光時の電流は 28 mA 程度だった。これは C/40 よりは大きいが C/15 よりは小さいので、電池に大きな負担をかけることなく充電できると考えられる。回路の消費電流を平均 3.7 mA として、1日に平均 3.7/28*24 = 3.2 時間直射日光が当たっていれば、連続稼働できることになる。設置場所の都合で午前中しか太陽が当たらないので、午前中晴れの日が続けばよい。

土壌水分センサー

 土壌水分センサーは、3.3V の電源を供給して、出力をアナログ値で読み取ればよい。問題は電源供給の方法である。このセンサーは 5 mA 程度の電流を消費する。2本のセンサーを 3.3V ラインに直結すると、測定していない間もずっと 10 mA 程度の電流を消費することになる。これは好ましくないので、「測定するときだけ電源を供給する」ようにしたい。

 最初は、「さとやまノート」さんの記事に倣って、Raspberry Pi Pico W の GPIO から電源を取ろうとした。これは一応機能したのだが、実験途中で土壌センサーが壊れてショートしてしまい、それに伴って Pico が壊れてしまった。おそらく GPIO に過大電流が流れたことによると思われるが、詳細はわかっていない。ともかく、土壌センサーは屋外の土に埋め込むため、故障の確率は高いと考えられる。故障したときでも他に影響を与えない回路構成にしないとまずい。

 次の記事の回路図を参考にして、下の回路を作成した。「ソーラー発電式自動水やり器を作る(5) --- 無動作時消費電力の低減 ---」(工作と競馬2、2020/08/31)。

 GPIO18 を High にすると、トランジスタ Q1 がオンになり、それに伴ってトランジスタ Q2, Q3 もオンになって、3V3 ラインから電源がセンサーに供給される。センサーが故障したとき、「断線する」ケースと「ショートする」ケースが考えられる。断線したときはセンサーに電流が流れないだけなので、本体回路に影響はない。ショートしたときは、センサーに流れ込む電流は R3, R4 の電流値に Q2, Q3 の増幅率をかけたものが上限になるので、際限なく電流が流れてしまうことはない。

 この回路を使って、センサA, Bの接続端子に実際にセンサを接続、または開放(切断時を想定)、または+/-を結線(短絡時を想定)して、どういう電流が流れるか、実験してみた。「電流」は回路全体に流れている電流(mA, ラズパイピコの消費電流を含む)、「電源」は電源端子の電圧 (V)、「出力」はラズパイピコで読み取った値(電圧/3.3*1024)。

電流センサA電源センサB電源センサA出力センサB出力
正常813.263.26676670
A切断763.303.26209671
A短絡10003.264670
B切断753.263.30677188
B短絡1013.2606764
両方切断673.303.29200198
両方短絡1180044
A短絡B切断9503.304192
A切断B短絡953.3001874

 以上の結果から、A, Bの接続端子は独立に機能していることがわかった。また、「両方切断」時の 67 mA をラズパイピコの消費電流とすると、正常なセンサは 7 mA 程度、「短絡」状態では 25 mA 程度が流れることがわかった。短絡時の消費電流が大きくなってしまうが、ラズパイピコの 3V3 端子の電流上限値 (300 mA) には余裕で収まっている。

温湿度センサー

 電源・GND・GPIO 1本をつなげばよい。データを送信したら自動的に省電力モードに入るので、電源供給については特別なことはせず、直接 3V3 ラインにつなぐ。

回路図

 以上をまとめて、次のような回路図とした。

 秋月のCタイプユニバーサル基板に組んだ。部品配置のイメージはこんな風になる。