Conectando SenseCAP a Azure IoT Central vía Node-RED
SenseCAP K1100 - El Kit Prototipo de Sensores representa a Seeed Studio concentrando la esencia de la comunicación LoRa® en tecnología y productos de inteligencia en el borde, para facilitar la implementación y dominio de aplicaciones LoRa® e IoT.

Actualizable a Sensores Industriales
Con el controlador SenseCAP S2110 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 robustos sensores industriales.
La carcasa IP66, configuración Bluetooth, compatibilidad con la red global LoRaWAN®, batería integrada de 19 Ah y el potente soporte desde 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 lumínica, CO2, EC y una estación meteorológica 8 en 1. Prueba el último SenseCAP S210x para tu próximo proyecto industrial exitoso.
Microsoft Azure IoT
Microsoft Azure IoT es una colección de servicios en la nube gestionados por Microsoft que conectan, monitorean y controlan miles de millones de dispositivos IoT. Incluye seguridad y sistemas operativos para dispositivos y equipos, junto con datos y análisis que ayudan a las empresas a construir, desplegar y gestionar aplicaciones IoT.
Microsoft Azure IoT Central
Microsoft Azure IoT Central es una solución SaaS (software como servicio) IoT global completamente gestionada que facilita la conexión, monitoreo y gestión de tus activos IoT a gran escala. Es altamente segura, escala con tu negocio conforme crece, asegura que tus inversiones sean repetibles e integra con tus aplicaciones empresariales existentes. También cierra la brecha entre tus aplicaciones empresariales y los datos IoT. Finalmente, ofrece gestión centralizada para reconfigurar y actualizar tus dispositivos.
El contenido de este capítulo continuará utilizando Node-RED, presentado anteriormente, para facilitar la gestión del kit K1100 en Microsoft Azure IoT Central mediante Node-RED.
Si no has instalado o no sabes qué es Node-RED, por favor consulta Node-RED & SenseCAP Tutorials.
Instalar SenseCraft
SenseCraft es una plataforma de software open source para construir sensores inteligentes sin código. Ofrece una solución completa lista para usar que permite detectar el mundo real, procesar datos y enviar esos datos a la nube de la manera más fácil y rápida posible, ¡sin experiencia en programación! Ahora es compatible con Wio Terminal.
Al usar SenseCraft, podemos transferir los valores de los sensores del kit K1100 directamente a la plataforma SenseCAP sin necesidad de programar. Esto, por supuesto, se logra vía LoRaWAN®.
Si quieres acceder a Azure IoT Central vía WiFi (MQTT), por favor consulta este Wiki.
Paso 1. Descargar el firmware a tu computadora
En la sección de Última versión (Latest release), haz clic en SenseCraft-vx.x.uf2 para descargar el archivo .uf2.
Paso 2. Subir el firmware al Wio Terminal
Conecta el Wio Terminal a la PC y enciéndelo. Entra en Modo Bootloader deslizando el interruptor de encendido hacia abajo, alejándolo de la posición "ON", suelta, desliza de nuevo y suelta.
Una vez que el Wio Terminal está en modo Bootloader, el LED azul empezará a respirar de una forma distinta a cuando parpadea.
Abre el Explorador de archivos en tu PC y verás un nuevo disco externo llamado Arduino, arrastra el archivo .uf2 descargado previamente a esta unidad Arduino.
Ahora hemos subido exitosamente SenseCraft al Wio Terminal.
Crear Nodo MQTT
Paso 1. Iniciar Node-RED
Inicia Node-RED escribiendo el comando node-red
en la terminal, abre un navegador y entra a 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 con el formato de la API de SenseCAP como se solicitó en el tutorial anterior.
-
Servidor: openstream.api.sensecap.seeed.cc
-
Puerto: 1883
-
Protocolo: MQTT V3.1.1
-
Client ID: El formato es
org-<Organization ID>-<Random ID>
<Organization ID>
: Tu ID de organización. Lo obtuvimos en la sección Obtener la API de SenseCAP.<Random ID>
: usa tus propios números o letras minúsculas generados aleatoriamente.
-
Formato del Topic:
/device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>
OrgID | Tu ID de organización. Lo obtuvimos en la sección Obtener la API de SenseCAP. |
DevEUI | Identificación única de los dispositivos sensores. Esta información se encuentra en la etiqueta en la parte trasera del Grove - Wio E5, así como en el dispositivo de la consola SenseCAP. |
Channel | Una interfaz física en el dispositivo a la que está conectado el sensor. Para el kit K1100, el valor predeterminado aquí es 1. |
Reserved | Campos reservados. |
MeasurementID | ID del valor medido. Este ID se puede encontrar en la sección de IDs de medición de la documentación de SenseCAP |
Paso 3. Validar los nodos MQTT
Una vez configurado, haz clic en el botón Deploy en la esquina superior derecha para verificar si la configuración fue exitosa. Si está todo correcto, se mostrará la palabra Connected.

Configurar Microsoft Azure IoT Central
Paso 1. Iniciar sesión en Azure IoT Central.
Visita el sitio oficial de Azure IoT Central, haz clic en Build en el menú de navegación izquierdo y luego en Custom apps.
Si aún no has iniciado sesión en Azure IoT Central, se te pedirá registrarte o iniciar sesión en este punto.

Paso 2. Rellena el campo Application name y elige Standard 0 en el Pricing plan. La URL de la aplicación se generará automáticamente cuando completes el nombre. En este ejemplo, realizaremos esta tarea al costo mínimo.

Si eres un usuario nuevo de Azure IoT Central, recomendamos seleccionar Free para evitar cargos.

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

Paso 4. Crear una plantilla de dispositivo
Crea una nueva plantilla de dispositivo haciendo clic en Device templates en el menú lateral izquierdo.

Selecciona Wio Terminal como nuestra plantilla.

Luego solo haz clic en Create.

Después, se creará una plantilla ya lista para usar.

Paso 5. Crear un dispositivo
Haz clic en Devices -> Seeed Wio Terminal en el menú lateral izquierdo.

Haz clic en New.

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

Una vez creado el dispositivo, verás el dispositivo que acabas de crear bajo Device. Entra en el dispositivo y haz clic en el botón Connect en la esquina superior izquierda.

Aquí necesitamos la información que aparece ahí.
ID scope
Device ID
Primary key
Por favor, toma nota de esta información, ya que la usaremos en los siguientes pasos.
Configurar Node-RED
Paso 1. Descargar los paquetes de Azure IoT
Haz clic en el menú en la parte superior derecha y selecciona Settings (Configuración).

Busca e instala node-red-contrib-azure-iot-central en la pestaña Palettes -> Install.

Paso 2. Configurar el nodo Azure IoT Central
Arrastra el nodo Azure IoT Central desde la barra de funciones a la izquierda, haz doble clic para abrir la página de configuración, luego haz clic en el botón de editar para modificar la configuración del nodo.

Completa la configuración con los siguientes datos:
- Transport: MQTT
- Authentication: SAS
- Scope ID
- Device ID
- Primary Key
Los últimos tres datos son exactamente los que obtuvimos en Configurar Microsoft Azure IoT Central.

Paso 3. Configurar el nodo Function
El reporte de datos a Azure IoT Central debe seguir un formato específico, por lo que es necesario agregar un nodo Function para procesar el formato de los datos.

Arrastra el nodo Function desde la barra de funciones a la izquierda, haz doble clic para abrir la página de edición y copia el código en la sección 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. Si todo está configurado correctamente, el nodo mqtt in mostrará el estado connected.

Si quieres ver la información de registro (logging) de los datos, puedes añadir un nodo debug después del nodo function.

Cuando el Wio Terminal se encienda y comience a enviar datos al servidor SenseCAP PaaS, podremos verificar los datos en Azure IoT Central.

Presentación de datos
Sin embargo, dado que no hemos configurado el tipo de sensor, los datos visibles en la columna Raw data se colocan en Unmodeled data. Por ello, necesitamos parsear los datos según el código mencionado anteriormente.
Necesitamos cambiar el estilo de la plantilla que se muestra en template.

Después de hacer los cambios, simplemente haz clic en Save y luego en Publish. Todos los cambios en el Device template deben ser guardados y publicados siguiendo este procedimiento para que tengan efecto.
Por favor, rellena el campo Display name de acuerdo con el nombre del código JavaScript que proporcionaste anteriormente.
Por supuesto, si quieres enriquecer la página de tu dashboard 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 deseas visualizar.

Haz clic en Add tile y verás que el tile se añade al Dashboard de Azure IoT Central.

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

¡Así que ahora personaliza tu panel de monitoreo de datos del sensor a tu gusto!

Solución de problemas
P1: ¿Por qué no puedo encontrar la Palette en Node-RED?
Respuesta: Si no puedes encontrar la Palette en la configuración, revisa en la terminal si aparece algún mensaje de error al iniciar Node-RED.

El escenario más común es que la versión de npm que tienes sea demasiado antigua para iniciar el editor de Palette.
Si este es tu caso, abre Powershell como administrador y ejecuta el siguiente comando para actualizar npm:
npm install -g npm
Luego solo reinicia el Node-RED.
Soporte Técnico y Discusión de Producto
¡Gracias por elegir nuestros productos! Estamos aquí para brindarte todo el soporte necesario y asegurarnos de que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.