Tabla de contenido:
- Paso 1: objetivo general
- Paso 2: primer paso: sensores
- Paso 3: Segundo paso: Conexión al microcontrolador
- Paso 4: tercer paso: creación de un boceto
- Paso 5: Cuarto paso: preparación de la hoja de Google y su secuencia de comandos
- Paso 6: Quinto paso: Conectando todos juntos
- Paso 7: Sexto paso: Graficar datos
- Paso 8: Séptimo paso: análisis de datos
Video: CloudyData - ESP8266 a Google Sheets simplificado: 10 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
He estado buscando almacenamiento de datos en la nube durante mucho tiempo durante los últimos años: es interesante monitorear datos de cualquier tipo de sensor, pero es más interesante si estos datos están disponibles en todas partes sin ninguna dificultad de almacenamiento, como usar tarjetas SD o similar, en almacenamiento local. Solía almacenar localmente en tarjetas SD datos de velocidad del viento hace años, antes de que IoT y los servicios en la nube comenzaran a ser fáciles de usar: ahora es posible un paso más allá con dificultades particulares, incluso si no eres un experto en IoT o un desarrollador.
En este instructivo, describiré cómo estoy monitoreando la calidad del aire dentro de casa, especialmente refiriéndome a la concentración de polvo y partículas cerca de mi impresora 3D, tratando de comprender si el proceso de impresión 3D es peligroso en términos de PM2.5, y cómo estoy utilizando Google Sheets para almacenar datos, sin necesidad de ningún servicio de terceros.
Paso 1: objetivo general
Quiero saber si vivir en presencia de una impresora 3D puede ser peligroso.
Para hacer esto, necesito datos y los datos deben almacenarse en la nube.
Quiero usar Google Sheets ya que es simple y efectivo.
Yo también quiero privacidad: compartir datos con Google no es mi primera opción, pero es mejor que usar servicios de terceros, como suelen hacer muchos blogueros.
El uso de Google Sheets es un paso hacia la carga de datos en un almacenamiento local personal como Nextcloud en un NAS simple: esto se describirá en un futuro instructivo.
Paso 2: primer paso: sensores
Utilizo 2 sensores para controlar la calidad del aire de mi hogar:
-
un módulo de sensor de detección de calidad del aire Nova PM Sensor SDS011, una gran pieza de hardware, relativamente fácil de usar con Arduino y placas similares. Puede usarlo con su propio software (¡solo Windows!:-() y adaptador USB, o conectándose a Arduino con bibliotecas. Se puede encontrar mucha información aquí:
- inovafitness.com/en/a/chanpinzhongxin/95.ht…
- www-sd-nf.oss-cn-beijing.aliyuncs.com/%E5%…
- aqicn.org/sensor/sds011/
-
un escudo SHT30 de Wemos, para Wemos D1 mini: utilicé una versión v1.0.0, la versión actual es v2.1.0 pero tienen la misma huella, las mismas funcionalidades
wiki.wemos.cc/products:d1_mini_shields:sht…
Paso 3: Segundo paso: Conexión al microcontrolador
Wemos D1 mini es probablemente la mejor manera de prototipar alrededor de ESP8266: conector microUSB, led integrado, protectores agradables listos para usar disponibles.
Conecté el escudo SHT30 en Wemos D1 mini directamente (¡cuida la orientación!), Luego conecté Nova Air Sensor a Wemos D1 mini de la siguiente manera:
Wemos GND pin Nova Sensor de aire GND
Sensor de aire Nova 5V pin Wemos 5V
Wemos D5 pin (pin RX) Sensor de aire Nova TX
Wemos D6 pin (pin TX) Sensor Nova Air RX
Puedes echar un vistazo aquí para obtener más información:
www.hackair.eu/docs/sds011/
www.zerozone.it/tecnologia-e-sicurezza/nov…
www.instructables.com/id/Make-one-PM25-mon…
Paso 4: tercer paso: creación de un boceto
Ahora necesita crear un boceto: tenemos suerte, algunos chicos desarrollaron bibliotecas específicas para Nova Air Sensor para que pueda escribir fácilmente su software.
El mío también usa la biblioteca SHT30 para medir y cargar datos de temperatura y humedad.
Mezclé un boceto que encontré en línea, especialmente el de nishant_sahay7, cuyo tutorial es completo y lleno de información. Lo puedes encontrar aquí.
Usé esta biblioteca:
Comentaré solo unas pocas líneas en el boceto que generé:
línea 76-77: despertando el sensor de polvo por un tiempo, luego se volverá a dormir, ya que las hojas de datos indican que está destinado a funcionar alrededor de 8000 horas, lo cual es más que suficiente, pero no infinito
sds.wakeup (); retraso (30000); // trabajando 30 segundos
línea 121: los datos enviados son temperatura, humedad, PM2.5 y PM10
sendData (t, h, pm2_5, pm10);
línea 122-123: No uso ESP.deepSleep, lo intentaré en el futuro; a estas alturas, un simple retraso (90000) será suficiente para que los datos se envíen cada 30 s + 90 s = 2 minutos, más o menos
//ESP.deepSleep(dataPostDelay);
retraso (90000);
línea 143:
esta es la línea más importante, el orden en el que crea String_url para cargar datos debe ser el mismo que usará en Google Script (consulte los siguientes pasos)
String url = "/ macros / s /" + GAS_ID + "/ exec? Temperature =" + string_x + "& humedad =" + string_y + "& PM2.5 =" + string_z + "& PM10 =" + string_k;
Paso 5: Cuarto paso: preparación de la hoja de Google y su secuencia de comandos
Los créditos van a nishant_sahay7, como dije.
Simplemente vuelvo a publicar aquí su trabajo, agregando algunos consejos para futuras mejoras y modificaciones:
-
Configuración de Hojas de cálculo de Google
- Abra Google Drive y cree una nueva hoja de cálculo y asígnele un nombre, luego proporcione los campos con los parámetros que desea definir.
- La identificación de la hoja se muestra en la figura 2
- Vaya a Tools-Script Editor (figura 3)
- Dar el mismo nombre que el de la hoja de cálculo (figura 4)
-
Elija el código de aquí y péguelo en la ventana del editor de secuencias de comandos (figura 5)
Reemplace var sheet_id con su ID de hoja de cálculo del paso 2
- Ir a Publicar - Implementar como aplicación web (figura 6)
- Cambie el tipo de acceso a cualquiera, incluso anónimo, e implemente (figura 7)
- Vaya a Revisar permisos (figura 8)
- Elija Avanzado (figura 9)
- Elija Ir a (nombre de archivo) y luego permita (figura 10)
- Copie la URL de la aplicación web actual y haga clic en Aceptar (figura 11)
-
Obtener el ID de Google Script
-
La URL copiada será algo como: https://script.google.com/macros/s/AKfycbxZGcTwqe… El enlace anterior tiene la forma de: https://script.google.com/macros/s/AKfycbxZGcTwqe…/exec Entonces, aquí el ID de Google Script es: AKfycbxZGcTwqeDgF3MBMGj6FJeYD7mcUcyo2V6O20D6tRlLlP2M_wQ Se utilizará para enviar los datos a Google Sheets: Ejemplo:
script.google.com/macros/s/AKfycbxZGcTwqeD…
Pegar el enlace anterior en una nueva ventana y presionar Enter enviará datos a Google Sheet y aparecerá un mensaje de confirmación en la ventana. Los datos enviados serán
- temperatura = 1
- humedad = 2
- PM2.5 = 3
- PM10 = 33,10
-
-
Cambie según sus necesidades
debe cambiar el boceto de Google Script Y Arduino en consecuencia, para agregar o eliminar valores y columnas: compare la figura 5 y la figura 5b
Paso 6: Quinto paso: Conectando todos juntos
Ahora tiene un dispositivo que envía datos a Google Sheets, un Google Script capaz de recibir y asignar datos, un navegador es suficiente para ver datos, en la computadora o teléfono inteligente o lo que quiera.
Lo mejor sería administrar un poco estos datos, para mostrar solo unos pocos necesarios.
Paso 7: Sexto paso: Graficar datos
Para tener un panel simple pero interesante y útil, organicé mis datos de esta manera:
- la hoja de Google original, la principal, utilizada para recoger su ID para ingresar en Google Script, DEBE estar intacta y mantener su orden
-
Genere otras dos hojas, siguiendo la principal
-
uno para extraer solo unos pocos datos de todo el material, las últimas 24 horas, por ejemplo, para extraer datos, utilicé la función SORT y QUERY, insertando en la primera celda de los datos extraídos
= CLASIFICAR (CONSULTA (Foglio1! A2: Z, "ordenar por un límite desc 694"), 1, 1)
- el otro para crear gráficos para mostrar valores, haciendo un panel simple
-
Paso 8: Séptimo paso: análisis de datos
Hice algunos análisis y puedo decir, a estas alturas, no debería haber ningún peligro al usar la impresora 3D (material: PLA) en términos de PM2.5 y PM10. Cada vez que comienzo una nueva impresión, los valores de partículas van al techo., solo por un tiempo: creo que esto se debe al polvo depositado anteriormente en la cama de la impresora 3D, de modo que cuando el ventilador efector llega a la placa, comienza a volar por todos lados. Después de unos minutos, el polvo desaparece ya que los ventiladores continúan soplando y los valores de PM2.5 y PM10 bajan a valores más bajos.
De hecho, se necesitan más datos y análisis.
Recomendado:
Encuesta diaria con Makey Makey y Google Sheets: 5 pasos
Encuesta diaria con Makey Makey y Google Sheets: Quería crear una forma de registrar los datos de los estudiantes a medida que ingresan al aula, así como tener una forma de mostrar fácilmente los resultados en la sala en la pantalla del proyector. Si bien podía simplificar esto usando Scratch, quería una manera fácil de grabar y guardar
Datos meteorológicos con Google Sheets y Google Script: 7 pasos
Datos meteorológicos usando Google Sheets y Google Script: En este Blogtut, vamos a enviar las lecturas del sensor SHT25 a Google Sheets usando Adafruit huzzah ESP8266 que ayuda a enviar los datos a Internet. Enviar datos a la celda de la hoja de Google es muy útil y forma básica que guarda los datos en
Mecanismo de ojo dual animatronic impreso en 3D simplificado: 4 pasos (con imágenes)
Mecanismo de ojo dual animatrónico impreso en 3D simplificado: Habiendo construido un mecanismo simple de ojo único en el pasado, quería mejorar el diseño y hacerlo más accesible para la comunidad de creadores. El ensamblaje actualizado utiliza piezas que se pueden comprar fácilmente en línea, y casi todos los componentes ca
IoT simplificado: monitoreo de múltiples sensores: 7 pasos
IoT simplificado: monitoreo de múltiples sensores: hace unas semanas, publiqué aquí un tutorial sobre el monitoreo de la temperatura usando un DS18B20, un sensor digital que se comunica a través de un bus de 1 cable, enviando datos a través de Internet con NodeMCU y Blynk: IoT hecho simple : Supervisión de la temperatura en cualquier lugarBu
IoT simplificado: captura de datos meteorológicos remotos: UV y temperatura y humedad del aire: 7 pasos
IoT simplificado: captura de datos meteorológicos remotos: UV y temperatura y humedad del aire: en este tutorial, capturaremos datos remotos como UV (radiación ultravioleta), temperatura y humedad del aire. Esos datos serán muy importantes y se utilizarán en una futura estación meteorológica completa. El diagrama de bloques muestra lo que obtendremos al final