背景
電源のないところでラズパイを制御させたい
しかし、ラズパイの消費電力は半端なく大きく、
1週間モバイルバッテリーを使って駆動させることは無理
しかし、畑の真ん中で稼働させたい、
カメラや3Gの制御はArduinoよりもラズパイのほうが楽!
色々考えた結果がこちらである。
何ができるのか
畑の真ん中の電源がないところで、定期的に畑の様子を撮影し、
3G回線でインターネットへ送信できるようになった。
畑の様子を見たいけど、近くじゃないから頻繁には行けない、
そんな用途にピッタリでした。
撮影以外にも、距離計をつければ水位の監視が可能かも。
これで、台風とかで畑が心配になっても、安心して様子を確認できますね。
外観
どれくらい持つのか
1時間に1度の撮影を繰り返し、
10000mAhのモバイルバッテリーで1週間もちました。
これで、畑に行くのは1週間に1度で済むようになります。
仕組み
ラズパイをずっと起動させてしまうと、
すぐにバッテリーの残容量がなくなってしまうので、
必要なときだけ起動させることにします。
ラズパイで撮影&送信が完了したら、シャットダウンさせます。
しかし、ラズパイはシャットダウンした後も、結構電池を消費するので、
電源を断つ必要があります。
また、ラズパイは1度シャットダウンさせてしまうと、
自分で起動することができません。
そこで、電源制御するマイコンが必要になります。
今回はESP8266を使用しました。
ESP8266には技適が通っているWi-Fiが搭載されていますが使用しません。
代わりに、Deep-Sleepという機能を使用します。
Deep-Sleepを使用すると電流は20nAまで抑えられ、節電効果が抜群です。
また、一定時間が経つと、自分で起動することもできます。
ESP8266で電源制御をするために、OUTPUT先にはスイッチ回路を設けました。
そのスイッチ回路で、ラズパイに供給する電源をON/OFFします。
ラズパイがシャットダウンした後に電源供給をOFFにするためには、
ラズパイからESP8266向けに信号線を設けました。
以上の流れを整理すると以下です。
- ESP8266がDeep-Sleepから目覚める
- ESP8266経由でスイッチ回路をONにする
- スイッチ回路経由でラズパイへの電源供給が開始する
- ラズパイが起動する
- ラズパイのカメラで撮影する
- ラズパイの3Gモデムでインターネットへ画像を送信する
- ラズパイからESP8266に信号を伝える
- ESP8266が検知するとラズパイがシャットダウンする相当時間を待つ
- ラズパイがシャットダウンする
- ESP8266経由でスイッチ回路をOFFにする
- スイッチ回路経由でラズパイへの電源供給が停止する
- ESP8266がDeep-Sleepになる
- ESP8266が暫く待つ
- (最初に戻る)
回路図
部品
- Raspberry Pi 3 Model B
- ESP8266 (ESP-WROOM-02)
- リレー&ダイオード
- プルアップ/プルダウン用の抵抗
- 3.3V 3端子レギュレーター
- 10000mAh モバイルバッテリー
詳細編
構成の詳細は2回目に掲載します。
参考
【ESP8266】長時間deepsleepするとモバイルバッテリーがOFFになっちゃう件をどうにかする
https://qiita.com/rukihena/items/59a355926cb116e6d572