cpsskipper

На Пикабу
Дата рождения: 28 декабря
642 рейтинг 77 подписчиков 28 подписок 6 постов 5 в горячем
Награды:
5 лет на Пикабу
144

Управляем кондиционером по wifi

Компании-инсталляторы так называемых умных домов утверждают, что мы никак не можем прожить без автоматического управления климатическими системами. Наш дом в обязательном порядке должен сам охладиться к нашему приходу. Что ж, давайте посмотрим, как нам предлагают это сделать. Вариантов управления на самом деле не много:

1. Родной беспроводной модуль кондиционера. Сможете управлять климатом с телефона через облако производителя. Связь двунаправленная, ибо используется, как правило UART, т.е. мы получаем текущее состояние кондиционера. К примеру для Mitsubishi Electric такая штука стоит около 15 т.р. Подходит не ко всем моделям.

2. Модуль CoolMaster от компании CoolAutomation. Штука умеет интегрироваться с большим количеством HVAC систем и не меньшим количеством систем домашней автоматизации. Связь так же двунаправленная. Стоимость соответствующая.

3. Отдельный ИК модуль, направленный на кондиционер. Связь односторонняя. Т.е если кто-то нажмет выключение на родном пульте, система об этом не узнает.

Таки образом, HVAC можно управлять по ИК и по UART.


Мой кондиционер Mitsubishi Electric HJ35 умеет только ИК, но это не надолго! Будем делать полноценную двустороннюю связь с управлением по WiFi и поддержкой MQTT

Это руководство подходит только к кондиционерам Mitsubishi Electric!

Все что нужно для переделки:

ESP8266, в моем случае это Wemos D1 mini.

Разъем папа:  JST pap-05v-s

Опционально разъем мама: JST S05B-PASK-2 S05B-PASK-2


Работа с "железом".

Все что вы делаете со своим кондиционером, вы делаете на свой страх и риск. Автор ответственности не несет.

1. Вскрываем кондиционер

2. Достаем плату управления. Нас интересует разъем CN105 (выделен красным кружком). На моделях, поддерживающих модули WiFi он уже установлен. У меня его нет -  значит припаиваем.

3. Обжимаем провода? припаиваем их к ESP8266 и подключаем к управляющей плате

4. Прошиваем ESP8266 для работы с кондиционером Mitsubishi Electric

Исходники, описание  и файлы интеграции с Home assistant тут:

https://github.com/SwiCago/HeatPump

5. Устанавливаем плату в кондиционер

Собираем кондиционер.  Все, с железом мы завершили


6. Настраиваем Home Assistant

Копируем в папку /custom_components/mitsubishi_mqtt файлы climate.py и manifest.json

В файл Configuration.yaml вносим следующий текст


climate:

- platform: mitsubishi_mqtt

name: "Mistubishi Heatpump"

command_topic: "heatpump/set"

temperature_state_topic: "heatpump/status"

state_topic: "heatpump"


Перезагружаем Home Assistant

Добавляем кондиционер на домашний экран Home Assistant

На этом интеграция в систему домашней автоматизации завершена при том управление с родного ИК пульта сохранено.

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


Стоимость доработки составила от силы 400 рублей.

Показать полностью 9
247

Считаем воду и не только

Лень двигатель прогресса... В очередной раз забыв передать показания счетчика в управляющую компанию, я решил, что с этим надо что-то делать. На тот момент у меня не было никакой домашней автоматизации, о всяких ардуино я слышал только краем уха, не говоря уже о ЛУТ и прочем. Сейчас оглядываясь назад я могу с уверенностью сказать: лентяй, который двигает прогресс- тот еще трудоголик.

Но, как говорится, от слов к делу.

За все время использования у меня было 3 версии счетчика воды :

v1. Умеет считывать и хранить расход воды и отправлять через WiFi письма в УК, имеет web интерфейс

v2. Все то же самое, только еще считывает статус с устройства защиты от протечек Нептун, а так же может им управлять через web интерфейс, строит графики потребления воды.

v3. Не умеет отправлять почту, нет web интерфейса. Ну чем не прогресс? Зато вся логика вынесена в Home Assistant, устройство умеет общаться по mqtt с сервером. Такая архитектура дала возможность установить на стояк батарей (он у меня один) электро краны и сделать простейшее устройство управляемое по mqtt, а не покупать отдельный блок нептуна для них.


Схема устройства

https://easyeda.com/cpsskipper/water_counter

Плата изготовлена по технологии ЛУТ

Esp8266 (в реализации Wemos) - микропроцессор и связь по WiFi

ADS1115 АЦП, т.к в EPS8266 только один АЦП. Использование АЦП связано с типом счетчиков воды. В моем случае параллельно геркону в счетчике стоит сопротивление, поэтому цепь не размыкается никогда.

Реле на 5V - замыкание сухих контактов в Нептуне для управления кранами

Прошивка написана в Arduino IDE. не забудьте скачать библиотеку для ESP8266.

Принцип написания - побольше говнокода и костылей, так что не пинайте. написано давно, вычищать лень.

В коде подставляем свои логин и пароль от WiFi и mqtt

https://yadi.sk/d/z7ja-BHBmF7Sag

Настройка Home Assistant

Скачиваем и сохраняем water.yaml в директорию /config/packages/

https://yadi.sk/d/PeAGvBkg7-M1Bw

Письма отправляются через Gmail. Прописываем вашу учетку в Email Notify, отредактируйте текст письма, чтобы было понятно от какой квартиры пришли показания.


В файле configuration.yaml указываем

homeassistant:

packages: !include_dir_named packages


На Lovelace вытаскиваем созданные объекты. В итоге получится следующая карточка

По итогу

1. Счетчик воды. При отключении электричества показания не сбрасываются.

2. Передача показаний счетчиков в УК по Email в заданный день месяца

3. Можно легко прикрутить графики потребления воды с помощью плагина Grafana

4. Информирование по Email о перекрытии кранов в доме

5. Позволяет удаленно перекрывать воду в доме


P.S Если у вас что-то не получается - пишите. Постараюсь помочь.

Показать полностью 3
23

Домашний питомец робот пылесос Xiaomi Roborock

Я всегда мечтал о домашнем питомце. Помню еще в младших классах я притащил домой только продравшего глаза котенка. Через пару лет он вырос в черно-белого кота, способного построить во дворе любую собаку. Потом был аквариум, собака. Родители всячески поддерживали во мне интерес к животным, но только сейчас я понимаю, насколько это было тяжело в плане выгула, кормления и уборки. С появлением собаки уже в моей семье я задумался о втором питомце. Питомец, который разговаривает, кушает только электричество и после себя оставляет... чистоту. Зовут его Xiaomi Roborock S2

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


Управление роботом возможно с кнопок на лицевой панели и из приложения MiHome: запуск, остановка, маршрут и карта, ресурс щеток. В принципе этого вполне достаточно.


Цель поста - показать, как подключить робот -пылесос в систему домашней автоматизации Home Assistant.


Итак, как всегда пошаговое руководство.


1. Нам нужно получить Token робота. Удаляем приложение MiHome на телефоне и устанавливаем ломаную версию


https://4pda.ru/pages/go/?u=https%3A%2F%2Fcloud.mail.ru%2Fpu...


Далее


1.1. Заходим в плагин пылесоса

1.2. Вызываем меню пылесоса (три точки в правом верхнем углу)

1.3. General settings

1.4. Информация о сети.

Если пылесос был добавлен ранее, до установки MI HOME от vevs, нужно его удалить и добавить заново вручную.


1.5 После получения плагина приложение можно удалить и установить родной MiHome


2. Заходим в Home Assistant (Hassio)

Скачиваем и сохраняем файл vacuum_xiaomi.yaml в директорию /config/packages/

https://yadi.sk/d/8l5ZQV-nJx8ZeQ

3. Добавляем карточку робота на основной экран Lovelace. Создаем ManualCard и в редактор вставляем текст файла Lovelace.txt из архива

4. Радуемся результату

Теперь пылесос будет запускаться по команде умного дома в 8:00 каждый день и убираться на полной мощности

Что мы теперь можем из интерфейса карточки: Запускать, останавливать уборку, отправлять пылесос на базу, запускать локальную уборку, устанавливать мощность пылесоса, управлять расписанием уборки.


В целом все то-же самое, как и в приложении MiHome, только теперь роботом можно управлять по событиям умного дома.


Кстати, робот все так же может управляться с приложения Mihome. В этом плане мы ничего не поломали.


Тема следующей статьи... не решил. Или начну цикл про медиацентры или расскажу как автоматически отправлять показания счетчиков воды в Управляющую компанию.


P.S Если у вас что-то не получается - пишите. Постараюсь помочь.

Показать полностью 2
29

Умный дом Xiaomi с шапочкой из фольги

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

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



Что получим в итоге - управление устройствами через приложение Home Assistant без хаба Xiaomi, т.е без слива данных китайцам.


От слов к делу.


У меня это работает следующим образом:


На RaspberryPi 3B установлен Home Assistant в виде образа Hassio и сервер MQTT, в малинку воткнут Zigbee модем СС2531. Команда из Home Assistant уходит в MQTT, потом на свисток, откуда передается в сеть Zigbee. Информация от устройств Xiaomi возвращается обратным порядком.


Итак, нам понадобится usb - Zigbee свисток СС2531

Эта штука заменит нам хаб Xiaomi.

Я брал тут:


https://ru.aliexpress.com/item/CC2531-Zigbee-Bluetooth-BLE-4...


Программатор CC Debugger для прошивки свистка

Я брал тут:


https://ru.aliexpress.com/item/Wholesale-CC-DEBUGGER-Debugge...


Теперь нужно прошить свисток через программатор, чтобы он стал "мостом" между устройствами Xiaomi и Home Assistant. Процесс прошивки подробно описан тут:


https://www.zigbee2mqtt.io/getting_started/flashing_the_cc25...


Переходим к Home Assistant. Напомню это бесплатное программное обеспечение, позволяющее управлять вашими устройствами по различным протоколам. Когда-нибудь напишу статейку про его установку и поставлю ссылку на нее сюда.


1. Переходим на вкладку Hass.io на закладку ADD-ON STORE и добавляем новый репозиторий https://github.com/danielwelch/hassio-zigbee2mqtt

2. Устанавливаем аддон Zigbee2mqtt

3. Теперь нужно определить путь к нашему свистку. Заходим в закладку System и нажимаем кнопку Hardware. У меня он находится по адресу /dev/ttyACM1. Настоятельно советую отключить остальные устройства из usb для чистоты эксперимента.

4. Переходим на закладку Dashboard, плагин Zigbee2mqtt. В поле Config вносим следующую конфигурацию


{


"data_path": "/share/zigbee2mqtt",


"homeassistant": true,


"permit_join": false,


"mqtt_base_topic": "zigbee2mqtt",


"mqtt_server": "mqtt://<ip адрес сервера mqtt>:< порт MQTT, обычно 1883>",


"serial_port": "<адрес свистка, у меня /dev/ttyACM1>",


"devices": [],


"network_key": []


}


Сохраняем и рестартуем плагин. Проверяем лог плагина. Красных строк быть не должно.

5. В файл Configuration.yaml должен быть настроен доступ к mqtt серверу

https://www.home-assistant.io/components/mqtt/


6. Скачиваем и сохраняем файл zigbee.yaml в директорию /config/packages/

https://yadi.sk/d/8l5ZQV-nJx8ZeQ


7. Добавляем на основной экран (Lovelace) объекты " Allow devices to join ", Time remaining , и Bridge state.

Настройка Home Assistant закончена.


Подключение устройства Xiaomi на примере Xiaomi Aqara Window Door Sensor


1. Включаем поиск устройств Allow devices to join в Home Assistant


2. Открываем лог аддона ZigBee2MQTT


3. Нажимаем кнопку сопряжения на Aqara Window Door Sensor где то на 3 сек. Синий огонек начнет мигать.


4. Ждем появления записей об подключении в логе аддона ZigBee2MQTT


5. При необходимости повторить с п.3.


В итоге у вас появляется устройство binary_sensor.<номер>_contact


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

Описание всех параметров аддона Zigbee2Mqtt можно посмотреть здесь


https://github.com/danielwelch/hassio-zigbee2mqtt


Полный перечень поддерживаемых устройств (только zigbee, пылесосы, очистители воздуха и пр. работают по WiFi) приведен тут:


https://www.zigbee2mqtt.io/information/supported_devices.htm...


Поздравляю! Теперь вы можете использовать устройства Xiaomi без передачи данных чужим людям.


Если вам нужна помощь в прошивке или настройке- обращайтесь. Помогу чем смогу.


P.S. Ссылка на канал в Яндекс Дзен

https://zen.yandex.ru/id/5b800a0c5559cb00aa5e3500?clid=&amp;...

Показать полностью 6
19

Монитор CO2

Всем привет!

Это мой первый пост и прошу не судить строго. Я же постараюсь быть кратким...

Тема IoT (Интернет вещей) сейчас достаточно популярна и считается крайне перспективной. Эксперты предсказывают, что  будущем основной объем данных будут генерировать именно такие "вещички". основная задача этих устройств - создание комфортной среды для человека.

Что ж, давайте тоже приобщимся к этому направлению, а заодно подумаем о своем здоровье.

Мы все дышим. Этот клинический факт означает, что в наш организм поступает смесь газов, не все из которых одинаково полезны. К примеру СО2. В сети достаточно информации о влиянии этого газа на самочувствие человека. В целом все сходятся на мнении, что нормальная концентрация CO2 это 400-600 ppm, 800-1000 ppm Легкое недомогание, выше 1000ppm общий дискомфорт, головные боли, проблемы с концентрацией внимания.

Удивительно, но факт: уровень CO2 в комнате с закрытыми окнами и одним человеком легко уходит в зону 900ppm всего за пару часов.


Заинтересовал? Теперь давайте покажу, как я его измеряю

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

Я выбрал цветовую индикацию

Зеленый, медленно мигает раз в 5 секунд - до 600ppm

Желтый горит постоянно  - до 900ppm

Красный горит постоянно  - выше 900ppm

Вот как это выглядит

Помимо цветовой индикации, устройство подключается по WiFi  к серверу Home Assistant и по протоколу MQTT передает показания CO2, температуры, влажности и давления. Выглядит это как-то так:

Графики тоже строятся, но я не вижу в них большой пользы

теперь давайте посмотрим, что внутри:

Основа - микроконтроллер ESP-8266/ В моем случае его реализация в виде Wemos D1 mini.

CO2 измеряет MH-Z19B. Похоже это наиболее популярный датчик по соотношению цена/ вранье по ppm

Датчик температуры, давления, влажности BMP-280. Точный, надежный и беспроблемный.

Само собой все пришло с алиэкспресса, так же как и корпус, рожденный мини колонкой и безжалостно растерзанный.

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

Код прошивки честно скопирован с интернета, чего и вам желаю


Ну и в заключение... Устройство, которое изначально делалось ради забавы успешно прижилось и стало арбитром в спорах за проветривание

Показать полностью 6
Отличная работа, все прочитано!