Настройка MQTT Dash на мобильных устройствах
Григорий
В процессе инсталляции "умного дома" мы установили интеллектуальные выключатели, розетки, много датчиков и другого оборудования. Но всем этими устройствами надо управлять и получать с них необходимую информацию. Данная статья о том как управлять умным домом через протокол MQTT с мобильного телефона или планшета, отправлять и получать сообщения с сервера.
Практически каждый производитель оборудования имеет свое фирменное приложение управления умным домом для установки на мобильные устройства: Broadlink - приложение с аналогичным названием, Sonoff - программу eWelink. Что мы имеем в результате:
1.-Кучу программ на смартфоне, которые занимают место
2.-Неудобство в использовании для выполнения разных действий приходится открывать несколько приложений. Например посмотреть параметры климата в одной программе, а управлять освещением в другой.
3.-Кроме всего - подключение к иностранным серверам, которые в нашем постоянно меняющимся мире всегда можно отключить для определенной страны. Сейчас мы наблюдаем как это делается при помощи санкций. Отключение скачивания новых версий Windows на сайте производителя.
Выгоднее иметь одно приложение, которое подключается к российскому серверу и управляет всеми устройствами и получает с них телеметрию. На данный момент популярный протокол MQTT обеспечивает передачу команд между разными устройствами «Умного дома». Его преимущества по отношению к другим протоколам:
— низкое потребление трафика;
— соединение между клиентом и сервером всегда открыто;
— не нагружает интернет канал;
— отсутствие задержек при передаче данных;
— удобная система подписок на топики;
Эта система управления состоит из двух частей:
-Сервера, как правило одного. Сервер MQTT можно создать свой Например на микрокомпьютере Raspberry установить mosquitto или использовать посторонние сервисы. Сервер служит как бы посредником при передачи и получении данных между клиентами. Если вы желаете получать данные и управлять устройствами в любой точке мира то надо использовать внешний сервер. Я использую WQTT.RU. Можно использовать два сервера MQTT - локальный и внешний, в этом случае необходимо установить между ними сетевой мост для обмена информацией.
-Клиентов MQTT может быть много.
Описывать подробно работу протокола MQTT не буду, про это достаточно много есть публикаций в интернете. Нас интересует настройка самого приложения для мобильных устройств MQTT Dash.
Клиентов-приложений под Android большое количество, с разными возможностями. Есть с ограниченными возможностями, платные и т.д. Из всех приложений мне понравился клиент MQTT Dash. Скачать можно по ссылке. Для скачивания включайте VPN.

С установкой думаю не возникнет ни каких проблем. После инсталляции MQTT Dash запускаем программу и переходим в приложение. Вверху экрана щелкаем по кнопке "+".



Данные - логин, пароль (password), номер порта. Данные берем с панели управления брокера.

Немного о следующих настройках - Идентификатор устанавливается автоматически. Размер плиток выбираем по желанию, потом в процессе работы можно поменять. После ввода настроек сохраняемся нажав на значок дискеты в верхней части экрана. Приложение позволяет устанавливать связь с разными серверами. То есть при сбое связи одного сервера Вы можете переключиться на другой и "умный дом" продолжит выполнять свои функции. Для этого в прижении просто добавляете еще один сервер.
Входим в созданное нами соединение и подключаем клиента (client) к серверу. Если не получаем ни каких уведомлений - то подключение к серверу установлено. Если получаем уведомления необходимо возвратиться назад в настройки соединения. Самая распространенная ошибка - при копировании параметров в настройках прописываются лишние знаки пробела и соединение не устанавливается. Зайдя в соединения щелкаем по "+" получаем вот такое меню.

Рассмотрим кратко пункты меню:
Текст Имя может быть любым, в том числе и на русском языке. Ниже название топика ( Topic), так как в данном случае мы только получаем данные публикацию не включаем. Поля "Префикс" и "Постфикс" служат для ввода дополнительной информации. Показывая мгновенные потребления тока при помощи "Постфикса" показывает единицу измерения - а (ампер). После введения информация не забываем сохраниться. Если надо вывести много параметров то для простоты создания виджетов в MQTT Dash их можно клонировать, для этого нажать пальцем на виджете и подержать. Появится меню: выбираем копировать.

Переключатель/кнопка Используется для включения выключения различного оборудования, например освещения.


Выбираем нужную картинку для отображения на экране и нужный цвет. Также можно изменять цвет выводимого текста.
Обращаю внимание - подпункты "Вкл" и "Выкл" должны прописываться точно так как на сервере. Если сервере прописано включение "1", а в приложение вы прописали "ON" то работать в этом случае не будет.
Диапазон/прогресс Отображается как и поле "Текст", но кроме этого выводит графический диапазон значения. Выглядит примерно так - виджет в самом низу показывает напряжение.

С остальными пунктами меню тоже особых проблем нет, пробуйте. Аппетит приходит во время еды. Думаю, что примеры выше помогут вам в настройках. Вопросы лучше задавать через форму связи на моем сайте или по телефону. Мои контактные данные вверху каждой страницы сайта.