2017年10月28日土曜日

自由研究 その後

夏の自由研究についてこの記事で書いたのだけれど
1ヶ月くらいかけてぼちぼちコーディングして
cronで定期動作するpythonスクリプトが完成した。
一応、”雨予報(特にゲリラ豪雨の短期予報)”については 満足できるものができた…と思う。

【やったこと】
pythonとはなんぞや というところの勉強からから始まり(参考書も買った)
・CSVへの書き込み、読み出し
・モジュールの追加
・取得画像からのカラー情報読み出し、雨量分布パラメータ演算関数の定義
 (過去の雨量分布との比較から、今後天気がひどくなるのか回復するかの判断)
・パラメータを扱うクラスやメソッドの定義
・予報結果に基づいたGPIOの動作(LEDを光らせる、ブザーを鳴らす)
・I2C対応液晶ディスプレイによる予報結果の表示
・I2C液晶への天気予報アイコン表示

などなど、
一通りRaspberry Pi でやれそうだと妄想した内容は
実装できたみたいだ。
ここのところ雨やら台風やらで天気が荒れている中
ほぼ期待通りの動作をすることが確認できている。
(本来の目的である夏のゲリラ豪雨には間に合わなかったけども)

【仕上げ】
しばらく適当なブレッドボードを占拠していたけれど
あまりにも見苦しいのをどうにかしたいのと
一応ここで区切りをつけて完成、の意味で
ユニバーサル基板に回路をハンダ実装してみた。

雨続きで庭仕事とかもやれないしね。

で、できあがったのがこちら


トランジスタでONするブザーと、GPIO直結の動作確認LED、あとは、SDA SCL 5V GNDを液晶用に引き出しただけですが。
ブレッドボードのスパゲティと比べれば、だいぶスッキリできました。
適当なUSB電源に繋いでおけば
止めない限り、インターネット上の雨量情報を監視しつづけてくれます。 なんちゃってIoTということで。
それなりに使えるなという印象なので、できればもう少しちゃんとしたエンクロージャを着せてあげたいな。適当にMDFかなにかで作ろうかな。


見た目はスッキリしていても、中身がスパゲッティなのでコードの内容は秘密。
プログラミングのスキルはもう少し磨かないとね・・・