Skip to main content

Conectando SenseCAP a Azure IoT Central a través de Node-RED

SenseCAP K1100 - El Kit de Prototipo de Sensores representa a Seeed Studio concentrando la esencia de la comunicación LoRa® en tecnología y productos de inteligencia de borde, para el despliegue y dominio más fácil de aplicaciones LoRa® e IoT.

pir

Actualizable a Sensores Industriales

Con el controlador S2110 de SenseCAP y el registrador de datos S2100, puedes convertir fácilmente el Grove en un sensor LoRaWAN®. Seeed no solo te ayuda con el prototipado, sino que también te ofrece la posibilidad de expandir tu proyecto con la serie SenseCAP de sensores industriales robustos.

La carcasa IP66, configuración Bluetooth, compatibilidad con la red global LoRaWAN®, batería integrada de 19 Ah y el potente soporte de la APP hacen del SenseCAP S210x la mejor opción para aplicaciones industriales. La serie incluye sensores para humedad del suelo, temperatura y humedad del aire, intensidad de luz, CO2, EC, y una estación meteorológica 8 en 1. Prueba el último SenseCAP S210x para tu próximo proyecto industrial exitoso.

Sensor Industrial SenseCAP
S2100
Registrador de Datos
S2101
Temp. y Humedad del Aire
S2102
Luz
S2103
Temp. y Humedad del Aire y CO2
S2104
Humedad y Temp. del Suelo
S2105
Humedad y Temp. del Suelo y EC
S2110
Controlador LoRaWAN®
S2120
Estación Meteorológica 8 en 1

Microsoft Azure IoT

Microsoft Azure IoT es una colección de servicios en la nube administrados por Microsoft que conectan, monitorean y controlan miles de millones de activos IoT. Incluye seguridad y sistemas operativos para dispositivos y equipos, junto con datos y análisis que ayudan a las empresas a construir, implementar y administrar aplicaciones IoT.

pir

Microsoft Azure IoT Central

Microsoft Azure IoT Central es una solución SaaS (software como servicio) IoT global completamente administrada que facilita la conexión, monitoreo y administración de sus activos IoT a escala. Es altamente segura, escala con su negocio a medida que crece, asegura que sus inversiones sean repetibles y se integra con sus aplicaciones comerciales existentes. También cierra la brecha entre sus aplicaciones comerciales y los datos IoT. Finalmente, ofrece administración centralizada para reconfigurar y actualizar sus dispositivos.

El contenido de este capítulo continuará usando el Node-RED introducido anteriormente y facilitará la administración del kit K1100 en Microsoft Azure IoT Central mediante el uso de Node-RED.

Si no ha instalado o no sabe qué es Node-RED, consulte Tutoriales de Node-RED y SenseCAP.

Instalar el SenseCraft

SenseCraft es una plataforma de software de código abierto para construir sensores inteligentes sin código. Ofrece una solución completa lista para usar para detectar el mundo real, procesar datos y enviar los datos a la nube de la manera más fácil y rápida posible sin experiencia en codificación en absoluto. Ahora es compatible con Wio Terminal.

Al usar SenseCraft, podemos transferir valores de sensores del kit K1100 directamente a la plataforma SenseCAP sin programación. Esto se logra, por supuesto, a través de LoRaWAN®.

note

Si desea acceder a Azure IoT Central a través de WiFi (MQTT), consulte esta Wiki.

Paso 1. Descargue el firmware a su computadora

Bajo Latest release, haga clic en SenseCraft-vx.x.uf2 para descargar el archivo .uf2.

Paso 2. Cargue el firmware al Wio Terminal

Conecte el Wio Terminal a la PC y enciéndalo, ingrese al Modo Bootloader deslizando hacia abajo el interruptor de encendido más lejos de la posición "ON", suelte, deslice nuevamente y suelte.

pir

note

Una vez que Wio Terminal esté en modo Bootloader, el LED azul comenzará a respirar de una manera diferente al parpadeo.

Abra el Explorador de archivos en su PC y verá una nueva unidad externa, llamada Arduino, arrastre el archivo .uf2 descargado previamente a esta unidad Arduino.

Ahora hemos cargado exitosamente el SenseCraft en el Wio Terminal.

Crear Nodo MQTT

Paso 1. Iniciar Node-RED

Inicia Node-RED escribiendo el comando node-red en la terminal y abre un navegador e ingresa la dirección http://localhost:1880 en la barra de direcciones para acceder al editor de Node-RED.

Paso 2. Crear Nodo MQTT

Usamos el nodo Network -> mqtt in y configuramos mqtt en el formato de la API de SenseCAP como se solicita en el tutorial anterior.

  • Server: openstream.api.sensecap.seeed.cc

  • Port: 1883

  • Protocol: MQTT V3.1.1

  • Client ID: El formato es org-<Organization ID>-<Random ID>

    • <Orgnization ID> Tu ID de organización. Lo hemos obtenido en Obtener la API de SenseCAP.

    • <Random ID> usa tus propios números generados aleatoriamente o letras minúsculas.

  • Topic Format: /device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>

OrgIDTu ID de organización. Lo hemos obtenido en Obtener la API de SenseCAP.
DevEUIIdentificación única de dispositivos sensores. Esta información se puede encontrar en la etiqueta en la parte posterior del Grove - Wio E5, así como en el dispositivo de la consola SenseCAP.
ChannelUna interfaz física en el dispositivo a la cual está conectado el sensor. Para el kit K1100, el valor predeterminado aquí es 1.
ReservedCampos Reservados.
MeasurementIDID del valor medido. Este ID se puede encontrar en la sección Measurement IDs de la documentación de SenseCAP

Paso 3. Validar nodos MQTT

Una vez configurado, haga clic en el botón Deploy en la esquina superior derecha para verificar si la configuración fue exitosa. Si está completado correctamente, entonces se mostrará la palabra Connected.

Configurar Microsoft Azure IoT Central

Paso 1. Iniciar sesión en Azure IoT Central.

Vaya al sitio web oficial de Azure IoT Central, haga clic en Build desde el menú de navegación de la izquierda, y haga clic en Custom apps.

Si aún no ha iniciado sesión en Azure IoT Central, se le pedirá que complete un registro/inicio de sesión en este punto.

Paso 2. Complete el Application name y elija Standard 0 bajo el Pricing plan. La URL de la aplicación se creará automáticamente cuando complete el nombre de la aplicación. En este ejemplo, lograremos esta tarea con el costo mínimo.

note

Si es un nuevo usuario de Azure IoT Central, recomendamos que seleccione Free ya que esto no consumirá sus tarifas.

Paso 3. Haga clic en Create para crear la nueva aplicación. ¡Ahora ha configurado exitosamente Azure IoT Central!

Paso 4. Crear una plantilla de dispositivo

Cree una nueva plantilla de dispositivo haciendo clic en Device templates en la barra de menú de la izquierda.

Seleccione Wio Terminal como nuestra plantilla.

Luego simplemente haga clic en Create.

Entonces, se crea una plantilla lista para usar.

Paso 5. Crear un dispositivo

Haga clic en Devices -> Seeed Wio Terminal bajo la barra de menú de la izquierda.

Haga clic en New.

Haga clic en el botón Create para completar la creación del dispositivo.

Una vez que haya creado el dispositivo, verá el dispositivo que acabamos de crear bajo Device, ingrese al dispositivo y haga clic en el botón Connect en la esquina superior izquierda.

Aquí necesitamos la información que está allí.

ID scope
Device ID
Primary key

Por favor toma nota de esta información, que usaremos en los siguientes pasos.

Configurar Node-RED

Paso 1. Descargar Paletas de IoT de Azure

Haz clic en la barra de menú superior derecha y selecciona Configuración.

Busca e instala node-red-contrib-azure-iot-central en Paletas -> Instalar.

Paso 2. Configurar el nodo de Azure Iot Central

Arrastra el nodo de Azure Iot Central desde la barra de funciones de la izquierda, haz doble clic en él para entrar a la página de configuración, luego haz clic en el botón editar para editar el nodo de Azure Iot Central.

La configuración debe completarse de la siguiente manera:

  • Transporte: MQTT
  • Autenticación: SAS
  • ID de Ámbito
  • ID de Dispositivo
  • Clave Primaria

Los últimos tres son exactamente los que obtenemos en Configurar Microsoft Azure IoT Central.

Paso 3. Configurar el nodo de función

El reporte de datos a Azure Iot Central necesita seguir un formato de datos específico, por lo que es necesario agregar un nodo de función para procesar el formato de datos.

Arrastra el nodo de función desde la barra de funciones de la izquierda, haz doble clic en él para entrar a la página de edición, luego copia el código a On Message.

{
var payload = msg.payload;
var topic = msg.topic;
var strs = topic.split("/");
var length = strs.length
if(length>=2){
var measurementId = strs[length-1]
var body = {}
var value = payload.value
if(measurementId==4100){
body.co2 = value
}else if(measurementId==4103){
body.soilmoisture= value
}else if(measurementId==4150){
body.accelX= value
}else if(measurementId==4151){
body.accelY = value
}else if(measurementId==4152){
body.accelZ = value
}else if(measurementId==4192){
body.soundintensity = value
}else if(measurementId==4193){
body.lightIntensity = value
}else if(measurementId==4195){
body.tvoc = value
}else if(measurementId==4097){
body.airtemperature = value
}else if(measurementId==4098){
body.airhumidity = value
}else if(measurementId==4175){
body.AIdetection_1 = value
}else if(measurementId==4176){
body.AIdetection_2 = value
}else if(measurementId==4177){
body.AIdetection_3 = value
}else if(measurementId==4178){
body.AIdetection_4 = value
}else if(measurementId==4179){
body.AIdetection_5 = value
}else if(measurementId==4180){
body.AIdetection_6 = value
}else if(measurementId==4181){
body.AIdetection_7 = value
}else if(measurementId==4182){
body.AIdetection_8 = value
}else if(measurementId==4183){
body.AIdetection_9 = value
}else if(measurementId==4184){
body.AIdetection_10 = value
}
msg.payload = body;
}
return msg;
}

Luego conectamos todos los nodos y hacemos clic en el botón Deploy y si todo está configurado correctamente podrás ver el nodo mqtt in mostrando conectado.

Si quieres ver la información de registro de los datos, puedes agregar un nodo debug después del nodo function.

Una vez que el Wio Terminal comience a encenderse y funcionar y comience a enviar datos al servidor SenseCAP PaaS, entonces podemos verificar los datos en Azure IoT Central.

Presentación de Datos

Sin embargo, como no hemos establecido el tipo del sensor, los datos visibles en la columna Raw data se colocan en Unmodeled data, por lo que necesitamos analizar los datos según el código anterior.

Necesitamos cambiar el estilo de plantilla mostrado en la template.

Una vez que hayas hecho tus cambios, por favor simplemente haz clic en Save y luego haz clic en Publish. Todos los cambios en la Device template necesitarán ser guardados y publicados siguiendo este procedimiento antes de que surtan efecto.

tip

Por favor completa el Display name aquí según el nombre del código JavaScript proporcionado anteriormente.

Por supuesto, si quieres enriquecer tu página de panel de datos, también puedes configurarlo para que se muestre en Overview.

Haz clic en Overview en el menú de navegación izquierdo.

Despliega el menú desplegable select a telemetry y selecciona la telemetría que quieres visualizar.

Haz clic en Add tile y verás el mosaico agregado al Panel de Azure IoT Central.

Nota: Puedes redimensionar o cambiar la visualización de los mosaicos según tu preferencia

¡Así que a continuación, personaliza tu panel de monitoreo de datos del sensor a tu gusto!

Solución de Problemas

P1: ¿Por qué no puedo encontrar la Paleta en Node-RED?

R: Si no puedes encontrar la Paleta en la configuración, verifica tu terminal para un mensaje de error cuando inicies Node-RED.

El escenario más común es que tu versión de npm es demasiado antigua para iniciar el editor de Paleta.

Si tu situación es como se describe arriba, ejecuta Powershell como administrador e ingresa el siguiente comando para actualizar npm.

npm install -g npm

Luego simplemente reinicia Node-RED.

Soporte Técnico y Discusión de Productos

¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.

Loading Comments...