見出し画像

温湿度露点ロガー(S0100-0) 3

タイトル画像は自作ケースに収めた写真です。センサーのケースは百均(セリア)で購入した歯ブラシカバーです。3個入りで税込み110円でした。
3Dプリンターで作ろうかとも考えましたが、価格に見合うメリットを創り出すアイディアが無く、当分はこのまま使います。

概要

B01-1とRaspberry Pi に「SHT31使用 高精度温湿度センサモジュールキット」を繋いで温度湿度の他に換算露点を記録するロガーを作る試みです。

B01-1は8桁x2行のキャラクタLCDと青、緑、赤のLED、ブザーとタクトスイッチを備えているので、次のようなことが可能そうです。

1.測定値や時刻をリアルタイムに表示する
2.露点が閾値を超えたら結露警報を出す
3.温度が閾値を超えたら注意喚起する
4.湿度が閾値を超えたら表示する

LCDは8桁x2行しかないので、全ての測定値を一度に表示することが出来ず、タクトスイッチでページ?を切り替える必要がありそうです。

警報、注意喚起、表示はLCDに限らず、LEDやブザー、E-mailに出力することが可能そうです。ブザーはタクトスイッチで鳴動を止める機能も必要そうです。

仕様をまとめてみる

どんな機能を作るのか、少しまとめてみようと思います。
作りながら考えが変わるかも知れませんが、事前に考えをまとめます。

LCD 表示
表示は後述のボタン操作で切り替えます。

THD Log.   プログラム名とデバイスID
S0100 00
06 15:51   日時と露点
+25.0 ℃
 27.3 ℃    気温と湿度
 56.7  % 

ボタン操作
ー ボタン  (左) デクリメント・表示切替
+ ボタン  (中) インクリメント・表示切替(-ボタンとは逆順)
SET ボタン  (右) 設定・エンターの機能・鳴動中のブザーを止める

アラーム
露点、気温、湿度の内いずれか1つについて、MAX. または MIN.の閾値を設定して、LED表示(緑/赤)ブザー鳴動でアラームする。
(ブザーを鳴らすかどうかは選択可能にする。)

設定はID.txtファイルを書き換えて行う。(ボタン操作では変更出来ない。)

SQLite 記録
15分、30分、1時間いずれかの間隔でSQLite 簡易サーバーに露点、気温、湿度と日時を記録する。(原則として)日時はデバイスID=00のみが記録(INSERT)し同じ時刻のデータが1レコードを構成する。
デバイスIDによって記録するカラムが異なる。
記録するタイミングは所定の時刻よりデバイスID x 2 [秒]だけ遅れて記録する。(同時刻にSQLite 簡易サーバーにアクセスすることを抑制する。)

ID.txt (案)
1行目は読み飛ばす。

# serverIP, port, ID, pich(0,1,2), alarm項目(D,T,H), alarm(min/max), 閾値, buz(on/off)
192.168.11.203
50007
00
0
D
max
20
off

反省

書きながら、「これじゃあ伝わらないだろうな~」と思います。
まずは、私個人の備忘録とし、必要に応じて取説などの形で書き直します。

ともあれ、ザックリ以上のような物を作る予定です。


出来ればサポート頂けると、嬉しいです。 新しい基板や造形品を作る資金等に使いたいと思います。