Оглавление:

Подключите Magicbit к Thingsboard: 3 шага
Подключите Magicbit к Thingsboard: 3 шага

Видео: Подключите Magicbit к Thingsboard: 3 шага

Видео: Подключите Magicbit к Thingsboard: 3 шага
Видео: Кибериммунность и IoT: как создать безопасный промышленный шлюз 2024, Ноябрь
Anonim
Подключите Magicbit к Thingsboard
Подключите Magicbit к Thingsboard

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

Запасы:

  • Magicbit
  • Датчик температуры и влажности DHT11 (4 контакта)

Шаг 1: история

История
История
История
История
История
История
История
История

Вступление

ThingsBoard - это серверная платформа с открытым исходным кодом, которая позволяет отслеживать и управлять устройствами IoT. Он бесплатен как для личного, так и для коммерческого использования, и вы можете развернуть его где угодно. Если это ваш первый опыт работы с платформой, мы рекомендуем просмотреть страницу с информацией о функциях и руководство по началу работы.

Этот пример приложения позволит вам отображать данные о влажности / температуре с датчика DHT11 с помощью устройства magicbit и веб-интерфейса ThingsBoard.

Приложение, работающее на устройстве Magicbit, написано с использованием ThingsBoard Arduino SDK, который довольно прост и понятен.

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

Посетите официальную страницу Thingsboard Demo и зарегистрируйтесь.

После входа в систему на левой боковой панели вы увидите Устройства. Щелкните устройства и добавьте новое устройство.

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

Установите для устройства значение magicbit в псевдониме. Перейдите на вкладку дашборда и импортируйте дашборд.

Выполните следующие шаги в изображениях, чтобы импортировать панель мониторинга. Найдите в приложениях демонстрационный файл JSON с названием "magicbit_tempera_humidity_demo_dashboard.json".

Подключите свой волшебный бит к модулю DHT11, как показано ниже, к контакту 33.

Загрузите в Arduino IDE указанные выше библиотеки.

Ниже приведен код Arduino, который вы будете использовать.

Примечание. Вам необходимо отредактировать следующие константы и переменные в скетче:

  • WIFI_AP - имя вашей точки доступа
  • WIFI_PASSWORD - пароль точки доступа
  • TOKEN - $ ACCESS_TOKEN из шага настройки ThingsBoard.
  • THINGSBOARD_SERVER - HOST / IP-адрес ThingsBoard, доступный в вашей сети Wi-Fi. Укажите demo.thingsboard.io, если вы используете живой демонстрационный сервер.

Шаг 2: Код Arduino

#include // DHT для библиотеки библиотеки # include // Контроль WiFi для ESP32 # include // ThingsBoard SDK # define DHTPIN 33 // к какому цифровому выводу мы подключены # define DHTTYPE DHT11 // DHT 11DHT dht (DHTPIN, DHTTYPE); // Вспомогательный макрос для вычисления размера массива # define COUNT_OF (x) ((sizeof (x) / sizeof (0 [x])) / ((size_t) (! (Sizeof (x)% sizeof (0 [x]))))) // точка доступа WiFi # определить WIFI_AP_NAME "4G" // "WIFI_AP" // Пароль Wi-Fi # определить WIFI_PASSWORD "nevergiveup" // "WIFI_PASSWORD" // См. Https://thingsboard.io/docs/getting- start-guides / helloworld /// чтобы понять, как получить токен доступа # define TOKEN "XZjQ26r9XJcsNkWGuASY" // "TOKEN" // экземпляр сервера ThingsBoard. #define THINGSBOARD_SERVER "demo.thingsboard.io" // Скорость передачи для серийной отладки #define SERIAL_DEBUG_BAUD 115200 // Инициализируем клиента ThingsBoardWiFiClient espClient; // Инициализируем экземпляр ThingsBoardThingsBoard tb (espClient); // Статус радиомодуля Wifi int status = WL_IDLE_STATUS; // Период отправки данных о температуре / влажности. int send_delay = 2000; unsigned long millis_counter; void InitWiFi () {Serial.println ("Подключение к AP…"); // пытаемся подключиться к сети Wi-Fi WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); в то время как (WiFi.status ()! = WL_CONNECTED) {задержка (500); Serial.print ("."); } Serial.println ("Подключено к AP");} void reconnect () {// Цикл, пока мы не подключимся повторно status = WiFi.status (); если (статус! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); в то время как (WiFi.status ()! = WL_CONNECTED) {задержка (500); Serial.print ("."); } Serial.println («Подключено к AP»); }} // Настраиваем приложениеvoid setup () {// Инициализируем серийный номер для отладки Serial.begin (SERIAL_DEBUG_BAUD); WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); InitWiFi (); // Инициализируем датчик температуры dht.begin ();} // Главное приложение loopvoid loop () {// При необходимости повторно подключаемся к Wi-Fi if (WiFi.status ()! = WL_CONNECTED) {reconnect (); возвращение; } // Повторное подключение к ThingsBoard, если необходимо if (! Tb.connected ()) {// Подключение к ThingsBoard Serial.print ("Подключение к:"); Serial.print (THINGSBOARD_SERVER); Serial.print («с токеном»); Serial.println (ТОКЕН); if (! tb.connect (THINGSBOARD_SERVER, TOKEN)) {Serial.println ("Не удалось подключиться"); возвращение; }} // Проверяем, пришло ли время отправлять данные о температуре и влажности DHT11 if (millis () - millis_counter> send_delay) {Serial.println ("Отправка данных…"); // Загружает новую телеметрию на ThingsBoard с помощью MQTT. // Подробнее см. Https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // float h = dht.readHumidity (); // Считываем температуру в градусах Цельсия (по умолчанию) float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println («Не удалось прочитать с датчика DHT!»); } else {Serial.print ("Температура:"); Serial.print (t); Serial.print («Влажность»); Serial.println (h); tb.sendTelemetryFloat ("температура", t); tb.sendTelemetryFloat («влажность», ч); } millis_counter = миллис (); // сбрасываем счетчик миллисекунд} // Обрабатываем сообщения tb.loop ();}

Шаг 3: Визуализация данных

Визуализация данных
Визуализация данных

На живом демонстрационном сервере:

  • логин: ваше имя пользователя для демонстрации (электронная почта)
  • пароль: ваш пароль для демонстрации

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

Перейдите в раздел «Устройства» и найдите «Magicbit», откройте сведения об устройстве и перейдите на вкладку «Последняя телеметрия». Если все настроено правильно, вы сможете увидеть последние значения «температуры» и «влажности».

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

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