Перейти к содержанию

Hydronic-underfloor-heating-setup: различия между версиями

Материал из XIOT Wiki
Инструкция по настройке водяного пола: реле Wiren Board, сервопривод НЗ/НО, медленный ШИМ, датчики, режимы комфорта и PID
 
Английские адреса Wiki: обновление ссылок с сохранением русских подписей
 
(не показано 8 промежуточных версий этого же участника)
Строка 1: Строка 1:
{{DISPLAYTITLE:Настройка водяного тёплого пола}}
[[Main-page|Главная страница]] → [[Xiot-devices|Каталог устройств]] → [[Underfloor-heating|Тёплый пол]] → '''Водяной пол'''
'''Водяной тёплый пол''' в XIOT регулирует температуру помещения или поверхности пола через термоэлектрический привод клапана. Термостат рассчитывает требуемое открытие, устройство «Сервопривод» преобразует его в медленный ШИМ, а отдельное реле коммутирует питание привода.
'''Водяной тёплый пол''' в XIOT регулирует температуру помещения или поверхности пола через термоэлектрический привод клапана. Термостат рассчитывает требуемое открытие, устройство «Сервопривод» преобразует его в медленный ШИМ, а отдельное реле коммутирует питание привода.


Строка 4: Строка 7:


''Названия параметров и поведение сверены с редактором и XIOT-PLC v14.10~beta24, 02.10.2026. Периоды и температуры ниже — примеры настройки, а не универсальные значения для любого пола или привода.''
''Названия параметров и поведение сверены с редактором и XIOT-PLC v14.10~beta24, 02.10.2026. Периоды и температуры ниже — примеры настройки, а не универсальные значения для любого пола или привода.''
Общая справка: [[Underfloor-heating|Тёплый пол]]. Для нагрева через реле без сервопривода см. [[Electric-underfloor-heating-setup|настройку электрического пола]].


== Как связаны устройства ==
== Как связаны устройства ==
Строка 38: Строка 43:


'''Физические топики задаём только реле и датчикам.''' В характеристиках «Сервопривода» и «Тёплого пола» адреса оборудования оставляем пустыми: данные и команды проходят через выбранные устройства. Пользователь управляет тёплым полом; технические реле и привод можно скрыть из его интерфейса.
'''Физические топики задаём только реле и датчикам.''' В характеристиках «Сервопривода» и «Тёплого пола» адреса оборудования оставляем пустыми: данные и команды проходят через выбранные устройства. Пользователь управляет тёплым полом; технические реле и привод можно скрыть из его интерфейса.
=== Адрес состояния и галочка рядом с ним ===
Порядок выбора адресов подробно описан в статье [[Device-bindings|Привязка топиков к устройствам]].
'''У физического реле включите ожидание обратного состояния от оборудования. В редакторе для этого ставят галочку рядом с адресом состояния.''' Подсказка этой галочки говорит об изменении характеристики только при получении значения из тега состояния. У реле должны быть заданы адрес управления и действительный адрес состояния.
При таком режиме команда уходит в оборудование, а отправленное значение не подставляется сразу в состояние реле. Контроллер ожидает подходящее значение из назначенного канала обратной связи. Получен ожидаемый ответ — команда подтверждена; ответа нет — контроллер фиксирует ошибку подтверждения. Просто отправленная команда ещё не означает выполненную команду.
Это важно для отопления: проверять следует подтверждённое состояние реле. При прямом управлении реле тёплый пол дополнительно проверяет его включение или выключение. В рассматриваемой цепочке '''Тёплый пол → Сервопривод → Реле''' ожидание ответа выполняет само реле; медленный ШИМ сервопривода не является подтверждением переключения физического выхода.
'''Если физические топики не назначаются, галочку рядом с адресом состояния ставить не нужно.''' В этой инструкции это относится к характеристикам '''Тёплого пола''' и '''Сервопривода''': их адреса управления и состояния пустые, а команды и измерения проходят через выбранные устройства. Сам по себе флажок без адресов не создаёт обратную связь.


== Перед настройкой ==
== Перед настройкой ==
Строка 47: Строка 64:
Сначала активируйте подключённый модуль штатными средствами Wiren Board. При боковом подключении его выходы отображаются в устройстве '''Discrete I/O''' как '''EXTx_K1 … EXTx_K8'''. Для первого модуля и первого выхода пример канала — '''EXT1_K1''', топик состояния — <code style="overflow-wrap:anywhere;">/devices/wb-gpio/controls/EXT1_K1</code>. Фактический номер модуля и свободный канал выбирают по своему объекту; при подключении через WB-MIO адреса могут отличаться.
Сначала активируйте подключённый модуль штатными средствами Wiren Board. При боковом подключении его выходы отображаются в устройстве '''Discrete I/O''' как '''EXTx_K1 … EXTx_K8'''. Для первого модуля и первого выхода пример канала — '''EXT1_K1''', топик состояния — <code style="overflow-wrap:anywhere;">/devices/wb-gpio/controls/EXT1_K1</code>. Фактический номер модуля и свободный канал выбирают по своему объекту; при подключении через WB-MIO адреса могут отличаться.


В редакторе XIOT откройте '''Драйверы → Wiren Board''', выберите настроенную линию, например '''WB0''', и нажмите '''Сканировать'''. Убедитесь, что нужный выход и температурные каналы появились в списке. Подробности подключения: [[Настройка драйвера Wiren Board в XIOT]].
В редакторе XIOT откройте '''Драйверы → Wiren Board''', выберите настроенную линию, например '''WB0''', и нажмите '''Сканировать'''. Убедитесь, что нужный выход и температурные каналы появились в списке. Подробности подключения: [[Wiren-board-driver-setup|Настройка драйвера Wiren Board в XIOT]].


== 1. Добавьте реле и свяжите его с выходом WB ==
== 1. Добавьте реле и свяжите его с выходом WB ==
Строка 55: Строка 72:
# В '''адресе управления''' выберите свой выход Wiren Board, например '''wb-gpio → EXT1_K1'''.
# В '''адресе управления''' выберите свой выход Wiren Board, например '''wb-gpio → EXT1_K1'''.
# В '''адресе состояния''' выберите тот же канал. Штатный драйвер сам различает отправку команды и получение состояния; вручную добавлять <code>/on</code> в выбранный адрес XIOT не нужно.
# В '''адресе состояния''' выберите тот же канал. Штатный драйвер сам различает отправку команды и получение состояния; вручную добавлять <code>/on</code> в выбранный адрес XIOT не нужно.
# '''Включите ожидание подтверждения от физического реле''': поставьте галочку рядом с адресом состояния. Не используйте немедленное локальное обновление вместо ответа оборудования.
# В параметре '''Выключать после включения, через время''' установите '''0'''. Длительностью включения будет управлять сервопривод; отдельный таймер реле нарушит цикл.
# В параметре '''Выключать после включения, через время''' установите '''0'''. Длительностью включения будет управлять сервопривод; отдельный таймер реле нарушит цикл.


На одном физическом выходе должен быть один согласованный источник управления. Не назначайте этот выход одновременно независимому сценарию, другому термостату или ещё одному устройству «Реле».
На одном физическом выходе должен быть один согласованный источник управления. Не назначайте этот выход одновременно независимому сценарию, другому термостату или ещё одному устройству «Реле».


Справка: [[Виртуальное устройство "Реле"|Реле]].
Справка: [[Relay|Реле]].


== 2. Добавьте сервопривод и выберите реле ==
== 2. Добавьте сервопривод и выберите реле ==


# Добавьте устройство '''Сервопривод''', например «Привод контура».
# Добавьте устройство '''Сервопривод''', например «Привод контура».
# Оставьте обязательные характеристики '''включение''' и '''процент открытия сервопривода'''. Их физические адреса не заполняйте.
# Оставьте обязательные характеристики '''включение''' и '''процент открытия сервопривода'''. Их физические адреса не заполняйте; галочку рядом с адресом состояния оставьте снятой.
# В блоке '''медленный ШИМ реле''' выберите «Реле контура».
# В блоке '''медленный ШИМ реле''' выберите «Реле контура».
# Настройте тип клапана, период ШИМ и диапазон открытия по разделам ниже.
# Настройте тип клапана, период ШИМ и диапазон открытия по разделам ниже.
Строка 147: Строка 165:
Если оставить минимум 5%, работающий сервопривод повысит даже нулевой запрос до 5%. Это ограничение не является гарантией минимального протока и не заменяет гидравлическую настройку. Для описанной схемы с возможностью полного закрытия используйте '''0–100%'''.
Если оставить минимум 5%, работающий сервопривод повысит даже нулевой запрос до 5%. Это ограничение не является гарантией минимального протока и не заменяет гидравлическую настройку. Для описанной схемы с возможностью полного закрытия используйте '''0–100%'''.


Справка: [[Виртуальное устройство "Сервопривод"|Сервопривод]].
Справка: [[Servo-actuator|Сервопривод]].


== 3. Добавьте датчики температуры ==
== 3. Добавьте датчики температуры ==
Строка 159: Строка 177:
# Проверьте показания, калибровку, допустимый диапазон и обнаружение отсутствия свежих данных.
# Проверьте показания, калибровку, допустимый диапазон и обнаружение отсутствия свежих данных.


Для датчика пола подходит, например, '''WB-MAI6''' с выносным '''NTC 10 кОм, B = 3950 K'''. Тип входа на WB-MAI6 должен соответствовать установленному датчику; в XIOT выбирайте температурный канал '''IN 1 P Temperature''', выдающий °C. Канал сопротивления '''IN 1 P Resistance''' для температуры не подходит. Этот пример подробно разобран в [[Виртуальное устройство "Тёплый пол"|инструкции по тёплому полу]].
Для датчика пола подходит, например, '''WB-MAI6''' с выносным '''NTC 10 кОм, B = 3950 K'''. Тип входа на WB-MAI6 должен соответствовать установленному датчику; в XIOT выбирайте температурный канал '''IN 1 P Temperature''', выдающий °C. Канал сопротивления '''IN 1 P Resistance''' для температуры не подходит. Этот пример подробно разобран в [[Electric-underfloor-heating-setup#3. Добавьте и привяжите датчик температуры|настройке датчика электрического пола]].


Показание комнатного датчика не заменяет температуру поверхности пола. Справка: [[Виртуальное устройство "Датчик температуры"|Датчик температуры]].
Показание комнатного датчика не заменяет температуру поверхности пола. Справка: [[Temperature-sensor|Датчик температуры]].


== 4. Добавьте водяной тёплый пол ==
== 4. Добавьте водяной тёплый пол ==
Строка 171: Строка 189:
# В блоке '''Сервопривод''' выберите «Привод контура».
# В блоке '''Сервопривод''' выберите «Привод контура».
# Блок '''Реле''' у самого тёплого пола оставьте пустым: реле уже управляется через сервопривод.
# Блок '''Реле''' у самого тёплого пола оставьте пустым: реле уже управляется через сервопривод.
# В характеристиках тёплого пола физические адреса не назначайте.
# В характеристиках тёплого пола физические адреса не назначайте; галочку рядом с адресом состояния оставьте снятой.


Получается одна цепочка управления: термостат → сервопривод → реле. Если добавить то же реле ещё и непосредственно в тёплый пол, две логики начнут отдавать ему команды.
Получается одна цепочка управления: термостат → сервопривод → реле. Если добавить то же реле ещё и непосредственно в тёплый пол, две логики начнут отдавать ему команды.
Строка 208: Строка 226:
== 6. Настройте PID-регулятор ==
== 6. Настройте PID-регулятор ==


PID находится в '''Тёплом полу'''. Он рассчитывает запрос открытия от 0 до 100%. '''Сервопривод''' получает этот запрос, ограничивает его своим минимумом/максимумом и формирует медленный ШИМ. Реле получает только команды включить или выключить питание.
PID находится в '''Тёплом полу'''. Он рассчитывает запрос открытия от 0 до 100%. '''Сервопривод''' получает этот запрос, ограничивает его своим минимумом/максимумом и формирует медленный ШИМ. Реле получает только команды включить или выключить питание. Процент запроса не является измеренным расходом воды или тепловой мощностью контура.
 
'''Начните с P = 10, I = 0, D = 0 и периода полного расчёта 10 минут.''' Это понятный исходный режим: запрос определяется текущим отклонением температуры, без накопления интегральной части и дифференциальной поправки. Значения не являются готовой настройкой любого объекта.
 
Если установленная версия редактора подставляет прежние '''1 / 0,1 / 0,05''', вручную задайте '''10 / 0 / 0'''. В уже сохранённом устройстве проверьте все три поля: изменение значений по умолчанию не перенастраивает существующий контур автоматически.


<div style="overflow-x:auto;">
<div style="overflow-x:auto;">
{| class="wikitable"
{| class="wikitable"
! Параметр тёплого пола
! Параметр тёплого пола
! Значение по умолчанию
! Стартовое значение
! Что меняет
! Что меняет
|-
|-
| '''Время цикла PID регулирования сервопривода'''
| '''Время цикла PID регулирования сервопривода'''
| '''10 минут'''
| '''10 минут'''
| Период полного пересчёта регулятора. Это не период ШИМ; для обычной работы задайте положительное время.
| Интервал полного расчёта P, I и D. Это не период ШИМ сервопривода. Для обычной работы задайте положительное время.
|-
|-
| '''Пропорциональный коэффициент PID сервопривода'''
| '''Пропорциональный коэффициент PID сервопривода — P'''
| '''1,0'''
| '''10'''
| Реакция на текущее отклонение температуры от цели. Большее значение даёт больший запрос при том же отклонении.
| Запрос пропорционален текущей ошибке. При I = D = 0 ошибка 0,1 °C даёт 10% открытия, 0,5 °C — 50%, 1 °C — 100%.
|-
|-
| '''Интегральный коэффициент PID сервопривода'''
| '''Интегральный коэффициент PID сервопривода — I'''
| '''0,1'''
| '''0'''
| Накапливает влияние длительного отклонения и помогает убрать устойчивый недогрев. Слишком большое значение может усиливать перерегулирование.
| На каждом полном расчёте добавляет влияние ошибки в накопленную составляющую. На старте накопление отключено; включать его следует после оценки работы P.
|-
|-
| '''Дифференциальный коэффициент PID сервопривода'''
| '''Дифференциальный коэффициент PID сервопривода — D'''
| '''0,05'''
| '''0'''
| Реагирует на изменение отклонения между расчётами. Может сдерживать рост запроса при приближении к цели, но чувствителен к скачкам измерения.
| Реагирует на разницу ошибок между полными расчётами. На старте отключён; чувствителен к скачкам измерений.
|}
|}
</div>
</div>


'''Период PID и период ШИМ настраиваются отдельно.''' Например, PID может пересчитывать запрос раз в 10 минут, а сервопривод исполнять этот запрос своим 10-минутным циклом. Это два самостоятельных процесса; одинаковые числа не означают синхронное начало циклов. Команды включения, изменение цели и переключение режима вызывают дополнительную реакцию регулятора, поэтому ждать очередного полного периода нужно не во всех случаях.
=== Как считается пропорциональная часть ===
 
Ошибка температуры — '''целевая температура минус текущая'''. В режиме '''комфорт пола''' сравниваются цель и температура пола, в режиме '''комфорт воздуха''' — цель и температура воздуха. Один шаг ошибки 0,1 °C соответствует единице в расчёте регулятора.


Коэффициенты зависят от реализации регулятора и его периода. Не переносите числа без проверки из настройки котла, другого контроллера или калькулятора PID. При изменении периода PID повторно оцените поведение системы.
При I = D = 0 и без дополнительных ограничений:
 
<blockquote>'''Запрос открытия, % = P × 10 × (цель − текущая температура)'''</blockquote>
 
Результат ограничивается диапазоном '''0–100%'''. Поэтому '''P = 1''' означает 1 процентный пункт открытия на 0,1 °C ошибки, а '''P = 10''' — 10 процентных пунктов на те же 0,1 °C.
 
<div style="overflow-x:auto;">
{| class="wikitable"
! Ошибка температуры
! Запрос при P = 1
! Запрос при P = 10
|-
| Цель достигнута или температура выше цели
| 0%
| 0%
|-
| 0,1 °C
| 1%
| 10%
|-
| 0,2 °C
| 2%
| 20%
|-
| 0,5 °C
| 5%
| 50%
|-
| 1 °C
| 10%
| 100%
|-
| 2 °C
| 20%
| 100% — сработало ограничение диапазона
|}
</div>
 
'''Это итоговый запрос, а не прибавление процента при каждом пересчёте.''' Например, при цели воздуха 22 °C, измерении 21,5 °C и P = 10 каждый расчёт даёт 50%. Пока ошибка не меняется, следующие расчёты не повышают запрос до 100%.
 
При P = 10 полное открытие достигается уже при отставании на 1 °C. Уменьшение P до 5 растягивает этот диапазон до 2 °C и даёт более плавное снижение запроса при приближении к цели. Увеличение до 20 сужает его до 0,5 °C. Большее P усиливает реакцию, но само по себе не уменьшает тепловую инерцию пола.
 
У регулирования только по P возможно устойчивое отставание от цели. Если для компенсации теплопотерь нужен запрос 20%, при P = 10 такой запрос соответствует ошибке 0,2 °C. Это объясняет назначение дальнейшей настройки I; автоматически увеличивать все коэффициенты не следует.
 
=== Как работают I и D ===
 
'''I — накопленная поправка.''' На каждом полном расчёте к ней прибавляется '''I × 10 × ошибка температуры'''. Например, при I = 0,02 и неизменной ошибке 0,5 °C прибавка составляет 0,1 процентного пункта за расчёт. При P = 10 первый полный расчёт даст 50,1%, второй — 50,2%, если накопление началось с нуля и ограничения не сработали. За шесть таких расчётов с периодом 10 минут накопится 0,6 процентного пункта.
 
В этой реализации I не умножается на длительность интервала в секундах. Поэтому уменьшение периода с 10 до 5 минут удваивает число прибавок за час. При выходе расчётного запроса за границы 0–100% накопленная составляющая сбрасывается; её также сбрасывают изменение цели, переключение режима управления и изменение включения. I = 0 не добавляет новые накопления.
 
'''D — поправка по изменению ошибки.''' Она равна '''D × 10 × (текущая ошибка − предыдущая ошибка)'''. Если ошибка уменьшилась с 0,5 до 0,4 °C, при D = 0,05 поправка равна −0,05 процентного пункта: она уменьшает запрос при приближении к цели. При росте ошибки знак меняется. Это разность между расчётами, без деления на прошедшие секунды; D также зависит от выбранного периода.
 
'''Полный расчёт по таймеру и быстрая реакция на события различаются.''' Полный PID выполняется по заданному периоду. Обычный цикл работы и поступление новых показаний температуры не пересчитывают процент открытия: результат последнего PID сохраняется до очередного расчёта или отдельного события. При изменении цели, режима управления или включения накопленная часть сбрасывается и сразу рассчитывается запрос только по P. Изменение флага ошибки также вызывает быстрый расчёт по P, но само по себе не обнуляет накопленную I; она снова участвует на следующем полном расчёте. Поэтому при наладке смотрите не только процент, но и время расчёта и события, которые ему предшествовали.
 
Период PID и период ШИМ настраиваются отдельно. Например, полный расчёт PID и ШИМ могут оба иметь период 10 минут, но это не означает синхронное начало циклов. Настройку ШИМ выбирают по приводу; описание приведено в [[#Настройте медленный ШИМ|разделе сервопривода]].
 
=== Примеры наладки для разных конструкций пола ===
 
Сначала для всех примеров задайте '''10 / 0 / 0''' и оцените полный прогрев и остывание. Далее меняйте один параметр. Таблица ниже — '''примеры следующих проверочных настроек при указанном поведении''', а не испытанные на вашем объекте готовые профили и не рекомендации производителя покрытия.
 
На результат влияют не только плитка или ламинат: существенны толщина и масса стяжки, расположение труб и датчика, тепловое сопротивление покрытия с подложкой, температура подачи, расход и время хода привода. В руководстве [https://ufhrevit.uponor.com/Manual/10.%20Floor%20Properties/Floor%20Properties.html Uponor по свойствам пола] эти характеристики конструкции рассматриваются раздельно. Низкопрофильная система [https://www.uponor.com/en-en/products/underfloor-heating-and-cooling/minitec-wet-installation Uponor Minitec], например, отличается более быстрым откликом благодаря малой толщине слоя над трубами.
 
<div style="overflow-x:auto;">
{| class="wikitable"
! Конструкция и наблюдение
! Пример следующей настройки P / I / D
! Что проверить
|-
| '''Плитка или камень на массивной стяжке''': после снижения запроса температура продолжает заметно расти и регулярно проходит выше цели
| '''5 / 0 / 0'''; период PID пока оставить 10 минут
| По сравнению с P = 10 запрос при ошибке 0,5 °C уменьшится с 50 до 25%. Наблюдайте весь цикл прогрева и остывания; одновременно проверьте температуру подачи. Не добавляйте I на фоне продолжающегося перегрева.
|-
| '''Ламинат или инженерная доска''': покрытие допускает водяной подогрев, но отклик запаздывает и при 10 / 0 / 0 возникают колебания
| '''5 / 0 / 0''' как отдельный проверочный шаг; период 10 минут
| Сначала проверьте допустимую температуру покрытия и подложку. Уменьшение P не заменяет температурное ограничение. Если на 10 / 0 / 0 контур работает устойчиво, уменьшать P только из-за названия покрытия не нужно.
|-
| '''Тонкослойная или лёгкая сухая система''': температура реагирует сравнительно быстро, на 10 / 0 / 0 работает устойчиво
| Оставить '''10 / 0 / 0''', период 10 минут
| Устойчивый результат не требует включения I и D. Если после проверки расхода и подачи остаётся постоянное небольшое отставание без колебаний, отдельным опытом можно сравнить P = 15: при ошибке 0,2 °C запрос будет 30% вместо 20%. Если появились колебания, вернитесь к предыдущему значению.
|-
| '''Любое покрытие''': P уже подобран, нет перегрева, но требуется оценить компенсацию устойчивого отставания
| Сохранить выбранный P; пробный '''I = 0,02, D = 0''', период 10 минут
| Это опыт по накоплению 0,1 процентного пункта за полный расчёт при ошибке 0,5 °C, а не универсальная настройка. Сохраняйте цель и режим неизменными во время наблюдения: их изменение сбрасывает накопление. Оценивайте несколько полных расчётов и весь тепловой отклик.
|}
</div>
 
'''Допустимую температуру берите из документации конкретного покрытия.''' Например, [https://www.quick-step.co.uk/en-gb/frequently-asked-questions/laminate/general/can-i-use-quick-step-laminate-in-combination-with-underfloor-heating Quick-Step для своих совместимых ламинированных полов] указывает максимальную контактную температуру поверхности 27 °C. Это пример ограничения конкретной продукции, а не общий предел для всех покрытий. Показание датчика в стяжке может отличаться от температуры верхней поверхности; положение датчика и настройку предела нужно согласовать с конструкцией пола.
 
В режиме '''комфорт воздуха''' ограничение задают параметром '''Макс. температура пола''' и проверяют по фактическим измерениям. В режиме '''комфорт пола''' учитывайте ограничения, описанные [[#5. Выберите режим: комфорт пола или комфорт воздуха|выше]]; не считайте подбор P заменой ограничения температуры.


=== Порядок наладки ===
=== Порядок наладки ===


# Сначала проверьте датчики и направление НЗ/НО. Повышение запроса должно приводить к открытию клапана и поступлению тепла. Неверную полярность нельзя исправить коэффициентами PID.
# Проверьте датчики, выбранный режим и направление НЗ/НО. Повышение запроса должно приводить к открытию клапана и поступлению тепла. Неверную полярность нельзя исправить коэффициентами PID.
# Задайте период ШИМ по приводу, диапазон 0–100% и допустимые температурные цели. Убедитесь, что контур гидравлически отрегулирован и теплоноситель доступен.
# Настройте ШИМ по приводу, его диапазон открытия и допустимые температурные цели. Проверьте гидравлическую балансировку и доступность теплоносителя.
# Зафиксируйте начальные параметры PID. Значения по умолчанию можно использовать как исходную точку проверки, но не считать готовой настройкой любого объекта.
# Задайте '''P = 10, I = 0, D = 0''', период полного расчёта '''10 минут'''. Сохраните и примените параметры штатным способом, описанным в следующем шаге.
# Меняйте один параметр за раз и наблюдайте полный отклик пола: целевую температуру, измерение и запрос открытия. Реакция водяного пола значительно медленнее переключения реле.
# Запишите цель, температуру, запрос открытия и параметры. Оценивайте весь тепловой отклик, а не несколько секунд после команды. Для массивной стяжки наблюдение может занимать часы; сравнивайте результаты при сходных условиях.
# Если влияние составляющих непонятно, на этапе наладки можно временно поставить I = 0 и D = 0, оценить работу P, затем постепенно добавить I для устранения устойчивого отклонения. Без I точное удержание цели при постоянных теплопотерях не гарантируется.
# При колебаниях попробуйте уменьшить P одним шагом, например 10 → 5. При устойчивом отставании сначала проверьте подачу, расход, ограничения и датчики; затем оценивайте изменение P или пробную I.
# D настраивайте после устойчивой работы с достоверными измерениями. При шумном датчике сначала устраните проблему измерения.
# Меняйте только один коэффициент за раз. D оставляйте 0, пока нет измерений, показывающих необходимость такой поправки. При шумном датчике сначала исправьте измерение.
# При перегреве и колебаниях оцените завышенные P/I, задержку привода и температуру подачи. При медленном прогреве сначала проверьте циркуляцию и фактическое открытие, затем коэффициенты.
# После изменения периода PID заново оцените I/D: одинаковые коэффициенты при другом числе расчётов за час не дают того же поведения.
 
Коэффициенты XIOT нельзя переносить без проверки из другого термостата или калькулятора PID: масштаб ошибки и способ учёта времени могут отличаться.


Не увеличивайте коэффициенты только потому, что клапан или пол не успел отреагировать за несколько секунд. Сохраняйте параметры каждого изменения и сравнивайте результаты в сопоставимых условиях.


== 7. Сохраните настройку и проверьте цепочку ==
== 7. Сохраните настройку и проверьте цепочку ==
Строка 256: Строка 369:
# Проверьте завершение публикации пользовательского интерфейса и получение его приложением или панелью.
# Проверьте завершение публикации пользовательского интерфейса и получение его приложением или панелью.
# Откройте карточку тёплого пола, проверьте выбранный режим, температуру и цель. Включите термостат и наблюдайте запрос открытия.
# Откройте карточку тёплого пола, проверьте выбранный режим, температуру и цель. Включите термостат и наблюдайте запрос открытия.
# В отладке реле проверьте отдельно отправку команды и получение обратного состояния от оборудования. При отсутствии подтверждения контроллер должен показать ошибку, а не сразу подставить команду в состояние.
# В отладке сервопривода проверьте выбранное реле, рассчитанные длительности включения/выключения и смену фаз. Одного неподвижного снимка состояния реле недостаточно для проверки ШИМ.
# В отладке сервопривода проверьте выбранное реле, рассчитанные длительности включения/выключения и смену фаз. Одного неподвижного снимка состояния реле недостаточно для проверки ШИМ.
# Проверьте фактическое движение привода с учётом его времени хода и поступление тепла в контур.
# Проверьте фактическое движение привода с учётом его времени хода и поступление тепла в контур.
Строка 262: Строка 376:
При проверке ШИМ отдельным ручным запросом сначала исключите команды от термостата к этому же приводу. После проверки верните штатную связь. Нельзя одновременно вручную управлять реле и оценивать правильность автоматического цикла.
При проверке ШИМ отдельным ручным запросом сначала исключите команды от термостата к этому же приводу. После проверки верните штатную связь. Нельзя одновременно вручную управлять реле и оценивать правильность автоматического цикла.


Порядок резервных копий и сохранения: [[Сохранение резервной копии проекта]].
Порядок резервных копий и сохранения: [[Project-backup|Сохранение резервной копии проекта]].


== Если результат отличается от ожидаемого ==
== Если результат отличается от ожидаемого ==
Строка 298: Строка 412:
== Связанные материалы ==
== Связанные материалы ==


* [[Виртуальное устройство "Тёплый пол"|Тёплый пол: общая справка и настройка электрического пола]].
* [[Underfloor-heating|Тёплый пол — общая справка об устройстве]].
* [[Виртуальное устройство "Сервопривод"|Сервопривод]].
* [[Electric-underfloor-heating-setup|Настройка электрического тёплого пола]].
* [[Виртуальное устройство "Реле"|Реле]].
* [[Servo-actuator|Сервопривод]].
* [[Виртуальное устройство "Датчик температуры"|Датчик температуры]].
* [[Relay|Реле]].
* [[Настройка драйвера Wiren Board в XIOT]].
* [[Temperature-sensor|Датчик температуры]].
* [[Wiren-board-driver-setup|Настройка драйвера Wiren Board в XIOT]].
* [https://wiki.wirenboard.com/wiki/WBIO-DO-SSR-8_Discrete_Outputs_Dry_Contact WBIO-DO-SSR-8: параметры, настройка и ограничения по партиям].
* [https://wiki.wirenboard.com/wiki/WBIO-DO-SSR-8_Discrete_Outputs_Dry_Contact WBIO-DO-SSR-8: параметры, настройка и ограничения по партиям].


[[Категория:Документация XIOT]]
[[Категория:Документация XIOT]]
{{DEFAULTSORT:Настройка водяного тёплого пола}}

Текущая версия от 22:04, 2 октября 2026

Главная страница → Каталог устройств → Тёплый пол → Водяной пол

Водяной тёплый пол в XIOT регулирует температуру помещения или поверхности пола через термоэлектрический привод клапана. Термостат рассчитывает требуемое открытие, устройство «Сервопривод» преобразует его в медленный ШИМ, а отдельное реле коммутирует питание привода.

Эта инструкция описывает один контур с двухпроводным термоэлектрическим приводом на 24 В постоянного тока и релейным выходом Wiren Board WBIO-DO-SSR-8. Для регулирования доступны режимы комфорт пола и комфорт воздуха.

Названия параметров и поведение сверены с редактором и XIOT-PLC v14.10~beta24, 02.10.2026. Периоды и температуры ниже — примеры настройки, а не универсальные значения для любого пола или привода.

Общая справка: Тёплый пол. Для нагрева через реле без сервопривода см. настройку электрического пола.

Как связаны устройства

Датчики → Тёплый пол с PID → Сервопривод с медленным ШИМ → Реле → питание привода клапана.

Что добавляем в редакторе За что отвечает Что выбираем или привязываем
Реле контура, тип «Реле» Включает и выключает питание привода Физический канал Wiren Board: адрес управления и адрес состояния
Привод контура, тип «Сервопривод» Преобразует запрос открытия в длительность включения реле «Реле контура» в блоке медленный ШИМ реле; тип НО/НЗ, период, диапазон открытия
Датчик пола, тип «Датчик температуры» Измеряет температуру поверхности Температурный канал физического датчика; назначение температура пола
Датчик воздуха, тип «Датчик температуры» Измеряет температуру помещения Температурный канал комнатного датчика; назначение температура воздуха
Тёплый пол Сравнивает температуру с целью и рассчитывает запрос открытия Датчики пола/воздуха и «Привод контура»; тип водяной, режим управления и параметры PID

Физические топики задаём только реле и датчикам. В характеристиках «Сервопривода» и «Тёплого пола» адреса оборудования оставляем пустыми: данные и команды проходят через выбранные устройства. Пользователь управляет тёплым полом; технические реле и привод можно скрыть из его интерфейса.

Адрес состояния и галочка рядом с ним

Порядок выбора адресов подробно описан в статье Привязка топиков к устройствам.

У физического реле включите ожидание обратного состояния от оборудования. В редакторе для этого ставят галочку рядом с адресом состояния. Подсказка этой галочки говорит об изменении характеристики только при получении значения из тега состояния. У реле должны быть заданы адрес управления и действительный адрес состояния.

При таком режиме команда уходит в оборудование, а отправленное значение не подставляется сразу в состояние реле. Контроллер ожидает подходящее значение из назначенного канала обратной связи. Получен ожидаемый ответ — команда подтверждена; ответа нет — контроллер фиксирует ошибку подтверждения. Просто отправленная команда ещё не означает выполненную команду.

Это важно для отопления: проверять следует подтверждённое состояние реле. При прямом управлении реле тёплый пол дополнительно проверяет его включение или выключение. В рассматриваемой цепочке Тёплый пол → Сервопривод → Реле ожидание ответа выполняет само реле; медленный ШИМ сервопривода не является подтверждением переключения физического выхода.

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

Перед настройкой

Нужны созданная комната, XIOT-PLC в проекте, настроенный драйвер Wiren Board и исправные датчики. Гидравлический контур, источник тепла и циркуляция должны быть подготовлены отдельно: открытие клапана само по себе не создаёт подачу теплоносителя.

Для примера используем WBIO-DO-SSR-8, установленный как боковой модуль контроллера Wiren Board. У него восемь нормально разомкнутых выходов оптореле. Максимальное коммутируемое напряжение — 30 В; допустимый ток и работа с AC/DC зависят от партии. Поэтому для выбранного привода проверяют рабочий и пусковой ток, напряжение и ревизию модуля. Напрямую коммутировать привод на 230 В этим модулем нельзя. См. документацию WBIO-DO-SSR-8.

Сначала активируйте подключённый модуль штатными средствами Wiren Board. При боковом подключении его выходы отображаются в устройстве Discrete I/O как EXTx_K1 … EXTx_K8. Для первого модуля и первого выхода пример канала — EXT1_K1, топик состояния — /devices/wb-gpio/controls/EXT1_K1. Фактический номер модуля и свободный канал выбирают по своему объекту; при подключении через WB-MIO адреса могут отличаться.

В редакторе XIOT откройте Драйверы → Wiren Board, выберите настроенную линию, например WB0, и нажмите Сканировать. Убедитесь, что нужный выход и температурные каналы появились в списке. Подробности подключения: Настройка драйвера Wiren Board в XIOT.

1. Добавьте реле и свяжите его с выходом WB

  1. В разделе Устройства и сценарии выберите комнату и добавьте Реле. Назовите его, например, «Реле контура».
  2. У характеристики включение откройте связи характеристики кнопкой настройки привязок.
  3. В адресе управления выберите свой выход Wiren Board, например wb-gpio → EXT1_K1.
  4. В адресе состояния выберите тот же канал. Штатный драйвер сам различает отправку команды и получение состояния; вручную добавлять /on в выбранный адрес XIOT не нужно.
  5. Включите ожидание подтверждения от физического реле: поставьте галочку рядом с адресом состояния. Не используйте немедленное локальное обновление вместо ответа оборудования.
  6. В параметре Выключать после включения, через время установите 0. Длительностью включения будет управлять сервопривод; отдельный таймер реле нарушит цикл.

На одном физическом выходе должен быть один согласованный источник управления. Не назначайте этот выход одновременно независимому сценарию, другому термостату или ещё одному устройству «Реле».

Справка: Реле.

2. Добавьте сервопривод и выберите реле

  1. Добавьте устройство Сервопривод, например «Привод контура».
  2. Оставьте обязательные характеристики включение и процент открытия сервопривода. Их физические адреса не заполняйте; галочку рядом с адресом состояния оставьте снятой.
  3. В блоке медленный ШИМ реле выберите «Реле контура».
  4. Настройте тип клапана, период ШИМ и диапазон открытия по разделам ниже.

Здесь имеется в виду термоэлектрический привод, который открывает или закрывает клапан при подаче питания. Эта схема не задаёт аналоговое напряжение 0–10 В и не управляет трёхпозиционным моторным приводом.

Нормально закрытый и нормально открытый привод

Параметр называется Тип клапана (управления шим реле). Он описывает поведение привода с клапаном без питания, а не тип электрических контактов релейного модуля.

Настройка сервопривода Без питания привода При подаче питания Как закрывается контур по команде XIOT
НЗ (без питания закрыт) Клапан закрыт Клапан открывается Реле выключается
НО (без питания открыт) Клапан открыт Клапан закрывается Реле включается и подаёт питание

У WBIO-DO-SSR-8 контакты выхода нормально разомкнуты. При этом подключённый к выходу привод может быть НЗ или НО: направление управления задаётся параметром сервопривода XIOT.

В редакторе значение по умолчанию — НО. Для НЗ-привода его обязательно меняют на НЗ. Тип берут из паспорта конкретного привода и проверяют по его фактическому поведению.

Выключение «Сервопривода» в XIOT означает команду закрыть отопительный контур. Для НО-привода это требует питания, поэтому выключенный тёплый пол может соответствовать включённому реле. При пропадании питания НО-клапан возвращается в открытое состояние. Термоэлектрический привод перемещается не мгновенно: время открытия и закрытия определяется его паспортом.

Настройте медленный ШИМ

ШИМ здесь — повторяющийся цикл с участками «питание подано» и «питание снято». Длительность участков зависит от запроса открытия и типа привода. Тепловая инерция привода позволяет регулировать среднее воздействие на клапан.

Параметр Единица и значение в редакторе Настройка примера
Период ШИМ Минуты; диапазон 1–30, по умолчанию 10 10 минут; сверить с допустимым циклом привода
Минимальный % открытия Проценты; по умолчанию 5 0%, чтобы нулевой запрос мог закрыть контур
Максимальный % открытия Проценты; по умолчанию 100 100%, если проектом не требуется другое ограничение

Пример при периоде 10 минут и запросе открытия 30%:

Тип привода Реле включено, питание подано Реле выключено, питание снято
НЗ 3 минуты 7 минут
НО 7 минут 3 минуты

При 100% открытия НЗ-привод получает питание постоянно, НО — остаётся без питания. При 0% и минимуме 0% состояния обратные. Для промежуточных значений реле переключается по циклу; изменение запроса корректирует длительности фаз.

Процент открытия — запрос управления, а не измерение положения штока или расхода воды. Например, 30% не доказывает, что клапан физически открыт ровно на треть или пропускает 30% расхода. Действительное поведение зависит от привода, клапана, температуры и гидравлики.

Если оставить минимум 5%, работающий сервопривод повысит даже нулевой запрос до 5%. Это ограничение не является гарантией минимального протока и не заменяет гидравлическую настройку. Для описанной схемы с возможностью полного закрытия используйте 0–100%.

Справка: Сервопривод.

3. Добавьте датчики температуры

Для комфорта пола нужен датчик пола. Для комфорта воздуха нужны датчик воздуха и датчик пола: первый участвует в поддержании температуры помещения, второй — в ограничении нагрева поверхности.

  1. Добавьте Датчик температуры, назовите «Датчик пола».
  2. У характеристики текущая температура выберите адрес состояния температурного канала оборудования. Адрес управления оставьте пустым.
  3. В параметре назначение датчика выберите температура пола.
  4. Аналогично создайте «Датчик воздуха», свяжите его с комнатным датчиком и выберите назначение температура воздуха.
  5. Проверьте показания, калибровку, допустимый диапазон и обнаружение отсутствия свежих данных.

Для датчика пола подходит, например, WB-MAI6 с выносным NTC 10 кОм, B = 3950 K. Тип входа на WB-MAI6 должен соответствовать установленному датчику; в XIOT выбирайте температурный канал IN 1 P Temperature, выдающий °C. Канал сопротивления IN 1 P Resistance для температуры не подходит. Этот пример подробно разобран в настройке датчика электрического пола.

Показание комнатного датчика не заменяет температуру поверхности пола. Справка: Датчик температуры.

4. Добавьте водяной тёплый пол

  1. Добавьте устройство Тёплый пол, например «Водяной пол — гостиная».
  2. В Типе теплого пола выберите водяной.
  3. Оставьте характеристику включение; включите температуру пола, целевую температуру, процент открытия сервопривода и ошибку работы теплого пола. Для комфорта воздуха дополнительно включите температуру воздуха. Связанные характеристики ошибок датчиков включаются вместе с температурами.
  4. В Датчиках температуры пола выберите «Датчик пола». В Датчиках температуры воздуха выберите «Датчик воздуха», если он используется.
  5. В блоке Сервопривод выберите «Привод контура».
  6. Блок Реле у самого тёплого пола оставьте пустым: реле уже управляется через сервопривод.
  7. В характеристиках тёплого пола физические адреса не назначайте; галочку рядом с адресом состояния оставьте снятой.

Получается одна цепочка управления: термостат → сервопривод → реле. Если добавить то же реле ещё и непосредственно в тёплый пол, две логики начнут отдавать ему команды.

Для этой схемы не настраивайте нагрев через Импульсный режим работы реле в параметрах тёплого пола. Медленный ШИМ задаётся в Сервоприводе; гистерезис прямого релейного управления также не заменяет PID сервопривода.

5. Выберите режим: комфорт пола или комфорт воздуха

Режим управления Что означает целевая температура Основной датчик Пример цели
комфорт пола Требуемая температура поверхности «Датчик пола» 26 °C — только если допустимо для данного пола и покрытия
комфорт воздуха Требуемая температура помещения «Датчик воздуха» 22 °C; датчик пола дополнительно ограничивает нагрев поверхности

В комфорте пола PID рассчитывает открытие по разнице между целью и температурой пола. Если нужно учитывать перегрев помещения, включите Ограничивать нагрев при превышении желаемой температуры воздуха в помещении. Для этого должны быть настроены температура воздуха и её уставка в комнате. Регулятор ограничит запрос по воздуху, сохраняя основную цель по полу.

В комфорте воздуха PID использует температуру воздуха, а параметр Макс. температура пола задаёт предел поверхности. В рассматриваемой версии при достижении этого предела расчёт отправляет сервоприводу нулевой запрос. Чтобы этот запрос мог закрыть контур, минимальное открытие сервопривода должно быть 0%. Целевая температура в этом режиме связана с целевой температурой комнаты.

При управлении через сервопривод в v14.10~beta24 предел «Макс. температура пола» учитывается PID в режиме «комфорт воздуха». В «комфорте пола» его нельзя считать дополнительным независимым ограничителем сервопривода. Задавайте допустимую уставку поверхности и предусматривайте ограничения температуры теплоносителя по проекту отопления.

При переключении режима проверьте уставку заново: например, 26 °C пола и 26 °C воздуха — разные требования. Проверьте также, что выбран нужный датчик и приходят свежие измерения.

6. Настройте PID-регулятор

PID находится в Тёплом полу. Он рассчитывает запрос открытия от 0 до 100%. Сервопривод получает этот запрос, ограничивает его своим минимумом/максимумом и формирует медленный ШИМ. Реле получает только команды включить или выключить питание. Процент запроса не является измеренным расходом воды или тепловой мощностью контура.

Начните с P = 10, I = 0, D = 0 и периода полного расчёта 10 минут. Это понятный исходный режим: запрос определяется текущим отклонением температуры, без накопления интегральной части и дифференциальной поправки. Значения не являются готовой настройкой любого объекта.

Если установленная версия редактора подставляет прежние 1 / 0,1 / 0,05, вручную задайте 10 / 0 / 0. В уже сохранённом устройстве проверьте все три поля: изменение значений по умолчанию не перенастраивает существующий контур автоматически.

Параметр тёплого пола Стартовое значение Что меняет
Время цикла PID регулирования сервопривода 10 минут Интервал полного расчёта P, I и D. Это не период ШИМ сервопривода. Для обычной работы задайте положительное время.
Пропорциональный коэффициент PID сервопривода — P 10 Запрос пропорционален текущей ошибке. При I = D = 0 ошибка 0,1 °C даёт 10% открытия, 0,5 °C — 50%, 1 °C — 100%.
Интегральный коэффициент PID сервопривода — I 0 На каждом полном расчёте добавляет влияние ошибки в накопленную составляющую. На старте накопление отключено; включать его следует после оценки работы P.
Дифференциальный коэффициент PID сервопривода — D 0 Реагирует на разницу ошибок между полными расчётами. На старте отключён; чувствителен к скачкам измерений.

Как считается пропорциональная часть

Ошибка температуры — целевая температура минус текущая. В режиме комфорт пола сравниваются цель и температура пола, в режиме комфорт воздуха — цель и температура воздуха. Один шаг ошибки 0,1 °C соответствует единице в расчёте регулятора.

При I = D = 0 и без дополнительных ограничений:

Запрос открытия, % = P × 10 × (цель − текущая температура)

Результат ограничивается диапазоном 0–100%. Поэтому P = 1 означает 1 процентный пункт открытия на 0,1 °C ошибки, а P = 10 — 10 процентных пунктов на те же 0,1 °C.

Ошибка температуры Запрос при P = 1 Запрос при P = 10
Цель достигнута или температура выше цели 0% 0%
0,1 °C 1% 10%
0,2 °C 2% 20%
0,5 °C 5% 50%
1 °C 10% 100%
2 °C 20% 100% — сработало ограничение диапазона

Это итоговый запрос, а не прибавление процента при каждом пересчёте. Например, при цели воздуха 22 °C, измерении 21,5 °C и P = 10 каждый расчёт даёт 50%. Пока ошибка не меняется, следующие расчёты не повышают запрос до 100%.

При P = 10 полное открытие достигается уже при отставании на 1 °C. Уменьшение P до 5 растягивает этот диапазон до 2 °C и даёт более плавное снижение запроса при приближении к цели. Увеличение до 20 сужает его до 0,5 °C. Большее P усиливает реакцию, но само по себе не уменьшает тепловую инерцию пола.

У регулирования только по P возможно устойчивое отставание от цели. Если для компенсации теплопотерь нужен запрос 20%, при P = 10 такой запрос соответствует ошибке 0,2 °C. Это объясняет назначение дальнейшей настройки I; автоматически увеличивать все коэффициенты не следует.

Как работают I и D

I — накопленная поправка. На каждом полном расчёте к ней прибавляется I × 10 × ошибка температуры. Например, при I = 0,02 и неизменной ошибке 0,5 °C прибавка составляет 0,1 процентного пункта за расчёт. При P = 10 первый полный расчёт даст 50,1%, второй — 50,2%, если накопление началось с нуля и ограничения не сработали. За шесть таких расчётов с периодом 10 минут накопится 0,6 процентного пункта.

В этой реализации I не умножается на длительность интервала в секундах. Поэтому уменьшение периода с 10 до 5 минут удваивает число прибавок за час. При выходе расчётного запроса за границы 0–100% накопленная составляющая сбрасывается; её также сбрасывают изменение цели, переключение режима управления и изменение включения. I = 0 не добавляет новые накопления.

D — поправка по изменению ошибки. Она равна D × 10 × (текущая ошибка − предыдущая ошибка). Если ошибка уменьшилась с 0,5 до 0,4 °C, при D = 0,05 поправка равна −0,05 процентного пункта: она уменьшает запрос при приближении к цели. При росте ошибки знак меняется. Это разность между расчётами, без деления на прошедшие секунды; D также зависит от выбранного периода.

Полный расчёт по таймеру и быстрая реакция на события различаются. Полный PID выполняется по заданному периоду. Обычный цикл работы и поступление новых показаний температуры не пересчитывают процент открытия: результат последнего PID сохраняется до очередного расчёта или отдельного события. При изменении цели, режима управления или включения накопленная часть сбрасывается и сразу рассчитывается запрос только по P. Изменение флага ошибки также вызывает быстрый расчёт по P, но само по себе не обнуляет накопленную I; она снова участвует на следующем полном расчёте. Поэтому при наладке смотрите не только процент, но и время расчёта и события, которые ему предшествовали.

Период PID и период ШИМ настраиваются отдельно. Например, полный расчёт PID и ШИМ могут оба иметь период 10 минут, но это не означает синхронное начало циклов. Настройку ШИМ выбирают по приводу; описание приведено в разделе сервопривода.

Примеры наладки для разных конструкций пола

Сначала для всех примеров задайте 10 / 0 / 0 и оцените полный прогрев и остывание. Далее меняйте один параметр. Таблица ниже — примеры следующих проверочных настроек при указанном поведении, а не испытанные на вашем объекте готовые профили и не рекомендации производителя покрытия.

На результат влияют не только плитка или ламинат: существенны толщина и масса стяжки, расположение труб и датчика, тепловое сопротивление покрытия с подложкой, температура подачи, расход и время хода привода. В руководстве Uponor по свойствам пола эти характеристики конструкции рассматриваются раздельно. Низкопрофильная система Uponor Minitec, например, отличается более быстрым откликом благодаря малой толщине слоя над трубами.

Конструкция и наблюдение Пример следующей настройки P / I / D Что проверить
Плитка или камень на массивной стяжке: после снижения запроса температура продолжает заметно расти и регулярно проходит выше цели 5 / 0 / 0; период PID пока оставить 10 минут По сравнению с P = 10 запрос при ошибке 0,5 °C уменьшится с 50 до 25%. Наблюдайте весь цикл прогрева и остывания; одновременно проверьте температуру подачи. Не добавляйте I на фоне продолжающегося перегрева.
Ламинат или инженерная доска: покрытие допускает водяной подогрев, но отклик запаздывает и при 10 / 0 / 0 возникают колебания 5 / 0 / 0 как отдельный проверочный шаг; период 10 минут Сначала проверьте допустимую температуру покрытия и подложку. Уменьшение P не заменяет температурное ограничение. Если на 10 / 0 / 0 контур работает устойчиво, уменьшать P только из-за названия покрытия не нужно.
Тонкослойная или лёгкая сухая система: температура реагирует сравнительно быстро, на 10 / 0 / 0 работает устойчиво Оставить 10 / 0 / 0, период 10 минут Устойчивый результат не требует включения I и D. Если после проверки расхода и подачи остаётся постоянное небольшое отставание без колебаний, отдельным опытом можно сравнить P = 15: при ошибке 0,2 °C запрос будет 30% вместо 20%. Если появились колебания, вернитесь к предыдущему значению.
Любое покрытие: P уже подобран, нет перегрева, но требуется оценить компенсацию устойчивого отставания Сохранить выбранный P; пробный I = 0,02, D = 0, период 10 минут Это опыт по накоплению 0,1 процентного пункта за полный расчёт при ошибке 0,5 °C, а не универсальная настройка. Сохраняйте цель и режим неизменными во время наблюдения: их изменение сбрасывает накопление. Оценивайте несколько полных расчётов и весь тепловой отклик.

Допустимую температуру берите из документации конкретного покрытия. Например, Quick-Step для своих совместимых ламинированных полов указывает максимальную контактную температуру поверхности 27 °C. Это пример ограничения конкретной продукции, а не общий предел для всех покрытий. Показание датчика в стяжке может отличаться от температуры верхней поверхности; положение датчика и настройку предела нужно согласовать с конструкцией пола.

В режиме комфорт воздуха ограничение задают параметром Макс. температура пола и проверяют по фактическим измерениям. В режиме комфорт пола учитывайте ограничения, описанные выше; не считайте подбор P заменой ограничения температуры.

Порядок наладки

  1. Проверьте датчики, выбранный режим и направление НЗ/НО. Повышение запроса должно приводить к открытию клапана и поступлению тепла. Неверную полярность нельзя исправить коэффициентами PID.
  2. Настройте ШИМ по приводу, его диапазон открытия и допустимые температурные цели. Проверьте гидравлическую балансировку и доступность теплоносителя.
  3. Задайте P = 10, I = 0, D = 0, период полного расчёта 10 минут. Сохраните и примените параметры штатным способом, описанным в следующем шаге.
  4. Запишите цель, температуру, запрос открытия и параметры. Оценивайте весь тепловой отклик, а не несколько секунд после команды. Для массивной стяжки наблюдение может занимать часы; сравнивайте результаты при сходных условиях.
  5. При колебаниях попробуйте уменьшить P одним шагом, например 10 → 5. При устойчивом отставании сначала проверьте подачу, расход, ограничения и датчики; затем оценивайте изменение P или пробную I.
  6. Меняйте только один коэффициент за раз. D оставляйте 0, пока нет измерений, показывающих необходимость такой поправки. При шумном датчике сначала исправьте измерение.
  7. После изменения периода PID заново оцените I/D: одинаковые коэффициенты при другом числе расчётов за час не дают того же поведения.

Коэффициенты XIOT нельзя переносить без проверки из другого термостата или калькулятора PID: масштаб ошибки и способ учёта времени могут отличаться.


7. Сохраните настройку и проверьте цепочку

  1. Сохраните проект в редакторе.
  2. Выполните Загрузить конфигурацию на контроллер и дождитесь завершения. Сохранение в облаке и применение конфигурации на XIOT-PLC проверяются отдельно.
  3. Проверьте завершение публикации пользовательского интерфейса и получение его приложением или панелью.
  4. Откройте карточку тёплого пола, проверьте выбранный режим, температуру и цель. Включите термостат и наблюдайте запрос открытия.
  5. В отладке реле проверьте отдельно отправку команды и получение обратного состояния от оборудования. При отсутствии подтверждения контроллер должен показать ошибку, а не сразу подставить команду в состояние.
  6. В отладке сервопривода проверьте выбранное реле, рассчитанные длительности включения/выключения и смену фаз. Одного неподвижного снимка состояния реле недостаточно для проверки ШИМ.
  7. Проверьте фактическое движение привода с учётом его времени хода и поступление тепла в контур.
  8. Выключите тёплый пол. Запрос должен сняться, привод — получить команду закрытия; для НО это будет включённое реле, для НЗ — выключенное.

При проверке ШИМ отдельным ручным запросом сначала исключите команды от термостата к этому же приводу. После проверки верните штатную связь. Нельзя одновременно вручную управлять реле и оценивать правильность автоматического цикла.

Порядок резервных копий и сохранения: Сохранение резервной копии проекта.

Если результат отличается от ожидаемого

Наблюдение Что проверить
Запрос растёт, но контур остывает Тип НО/НЗ, правильность физического канала и клапана, питание привода, циркуляцию и температуру подачи
Реле включено при выключенном тёплом поле Для НО-привода это нормальная команда закрытия; проверить выбранный тип и реальное положение клапана
Термостат запрашивает 0%, но сервопривод оставляет небольшой процент Минимальный % открытия: для полного закрытия требуется 0%
Процент есть, реле не переключается Выбран ли выход в медленном ШИМ реле, включён ли сервопривод, не является ли запрос крайним, не продолжается ли текущая длинная фаза
Цикл неожиданно обрывается или выход переключается посторонним образом Таймер автоотключения реле, второй управляющий сценарий, прямая привязка того же реле в тёплый пол, ручные команды и настройки оборудования
Температура держится выше или ниже цели Назначение и калибровку датчика, выбранный режим, ограничения открытия, температуру подачи, балансировку и затем PID
Нет свежей температуры или выставлена ошибка датчика Физический датчик, канал °C, связь драйвера, время обнаружения отсутствия данных и выбор датчика в тёплом полу

Водяной пол в текущей версии не повторяет защитное выключение электрического пола при ошибке датчика. Не считайте такой флаг гарантией закрытия клапана: до устранения причины проверьте фактическое состояние и при необходимости выключите термостат. Ограничение по температуре требует исправного датчика и не заменяет предусмотренные проектом защиты отопления.

Связанные материалы