MP8036multi: пример работы термостатом

В прошлой публикации мы привели пример работы BM8036multi в режиме таймера. В этой части рассмотрим работу модуля в режиме термостата.

82cc522b4c484d6197e8f9c434b670b3.jpg

Во многих дачных домах установлен газовый котёл, обеспечивающий обогрев дома и подачу горячей воды. Зачастую эти котлы — старого образца либо очень бюджетные, не имеющие достаточного уровня автоматизации. Возникает естественное желание доработать эти котлы и повысить комфорт и безопасность при их использовании.
В общем приближении, котел имеет следующие основные органы управления и сигнализации:
— горелку с электроподжигом;
— датчик температуры №1;
— датчик температуры №2;
— вентилятор обдува теплообменника;
— звуковая и световая сигнализация аварийного режима.

Соответственно, контроллер управления должен поддерживать работу с двумя независимыми датчиками температуры, иметь как минимум два независимых выхода на реле, один выход на сигнализацию — и при этом обладать возможностями гибкой конфигурации.
Всем этим задачам прекрасно удовлетворяет новый контроллер Мастер Кит MP8036multi, на базе которого мы и построим систему управления котлом.

Алгоритм запуска котла в работу должен быть следующий:

1. Начальное состояние (котёл потушен, требуется зажечь газовую горелку). Если температура по датчику »1» меньше заданной (темп2), включается вентилятор обдува теплообменника, через заданное время (вр1) подается питание на электроподжиг горелки;
2. Проверка успешности поджига. Если температура по датчику »1» достигает заданной (темп1), питание с горелки снимается, вентилятор обдува еще продолжает работать заданное время (вр2), после чего также отключается;
3. Аварийный режим (по каким-то причинам температура на выходе котла становится выше нормальной). Если выходит из строя один из датчиков температуры или температура по датчику »2» достигает заданной аварийной, включается звуковой и световой сигнал аварии, питание с горелки снимается, вентилятор обдува еще продолжает работать заданное время (вр2), после чего также отключается.

Условимся, что в программе выходы обозначены как:
РЕЛЕ1 — вентилятор
РЕЛЕ2 — горелка
ШИМ1 — авария (звук и свет)

В качестве канала управления индикации АВАРИИ можно было выбрать любой логический выход, но так как это пример работы модуля, то был выбран выход ШИМ.

Теперь вы имеете все необходимые исходные данные для того, чтобы легко разобраться в алгоритме работы программы, текст которой приведён ниже. Время работы и температура указано условно, при необходимости значения необходимо изменить под требуемые значения.

Для удобства понимания процесса рекомендуем загрузить программу в модуль.

ТЕКСТ ПРОГРАММЫ

//РЕЛЕ1 — вентилятор
//РЕЛЕ2 — горелка
//ШИМ1 — сирена (звук и свет)
//ВХОД1 — контроль ошибки
//уставка температуры 1: +29C/+30 С
//уставка температуры 2: +32 С

СБРОС КОНФИГУРАЦИИ

РЕЛЕ1.РЕЖИМ_ПО_УМОЛЧАНИЮ = 1

РЕЛЕ1.РЕЖИМ1.СОСТОЯНИЕ = ОТКЛЮЧЕНО
РЕЛЕ1.РЕЖИМ1.УСЛОВИЕ1: ВХОД1 = 1
РЕЛЕ1.РЕЖИМ1.ЛОГИКА_УСЛОВИЙ = У1

РЕЛЕ1.РЕЖИМ2.СОСТОЯНИЕ = ВКЛЮЧЕНО
РЕЛЕ1.РЕЖИМ2.УСЛОВИЕ1: ДТ1 < 28
РЕЛЕ1.РЕЖИМ2.УСЛОВИЕ2: ВХОД1 = 0
РЕЛЕ1.РЕЖИМ2.ЛОГИКА_УСЛОВИЙ = У1 И У2

РЕЛЕ1.РЕЖИМ3.СОСТОЯНИЕ = ВКЛЮЧЕНО
РЕЛЕ1.РЕЖИМ3.ВРЕМЯ_ДЕЙСТВИЯ = 10 ©
РЕЛЕ1.РЕЖИМ3.УСЛОВИЕ1: ДТ1 > 30
РЕЛЕ1.РЕЖИМ3.УСЛОВИЕ2: ДТ2 > 32
РЕЛЕ1.РЕЖИМ3.УСЛОВИЕ3: ВХОД1 = 0
РЕЛЕ1.РЕЖИМ3.ЛОГИКА_УСЛОВИЙ = (У1 ИЛИ У2) И У3

РЕЛЕ1.РЕЖИМ4.СОСТОЯНИЕ = ВКЛЮЧЕНО
РЕЛЕ1.РЕЖИМ4.ВРЕМЯ_ДЕЙСТВИЯ = 30 ©
РЕЛЕ1.РЕЖИМ4.УСЛОВИЕ4: ВХОД1 = 1
РЕЛЕ1.РЕЖИМ4.ЛОГИКА_УСЛОВИЙ = У4

РЕЛЕ2.РЕЖИМ_ПО_УМОЛЧАНИЮ = 1

РЕЛЕ2.РЕЖИМ1.СОСТОЯНИЕ = ОТКЛЮЧЕНО
РЕЛЕ2.РЕЖИМ1.УСЛОВИЕ1: ДТ1 > 30
РЕЛЕ2.РЕЖИМ1.УСЛОВИЕ2: ДТ2 > 32
РЕЛЕ2.РЕЖИМ1.УСЛОВИЕ3: ВХОД1 = 1
РЕЛЕ2.РЕЖИМ1.ЛОГИКА_УСЛОВИЙ = У1 ИЛИ У2 ИЛИ У3

РЕЛЕ2.РЕЖИМ2.СОСТОЯНИЕ = ВКЛЮЧЕНО

РЕЛЕ2.РЕЖИМ2.ЗАДЕРЖКА = 10 ©
РЕЛЕ2.РЕЖИМ2.УСЛОВИЕ1: ДТ1 < 28
РЕЛЕ2.РЕЖИМ2.УСЛОВИЕ2: ВХОД1 = 0
РЕЛЕ2.РЕЖИМ2.ЛОГИКА_УСЛОВИЙ = У1 И У2

ШИМ1.РЕЖИМ_ПО_УМОЛЧАНИЮ = 1

ШИМ1.РЕЖИМ1.ФУНКЦИЯ = ДИСКРЕТНЫЙ_ВЫХОД
ШИМ1.РЕЖИМ1.СОСТОЯНИЕ = 0
ШИМ1.РЕЖИМ1.УСЛОВИЕ1: ДТ2 < 34
ШИМ1.РЕЖИМ1.УСЛОВИЕ2: ВХОД1 = 0
ШИМ1.РЕЖИМ1.ЛОГИКА_УСЛОВИЙ = У1 И У2

ШИМ1.РЕЖИМ2.ФУНКЦИЯ = ДИСКРЕТНЫЙ_ВЫХОД
ШИМ1.РЕЖИМ2.СОСТОЯНИЕ = 1
ШИМ1.РЕЖИМ2.УСЛОВИЕ1: ДТ2 > 35
ШИМ1.РЕЖИМ2.УСЛОВИЕ2: ВХОД1 = 1
ШИМ1.РЕЖИМ2.ЛОГИКА_УСЛОВИЙ = У1 ИЛИ У2

При практической проверке программы не забудьте добавить термодатчики ДТ1 и ДТ2 согласно инструкции по конфигурации к модулю. Обратите внимание, датчики необходимо подключать по очереди.

Схема подключения

7ddbdb23fcb54817b241bdcb0ae9999a.jpg

Продолжение следует …

© Geektimes