Защита от протечки

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

Датчик дождя подключен к аналоговому входу А0.
При обнаружении протечки моргает красный светодиод (пин 8) и зуммер (пин 6) прерывисто пищит.
Зелёный светодиод дежурного режима при этом гаснет. Горит он только когда “сухо”.
Приводы кранов (моторы) при этом закрываются. На закрытие уходит где-то 7 секунд, после чего в приводе срабатывают встроенные концевые выключатели и мотор останавливается. После закрытия крана светодиод и зуммер продолжают прерывисто моргать/пищать (только если на датчике будет вода – если нет, то не будут).
После того как кран закрылся и датчик дождя высох, кран сам по себе не откроется. Чтобы открыть кран, нужно кратковременно нажать на кнопку «Открыто».
Примечание:
Если, вдруг, во время срабатывании тревоги, нажать кнопку открытия крана, то загорится соответствующий светодиод и раздастся непрерывный писк (в течении, примерно, 7 сек) после чего сигнал сигнализации продолжит свою работу, поскольку протечка не устранена. Кран при этом не откроется.

Кроме автоматического режима ведено ручное управление – при нажатии кнопки (пин 5) мотор запускается и горит красный светодиод «Закрыто». Закрытие происходит примерно за 7 сек.
По нажатию второй кнопки (пин 4) мотор запускается в другую сторону и горит соответствующий светодиод «Открыто».
Светодиод дежурного режима при ручном управлении не гаснет.

Скетч устройства: 7-07_store

Что не решено:
В настоящий момент не решил как подключить остальные датчики протечки, всего их у меня плпнируется 6 штук.
Пробовал их подключать как в скетче 7-08_store (тут я подключил только 3 датчика), но это приводит к тому, что если какие-то прописанные в скетче датчики отключить, то сразу же срабатывает тревога с закрытием кранов, включением сирены и морганием светодиода.
Если кто-то знает, как это сделать правильно, подскажите пожалуйста.

Устройство должно контролировать обрыв датчика.
Устройство должно регулярно осуществлять контрольное закрытие и открытие кранов (от закисания и для проверки работоспособности).
Устройство должно корректно переживать отключение и восстановление питания в любой фазе работы (ожидание, состояние аварии, фаза закрытия кранов по аварии, контрольный проворот кранов).
Должны быть сервисные режимы, в которых степень контроля понижается до: 1 - только оповещение без активации кранов, 2 - только индикация без звука и привода кранов, 3 - игнорирование показаний датчиков.
Должна быть индикация номера датчика, по которому сработала протечка или обнаружен обрыв цепи.
Должна быть продолжена работа при обнаружении обрыва одного из датчиков, либо при обнаружении отказа привода крана, но с соответствующим оповещением.
Должен быть выведен индикатор готовности устройства в видимое место (без заглядывания в сантехшкаф), причем не просто свечение, а нераздражающее помаргивание (а то может зависнуть в зеленом состоянии).
Нахождение в сервисном режиме должно быть опционально временное (чтобы не забыть его выключить) с соответствующей индикацией так же в видимом месте.
Должен быть таймаут между срабатыванием оповещения и началом закрытия.
Горячая вода должна перекрываться в первую очередь. При детектировании успешного перекрытия горячего крана сразу же включается привод холодного. При отказе перекрытия горячего (за время таймаута не сработал концевик) альтернативное предупреждение звуком перед закрытием холодного.
Контрольные проворот кранов - сначала перекрывается горячий, потом закрытие-открытие холодного, потом открытие горячего. Желательно по расписанию глубокой ночью, по часам, часы на батарейке, несбиваемые при потере питания.

В идеале обеспечить бесперебойное питание.

По сумме затрат именно времени на разработку и отладку алгоритмов готовое решение обойдется дешевле. Но как увлечение (собственная разработка) проект интересный.

3 лайка

Этот раздел разве не для готовых проектов? А “хотелок” у нас самих много.

По данному проекту:
Имеет значение какая именно и где труба дала течь? Зачем эти сложности? Достаточно нескольео датчиков в критических местах и один сигнал на все.

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

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

1 лайк

Не совсем понятен мотив. Всякие Антипротечки есть готовые, недорого. И да, надо предусмотреть кучу ситуаций. Тут иной уровень знаний нужен, чем “помигать без delay”.

Правильно. Скажу больше. Если заморачиваться насчет протечки, то система должна детектировать не воду на полу, а трубы и радиаторы. Когда вода уже на полу - уже есть датчики и завершенные системы, которые дешевле.

это как?

1 - китай г…
2 - гидроудары при неправильно собранной системе.
3 - оплошность при замене фильтрующего элемента, сам виноват

Я уже Нептун заменил: испортился концевик в приводе закрытия шарового крана. Проработал лет 7 10 вроде. Гидролок норм, но тоже пришлось затянуть чтото там в приводе; плюс акк менял уже пару раз.
В ответственных вещах лучше народным творчеством не заниматься.

  1. Добавить даччик потока, чтоб знать закрылся вентиль или нет. Пластиковые не бери, развалятся через год.
  2. Добавить в логику скечча закрытие/открытие вентилей раз в месяц в полночь где-нить, иначе шаровые краны имеют свойства закисать, а при слишком большом усилии закрытия электровентили зачастую ломают свои шестерни.
3 лайка

А я пробовал как в скетче 08-7-warehouse. Вам это много сказало? Не благодарите!

@ЕвгенийП , да ладно Вам, ТС похвастался раз мегапроектом и больше не писал)))
Тема достойна ЧЧ, никак не песочницы. Гуманный у нас народ)

1 лайк

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

А про песочницу, я не в теме, я не переносил, я здесь уже и застал.

На гайверфоруме проект опубликовался поаккуратнее. Можно веточкой потыкать.

Upd: ой. Надеть маски и перчатки.

Без меня :slight_smile:

Как это, ты заочно одобришь? :sweat_smile:

А то! Я ж это …, того

ну, если фантазировать, то можно сделать так:

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

Это про батареи отопления.

то есть еще датчик давления добавляем))

да нафантазировать то можно все что угодно.

а если в это время кто то голову намылил, а если стиралка или посудомойка заправлялась, а если…))