Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Погрузись в захватывающий шутер!

FRAGEN

Шутер, Экшены, Шутер от первого лица

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • Animalrescueed Animalrescueed 36 постов
  • Oskanov Oskanov 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
65
an.tory
an.tory
2 года назад
Arduino & Pi

Arduino + ESP⁠⁠

Всем привет. Хочу посоветоваться. Я задумал сделать в комнате светодиодное освещение, для этого купил ленту RGBCTT. Это та, которая не адресная, просто 5 отдельных каналов.
Уже подключил к Ардуине и проверил, все работает вот по такой схеме:

Arduino + ESP Arduino, Led Освещение, Esp8266, Home Assistant

Мне хотелось бы ее подключить к Home Assistant, но Ардуино туда не подцепить, единственное, что в голову приходит - связать ее с какой-нибудь ESPшкой и уже ее подключать к HA через ESPHome. Делается это для того, чтобы иметь физическое управление светом и возможность давать команды с сервера HA.

Вопрос, как правильно связать два микроконтроллера и возможно ли управлять ардуиной с ESP? Например, передавать команды типа: "R180 G51 B120 CC255 CW 200".
С кодом я разберусь. Главное, понять принцип, как это делать.

Показать полностью 1
[моё] Arduino Led Освещение Esp8266 Home Assistant
79
77
gvazik
3 года назад
Умный дом

LED home 3.0⁠⁠

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

Благодаря чудесному багу с помощью Node-Red в HomeKit можно создать светильник с таким же переключателем как источники на телевизоре. Вот о режимах в которые можно так легко переключить мою евродвушку я и хочу рассказать.

One color

Тут все просто, выбираешь цвет и вся квартира перекрашивается. Это касается всех без исключения цветных светильников.

Ambilight

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

Warm mode

Подсветка разделяется на 2 отдельных светилька. Теплый и цветной в HomeKit можно сменить только дополнительный цвет, а вот на кухонном планшете можно сменить оба

Когда подсветка включена, в проходных помещениях при отсутствии движения она не выключается, а меняет яркость на минимальную и разгорается при обнаружении движения

Показать полностью 6
[моё] Умный дом Home Assistant Wled Видео Без звука Вертикальное видео Длиннопост
30
3
SPILBERRR
3 года назад
Home Assistant

Помощь в Home Assistant⁠⁠

Здравствуйте.
В наличии:
1) Raspberry pi 4
2) гибридный инвертор POW VM5K-lll
3) Модуль преобразователя MAX3232 RS232 с последовательным портом в TTL
4) Плата ESP8266 WeMos D1 Mini если надо
4) lte WiFi роутер со статическим ip
Вопрос:
Можно подружить Raspberry с инвертором для управления дистанционно? И что для этого нужно.

Помощь в Home Assistant Home Assistant, Умный дом, Без рейтинга, Длиннопост
Помощь в Home Assistant Home Assistant, Умный дом, Без рейтинга, Длиннопост
Помощь в Home Assistant Home Assistant, Умный дом, Без рейтинга, Длиннопост
Помощь в Home Assistant Home Assistant, Умный дом, Без рейтинга, Длиннопост

Спасибо за любую помощь.

Показать полностью 4
[моё] Home Assistant Умный дом Без рейтинга Длиннопост
26
92
Kaiebard
3 года назад
Умный дом

Путь по автоматизации квартиры⁠⁠

Давным-давно, когда только заехал, встал вопрос - радиатор греет только в положениях от 0 до 5, регулируя подачу горячей воды, но ни разу не поддерживая температуру. Тогда как в зависимости от того, что происходит на улице (температура, солнце), приходится всё время прибавлять или убавлять, чтобы было комфортно.


Начал смотреть варианты, как сделать - самым простым оказалось поставить умный термостат на батарею вместо ручного. Самый недорогой оказался eQ3 - ставится на разные типы вентилей, поддерживает расписание с разной температурой и потенциально можно сделать веб-интерфейс. Местные ещё писали про некого монстра FHEM, на Perl, который позволяет избежать установки отдельного MAX! Cube - шлюза для управления термостатом. Так-то оно так, только FHEM работает через свой специальный USB коннектор на 868.3 МГц (nanoCUL). Который можно было прикупить дешевле, чем Cube на eBay.


Так систему и собрал. Получил Raspberry Pi (который был у меня давно и лежал без дела) с FHEM и с USB коннектором. Термостат, который можно настроить через веб. И комфортная температура в комнате и квартире. Почитал, что можно подключить на те же 868.3 МГц датчик температуры и влажности. И термостату задавать температуру на основе температуры в комнате, а не на основе сенсора на термостате (который в силу близости к источнику тепла уходит вверх на градус-два). Сенсор прикупил, но оказалось, что подключить его сложнее, чем думалось. Тут автоматизация дальше и подзамерла.

Путь по автоматизации квартиры Home Assistant, Умный дом, Длиннопост
Путь по автоматизации квартиры Home Assistant, Умный дом, Длиннопост
Путь по автоматизации квартиры Home Assistant, Умный дом, Длиннопост

Прошёл год, ближе к новым новогодним праздникам появилось желание ещё немного расширить. К этому времени появилась лампа из Икеи в углу, до которой было неудобно ходить через всю мебель, чтобы добраться до напольного выключателя. Посмотрел вариант - как раз были скидки на Philips Hue White лампу в комплекте с выключателем. Хаб не нужен, поставил, спарил между собой и всё работает. Так набралась критическая масса :)

Прошёл ещё год и в этот раз уже стала заметной альтернатива для домашних систем - Home Assistant, написанная на знакомом Python. С поддержкой большого количества оборудования и приятным интерфейсом. Решил ставить. Подобрал под неё отдельную Raspberry Pi 4. Поэкспериментировал с корпусами и остановился на алюминиевом Argon M2.

Путь по автоматизации квартиры Home Assistant, Умный дом, Длиннопост

Для поддержки двух ламп - основной и светильника решил ставить хаб от Philips. Его можно завести на приложение Hue и через него на Google и на Siri. После этого можно говорить «Включить свет» когда приходишь домой, чтобы включить все лампы и «Включить вечерний свет», чтобы погасить основной свет и включить светильник в углу.


Вопрос встал в том, на каком протоколе дальше реализовывать. От популярного местного на базе 868 МГц и nanoCUL решил переходить на что-нибудь более распространённое. Из основных кандидатов – Zigbee и Z-Wave.


Zigbee – протокол на базе открытого стандарта, работает на частоте 2.4 ГГц, по принципу mesh-сети (то есть остальные устройства в сети могут служить усилителями сигнала). Частота, при большом количестве соседских Wi-Fi сетей, может быть не самой удобной в силу количества помех. Открытость спецификации тоже приводит к тому, что некоторые производители реализуют немного по своему, что не всегда даёт совместимость с остальными устройствами.


Z-Wave – протокол на базе закрытого стандарта, работает на частоте 800-900 МГц, тоже по принципу mesh-сети.


Конечно, Z-Wave выглядит правильнее, но под Zigbee можно купить датчиков температуры Aqara на Али за 2-3 доллара и собрать достаточно бюджетную систему. А под Z-Wave один датчик обходит в 30-40 евро. В итоге остановился на Zigbee. По USB-коннекторам цены примерно сравнимые – за Conbee II от Dresden Elektronik для Zigbee и Aeotec для Z-Wave.


Для интеграции в Home Assistant изначально делал на deconz, но потом ушёл на ZHA, в котором всё устраивает. Были также хорошие отзывы о Zigbee2MQTT, что даёт более подробную конфигурацию.


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


Для датчика открытия окна выбрал Sonoff. Термостат пришлось поменять. В этот раз поставил Eurotronic Spirit.


Вообще, по термостатам интересный расклад:

- Самый доступный – eQ-3. Требует своего MAX! Cube либо отдельной Pi с FHEM и связи по MQTT. Либо хардкорный вариант – запускать Docker-контейнер с Homematic на той же Pi, где и Home Assistant и уже через него интегрироваться. Вариант с MQTT у меня заработал не очень стабильно и решил от него отказаться.

- Достаточно бюджетный – термостаты на основе Tuya.

- Мой второй вариант – Hama Thermostat, по итогу тоже на основе Tuya. Только с крутилкой для выбора температуры. Дисплей отключается автоматически и нужно нажимать на кнопку, чтобы посмотреть его температуру и текущий режим.

- Мой первый вариант – Eurotronic Spirit. Его часто рекомендуют, но периодически подвисает, выкручивает вентиль на максимум и требует физической перезагрузки.

- Самые дорогие и особо беспроблемные варианты – Danfoss Ally и Tado.


С подключением термостата пришлось немного помучиться. Есть огромное многообразие подключений на вентиль радиатора, с несколькими основными, для которых идут переходники в комплектах практически с каждым термостатом. Только переходник в комплекте с Eurotronic у меня совсем не подошёл. Пришлось докупить нормальный стальной, на который всё четко уже встало.


Тот самый Hama Thermostat:

Путь по автоматизации квартиры Home Assistant, Умный дом, Длиннопост

По сенсорам температуры основных вариантов для Zigbee два – Aqara и Sonoff. Первые встают, работают, периодически теряются, отправляют данные при заметном изменении параметров (температура и влажность), батарейки хватает на год-два. Sonoff отправляют данные намного чаще, но и батарейки хватает на пару месяцев.


Завершая, заменил лампу на кухне, попробовав в этот раз Osram и добавив к ней выключатель от Ledvance. Интеграцию лампы с выключателем нужно прописывать через Home Assistant и, в отличие от Hue, уже прописывать руками все кнопки и режимы димминга.

Показать полностью 5
[моё] Home Assistant Умный дом Длиннопост
28
71
Noado
Noado
3 года назад
Умный дом

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло»⁠⁠7

Сегодня моя лента подписок просто пестрит ответами на этот пост. Все хвалят умный дом, ругают умный дом, говорят что умный дом вообще-то не умный, ну как тут не вставить свои пять копеек?))

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло» Умный дом, Xiaomi, Дом, Электричество, Освещение, Датчик движения, Длиннопост, Яндекс Алиса, Home Assistant, Мат, Ответ на пост

Для начала хотел бы возразить насчёт того что дескать правильно только на этапе ремонта, только провода, только хардкор. Конечно, речь про ответный пост @trapwalker и, цитирую:

Беспроводные технологии - это заплатки и решения "для бедных"

От себя как от скромного владельца нескольких датчиков и управляющих штук я вижу в чём недостаток такого высказывания. Если отказаться принципиально от дешёвых "игрушек" с Али и магазинов, кто он, этот покупатель профессиональной системы на этапе капремонта за большие бабки?
Вариант 1: это мажор, который не знает куда девать деньги, но хочет "круто". Он наймёт спеца, и тот объяснит ему что и как надо делать чтобы спецу было больше денег было всё действительно круто.
Вариант 2: это человек который бездумно не разобравшись вкидывает бабки в проект. Он не знает что можно делать а что не имеет смысла. Конечно, лон потерпит фиаско. Всё будет работать не так как надо или будет не хватать не заложенного кабель-канала под дополнителньый датчик. И что мы видим глядя на такого пользователя? Он плюётся от того что в сортире нужно сказать "Эй, Алиса, верни свет" чтобы досрать спокойно. Он ругает в интернете "баловство" умного дома. Он не знал как лучше - но потратился.
И у нас есть условный NoAdO, а может и другой пикабушник. Он подписан на сообщество, он постепенно покупает эти самые "игрушки", строит и усложняет свою автоматику этими самым "заплатками". Он нарабатывает опыт. И, возможно, когда время капремонта настанет, он станет Вариантом 3 - человеком который взял дорогую и более профессиональную систему не потому что это круто и не потому что "беспроводные технологии для бедных", а потому что он не готов капремонтить каждый чих в системе, в которой ему ещё только предстоит выяснить что полезно, а что лишнее, как Алиса в Умном Сортире.
Что до вопроса о взломе беспроводных устройств и создания из них ботнета, скажу тем кто заглянул на огонёк случайно: устройства RF433, BLE и ZigBee это вам не умные утюги с вайфаем, они вообще не умеют в интернет, он им и не нужен. Ну и как минммум BLE и ZigBee имеют защиту протокола связи и бояться их взлома можно примерно также как бояться того что из ваших беспроводных наушников сделают ботнет. Вероятность крайне мала =)

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло» Умный дом, Xiaomi, Дом, Электричество, Освещение, Датчик движения, Длиннопост, Яндекс Алиса, Home Assistant, Мат, Ответ на пост

Иллюстрации в ответе ничего не иллюстрируют и скорее нужны для разделения абзацев текста. Второй ответ это вопрос @Zayapod - хорошо что устойства могут работать без Интернета, но почему это преподнесено как достижение? Мой дом - моя крепость. Зачем зависеть от производителя который сегодня существует, а завтра пропал / перестпал поддерживать сервера / оказался в опале? Мне видится правильным создавать Умный Дом так, чтобы он не зависел от внешних факторов. И такие решения есть. Да, это что-то "для Гиков", но разве именно в этом и не заключается работа специалистов, внедряющих умный дом в таком большом количестве датчиков и реле?

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло» Умный дом, Xiaomi, Дом, Электричество, Освещение, Датчик движения, Длиннопост, Яндекс Алиса, Home Assistant, Мат, Ответ на пост

Третий момент на который многие обращали внимание - а, дескать, зачем вам умный дом? Это же игрушка. Можно же без него. Аналоги же есть. В посте Как я пришёл к "очень умной тепличке" я затрагивал механизм управления тепличкой на моём балконе. В работе света учитывается длина светового дня в чужом поясе, температура и реальная освещенность. Всё это в теории можно автоматизировать, мне даже скинули реле которое умеет в часовой пояс (и правда только в него), но так получается дешевле и проще а главное - получаешь допонительные функции.

Я слежу за освещенностью ради растений... но я попутно всегда знаю солнечно за окном или нет. Сейчас у меня не автоматизирован свет, но если буду - я смогу использовать эти данные.

У меня в туалете была только одна линия на свет и вентиляцию - общая. Да, я "из бедных" и не могу позволить себе прохреначить пару стен просто потому что мне захотелось разделить свет и вентилляцию. Но и тут меня выручает Умный Дом - двухканальное реле разделяет свет и вентиляцию, вентилляция работает от датчика температуры-влажности или от кнопки, свет от датчика движения и той же кнопки. Да, проблема "человек не двигается сидя на сортире" не так просто решается, подписчики сообщества в курсе)) Но заметьте, у меня ещё и температура теперь есть. Захочу управлять кондиционером - будет на что опереться, хотя датчик в сортире и будет показывать с задержкой.

Больше того - приложение в телефоне  позволяет не только управлять релюшками и смотреть графики, оно же - трекер меня. Можно заранее включить обогрев помещения если я иду домой или ставить дом на охрану если никого нет (а определим например по геопозиции и вайфай) и оперативно слать СМС или сообщение в Телеграм, если сработает датчик открытия двери. Некоторые даже вебки ставят или IP-камеры - снимать лицо входящего. Тут даже уничтожение аппаратуры не поможет - снимок-то уже в телеграм улетел.

Кстати, датчик протечки тоже можно также подцепить и слать оповещения. Вот электрокраны да, лучше на этапе проектирования закладывать, но даже так можно уменьшить ущерб. И вообще всё что я перечислил стоит дешевле чем одна коробка которая умеет только в охрану, протечку и пожар, ну и смску  слать. Так что да, бомж-вариант рулит))

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло» Умный дом, Xiaomi, Дом, Электричество, Освещение, Датчик движения, Длиннопост, Яндекс Алиса, Home Assistant, Мат, Ответ на пост

Ну и последнее - насчёт "ума" этого самого Умного Дома. Многие почему-то думают что умный дом должен исключительно самостоятельно определять где находится тушка, просчитывать все варианты, заваривать чай и готовить глубокий омлет. Нет, друзья, это не так работает. Никакой ИИ не определит что вы поехали не домой а по ресторанам. Не так-то просто в сценарии учесть  что не надо включать радио и чайник если вы решили встать в 5 пописать а не в 6 на работу. Не просто... но можно. И умный дом на самом деле не такой уж и умный дом. Как правильно заметили, в smart home слово smart а не слово clever то есть это не дом с высоким уровнем интеллекта и моральными ценностями, это хитрый, находчивый, хитроумный дом. И я бы добавил от себя - что это Удобный Дом. И это отвечает на такой, например, извечный вопрос как "нахуя?" (привет @Telecaster)

Вам удобно командовать "Окей, Гугл, выключи свет в коридоре" или "Эй, Алиса, выключи свет в коридоре"? Не вопрос, смартфон или колонка выслушают вас - и сделают. Хотите чтобы свет включался в коридоре сам без вашего участия, но только когда темно но не ночью когда вы сонный идёте отлить? два датчика, реле и сценарий со временем сделают вам хорошо. Мне будет удобно лечь в кровать и, обнаружив свет что остался на кухне - выключить его в приложении. Мне будет удобно уходя сказать "Алиса, выключи свет в квартире". Мне удобно выходя из маленькой комнаты привычны движением ткунть в  выключатель. Я должен от чего-то из этого отказаться? Нет.  Я могу этого не делать) Наличие "умной" функции не отменяет возможность "тупого" управления. А ещё это важно потому что если вдруг, как у ТСа, что-то "отвалится", останется просто управление конечностью, олдскульно, по хардкору. Но хочу сказать что за всё время жизни с этими девайсами все разы когда что-то не работало были полностью на моей вине - это я неправильно составлял сценарий, это я обновлялся не нестабильную версию. Косяк в этой системе был я)) Но справедливости ради да, так не у всех и  те же ZigBee устройства действительно, бывает, тупят.

Ну и наконец - вам вообще не надо умных выключателей? У вас один аквариум с рыбками и всё "умное" управление заключается в том чтобы включить свет в 8 а в 20 выключить? Ну, значит вам не нужен умный дом, только и всего)) Хотя возможно если вы аквариумист, вас заинтересуют датчики аммиака CO2 или что там в аквариуме меряют с уведомлением на телефон. М?) Станет удобней, не правда ли? Ну вот в этом и смысл. Конечно, я мог бы подводить таймер у цветов раз в неделю чтобы сдвигать световой день, но я решил что настрою один раз и всё будет работать само. Я хотел разделить свет и вентилляцию - ну я разделил, попутно сделав автоматическое управление - и теперь не включаю свет. @naSevere верно сказал - это пара минут в день. Но это и удобство.

И то же самое с системами. Home Assistant для гиков! Xiaomi завязаны на чужие сервера! Ассистент слушает вас постоянно! Да, HA сложнее чем Сяоми. Да, у сяоми чужой сервер, зато его настроили за вас. Да, ассистент слушает разговоры и пихает контекстную рекламу, но он же и команды слушает. У вас свобода. Выберите то что вам удобно, что по финансам, что понятно. Вот в чём прелесть, даже если 30-летний мужик ржёт как дибил отправляя включаться по блютусу чайник (даже если чайник дибильный и отсутствие воды с задержкой определяет, привет Ready For Sky).

Показать полностью 3
Умный дом Xiaomi Дом Электричество Освещение Датчик движения Длиннопост Яндекс Алиса Home Assistant Мат Ответ на пост
28
tatboy
3 года назад

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло»⁠⁠7

Интересные тезисы у автора. Но 200 тысяч за умный дом как то слишком жирно.


Опишу мой бюджетный умный дом.

У меня собрано на Sonoff.

20 шт sonoff DualR3

1 шт sonoff mini r2

1 шт sonoff 4ch pro

Итого 19 тысяч рублей позволяют управлять:

34 канала освещения,

2 канала вентиляция,

2 канала на отопление,

1 канал гаражные ворота,

4 канала полив,

и немного запаса.


Освещение управляется как с выключателей (обычные lk studio с установленной пружинкой), так и удалённо через приложение Google Home (нужен интернет для голосового управления) и через штатное приложение Ewelink (работает без интернета). Первостепенна была задача автоматизации освещения, чтобы не ходить по дому и не выключать вручную свет.


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


Охранно-пожарную сигнализацию не считаю частью умного дома, она автономна, уведомляет о тревоге через смс, но чтобы Гугл знал её состояние, есть возможность подключить через сухой контакт к sonoffу, на данный момент не реализовано.


Отопление и ГВС - автономно, управляется комнатным термостатом, бойлером и логикой котла, но с возможностью удалённого принудительного отключения/включения.


Вентиляция просто включена постоянно пока кто нибудь дома, можно отключить/включить удаленно.


Полив не реализован, но реле испытано на возможность управления 24 вольтовыми клапанами. Садовые работы в процессе.


Гаражные ворота: сонофф подключено параллельно к штатной кнопке в гараже, удаленно можно открыть/закрыть ворота, но контроля состояния нет. Из-за этого приходится мониторить состояние через камеру. В далёких планах реализовать контроль состояния.


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


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


Ну и для полного автоматического счастья нужно смонтировать дополнительные датчики движения, работающие отдельно от датчиков охранной сигнализации. Кабели под них были заложены. Точнее говоря ищется блок (заводского изготовления, самоделку делать не хочется), который будет получать сигнал от датчиков движения и который можно интегрировать в среду Home Assistant.

Ответ trapwalker в «Мы использовали больше 100 умных устройств Xiaomi в одной квартире и вот что вышло» Умный дом, Дом, Электричество, Электрика, Ремонт, Освещение, Датчик движения, Длиннопост, Sonoff, Google Home, Home Assistant, Ответ на пост
Показать полностью 1
[моё] Умный дом Дом Электричество Электрика Ремонт Освещение Датчик движения Длиннопост Sonoff Google Home Home Assistant Ответ на пост
18
11
Zxcasdqwefsh
4 года назад

Умный  дом в  котором я  живу. Работа с шаблонами⁠⁠

Все, кто  начинает  работать с Home Assistant  рано или поздно сталкиваются с  шаблонами.
И все  хорошо  до  тех пор, пока  количество вариантов не очень велико.
Но  иногда  сталкиваемся  с ситуациями,  когда вариантов  слишком много, и  приходится  изобретать велосипед
Итак,  практическая  задача.
Наконец  я  вернул в строй свою метеостанцию. 
Чем она  замечательна? В режиме реального  времени  отдает метеоданные. Сейчас  я  ее завел только  на публикацию  данных в различные сервисы (weather underground, cwop, weathercloud, openweathermap).
Также настроил  публикацию  данных в MQTT,  откуда  данные  можно  затаскивать в Home Assistant.
Но тут возникли проблемы.
Метеостанция  отдает  направление ветра в градусах.

Умный  дом в  котором я  живу. Работа с шаблонами Home Assistant, Умный дом, Шаблон, Метеостанция, Длиннопост

Но я не хочу  в градусах, я  хочу в румбах.

Умный  дом в  котором я  живу. Работа с шаблонами Home Assistant, Умный дом, Шаблон, Метеостанция, Длиннопост

Для  этого  соберем такой  шаблон:

- platform: template
sensors:
wind_direction:
friendly_name: "Направление ветра"
value_template: >
{% set direction = ['C','ССВ','СВ','ВСВ','В','ВЮВ','ЮВ','ЮЮВ','Ю','ЮЮЗ','ЮЗ','ЗЮЗ','З','ЗСЗ','СЗ','ССЗ','С'] %}
{% set degree = states('sensor.wind_dir')|float %}
{{ direction[((degree+11.25)/22.5)|int] }}

Что  мы тут  делаем?
1.  создаем  список  румбов
2.  вычисляем  номер  направления  на основании  показаний  станции.
3.  возвращаем  элемент  списка с  найденным номером.

В общем, все просто и  элегантно. Но  годится  для  небольшого количества вариантов.

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


В который раз собирается одна и та же компания. Все анекдоты уже рассказаны, поэтому в компании решают рассказывать анекдоты по номерам. Вот сидят они, перешучиваются:
— Анекдот №325!
— Ха-ха-ха!
— Анекдот №719!
— Ха-ха-ха!
— Анекдот №18!
— Ха-ха-ха!
— Анекдот №133!
Молчание…
— Что такое? Анекдот №133!
Молчание…
— Чего вы это? Смешной же анекдот!
— Понимаешь… Одни умеют рассказывать анекдоты, а другие — нет…

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

SELECT * FROM forecast_rules WHERE id = {{ states.sensor.forecast_rule.state }}; 
Не работает. Разрабы  ответили:

idea is nice… but “with great powers comes great responsibility” that is a big target for an exploit…

В общем,  со  sql  -  облом.

Писать сенсор с шаблоном на 400  строк  мне  было  жутко  лениво.

- platform: template
sensors:
weather_forecast
value_template: >-
{% if states('sensor.forecast_rule')=0 %}
"Ясно, ожидается похолодание."
{% elif states('sensor.forecast_rule')=1 %}
"Ясно, незначительное изменение температуры."
Тут  еще  384  строки
{% elif states('sensor.forecast_rule')=196 %}
"Ясно, ожидается похолодание."
{% else %}
"Н/Д"
{% endif %}
Частично снизит проблему  то, что  частично  значения повторяются, но  все  равно. Жуткий  индусский код - не наш стиль.


Поэтому я  решил искать  обходные пути:

Создал  текстовый файлик,  где построчно  вбил значения прогнозов

0,Ясно, ожидается похолодание.

1,Ясно, незначительное изменение температуры.

....

196,Ясно, ожидается похолодание.

200,Н/Д


Нарисовал  простенький  однострочник

Умный  дом в  котором я  живу. Работа с шаблонами Home Assistant, Умный дом, Шаблон, Метеостанция, Длиннопост

что  он  делает

grep "$@" "$(dirname "$(realpath "$0")")/davis_forecast.csv"
Из  файла davis_forecast.csv,  расположенного  в той  же директории что и  сам скрипт  выдает  строки, содержащие,  значения  из  передаваемого  параметра.
sed -r 's!^[^,]+!!'
Отрезает содержимое  до 1-й  запятой
cut -c2-
Отрезает запятую.
head -1
Оставляет только  первую строчку.
Если  мы  будем искать по  однозначным или двухзначным числам, нам прилетит  много всего  лишнего. Скажем,  при  поиске  14  нам  прилетят  значения  и 140-149

Запускаем в  командной строке на  хост системе (да,  баш скрипт  лежит  в каталоге python_scripts, чтоб  враги не догадались).
Все отлично работает.

sh /usr/share/hassio/homeassistant/python_scripts/davis_forecast.sh 192

В основном облачно и ожидается похолодание. Вероятны осадки в течении 12 ч временами сильные. Ветрено.

Создаем  сенсор .

- platform: command_line
name: Прогноз погоды
command: "sh /usr/share/hassio/homeassistant/python_scripts/davis_forecast.sh 192"
И получаем  глухой облом:
ERROR (SyncWorker_2) [homeassistant.components.command_line] Command failed: sh /usr/share/hassio/homeassistant/python_scripts/davis_forecast.sh 192
Причина в том, что  HA  работает  в  докере. И у контейнера  своя собственная  файловая  система.


После  этого  переделываем сенсор

- platform: command_line
name: Прогноз погоды
command: "sh /config/python_scripts/davis_forecast.sh {{ states('sensor.forecast_rule') }} "
И вуаля
Умный  дом в  котором я  живу. Работа с шаблонами Home Assistant, Умный дом, Шаблон, Метеостанция, Длиннопост

"Лобовая"  альтернатива  выглядит  гораздо менее  элегантно.

Засим наступило  утро и  Шахрезад прекратил  дозволенные речи.

Показать полностью 3
[моё] Home Assistant Умный дом Шаблон Метеостанция Длиннопост
11
45
Zxcasdqwefsh
4 года назад
Умный дом

Умный дом в котором я живу. Перехватываем  управление  у автоматизации Home Assistant⁠⁠

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

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

Решение этой  проблемы  мне  долго  не давалось,  и вот наконец я  нашел  как это  решить.

Решение  простое до  безобразия.
Создаем  автоматизацию,  в которой  триггером  будут интересующие нас события.
В моем  примере я буду  ловить

Умный дом в котором я живу. Перехватываем  управление  у автоматизации Home Assistant Умный дом, Автоматизация, Home Assistant

Далее  проверяем  а кто у  нас  вызвал  это событие.  Если  trigger.to_state.context.parent_id= null - то событие произошло без автоматизаций.

Умный дом в котором я живу. Перехватываем  управление  у автоматизации Home Assistant Умный дом, Автоматизация, Home Assistant

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

Умный дом в котором я живу. Перехватываем  управление  у автоматизации Home Assistant Умный дом, Автоматизация, Home Assistant

А дальше  есть 2  варианта - отключать  автоматизации  при включении  или  добавить в автоматизации  условие или  добавить  в  автоматизации  проверку на состояние нашего датчика.

Умный дом в котором я живу. Перехватываем  управление  у автоматизации Home Assistant Умный дом, Автоматизация, Home Assistant

Вопрос  возврата  управления  автоматике мы  рассматривать не будем, ибо слишком разнообразны  варианты.
Самый  примитивный  -  запустить  таймер и  по его  окончании  выключить.



Помимо  trigger.to_state.context.parent_id,  определяющего  отработавшую автоматизацию,  можно  так-же  повесить  разные сценарии в зависимости  от пользователя. Для этого  надо  смотреть на trigger.to_state.context.user_id

Показать полностью 3
[моё] Умный дом Автоматизация Home Assistant
26
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии