Компьютерный мастер

Адрес:
Сочи, ул.Роз, 37

Телефон: +7 (918) 614-88-20,
WhatsApp: +7 (918) 614-88-20

Режим работы:
Без выходных: с 9:00 до 19:00

Настройка MQTT Dash на мобильных устройствах

MQTT, настройка MQTT Dash на мобильных устройствах. Приложения для Android.

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

GooglePlay скачиваем MQTT Dash


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

Добавление сервера MQTT Dash прописываем параметры сервера MQTT настройка сервера MQTT Dash


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

параметры сервера на Broker


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


меню сервера MQTT Dash


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

Топик Текст MQTT Dash


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

Топик кнопка MQTT Dash Топик переключатель MQTT Dash


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

Топик диапазон


С остальными пунктами меню тоже проблем нет, пробуйте. Примеры выше помогут вам в настройках. Настройка MQTT Dash как видете проста и проблем не должно быть. Кроме всего есть возможность написания скриптов в MQTT Dash для вывода в плитки дополнительной информации. Можно выводить данные в формате JSON. Это отдельная и большая тема. Смотрите в интернете. Например по этой ссылке. Пробовал пользоваться другими приложениями для смартфона, но ни одно из них не подошло или из-за ограниченной функциональности или из-за того что платное. Вопросы лучше задавать через форму связи на моем сайте или по телефону. Мои контактные данные вверху каждой страницы сайта.