Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

COVID-19- und PM10-Level!

Komponenten und Verbrauchsmaterialien

Arduino Nano R3
× 1
SDS018
http://inovafitness.com/en/a/chanpinzhongxin/97.html
× 1
Adafruit DHT22 Temperatur-Feuchtigkeitssensor + Extras
Hinweis:Der Pullup-Widerstand und der Kondensator befinden sich auf dem Modul.
× 1
OLED-Display - I2C - SSD1306
× 1
Broadcom LED Grün
× 1
Broadcom LED Gelb
× 1
Broadcom LED Rot
× 1
Kondensator 100 nF
Optional:Kondensator für DHT22.
× 1
Durchgangslochwiderstand, 4,7 kOhm
Optional:Widerstand für DHT22.
× 1
Powerbank
Siehe Beschreibung.
× 1
Durchgangslochwiderstand, 390 Ohm
Widerstände für LEDs.
× 3
Maschinenschraube, M3x16
Gehäuseschrauben.
× 4
Maschinenschraube, M3x6
SDS018-Schraube.
× 1
LAMPENBUCHSE, LUMEX 3MM LEDs
Optional:LED-Montagehardware.
× 3
Female Jumper für Draht
× 3
Schrumpfschlauch
× 1
Stiftleiste (2-polig)
× 1
Generischer Pullover (0.1")
× 1

Notwendige Werkzeuge und Maschinen

Lötkolben (generisch)
Lötdraht, bleifrei
3D-Drucker (generisch)
Heißklebepistole (generisch)
Bohrschrauber / Akkuschrauber

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Zusammenfassung

Experimentelle Studien würden die Möglichkeit belegen, dass Feinstaub als „Träger“ für die Verbreitung der Virusinfektion von COVID-19 fungieren kann.

Das bedeutet, dass das Virus durch in der Luft schwebende Feinstaub über längere Distanzen transportiert werden könnte und in winzigen Partikeln über Stunden, Tage oder sogar Wochen lebensfähig bleiben könnte. Luftverschmutzungspartikel könnten also dazu beitragen, dass sich das Coronavirus weiter in der Luft verbreitet und die Zahl der Infizierten erhöht.

In In Norditalien hat der Lockdown keine nennenswerte Feinstaubreduktion bewirkt, da Feinstaub neben Fabriken und Autos in großen Mengen auch von Intensivtierhaltungsbetrieben anfällt. Selbst wenn während des Lockdowns Fabriken geschlossen wurden und keine Autos zirkulierten, blieb die Feinstaubkonzentration in der Lombardei (Italien) auf jeden Fall hoch, da auf ihrem Territorium intensive Viehzucht betrieben wurde, die weiterhin Dung und damit Schadstoffe produzierte die Luft und unter anderem Feinstaub.

Wissenschaftler und Forscher vermuten, dass eine höhere Partikelverschmutzung die höheren Infektionsraten in Teilen Norditaliens erklären könnte.

Einführung

Vor ein paar Wochen habe ich eine italienische Fernsehsendung namens „Report“ gesehen. Es handelt sich um ein investigatives Programm, das auf Kanal 3 (RAI 3) vom italienischen Fernsehen ausgestrahlt wird.

Ein interessanter Artikel hat meine Aufmerksamkeit erregt… Es ging um Umweltverschmutzung und insbesondere um eine Art von Umweltverschmutzung, die durch intensive Tierhaltung verursacht wird. (Klicken Sie hier, um den entsprechenden Teil zu sehen:von Minute 27:25 bis Minute 56:00).

Unter Intensivtierhaltung versteht man ein landwirtschaftliches System, in dem eine große Anzahl von Tieren (wie Kühe, Schweine, Puten oder Hühner) auf relativ kleinem Raum zusammen gehalten werden. Ziel ist es, große Mengen an Fleisch, Eiern oder Milch zu möglichst geringen Kosten zu produzieren. Sie werden auch als „Fabrikbetriebe“ bezeichnet.

Tiere, die auf überfüllten Farmen im Fabrikstil aufgezogen werden, erzeugen eine große Menge an tierischen Abfällen wie Urin und Dung. Gülle wird im Allgemeinen in riesigen Freiluftteichen gelagert, die oft so groß wie mehrere Fußballfelder sind, die anfällig für Leckagen und Verschüttungen sind, den Boden verschmutzen und die Wasservorräte kontaminieren. Auch tierische Abfälle geben schädliche Gase in die Atmosphäre ab (wie Ammoniak, Endotoxine, Schwefelwasserstoff und Methan) und setzen große Mengen an Feinstaub frei (PM10 und PM2,5; PM10 ist die Abkürzung für „Partikel mit Durchmesser ≤ 10 µm“, PM2,5 ist die Abkürzung für „Partikel mit Durchmesser ≤ 2,5 µm“), die Umweltprobleme verursachen. Feinstaub enthält mikroskopisch kleine Feststoffe oder Flüssigkeitströpfchen, die so klein sind, dass sie eingeatmet werden können und ernsthafte Gesundheitsprobleme verursachen können.

Wenn die Senkgruben ihre Kapazitäten erreicht haben, sprühen die Bauern den unbehandelten Mist als Dünger auf die umliegenden Felder, die noch mehr dieser Schadstoffe in die Luft bringen.

Unbehandelter Abfall belastet die Luft mit Gerüchen (der Gestank kann unerträglich sein) und führt zu Gesundheitsproblemen, die die Lebensqualität von Arbeitern, Menschen in der Nähe und angrenzenden Gemeinden sowie den Wert von Immobilien erheblich beeinträchtigen. Studien haben gezeigt, dass Menschen, die in der Nähe von Intensivtierhaltungsbetrieben leben, ein viel größeres Risiko haben, Atemwegserkrankungen wie Asthma und chronische Bronchitis zu entwickeln.

In Italien befinden sich die intensivsten Viehzuchtbetriebe im Norden des Landes. Die Lombardei ist eine der Regionen mit der höchsten Dichte an Intensivtierhaltungen; Folglich ist die Menge an Exkrementen und tierischen Abfällen, die in Tierhaltungsanlagen anfallen, sehr hoch und erzeugt große Mengen an Gasen und Feinstaub.

Es sei darauf hingewiesen, dass in der Lombardei 85% des in der Atmosphäre verteilten Ammoniaks durch Dung produziert wird:Es scheint, dass landwirtschaftliche Betriebe die gleiche Umweltverschmutzung wie Autos verursachen.

Eine von Forschern mehrerer italienischer Universitäten durchgeführte und im vergangenen März veröffentlichte Studie mit dem Titel „Evaluation of the potential Relationship between Particulate Matter (PM) Polling and COVID-19-Infektionsausbreitung in Italien “ (unter folgendem Link kann das Positionspapier heruntergeladen werden:https://www.simaonlus.it/?page_id=694 , direkter Link zum englischen pdf http://www.simaonlus.it/wpsima/wp- content/uploads/2020/03/COVID_19_position-paper_GER.pdf - Ich empfehle es zu lesen!) spricht über einen möglichen Zusammenhang zwischen der Feinstaubkonzentration und der Anzahl der mit COVID-19 infizierten Personen (wie Sie in der folgenden Grafik sehen können) .

Forscher haben die folgenden Daten gesammelt und analysiert:

  • PM10-Tageskonzentrationswerte (Daten werden von der regionalen Umweltschutzbehörde - ARPA - bereitgestellt und in ganz Italien gesammelt);
  • Die täglichen Überschreitungen des PM10-Grenzwerts;
  • Die Zahl der COVID-19-infizierten Personen für jede ausgewählte Provinz, die vom Zivilschutz mitgeteilt und täglich aktualisiert wird.

und haben einen signifikanten Zusammenhang zwischen den täglichen PM10-Überschreitungen und der Ausbreitung der COVID-19-Infektion während des Zeitraffers der Studie (10.-29. Februar 2020) mit einer hohen Konzentration von Coronavirus-Fällen festgestellt im Norden Italien, insbesondere in der Poebene und insbesondere in der Lombardei, während in Süditalien die Verbreitung und Letalität des Virus im Vergleich zu den nördlichen Regionen deutlich geringer war.

In diesem Positionspapier ist zu lesen „Die Hypothese eines direkten Zusammenhangs zwischen COVID-19-Fällen und PM10-Werten wird durch den Beweis bestätigt, dass die Konzentration von COVID-19-Ausbrüchen in der Poebene gemeldet wurde [im Norden Italien] war höher als in anderen Teilen Italiens “ (wie Sie in der folgenden Abbildung sehen können, die die Überschreitungen der PM10-Grenzwerte zeigt, die in Italien im Zeitraum vom 10. Februar bis 29. Februar registriert wurden und wo festgestellt werden kann, dass die Poebene das am stärksten verschmutzte Gebiet Italiens ist).

Bemerkenswert ist, dass sich die meisten Coronavirus-Fälle in Italien in der Lombardei befinden, wo die Konzentration der Intensivtierhaltung sehr hoch ist und somit die Feinstaubproduktion enorm ist.

Es sollte beachtet werden, dass dieses Phänomen auch während des Lockdowns anhielt, als Fabriken vollständig geschlossen waren und keine Autos im Umlauf waren.

Laut dieser Studie würde in den südlichen Regionen Italiens (weniger verschmutzt) das vorherrschende Muster der Virusübertragung durch den Kontakt zwischen Menschen erfolgen (in Übereinstimmung mit Epidemiemodellen, die auf dem typischen Übertragungsmodus "Person-zu-Mensch-Kontakt") basieren. wohingegen in den Regionen Norditaliens (die stärker verschmutzt sind) die Infektion auf andere Weise verbreitet würde, d. h. durch einen Trägerstoff (repräsentiert durch in der Atmosphäre schwebende Feinstaub).

Die folgenden Infektionsausweitungskurven verdeutlichen die Anomalie Norditaliens bei der Verbreitung von COVID-19-Infektionen im Vergleich zu Mittel- und Süditalien.

Auf der Grundlage der gesammelten Daten und beobachteten Zusammenhänge schließen die Forscher, dass es vernünftig ist anzunehmen, dass im Zeitraum vom 10. bis 29. Februar 2020 hohe PM10-Konzentrationen, die in bestimmten norditalienischen Regionen registriert wurden, einen Träger und eine Verstärkungswirkung auf die virulente Ausbreitung der COVID-19-Epidemie, die die Verbreitung des COVID-19 unter der exponierten Bevölkerung fördert, ein Phänomen, das in anderen italienischen Regionen, die im gleichen Zeitraum von der Kontamination betroffen waren, nicht beobachtet wurde.

Andere Studien haben gezeigt, dass PM als Überträger für Viren fungieren würde. Tatsächlich können sich Viren an Feinstaub anheften, deren kleine Partikel mit Luftströmungen weite Strecken zurücklegen und Stunden, Tage oder sogar Wochen in der Atmosphäre verbleiben können.

Feinstaub würde auch ein Substrat darstellen, das es Viren ermöglicht, für einige Zeit (Stunden oder Tage) in der Atmosphäre aktiv zu bleiben. Umweltfaktoren spielen eine wichtige Rolle bei der Aktivierung und Persistenz von Viren in der Atmosphäre:

  • Hohe Temperaturen und Sonneneinstrahlung beschleunigen die Inaktivität;
  • Hohe relative Luftfeuchtigkeit kann die Diffusionsrate fördern.

Eine Untersuchung hat gezeigt, dass das Überleben von Viren auf Oberflächen abnimmt, wenn die relative Luftfeuchtigkeit bei etwa 50 % gehalten wird, während Viren aktiv bleiben, wenn die relative Luftfeuchtigkeit unter 40 % und über 60 % liegt.

Eine andere Studie der Yale University hat gezeigt, wie niedrige Luftfeuchtigkeit es infizierten Partikeln ermöglicht, sich besser auszubreiten und länger zu überleben (klicken Sie hier, um den Artikel anzuzeigen).

Meine Lösung

Auf der Grundlage dieser Überlegungen habe ich mir überlegt, ein replizierbares, kostengünstiges und einfach zu bedienendes Gerät zu entwickeln, das die PM10-Konzentration, die Temperatur und die relative Luftfeuchtigkeit (Umweltfaktoren, die an der Ausbreitung der Virusinfektion beteiligt sind) messen kann, um die Menschen zu warnen, wenn diese Werte sind zu hoch und potenziell gesundheitsgefährdend, sodass sie wählen können, zu Hause zu bleiben und nicht auszugehen oder, wenn sie draußen sind, nach Hause zu gehen oder eine Maske zu tragen, selbst wenn die Entfernungen zwischen den Menschen viel größer als eins sind Meter.

Das Gerät besteht aus einem PM10-Sensor, einem Temperatur- und relativen Feuchtigkeitssensor, einem Display und drei LEDs, die alle von einem Arduino Nano gesteuert werden. Die Sensordaten werden auf dem Display angezeigt und die LEDs zeigen die Luftsituation an.

Ich habe vier verschiedene Situationen identifiziert:

1. Normal – Feinstaubkonzentrationen von 0 bis 25 µg/m3 und Feuchtigkeit zwischen 40 % und 60 %;

2. Niedrig - Feinstaubkonzentrationen von 0 bis 25 µg/m3 und Feuchtigkeit <40 % oder> 60 %;

3. Niedrig - Feinstaubkonzentrationen von 26 bis 50 µg/m3 und Feuchtigkeit zwischen 40 % und 60 %;

4. Warnung - Feinstaubkonzentrationen von 26 bis 50 µg/m3 und Feuchtigkeit <40 % oder> 60 %;

5. Warnung - Feinstaubkonzentrationen> 51 µg/m3 und Feuchtigkeit zwischen 40 % und 60 %;

6. Alarm - Feinstaubkonzentrationen> 51 µg/m3 und Luftfeuchtigkeit <40 % bzw.> 60 %.

Zugehörige LEDs:

  • Normal:LEDs AUS;
  • Niedrig:Grüne LED AN;
  • Warnung:Grüne und gelbe LED AN;
  • Alarm:Grüne, gelbe und rote LEDs AN.

SDS018 - PM10-Sensor

Das SDS018 kann die Partikelkonzentration zwischen 0,3 und 10 μm in der Luft erreichen, indem es das Prinzip der Laserstreuung verwendet. Es ist mit seinem digitalen Ausgang und dem eingebauten Lüfter stabil und zuverlässig.

  • Genau und zuverlässig:Lasererkennung, stabil, gute Konsistenz;
  • Schnelle Reaktion:Die Reaktionszeit beträgt weniger als 10 Sekunden, wenn sich die Szene ändert;
  • Einfache Integration:UART-Ausgang (oder IO-Ausgang kann angepasst werden), Lüfter eingebaut;
  • Hohe Auflösung:Auflösung von 0,3μg/m3;
  • Zertifizierung:Produkte haben die CE/FCC/RoHS-Zertifizierung bestanden.

SDS018 Sensor-Pinbelegung:

  • 1 - NC:Keine Verbindung;
  • 2 - 1um:PWM-Ausgang;
  • 3 - 5V:Stromversorgung;
  • 4 - 2.5um:PWM-Ausgang;
  • 5 - GND:Masse, mit Minuspol verbinden;
  • 6 - R:RX von UART (TTL);
  • 7 - T:TX von UART (TTL).

Verbindung des SDS018-Sensors mit Arduino Nano

  • Der 5V (3) Pin des SDS018 Sensors ist mit dem 5V Pin des Arduino Nano verbunden;
  • Der GND (5)-Pin des SDS018-Sensors ist mit dem GND-Pin des Arduino Nano verbunden;
  • Der T (7)-Pin des SDS018-Sensors ist mit dem RX-Pin des Arduino Nano verbunden;

DHT22-Sensor

DHT22 ist ein digitaler Temperatur- und relativer Feuchtigkeitssensor. Die Hauptmerkmale sind:

  • 3 bis 5 V Strom und E/A;
  • Maximaler Stromverbrauch von 2,5 mA während der Konvertierung (während der Datenanforderung);
  • 0-100 % Feuchtigkeitsmesswerte mit einer Genauigkeit von 2 – 5 %;
  • -40 bis 80 °C Temperaturmesswerte ±0,5 °C Genauigkeit;
  • Abtastrate von 0,5 Hz (einmal alle 2 Sekunden).

DHT22-Sensor-Pinbelegung:

  • VDD:Stromversorgung;
  • DATEN:Signaldatenausgabe;
  • NC:Nicht verbunden;
  • GND:Masse, mit Minuspol verbinden.

Anschluss des DHT22-Sensors an Arduino Nano

  • Der VDD-Pin des DHT22-Sensors ist mit dem 5V-Pin des Arduino Nano verbunden;
  • Der GND-Pin des DHT22-Sensors ist mit dem GND-Pin des Arduino Nano verbunden;
  • Zwischen den VDD- und GND-Pins des DHT22-Sensors habe ich einen 100nF-Kondensator eingefügt;
  • Zwischen den DATA- und VCC-Pins des DHT22-Sensors habe ich einen 4,7k-Pull-up-Widerstand eingefügt;
  • Der DATA-Pin des DHT22-Sensors ist mit dem D2-Pin des Arduino Nano verbunden.

Arduino-IDE

Ich habe die DHT-Sensorbibliothek von Adafruit installiert - Version 1.3.10

Punktmatrix-OLED-Display

  • VCC:3,3-5V;
  • Auflösung:128 x 32 Pixel;
  • Schwarzer Hintergrund mit weißen Zeichen;
  • Treiber:SSD1306;
  • Schnittstelle:I2C.

OLED-I2C-Display-Pinbelegung:

  • SDA:serielle I2C-Daten;
  • SCL:Serielle I2C-Uhr;
  • VCC:Stromversorgung;
  • GND:Masse, mit Minuspol verbunden.

Verbindung des OLED-I2C-Displays mit Arduino Nano

  • Der VCC-Pin des Displays ist mit dem 5V-Pin von Arduino Nano verbunden;
  • Der GND-Pin des Displays ist mit dem GND-Pin des Arduino Nano verbunden;
  • Der SCL-Pin des Displays ist mit dem A5-Pin von Arduino Nano verbunden;
  • Der SDA-Pin des Displays ist mit dem A4-Pin von Arduino Nano verbunden.

Arduino-IDE

Ich habe die Adafruit SSD1306-Bibliothek von Adafruit installiert - Version 2.2.1

LEDs Anschlüsse

Ich habe drei 3mm LEDs verwendet:rot, grün und gelb.

  • Die Anode der roten LED ist mit dem D3-Pin von Arduino Nano verbunden;
  • Die Anode der grünen LED ist mit dem D4-Pin von Arduino Nano verbunden;
  • Die Anode der gelben LED ist mit dem D5-Pin von Arduino Nano verbunden;
  • Ich habe einen 390-Ohm-Widerstand in Reihe mit der Kathode jeder LED gelötet und den anderen Pin des Widerstands mit GND von Arduino Nano verbunden.

Arduino nano - Hardware-Modifikation

Um die serielle Ausgabe des SDS018 zu lesen, habe ich Arduino Nano modifiziert.

Den in der folgenden Abbildung mit dem roten Pfeil gekennzeichneten SMD-Widerstand habe ich entfernt.

Ich habe den SMD-Widerstand vertikal gelötet und dann zwei Drähte an den Widerstand gelötet. Ich habe eine Stiftleiste an das Ende der Drähte gelötet.

Den Jumper auf der Stiftleiste habe ich erst gesteckt, wenn ich den Arduino Nano programmiert habe. Auf diese Weise kann der Arduino Nano, wenn der Jumper entfernt wird, die Daten vom SDS018-Sensor lesen und gleichzeitig die Daten an den seriellen Arduino IDE-Monitor senden.

Oder einfacher gesagt, nach der Programmierung des Arduino Nano-Boards können Sie den Widerstand dauerhaft entfernen, aber auf diese Weise ist es nicht mehr möglich, das Arduino Nano-Board neu zu programmieren.

Netzteil

Der Arduino Nano kann auf zwei verschiedene Arten mit Strom versorgt werden:

  • USB;
  • Vin-Pin (und GND-Pin):7-12V.

Ich habe das Board über USB über eine Powerbank mit Strom versorgt.

Gehäuse und Zusammenbau

I have designed and printed in 3D an orange PLA case in order to fix the sensors, the display, LEDs and Arduino Nano. The case consists of two parts:the lower part, where are fixed the Arduino Nano and the SDS018; and the upper part where are fixed the DHT22, the display and the LEDs. In the lower part there is an opening for the Mini-B USB cable. On the upper part there are three holes from which the three LEDs come out. If you want, you can use the LED Mounting Hardware for fixing the LEDs (just enlarging the holes up to 5mm).

Here attached you will find the two files that you need to print in 3D the two parts of the case.

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!


Code

  • 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!")); Rückkehr; } 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; } Verzögerung (500); // Delay of 500ms digitalWrite(LED_BUILTIN, LOW); // TEST:turn the LED_BUILTIN OFF delay(1500); // Delay of 1500ms}

Custom parts and enclosures

Case - upper part
File of the 3D upper part of orange PLA case

https://sketchfab.com/3d-models/case-upper-part-c6843c6613f84805a39e1a9384dd5e56

Case - lower part
File of the 3D lower part of orange PLA case

https://sketchfab.com/3d-models/case-lower-part-covid-19-and-pm10-levels-9d4d2ef93e644065b627c5562c5cde1f

Schaltpläne

Electrical schematic of COVID-19 and PM10 levels!

Herstellungsprozess

  1. Lebensmittelverpackungen aus Kunststoff und Nachhaltigkeit während COVID-19
  2. Wie COVID-19 die Automatisierung bei Kunststoffen verändert hat (und nicht)
  3. COVID-19 und der Tod der Wirtschaft nach dem Zweiten Weltkrieg
  4. Wie sich COVID-19 auf Blockchain und Kryptowährung auswirkt
  5. COVID-19 und das Ende der jährlichen Versender-RFP
  6. Wayfair und COVID-19:Die Auswirkungen auf steuerbefreite Verkäufer
  7. Umschulung und Umschulung im Zuge von COVID-19
  8. Informationen und Ressourcen zum Coronavirus (COVID-19)
  9. Neue Studie:Auswirkungen von COVID-19 auf die Zukunft von Arbeit und Automatisierung
  10. Material erkennt COVID-19 schnell und genau