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

DIY Luftqualitätsmonitor – PM2.5, CO2, VOC, Ozon, Temp &Hum Arduino Meter

Haben Sie sich schon einmal gefragt, wie gut die Luft ist, die Sie atmen, oder warum Sie sich manchmal im Büro müde oder morgens müde fühlen, obwohl Sie die ganze Nacht geschlafen haben? Schlechte Luftqualität kann zu vielen negativen Auswirkungen auf die Gesundheit führen sowie Müdigkeit, Kopfschmerzen, Konzentrationsverlust, erhöhte Herzfrequenz und so weiter verursachen. Die Überwachung der Luftqualität kann tatsächlich wichtiger sein, als Sie denken. In diesem Tutorial lernen wir also, wie wir unseren eigenen Luftqualitätsmonitor bauen, der PM2,5, CO2, VOC, Ozon sowie Temperatur und Luftfeuchtigkeit messen kann.

Sie können sich das folgende Video ansehen oder das schriftliche Tutorial unten lesen.

Übersicht

Ich werde erklären, wie sich jeder Luftqualitätsparameter auf uns auswirkt und wie die Sensoren funktionieren. Das Gehirn dieses Projekts ist ein Arduino Pro Mini-Board, das in Kombination mit einem 2,8-Zoll-Nextion-Touchdisplay eine anständige Benutzeroberfläche bietet.

Wir können die Messungen aller Sensoren in Echtzeit sehen, und wenn wir auf einen bestimmten Sensor klicken, erhalten wir Werte der letzten 24 Stunden von diesem Sensor. Es gibt auch eine Dimmfunktion, mit der wir die Helligkeit des Displays verringern oder sogar ganz ausschalten können. Das ist zum Beispiel praktisch, wenn wir nachts die Luftqualität in unserem Schlafzimmer verfolgen möchten.

Wir können den Bildschirm für die Nacht ausschalten und am nächsten Tag die Werte von jedem Sensor einzeln überprüfen.

Trotzdem werde ich Sie jetzt durch den gesamten Prozess des Aufbaus führen und erklären, wie alles funktioniert. Am Ende dieses Videos können Sie selbst einen bauen. Fangen wir also an.

Der PM2.5-Sensor – PMS5003

Dieses Gerät hat vier Hauptkomponenten oder Luftqualitätssensoren. Wir verwenden den PMS5003-Sensor zur Messung von PM2,5 oder Feinstaub in der Luft mit einem Durchmesser von etwa 2,5 Mikrometern. Feinstaub ist die schädlichste Form der Luftverschmutzung, da er tief in die Lunge, den Blutkreislauf und das Gehirn eindringen und viele Gesundheitsprobleme verursachen kann.

Dieser Sensor arbeitet nach dem Prinzip der Laserstreuung. Der Sensor verfügt über einen Lüfter, der einen kontrollierten Luftstrom erzeugt, sodass die Umgebungspartikel einen fokussierten Laserstrahl passieren.

Die Partikel verursachen Lichtstreuung, die von einer Fotodiode erfasst und dann mit Hilfe ihres Mikroprozessors in eine PM-Konzentration umgewandelt wird. Ich fand die Ergebnisse dieses Sensors ziemlich zuverlässig und neben PM2,5 kann er auch PM1- und PM10-Werte ausgeben.

Der CO2-Sensor – MH-Z19

Als nächstes verwenden wir den Sensor MH-Z19 zur Messung von CO2 oder Kohlendioxid. Da Menschen beim Atmen Kohlendioxid abgeben, kann die CO2-Konzentration in Innenräumen leicht sehr hoch werden. CO2 ist nicht nur in hohen Konzentrationen gefährlich, sondern kann auch Schläfrigkeit und Müdigkeit verursachen, unsere Produktivität verringern und so weiter.

Der Sensor verwendet das nichtdispersive Infrarotprinzip zur Messung von CO2 in der Luft. Eine Infrarotquelle lenkt Licht durch ein Rohr, das mit der zu messenden Luft gefüllt ist. Auf der anderen Seite der Infrarotquelle befinden sich ein optischer Filter und ein IR-Detektor, der die Menge des durchgelassenen IR-Lichts misst.

Die CO2-Gasmoleküle, die in der von uns gemessenen Luft vorhanden sind, absorbieren ein bestimmtes Band von IR-Licht, während sie einige Wellenlängen durchlassen. Der CO2-Gehalt wird also anhand der Differenz zwischen der emittierten Lichtmenge und der vom Detektor empfangenen IR-Lichtmenge berechnet. Die Ergebnisse dieses Sensors sind auch ziemlich genau.

Die VOC- und Ozonsensoren – MP503 und MQ-131

Zur Messung von VOC und Ozon verwenden wir die Gassensoren MP503 und MQ131. Dies sind beheizte Metalloxidsensoren, deren Arbeitsprinzip auf der Erkennung von Widerstandsänderungen bei Vorhandensein von Zielgasen basiert.

Ein bestimmter elektrischer Strom fließt durch ein Metallsubstrat und der Widerstand ändert sich entsprechend der vorhandenen Gasmenge.

Das Zielgas des MQ131-Sensors ist einfach Ozon, das in einem normalen Haushalt durch Produkte wie bestimmte Luftreiniger, Gesichtsdampfer, keimtötende Lampen, die ultraviolettes Licht erzeugen, usw. erzeugt werden kann.

Andererseits hat der Sensor MP503 mehrere Zielgase, darunter Alkohol, Rauch, Isobutan, Methanal und andere. VOC steht für Volatile Organic Compounds und dies sind organische Emissionen von Produkten, die wir täglich verwenden, wie Waschmittel, Reinigungsmittel, Lufterfrischer, Farben, Make-up und so weiter. VOCs können viele negative Auswirkungen auf die Gesundheit haben, darunter Kopfschmerzen, Augenreizungen, Hautreaktionen, Schwindel und so weiter.

DIY Arduino Air Quality Monitor – Schaltplan

Trotzdem schauen wir uns jetzt den Schaltplan an und erklären, wie alles angeschlossen werden muss.

Sie können die für diesen Arduino-Luftqualitätsmonitor benötigten Komponenten über die folgenden Links beziehen:

  • PMS5003 PM-Sensor …………………….
  • CO2-Sensor MH-Z19 ……………………..
  • MQ-131 Ozonsensor …………………..
  • MP503 VOC-Sensor ……………………….
  • DHT22 Temperatur- und Feuchtigkeitssensor………….
  • Weiter 2,8″ Display ……………………..
  • DS3231 RTC ………………………………….
  • Arduino Pro Mini………………..…….…..
  • Distanz- / Distanzmuttern M3 ……………
  • Mini-USB-Anschluss …………………….
  • Pin-Header ………………………………….
  • Schalter mit 2 Positionen …………………………
  • Kondensatorwerte:0,1 uF Keramik und 10 uF Elektrolyt
  • Transistoren – 2N3904
  • Wechseln

Offenlegung:Dies sind Affiliate-Links. Als Amazon-Partner verdiene ich an qualifizierten Käufen.

Richtige Widerstandswerte:  R1 =1 K, R2 =2 K, R6 =100 K oder 1 M, R7 =1 K

Der PM2.5-Sensor kommuniziert mit dem Arduino über eine serielle Schnittstelle. Es funktioniert bei 5 V, aber der Empfangs-RX-Logikpegel arbeitet bei 3,3 V, also brauchen wir dafür einen Spannungsteiler. Der CO2-Sensor und das Nextion-Display verwenden ebenfalls eine serielle Kommunikation. Zum Auslesen der VOC- und Ozonsensoren verwenden wir analoge Eingänge des Arduino, während der Temperatur- und Feuchtigkeitssensor DHT22 zu diesem Zweck einen digitalen Pin verwendet.

Die beiden Transistoren werden zum Aktivieren der Sensorheizungen verwendet. Wir verwenden auch ein Echtzeituhrmodul, um die Zeit beim Speichern der Sensorwerte zu verfolgen, und es verwendet die I2C-Kommunikation. Das gesamte Gerät wird über einen Mini-USB-Anschluss mit 5 V versorgt.

Siehe auch: Die 8 besten Arduino-Starterkits [Aktualisierung 2021]

Wenn wir jetzt versuchen, alles miteinander zu verbinden, bekommen wir wegen der vielen Verbindungen ein ziemliches Durcheinander.

Wir brauchen also definitiv eine Leiterplatte für dieses Projekt.

Herstellung einer Leiterplatte für den Arduino Air Quality Monitor

Um eine Leiterplatte für dieses Projekt zu erstellen, werde ich Altium Designer verwenden, die eigentlich der Sponsor dieses Videos sind.

Altium Designer steht für jahrzehntelange Innovation und Entwicklung, die der Schaffung einer wirklich einheitlichen Designumgebung gewidmet sind. Mit der perfekten Balance zwischen Leistung und Benutzerfreundlichkeit hat sich Altium Designer seine Position als die am weitesten verbreitete PCB-Designlösung auf dem Markt gesichert.

Jetzt zeige ich Ihnen, wie ich die Leiterplatte für dieses Projekt mit Altium Designer entworfen habe. Ich begann mit der Erstellung des Schaltplans für das Projekt. Altium Designer verfügt über integrierte Bibliotheken mit grundlegenden elektronischen Komponenten, aber noch besser ist, dass Sie nach Komponenten direkt von Herstellern suchen können, was die Beschaffung von Komponenten für Ihr Projekt sehr bequem macht.

Als Beispiel habe ich den Mini-USB-Anschluss mit dieser Funktion zur Suche nach Herstellerteilen gefunden. Von hier aus können Sie auch problemlos auf Daten zu den Komponenten zugreifen, wie 3D-Modelle, Grundrisse, Abmessungen usw.

Sie können auch Ihre eigenen Komponentenbibliotheken erstellen. Ich habe die meisten Komponenten für dieses Projekt selbst erstellt, da ich für jedes Teil meine eigenen 3D-Footprints erstellen wollte, um am Ende die gesamte Leiterplatte in 3D zu erhalten. Zum Erstellen von 3D-Modellen für die PCB-Footprints können Sie jede CAD-Software verwenden, die Dateien als .STEP-Dateien speichern und in Altium Designer importieren.

Nachdem ich den Schaltplan fertiggestellt hatte, generierte ich die Leiterplatte. Ich habe die Komponenten so angeordnet, wie ich es wollte, und mit nur einem einfachen Klick mit der Auto-Routing-Funktion hat die Software alle Traces automatisch generiert.

Bei Bedarf können wir diese manuell erstellen oder anpassen. Außerdem können wir Designregeln festlegen, wie das automatische Routing die Leiterbahnen erstellt, unterschiedliche Breiten für jedes Netz festlegen und so weiter. An diesem Punkt sehen wir auch die Leiterplatte in 3D und exportieren eine 3D-Datei der gesamten Leiterplattenbaugruppe, die später zum Entwerfen eines Gehäuses dafür verwendet wird.

Trotzdem möchte ich Altium für das Sponsoring solcher Bildungsinhalte danken. Wenn Sie mehr über diese Software erfahren und sie auch ausprobieren möchten, können Sie sich die folgenden Links ansehen. Sie können auch den webbasierten Altium 365-Viewer für Projektvorschauen und Dateien ausprobieren.

Kostenlose Testversion von Altium Designer – https://www.altium.com/yt/howtomechatronics
Altium 365 Viewer:https://www.altium.com/viewer

Hier sind die Projektdateien von Altium Designer:

Altium Designer-Dateien einschließlich der Projektdatei, Bibliotheken und .STEP-Dateien der 3D-Modelle der Elektronikkomponenten:

PCB-Gerber-Datei:

Ok, als ich das PCB fertiggestellt hatte, generierte ich die Gerber- und die NC-Drill-Dateien, packte sie in eine einzige ZIP-Datei und war bereit, die Herstellung des PCB zu bestellen.

Ich habe die Platine bei JCLPCB bestellt. Hier können wir einfach die ZIP-Datei ziehen und ablegen und nach dem Hochladen erhalten wir alle visuellen Informationen über unsere Leiterplatte.

Dann können wir die gewünschten Eigenschaften auswählen und unsere Leiterplatte zu einem günstigen Preis bestellen.

Montage der Leiterplatte

Nach einigen Tagen sind die Leiterplatten eingetroffen. Die Qualität der Platine ist super und alles ist genau so wie im Design.

So, jetzt können wir mit der Bestückung der Platine beginnen. Ich begann damit, zuerst die kleineren Komponenten einzusetzen und zu löten, die Widerstände und die beiden Transistoren.

Dann können wir die Arduino Pro Mini-Platine anlöten. Allerdings müssen wir zuerst die Stiftleisten daran anlöten. Bitte beachten Sie, dass wir nicht alle Stifte benötigen, aber stellen Sie sicher, dass Sie nicht den Pin übersehen, den wir benötigen, wie den A4-, A5- und den DTR-Stift. Stellen Sie außerdem sicher, dass Sie genau dasselbe Arduino Pro Mini-Board mit diesem Pin-Layout haben, da sie manchmal unterschiedlich sein können.

Als nächstes können wir den DHT22-Sensor einsetzen. Zu diesem Zweck müssen wir zuerst seine Stifte um 90 Grad biegen. Manchmal verwende ich auch Blu-Tack-Kleber, um die Komponenten beim Löten an Ort und Stelle zu halten.

Die beiden in diesem Projekt verwendeten Kondensatoren dienen zur Stabilisierung der Stromversorgung. Die Stromversorgung der Platine erfolgt über einen Mini-USB-Anschluss, an den wir 5 V anschließen können.

Direkt über dem Netzteilanschluss müssen wir die beiden Schalter anlöten. Einer dient zum Ein- und Ausschalten des Geräts und der andere wird verwendet, wenn wir eine Skizze auf das Arduino-Board hochladen möchten. Dann können wir die Stiftleisten für die USB-zu-UART-Schnittstelle, das Display und den PM2.5-Sensor sowie den VOC-, den Ozon- und den CO2-Sensor einsetzen.

Als nächstes müssen wir zum erneuten Löten des DS3231-Echtzeituhrmoduls zuerst die Stifte um 90 Grad biegen. Nach dem Löten können wir die Batterie einsetzen, die die Zeit verfolgt, selbst wenn die Hauptplatine Strom verliert. Damit ist die Platine eigentlich fertig, und was jetzt noch zu tun ist, ist die Vorbereitung der Kabel, die wir zum Verbinden des PM2.5-Sensors und des Displays mit der Platine verwenden werden. Ich habe Stiftleisten an das Kabel gelötet, das mit dem Sensor geliefert wird, und so konnte ich es einfach mit der Platine verbinden. Um das Display mit der Platine zu verbinden, habe ich vier Drähte auf die Rückseite des Displaysteckers gelötet und diese dann mit der Platine verbunden.

Und das war's, unser Air Quality Monitor ist tatsächlich fertig. Was wir jetzt tun müssen, ist natürlich, eine Art Schachtel oder Koffer dafür zu machen. Da wir das 3D-Modell der gesamten PCB-Baugruppe von Altium Designer haben, können wir es in eine CAD-Software importieren und ein Gehäuse dafür entwerfen.

Ich habe zu diesem Zweck SOLIDWORKS verwendet und den einfachsten Fall gemacht, der aus nur zwei Teilen und wenigen Schrauben und Muttern besteht. Ich habe mich entschieden, das Gehäuse aus transparentem Acryl herzustellen, weil mir gefällt, wie die Leiterplatte und die Komponenten freigelegt aussehen, und es auch eine großartige Möglichkeit ist, Ihr DIY-Projekt zu präsentieren.

Sie können dieses 3D-Modell des DYI-Luftqualitätsmonitors herunterladen und es in Ihrem Browser auf Thangs erkunden.

Laden Sie das 3D-Modell bei Thangs herunter.

Plädoyer für den Luftqualitätsmonitor

Das Acryl, das ich verwenden werde, ist 4 mm dick und passt perfekt zum Display. Da ich derzeit keine CNC-Maschine besitze, schneide ich die Formen manuell mit einer einfachen Metallbügelsäge.

Um die Öffnung für die Ausstellung zu machen, habe ich zuerst zwei Löcher mit einem Bohrer gemacht. Dann ging ich durch eine Klinge von einer Mini-Bügelsäge und schnitt vorsichtig die Form. Mit einer einfachen Raspel habe ich die Form geglättet. Dann habe ich mit einem 3-mm-Bohrer alle Löcher zum Anbringen der Leiterplatten und zum Verbinden der beiden Acrylplatten miteinander gemacht.

An dieser Stelle habe ich die Schutzfolie vom Acryl entfernt, was ehrlich gesagt ein ziemlich zufriedenstellender Vorgang ist. Zur Befestigung der Platine an der Grundplatte habe ich einige M3-Schrauben und Muttern verwendet. Zur Befestigung des PM2.5-Sensors an der Platte benötigen wir M2-Schrauben.

Als nächstes können wir mit einigen Distanzmuttern die beiden Platten miteinander verbinden. Durch die Verwendung einer weiblichen und einer männlichen Distanzmutter konnte ich leicht den gewünschten Abstand zwischen den beiden Platten erreichen.

Ich persönlich mag, wie sich dieses Gehäuse entwickelt hat, und es ist funktional, da Luft leicht um die Sensoren zirkulieren kann.

Programmieren

In Ordnung, jetzt können wir das Gerät einschalten und das Programm hochladen. Wir können den Luftqualitätsmonitor über den Mini-USB-Anschluss mit Strom versorgen und die 5 Volt von einem 5-V-USB-Adapter, einem 5-V-Telefonladegerät oder einer Powerbank beziehen.

Zum Hochladen des Programms auf das Arduino Pro Mini-Board benötigen wir eine USB-zu-Seriell-UART-Schnittstelle, die an den Programmierkopf angeschlossen werden kann. Bevor wir es an den Computer-USB anschließen, müssen wir zuerst die Hauptstromversorgung des Geräts einschalten, da sonst die vom Computer-USB kommende Stromversorgung, die nur 500 mA beträgt, möglicherweise nicht ausreicht, um ordnungsgemäß zu funktionieren. Beim Hochladen des Arduino-Sketch müssen wir auch den Upload-Schalter auf der Platine umschalten.

Hier können Sie den Arduino Code und das Nextion Display Programm herunterladen:

Um eine Skizze auf ein Arduino Pro Mini-Board hochzuladen, müssen wir in der Arduino IDE zuerst dieses Board auswählen, die richtige Version des Prozessors auswählen, den Port auswählen und die Programmiermethode „USBasp“ auswählen.

Sobald wir den Code auf das Arduino hochgeladen haben, müssen wir auch einen Code auf das Nextion-Display hochladen. Nextion-Displays verfügen über einen integrierten ARM-Controller, der das Display tatsächlich selbst steuert.

Alle Grafiken wie Schaltflächen, Texte, Bilder, Variablen usw. werden vom Display selbst generiert und gesteuert. Das Nextion-Display verfügt über einen speziellen Nextion-Editor, in dem wir all diese Dinge erstellen können. Das Display und die Arduino-Kommunikation mit nur zwei Drähten über die serielle Kommunikation. Der Arduino sendet einfach nur die Werte vom Sensor an das Display und umgekehrt, das Display sendet bei Bedarf Daten an den Arduino.

Zum Hochladen des Anzeigeprogramms benötigen wir eine microSD-Karte, auf der wir die ausgegebene .TFT-Datei aus dem Nextion-Editor speichern können.

Das Display verfügt über einen Kartenleser, in den wir die microSD-Karte einlegen können, während das Gerät ausgeschaltet ist. Dann können wir das Gerät einschalten und das Programm wird auf das Display hochgeladen. Jetzt müssen wir nur noch die Karte entfernen, den Strom wieder einschalten und unser Luftqualitätsmonitor beginnt zu arbeiten.

Code-Erklärung

Wir verwenden also Bibliotheken für jeden Sensor, die unter den folgenden Links zu finden sind:MHZ19, PMS, MQ131, DHT, DS3231. Um besser zu verstehen, wie wir die Daten von jedem Sensor lesen, empfehle ich, die Dokumentationen der Bibliotheken zu lesen und ihre Beispiele auszuprobieren.

Wir verwenden auch die SoftwareSerial-Bibliothek, da sowohl der MH-Z19- als auch der PMS5003-Sensor die serielle Kommunikation verwenden. Das Arduino- und das Nextion-Display verwenden auch die serielle Schnittstelle für die Kommunikation, und in diesem Fall verwenden wir die standardmäßige serielle Hardware.

Also liest der Arduino die Sensoren und sendet diese Daten an das Nextion-Display. Hier ist ein Beispiel.

Serial.print("tempV.val="); Serial.print(temp); Serial.write(0xff); Serial.write(0xff); Serial.write(0xff); Codesprache:Arduino (arduino)

Wir haben also eine Variable in der Nextion-Anzeige namens „tempV“ und um ihren Wert zu aktualisieren, müssen wir einen Befehl an die Nextion wie folgt senden:„tempV.val=22“. Also der Variablenname, dann „.val“, dann der Wert, sagen wir 22. Die ersten beiden Zeilen des Codes machen das, und damit das Nextion-Display diesen Befehl oder eigentlich jeden Befehl akzeptiert, müssen wir die drei eindeutigen senden Befehle „schreiben“.

Im Nextion-Anzeigeprogramm haben wir einen Timer, der in einer Schleife läuft, genau wie die Arduino-Code-Schleife, und die Zahlen auf dem Display ständig aktualisiert.

In diesem Timer-Ereignis haben wir auch einen Code zum Ändern der Hintergrundfarbe für jeden Sensor in Abhängigkeit von seinem Wert.

Auf der zweiten Seite haben wir eine Wellenform, die die Werte aus den gespeicherten Werten des Arduino erhält. Bitte beachten Sie, dass Sie weitere Informationen zum Arduino-Code selbst finden können, da es Erklärungen in den Kommentaren des Codes gibt.

Die Stunden und die Werte der Y-Achse erhalten ihre Werte ebenfalls vom Arduino.

Über der Wellenform sowie den Zahlen auf dem Hauptbildschirm können Sie feststellen, dass wir ähnliche transparente Objekte haben, die im Nextion-Editor „Hotstops“ genannt werden und als Schaltflächen fungieren. Wenn wir den Hotstop auf der Wellenform drücken, können wir im Event-Bereich sehen, dass er uns zurück auf „Seite 0“ schickt.

Insgesamt funktioniert das Programm dieses Arduino-Luftqualitätsmonitors so. Um die Funktionsweise vollständig zu verstehen, müssen Sie natürlich lernen und wissen, wie jeder Sensor mit seinen Bibliotheken arbeitet und wie das Nextion-Display funktioniert.

Bitte beachten Sie, dass wir für den VOC-Sensor nur Rohdaten von diesem Sensor lesen, keine ppm- oder ppb-Werte. Nur analoge Werte von 0 bis 1024. Höhere Werte bedeuten, dass VOC vorhanden sind.

Wie beim Ozonsensor müssen wir, um genauere Ausgaben zu erhalten, die Werte setTimeToRead()  und setR0() gemäß dem Kalibrierungsbeispiel der Bibliothek korrekt einstellen. Längeres setTimeToRead bedeutet jedoch, dass das Programm während des Samplings blockiert wird und alles andere eingefroren wird. Natürlich gibt es Möglichkeiten, dies zu umgehen. Ich würde sogar vorschlagen, den Ozonsensor überhaupt nicht zu verwenden, es sei denn, Sie brauchen ihn wirklich.

Ich hoffe, dir hat dieses Video gefallen und du hast etwas Neues gelernt. Wenn ja, erwägen Sie bitte, mich auf Patreon zu unterstützen. Fühlen Sie sich frei, Fragen im Kommentarbereich unten zu stellen und sehen Sie sich meine Arduino-Projektsammlung an.


Herstellungsprozess

  1. Heimwerker-Umwelt- und Luftqualitätsmonitor
  2. Messen der Luftqualität auf OpenSensors
  3. Helium-Luftqualitätssensor
  4. Erstellen von Monitor-Ambilight mit Arduino
  5. CO2-Überwachung mit K30-Sensor
  6. DIY-Voltmeter mit Arduino und Smartphone
  7. Herzfrequenzmesser mit IoT
  8. Arduino-Temp. Monitor und Echtzeituhr mit 3.2 Display
  9. DIY Virtual Reality Skateboard
  10. DIY-Luftqualitätsmonitor mit Sharp GP2Y1010AU0F-Sensor