¡Niveles COVID-19 y PM10!
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 3 | ||||
| × | 4 | ||||
| × | 1 | ||||
| × | 3 | ||||
| × | 3 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Herramientas y máquinas necesarias
| ||||
| ||||
| ||||
| ||||
|
Aplicaciones y servicios en línea
|
Acerca de este proyecto
Resumen
Los estudios experimentales afirmarían la posibilidad de que el material particulado pueda actuar como un "portador" para la propagación de la infección viral de COVID-19.
Esto significa que el virus podría ser transportado a distancias más largas por partículas finas suspendidas en el aire y podría permanecer viable durante horas, días o incluso semanas en partículas diminutas. Por lo tanto, las partículas de contaminación del aire podrían ayudar a que el coronavirus viaje más lejos en el aire, aumentando la cantidad de personas infectadas.
En En el norte de Italia, el cierre no produjo una reducción considerable de material particulado, ya que el material particulado se obtiene en gran cantidad también por las granjas ganaderas intensivas, además de las fábricas y los automóviles. Entonces, incluso si durante el cierre las fábricas estaban cerradas y los automóviles no circulaban, los niveles de concentración de partículas en Lombardía (Italia) se mantuvieron altos en cualquier caso, debido a las granjas ganaderas intensivas ubicadas en su territorio que continuaron produciendo estiércol y, por lo tanto, contaminantes en el aire y, entre otros, el material particulado.
Los científicos y los investigadores sugieren que los niveles más altos de contaminación por partículas podrían explicar las tasas más altas de infección en partes del norte de Italia.
Introducción
Hace unas semanas vi un programa de televisión italiano llamado "Report". Es un programa de investigación emitido en el canal tres (RAI 3) por la televisión italiana.
Me llamó la atención una pieza interesante… Se trataba de la contaminación y, en particular, de un tipo de contaminación provocada por la ganadería intensiva. (Haga clic aquí para ver la parte correspondiente:del minuto 27:25 al minuto 56:00).
La ganadería intensiva se refiere a un sistema de agricultura en el que un gran número de animales (como vacas, cerdos, pavos o pollos) se mantienen juntos en espacios relativamente pequeños. El objetivo es producir grandes cantidades de carne, huevos o leche al menor costo posible. También se les conoce como "granjas industriales".
Los animales criados en granjas superpobladas y de estilo industrial generan una gran cantidad de desechos animales, como orina y estiércol. El estiércol generalmente se almacena en estanques enormes al aire libre, a menudo tan grandes como varios campos de fútbol, que son propensos a goteras y derrames, contaminando el suelo y contaminando los suministros de agua. Los desechos animales también emiten gases nocivos a la atmósfera (como amoníaco, endotoxinas, sulfuro de hidrógeno y metano) y liberan grandes cantidades de material particulado (PM10 y PM2.5; PM10 es el acrónimo de "material particulado con diámetro ≤ 10 µm", PM2.5 es el acrónimo de “material particulado con diámetro ≤ 2.5 µm”), creando problemas ambientales. El material particulado contiene sólidos microscópicos o gotitas de líquido que son tan pequeñas que pueden inhalarse y causar graves problemas de salud.
Cuando los pozos negros alcanzan su capacidad, los agricultores rocían el estiércol sin tratar en los campos circundantes como fertilizante, y eso lleva aún más de estas sustancias nocivas al aire.
Los residuos no tratados contaminan el aire con olores (el hedor puede ser insoportable) y crean problemas de salud, disminuyendo notablemente la calidad de vida de los trabajadores, las personas cercanas y las comunidades vecinas y el valor de las propiedades. Los estudios han demostrado que las personas que viven cerca de granjas ganaderas intensivas tienen un riesgo mucho mayor de desarrollar problemas respiratorios, como asma y bronquitis crónica.
En Italia, las explotaciones ganaderas más intensivas se encuentran en el norte del país. Lombardía es una de las regiones con mayor concentración de explotaciones ganaderas intensivas; en consecuencia, la cantidad de excrementos y desechos animales que se producen en las instalaciones ganaderas es muy alta y eso genera grandes cantidades de gases y material particulado.
Cabe señalar que, en Lombardía, el 85% del amoníaco disperso en la atmósfera es producido por el estiércol:parece que las granjas contaminan de la misma manera que los automóviles.
Un estudio realizado por investigadores de varias universidades italianas y publicado el pasado mes de marzo con el título “ Evaluación de la posible relación entre la contaminación por partículas y la propagación de la infección por COVID-19 en Italia ”(En el siguiente enlace es posible descargar el documento de posición:https://www.simaonlus.it/?page_id=694, enlace directo al pdf en inglés http://www.simaonlus.it/wpsima/wp- content / uploads / 2020/03 / COVID_19_position-paper_ENG.pdf - ¡Recomiendo leerlo!) habla sobre una posible correlación entre los niveles de concentración de partículas y la cantidad de personas infectadas por COVID-19 (como puede ver en el siguiente diagrama) .
Los investigadores han recopilado y analizado los siguientes datos:
- Niveles de concentración diaria de PM10 (datos proporcionados por la Agencia Regional de Protección Ambiental - ARPA - y recopilados en toda Italia);
- Las superaciones diarias del valor límite de PM10;
- El número de personas infectadas por COVID-19 para cada provincia seleccionada, comunicado por Protección Civil y actualizado con frecuencia diaria.
y han notado una relación significativa entre las superaciones diarias de PM10 y la propagación de la infección por COVID-19 durante el lapso de tiempo del estudio (10-29 de febrero de 2020), con una alta concentración de casos de coronavirus en Norte Italia, en particular en el valle del Po y especialmente en Lombardía, mientras que en el sur de Italia la difusión y letalidad del virus fue significativamente menor en comparación con las observadas en las regiones del norte.
En este documento de posición es posible leer “La hipótesis de una relación directa entre los casos de COVID-19 y los niveles de PM10 se ve reforzada por la evidencia de que la concentración de brotes de COVID-19 notificados en el Valle del Po [en Norte Italia] fue más alta que en otras partes de Italia ”(Como puede ver en la siguiente figura, que muestra las superaciones de los límites de contaminación por PM10 registrados en Italia en el período del 10 al 29 de febrero y donde se puede observar que el Valle del Po es la zona más contaminada de Italia).
Es muy notable que la mayoría de los casos de coronavirus en Italia se encuentren en Lombardía, donde la concentración de granjas ganaderas intensivas es muy alta y, en consecuencia, la producción de material particulado es enorme.
Cabe señalar que este fenómeno continuó incluso durante el cierre, cuando las fábricas estaban completamente cerradas y los automóviles no circulaban.
Según este estudio, en las regiones del sur de Italia (menos contaminadas) el patrón prevalente de transmisión viral se produciría por contacto entre personas (de acuerdo con modelos epidémicos basados en el modo de transmisión típico 'contacto persona a persona'), mientras que en las regiones del norte de Italia (más contaminadas), la infección se propagaría de otra manera, es decir por un agente portador (representado por el material particulado suspendido en la atmósfera).
Las siguientes curvas de expansión de la infección destacan la anomalía del norte de Italia en la propagación de la infección por COVID-19, en comparación con el centro y el sur de Italia.
Sobre la base de los datos recopilados y las relaciones observadas, los investigadores concluyen diciendo que es razonable suponer que, durante el período del 10 al 29 de febrero de 2020, los altos niveles de concentración de PM10 registrados en regiones específicas del norte de Italia tuvieron un efecto portador e impulsor de la propagación virulenta de la epidemia de COVID-19, promoviendo la difusión del COVID-19 entre la población expuesta, fenómeno no observado en otras regiones italianas que fueron afectadas por la contaminación durante el mismo período.
Otros estudios han demostrado que PM actuaría como portador de virus. Los virus, de hecho, pueden adherirse al material particulado, cuyas pequeñas partículas pueden viajar largas distancias en las corrientes de aire y permanecer en la atmósfera durante horas, días o incluso semanas.
El material particulado también representaría un sustrato que permitiría a los virus permanecer activos en la atmósfera durante algún tiempo (horas o días). Los factores ambientales juegan un papel importante en la activación y persistencia de virus en la atmósfera:
- Las altas temperaturas y la radiación solar aceleran la inactividad;
- La humedad relativa alta puede promover la velocidad de difusión.
Una investigación ha demostrado que la supervivencia del virus en las superficies disminuye cuando la humedad relativa se mantiene alrededor del 50%, mientras que los virus permanecen activos cuando los valores de humedad relativa están por debajo del 40% y por encima del 60%.
Otra investigación de la Universidad de Yale ha demostrado cómo las condiciones de baja humedad permiten que las partículas infectadas se propaguen mejor y sobrevivan más tiempo (haga clic aquí para ver el artículo).
Mi solución
Sobre la base de estas consideraciones, he pensado en crear un dispositivo replicable, de bajo costo y fácil de usar capaz de medir los niveles de concentración de PM10, la temperatura y la humedad relativa (factores ambientales involucrados en la propagación de la infección viral), para advertir a las personas cuando estos Los valores son demasiado altos y potencialmente peligrosos para su salud, por lo que pueden optar por quedarse en casa y no salir o, si están afuera, irse a casa o usar una máscara, incluso si las distancias entre las personas son mucho mayores que una metro.
El dispositivo consta de un sensor PM10, un sensor de temperatura y humedad relativa, una pantalla y tres LED, todos controlados por un Arduino Nano. Los datos del sensor se muestran en la pantalla y los LED indican cuál es la situación del aire.
He identificado cuatro situaciones diferentes:
1. Normal - Concentraciones de material particulado de 0 a 25 µg / m3 y humedad entre 40% y 60%;
2. Bajo - Concentraciones de partículas de 0 a 25 µg / m3 y humedad <40% o> 60%;
3. Bajo - Concentraciones de material particulado de 26 a 50 µg / m3 y humedad entre 40% y 60%;
4. Advertencia - Concentraciones de partículas de 26 a 50 µg / m3 y humedad <40% o> 60%;
5. Advertencia - Concentraciones de partículas> 51 µg / m3 y humedad entre 40% y 60%;
6. Alarma - Concentraciones de partículas> 51 µg / m3 y humedad <40% o> 60%.
LED asociados:
- Normal:LED apagados;
- Bajo:LED verde encendido;
- Advertencia:LED verde y amarillo ENCENDIDOS;
- Alarma:LED verde, amarillo y rojo encendidos.
SDS018 - Sensor PM10
El SDS018 puede obtener una concentración de partículas entre 0,3 y 10 μm en el aire, utilizando el principio de dispersión láser. Es estable y confiable con su salida digital y ventilador incorporado.
- Preciso y confiable:detección de láser, estable, buena consistencia;
- Respuesta rápida:el tiempo de respuesta es inferior a 10 segundos cuando cambia la escena;
- Fácil integración:salida UART (o salida IO se puede personalizar), ventilador incorporado;
- Alta resolución:resolución de 0.3μg / m3;
- Certificación:los productos han pasado la certificación CE / FCC / RoHS.
SDS018 configuración de pines del sensor:
- 1 - NC:no conectado;
- 2 - 1um:salida PWM;
- 3 - 5V:fuente de alimentación;
- 4 - 2.5um:salida PWM;
- 5 - GND:tierra, conectar al polo negativo;
- 6 - R:RX de UART (TTL);
- 7 - T:TX de UART (TTL).
Conexión del sensor SDS018 a Arduino Nano
- El pin 5V (3) del sensor SDS018 está conectado al pin 5V de Arduino Nano;
- El pin GND (5) del sensor SDS018 está conectado al pin GND de Arduino Nano;
- El pin T (7) del sensor SDS018 está conectado al pin RX de Arduino Nano;
Sensor DHT22
DHT22 es un sensor digital de temperatura y humedad relativa. Las principales características son:
- Alimentación y E / S de 3 a 5 V;
- 2.5mA máximo de uso actual durante la conversión (mientras se solicitan datos);
- lecturas de humedad del 0 al 100% con una precisión del 2 al 5%;
- Lecturas de temperatura de -40 a 80 ° C ± 0.5 ° C de precisión;
- Frecuencia de muestreo de 0,5 Hz (una vez cada 2 segundos).
Configuración de pines del sensor DHT22:
- VDD:fuente de alimentación;
- DATOS:salida de datos de señal;
- NC:no conectado;
- GND:tierra, conectar al polo negativo.
Conexión del sensor DHT22 a Arduino Nano
- El pin VDD del sensor DHT22 está conectado al pin 5V de Arduino Nano;
- El pin GND del sensor DHT22 está conectado al pin GND de Arduino Nano;
- Entre los pines VDD y GND del sensor DHT22, he insertado un capacitor de 100nF;
- Entre los pines DATA y VCC del sensor DHT22, he insertado una resistencia pull-up de 4.7k;
- El pin DATA del sensor DHT22 está conectado al pin D2 de Arduino Nano.
IDE de Arduino
He instalado la biblioteca de sensores DHT de Adafruit - Versión 1.3.10
Pantalla OLED de matriz de puntos
- VCC:3.3-5V;
- Resolución:128x32 píxeles;
- Fondo negro con caracteres blancos;
- Controlador:SSD1306;
- Interfaz:I2C.
Configuración de pines de pantalla OLED I2C:
- SDA:datos en serie I2C;
- SCL:reloj serie I2C;
- VCC:fuente de alimentación;
- GND:tierra, conectado al polo negativo.
Conexión de pantalla OLED I2C a Arduino Nano
- El pin VCC de la pantalla está conectado al pin 5V de Arduino Nano;
- El pin GND de la pantalla está conectado al pin GND de Arduino Nano;
- El pin SCL de la pantalla está conectado al pin A5 de Arduino Nano;
- El pin SDA de la pantalla está conectado al pin A4 de Arduino Nano.
IDE de Arduino
He instalado la biblioteca Adafruit SSD1306 de Adafruit - Versión 2.2.1
Conexiones de LED
He utilizado tres LED de 3 mm:rojo, verde y amarillo.
- El ánodo del LED rojo está conectado al pin D3 de Arduino Nano;
- El ánodo del LED verde está conectado al pin D4 de Arduino Nano;
- El ánodo del LED amarillo está conectado al pin D5 de Arduino Nano;
- He soldado una resistencia de 390 Ohm en serie al cátodo de cada LED y he conectado el otro pin de la resistencia a GND de Arduino Nano.
Arduino nano - Modificación de hardware
Para leer la salida serial del SDS018 he modificado Arduino Nano.
He eliminado la resistencia SMD indicada en la siguiente figura con la flecha roja.
He soldado la resistencia SMD verticalmente y luego he soldado dos cables a la resistencia. He soldado un encabezado de clavija al final de los cables.
He insertado el puente en el encabezado del pin solo cuando he programado el Arduino Nano. De esta manera, cuando se quita el jumper, el Arduino Nano puede leer los datos del sensor SDS018 y simultáneamente puede enviar los datos al monitor serial Arduino IDE.
O más simplemente, después de programar la placa Arduino Nano puedes quitar la resistencia de forma permanente, pero de esta forma ya no será posible reprogramar la placa Arduino Nano.
Fuente de alimentación
El Arduino Nano se puede alimentar de dos formas diferentes:
- USB;
- Pin Vin (y pin GND):7-12V.
He alimentado la placa a través de USB a través de un banco de energía.
Caja y montaje
He diseñado e impreso en 3D una carcasa de PLA naranja para fijar los sensores, la pantalla, los LED y Arduino Nano. La carcasa consta de dos partes:la parte inferior, donde se fijan el Arduino Nano y el SDS018; y la parte superior donde se fijan el DHT22, el display y los leds. En la parte inferior hay una abertura para el cable USB Mini-B. En la parte superior hay tres orificios por los que salen los tres LED. Si lo desea, puede utilizar el hardware de montaje de LED para fijar los LED (simplemente agrandando los orificios hasta 5 mm).
Aquí adjunto encontrará los dos archivos que necesita para imprimir en 3D las dos partes de la carcasa.
I have used hot glue to fix the Arduino Nano, the display, and the DHT22 in the case.
Figure 1 - I have soldered LEDs with their resistors and I have mounted them on the upper part of the case;
Figure 2 - I have inserted a heat-shrink tubing on each resistor and on each wire;
Figures 3/4 - I have fixed the DHT22 sensor module with hot glue;
Figure 5 - I have fixed the display module with hot glue;
Figure 6 - I have soldered all the wires to the Arduino Nano board;
Figure 7 - I have fixed the Arduino Nano board with hot glue;
Figure 8 - I have soldered all the positive wires (red) together and I have inserted the heat-shrink tubing; I have soldered all the negative wires (black) together and I have inserted the heat-shrink tubing;
Figure 9 - I have fixed the red and black wires with the glitter hot glue (I had finished the transparent one :) )
Figure 10 - I have soldered the three female jumpers on each wire in order to connect the SDS018 Sensor module;
Figure 11 - I have inserted a heat-shrink tubing on each female jumper and I have inserted them into the SDS018 sensor module;
Figure 12 - I have mounted the SDS018 sensor module in the lower part of the case with a machine screw M3x6;
Figure 13 - I have closed the case with four machine screws M3x16.
Firmware
The firmware is an Arduino sketch . In the following figure you can see the simplified flow chart.
At start-up is executed the peripheral setup and the LEDs are checked.
Main loop:
- Only at the first loop (startup) there are 2 seconds delay;
- The DHT22 sensor is read;
- Temperature and relative humidity are sent to Arduino IDE serial monitor (see the figure below);
- The SDS018 sensor is read;
- PM2.5 and PM10 are sent to Arduino IDE serial monitor (see the figure below);
- If particulate matter concentrations are from 0 to 25 µg/m3 and humidity is between 40% and 60% - Normal alarm state -, then all LEDs get OFF;
- If particulate matter concentrations are from 0 to 25 µg/m3 and humidity is <40% or> 60% or particulate matter concentrations are from 26 to 50 µg/m3 and humidity is between 40% and 60% (to simplify the code I have separated the conditions) - Low alarm state -, then only green LED gets ON;
- If particulate matter concentrations are from 26 to 50 µg/m3 and humidity is <40% or> 60% or particulate matter concentrations are> 51 µg/m3 and humidity is between 40% and 60% (to simplify the code I have separated the conditions) - Warning alarm state -, then green and yellow LEDs get ON;
- If particulate matter concentrations are> 51 µg/m3 and humidity is <40% or> 60% - Alarm state -, then all LEDs get ON;
- If switchDisplay flag variable is equal to zero, then PM10 and humidity are visualized on display, otherwise are visualized PM2.5 and temperature in degrees Celsius; if there is an alarm state, instead of displaying PM10, it is visualized the word "Alarm!!!".
At the end of the loop I have inserted a 2 second-delay.
That's all!
If you have any questions or suggestions don't hesitate to leave a comment below. Thank you!
Código
- COVID-19 and PM10 levels! - Code
COVID-19 and PM10 levels! - CodeArduino
The firmware is an Arduino sketch.#include#define SCREEN_WIDTH 128 // OLED display width, in pixels#define SCREEN_HEIGHT 32 // OLED display height, in pixels// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)#define OLED_RESET 4 // Reset pin # (or -1 if sharing Arduino reset pin)Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);#include "DHT.h"#define DHTPIN 2 // Digital pin connected to the DHT sensor #define DHTTYPE DHT22 // DHT22 (AM2302)DHT dht(DHTPIN, DHTTYPE);int startdhr22 =0; // Startup flag variable:waiting for the first measurement of DHT22int switchDisplay =0; // Flag variable for switch data on the displayconst int ledRed =3; // Number of Red LED pinconst int ledGreen =4; // Number of Green LED pinconst int ledYellow =5; // Number of Yellow LED pinvoid setup() { pinMode(LED_BUILTIN, OUTPUT); // On-board LED - initialize digital pin LED_BUILTIN as an output pinMode(ledRed, OUTPUT); // Initialize digital pin as an output pinMode(ledGreen, OUTPUT); // Initialize digital pin as an output pinMode(ledYellow, OUTPUT); // Initialize digital pin as an output dht.begin(); Serial.begin(9600); Serial.println("start"); // SSD1306_SWITCHCAPVCC =generate display voltage from 3.3V internally if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x32 Serial.println(F("SSD1306 allocation failed")); for(;;); // Do not proceed, loop forever } display.clearDisplay(); // Clear the buffer display.setTextSize(2); // Draw 2X-scale text display.setTextColor(SSD1306_WHITE); // Startup:LEDs Test digitalWrite(ledGreen, HIGH); // Turn the LED ON delay(500); // Wait for 0,5 secondS digitalWrite(ledYellow, HIGH); // Turn the LED ON delay(500); // Wait for 0,5 secondS digitalWrite(ledRed, HIGH); // Turn the LED ON delay(500); // Wait for 0,5 secondS digitalWrite(ledGreen, LOW); // Turn the LED OFF digitalWrite(ledYellow, LOW); // Turn the LED OFF digitalWrite(ledRed, LOW); // Turn the LED OFF delay(500); // Wait for 0,5 secondS}void loop() { // ########################################################################### // DHT22 // 0.5 Hz sampling rate (once every 2 seconds). // ########################################################################### if(0 ==startdhr22) { delay(2000); // Startup:waiting for the first measurement of DHT22 startdhr22 =1; } float h =dht.readHumidity(); float t =dht.readTemperature(); // Read temperature as Celsius (default) // Check if any reads failed and exit early (to try again). if (isnan(h) || isnan(t)) { Serial.println(F("Failed to read from DHT sensor!")); return; } Serial.print(F("Humidity:")); Serial.print(h); Serial.print(F("% Temperature:")); Serial.print(t); Serial.println(F("°C ")); // ########################################################################### // SDS018 // ########################################################################### uint8_t dataIN[10] ={0}; // Data array from SDS018 float pm25; float pm10; while(Serial.available()> 0) { for(int i=0; i<10; ++i) { // loop for acquire 10 bytes dataIN[i] =Serial.read(); // Save data in to dataIN array // Serial.println(dataIN[i], HEX); // Test:Prints data to the serial port (print as an ASCII-encoded hexadecimal) } if((0xAA ==dataIN[0]) &&(0xC0 ==dataIN[1]) &&(0xAB ==dataIN[9])) { // check if array contains dataIN[0]=0xAA and dataIN[1]=0xC0 and dataIN[1]=0xAB uint8_t cksum =0; for(int i=2; i<=7; ++i) { cksum +=dataIN[i]; // Calculation of check-sum } //Serial.print("check-sum:"); // Test:Serial monitor //Serial.println(cksum, HEX); if(cksum ==dataIN[8]) { digitalWrite(LED_BUILTIN, HIGH); // Turn the LED on (HIGH is the voltage level) uint8_t pm25Lo =dataIN[2]; // PM2.5 low byte uint8_t pm25Hi =dataIN[3]; // PM2.5 high byte uint8_t pm10Lo =dataIN[4]; // PM10 low byte uint8_t pm10Hi =dataIN[5]; // PM10 high byte pm25 =((pm25Hi * 256.0) + pm25Lo)/10.0; // Calculation of PM2.5 value pm10 =((pm10Hi * 256.0) + pm10Lo)/10.0; // Calculation of PM10 value Serial.print("PM2.5:"); // Serial monitor Serial.print(pm25); Serial.println(" ug/m3"); Serial.print("PM10:"); Serial.print(pm10); Serial.println(" ug/m3"); } Serial.println("-----------------"); } Serial.flush(); } // ########################################################################### // LEDs // ########################################################################### if((pm10 <=25) &&((h>=40) &&(h <=60))) // Normal – Particulate matter concentrations from 0 to 25 µg/m3 and humidity between 40% and 60%; { digitalWrite(ledGreen, LOW); // Turn the LED OFF digitalWrite(ledYellow, LOW); // Turn the LED OFF digitalWrite(ledRed, LOW); // Turn the LED OFF } else if((pm10 <=25) &&((h <40) || (h> 60))) // Low - Particulate matter concentrations from 0 to 25 µg/m3 and humidity <40% o> 60%; { digitalWrite(ledGreen, HIGH); // Turn the LED ON digitalWrite(ledYellow, LOW); // Turn the LED OFF digitalWrite(ledRed, LOW); // Turn the LED OFF } else if(((pm10> 25) &&(pm10 <=50)) &&((h>=40) &&(h <=60))) // Low - Particulate matter concentrations from 26 to 50 µg/m3 and humidity between 40% and 60%; { digitalWrite(ledGreen, HIGH); // Turn the LED ON digitalWrite(ledYellow, LOW); // Turn the LED OFF digitalWrite(ledRed, LOW); // Turn the LED OFF } else if(((pm10> 25) &&(pm10 <=50)) &&((h <40) || (h> 60))) // Warning - Particulate matter concentrations from 26 to 50 µg/m3 and humidity <40% o> 60%; { digitalWrite(ledGreen, HIGH); // Turn the LED ON digitalWrite(ledYellow, HIGH); // Turn the LED ON digitalWrite(ledRed, LOW); // Turn the LED OFF } else if((pm10> 50) &&((h>=40) &&(h <=60))) // Warning - Particulate matter concentrations> 51 µg/m3 and humidity between 40% and 60%; { digitalWrite(ledGreen, HIGH); // Turn the LED ON digitalWrite(ledYellow, HIGH); // Turn the LED ON digitalWrite(ledRed, LOW); // Turn the LED OFF } else // Alarm - Particulate matter concentrations> 51 µg/m3 and humidity <40% or> 60%. { digitalWrite(ledGreen, HIGH); // Turn the LED ON digitalWrite(ledYellow, HIGH); // Turn the LED ON digitalWrite(ledRed, HIGH); // Turn the LED ON } // ########################################################################### // Display // ########################################################################### if(0 ==switchDisplay) { display.clearDisplay(); display.setTextColor(SSD1306_WHITE); display.setCursor(0,0); // Set the cursor position (Width, Height) if(pm10> 50) // Visualize the word "Alarm" on display { display.print("Alarm!!!"); } else // Visualize the PM10 value on display { display.print("PM10:"); display.println(pm10); } display.print(" HR%:"); // Visualize the humidity value on display display.println(h); display.display(); switchDisplay =1; } else { display.clearDisplay(); display.setTextColor(SSD1306_BLACK, SSD1306_WHITE); // Draw 'inverse' text display.setCursor(0,0); // Set the cursor position (Width, Height) display.print("PM25:"); // Visualize the PM2.5 value on display display.println(pm25); display.print("T[C]:"); // Visualize the temperature value on display display.println(t); display.display(); switchDisplay =0; } delay(500); // Delay of 500ms digitalWrite(LED_BUILTIN, LOW); // TEST:turn the LED_BUILTIN OFF delay(1500); // Delay of 1500ms}
Piezas y carcasas personalizadas
Case - upper part
File of the 3D upper part of orange PLA casehttps://sketchfab.com/3d-models/case-upper-part-c6843c6613f84805a39e1a9384dd5e56
Case - lower part
File of the 3D lower part of orange PLA casehttps://sketchfab.com/3d-models/case-lower-part-covid-19-and-pm10-levels-9d4d2ef93e644065b627c5562c5cde1f
Esquemas
Electrical schematic of COVID-19 and PM10 levels!Proceso de manufactura
- Envases de plástico para alimentos y sostenibilidad durante COVID-19
- Cómo COVID-19 cambió (y no cambió) la automatización en plásticos
- COVID-19 y la muerte de la economía posterior a la Segunda Guerra Mundial
- Cómo COVID-19 está afectando a Blockchain y Criptomonedas
- COVID-19 y el fin de la RFP anual del remitente
- Wayfair y COVID-19:El impacto en los vendedores exentos de impuestos
- Reentrenamiento y reentrenamiento a raíz de COVID-19
- Información y recursos sobre el coronavirus (COVID-19)
- Nuevo estudio:impacto del COVID-19 en el futuro del trabajo y la automatización
- El material detecta el COVID-19 de forma rápida y precisa
- La automatización y el impacto del COVID-19 en la fabricación