以前作った換気扇の自動制御システムは、改良したいことを挙げればキリがないものの、ちゃんと使えている。: 通常時は間欠的に(今はon: 26分, off: 14分, on率: 65%)換気扇が回り、ガスコンロを使ったり作業をしたりしてCO2濃度が高くなった場合は低くなるまで連続で回る。
その後、ちょっと思い付いて、以下のように 動的(言ってみれば適応的)に換気扇の動作モードを変更する機能を追加してみた。
基本機能: 定常的にCO2濃度が高目の場合は換気扇のon率(回している時間)を増してCO2濃度の上昇を抑え、低目の場合は逆にon率を下げて余計な換気を抑えるようにする。
当初は「余計な換気を抑える」必要は ない気がしていたものの、外からの臭いを取り込む可能性をなるべく減らすためと、仕組み的に可能なので(= おもしろそうだから)入れてみた。 (こういう余計な思いつきが面倒を増やすのだ!www) だが、近頃、部屋の冷暖房効率の改善に繋げられそうなことに気付いた。
この機能は、今まで僕が手でやっていたこと(CO2濃度が普通でない場合、PCのリモコンアプリで換気扇のモードを切り替える)で、それを自動化する。
処理: 難しいものではなく、以下のようにした。
- CO2濃度の取得・チェック処理をする時に、以下を実行する。
- CO2濃度の長時間移動平均(→ LTMA_CO2)を求める。
- 今は換気扇の間欠運転周期(今は全部40分)の2倍の時間(→ 80分)分を求めている。
- この値は換気扇の運転周期の整数倍であることが望ましいので、その時に設定されている周期から計算している。
- 今は換気扇の間欠運転周期(今は全部40分)の2倍の時間(→ 80分)分を求めている。
- LTMA_CO2に従って換気扇の動作モード(→ on率)を切り替える。
- ただし、CO2濃度が高くて換気扇を連続で回している場合を除く。
- LTMA_CO2のしきい値と動作モードの対応表を使っている。: 今は以下の設定にしている。
- LTMA_CO2: on率, ()内は動作モード
- <= 670ppm: 50% (LL)
- <= 710ppm: 55% (L)
- <= 750ppm: 65% (M)
- > 750ppm: 70% (H)
現状の制限として、PCで制御しているため、外出時や寝る時などにPCを停めると その時点の設定で固定されるので、不要に高いon率が続くことや、低いon率が続いて就寝中にCO2濃度が高まってしまう可能性がある。そのため、余り大胆なon率は設定できない。
これについては、PCを停める(スリープ、停止)前に通常のon率のモード(上の"M")に戻すとか、ラズベリーパイのようなマイコンに移植して常時制御すれば対応できるが、まあ、そこまでこだわることではないので、このままで良しとしている。
ちゃんと動いているものの、「換気が最適化されているなあ」などという体感は ないし、グラフを見ても特段の変化は見えない(効果が ない訳では ないだろうが・・・)。なお、グラフが右肩下がりなのは、近頃は なぜかCO2濃度が低目になっている※ためだろう。
※原因は分からないが、暑い時は身体の代謝が増えて排出するCO2濃度が増えていたのが涼しくなって減ったためか、外気の濃度変化のためかと想像している(そういうことがあるか不明 ← 少し調べたところでは(下を参照)、逆のようだ・・・)。
身体の代謝は主に体温維持のためだそうで、夏に減り冬に増えるようだ。 (→ 参照)
ただ、個人的な経験からの想像だが、身体に(特に夏の熱い)日ざしや外からの輻射熱が当たって暑くなると、身体の活度のようなものが増して代謝が増すのではないかと思う。その証拠に汗をかく。それは作業で汗をかく時と同様で、代謝が増しているのではないか?
また、外気のCO2濃度については、概ね、光合成の活発化する夏に減り、冬に増えるようだ。 (→ 参照) ただ、参照ページを良く読むと(例: 図3)、堂平山では2-7月に高く、9月頃に最小になっているのには合っていそうだ。
もし代謝も外気も関係ないとすると、センサの温度補正が うまく行っていないことが考えられるが、今、天気が良くて室温が高い(約28℃)にも関わらずCO2濃度は低い(約670ppm)ので、温度補正は大丈夫そうだ。
あとは、付近の道路の通行量(あるいは渋滞頻度)が減ったとか、工事が下火になった関係だろうか?
ただ、この機能でon率が低くなっていることがあるにも関わらず、特段 通常時のCO2濃度が高目になっていないのは、CO2濃度が高目になった時にon率を上げているため(→ うまく行っている)だと推測する。また、動作モードを見ていると(グラフがあれば分かりやすそうだが ない)、近頃はon率の低いLになることが多いので、長期(季節?)的なCO2濃度の変化に追従できていることも推測できる。
それで、今後更にCO2濃度が低くなるかも知れないので(期待して)、今朝 LLのモードを追加した。
(10/7 11:58) 使いながら設定を調整した。
現状のCO2濃度(長時間平均)と換気扇のon率・動作モードの対応表は以下である。
- LTMA_CO2: on率, ()内は動作モード
- <= 610ppm: 50% (LL)
- <= 675ppm: 55% (L)
- <= 740ppm: 65% (M)
- > 740ppm: 70% (H)
また、状態の確認が容易になるように、換気扇のon率(→ モード)もグラフに描くようにした。グラフを見たところは うまく動いている感じだ。
当然ながら、従来の通常時のon率(65%, M)を広く使うのが良いようだ。また、50%(LL)になることは ほとんどなさそうだ。 (上のグラフでの最低は55%, Lである。)