スマート中央暖房ボイラー制御ボックス - 効率的なエネルギー管理
必要な部品と材料
| 部品 | 数量 |
|---|---|
| Arduino UNO | 1 |
| リレーモジュール(汎用、8チャネル) | 1 |
| LCDディスプレイ 20x4 | 1 |
このプロジェクトについて
はじめに
ガスボイラーを使用したセントラル暖房システムにおいて、リビングの室温調節器(サーモスタット)が設定温度に達するとボイラー全体が停止してしまい、家の他の部屋を暖めることができません。リビングに暖炉や薪ストーブがある場合、それを使うと他の部屋が寒くなってしまうのです。ボイラーメーカーは通常、外気温連動制御(気候制御システム)を導入して解決を図りますが、これにはガス代が高くなる、床暖房との相性が悪いといった欠点があります。ボイラー制御ボックス(BCB)は、これらより優れかつ安価な解決策です。
主な機能
- リビングのサーモスタットがボイラー停止を指示しても、他の部屋を暖房可能(オーバーライド機能)
- フロントパネルのスイッチで一時的・永続的オーバーライドを切り替え可能
- ボイラー給湯温度の上限をフロントパネルで調整可能
- フロントパネルのLCD(20文字×4行)に、実測ボイラー温度、設定上限温度、オーバーライド状態(残り時間または「永続」)、バルブ保護プログラムの作動状況(残り時間)、実行回数、リブート発生の有無を表示
- フェイルセーフ設計:BCBの電源が切れていても、室温調節器が正常にボイラーを制御し、暖房が機能する
- ウォッチドッグタイマー内蔵:ソフトウェアクラッシュの際に自動リブート
- 床暖房の給湯配管に電動弁(モータ駆動弁)が必要。既に気候制御システムが導入済みなら、その弁を流用可能
- 内蔵バルブ保護プログラム:電動弁が固着しないよう、約24時間ごとに開閉動作を実行
- 床暖房配管内の最適な湯温を実現。従来の気候制御システムとは異なり、外気温に依存しない
- ボイラーの短周期運転(ハンチング)を防止
メリット
- 家中のすべての部屋を、リビングの温度に関係なく独立して暖房可能
- 床暖房配管の最適湯温により快適なリビング温度を実現。従来の気候制御システムでは不可能だった、床暖房湯温の完全な制御が可能
- 従来の気候制御システムよりガス代を削減
- ボイラーの寿命延長と、ポンプ・ファンなどの部品故障リスク低減
仕組み
BCBは、ボイラーのサーモスタット端子、リビングの室温調節器、床暖房給湯配管に設置した電動弁、そしてボイラー給湯出口配管に取り付けたNTCサーミスタ(湯温測定用)に接続します。
フロントパネルのディスプレイには、給湯実測温度(Tmeasured)、オーバーライド時の設定上限温度(Tset)、オーバーライドのオン/オフ/永続、バルブ保護プログラムの実行回数が表示されます。
オーバーライド非作動時(またはBCB無電源時)
リビングの室温調節器が直接ボイラーを制御し、床暖房弁は開いたままになります。BCBが存在しないのと同じ状態です。フロントパネルのLEDは消灯し、ディスプレイには「Override: OFF」と表示されます。リビングの室温調節器がボイラー停止を指示すれば、他の部屋の温度に関わらずボイラーは停止します。

オーバーライド作動時
フロントパネルの2つのボタンでリビングの室温調節器をオーバーライドします。トグルスイッチで永続オーバーライド、プッシュボタンで一時オーバーライド(ディスプレイに従い1〜8時間を選択)が可能です。オーバーライド中はディスプレイにその旨が表示され、LEDが点灯します。


オーバーライドモードでは、BCBがボイラー制御を引き継ぎます。実測給湯温度が設定上限温度Tset(写真では59℃)を超えるとボイラーを停止し、温度が(Tset - h)以下(ヒステリシスh=20℃、つまり39℃)になるとボイラーを起動します。これにより給湯温度を39〜59℃の範囲で維持します。ヒステリシスはスケッチで変更可能です。各部屋の温度は、ラジエータのサーモスタット付きバルブで個別に制御できます。
リビングの温度は、従来通り室温調節器が床暖房の電動弁を開閉することで制御されます。
組み立て方法
回路図に従って部品を接続します。Arduino UNOの5V出力をすべての+5V接続(矢印)に、すべてのGNDピンを相互接続してください。



BCBには外部12V DC電源をArduinoに接続して給電します。Arduinoの5V出力だけではLCDとリレーモジュールの両方を駆動できないため、リレーモジュールのリレー駆動回路には別途LM2596ベースの5Vスイッチング電源を用意し、これを外部12V電源から直接給電します。リレーモジュール上のVccとJD-Vccを繋ぐジャンパーは必ず外してください。回路図をよく確認して配線してください。
スケッチをダウンロードしてArduinoに書き込めば完成です。
必要な追加部品
- Arduino Uno
- 8チャネル リレーモジュール
- LCDディスプレイ 2004A
- LM2596 5Vスイッチング電源モジュール
- 12V DC外部電源
- B+B Thermo Technik TS-NTC-103(10kΩ)
- 金属皮膜抵抗 10kΩ、0.1%公差
- ポテンショメータ 10kΩ 直線特性(シャーシマウント)
- トリマポテンショメータ 10kΩ
- 抵抗 820Ω(公差は10%、5%でも可)
- 抵抗 1500Ω(公差は10%、5%でも可)
- 抵抗 10kΩ(2個、公差不問)
- コンデンサ 0.1µF(=100nF)16V(2個)
- 電解コンデンサ 470µF 16V
- プッシュボタン(ノーマルオフ)
- トグルスイッチ
- コネクタ 2.5mm(シャーシマウント)×4
- 電源コネクタ(シャーシマウント)×1
- シングルコネクタ 2.5mm ×4
- LED、低電流タイプ(例:Kingsbright L53 LYD 黄色)
- ケース
設置方法
電動弁、リビングの室温調節器、ボイラーのコネクタをBCBの対応するコネクタに接続します。NTCのリード線は収縮チューブなどで確実に絶縁し、ボイラーの給湯出口弁にタイラップで固定します。NTCのコネクタをBCBに接続し、12V電源をBCBの電源コネクタに、さらに電源プラグを壁面コンセントに接続します。


BCBの起動手順
電源プラグをコンセントに差すと、BCBは起動メッセージとスケッチのバージョンを表示します。

永続オーバーライド用トグルスイッチがOFFの場合、起動完了後は実測給湯温度(Tmeasured)、設定上限温度(Tset)、オーバーライド状態(OFF)、および「BOOTED」という起動完了メッセージが表示されます。

「BOOTED」メッセージを消すには、トグルスイッチを永続オーバーライド位置にし、一時オーバーライドボタンを押します。LEDが点灯し、ボイラーが起動する場合があります。


ディスプレイの「BOOTED」が「#VP=0」に変わり、バルブ保護プログラム(VP)が起動後0回実行されたことを示します(「バルブ保護プログラム」参照)。
トグルスイッチをOFFに戻すとLEDが消灯します。

バルブ保護プログラム(VPP)
約24時間ごとに自動実行されます。電動弁を一度閉じてから開くことで固着を防止します。実行ごとにカウンタ#VPがインクリメントされ、99の次は0に戻ります。実行中はディスプレイに残り時間が表示され、全工程で約15分かかります(電動弁の応答に数分かかるため)。オーバーライド機能を使用した場合、最初のVPP実行はオーバーライドを解除してから約24時間後に行われます。

ウォッチドッグ
万一ソフトウェアがクラッシュしても、内蔵ウォッチドッグがBCBを自動リブートします。リブート中はLCDに「REBOOT IN PROGRESS」と表示され、リブート後は正常に機能します。「#VP=..」の表示が「REBOOT」に変わり、リブートが発生したことをユーザーに通知します。このメッセージは「BCBの起動手順」と同じ要領で消去できます。
スケッチ
Boiler Control Box スケッチ v1.3
コードはGitHub等で公開されています。
回路図
詳細な回路図は上記「組み立て方法」の画像を参照してください。
製造プロセス
- ジュースボックスの革命:歴史、設計、環境への影響
- 経口避妊薬:歴史、メリット、リスク、製造
- ブラックボックス飛行記録装置:初期試作から将来の統合設計まで
- ソーラー暖房システム:パッシブからアクティブまで、持続可能な住宅暖房ソリューション
- Raspberry Piでセントラルヒーティングボイラーを監視 – ハードウェア、ソフトウェア、セットアップガイド
- Raspberry Piでセンサーとアクチュエータを制御:加速度計、サーボ、データストリーミング
- 自動プール給水・監視システム
- DIY Wall-E 風 Raspberry Pi CD ボックスロボット
- DIY UVC滅菌ボックスキット:低コスト・簡単自作の医療・日用品用紫外線殺菌器
- DIY自動列車制御システム – Arduinoで実現するシンプル・信頼性・カスタマイズ自在なレイアウト運転
- 制御回路:基礎、応用、ベストプラクティス