Предисловие
Здесь на Sprut.AI есть много статей об интеграции кондиционера в Home Assistant. Но все они подразумевают, что кондиционер имеет задатки ума, и достаточно добавить блок согласования, немножко танцев с бубном и вуаля, кондиционер управляется через Home
Assistant. А что делать таким пользователям как я, у которого кондиционеру чуть больше 15 лет, и в те времена никто и не предполагал, что бытовые приборы могут быть умными. Благо у этих кондиционеров есть инфракрасный пульт управления.
Способ управления
А управлять кондиционером мы будем через этот самый инфракрасный канал управления (сори за тавтологию.) Есть такая прекрасная система EspHome, и в ней уже заложен климатический компонент, который позволяет управлять посредством передачи команд через ИК канал. В частности у меня кондиционер Daewoo серии DSB, который трудится у меня, как я уже сказал, более 15 лет. Пробежка по гуглу показала, что эта серия кондеев жива до сих пор. Один минус такого решения - нет полноценной обратной связи.
Компоненты
В качестве системы управления я использовал плату Wemos D1 mini, построенную на ESP8266. На этой плате есть USB-UART адаптер и встроенный стабилизатор на 3.3 Вольта. Купил в магазине электроники ИК светодиоды, пару транзисторов, и собрал на коленке пульт. Забегая вперед скажу, что в итоге в схему добавились еще фотоприемник TSOP4836 и датчик DHT22.
Загрузил пример конфига с сайта EspHome. Кондиционер никак не реагировал на команды, перебрал все доступные платформы.
Для пробы загрузил пример ИК пульта для телевизора, он нормально реагирует.
# Example configuration entry remote_transmitter: pin: GPIO12 carrier_duty_percent: 50% climate: - platform: coolix # adjust to match your AC unit! name: "Living Room AC"
Тогда решил подключить фотоприемник.
# Example configuration entry remote_receiver: id: rcvr pin: number: GPIO3 inverted: True mode: INPUT_PULLUP # high 55% tolerance is recommended for some remote control units tolerance: 55% climate: - platform: coolix name: "Living Room AC" receiver_id: rcvr
При установке платформы coolix, в логе посыпались команды с пульта кондиционера . Но кондиционер никак не хотел реагировать. Нашел в закромах какой-то старый пульт, выдрал оттуда светодиод, подключил напрямую к wemos и, о чудо, кондиционер стал реагировать. Побаловавшись все ми режимами, решил все это дело внедрить внутрь кондея.
Над штатны м фотоприе мнико м были площадки еще для одного. Припаял ножки питания нового фотоприе мника к ним. Вывод данных подпаял к проводу. Перед штатны м фотоприе мнико м раз местил ИК светодиод, один вывод которого припаял к зе мляно му полигону на плате, второй вывод - на провод. К вывода м питания платы подпаял еще два провода.
Все вошло в корпус, снаружи ничего не торчит. На задней стенке корпуса сделал вырез под плату Wemos. Плату закрепил термоклеем. Также подпаял на проводах датчик DHT22. В дальнейшем хочу его поменять, т.к. по влажности сильно врет, периодически показывает 100%. Думал разместить этот датчик внутри корпуса кондея, рядом со штатным датчиком температуры. Но увидев, что штатный датчик обрастает пылью, решил вынести DHT наружу.
Итоговая конфигурация EspHome получилась такой:
esphome: name: ir_remote platform: ESP8266 board: d1_mini wifi: ssid: !secret wifi_ssid password: !secret wifi_password manual_ip: static_ip: 192.168.1.125 gateway: 192.168.1.1 subnet: 255.255.255.0 ap: ssid: "Ir Remote Fallback Hotspot" password: "XfR8htnrclIC" captive_portal: logger: baud_rate: 0 api: password: "12345" ota: password: "12345" sensor: - platform: dht pin: D5 temperature: name: "DHT Temperature" accuracy_decimals: 2 id: roomtemp humidity: name: "DHT Humidity" accuracy_decimals: 2 model: DHT22 update_interval: 60s - platform: wifi_signal name: "IR Remote WiFi Signal" update_interval: 60s - platform: uptime name: "IR Remote uptime" switch: - platform: restart name: "IR Remote restart" remote_receiver: id: rcvr pin: number: GPIO12 inverted: True mode: INPUT_PULLUP tolerance: 55 remote_transmitter: pin: RX carrier_duty_percent: 50% climate: - platform: coolix name: "Living Room AC" sensor: roomtemp #сенсор показывающий текущую температуру receiver_id: rcvr #фотоприемник
Интересный момент. В карточке управления кондея есть режим вертикального качания шторок. И оказалось кондей умеет ими качать, с пульта этот режим задать нельзя. Кнопка swing на пульте просто перемещает шторку на некоторый угол.
В итоге кондиционер залетает в Home Аssistant. Причем все режимы управления работают. При управлении кондиционером с помощью штатного пульта, модуль тоже принимает команды пульта, и в карточке режимы меняются. Получается что-то типа обратной связи.
Дальше в планах прикручивать различные автоматизации к кондею. У меня есть метеостанция, поэтому одним из параметров автоматизации будет температура на улице.
отличная статья. когда-то точно так хотел встроить трансмиттер в сам кондей
Если кому то надо кинул код на https://github.com/Ge1mer/air-conditioner/blob/master/ac_remote.yaml">гитхаб
Да уж, я тоже весь мозг сломал. Телевизору главное пофиг какой светодиод, работает с любым.
можно уточнить на какие пины нужно подключать ик диоды трансмиттера и ресивера?
вернее какие ножки диодов на какие пины?
Ресивер подключен к D6, а светодиод на RX
А вообще не принципиально, главное в конфиге исправить.
Спасибо, полезная статья!
Отличная статья! На лазихоум есть статья про разные спосбы подключения со ссылками на гит, пока пробую через юарт.