Tabla de contenido:
- Paso 1: componentes utilizados en el proyecto
- Paso 2: Diseño de circuito
- Paso 3: carga de código al kit NodeMCU usando ESPlorer
- Paso 4: Configuración del concentrador de sensores
- Paso 5: personalización de la configuración
- Paso 6: Adición de sensores al Hub y PubNub
- Paso 7: inicialización de la recopilación de datos y envío a PubNub
- Paso 8: Página HTML simple para visualización en tiempo real de datos de PubNub
- Paso 9: Solución de problemas y preguntas frecuentes
Video: Centro de recopilación de datos de sensores habilitado para IoT con ESP8266 y PubNub: 9 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
La mayoría de los tutoriales sobre ESP8266 están en el nivel de novato (parpadeando un LED de forma remota) o demasiado complejos para alguien que está buscando algo para mejorar y actualizar sus habilidades de parpadeo de LED. utilizando ESP8266 y publique los datos recopilados en PubNub. El objetivo principal es minimizar el tiempo que las personas dedican a la construcción del hardware y, en cambio, concentrar su tiempo en el análisis de datos y la visualización con los datos recopilados.
Para las personas que no están familiarizadas con ESP8266 / NodeMCU, le sugerimos que obtenga una comprensión básica de cómo flashear y programar a través de ESPLORER. Hay muchos tutoriales / instructivos que ofrecen esto, como Get-Started-with-ESP8266-Using-AT -Comandos-NodeMCU.
Al final de este instructivo, podrá construir su propio centro de recolección de datos de sensores y una visualización gráfica básica en tiempo real con la ayuda de PubNub
Bienvenido a ESP8266-NodeMCU Lesson - 102 !!
Paso 1: componentes utilizados en el proyecto
Los siguientes componentes son necesarios para completar el proyecto
- Una placa ESP8266 La placa que se utiliza para este instructable es NodeMCU devKit v1.0 (inserte el enlace del módulo 143 aquí)
- Cualquier sensor cuyos datos deban recopilarse y registrarse. Aquí se utiliza un potenciómetro simple como sensor analógico
- Un interruptor deslizante
- Un cable micro a USB (tipo macho) para cargar el código en NodeMCU devKit v1.0 y alimentar el dispositivo
- 2 leds para indicador de modo
- Algunos cables macho a macho y placa de pruebas
-
Una cuenta PubNub con clave de publicación, clave de suscripción y un canal
Descargue los archivos a continuación. Si no desea cambiar nada y solo necesita que funcione, descargue la versión precompilada (inserte la carpeta zip de la versión compilada aquí). Si desea comprender cómo funciona y quiere ensuciarse las manos luego también puede descargar el código fuente principal (inserte la versión del código fuente aquí)
Paso 2: Diseño de circuito
Si ha comprado (inserte el enlace del producto final aquí), puede omitir este paso.
Paso 3: carga de código al kit NodeMCU usando ESPlorer
Una vez que abra la aplicación ESPlorer, la pantalla inicial se verá como la primera imagen. Seleccione el puerto COM del menú desplegable en la parte superior. Si el puerto COM no se muestra incluso cuando el dispositivo está conectado, simplemente vuelva a abrir la aplicación.
Ahora hay dos formas en que puede continuar y completar este instructivo
Termine la parte del hardware del concentrador del sensor lo antes posible y continúe para jugar con los datos
Comprenda la forma en que funcionan los scripts de NodeMCU y lua y personalícelos de acuerdo con sus necesidades
si (opción == 1)
Cargue todos los archivos precompilados (archivos.lc) y continúe con el siguiente paso
else if (opción == 2)
Simplemente abra los archivos de código fuente (.lua) en ESPlorer y comience a jugar con el código. Salte al paso 5 para obtener una descripción
Paso 4: Configuración del concentrador de sensores
Ahora deslice el interruptor hacia el modo de configuración y reinicie el módulo. El LED indicador del modo de configuración debe brillar.
Como se muestra en la primera imagen y se creará una red inalámbrica con el nombre de "configMode" y se visualizará. Conéctese a esa red con la contraseña como "password1234" desde cualquier computadora, lapotop o móvil.
Abra cualquier navegador e ingrese la siguiente URL
192.168.4.1/?username='wifi_network_name'&pwd='password'&apipubkey='publish_key'&apisubkey='subscribe_key'&channel='Channel_name'&sensorOneName='Sensor_1_name'&check=1
Reemplace los parámetros entre comillas con sus propios valores de contraseña de nombre de usuario de wifi (con acceso a Internet) y claves de PubNub. La URL final debería ser algo como a continuación
192.168.4.1/?username=MyWiFi&pwd=123456&apipubkey=pub_kjabdc_56513akhbcqio3_ad&apisubkey=sub_ajkd23d_sf23_24'&channel=channel1&sensorOneName=sensor1&check=1
Si el concentrador del sensor está configurado correctamente, el LED del modo de configuración se apagará y el LED del modo de datos se encenderá y la red inalámbrica "configMode" desaparecerá. Si desea comprender cómo funciona esto o desea cambiar algunos parámetros, consulte el siguiente paso; de lo contrario, vaya al paso 8
Paso 5: personalización de la configuración
Entonces, lo que sucede es que ESP8266 actúa como un enrutador y crea una red inalámbrica con el ssid, el nombre de usuario y la dirección IP dados a los que puede conectarse. La configuración se realiza ingresando los parámetros en el formato que se indica a continuación y presionando la siguiente URL desde cualquier navegador de cualquier dispositivo conectado a la red inalámbrica configurada.
192.168.4.1/?username='wifi_network_name'&pwd='password'&apipubkey='publish_key'&apisubkey='subscribe_key'&channel='Channel_name'&sensorOneName='Sensor_1_name'&check=1
Abrir archivo ap.lua en ESPlorer. Este script se encarga de la configuración inicial del concentrador de sensores, genera dos archivos en base a los datos que nos da el usuario
- station.lua (contiene el ssid de red y la contraseña que tiene acceso a Internet para publicar los datos)
- api_file.lua (contiene las claves de PubNub, el nombre del canal con los nombres de los sensores)
Para personalizar la dirección IP:
La IP se puede configurar en cualquier dirección válida que deba cambiarse en la URL. La dirección predeterminada será "192.168.4.1". Como se ve en la primera imagen, las primeras 3 líneas son responsables de configurar la dirección IP y la puerta de enlace. si la dirección es correcta enviando el comando "= wifi.sta.getip ()"
Para personalizar el nombre del ssid
El siguiente conjunto de código en la misma imagen es responsable de configurar el ssid y la contraseña para la red inalámbrica.
Recuerde que si ha realizado algún cambio en el archivo.lua, debe compilarlos para que los cambios se reflejen después del reinicio.
- Cargue el archivo.lua modificado … por ejemplo, el archivo ap.lua
- Envíe el comando "node.compile (ap.lua)" haciendo clic en el botón enviar en la parte inferior de ESPlorer
- Ahora sus archivos lua están compilados y se generarán nuevos archivos.lc
Paso 6: Adición de sensores al Hub y PubNub
Para agregar más sensor
De forma predeterminada, el código envía solo los datos de un sensor que está conectado al pin analógico 0. Puede agregar más sensores para enviar datos simultáneamente. Siga los pasos a continuación
- Agregue el nombre del sensor en la URL como se muestra en negrita. Así que ahora la URL será como la siguiente: //192.168.4.1/? Username = 'wifi_network_name' & pwd = 'password' & apipubkey = 'publish_key' & apisubkey = 'subscribe_key' & channel = ' Channel_name '& sensorOneName =' Sensor_1_name '& sensorTwoName =' Sensor_2_name '& check = 1
- El nombre correspondiente debe agregarse al archivo ap.lua como se muestra en la imagen 1sensorTwo = _GET.sensorTwoName print (sensorTwo). (Esto es solo para ver y verificar los datos)
- El paso final es agregarlo a la parte de generación de api_file al final como se muestra en la imagen 2 {"eon": {"'..sensorOne..'": / '.. adc.read (0).. \', "'..sensorTwo..'": / '.. gpio.read (2).. \'}} Repita el mismo paso para cada adición de sensor. Recuerde usar gpio.read (pin #) para digital y adc.read (pin #) para señales analógicas a digitales
Recuerde que si ha realizado algún cambio en el archivo.lua, debe compilarlos para que los cambios se reflejen después del reinicio.
- Cargue el archivo.lua modificado … por ejemplo, el archivo ap.lua
- Envíe el comando "node.compile (ap.lua)" haciendo clic en el botón enviar en la parte inferior de ESPlorer
- Ahora sus archivos lua están compilados y se generarán nuevos archivos.lc
Paso 7: inicialización de la recopilación de datos y envío a PubNub
Una vez realizada la configuración correctamente, el led de modo de datos se encenderá.
Básicamente, esto significa que los datos del sensor se envían a PubNub según los ajustes de configuración que proporcionó en los pasos anteriores.
De forma predeterminada, el concentrador enviará datos a PubNub cada 5 segundos. Si desea configurarlo, siga los pasos a continuación.
Para personalizar la frecuencia de la recopilación de datos:
- Abra main.lua en ESPlorer
- Ir a la línea resaltada en la imagen
- El valor mencionado debe estar en milisegundos, es recomendable tener al menos un intervalo de 2 segundos para evitar cualquier pérdida de datos.
- Cargue el archivo main.lua a esp y compile el archivo para generar el archivo.lc
- Reinicie el módulo y verifique
Paso 8: Página HTML simple para visualización en tiempo real de datos de PubNub
Abra el archivo Sample.html de los archivos descargados. Esta es solo una página html simple para ver un gráfico en tiempo real de los datos recopilados.
Como se ve en la imagen 1, solo necesita configurarlo con sus propias claves PubNub y el nombre del canal.
También puede agregar esto a cualquier sitio web que desarrolle y crear una visualización aún más impresionante. Consulte PunNub EON para obtener más información.
Paso 9: Solución de problemas y preguntas frecuentes
Se actualizará en breve
Recomendado:
EAL: recopilación de datos GPS de la industria 4.0 en automóviles Rc: 4 pasos
EAL - Recopilación de datos GPS de la industria 4.0 en un automóvil Rc: en este Instructable hablaremos sobre cómo configuramos un módulo GPS en un automóvil RC y publicamos los datos recopilados en una página web para facilitar el monitoreo. Anteriormente, hicimos un instructivo sobre cómo hicimos nuestro automóvil RC, que se puede encontrar aquí. Esto está usando th
IoT APIS V2 - Sistema autónomo de riego de plantas automatizado habilitado para IoT: 17 pasos (con imágenes)
IoT APIS V2 - Sistema autónomo de riego de plantas automatizado habilitado para IoT: este proyecto es una evolución de mi instructable anterior: APIS - Sistema de riego de plantas automatizado He estado usando APIS durante casi un año y quería mejorar el diseño anterior: Capacidad para monitorear la planta de forma remota. Así es como
Uso de la placa de sensores de Complex Arts para controlar datos puros a través de WiFi: 4 pasos (con imágenes)
Uso de la placa de sensores Complex Arts para controlar datos puros a través de WiFi: ¿Alguna vez ha querido experimentar con el control gestual? ¿Hacer que las cosas se muevan con un movimiento de la mano? ¿Controlas la música con un giro de muñeca? ¡Este Instructable le mostrará cómo! El tablero de sensores de artes complejas (complexarts.net) es un microc
Cambus - Sistema de recopilación de datos en autobuses urbanos: 8 pasos
Cambus - Sistema de Recolección de Datos en Bus Urbano: Entre los problemas y dificultades que se conocen en el transporte público, la población carece de información en tiempo real y con la menor asertividad. La masificación de los autobuses de transporte público aleja a los usuarios, que prefieren utilizar sus propios vehículos, incluso
Visualización de temperatura y humedad y recopilación de datos con Arduino y procesamiento: 13 pasos (con imágenes)
Visualización de temperatura y humedad y recopilación de datos con Arduino y procesamiento: Introducción: Este es un proyecto que utiliza una placa Arduino, un sensor (DHT11), una computadora con Windows y un programa de procesamiento (descarga gratuita) para mostrar datos de temperatura, humedad en formato digital y forma de gráfico de barras, muestra la hora y la fecha y ejecuta un conteo progresivo