GrKoR / esphome_aux_ac_component

ESPHome component for AUX based air conditioners. Direct wifi control of HVAC by ESPHome and Home Assistant. HVAC status and command feedback are available.
Other
185 stars 44 forks source link

Изменение целевой температуры в режиме HEAT-COOL (на пульте называется AUTO) #45

Closed GrKoR closed 2 years ago

GrKoR commented 2 years ago

В ESPHome так называются режимы:

Наши сплиты имеют на ИК-пульте режим AUTO, но он соответствует режиму HEAT-COOL.

По инструкции в режиме HEAT-COOL сплит поддерживает температуру 25 градусов. Если включать этот режим с ИК-пульта, то выбрать целевую температуру он не даёт, показывая 25 градусов.

Yuriy @necroave экспериментировал с заданием целевой температуры для HEAT-COOL с помощью aux_ac. Результаты такие:

Вот такой график получился - поддерживается 22 в HEAT_COOL без проблем. При выставлении пограничных значений - начинаются спецэффекты. image image 32 [задавать тоже] пробовал. Оно выходит на 28 и там залипает

Стоит поэкспериментировать. Возможно, есть варианты в небольших пределах менять целевую температуру в режиме HEAT-COOL.

necroave commented 2 years ago

Как выясняется режим HEAT_COOL устанавливаемый через ESP - это автоматический режим из ESPHOME В данном режиме ESP сама переключает режим работы кондиционера для поддержания заданной температуры.

Режим HEAT_COOL: /// The climate device is set to heat/cool to reach the target temperature. CLIMATE_MODE_HEAT_COOL = 1,

Режим AUTO используемый с пульта - стоит использовать как отдельный режим AUTO согласно сорцам ESPHOME^ /** The climate device is adjusting the temperatre dynamically.

В случае введения дополнительного режима AUTO - проблема решается. Получается наличие режима HEAT_COOL, в котором используется регулировка температуры и ESP сама будет поддерживать заданную температуру переключая режимы. И режим AUTO, в котором ESPHOME явно запрещает регулировку температуры, и пригодятся изменения внесенные @Brokly для уточнения от сплита текущей целевой температуры ( как выясняется она у разных сплитов разная)

GrKoR commented 2 years ago

Потестил у себя, посмотрел логи @Brokly. Выяснил несколько моментов:

  1. Сплиты отрабатывают функцию по разному. От чего зависит поведение - не ясно.
    • у меня сплит в режиме HEAT_COOL позволяет установить целевую температуру
    • у @Brokly в логах видно, что при установке любой температуры в режиме AUTO сплит в рассылке пакетов возвращает температуру 25 градусов
  2. Что характерно, температура от производителя в режиме AUTO (HEAT_COOL) у сплитов тоже разная: у @Brokly автоматически ставит 25, у меня при включении режима с ИК-пульта ставит целевую температуру 24.
GrKoR commented 2 years ago

@necroave Насчет разного понимания режимов.

В режиме HEAT_COOL ESP сама ничего не делает. Это как раз и есть тот режим, который на сплите зовется AUTO. Система работает для достижения заданной температуры.

А режим AUTO в ESPHome - это как и написано в комментах, когда целевая температура меняется системой по своему разумению и пользователь на это никак не влияет.

По логам работы во всех случаях, о которых в телеграме спорили, система работала в режиме HEAT_COOL. Просто поведение системы было разное: у @Brokly целевая температура в этом режиме зашита в железо, а у нас - нет.

Поэтому нет нужды выделять эту историю как-то в отдельный режим. Достаточно снять прописанные 25 градусов в исходниках компонента. В этом случае для систем, где нет ограничений целевой температуры режима HEAT_COOL, появится возможность рулить температурой. Для тех систем, где есть ограничения на уровне железа, через несколько секунд после изменения целевой температуры в режиме HEAT_COOL сплит будет присылать пакет с реальной установленной температурой и в интерфейсе всё будет меняться в соответствии с полученными от сплита данными. То есть температура будет слетать на 25 (или сколько там у сплита будет зашито).

Изменения из PR #46 частично перенес в dev-ветку. Сам PR закрыл.