Tabla de contenido:
- Paso 1: hardware
- Paso 2: Hardware - PCB
- Paso 3: Protocolo LPWAN: comunicación Sigfox
- Paso 4: configuración del software
- Paso 5: Programe su STM32
- Paso 6: ThingSpeak - 1
- Paso 7: comunicación entre el módulo Sigfox y la plataforma ThingSpeak
- Paso 8: ThingSpeak - 2
- Paso 9: Bonificación - ThingTweet y React
- Paso 10: ¡Ahora es tu turno
- Paso 11: Referencia y bibliografía
Video: AirCitizen - Monitoreo de la calidad del aire: 11 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
Hola a todos
Hoy te enseñaremos a reproducir nuestro proyecto: ¡AirCitizen del equipo AirCitizenPolytech!
--
Viniendo del 'OpenAir / ¿Cuál es tu aire?' Proyectos, el proyecto AirCitizen tiene como objetivo permitir que los ciudadanos evalúen activamente la calidad de su entorno inmediato y, en particular, el aire que respiran, ofreciéndoles desde:
Construir
Realizar en "Fablabs" (laboratorios de fabricación digital) estaciones portátiles de medidas ambientales que integran diversos sensores de bajo costo (por ejemplo, temperatura, humedad, presión, gas NOx, ozono o partículas PM10 y PM2.5).
La medida
Realizar mediciones in situ con el fin de resaltar la variabilidad espacio-temporal de las variables ambientales: por un lado, durante campañas itinerantes con el apoyo de geógrafos-climatólogos y, por otro lado, en diversos lugares que presentan una diversidad de contextos ambientales.
Cuota
Contribuya a mejorar el conocimiento compartiendo estas mediciones en una base de datos medioambiental y, por lo tanto, permita el mapeo en línea de la contaminación del aire.
--
El concepto es crear una estación autónoma que pueda recopilar datos del entorno y enviarlos con la red SigFox a un tablero.
Entonces, por un lado, le mostraremos cómo diseñar el hardware y, por otro lado, cómo hacer la parte del software.
Paso 1: hardware
Estos son los componentes que decidimos utilizar para diseñar la estación:
- STM32 NUCLEO-F303K8 -> Para más información
- HPMA115S0-XXX (Sensor de partículas PM2.5 y PM10) -> Para más información
- SHT11 o SHT10 o STH15 o DHT11 (Temperatura y humedad relativa) -> Para más información
- MICS2714 (sensor de NO2, sensor de dióxido de nitrógeno) -> Para más información
- Panel solar x2 (2W) -> Para más información
- Batería LiPo 3, 7 V 1050 mAh -> Para más información
- Regulador LiPo Rider Pro (106990008) -> Para más información
- BreakOut SigFox BRKWS01 + 1 licencia -> Para más información
- 7 resistencias (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)
- 1 condensador (100nF)
- 1 transistor (2N222).
! ! ! ¡Debe quitar SB16 y SB18 en la placa nucleo stm32 para evitar interferencias entre HPMA y SHT11!
Básicamente, así es como tienes que conectar los componentes:
- Suelde, en paralelo, los paneles solares.
- Conéctelos al LiPo Rider Pro y conecte también la batería al LiPo Rider Pro.
- Como en la foto de arriba, conecte todos los elementos al STM32. ¡Conecte solo un sensor de temperatura y humedad, no 2! No olvide las resistencias, el condensador y el transistor.
- Finalmente, conecte el STM32 al LiPo Rider Pro con un cable USB.
El siguiente paso es una alternativa a este cableado.
Paso 2: Hardware - PCB
Decidimos utilizar Autodesk Eagle para diseñar la placa de circuito impreso (PCB).
Puede elegir conectar un DHT o un SHT, elegimos diseñar dos huellas dactilares para estos 2 sensores para cambiar el sensor si es necesario.
En el archivo adjunto, puede descargar los archivos de concepción de Eagle para que pueda hacerlo fácilmente por su cuenta.
Usamos el pin de 5V de stm32 para alimentar el dispositivo. En esta configuración, solo se alimenta el núcleo stm32.
Por lo tanto, podemos usar el modo de sueño profundo de la MCU que proporciona una corriente de sueño baja. En estado de espera, toda la corriente de reposo cae por debajo de XXµA.
Paso 3: Protocolo LPWAN: comunicación Sigfox
Sigfox es un protocolo LPWAN creado por una empresa de telecomunicaciones francesa - SIGFOX
Permite que los dispositivos remotos se conecten utilizando tecnología de banda ultra estrecha (UNB). La mayoría de estos requerirán solo un ancho de banda bajo para transferir pequeñas cantidades de datos. Las redes solo pueden manejar aproximadamente 12 bytes por mensaje y, al mismo tiempo, no más de 140 mensajes por dispositivo por día.
Para muchas de las aplicaciones de IOT, los sistemas tradicionales de telefonía celular son demasiado complejos para permitir una operación de muy baja potencia y demasiado costosos para ser factibles para muchos nodos pequeños de bajo costo … La red y la tecnología SIGFOX están dirigidas a la máquina a máquina de bajo costo áreas de aplicación donde se requiere una cobertura de área amplia.
Para AirCitizen, el formato de los datos detectados es simple y la cantidad de datos correcta para usar Sigfox para traducir los datos detectados de los sensores a nuestra plataforma IOT - ThingSpeak.
Introduciremos el uso de Sigfox en los siguientes pasos.
Paso 4: configuración del software
Tras la realización de nuestro circuito, pasemos al desarrollo de nuestro microcontrolador STM32 F303K8.
Para mayor simplicidad, puede optar por programar en Arduino.
Paso 1: Si aún no ha instalado el IDE de Arduino, descárguelo e instálelo desde este enlace. Asegúrese de seleccionar su sistema operativo correcto.
El enlace: Descarga Arduino
Paso 2: Después de instalar el IDE de Arduino, abra y descargue los paquetes necesarios para la placa STM32. Esto se puede hacer seleccionando Archivo -> Preferencias.
Paso 3: Al hacer clic en Preferencias, se abrirá el cuadro de diálogo que se muestra a continuación. En el cuadro de texto URL adicional de Boards Manager, pegue el siguiente enlace:
github.com/stm32duino/BoardManagerFiles/ra…
y presione OK.
Paso 4: Ahora vaya a Herramientas -> Tableros -> Administrador de tableros. Esto abrirá el cuadro de diálogo del administrador de Boards, buscará “STM32 Cores” e instalará el paquete que aparece (paquete STMicrolectronics).
Paso 5: Después del paquete, se completa la instalación. Vaya a Herramientas y desplácese hacia abajo para encontrar la "Serie Nucleo-32". Luego, asegúrese de que la variante sea "Nucleo F303K8" y cambie el método de carga a "STLink".
Paso 6: Ahora, conecte su placa a la computadora y verifique a qué puerto COM está conectada la placa usando el administrador de dispositivos. Luego, seleccione el mismo número de puerto en Herramientas-> Puerto.
¡Ahora está listo para programar su STM32 F303K8 con Arduino!
Paso 5: Programe su STM32
Una vez realizada la configuración, debe programar su microcontrolador para recopilar y enviar datos.
Paso 1: Verifique la afectación de E / S y la marca de tiempo de las medidas en la parte "Definir" del código.
Paso 2: cargue el código anterior al stm32, abra el monitor en serie y reinicie el dispositivo. El comando "AT" debería aparecer en la pantalla, si no es así, verifique la declaración de E / S.
Puede hacerse una idea de la veracidad de sus datos consultando las normas legislativas francesas adjuntas.
Pasemos a la configuración del tablero.
Paso 6: ThingSpeak - 1
Antes de configurar cómo redirigir los datos de nuestra estación a la plataforma ThingSpeak tienes que crear una cuenta ThingSpeak.
Registrarse: Sitio web ThingSpeak
Paso 1: Ahora haga clic en "Nuevo canal". Esto abrirá un formulario. Ingrese un nombre y una descripción (si es necesario).
Crear 5 campos:
- Campo 1: pm2, 5
- Campo 2: pm10
- Campo 3: temperatura
- Campo 4: humedad
- Campo 5: NO2
Estos títulos no serán los títulos de nuestras listas.
Si necesita un ejemplo, vea la foto de arriba.
No necesita completar más campos, pero podría ser interesante si ingresa una ubicación.
Desplácese hacia abajo y "Guardar canal".
Paso 2: Canal de la estación AirCitizen.
Ahora, puede ver una página con 5 gráficos. Al hacer clic en el símbolo del lápiz, puede cambiar las propiedades de un gráfico.
El resultado es la segunda imagen de arriba.
En este paso, esos gráficos son privados. Podrás hacerlos públicos una vez recibidos los datos.
Paso 3: Después de la configuración de tus gráficos. Vaya a la pestaña "Claves API". Mire la parte de la solicitud de API y, más precisamente, el primer campo, "Actualizar un feed de canal". Tenga en cuenta la CLAVE API.
Tendrás algo como esto:
OBTENER
Ahora puede pasar al siguiente capítulo.
Paso 7: comunicación entre el módulo Sigfox y la plataforma ThingSpeak
Para su información, tenga en cuenta que cada tarjeta de módulo Sigfox tiene un número único escrito en la tarjeta y un número PAC.
Para recibir los datos en ThingSpeak, debe redirigirlos.
Los datos van desde la estación al backend de Sigfox y serán redirigidos al servidor ThingSpeak.
Vea la primera imagen de arriba para obtener explicaciones.
Paso 1: No explicaremos cómo registrarse en Sigfox debido a muchos tutoriales en Internet.
Vaya al backend de Sigfox.
Haga clic en "Tipo de dispositivo", luego haga clic en la línea de su kit y seleccione "Editar".
Ahora, vaya a la sección "Devolución de llamada" y haga clic en "Nuevo", "Devolución de llamada personalizada".
Paso 2:
Deberías estar en la página de configuración:
Tipo: DATOS y UPLINK
Canal: URL
Enviar duplicado: ninguno
Configuración de carga útil personalizada: establezca la fuente de datos y decida el formulario de datos. Deberías escribir como:
VarName:: Tipo: NumberOfBits
En este caso, tenemos 5 valores denominados pm25, pm10, temperatura, humedad y NO2.
pm25:: int: 16 pm10:: int: 16 temperatura:: int: 8 humedad:: uint: 8 NO2:: uint: 8
Patrón de URL: esta es la sintaxis. Utilice la clave API encontrada anteriormente e insértela después de "api_key ="
api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#humidity}&field5={customData#NO2}
Utilice el método HTTP: OBTENER
Enviar SNI: ON
Encabezados: Ninguno
Haga clic ahora en "Aceptar".
¡Su devolución de llamada a la API ThingSpeak ya está configurada! (Representación en la segunda imagen de arriba).
Paso 8: ThingSpeak - 2
Ahora, puede ser más exigente al modificar los valores mínimo y máximo de los ejes.
Si es necesario, haga clic en el logotipo del lápiz en la parte superior derecha de un gráfico.
Valores típicos:
PM 2, 5 y PM 10 = ug / m ^ 3
Temperatura = ° C
Humedad =%
Dióxido de nitrógeno = ppm
Debería tener algo como las dos imágenes de arriba.
También puede agregar algunos otros widgets como "Pantalla numérica" o "Indicador".
Por último, para hacer público su canal, vaya a la pestaña "Compartir" y seleccione "Compartir la vista del canal con todos".
Paso 9: Bonificación - ThingTweet y React
Opcional: ¡Twittea si se cumple una condición!
Paso 1: Crea una cuenta de Twitter o usa tu cuenta de Twitter personal.
Registrarse - Twitter
Paso 2: En Thingspeak, vaya a "Aplicaciones" y luego haga clic en "ThingTweet".
Vincula tu cuenta de Twitter haciendo clic en "Vincular cuenta de Twitter".
Paso 3: Ahora, regrese a "Aplicaciones" y luego haga clic en "Reaccionar".
Crea un nuevo React haciendo clic en "New React".
Por ejemplo:
Nombre de reacción: temperatura superior a 15 ° C
Tipo de condición: numérico
Frecuencia de prueba: en la inserción de datos
Condición, si canal:
Campo: 3 (temperatura)
Signo: es mayor que
Valor: 15
Acción: ThingTweet
Luego tuitea: ¡Oh! ¡La temperatura es superior a 15 ° C
usando la cuenta de Twitter:
Opciones: ejecutar una acción cada vez que se cumpla la condición
Luego haga clic en "Guardar React".
Ahora tuiteará si se cumple la condición y se pueden configurar muchas otras condiciones, como dependiendo del nivel de PM10.
Paso 10: ¡Ahora es tu turno
¡Finalmente, ahora tienes todos los elementos para reproducir tu propia AirCitizen Station!
Video: Puedes ver un video donde presentamos nuestro trabajo.
Nuestra plataforma ThingSpeak: AirCitizenPolytech Station
--
Gracias por su atención !
El equipo de AirCitizen Polytech
Paso 11: Referencia y bibliografía
https://www.sigfox.com/en
Recomendado:
Medidor de calidad del aire interior: 5 pasos (con imágenes)
Medidor de calidad del aire interior: proyecto simple para verificar la calidad del aire en su casa. Dado que últimamente nos quedamos / trabajamos mucho desde casa, podría ser una buena idea monitorear la calidad del aire y recordar cuándo es el momento de abrir la ventana. y toma un poco de aire fresco
Sensor de calidad del aire AEROBOT V1.0: 6 pasos (con imágenes)
Sensor de calidad del aire AEROBOT V1.0: Este instructivo trata sobre cómo hacer un sensor de calidad del aire económico y altamente preciso llamado AEROBOT. Este proyecto muestra temperatura, humedad relativa, densidad de polvo PM 2.5 y alertas sobre la calidad del aire del entorno. Utiliza un sensor DHT11
Seguimiento de la calidad del aire con Grafana y Raspberry Pi: 7 pasos
Seguimiento de la calidad del aire con Grafana y Raspberry Pi: estaba buscando un pequeño proyecto de IOT y un amigo me recomendó que revisara este tutorial: https: //dzone.com/articles/raspberry-pi-iot-sensor … recomiendo seguir el tutorial a seguir para configurar una Raspberry Pi para su monitoreo
Monitor de calidad del aire con MQ135 y sensor externo de temperatura y humedad sobre MQTT: 4 pasos
Monitor de calidad del aire con MQ135 y sensor externo de temperatura y humedad sobre MQTT: esto es para propósitos de prueba
Un monitor de calidad del aire IoT de bajo costo basado en RaspberryPi 4:15 pasos (con imágenes)
Un monitor de calidad del aire de IoT de bajo costo basado en RaspberryPi 4: Santiago de Chile durante una emergencia ambiental invernal tiene el privilegio de vivir en uno de los países más hermosos del mundo, pero desafortunadamente, no todo son rosas. Chile durante la temporada de invierno sufre mucho con la contaminación del aire, mai