Heat_E_v1.00 (Управление электрическим нагревателем)

Рисунок 1 – Условное обозначение

Входы Тип данных Пояснения Диапазон
ia_Tas Float Текущее значение температуры приточного воздуха
ib_Termostat Bool Сигнал от защитного термостата

0 – Авария
1 – Норма

cmd_Start Bool Команда на запуск регулирования

0 – Стоп
1 – Пуск

cmd_AvStop Bool Команда на аварийную остановку 1 – Аварийный стоп
cmd_ResetAv Bool Сброс аварий 1 – Сбросить
lv_IsWinter Bool Текущий сезон

0 – Лето
1 – Зима

mode Int Режим работы нагревателя

0 – Одна ступень по
двухпозиционному
закону с гистерезисом
1 – Одна ступень по ПИ-закону
2 – Одна ступень по ПИ-закону + одна опорная
...

ua_Tas_cor Float Уставка температуры приточного воздуха
ua_Tas_DZ Float Зона нечувствительности регулятора
ua_PID_Kp Float Пропорциональный коэффициент ПИ-регулятора ≥0
ua_PID_Ti Float Время интегрирования ПИ-регулятора ≥0
ua_Tas_Hist Float Гистерезис для двухпозиционного регулирования ≥0
ut_Cool(s) Int Время продува ТЭН после их выключения, в секундах
ua_Tas_Av Float Максимально допустимая температура приточного воздуха
ub_IsStage_Up Bool Флаг регулирования второго уровня
ub_IsStage_Dw Bool Флаг регулирования первого уровня
Lv_Hold Bool Установить ПИД на 100%

0 – от ПИД
1 – 100 % ПИД

oa_Pwr Float Общая мощность нагревателя 0…300
oa_St1 Float Мощность первой ступени 0…100
oa_StCount Int Количество активных ступеней ≥0
lv_IsHeat Bool Флаг работы регулятора нагревателя

0 – Стоп
1 – Работа

Av_Heat Bool Нагреватель неисправен

0 – Норма
1 – Авария

В зависимости от выбранного режима возможно управление одной ступенью нагревателя по двухпозиционному закону регулирования с гистерезисом (mode="0) или по ПИ-закону регулирования (mode=1) с управлением до несколькими ступенями нагревателя.

При появлении команды на запуск работы регулятора (cmd_Start=1) выставляется флаг работы (lv_IsHeat=1), и начинается процесс регулирования. При пропадании команды на запуск (cmd_Start=0") нагреватель выключается (oa_Pwr="0), флаг работы сбрасывается с задержкой (ut_Cool(s)).

Работа по двухпозиционному закону регулирования (mode=0")

Если температура приточного воздуха (ia_Tas) меньше уставки с учетом гистерезиса (ua_Tas_cor - ua_Tas_Hist/2), то включается первая ступень на полную мощность (oa_St1="100).

Если температура приточного воздуха больше уставки с учетом гистерезиса (ua_Tas_cor + ua_Tas_Hist/2), то первая ступень выключается (oa_St1"="0).

Если в момент включения блока температура находилась в зоне уставки, то первая ступень
выключена.

Работа по ПИ-закону регулирования (mode=1..5)

Для более плавного регулирования предусмотрена зона нечувствительности температуры приточного воздуха. Данный параметр задается через свойства блока, по умолчанию равен 1 °С.]

Зависимость выходной мощности от управляющего воздействия можно записать в виде:

где Yi – выходная мощность нагревателя (oa_Pwr);

КП – пропорциональный коэффициент (ua_PID_Kp);

Ти – время интегрирования (ua_PID_Ti);

Ei – разность между уставкой и текущим значением Тприт (ua_Tas_cor -ia_Tas);

Δtизм – время дискретизации (1 с).

Первая ступень управляется плавно. Вторая и третья ступени являются опорными и управляются дискретными сигналами. Для защиты от частого включения опорных ступеней используется гистерезис, равный 10" % мощности. Т. е. вторая ступень включится, когда выходная мощность достигнет 105 %, выключится, когда снизится до 95 % (205 % и 195 % для третьей ступени, соответственно).

Временная диаграмма приведена на рисунке 2.

Рисунок 2 – Временная диаграмма

Чтобы регулятор не реагировал на незначительные отклонения текущей температуры от уставки, используется зона нечувствительности (ua_Tas_DZ).

Рисунок 3 – Принцип работы зоны нечувствительности

(SP – уставка (ua_Tas_cor), PV – уставка до (Вход) и после (Выход) коррекции, DZ – зона нечувствительности (ua_Tas_DZ).

Аварии

При появлении команды аварийной остановки (cmd_AvStop="1) нагреватель выключается (oa_Pwr=0), флаг работы сбрасывается сразу без задержки.]

Если температура приточного воздуха (ia_Tas) поднимается выше максимально допустимого значения (ua_Tas_Av) или срабатывает защитный термостат (ib_Termostat=0), то фиксируется неисправность нагревателя (ob_AvHeat=1"), нагреватель выключается (oa_Pwr="0), флаг работы сбрасывается с задержкой (ut_Cool(s)).

Каскадное регулирование

Для реализации работы каскада необходимо задать наличие младшей (ub_IsStage_Dw) и старшей ступени (ub_IsStage_Up). Если их нет, то рассчитанный процент открытия клапана находится в диапазоне 0"…100 %. Наличие младшей ступени занижает нижнюю границу до -5 %.

Наличие старшей ступени завышает верхнюю границу до 105 %. Величина отклонения задается в свойствах макроса.

Достижение верхней границы служит командой на запуск старшей ступени. Одновременно с этим необходимо остановить работу регулятора текущей ступени (lv_Hold=1), после этого процент открытия станет равен 100.

Достижение нижней границы служит командой на остановку работы текущей ступени.