El BeagleBone Green Wireless es un dispositivo IoT con Wi-Fi y BLE. Los componentes inalámbricos soportan MIMO, lo que hace que la transmisión de datos sea más rápida. El BeagleBone Green Wireless ha incluido una interfaz WiFi/Bluetooth flexible de alto rendimiento y dos conectores Grove, lo que facilita la conexión a la gran familia de sensores Grove.
En esta publicación, aprenderás cómo programar tu BeagleBone Green Wireless para conectarte a la nube de Ubidots, donde cualquier dato en bruto puede ser visualizado, analizado y convertido en valioso para las soluciones de tu negocio.
Requisitos
Paso a Paso
Configuración de Hardware
Configuración de Firmware
– Enviando valores desde entradas analógicas (POST)
– Recibiendo valores desde entradas analógicas (GET)Resumen
1. Configuración de Hardware
1. Conecta tu BeagleBone Green Wireless a tu PC a través del Puerto USB.
2. El BeagleBone aparecerá en tu PC como un pendrive USB, ve a la carpeta “BEAGLEBONE” y ábrela.
3. Haz clic en “DRIVERS” y selecciona tu SO (Sistema Operativo) y sigue la guía en pantalla para descargar e instalar los controladores correctos necesarios para tu SO.
4. Ahora, configuremos el WiFi para el BeagleBone Green Wireless.
Debido a que el BeagleBone Green es un dispositivo autónomo, con los controladores correctos instalados, el dispositivo transmitirá su propia red WiFi disponible.
Desde tu computadora, escanea las redes WiFi disponibles y selecciona la que se titula: BeagleBoneXXXXXX para establecer conexión a WiFi desde tu dispositivo.
NOTA: "XXXXXX" de BeagleBoneXXXXXX es el ID del BeagleBone.
5. A continuación, utilizando Chrome o Firefox (Internet Explorer NO funcionará) escribe en la URL: http://192.168.7.2.
La página a continuación se cargará dándote acceso a tu BeagleBone.
6. Ingresa el SSID de WiFi y su Contraseña y haz clic en OK para completar tu conexión WiFi.
7. Si todos los pasos se han seguido correctamente, tu dispositivo estará conectado a Internet y se te redirigirá al recurso web de BeagleBoard.org para programar y controlar tu dispositivo.
Ahora tu BeagleBone Green Wireless está conectado a la red WiFi.
AVISO: Para verificar si tu dispositivo está conectado, verás una pantalla en la parte superior de la página de BeagleBoard como esta:
2. Configuración de Firmware
Para completar la configuración del firmware e instalación de tu dispositivo BeagleBone, utilizaremos la herramienta de programación Node-RED. Este gestor de programación está disponible de IBM y puede ser utilizado para cientos de diferentes mapeos de lógica de datos de aplicaciones y flujos de datos. Para obtener más información sobre la grandeza de Node-RED, consulta esta excelente guía de inicio.
Para acceder a Node-RED, solo necesitas seleccionar el programa desde tu sistema de control basado en web de BeagleBoard.org, como se muestra aquí.
Siguiendo la guía en pantalla o siendo un profesional de Node-Red, puedes acceder a Node-RED escribiendo http://192.168.7.2:1880/
en la URL de tu navegador.
Instalación de la biblioteca Node-RED
1. Desde el menú principal de Node-RED (ubicado en la parte superior derecha del programa) selecciona “Gestionar paleta”.
2. En la sección “Gestionar paleta”, podrás gestionar e instalar los nodos necesarios para ejecutar tu aplicación. Para instalar los nodos de Ubidots, ve a la pestaña “Instalar”. Luego, busca "ubidots" usando la barra de búsqueda. Selecciona el nodo "ubidots-nodered" y presiona el botón instalar para completar:
Enviando (POST) valores desde entradas analógicas
La forma más fácil de interactuar con Ubidots al trabajar con entradas analógicas es usando Node-RED.
NOTA IMPORTANTE: Asegúrate de que tu WiFi esté configurado para BeagleBone. Si no, consulta las instrucciones de Configuración de Hardware proporcionadas anteriormente en este tutorial.
En el lado izquierdo de la página de BeagleBorard.org, verás la sección de Node-RED. Haz clic en Node-Red para comenzar a programar tu dispositivo.
Siguiendo la guía en pantalla o siendo un profesional de Node-Red, puedes acceder a Node-RED escribiendo
http://192.168.7.2:1880/
en la URL de tu navegador.
3. Node-RED se abrirá en tu navegador, haz clic en el menú de Node-RED en la esquina superior derecha, luego en “IMPORTAR” -> “PORTAPAPELES”.
4. Pega el siguiente código en el espacio modal proporcionado desde tu portapapeles.
[{"id":"2e149338.de9a7c","type":"bbb-analogue-in","z":"5600d8f5.a42228","pin":"P9_39","topic":"","breakpoints":[{"input":0,"output":0,"mutable":false},{"input":1,"output":1,"mutable":false}],"averaging":false,"name":"Pin Analógico 0","x":341,"y":162,"wires":[["e88cfc7f.28aec","4c7bee83.16fa6"]]},{"id":"d688524c.45b9","type":"inject","z":"5600d8f5.a42228","name":"Activación de Lectura","topic":"","payload":"","payloadType":"date","repeat":"5","crontab":"","once":false,"x":124,"y":162,"wires":[["2e149338.de9a7c"]]},{"id":"be8e1936.efc228","type":"debug","z":"5600d8f5.a42228","name":"","active":false,"console":false,"complete":"false","x":749,"y":284,"wires":[]},{"id":"e88cfc7f.28aec","type":"debug","z":"5600d8f5.a42228","name":"","active":false,"console":false,"complete":"false","x":522,"y":287,"wires":[]},{"id":"4c7bee83.16fa6","type":"function","z":"5600d8f5.a42228","name":"Función de Análisis","func":"var response = {};\nresponse.payload = {\"temperature\": msg.payload};\nresponse.topic = \"/v1.6/devices/BeagleBone\";\nreturn response;","outputs":1,"noerr":0,"x":540,"y":160,"wires":[["be8e1936.efc228","72521339.8d76ac"]]},{"id":"72521339.8d76ac","type":"ubidots_out","z":"5600d8f5.a42228","name":"BeagleBoneUbidots","token":"","label_device":"BeagleBone","tier":"business","x":763.5,"y":155.29998779296875,"wires":[]}]
En los siguientes pasos 5 - 10 necesitarás especificar lo siguiente;
Tu token de Ubidots
La entrada analógica donde está conectado tu sensor,
El identificador de etiqueta de 'fuente de datos de Ubidots' y el identificador de etiqueta de la variable.
Nota: En este código, el “BEAGLEBONE” es la etiqueta del dispositivo con “TEMPERATURA” como la etiqueta de la variable, y “AIN0” para el pin analógico 0. Si los nodos de Ubidots no están instalados, consulta la instalación de la biblioteca Node-Red arriba para instalar los nodos de Ubidots.
5. Una vez que tu flujo se haya colocado en la placa de trabajo, haz doble clic en “PIN ANALÓGICO 0” para abrir y ajustar el nodo.
6. Luego, dentro del nodo de pin analógico 0, localiza la sección “PIN DE ENTRADA” y selecciona el pin utilizado en tu dispositivo y haz clic en “OK”.
7. En las mismas opciones del nodo, busca y haz doble clic en “FUNCIÓN DE ANÁLISIS” y actualiza “TEMPERATURA” para que sea el identificador de tu variable, y actualiza “BEAGLEBONE” para que sea el identificador de tu dispositivo Ubidots.
8. A continuación, selecciona el nodo de Ubidots para actualizar y configurar con la información de tu cuenta de Ubidots.
Selecciona el tipo de tu cuenta:
– Ubidots para Negocios..... (industrial.ubidots.com)Asigna la etiqueta del dispositivo deseada para el dispositivo. En este caso, BeagleBone es la predeterminada.
Una vez que los parámetros de tu nodo de Ubidots estén correctamente configurados, tendrás algo similar a lo siguiente. Para guardar los cambios, presiona el botón Hecho.
9. Ahora es el momento de desplegar el flujo y publicar datos en la nube de Ubidots. Para esto, solo presiona el botón Desplegar ubicado en la esquina superior derecha.
10. El comportamiento presentado en el nodo de Ubidots después de desplegar el flujo se verá como sigue:
11. Ve a la sección de Dispositivos de tu cuenta de Ubidots y verifica que el nuevo dispositivo se haya creado:
12. Si deseas cambiar el nombre del dispositivo a uno más amigable y no sabes cómo, consulta la guía siguiente guía.
Recibiendo (GET) valores desde entradas analógicas
1. Desde el menú de Node-RED en la esquina superior derecha, selecciona “Importar” -> “Portapapeles”. Luego copia y pega el código proporcionado a continuación. Para acceder a Node-RED, asegúrate de completar la configuración de hardware cubierta anteriormente en este tutorial.
[{"id":"ec63b1a1.cc054","type":"ubidots_out","z":"5600d8f5.a42228","name":"BeagleBoneUbidots","token":"","label_device":"beaglebone","tier":"business","x":436,"y":117,"wires":[]},{"id":"6563e012.239ea","type":"ubidots_in","z":"5600d8f5.a42228","tier":"business","name":"BeagleboneUbidots","token":"","label_device":"beaglebone","label_variable":"Temperatura(Celsius)","x":184.5,"y":208.20001220703125,"wires":[["c90718d6.019b08","68099677.872318"]]},{"id":"c90718d6.019b08","type":"function","z":"5600d8f5.a42228","name":"Analizar Valor de Ubidots","func":"var lastValue = msg.payload.value;\nmsg.payload = lastValue;\nreturn msg;","outputs":1,"noerr":0,"x":444.5,"y":208.20001220703125,"wires":[["6f2c5ca.feeeea4","b1dbba2a.3098f8"]]},{"id":"68099677.872318","type":"debug","z":"5600d8f5.a42228","name":"","active":false,"console":false,"complete":"false","x":444.5,"y":288.20001220703125,"wires":[]},{"id":"6f2c5ca.feeeea4","type":"debug","z":"5600d8f5.a42228","name":"","active":false,"console":false,"complete":"false","x":684.5,"y":288.20001220703125,"wires":[]},{"id":"5619ac27.0064b4","type":"inject","z":"5600d8f5.a42228","name":"","topic":"","payload":"{\"control\": 0}","payloadType":"json","repeat":"","crontab":"","once":true,"x":188,"y":120.70001220703125,"wires":[["ec63b1a1.cc054"]]},{"id":"b1dbba2a.3098f8","type":"upm-grove-led","z":"5600d8f5.a42228","name":"","platform":"0","mode":"blink","pin":"0","interval":1000,"x":692,"y":193.89999389648437,"wires":[]}]
2. Asigna tu TOKEN de Ubidots donde se indica en ambos nodos de Ubidots.
3. Una vez que tu flujo se haya colocado en la placa de trabajo, haz doble clic en “Grove LED” para abrir y ajustar el nodo.
4. Luego, dentro del nodo de grove led, localiza el “PIN” y selecciona el pin que deseas y haz clic en “OK”.
5. Ahora es el momento de desplegar el flujo y publicar datos en la nube de Ubidots. Para esto, solo presiona el botón Desplegar ubicado en la esquina superior derecha.
6. El comportamiento presentado en el primer nodo de Ubidots es “Conectando...” luego “publicado”. En este punto, se crea una variable llamada "control" en el dispositivo en tu cuenta de Ubidots. Esta variable se utilizará para controlar tus dispositivos - en este caso un LED.
7. Para CONTROLAR TU DISPOSITIVO necesitas crear un widget de control en tu Dashboard de Ubidots. Ve a la sección de Dashboard de tu cuenta de Ubidots y crea un nuevo Widget de Control.
Presiona el icono más (+) ubicado en la esquina superior derecha de tu Dashboard, luego presiona Control > Interruptor > control (variable previamente creada) > Finalizar:
Con este paso final ahora tendrás un nuevo widget para controlar tu dispositivo BeagleBone - en este caso el LED adjunto:
8. Para verificar tu trabajo, puedes ver el estado del Dispositivo, si el valor de tu widget es 0 (o APAGADO) en Ubidots, el LED estará APAGADO, y tu flujo de Node-RED verificará con un valor de APAGADO en el nodo Grove LED. Si tu cuenta de Ubidots tiene un estado de widget de ENCENDIDO, se puede esperar la misma funcionalidad pero reportará el LED como ENCENDIDO.
3. Resumen
BeagleBone te permite acceder a la oferta de productos de BeagleBoard en un paquete fácil de utilizar. Ideal para enviar y recibir datos hacia/desde la plataforma Ubidots, el BeagleBone Green está simplemente programado y se conecta al servidor a través de Node-RED. Siguiendo los pasos presentados en esta guía, ahora has conectado tu dispositivo BeagleBone a Internet y has transmitido con éxito sus datos a Ubidots, donde ahora puedes continuar diseñando tus aplicaciones y funcionalidades para monitorear y controlar un sistema o entorno.
Otros lectores han encontrado útil...