Tabla de contenido:

AirCitizen - Monitoreo de la calidad del aire: 11 pasos (con imágenes)
AirCitizen - Monitoreo de la calidad del aire: 11 pasos (con imágenes)

Video: AirCitizen - Monitoreo de la calidad del aire: 11 pasos (con imágenes)

Video: AirCitizen - Monitoreo de la calidad del aire: 11 pasos (con imágenes)
Video: CONFERENCIA. "Calidad del Aire y Contaminación Atmosférica". Javier Hoyuelos 2024, Noviembre
Anonim
AirCitizen - Monitoreo de la calidad del aire
AirCitizen - Monitoreo de la calidad del aire

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

Hardware
Hardware
Hardware
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:

  1. Suelde, en paralelo, los paneles solares.
  2. Conéctelos al LiPo Rider Pro y conecte también la batería al LiPo Rider Pro.
  3. 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.
  4. 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

Hardware - PCB
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

El protocolo LPWAN: comunicación Sigfox
El 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

Configuración de software
Configuración de software
Configuración de software
Configuración de 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

ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1
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

Comunicación entre el módulo Sigfox y la plataforma ThingSpeak
Comunicación entre el módulo Sigfox y la plataforma ThingSpeak
Comunicación entre el módulo Sigfox y la plataforma ThingSpeak
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

ThingSpeak - 2
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

Bono - ThingTweet y React
Bono - ThingTweet y React
Bono - ThingTweet y React
Bono - ThingTweet y React
Bono - ThingTweet y React
Bono - 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: