Skip to main content

Conectando SenseCAP a Datacake via Node-RED

SenseCAP K1100 - The Sensor Prototype Kit es la propuesta de Seeed Studio que concentra la esencia de la comunicación LoRa® junto con tecnología e inteligencia en el borde (edge intelligence), facilitando el despliegue y control de aplicaciones IoT y LoRa® de manera sencilla y eficiente.

pir

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 vía Bluetooth, compatibilidad con la red global LoRaWAN®, batería incorporada 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 de luz, CO2, CE y una estación meteorológica 8 en 1. Prueba el último SenseCAP S210x para tu próximo proyecto industrial exitoso.

SenseCAP Industrial Sensor
S2100
Data Logger
S2101
Air Temp & Humidity
S2102
Light
S2103
Air Temp & Humidity & CO2
S2104
Soil Moisture & Temp
S2105
Soil Moisture & Temp & EC
S2110
LoRaWAN® Controller
S2120
8-in-1 Weather Station

Datacake

Datacake es una plataforma IoT de propósito múltiple y bajo código que no requiere habilidades de programación y demanda muy poco tiempo para crear aplicaciones IoT personalizadas.

El contenido de este capítulo continuará usando Node-RED, presentado anteriormente, y facilitará la gestión del kit K1100 en Datacake mediante el uso de Node-RED.

Si no has instalado o no sabes qué es Node-RED, consulta por favor Tutoriales Node-RED & SenseCAP.

pir

Crear Nodo MQTT

Paso 1. Iniciar Node-RED

Inicia Node-RED escribiendo el comando node-red en la terminal, 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 con el formato de la API SenseCAP según lo solicitado 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 Obtener la API SenseCAP.
    • <Random ID> usa tus propios números o letras minúsculas generados aleatoriamente.
  • Formato del Tema (Topic): /device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>

OrgIDTu ID de organización. Lo obtuvimos en Obtener la API SenseCAP.
DevEUIIdentificación única del dispositivo sensor. Esta información se encuentra en la etiqueta en la parte trasera del Grove - Wio E5, así como en la consola de dispositivos SenseCAP.
ChannelInterfaz física en el dispositivo a la que está conectado el sensor. Para el kit K1100, el valor predeterminado aquí es 1.
ReservedCampos reservados.
MeasurementIDID del valor medido. Este ID puede encontrarse en la sección Measurement IDs de la docuemntación de SenseCAP

Paso 3. Validar nodos MQTT

Una vez configurados, haz clic en el botón Deploy en la esquina superior derecha para verificar si la configuración fue exitosa. Si está correctamente configurado, aparecerá la palabra Connected.

Configurar Datacake

Paso 1. Registrarse o iniciar sesión en Datacake

Si ya estás registrado en Datacake, por favor inicia sesión en el sitio web de Datacake.

Si no estás registrado en Datacake, completa tu registro e inicia sesión aquí.

Paso 2. Nuevo espacio de trabajo

Una vez dentro de Datacake, haz clic en tu nombre de usuario en la esquina superior izquierda y selecciona Add Workspace. Luego, elige un nombre para tu espacio de trabajo.

Paso 3. Nuevo dispositivo

Después de entrar al espacio de trabajo recién creado, crea un nuevo dispositivo.

Selecciona API.

Selecciona New Product y ponle un nombre al producto.

En esta sección, elige la opción gratuita para completar.

Paso 4. Configurar el dispositivo

Haz clic en el dispositivo nuevo que acabas de crear y selecciona Configuration.

Ubica la sección "Fields" y haz clic en Add Field. Luego ingresa el nombre del dato que quieres gestionar en Datacake.

note

Ten en cuenta que los campos IDENTIFIER están en mayúsculas, y en el nodo función de Node-RED que se configura más adelante, el contenido que se pasa también debe estar en mayúsculas.

Paso 5. Obtener el token API

Haz clic en tu nombre de usuario en la esquina superior izquierda y selecciona Edit Profile.

Luego guarda el token API que aparece en la API, el cual usaremos en Node-RED en un momento.

Configurar Node-RED

Paso 1. Descargar los Palettes de Datacake

Haz clic en el menú de la esquina superior derecha y selecciona Settings.

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

Agrega el nodo datacake - out desde la barra de almacenamiento a la izquierda, haz doble clic para entrar a la página de configuración, luego haz clic en el botón editar para configurar el nodo datacake - out.

Paso 2. Editar el nodo datacake - out

Llena el campo API Token con el token API que obtuvimos en la configuración previa de Datacake. Luego, solo haz clic en el botón Add en la esquina superior derecha.

Después selecciona el nombre del workspace que creaste anteriormente.

El dispositivo se actualizará automáticamente al nuevo dispositivo creado y el menú desplegable de campos mostrará el nuevo campo que creaste. Si no quieres asignar un campo aquí, también puedes modificar el fieldName del payload para configurar el campo vía código.

Paso 3. Configurar el nodo función

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

Arrastra el nodo función desde la barra de funciones a la izquierda, haz doble clic para entrar a la página de edición y luego copia el código en 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]
msg.payload = payload.value
if (measurementId == 4150) {
msg.fieldName = "ACCELX"
} else if (measurementId == 4151) {
msg.fieldName = "ACCELY"
} else if (measurementId == 4152) {
msg.fieldName = "ACCELZ"
} else if (measurementId == 4192) {
msg.fieldName = "VOLUME"
} else if (measurementId == 4193) {
msg.fieldName = "LIGHTINTENSITY"
} else if (measurementId == 4103) {
msg.fieldName = "SOILMOISTURE"
} else if (measurementId == 4195) {
msg.fieldName = "TVOC"
} else if (measurementId == 4100) {
msg.fieldName = "CO2"
} else if (measurementId == 4097) {
msg.fieldName = "AIRTEMPERATURE"
} else if (measurementId == 4098) {
msg.fieldName = "AIRHUMIDITY"
} else if (measurementId == 4175) {
msg.fieldName = "AIDETECTION1"
} else if (measurementId == 4176) {
msg.fieldName = "AIDETECTION2"
} else if (measurementId == 4177) {
msg.fieldName = "AIDETECTION3"
} else if (measurementId == 4178) {
msg.fieldName = "AIDETECTION4"
} else if (measurementId == 4179) {
msg.fieldName = "AIDETECTION5"
} else if (measurementId == 4180) {
msg.fieldName = "AIDETECTION6"
} else if (measurementId == 4181) {
msg.fieldName = "AIDETECTION7"
} else if (measurementId == 4182) {
msg.fieldName = "AIDETECTION8"
} else if (measurementId == 4183) {
msg.fieldName = "AIDETECTION9"
} else if (measurementId == 4184) {
msg.fieldName = "AIDETECTION10"
}
}
return msg;
}

Paso 4. Desplegar

Luego conectamos todos los nodos y hacemos clic en el botón Deploy. Si todo está configurado correctamente, podrás ver que el nodo mqtt in muestra el estado conectado.

Si quieres ver la información de los registros de datos, puedes agregar un nodo de depuración (debug) después del nodo función.

Una vez que el Wio Terminal comience a encenderse y funcionar, enviando datos al servidor SenseCAP PaaS, podrás revisar los datos en el log de depuración de Node-RED.

De vuelta en el panel de Datacake, puedes ver toda la información de datos en la sección History de este dispositivo.

Solución de Problemas

P1: ¿Por qué no puedo encontrar el Palette en Node-RED?

R: Si no puedes encontrar el Palette en la configuración, revisa tu terminal para ver si hay mensajes de error cuando inicias Node-RED.

El escenario más común es que la versión de npm sea muy antigua para iniciar el editor de Palette.

Si este es tu caso, ejecuta Powershell como administrador y escribe 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.

Loading Comments...