Один режим оказался слишком громким для пустой комнаты и слишком слабым для совещания

Проблема проявлялась в двух противоположных ситуациях. Между встречами установки продолжали работать с той же производительностью, и шум разносился из пустых помещений. Когда за столом собиралась большая группа, прежнего воздухообмена уже не хватало. Увеличить фиксированную скорость для всех комнат значило бы лишь перенести неудобство: риск духоты снизился бы, но шум и расход воздуха выросли бы на весь день.
Нужен был сигнал, который меняется вместе с фактической загрузкой помещения. Для переговорной таким сигналом может служить концентрация CO₂: люди выдыхают углекислый газ, и его рост помогает заметить, что вентиляция не успевает за числом присутствующих. При этом CO₂ не показывает все загрязнители воздуха и не задаёт универсальный порог для любого офиса. Поэтому значения, при которых система прибавляет и уменьшает воздухообмен, согласовали для этих помещений, а не переносили из случайной таблицы.
Возможность регулирования нашлась во внешнем входе

Первым делом проверили не датчики и не интерфейс диспетчера, а сами вентиляционные установки. У каждой нашёлся совместимый внешний вход управления 0/1–10 В. Это принципиальная граница решения: модуль Shelly не питает двигатель вентилятора и не регулирует его силовую цепь напрямую. Он передаёт низковольтную команду штатной автоматике установки, а та уже меняет производительность предусмотренным производителем способом.
Для каждого входа выбрали Shelly Pro Dimmer 0/1–10V PM. Устройство устанавливается на DIN-рейку, поддерживает управляющий сигнал 0–10 В и 1–10 В, Ethernet и локальное управление. Здесь оказалась важна не надпись «диммер», а соответствие интерфейса: такой же принцип сигнала используют не только световые драйверы, но и совместимые моторы и клапаны.
Эту схему нельзя переносить на любую вентиляцию по одному названию клеммы. До подключения нужно сверить документацию конкретной установки: допустимый тип сигнала, назначение контактов, общую точку и то, как автоматика трактует минимум и потерю команды. Если внешнего аналогового входа нет, это уже другая архитектура — с отдельным контроллером, преобразователем или интеграцией по поддерживаемому протоколу.
Четыре установки получили четыре независимых канала

В комплексе было четыре самостоятельные установки, поэтому для них сделали четыре независимых канала — по одному модулю на совместимый вход каждой установки. Так команда для одной переговорной не меняет режим соседней и неисправность одного канала не лишает регулирования остальные.
В самих переговорных разместили отдельные датчики CO₂. Общего датчика в коридоре было бы недостаточно: он показывал бы усреднённое состояние этажа и мог не заметить быстрое изменение в закрытой комнате. Локальный контроллер получает показания каждой переговорной и задаёт уровень только связанной с ней установке.
В этой архитектуре важнее не бренд датчика, а три требования: датчик должен регулярно передавать актуальное значение, контроллер — отличать нормальные данные от потерянных, а каждая команда — попадать именно в свой канал 0/1–10 В.
Локальная логика связала CO₂, резервную скорость и общий экран

Регулирование настроили на локальном контроллере. Когда показания CO₂ растут, он увеличивает команду для соответствующей установки. После совещания концентрация снижается, и система возвращает воздухообмен к согласованному минимальному режиму. Пороги и уровни команды нельзя переносить с чужого объекта: они зависят от помещения, расчётного расхода воздуха, характеристик установки и принятого алгоритма.
Отдельно предусмотрели ситуацию, когда датчик перестаёт присылать данные. Вместо того чтобы считать пропавшее значение нормой и оставить комнату без достаточного воздухообмена, контроллер переводит установку на заданную резервную скорость. Инженер видит состояние всех четырёх установок на одном экране и может отличить обычное снижение нагрузки от потери показаний.
Такое поведение подтверждают три наблюдаемых перехода: при росте CO₂ установка увеличивает воздухообмен, после окончания совещания возвращается к минимуму, а при недоступном показании переходит в резервный режим. Этот резерв защищает только от потери показаний. Остановку самого контроллера, потерю локальной сети и отключение питания проверяют отдельно: для них нужен собственный заранее заданный безопасный режим.
Интернет в основном контуре не нужен: датчики, контроллер и модули обмениваются данными в локальной сети. Облачный доступ можно добавить для удалённого просмотра, но делать от него зависимым регулирование переговорных не потребовалось. При пропаже внешней связи локальная логика продолжит работать, пока есть питание, локальная сеть и связь контроллера с устройствами.
В результате вентиляция больше не работает весь день в одном режиме. Она подстраивается под фактическую загрузку, после встречи возвращается к согласованному минимуму, а потеря показаний не остаётся скрытой от инженера.