Мониторинг центрального отопительного котла на Raspberry Pi — железо, софт и настройка
Обзор оборудования
Ниже краткий список компонентов Raspberry Pi, необходимых для этой системы мониторинга котла. Релейный блок, управляющий горелкой и насосом котла, остался без изменений от оригинальной PC-установки.
- Raspberry Pi Model B
- Интерфейсная карта Pi‑Face Digital
- USB-адаптер 1-Wire Dallas Semiconductor (Maxim) DS9490R
- Датчики температуры 1-Wire Dallas Semiconductor (Maxim) DS18S20
Блок-схема (не показана) иллюстрирует общую компоновку проводки. Опционально можно позже интегрировать GSM-модем для получения SMS-алертов.
Программные компоненты
Три основные программы управляют системой мониторинга:
- Логгер событий — общается с Pi‑Face Digital картой и записывает статус сетевого питания, работы насоса и включения горелки. Данные пишутся в ежедневный лог-файл.
- Логгер температуры — читает сеть 1-Wire датчиков и логирует показания температуры с каждого датчика в отдельный ежедневный файл.
- CGI-рендерер — вызывается Apache, генерирует календарный вид и рисует SVG-графики событий и температур.
Все программы изначально писались на C для среды Windows/2000 Server на Dell GX11 PC. Переход на Linux потребовал значительной переработки, особенно для API Pi‑Face Digital и интерфейса OWFS (One‑Wire File System).
CGI-модуль — самая сложная часть; он производит SVG-столбчатую диаграмму и таймлайн. Порт на Linux выполнен заменой вызовов _stat() на statfs() и исправлением строковых рутин.
Раскладка файловой системы
Типичные Linux- и Apache-директории выделены жёлтым; кастомные пути — синим. Все файлы мониторинга живут под /1-wire:
/1-wire ├─ src ├─ events ├─ temperatures
Шаг 1 — Создание директорий
sudo su cd / mkdir /1-wire mkdir /1-wire/src mkdir /1-wire/events mkdir /1-wire/temperatures
Шаг 2 — Скачивание и компиляция
wget https://www.noveldevices.co.uk/rpdl/logger.c -O /1-wire/src/logger.c wget https://www.noveldevices.co.uk/rpdl/1-wire.c -O /1-wire/src/1-wire.c wget https://www.noveldevices.co.uk/rpdl/server.c -O /1-wire/src/server.c gcc -L/usr/local/lib -lpiface-1.0 -o /1-wire/events/logger /1-wire/src/logger.c -lm gcc -L/usr/local/lib -o /1-wire/temperatures/1-wire /1-wire/src/1-wire.c -lm gcc -L/usr/local/lib -o /usr/lib/cgi-bin/server /1-wire/src/server.c -lm
Шаг 3 — Получение конфигурации и стилей
wget https://www.noveldevices.co.uk/rpdl/1-wire.conf -O /1-wire/temperatures/1-wire.conf wget https://www.noveldevices.co.uk/rpdl/server.conf -O /usr/lib/cgi-bin/server.conf wget https://www.noveldevices.co.uk/rpdl/boiler.css -O /var/www/boiler.css
Шаг 4 — Настройка 1-Wire логирования
Файл 1-wire.conf содержит настройки логгера и CGI-генератора графиков. Каждая запись независима от порядка:
[Interval]=n— интервал опроса в секундах (подбирается чтобы избежать дрифта; OWFS обычно нужно ~2 с на датчик).[DataDirectory]=/path/to/data/— директория для хранения лог-файлов.- Для каждого датчика:
[DevicePath]=/path/to/owfs/#RRGGBBsensor-description
Здесь #RRGGBB — HTML-код цвета для линии датчика на графике, а sensor-description — подпись на температурном графике.
Для дополнительных деталей обратитесь к оригинальной статье: Monitoring My Central Heating Boiler.
Производственный процесс
- Солнечные отопительные системы: от пассивных к активным решениям для устойчивого отопления домов
- Профессиональный мониторинг температуры на Raspberry Pi с датчиком DS18B20
- Точный мониторинг температуры в серверной на Raspberry Pi
- Удалённый мониторинг погоды на Raspberry Pi 3 с PubNub
- Датчик CO2 K30: мониторинг качества воздуха в реальном времени на Arduino
- Бесконтактный термометрический шлюз для быстрого и точного скрининга
- Интеграция центрального отопления с Arduino: умное управление по OpenTherm
- Керамические нагревательные элементы (ceramic heating elements): принцип работы, преимущества над проволочными
- Топ-3 преимущества удаленного мониторинга для производственной эффективности
- Максимизация энергосбережений с центральными контроллерами и удаленным мониторингом