Какие-нибудь очевидные проблемы с этой домашней домашней автоматизацией?

2

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


Текущий статус дома


  • почти все огни являются временными кнопками, подключенными к реле 220В
  • два места в доме, где все провода подключены

Поскольку изображение стоит тысячи слов ... (есть примеры, а не настоящие, которые я буду использовать (другое реле 220 В, реле с подключением Arduino, но основная идея хорошо представлена) DIY система


  • добавив реле 220 В последовательно с обычными выключателями света, подключив его к Arduino
  • датчик тока 30 А используется для определения состояния выключателя света
  • каждый Arduino (или, по крайней мере, один из множества Arduinos - там, где его недостаточно), Ethernet-экран используется для отправки / получения данных по закрытой сети (недоступной из локальной сети / интернета)
  • атомная плата mini-itx под управлением Linux и некоторое программное обеспечение node.js прослушивает UDP-пакеты в сети (контроллер)
  • каждый Arduino отправляет каждые x минут состояние включения / выключения как пакет UDP
  • каждый Arduino отправляет пакет UDP при изменении состояния
  • каждый Arduino прослушивает адресованные ему UDP-пакеты и может включать / выключать реле
  • контроллер получает и сохраняет все данные на сетевой карте, используя секунду для предоставления веб-интерфейсам аутентификации для локальной сети.
  • другие устройства Arduino будут встроены в коммутаторы, сенсорные массивы и могут отправлять команды UDP для включения / выключения освещения
  • контроллер выполняет управляемые событиями и расписанием действия, изменения состояния и может отправлять команды в Arduino

преимущества

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

Недостатки

  • может потребоваться много щитов Arduinos и Ethernet

Дополнительные предметы

  • Raspberry Pi с тепловыми веб-камерами для обнаружения присутствия с использованием модифицированной установки zoneminder для отправки данных о занятости по UDP-пакетам
  • пара телефонов Android со сломанным GSM и слабыми батареями, используемые в качестве интерфейса с сенсорным экраном в доме
  • телефон Nokia, используемый с Gammu для предоставления возможности управлять домом с помощью SMS

осветление

Реле 220 В, которые были установлены прямо сейчас, были установлены на место, чтобы позволить свету открываться или закрываться из нескольких мест в комнате. Думайте о реле как о 3-х сторонней схеме управления

  • одна сторона имеет вход 220В
  • одна сторона имеет кнопки, которые работают на 220 В
  • одна сторона имеет выход на лампочку

220 В представляет собой реле включения / выключения. Каждый раз, когда нажимается любая кнопка, она переключает свое состояние, пока вы нажимаете кнопку более 0,1 секунды (так сказано в руководстве по реле).

Мой электрик установил реле 220 В, оно не «нормально разомкнуто» или «нормально замкнуто». Если сила падает, а затем возвращается, огни возвращаются в свои прежние состояния.

Для запуска сетевого реле 220 В все, что мне нужно, это использовать нормально разомкнутое реле Arduino и запускать закрытое состояние более 0,1 секунды. Мне просто нужно отправить «импульс» 220 В на реле 220 В. Это главная причина того, что свет будет работать, пока питание не будет слишком сильным. Все arduino могут выйти из строя, и нормальное освещение будет работать как обычно, я потеряю только возможность дистанционного управления и расширенное планирование / создание сценариев.

Что касается цен, я поставляю arduino + ethernet или mega + ethernet (и несколько других реплик arduino) по цене около 15-25 $ за пару, поэтому стоимость относительно низкая. В основном программном обеспечении контроллера я оцениваю 40 часов работы, а затем несколько сотен часов в течение нескольких лет, дорабатывая пользовательский интерфейс, добавляя события и так далее.

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

--- Позднее редактирование --- Построил схему, вы можете увидеть ее в действии на YouTube http://www.youtube.com/watch?v=BmsdXMbd2vo

влад б.
источник
2
Почему ваши кнопки идут на реле, а не на Arduino? Где ваши обычные настенные выключатели во всем этом? Посмотрели ли вы X10, вы все равно можете интегрировать это в Arduino или ПК и удалить всю высоковольтную проводку. Если вы решите купить реле, убедитесь, что они имеют высокий рейтинг силы тока и рабочий цикл, и осознайте, что вы подаете электромагнит на использование реле, которое является силовым кабелем.
Джейсон
1
Как вы намереваетесь сохранить существующую функцию переключения, если система не работает И все еще может иметь состояние включения / выключения управления системой?
gregmac
@gregmac Мы заявили, что он планирует подключить реле последовательно, поэтому использование NC (нормально замкнутого) будет действовать так, как если бы система не была установлена. Вы можете посмотреть на это, поскольку добавленная система не сможет включить свет, а сможет выключить свет или вернуть их в прежнее состояние. Все еще задаюсь вопросом, где нормальные переключатели, хотя, потому что они будут действовать больше как «только выключение», а также.
Джейсон
Единственный способ, о котором я могу подумать, - это использовать SPDT-защелкивающиеся реле (что означает, что вам также нужно 2 контакта ввода-вывода для контроллера) и чтобы все «нормальные» переключатели были трехпозиционными, при этом реле действует как другой 3-сторонний переключатель («3-way» == «2-way», если вы находитесь в Великобритании). Скорее всего, это означает замену большинства переключателей и замену существующей проводки на трехжильный провод. Во всяком случае ... Я не могу понять, как этот подход DIY может быть дешевле, чем Insteon / UPB / Zwave (или X10, но не используйте это, это ужасно). Сделай сам со стороны программного обеспечения / контроллера, но не аппаратного обеспечения / переключения.
gregmac
Добавлены уточнения. @gregmac - мне нужно изменить две вещи - подключить реле aruduino к реле 220 В, соединить провода с лампочкой и добавить датчик тока.
влад б.

Ответы:

1

Я делал что-то подобное последние пару месяцев. В настоящее время настройка распространяется только на мою мастерскую (для тестирования). В настоящее время я использую один UNO для управления, который считывает различные состояния датчиков, включая уровень освещенности и температуры / влажности, а также некоторые дверные (герконы) и ИК-датчики движения. Arduino читает состояние и отправляет сообщения некоторому программному обеспечению (в настоящее время Python 2.7 под Ubuntu) через UDP, который затем выполняет необходимую обработку и отправляет управляющие команды обратно в Arduino, снова через UDP. В настоящее время обработка сводится к проверке внутренних датчиков освещения и включению освещения при необходимости. В конечном счете, я хочу перевести все свое освещение на светодиод 12 В, чтобы я мог работать от накопленного солнечного света, но в настоящее время я использую систему, аналогичную вашей, в которой реле включены последовательно с выключателем питания для источников света, нормально замкнутый, так что если схема управления выходит из строя, выключатели света должны работать как обычно. У меня также есть несколько внешних ИК-датчиков, и та же система активирует внешнее защитное освещение, на этот раз с нормально разомкнутым реле. Я считаю, что использование нормально замкнутых реле необходимо для основного освещения, иначе домашнее управление начнет работать после того, как система будет развернута в остальной части дома. Я хочу использовать светодиоды из-за их диммируемой природы при использовании выводов Arduino с широтно-импульсной модуляцией, тогда это обеспечит хороший низкий уровень освещения для этих ночных поездок в туалет, и все это, конечно же, автоматически. Я только что получил поставку Mega 2560, которая обеспечит намного больше IO. Как и вы, я предусматриваю наличие отдельных Arduino для ввода и вывода. Я разрабатываю систему управления в Python, с намерением перенести его на Raspberry PI после завершения разработки. Это позволит мне запустить приложение с экраном состояния, подключенным к композитному видео. В настоящее время у меня есть ограниченный экран состояния на ПК, который позволяет мне контролировать яркость светодиодных панелей и лампочек GU16. Я настроил Arduino так, чтобы он принимал команды от любого устройства в сети, чтобы я мог настроить управление с Android-устройств, которые у меня есть по дому. У меня также есть полностью работающая установка zoneminder, но я еще не рассматривал возможность ее использования для запуска чего-либо, но опять же у меня нет внутренних камер, только внешних. Я действительно рассматривал тепловизию, как вы предложили, но я думаю, что стоимость является серьезной проблемой (нужно было бы заплатить менее 100 австралийских долларов за комнату, чтобы это было возможно для меня), поэтому я ' м с использованием недорогих ИК-датчиков (около 2 долларов США из Китая). Мой код Arduino не самый лучший, но я более чем готов поделиться им. В настоящее время он настроен на мониторинг различных датчиков в постоянном контуре, а также прослушивает 3-байтовую строку UDP в форме 410 (4 - это свет 4, 1 - включен, последняя цифра используется для уровня яркости для СВЕТОДИОД)

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

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

Дайте мне знать, если я могу помочь с вашим проектом. Это звучит здорово. Удачи

Джон

user13613
источник
Я изучаю / использую узел JS для основного контроллера. Вы можете взглянуть на мой прототип здесь: github.com/vladbabii/MasterController-HomeAutomation . Я думаю, что лучший подход к этому - это управляемый язык, который может обрабатывать несколько входных / выходных пакетов и потоков данных (TCP-соединение для непрерывного потока состояний, TCP-соединение для кодированных в JSON данных, используемых браузером, прослушивание и генерация UDP-команд ). Разница в том, что я делаю электрически, заключается в том, что у меня есть реле 220 В, которое не является НО или НЗ, оно просто переключает состояние, когда получает импульс 220 В.
влад б.
А мои Arduino-реле нормально разомкнуты и закрыты на ~ 100 мс, чтобы вызвать состояние включения-выключения. Можете ли вы рассказать больше о том, как вы структурируете свои пакеты udp? Я использую простую структуру get: identifier = <current_identifier> & action = sensor_update & sensor = <name> & value = <value>. Я не уверен в том, чтобы в некоторых местах использовать беспроводную связь или тянуть кабели.
влад б.
Я рассматриваю возможность использования двух Raspberry Pi в качестве серверов, но я так и не нашел способа сделать надежное переключение при сбое и перезапустить его после сбоя основного. Есть идеи по этому поводу?
влад б.
Привет, Влад, мой UDP-код - это похмелье от проекта openCV, который я выполнял ранее в этом году (для отслеживания кошек в моем саду), который использовал сервоприводы панорамирования и наклона, поэтому я отправлял три байтовых строки в сервоприводы для контроля их движение.
user13613
Я самоучка и никогда не сталкивалась с C, но, тем не менее, код в основном работает. Таким образом, я сделал абсолютный минимум, с которым я могу справиться в Arduino, большая часть принятия решений (включение / выключение света и т. Д.) Осуществляется на python, в конечном счете, для запуска на Pi.
user13613
0

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

Если бы я сегодня смотрел на покупку дома, который кто-то в значительной степени изменил, чтобы установить совершенно нестандартную систему «Сделай сам» при использовании «современного уровня» 10 или 15 лет назад, я бы, вероятно, подумал: «Ух, у меня есть уничтожить все и полностью переделать электричество в этом доме ", и цена, которую я был бы готов заплатить, отразила бы это. Я немного экстремален, чтобы проиллюстрировать это, но вы должны это учитывать.

gregmac
источник
Все, что мне нужно сделать, это снять датчик тока и подключить провода назад, и отсоединить реле Arduino от реле 220В. А затем установите на место старые крышки соединительных кабелей, а не те, которые у меня сейчас есть, для хранения всех дополнительных вещей.
влад б.
Или вы можете установить готовые переключатели / диммеры с дистанционным управлением, и вам никогда не придется беспокоиться о том, чтобы отключить их или вообще справиться с током в доме.
Кешлам