Tabla de contenido:
Video: Conecte su Magicbit a Thingsboard: 3 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
En este proyecto vamos a enviar datos desde sensores conectados a magicbit que podremos mostrar visualmente en el tablero de cosas.
Suministros:
- Magicbit
- Sensor de temperatura y humedad DHT11 (4 pines)
Paso 1: historia
Introducción
ThingsBoard es una plataforma del lado del servidor de código abierto que le permite monitorear y controlar los dispositivos de IoT. Es gratuito tanto para uso personal como comercial y puede implementarlo en cualquier lugar. Si esta es su primera experiencia con la plataforma, le recomendamos que revise la página del panel de información y la guía de introducción.
Esta aplicación de muestra le permitirá mostrar datos de humedad / temperatura del sensor DHT11 utilizando su dispositivo magicbit y la interfaz de usuario web ThingsBoard.
La aplicación que se ejecuta en el dispositivo Magicbit está escrita usando ThingsBoard Arduino SDK, que es bastante simple y fácil de entender.
Una vez que complete esta muestra / tutorial, verá los datos de su sensor en el siguiente tablero.
Visite la página oficial de demostración de Thingsboard y regístrese.
Después de iniciar sesión en la barra lateral izquierda, verá Dispositivos. Haga clic en dispositivos y agregue un nuevo dispositivo.
En la pestaña de credenciales, marque la pestaña Agregar credenciales y elija Token de acceso en el cuadro desplegable. Puede agregar su propio token de acceso o dejarlo en blanco para generar automáticamente el token.
Configure el dispositivo en magicbit en alias. Vaya a la pestaña del panel e importe el panel.
Siga los siguientes pasos en imágenes para importar el tablero. Busque el archivo JSON de demostración llamado "magicbit_temperature_humidity_demo_dashboard.json" en los archivos adjuntos.
Conecte su bit mágico con el módulo DHT11 de la siguiente manera al pin 33.
En el IDE de Arduino, descargue las bibliotecas anteriores.
El siguiente es el código Arduino que utilizará.
Nota Debe editar las siguientes constantes y variables en el croquis:
- WIFI_AP - nombre de su punto de acceso
- WIFI_PASSWORD - contraseña del punto de acceso
- TOKEN: el paso de configuración $ ACCESS_TOKEN de ThingsBoard.
- THINGSBOARD_SERVER: dirección IP / HOST de ThingsBoard a la que se puede acceder dentro de su red wifi. Especifique demo.thingsboard.io si está utilizando un servidor de demostración en vivo.
Paso 2: Código Arduino
#include // DHT para la biblioteca de la biblioteca # incluye // Control WiFi para ESP32 # incluye // ThingsBoard SDK # define DHTPIN 33 // a qué pin digital estamos conectados # define DHTTYPE DHT11 // DHT 11DHT dht (DHTPIN, DHTTYPE); // Macro auxiliar para calcular el tamaño de la matriz # define COUNT_OF (x) ((sizeof (x) / sizeof (0 [x])) / ((size_t) (! (Sizeof (x)% sizeof (0 [x]))))) // Punto de acceso WiFi # definir WIFI_AP_NAME "4G" // "WIFI_AP" // Contraseña WiFi # definir WIFI_PASSWORD "nevergiveup" // "WIFI_PASSWORD" // Ver https://thingsboard.io/docs/getting- starts-guides / helloworld /// para entender cómo obtener un token de acceso # definir TOKEN "XZjQ26r9XJcsNkWGuASY" // "TOKEN" // Instancia del servidor ThingsBoard. # definir THINGSBOARD_SERVER "demo.thingsboard.io" // Velocidad en baudios para el debug serial #define SERIAL_DEBUG_BAUD 115200 // Inicializar ThingsBoard clientWiFiClient espClient; // Inicializar ThingsBoard instanceThingsBoard tb (espClient); // el estado de la radio Wifi en estado = WL_IDLE_STATUS; // Período de envío de datos de temperatura / humedad.int send_delay = 2000; unsigned long millis_counter; void InitWiFi () {Serial.println ("Conectando a AP…"); // intente conectarse a la red WiFi WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {retraso (500); Serial.print ("."); } Serial.println ("Conectado a AP");} void reconnect () {// Loop hasta que estemos reconectados status = WiFi.status (); if (estado! = WL_CONNECTED) {WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {retraso (500); Serial.print ("."); } Serial.println ("Conectado a AP"); }} // Configurar un applicationvoid setup () {// Inicializar serial para depurar Serial.begin (SERIAL_DEBUG_BAUD); WiFi.begin (WIFI_AP_NAME, WIFI_PASSWORD); InitWiFi (); // Inicializar el sensor de temperatura dht.begin ();} // Aplicación principal loopvoid loop () {// Vuelva a conectarse a WiFi, si es necesario if (WiFi.status ()! = WL_CONNECTED) {reconnect (); regreso; } // Vuelva a conectarse a ThingsBoard, si es necesario if (! Tb.connected ()) {// Conéctese a ThingsBoard Serial.print ("Conectando a:"); Serial.print (THINGSBOARD_SERVER); Serial.print ("con token"); Serial.println (TOKEN); if (! tb.connect (THINGSBOARD_SERVER, TOKEN)) {Serial.println ("No se pudo conectar"); regreso; }} // Compruebe si es el momento de enviar la temperatura y la humedad DHT11 if (millis () - millis_counter> send_delay) {Serial.println ("Enviando datos…"); // Carga nueva telemetría en ThingsBoard usando MQTT. // Ver https://thingsboard.io/docs/reference/mqtt-api/#telemetry-upload-api // para más detalles float h = dht.readHumidity (); // Leer la temperatura como Celsius (por defecto) float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("¡No se pudo leer el sensor DHT!"); } else {Serial.print ("Temperatura:"); Serial.print (t); Serial.print ("Humedad"); Serial.println (h); tb.sendTelemetryFloat ("temperatura", t); tb.sendTelemetryFloat ("humedad", h); } contador_milis = milis (); // restablecer el contador de milisegundos} // Procesar mensajes tb.loop ();}
Paso 3: visualización de datos
En el servidor de demostración en vivo:
- inicio de sesión: su nombre de usuario de demostración en vivo (correo electrónico)
- contraseña: su contraseña de demostración en vivo
Consulte la página de demostración en vivo para obtener más detalles sobre cómo obtener su cuenta.
Vaya a la sección "Dispositivos" y busque "Magicbit", abra los detalles del dispositivo y cambie a la pestaña "Última telemetría". Si todo está configurado correctamente, debería poder ver los valores más recientes de "temperatura" y "humedad".
Después, abra la sección "Paneles de control", luego localice y abra "magicbit_temperature_humidity_demo_dashboard". Como resultado, verá un gráfico de series de tiempo que muestra la temperatura y el nivel de humedad (similar a la imagen del tablero en la introducción).
Recomendado:
Conecte Arduino Uno con ESP8266: 9 pasos
Conecte Arduino Uno con ESP8266: ¡Bienvenido! Estás a punto de leer una guía paso a paso sobre cómo conectar correctamente tu Arduino Uno a Internet con el ESP8266 (ESP-01). También es mi primer Instructable, ¡así que claro conmigo, por favor! Permítanme comenzar diciendo que el ESP8266 es
Conecte y actualice sus soluciones conectadas con Hologram Nova y Ubidots: 9 pasos
Conecte y actualice sus soluciones conectadas con Hologram Nova y Ubidots: use su Hologram Nova para actualizar la infraestructura. Configure el Hologram Nova usando una Raspberry Pi para enviar datos (de temperatura) a Ubidots. En la siguiente guía, Ubidots demostrará cómo configurar un Hologram Nova usando una Raspberry Pi y mostrar un te
Conecte su RevPi Core + RevPi DIO a Ubidots: 8 pasos
Conecte su RevPi Core + RevPi DIO a Ubidots: Revolution Pi es una PC industrial abierta, modular y duradera basada en la Raspberry Pi establecida y que cumple con el estándar EN61131-2. Equipada con el módulo de cómputo Raspberry Pi, la base de RevPi Core se puede expandir sin problemas usando apropia
Conecte su planta a la nube: 10 pasos
Conecte su planta a la nube: En nuestra oficina hay un cactus que no estaba recibiendo la atención que merecía. Como trabajo en una empresa de TI y quería experimentar con LoRa, soluciones sin servidor y AWS, llamé a nuestro cactus Steeve y lo conecté a la nube. Ahora puedes moni
Conecte varios PZEM 004T con el módulo Nodemcu: 3 pasos
Conecte múltiples PZEM 004T con el módulo Nodemcu: El requisito de múltiples módulos PZEM 004T en algunos proyectos como el sistema de detección de robo de energía o el sistema de monitoreo de energía es necesario, así que aquí proporcioné el código Nodemcu y la conexión de 3 módulos PZEM 004T con Nodemcu. Si tiene alguna consulta entonces k