Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
mr.save

Я покажу вам Z-Way. Делаем хаб для умного дома на основе Z-Wave и Raspberry Pi

Recommended Posts

Если ты планируешь систему умного дома и хочешь с самого начала сделать все как можно лучше, то радиопротокол Z-Wave и серверный софт под названием Z-Way — это надежный и перспективный вариант. В этой статье я подробно расскажу о том, как сделать хаб своими руками на основе легкодоступного одноплатника Raspberry Pi, модуля RaZberry и бесплатного софта.

Существуют универсальные софтверные хабы, которые поддерживают множество устройств с разными протоколами, например openHUB, Home Assistant, Domoticz, ioBrocker. Поддержка Modbus, ZigBee, Z-Wave, 1-Wire и других протоколов обеспечивается с помощью открытых модулей сторонних разработчиков.

Это универсальный подход, однако в таком варианте страдает качество работы самих устройств: не все функции поддерживаются, бывает, что устройства работают некорректно или не работают вовсе. С контроллером Z-Way таких проблем не возникает.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Z-Way отличается тем, что поддерживает любые устройства с Z-Wave, но делает это на основе официальных стандартов. Другие протоколы добавляются с помощью модулей, написанных на C/C++, или приложений на JavaScript. Использование языка C/C++ позволяет писать быстрые кросс-платформенные программы, поэтому Z-Way может работать как на мощном сервере, так и на встраиваемой системе. Например, есть сборки для роутеров Zyxel и накопителей WD. Софт для разных платформ ты найдешь на сайте проекта.

Установка Z-Way на Raspberry Pi

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Для работы Z-Way требуется плата RaZberry, устанавливаемая в колодку GPIO Raspberry Pi. Плата занимает первые десять пинов, но использует только следующие: 3,3 В, GND, RX, TX. Z-Way можно установить на любое поколение Raspberry Pi.

Существует несколько способов установки.

Минимальная установка. На последнем Raspbian скачиваем и ставим в систему пакет deb. При этом будет установлен только сервер Z-Wave без удаленного доступа.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Обычная установка. На последнем Raspbian запускаем установочный скрипт. Будет установлен сервер Z-Wave и активирован удаленный доступ.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Максимальная установка. Есть готовый образ системы c уже установленным сервером Z-Wave, активированным удаленным доступом и настроенным Wi-Fi в режиме точки доступа. Это самый простой и быстрый способ поднять полноценный хаб умного дома на Raspberry Pi.

Вот как записать образ на карточку, если у тебя Mac.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

В Linux различается разве что команда монтирования. Но если возникнут сложности или у тебя Windows, то можешь воспользоваться сторонним софтом — например, Etcher.

На свежеустановленном Z-Way нужно найти IP-адрес контроллера RaZberry в локальной сети. Можно посмотреть на роутере список подключенных устройств, а можно зайти на сайт удаленного доступа https://find.z-wave.me и увидеть подключенный контроллер. При первом старте предлагается установить пароль администратора.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Добавление беспроводных датчиков Z-Wave

После успешного запуска системы домашней автоматизации можно добавить пару датчиков Z-Wave и посмотреть, на что они способны. В моем распоряжении оказался датчик движения Philio PSP05, работающий от батарейки CR123A, и лампа RGBW Z-Wave.Me ZMR_LBA60 с цоколем E27.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Переходим на страницу добавления устройств Z-Wave: «Меню → Устройства → Z-Wave Добавить новое → Автоматически обнаружить Z-Wave-устройство». Нажимаем «Старт». На датчике движения в этот момент нужно нажать кнопку три раза подряд. При добавлении лампы нужно трижды выключить-включить выключатель.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

После успешного добавления датчика и лампы на главной странице появится несколько виджетов устройств, можно использовать их при создании сценариев или просто управлять техникой с телефона. Лампа позволяет настроить любой цвет, цветовую температуру от теплого (2600 К) до холодного (6500 К) и плавно менять яркость. Датчик движения выполнен в форме и размере глаза, годится для скрытой установки и при каждом движении отправляет команду на контроллер.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Веб-интерфейс — это, конечно, удобно, но куда полезнее и интереснее смотреть лог в консоли.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Добавление проводных датчиков температуры DS18B20

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Z-Wave-плата RaZberry занимает только первые десять пинов GPIO. Оставшиеся тридцать можно использовать для подключения проводной периферии, такой как реле, светодиоды и датчики температуры.

Датчик температуры DS18B20 дешев и удобен в подключении, работает по шине 1-Wire на расстоянии до 300 м. К одному пину Raspberry Pi можно подключить несколько десятков датчиков, чего должно хватить для большинства бытовых нужд. По умолчанию для 1-Wire используется пин 4, но его перекрывает плата RaZberry, поэтому в конфиге нужно выбрать другой пин, например 24, и активировать работу с 1-Wire.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Линию данных 1-Wire нужно подтянуть к питанию 5 В с помощью резистора на 4,7 Ом и далее можно подключить несколько датчиков температуры. Пины питания перекрыты платой RaZberry, но на самой плате есть дублирующие разъемы, поэтому с подключением не будет проблем.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Чтобы проверить, что все настройки верны и датчики подключены правильно, нужно загрузить систему и выполнить команду

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

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

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Осталось отобразить показания датчиков в панели домашней автоматизации Z-Way. Для этого создадим виртуальное устройство, которое раз в минуту будет считывать показания температуры.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Код опроса одного из датчиков:

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

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

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Добавление проводных реле Arduino

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Для Arduino и не только продаются недорогие модули с одним, двумя, пятью и более реле на борту. Модули управляются от 5 В и коммутируют 220 В, их можно использовать для управления освещением и бытовыми приборами типа насосов, проветривателей, вентиляторов. Подключив реле к Raspberry Pi, можно настроить сценарий, где беспроводной датчик включает свет. Схема подключения проста: модуль подключается к питанию 5 В и управляется с любого свободного пина. Для примера я выбрал 25-й пин.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Проверить работу реле можно из терминала следующими командами:

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Чтобы добавить реле в систему автоматизации Z-Way, нужно создать виртуальное устройство: «Меню → Приложения → Локальные приложения → JavaScript-устройство».

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Команда включить:

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Команда выключить:

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

При каждой перезагрузке потребуется инициализировать 25-й пин на выход, поэтому создадим загрузочный скрипт инициализации: «Меню → Приложения → Локальные приложения → Пользовательский код JavaScript».

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Команды инициализации 25-го пина на выход:

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Настройка автоматизации

В Z-Way встроено более пятидесяти приложений автоматизации, и еще более ста можно загрузить из бесплатного онлайнового магазина.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

Есть приложение «Умное освещение», в настройках которого нужно только выбрать датчик движения и светодиодную лампу. Предположим, алгоритм работы будет следующий: с 7:00 до 00:00 лампа будет включаться на максимум, с 00:00 до 7:00 — только на 20%.

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

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

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.

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

Скрытый контент

    Дайте реакцию на этот пост, чтобы увидеть скрытый контент.
.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...