全館暖房リアルタイムネット制御:超ざっくり自動室温調整機能実装
自作の全館暖房リアルタイムネット制御システムに、超ざっくりだが自動室温調整機能を実装してみた。早朝冷え込むことが多く、ボイラーの循環水温度が固定だとどうしても外気温の影響で室温も変化してしまう。深夜早朝と日中とでは、室温変化は大きい時で4℃以上も上下する。
今回の休みは別な開発案件に集中したかったのだが、明け方寒い時があったので1時間以内で実装できる範囲ということで超ざっくりなアルゴリズムで実装してみた。仕様は下記の通り。
目標設定温度は決め打ち(室温25.5℃が快適なのでこの室温に固定)
目標設定温度は±0.2℃変化した場合はボイラーの循環水温度を1単位(5℃)上下させる
ボイラーの循環水温度は室温のみ見て制御、1時間毎に設定見直し
温度制御部はボイラーの循環水温度は見ない
※循環水温度をスコープ内に入れると改造が必要で1時間の実装では無理なので今回はパス
コードはわずか十数行。半年放置していたのでコードを思い出す方に時間を要したくらい。パラメーターは数時間様子を見ながら修正して決定。
制御無しのグラフ。外気温の影響は、約1時間遅れで室温に現れる。また、室温は最高と最低で約4℃程度の差が発生してしまう。ちなみに黒い線は特に意味は無い。
超ざっくり実装で制御した結果。黒い線は目標設定温度である25.5℃。若干外気温に影響されるが、ほぼ目標設定温度の±0.5℃の変化で収まっているのがわかる。確かに明け方も寒くなかったし、日中も暑過ぎることもなく、非常に快適になった。
フィードバック制御を真剣に勉強すれば、もっと奇麗な制御ができるのだろう。そのうち時間が出来たら、循環水温度も見ながらもっと奇麗に制御できるように実装したい。
今回の休みは別な開発案件に集中したかったのだが、明け方寒い時があったので1時間以内で実装できる範囲ということで超ざっくりなアルゴリズムで実装してみた。仕様は下記の通り。
目標設定温度は決め打ち(室温25.5℃が快適なのでこの室温に固定)
目標設定温度は±0.2℃変化した場合はボイラーの循環水温度を1単位(5℃)上下させる
ボイラーの循環水温度は室温のみ見て制御、1時間毎に設定見直し
温度制御部はボイラーの循環水温度は見ない
※循環水温度をスコープ内に入れると改造が必要で1時間の実装では無理なので今回はパス
コードはわずか十数行。半年放置していたのでコードを思い出す方に時間を要したくらい。パラメーターは数時間様子を見ながら修正して決定。
制御無しのグラフ。外気温の影響は、約1時間遅れで室温に現れる。また、室温は最高と最低で約4℃程度の差が発生してしまう。ちなみに黒い線は特に意味は無い。
超ざっくり実装で制御した結果。黒い線は目標設定温度である25.5℃。若干外気温に影響されるが、ほぼ目標設定温度の±0.5℃の変化で収まっているのがわかる。確かに明け方も寒くなかったし、日中も暑過ぎることもなく、非常に快適になった。
フィードバック制御を真剣に勉強すれば、もっと奇麗な制御ができるのだろう。そのうち時間が出来たら、循環水温度も見ながらもっと奇麗に制御できるように実装したい。