Zxcasdqwefsh

на Пикабу
поставил 297 плюсов и 76 минусов
отредактировал 3 поста
проголосовал за 4 редактирования
25К рейтинг 280 подписчиков 5688 комментариев 92 поста 21 в горячем
16

Зеркальный телескоп им. Г. А. Шайна Сентябрь 2014-го

Просматривая  фотоархив  - нашел  интересую  плохо обработанную фотку... Чуток  покуртил - очень атмосферно на  мой взгляд.

п. Научный, Крым, Россия

PS c вероятностью 31% - это котик

Зеркальный телескоп им. Г. А. Шайна Сентябрь 2014-го Фотография, Астрономия, Астрофото, Телескоп
5

C/2020 F3 (NEOWISE)

Кадр из серии "я видел это"


Ближнее Подмосковье,  жуткая  засветка, светлое летнее небо.

Глазом не  видна, но прекрасно видна в бинокль 7х50

C/2020 F3 (NEOWISE) Комета, Neowise
142

Умный дом в котором я живу. Добавим вытяжке  мозгов

Привет  друзья. Как вы наверное  знаете  я фанат всяких умных  штук. И тут попался мне на глаза обзор умной вытяжки от сяоми.  И я захотел себе такую же.

Но у нее  было  2 недостатка: работа только через китайские облака и цена была выше этих самых облаков. 57 тысяч за вытяжку немножко  пребор  на мой скромный вкус.

Тем более у меня уже есть довольно неплохая вытяжка.  Значит придется подарить ей мозги.

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

Итак у нас есть  вытяжка JET AIR POLA P 60 INX. Хорошая,  вытяжка с механическим  управлением.

И работающий homeassistant c zigbee сетью развернутой  на базе свистка cc2538

Задачи:

1. автоматизировать  включение вытяжки при использовании плиты.

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


Вопрос первый: как узнать, что  плита включена? Ответ  элементарный - температура растет. значит  для получения  обратной связи  нам нужен  датчик температуры.  Я использовал Aqara Temperature Humidity Sensor

Вопрос  чем управлять  - конечно реле. И тут  начались муки поиска реле, имеющего 4 канала и входы для выключателя.

При всем богатстве выбора я нашел 2 варианта:

2 реле от сяоми Aqara Wireless Relay и  самодельный вариант 4-х канального  zigbee  реле.

Мне  больше понравилась идея с самоделкой.  Но поскольку я сам паяльник держу примерно  так, надо искать  кто  мне спаяет.

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

Поэтому я заказывал на барахолке ZigБЕРУ

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

Подробно  про работу  реле  снял  шикарное  видео Alex Kvazis. Поэтому  ему и слово.

На момент написания обзора  есть проблема: реле подключается к HA через zigbee2mqtt, показывавет состояния, но не управляется, ибо по mqtt каналы  зовутся l1-l5, а в zigbee 2mqtt выглядит вот так:

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

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

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

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


Для этого создаем регуляторы: выключатель и переключатель скоростей:

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

И скрипты  обработчиков состояний

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

И финальный акт -  создания объекта fan.

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост
Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

Теперь нам надо  разобраться как управлять. Управляем по температуре. Описывать подключение  датчика  не буду - в сети полно  уроков zigbee2mqtt  для  самых маленьких.


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

Это 2-й раз, когда мне  в жизни пригодилась высшая  математика.

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

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



Ну и финальный  аккорд: автоматизация. На словах это выглядит так:

есть 3 температурные зоны  для которых выделена своя скорость.

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

Умный дом в котором я  живу. Добавим вытяжке  мозгов Умный дом, Автоматизация, Видео, Длиннопост

Весь конфиг целиком


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

из очевидного включать вместе с вытяжкой и выключать  когда никого нет на кухне и


И вместо  50+тысяч  я  потратил 2800 на реле  и 700 руб на  еще 1 датчик температуры. Датчик на кухне у меня уже был.  Итого 3500.

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

Поправки

Добротные каменные дома на главных улицах, приветливый фонарик над входом в таверну, благодушные, сытые лавочники пьют пиво за чистыми столами и рассуждают о том, что мир совсем не плох, цены на хлеб падают, цены на латы растут, заговоры раскрываются вовремя, колдунов и подозрительных книгочеев сажают на кол, король, по обыкновению, велик и светел, а дон Рэба безгранично умен и всегда начеку. «Выдумают, надо же!.. Мир круглый! По мне хоть квадратный, а умов не мути!..», «От грамоты, от грамоты все идет, братья! Не в деньгах, мол, счастье, мужик, мол, тоже человек, дальше – больше, оскорбительные стишки, а там и бунт…», «Всех их на кол, братья!.. Я бы делал что? Я бы прямо спрашивал: грамотный? На кол тебя! Стишки пишешь? На кол! Таблицы знаешь? На кол, слишком много знаешь!», «Бина, пышка, еще три кружечки и порцию тушеного кролика!» А по булыжной мостовой – грррум, грррум, грррум – стучат коваными сапогами коренастые красномордые парни в серых рубахах, с тяжелыми топорами на правом плече. «Братья! Вот они, защитники! Разве эти допустят? Да ни в жисть! А мой-то, мой-то… На правом фланге! Вчера еще его порол! Да, братья, это вам не смутное время! Прочность престола, благосостояние, незыблемое спокойствие и справедливость. Ура, серые роты! Ура, дон Рэба! Слава королю нашему! Эх, братья, жизнь-то какая пошла чудесная!..»



Больше совершенно нечего сказать ни про поправки, ни про голосование, ни про чудесное время, в которое нам посчастливилось жить.

8

Умный дом в котором я живу. Посоветуйте реле

Коллеги, посоветуйте 4-х канальное реле  Zigbee (предпочтительно) или  WI-FI c возможность подключения физических выключателей.

Знаю реле от сяо, но там всего 2 канала. Можно использовать 2 реле, но страдает чувство прекрасного. Надо такое-же но на 4 канала.

Умный дом в котором я  живу. Посоветуйте реле Без рейтинга, Умный дом, Помощь
15

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant

Зональная уборка роботом пылесосом - v2

Когда  я писал  прошлый  пост Умный дом в котором я живу. Зональная  уборка роботом пылесосом у  меня возникла  идея  заменить  при выборе комнат  для уборки выпадающий  список 

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

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

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Но встал вопрос  как  передавать параметры уборки роботу.

Т.е. из отдельных  блоков  комнат [х1,у1,х2,y2,count] мы  должны собрать  строку

params: [[х1,у1,х2,y2,count],[х1,у1,х2,y2,count],[х1,у1,х2,y2,count]]


Пока я искал как это  написать, нашел статью https://sprut.ai/client/article/2555, где  решается  практически моя задача.

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

Итак, собственных возможностей  HA не хватает, чтобы написать перебор всех возможных вариантов уборки.  Поэтому, можно  задействовать  скрипты на Питоне, что существенно  расширяет  возможности автоматизации. В configuration.yaml  прописываем

python_script:
Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

и в каталоге config создаем директорию python_scripts


и в ней уже  файл  скрипта variant.py

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

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


Скрипт  принимает  на  вход состояния выключателей  input_boolean и  рассовывает их по переменным. затем он на  основе  значений  переменных или добавляет  параметры комнаты  или нет.

Закомментированная  строчка  выплевывает  передаваемый  роботу массив в  лог HA, что удобно для  отладки.


А теперь  обвязка.

Cоздаем  сами выключатели

В input_boolean: !include input_boolean.yaml

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Создаем карточку:

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Скрипт  автоматизации

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост
Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Ручное прерывание уборки:

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

И сброс  кнопок  при  возврате на базу

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Ну и на случай внешней  установки мощности всасывания (скажем из веб морды)  в HA надо  установить селекбокс.

для  этого  лепим сенсор

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

И автоматизацию, устанавливающую  в правильное положение  селект бокс

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Лепим сенсоры  замены расходников:

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

И кнопки для  сброса  и  кнопку скрытия  их

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

В итоге  карточка робота выглядит вот  так

Умный дом в котором я  живу.   Использование  скриптов  Python в автоматизациях Home Assitant Умный дом, Робот-Пылесос, Длиннопост

Все конфиги можно дернуть здесь: https://drive.google.com/file/d/1GPZ92SDrBzFjQEVsfsA5EYbz8sH...

Показать полностью 15
131

Умный дом в котором я живу. Зональная  уборка роботом пылесосом

Здравствуйте, мои дорогие  любители чистоты и лентяи.

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

Значит  надо  направлять робота убираться там, где  людей нет и пусть себе жужит, где нас нет.

Итак, вводная, есть робот  пылесос  Xiaomi S50,  c прошивкой  Valetudo RE (2020, ValetudoRE0.9.4),

Home assistant 0.110.2
Задача  направлять  робота  на уборку  в конкретную комнату из HA.


ПрошиватьValetudo RE лично мне удобно при помощи WIN-MIROBO.

Актуальную прошивку берем здесь: https://vacuumz.info/download/gen2/

По прошивке робота  рекомендую изучать  4pda, т.к. вариантов  - куча.


Итак, подключаем робота:

в configuartion.yaml

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

Заходим  по адресу  робота в веб интерфейс и создаем  зону уборки. Добавляем ее  и переходим к редактированию

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост
Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

В общем, нарезали зоны,  теперь переходим к  самому интересному.
Написанию  скриптов  зональной уборки в HA

я вынес скрипты в отдельный файл, чтобы не  гадить в configuration.yaml.

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

Далее клепаем сам скрипт:

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

В параметрах мы  передаем  параметры  зон

params: [[х1,у1,х2,y2,count]]

x,y - координаты  прямоугольника зоны.

count  - количество  проходов от 1 до 3.


Если  зона состоит из нескольких блоков,  то перечисляем через запятую.

params: [[х1,у1,х2,y2,count],[х1,у1,х2,y2,count]]

А теперь самое интересное.  в манах в интернете  советуют  дергать через  mihome, floevac  и т.д. Но у нас робот  не связан с облаками,  поэтому вариант не для  нас.

Идем по адресу http://{robot.ip}/api/get_config
и видим  такую картинку:

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

Вот они наши координаты.

Вставляем их,  запускаем робота и получаем  облом.

В чем же  дело? Я долго ломал над  этим голову. Но потом экспериментально выяснил, что координаты в валетудо  смещены.


и надо  подставлять в место y 51000-y

Т.е.из  валетудо  забрали [[х1,у1,х2,y2,count]], а вставлять в  скрипты надо

params: [[х1,51200-у1,х2,51200-y2,count]]

Вот такая вот хитрая магия.


Далее  рисуем  селектор:

Как обычно вынеся  его в отдельный файл

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост
Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

В итоге получилась такая  панелька


Все конфиги с сохранением форматирования


https://drive.google.com/open?id=1ZrJo1FNts5UKcfnZJGQKizis57...

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост

ЗЫ пока  писал пост  подумал, что  удобней  будет сделать выбор комнат для уборки не  инпут-селектом, а набором чекбоксов. Но это надо  придумать как  собирать  строку param для передачи роботу набора.

ЗЫЫ Да, для  получения карты  надо  поставить аддоны mqtt-брокер Mosquito и  valetudo-mapper  https://github.com/Poeschl/Hassio-Addons/tree/master/valetud...
И настроить  параметры  на роботе в файле /mnt/data/valetudo/config.json

Умный дом в котором я живу. Зональная  уборка роботом пылесосом Умный дом, Робот-Пылесос, Длиннопост
Показать полностью 7
Отличная работа, все прочитано!