Климатический класс для "комнат"

Есть несколько помещений с одинаковым набором устройств:

  • датчик температуры воздуха
  • датчик температуры воды на выходе из контура теплого пола
  • датчик открытия окна
  • датчик CO2
  • панель Sonoff NSPro

и есть устройства управления:

  • привод клапана контура теплого пола
  • приводы задвижек приточной и отточной вентиляций
  • регуляторы скорости приточного и отточного вентилятора

Есть желание написать некий универсальный код выдающий задание отоплению и вентиляции

Например пусть это будет Class
внутри которого будет проверяться соответствие условиям:

  • окно открыто - греть нельзя (например выше 18гр)
  • на панели выставлена температура выше температуры воздуха и окно закрыто - греть
  • co2 выше нормы - вентилировать
    ну и подобные условия

Объявляю комнаты (Классом)
А уже отдельно скрипт управления котлом и клапанами пола смотрит:

  • комната 1 - греть
  • комната 2 - ничего не надо
  • комната 3 - греть

так же с вентиляцией…

Подскажите как грамотней реализовать ?

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