В статье представлен прагматичный подход по созданию одного из элементов Умного Дома — экономной защиты от потопа (антипротечки) на базе универсального контроллера домашней автоматизации.
Главные отличия от ранее представленных на хабре решений данной задачи – простота реализации, относительно дешево + для повторения не надо быть программистом. Правда паять все равно придется, но всего 2 раза.

Введение
На хабре, как на ресурсе технически активных людей, на который страждущие идут за советом и решением проблем, размещено множество статей по теме Умный Дом.
И часто в комментариях встречаются сожаления о том, что мол никто пока не родил одновременно мощный, простой в освоении и экономный способ реализации Умного Дома для обывателей. То надо паять, то кодить, причем часто на разных языках: и для микроконтроллера, и для веб и так далее.
А так чтоб взял, купил запчасти-кубики за недорого и сам лично запустил – такое редко встречается.
Вот я и решил вставить свои 5 копеек, так как похоже, мне как раз попался один из вариантов реализации Умного Дома, который может подойти для многих прагматически настроенных потребителей.
Я расскажу на примере реализации защиты от потопа, хотя уже, на этом же контроллере у меня функционирует система охранной сигнализации, регистрации температуры и автоматического отключения нужных розеток при уходе из дома.
Итак, по моей «пирамиде потребностей Маслоу для Умного Дома» (с) – важность сигнализации и предотвращения потопа находится на том же уровне, что и важность сигнализации о вторжении или появлении дыма.
Пирамида потребностей Маслоу для Умного Дома

Ибо масштаб трагедии может быть ужасающим:
Ввиду того, что я недавно обзавелся универсальным контроллером умного дома и уже реализовал более важный функционал — я решил, что пора «постелить соломки».
Проблема
Итак, захотелось в случае обнаружения протечки воды – получать оповещение (смс и/или email) и, чтобы автоматически перекрывалась подача воды в квартиру. А также иметь возможность открывать и перекрывать воду «вручную», в том числе удаленно через интернет.
Решение
Существует ряд готовых наборов для полного или частичного решения данной задачи, но, во-первых, они мягко говоря дороговаты, во-вторых, имея в руках универсальный контроллер управления умным домом все это можно сделать самому и будет не хуже, а даже лучше ввиду того, что все будет интегрировано в единую систему и будет взаимодействовать именно так как мне хочется, а не так, как решил производитель системы. А учитывая, что самая дорогостоящая часть систему уже есть (контроллер), то избавляемся от дублирования и избыточности.
Текущая структура моей системы Умный Дом. Красным выделены компоненты непосредственно участвующие в системе Антипротечки.

Настольный макет прикладной части системы антипротечки выглядел так:

У меня сейчас горячая вода получается путем нагрева в бойлере холодной воды. Поэтому перекрывать нужно только одну трубу.
При необходимости, систему можно будет элементарно нарастить и сделать перекрытие второй трубы просто добавив еще один клапан и подключив его параллельно к радиореле.
Датчик протечки
Самый сложный момент во всей системе.
Беда в том, что если вопросы по контролю вторжения и появления дыма или газа элементарно решаются стандартными датчиками, то с контролем утечки воды все несколько иначе. В перечне совместимых датчиков моего универсального контроллера пока нет датчика протечки воды. По крайней мере не было…
Поиск на хабре быстро показал путь наименьшего сопротивления: взять стандартный беспроводной герконовый датчик и вместо геркона, а точнее параллельно ему, вывести провода с контактами и замыкать их водой.
Данный подход имеет ряд недостатков: одним из главных является окисление не позолоченных контактов со временем.
Ранее читал в интернете, что существуют другие способы определения протечки воды, например, бесконтактные, но дешевизна, оперативность и элементарность реализации описанного выше варианта прервала полет инженерной мысли в сторону инновационных подходов.
За основу был взят китайский беспроводной магнитоконтактный (герконовый) датчик MD-209R. В моем случае был выбран относительно дешевый датчик-клон, совместимый с протоколом передачи PowerCode (фирмы Visonic), так как это один из беспроводных протоколов, поддерживаемых моим контроллером.
Параллельно встроенному геркону я подпаял 2 провода, замыкание которых фактически приводят к срабатыванию датчика.
Итак, после нехитрых манипуляций с паяльником получилось это:
Клапан с электроприводом
В качестве клапана, перекрывающего воду, можно использовать любой клапан, имеющий электропривод и соответствующий размер соединения с трубой.
Свой макет я испытывал на китайском клапане с электроприводом под трубу на 1/2 дюйма.
Конструкция электропривода клапана автоматически отключает питание на катушку после открытия или закрытия. Таким образом, нет необходимости командами с контроллера снимать напряжение через радиореле после выполнения операции.
Радиореле
Для подачи питания на привод я закупил на ebay вот такое двухканальное радиореле из списка совместимых с контроллером.
Тип YKT-02XX-433
Внутри установлена так любимая китайскими производителями микросхема-кодер 1527.
В нем стоят 10-амперные реле, поэтому, в принципе, ими можно коммутировать почти любую бытовую нагрузку до 250В. Ограничение 2 кВт.
Для управления электроприводом этого более чем достаточно, так как привод клапана питается от 12 В и по паспорту потребляет всего 4 Вт, причем только во время изменения состояния клапана.
Данное радиореле может работать в нескольких режимах, один из которых нам как раз и надо: взаимная блокировка каналов. В этом режиме — при включении реле одного канала, автоматически выключается реле другого канала. Таким образом, мы «почти аппаратно» защищаемся от одновременной подачи напряжения на «открытие» и «закрытие» на соленоид электропривода клапана вследствие каких-либо глюков.
Схема подключения клапана, приемника
Управление
В качестве «мозгов» системы я применил Наносервер NS1000 — универсальный контроллер отечественного производителя 1-М Умным Домом.
Возможности контроллера, которые так или иначе используются в данном проекте:
• Поддержка сверхбюджетных беспроводных датчиков и радиореле.
• Выполнение сценариев оффлайн (даже без интернет).
• Оповещение о событиях через смс и по электронной почте.
• Элементарное составление «сценариев» работы системы без написания кода.
• Возможность управление устройствами со смартфона (Android).
• Управление через WEB.
• Ведение «логов».
Сценарии
В процессе настройки контроллера нужно учесть следующий нюанс:
Герконовый датчик посылает сообщение о срабатывании когда размыкается, а нам надо чтобы при замыкании. Соответственно, в условии запуска сценария нужно указать не включение датчика, а выключение. И не по состоянию, а по изменению. Чтобы оповещения не повторялись циклически.
Условие запуска сценария 1: Если Канал «Датчик протечки» выключился.
Шаги сценария:
. Оповещение «Хозяин, у нас потоп!»
. Включить канал «Клапан воды закрыть»
И сценарий на открытие клапана по команде с брелка или со смартфона:
Условие запуска сценария 2: Если Канал «Можно открыть клапан воды» включился.
Шаги сценария:
. Включить канал «Клапан воды открыть»
В WEB-интерфейсе облачного сервиса это выглядит так:
Для ручного управления устройствами ничего «программировать» не надо – после добавления в систему, управление каждым устройством автоматически становится доступно из Личного кабинета через WEB-интерфейс и с Android-приложения.
Вид панели WEB-управления Умным Домом через интернет:
Внешний вид Android-приложения
Что в результате?
Цель достигнута. При срабатывании датчика протечки, я получаю смс-оповещение вида «Хозяин, у нас потоп!» и клапан автоматически перекрывается в течение менее 30 секунд.
Так же, я имею возможность не автоматически открывать и закрывать клапан, путем нажатия на кнопки брелка, со смартфона или с браузера через интернет.
Срабатывание каждого датчика и устройства регистрируется в журнале логов.
При этом, не пришлось писать код и самостоятельное повторение данного решения вполне доступно для большинства (конечно, не считая установки клапанов на трубы).
Настройка системы, зная, что ты хочешь, занимает от силы 10 минут. Включая активацию датчика и радиореле, создание всех сценариев.
Понятно, что в том виде, как оно представлено на фотографиях, в реальности оно долго и надежно работать не сможет.
Блок питания привода клапана, радиореле, да и сам датчик нужно еще поместить в пластиковые коробочки с хоть какой-то степенью защиты.
Плюс уже возникают разные мысли по развитию системы, например, дублированию оповещения на световую сигнализацию, периодическую «тренировку» клапана чтобы «не застаивался» и тп. Кстати, лично у меня есть серьезные сомнения в необходимости функции резервного питания электроклапана, которой так хвастаются некоторые «покупные» комплекты антипротечки.
Другими словами — аппетит приходит во время еды.
Благо дело, что для наращивания функционала не надо звать «сертифицированных» специалистов, чтобы они что-то подкрутили в системе. Все это можно элементарно сделать самому, благодаря простоте принципов настройки универсального контроллера.
Немного о ценах:
Наносервер NS-1000 — 44$
Датчик магнитоконтактный MD-209R — 13$
Радиореле — 10$
Клапан- 15$
Итого (без учета доставки) = 82$
Не так уж и дешево. Но это если не учитывать, что наносервер используется не только для фукнции антипротечки. Ведь на нем реализована система охранной и пожарной сигнализации и другие возможности…

P.S.
В процессе реализации, уже купив клапан, я обнаружил, что существуют электроприводы, которые устанавливаются на обычные шар-краны с ручным управлением.
Дополнительный и немаловажный бонус такого подхода – в случае чего, за несколько минут можно вернуть ручное управление клапаном.
Мне тут же расхотелось врезать дополнительную запорную арматуру в систему водоснабжения и я заказал такой привод. Жду.
Update 2:
Пока соль да дело, производитель контроллера анонсировал датчик протечки.

Судя по информации, датчик использует бесконтактный принцип определения появления воды, что само по себе уже довольно необычно. Также он интересен тем, что не «заточен» под «бренд» и может использоваться не только с системой 1-М Умный Дом, а и с любой системой, работающей по протоколу PowerCode. Фактически он передает посылку аналогичную датчику MD-209R, который я применил для своей антипротечки.
Цена, похоже, тоже будет сравнима — 9.9$.
Поглядим…
Автор: chenamob