Статья

Датчик присутствия на "Троне", измерение температуры горячего стояка и счетчики воды

Датчик присутствия на "ТРОНЕ", измерения температуры горячего стояка и счетчики воды. В основе лазерный дальномер и Esphome. Я думаю, что не у одного меня проблема со светом в туалете. Датчик движения и автоматизация на две минуты. Если есть движение, то нормально. А если муза посетила на "Троне", задумался, свет погас. Приходится махать руками, чтобы привлечь внимание датчика и зажечь свет. Я пробовал ставить два датчика. Один при входе в туалет. Второй напротив трона. Все равно, зависит от мыслей, свет гаснет иногда. Вроде xiaomi создала датчик, который, даже дыхание, может считывать. Вроде хвалят его. Но, во-первых, ценник в районе 60$. Во-вторых, на али его нет пока в свободном доступе.

Оказывается, такой датчик есть для ардуино. Лазерный дальномер. Дальность до 2-х метров. Оказывается и поддержка в Esphome есть. У наших форумчан похожее уже работает. Очень помог умный человек @Kv, научил пользоваться. И ультразвуковые дальномеры люди ставят, для подобных дел.

Теорию вроде описал. Теперь исполнение

В нашем доме могут, в любой момент, отключить горячую воду. Встанешь с утра, приходится водонагреватель включать. Начало напрягать. Решил примотать изолентой датчик температуры к стояку. Написать автоматизацию включения и выключения водонагревателя. Плюс счетчики воды решил подключить. В железе, у Node MCU, с квадратным чипом cp2102, входов достаточно. Esphome поддерживает DHT11. Минус один - это питание прибора. Пришлось розетку поставить в районе стояков, и блок питания от телефона.

Провода от витой пары подключал, чтобы по цветам можно было ориентироваться.
Распиновка DHT11
Подключение светодиодов.

Нарисовал корпус. Это мой первый в жизни корпус в 3D. Поэтому прошу сильно не придираться. Хотел, чтобы часть корпуса, в котором стоит дальномер, вверх-вниз можно было поворачивать. И не зря, пришлось настраивать впоследствии. Правда ноги у NodeMCU пришлось отпаять, где-то коротило.

Вид спереди
Вид с дальномером
Над дальномером ставится Nodemcu

esphome: name: rangefinder platform: ESP8266 board: nodemcuv2 wifi: ssid: "Имя сети" password: "пароль" manual_ip: # статический айпи адрес, если не надо, то закоментировать static_ip: 192.168.31.08 gateway: 192.168.31.1 subnet: 255.255.255.0 # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Rangefinder Fallback Hotspot" password: "75RqmMMfMHp1" captive_portal: # Enable logging logger: # Активация веб сервера web_server: port: 80 # Enable Home Assistant API api: password: "1234" # пароль для доступа к устройству ota: password: "1234" # пароль для обновления # Дальномер настройки i2c: sda: GPIO04 scl: GPIO05 scan: True sensor: - platform: vl53l0x name: "LaserRange" address: 0x29 update_interval: 10s # интервал опроса дальномера long_range: True id: "distance" internal: true # при true данные в HA не передаются on_value: # принцип такой: если расстояние меньше 0.6м в течении 10сек # то загорается зеленый светодиод. Если больше, то гаснет then: - if: condition: lambda: 'return id(distance).state < 0.60;' then: - switch.turn_on: green else: - switch.turn_off: green # Уровень Wi-Fi сигнала - platform: wifi_signal name: "linkquality_rangefinder" update_interval: 120s # Датчик температуры - platform: dht pin: GPIO14 model: DHT11 temperature: internal: false # при true данные в HA не передаются name: "DuzeTemperature" on_value_range: - above: 40 # если температура больше 40, то выключаем красный светодиод then: - switch.turn_off: red - below: 30 # если температура меньше 30, то включаем красный светодиод then: - switch.turn_on: red humidity: name: "DuzeHumidity" internal: true # при true данные в HA не передаются update_interval: 60s # Датчики на счетчики. binary_sensor: - platform: gpio pin: number: GPIO00 mode: INPUT_PULLUP inverted: True name: "HotWater" - platform: gpio pin: number: GPIO12 mode: INPUT_PULLUP inverted: True name: "ColdWater" # светодиоды switch: - platform: gpio name: "Laser" icon: mdi:arrow-expand-vertical pin: GPIO03 id: "green" - platform: gpio name: "Boiler" icon: mdi:fire pin: GPIO01 id: "red"

Если полностью повторять датчик, то я счетчик холодной воды поставил на GPIO12. Если оставить на GPIO16, то загорается еще и синий, верхний светодиод NodeMCU. Меня это бесило. Хотя с другой стороны, светодиоды можно использовать. Там их два - верхний GPIO16 и нижний GPIO02. Можно их задействовать и не запаивать внешние.

Получилось как-то так

При посещении трона, в течение 10 секунд загорается зеленый светодиод. В НА это видно как лампочку. При покидании трона, светодиод гаснет. Добавил в ароматизации света в туалете, чтобы свет не гас, пока горит зеленый светодиод. Когда загорается красный светодиод, значит температура горячего стояка ниже 30 градусов, перекрывается горячая вода и включается водонагреватель. Если температура стояка выше 40 градусов, то водонагреватель выключается и открывается горячая вода. Ну и герконы в счетчиках воды, один щелчок на 10 литров воды.

- alias: Ванная выключение ночь trigger: platform: state entity_id: - binary_sensor.0x158d00029a5df3_motion to: 'off' for: minutes: 2 condition: - condition: state entity_id: switch.laser_2 state: "off" action: service: light.turn_off entity_id: - light.vannaia_dver

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

Всем спасибо за внимание!


действительно интересное решение. много где можно применить. 

Статья зачётная! Топ! Работа так сказать, проделана, путь найден. Немного просто без всякого яда покидаюсь камнями, ибо в моём огороде их предостаточно :D

- DHT11 ещё то очко

- касательно датчиков движения и кейса с ванно-туалетным санузлом, уже не раз отписывал на счёт этого мероприятия, первое это датчики движения, если вешать сяоми и хотеть рабочего кейса - значит Вам этот кейс не нужен. Второе это датчики опять, хью или икея второй ревизии спасут Ваш трон от тьмы, плюс кейс таймер на 5 минут и если дверь закрыта и есть движло, нафик таймер + нафик авто на выключение, всё довольно просто, я до сих пор, и это в третьих, не понимаю, в чём проблема у людишек то, 12 тысяч раз уже это обмусоливалось, ну а теперь ещё и дальномер в действии :D

В общем ещё раз, я без яда, статья топ и исполнение так же, и дальномер надо будет попробовать самому, и где-то попытаться применить. Спасибо! ;)

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

Не понял чё за наезд, ну да ладно. Из приведённых продвинутых вариаций на тему занятости, совершенно не понятен Ваш словопроведённый пример касательно кошки или проветривания, а так же т.д., ладно возьмём пример ребёнок под стол ходящий забежал в сортир по делам, и дверь осталась открыта - в данном контексте работает датчик движения и таймер с обновлением. Что касается других примеров, можно подробнее? Надо что бы было занято если у Вас кошачий лоток стоит в санузле? Или Вы хотите видеть статус проветривания? А бы ляпнуть, или теперь наезжаю я? :)

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

Ну :) В таком случае, дальномер дальномером, но пир на еспхом решит этот вопрос раз и навсегда ;)

Это лучший и полезный diy который я видел за последнее время👍 спасибо! 

Надо такое прикрутить на авто смыв всего плохого, после посещения трона.

Если цель не поиграться с новыми сенсорами и освоить новые навыки (что само по себе похвально), а решить "самую главную проблему" домашних автоматизаторов - не изобретайте велосипед и погуглите алгоритм wasp in a box. Геркон на двери + датчик движения решают вопрос чуть более чем полностью.

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

Да, интересное решение. Не знал. Вот и думаю. Но вот в чем проблема, в моем случае, у меня доводчик на двери, сама закрывается. Движение раньше закрытия срабатывает. И как тогда? Получается зашёл, датчик движения сработал. Потом датчик закрытия двери, а датчик движения уже не активен и все, свет погас. 

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

Не так всë просто. Не всегда дверь полностью закрывается в процессе или после. Самый простой вариант, наверное, дд+задержка 15 мин

1) как вариант "датчика присутствия на троне" есть в современных авто (встроено в сиденье, авто сигнализирует что биоробот не пристегнут). на Али в районе 300 руб

2) как вариант "беспроводных" технологий - пирометр прикрутить и измерять температуру пятой точки (вместо лазерного дальномера)

3) при ремонте в основание крепежа инсталляции поместить тензодатчик и "взвешивать" аккупанта. абсолютный вес не важен, важен "момент изменения" (первая производная). простой экспоненциальный цифровой фильтр справится. 

4) ну еще в качестве бреда - поставить камеру и AI научить распознавать - свободно/занято. но камера в туалете.... ну такое.

С 4го поржал, пасибо :D :D 

Ну а опять по чесноку, датчик открытия + датчик движения, решают всё. Сюда же добавить башку на шее и без желе.

У меня в доме дверь туалета вообще не показатель. Она может быть в любой момент закрыта, в любой момент открыта. 

Слушайте, мы не говорим о каких-то личных предпочтениях, ходите ли Вы в туалет с открытой дверью и прочий индивидуальный стафф. Мы говорим по факту, человек зашёл в туалет и закрыл дверь - это нормально, это первое. И именно в этом кейсе это всё работает - как состояние туалета "занято", откуда и вытекают все кондишины свяанные в первую очередь с освещением и его поведением в этот момент, и это второе. В третьих - описанный кейс в статье довольно хороший, сюда же кстати говоря можно ставить и датчик движения на esp, раз уже на то пошло. Ну и пусть это будет в четвёртых.

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

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

Был бы у PIR датчика уровень интенсивности движения, тогда цены ему не было, а так он дискретный и срабатывает на всё теплокровное как бинарный сенсор. Те же кошки могут устроить дискотеку со светом с эти PIR датчиком.

Любой нормальный дд словит Вашего кота. Остальное зависит от Вашей автоматизации...

Не отрицаю этого. Есть PIR-датчик WB-MSW (он есть как проводной, так и условно-беспроводной ZigBee) который выдаёт интенсивность движения, по данным интенсивности можно отсечь котов и другой живности.
Мой посыл был в том, что нет такого датчика для DIY.
Чтобы настроить автоматизации, надо к чему то привязываться, нужны дополнительные триггеры, а значит дополнительные триггеры. Это не эффективно и не оптимально, как всё кодить на if..else

А у Вас есть свой кейс автоматизации света с/у или другого помещения?

Ну я даже здесь в комментах отписывал достаточно. :)

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

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

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

Отличная статья

Все предложенные комментаторами и автором варианты разбиваются о суровую реальность:

- ребенок и жена не закрывают дверь

- на ребенка датчик у унитаза не сработает :)

- дверь часто стоит полностью открытая и внутри никого нет

- есть кот (у него своя дверца в стене)


А сработает только комплексное решение из нескольких датчиков. И тайминги с запасом. Лично у меня в санузле не более 30 ватт нагрузки, если лишний час за сутки набежит, то это сумасшедшие деньги, 6 рублей за месяц перерасхода! :)

Да за три месяца вообще нет косяков, идеально просто. Правда да, датчик движения при входе, в кабине и на трон дальномер. Плюс кнопка на зеркале, чтобы можно было включить и не шевелясь красить брови... И да тайминги по две минуты. А если кнопка включена, то 40 минут или выключить кнопку. Кошки нет, пес. На детей срабатывает.


Вернуться назад
Вернуться назад