Raspberry Pi zero に環境センサとカメラモジュールを搭載した,屋外・遠隔地の気温・湿度・気圧・日照度を測定しつつ,ライブカメラとしても機能するスタンドアローンの"モニタリングポスト"を構築したい,というお話
動機
blipmapで上空のサーマルや風向風速を描画するサービスを構築するプロジェクトは進行中だが,それとは別にライブカメラのようなものを作ってみたいと思った. で,どうせ作るならblipmapと地表の実環境との差異も比較できたら面白いなと思ったので,VPS鯖も持っていることだしRaspberry Piを使って,測定したデータをHP上にも表示したいとも考えた.
実現したい機能
- 気温・湿d(ry の測定
- ライブカメラ機能
- 収集したデータをにVPSに蓄積
- 蓄積したデータをHPで公開 (VPS側)
- (できれば)電源供給もスタンドアローン化
必要になる(であろう)機材
- ラズパイ本体 <-- RPi zero(w)を購入済み
- 環境センサ
- カメラモジュール <-- RPi用広角カメラモジュールを購入済み
- データ転送用の回線機器 <-- USBモデム(L-03D)と0simを契約済み
- VPS <-- 既にある
- microUSBに出力可能なソーラーパネル・冗長性確保のためのモバイルバッテリーなど
実現したい機能に対して,多分これくらいは必要なんじゃないかと考えている.
どうやって実現するか
- データ収集は,環境センサとカメラモジュールをラズパイに取り付ければ,おそらく少しのシェルスクリプトを書いてcrontabあたりで実行すれば解決できるのではないか,と思っている.
- データの転送に0simを使う予定だが,0simは通信量が月500MBを超えてしまうと従量課金されてしまう.環境データはともかく,カメラモジュールのデフォルト設定で撮影する画像データは2MBを軽く超え,そのまま転送すると100%従量課金枠に突入するので,imagemagickあたりを使って300KB程度にまで圧縮・変換してから転送したい. また,スペックの問題もあるので厳密なライブカメラではなく,15分毎に撮影するようにするものとする.15分毎に300KBなら,1ヶ月ずっと走らせてもメンテ用の通信枠も一応残る計算ではある.
- データ転送はcronとscpあたりでどうにかできないかなあ,などと考えている.
- 俺自身の実装力のNASA <--これ大事
課題
- 正直な所,電源供給だけはソーラーパネルだけでは不安しかない.(が屋外にコンセントなんてあるわけないよなあ・・・)
- 仮に電源の問題が解決しても,雨風にさらされる屋外に常時設置する予定なので,防水加工なり強風対策などといったことも解決しないといけない.
- 0sim回線では多分,ラズパイに対してsshでの接続は難しいだろうから,VPSを基点にリバースシェルを用いて接続させる仕組みが必要になるかもしれない.
現状
RPi zero + Camera + L-03D(with 0sim)
— ねそ (@neso8492) October 27, 2017
環境センサとソーラーパネルを取り付ればスタンドアローンのIoTデバイスになる予定 https://t.co/Dxyf3bqi0J pic.twitter.com/SlO9AmKNmI
購入済みのパーツを組み合わせて,ラズパイゼロにGPIOピンを半田付けしたところまでしか進んでない. ソフト面の技術力はからっきしなんだよ・・・