Оглавление:

Система домашней автоматизации WiFi со сверхнизким энергопотреблением: 6 шагов (с изображениями)
Система домашней автоматизации WiFi со сверхнизким энергопотреблением: 6 шагов (с изображениями)

Видео: Система домашней автоматизации WiFi со сверхнизким энергопотреблением: 6 шагов (с изображениями)

Видео: Система домашней автоматизации WiFi со сверхнизким энергопотреблением: 6 шагов (с изображениями)
Видео: #TOMZN ⚡️WiFi автоматический выключатель Smart (автомат) для электро щита 2024, Ноябрь
Anonim
Система домашней автоматизации WiFi со сверхнизким энергопотреблением
Система домашней автоматизации WiFi со сверхнизким энергопотреблением
Система домашней автоматизации WiFi со сверхнизким энергопотреблением
Система домашней автоматизации WiFi со сверхнизким энергопотреблением

В этом проекте мы покажем, как за несколько шагов создать базовую локальную систему домашней автоматизации. Мы собираемся использовать Raspberry Pi, который будет выступать в качестве центрального WiFi-устройства. В то время как для конечных узлов мы собираемся использовать IOT Cricket для создания устройств WiFi с батарейным питанием, например. датчик температуры и подключите его к RPi, не написав ни единой строчки кода.

Наша система будет основана на протоколе связи MQTT, который широко используется в большинстве систем домашней автоматизации. Чтобы настроить его, мы выбираем брокера Mosquitto MQTT (сервер) и устанавливаем его на Raspberry Pi (наш центральный хаб).

IOT Cricket также поддерживает протоколы HTTP (S) и MQTT. Мы настраиваем его для использования MQTT для прямой связи с нашим брокером RPi MQTT.

Этот проект могут реализовать мастера любого уровня подготовки. Это может потребовать некоторой базовой пайки, но не требует кодирования или программирования. В конце этого проекта вы получите твердое представление о том, как легко создать свою собственную систему и быстро расширить ее, добавив в систему свои собственные конечные узлы IOT.

Запасы:

  • Raspberry Pi (мы использовали версию 3 для этого проекта)
  • Модуль IOT Cricket WiFi
  • 2xAAA батарейный отсек
  • 2xAAA батареи

Шаг 1. Что такое MQTT?

Протокол MQTT обеспечивает легкий метод обмена сообщениями с использованием модели публикации / подписки. Это делает его подходящим для обмена сообщениями Интернета вещей, например, для датчиков с низким энергопотреблением или мобильных устройств, таких как телефоны, встроенные компьютеры или микроконтроллеры. (источник: mosquitto.org)

Мы можем использовать столько устройств, сколько захотим, чтобы подписаться на темы и ожидать поступления сообщений. Если какое-то устройство (а) публикует сообщение по этой теме, то все устройства, которые подписаны на эту тему, получают это сообщение мгновенно. Темой может быть любая произвольная строка, обычно объединенная с символами / для создания иерархических тем. Наиболее типичное использование MQTT - наличие одного центрального сервера, на который устройства могут подписываться и публиковать сообщения. Это облегчает связь между устройствами, подключенными к этому серверу. В этом проекте мы будем использовать RPi в качестве нашего центрального брокера MQTT, а все другие устройства будут отправлять сообщения через этого брокера. Очевидно, что лучший способ узнать об этом - это сделать это сами. В Интернете по MQTT доступно множество ресурсов. Однако для этого проекта вас должно устроить базовое введение, которое мы представили выше.

Шаг 2: установка брокера MQTT на Raspberry Pi

Для этого проекта мы используем брокер Mosquitto MQTT с открытым исходным кодом. Он легкий и подходит для использования на всех устройствах, от одноплатных компьютеров с низким энергопотреблением до полноценных серверов.

Прежде чем мы начнем установку, рекомендуется сначала обновить системные компоненты:

$ sudo apt-get update $ sudo apt-get upgrade

Установите брокера Mosquitto. Откройте терминал и введите следующую команду:

$ sudo apt-get install mosquitto -y

Настройте брокера Mosquitto. Отредактируйте файл конфигурации:

$ sudo vi /etc/mosquitto/mosquitto.conf

и добавьте следующие строки вверху:

порт 1883allow_anonymous true

Перезапустите RPi, чтобы изменения вступили в силу:

$ sudo перезагрузка

Вот и все! Наш брокер MQTT запущен и работает!

ПРИМЕЧАНИЕ: для простоты этого проекта мы не создаем учетные записи. Таким образом, любой в нашей локальной сети может подключиться к этому брокеру MQTT без учетных данных. Если вы хотите добавить аутентификацию пользователя и сделать ее более безопасной, в Интернете есть множество руководств, как это сделать.

Теперь нам просто нужно получить IP-адрес, чтобы мы могли отправлять сообщения нашему брокеру Mosquitto с других устройств в сети:

Получить IP-адрес:

$ hostname -I

ваш_RPi_IP_address (например, 192.168.1.10)

Шаг 3. Подключите IOT Cricket к RaspberryPi через MQTT

Подключите IOT Cricket к RaspberryPi через MQTT
Подключите IOT Cricket к RaspberryPi через MQTT
Подключите IOT Cricket к RaspberryPi через MQTT
Подключите IOT Cricket к RaspberryPi через MQTT

В этом проекте мы используем модуль IOT Cricket WiFi для простого датчика, который каждые 30 секунд сообщает о температуре в нашу систему. Он будет работать от аккумулятора, поэтому его можно прикрепить где угодно, дома или в саду. Позже вы можете использовать IOT Cricket для создания различных датчиков, сигнализаций, кнопок, переключателей с батарейным питанием и также подключать их к нашему брокеру RPi MQTT из коробки.

На первом этапе подключите батареи к Cricket.

Cricket имеет встроенный датчик температуры. Нам просто нужно настроить его для отправки значения температуры нашему MQTT-брокеру, установив IP-адрес RPi. Для этого откройте панель конфигурации Cricket (см. Шаги здесь) и примените следующие настройки (как показано на изображении ниже, пожалуйста измените IP-адрес в поле "url" на ваш RPi)

Теперь мы можем выйти из режима настройки. Устройство готово! Cricket уже отправляет данные нашему брокеру MQTT каждые 30 секунд.

Шаг 4. Проверьте сообщения MQTT

Проверить сообщения MQTT
Проверить сообщения MQTT

Для просмотра / получения сообщений, отправленных нашему брокеру MQTT, мы можем использовать различные инструменты.

Самым простым может быть инструмент командной строки mosquitto_sub. Мы можем установить его либо на любой компьютер в нашей сети, либо на нашем RPi с помощью этой команды:

$ sudo apt-get install mosquitto-clients -y

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

$ mosquitto_sub -v -h ваш_RPi_IP_адрес -p 1883 -t '#'

… / 59A98F494C / имя_устройства MyTemperatureDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763 / 59A98F494C / hwc_message_sent 3664 / 59A98F494C / температуры 26,0 / 59A98F494C / io1_wake_up 0 / 59A98F494C / rtc_wake_up 1 …

Выше приведен выходной пример того, что IOT Cricket отправляет нашему брокеру. Среди других данных мы видим температуру:

/ 59A98F494C / темп 26,0

Прелесть MQTT в том, что он позволяет нам подписываться только на темы, которые нас интересуют. Если мы хотим получать только данные о температуре, мы можем подписаться на тему / 59A98F494C / temp, используя следующую команду:

$ mosquitto_sub -h ваш_RPi_IP_адрес -t '/ 59A98F494C / temp'

…26.126.527.227.6…

Шаг 5: Резюме

Резюме
Резюме

В этом проекте мы показали необходимое оборудование и программное обеспечение для создания энергосберегающих систем домашней автоматизации на базе Wi-Fi с низким энергопотреблением. MQTT - это основа для создания более сложных систем.

Экосистема программного обеспечения и услуг, которые можно интегрировать с MQTT, ОГРОМНА! Существует множество отличных систем, таких как Home Assistant, Node RED, Grafana и т. Д., Которые позволят вам создать отличный пользовательский интерфейс для вашей собственной системы. Мы не только можем делать простые распечатки температуры, но и иметь отличные информационные панели, визуализирующие данные и управляющие вашими устройствами.

Теперь, когда у нас есть эта базовая системная инфраструктура, нет предела возможностей других устройств WiFi, которые мы можем построить с помощью модулей IOT Cricket и добавить в нашу систему домашней автоматизации.

Спасибо, что поднялись сюда. Надеемся, вам понравился этот урок!

Команда Things On Edge

Шаг 6: О нас

Things On Edge - компания, базирующаяся в Кембридже, Великобритания. Мы разрабатываем модуль Cricket Wi-Fi со сверхнизким аккумулятором, чтобы вы могли буквально за считанные минуты подключать различные электронные устройства к смартфонам или другим интернет-сервисам. Не требует программирования и кодирования. Он позволяет интегрировать ваши устройства в огромные сервисы экосистемы IOT через MQTT и HTTP API.

Рекомендуемые: