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

Messen der Luftqualität auf OpenSensors

Wie man die Luftqualität des Open Data Institute mit einem Arduino und einem Shinyei PPD-42 misst.

Einführung

Während wir an eine gute Demonstration für die Opensensors-Plattform dachten, dachten wir uns, warum wir nicht sehen, wie verschmutzt unser Arbeitsplatz ist, indem wir einen Sensor anschließen, um einen kontinuierlichen Datenstrom an den Opensensors-Messaging-Broker zu veröffentlichen. Dafür brauchen wir einen einfach zu bedienenden Sensor, wir haben uns für den Shinyei PPD-42 entschieden. Wir verwenden dies, um die Anzahl potenziell gefährlicher kleiner Partikel in der Luft zu messen, wobei ein Arduino an einen Linux-PC (oder Raspberry PI) angeschlossen ist.

Um dieses Miniprojekt durchzuführen, benötigen Sie:

Wir basieren diesen Durchlauf auf einem Projekt namens DustDuino, das den Shinyei PPD-42-Sensor mit einem Arduino- und einem WLAN-Modul verwendet. Sehen Sie sich das hier an. Wir haben dieses Projekt als Referenz beim Einrichten des Sensors und beim Schreiben des Arduino-Codes verwendet.

Zuerst folgen wir Schritt 2 der Anleitung zum Anschließen des Sensors an den Arduino. Dann laden wir den Code aus dem Github-Repository des Projekts herunter, indem wir den Link für den Code DustDuinoSerial.ino öffnen, roh auswählen und diese Seite speichern.

Wenn wir dies in der Arduino-IDE öffnen, laden wir es jetzt auf unser Arduino UNO hoch, indem wir das Arduino verbinden und auf Upload drücken.

Sie können überprüfen, ob die Daten eingehen, indem Sie den seriellen Monitor der Arduino IDE verwenden.

Wir müssen dann herausfinden, wie wir die eingehende serielle Nachricht an den Opensensors-Nachrichtenbroker senden.

Dazu haben wir uns entschieden, ein Python-Skript zu schreiben. Wir haben das Python-Modul von Mosquitto verwendet. Ich gehe davon aus, dass Sie Python bereits installiert haben, da es auf den meisten Linux-Versionen vorinstalliert ist. Wenn Sie es noch nicht haben, müssen Sie pip installieren, um das Mosquitto-Python-Modul herunterzuladen und einzurichten. Unter Ubuntu oder Debian kann dies mit dem folgenden Befehl erfolgen:

sudo apt-get install python-pip  

Sobald pip installiert ist, können wir das Mosquitto-Python-Client-Modul mit dem folgenden Befehl installieren:

sudo pip install paho-mqtt  

Sie können herausfinden, wie Sie das Python-Modul verwenden, indem Sie die oben verlinkte Website durchlesen. Das Schreiben und Kompilieren von Python ist wirklich einfach.

Hallo Python-Welt

Öffnen Sie Ihren bevorzugten Klartext-Editor. Geben Sie die Zeile ein:

Drucken Sie „Hallo Welt“  

Speichern Sie es als hi.py. Navigieren Sie dann im Terminal zu Ihrem Dokument und geben Sie den Befehl ein:

python hi.py  

Sie sollten Ihre „Hello World“-Antwort sehen. So einfach ist das.

Hallo Opensensors

Um das Python-Modul des Mosquitto-Clients zu verwenden, können wir den folgenden Code ausführen, um die Veröffentlichung zu testen. Sie müssen meinen Benutzernamen "Louis" (die Sprachzeichen behalten) und mein Passwort durch Ihre Daten ersetzen:

Die Mosquitto-Bibliothek, die wir benötigen, um mit dem Opensensors-Nachrichtenbroker zu kommunizieren:

paho.mqtt.client als mqtt importieren  

Initialisieren Sie die Client-Option mit unserer Client-ID unseres Geräts:

mqttc =mqtt.Client(client_id="939")  

Legen Sie unseren Benutzernamen und unser Passwort fest:

mqttc.username_pw_set("Louis", password="AbcDEFgH")  

Verbinden Sie sich mit dem Opensensors-Server:

mqttc.connect("mqtt.opensensors.io")  

Veröffentlichen Sie eine Nachricht, um Hallo zu sagen:

mqttc.publish("/users/Louis/test2", payload="Hello Opensensors!", qos=0, keep=False)  

Trennen:

mqttc.disconnect();  

Erfolg, du solltest jetzt einen funktionierenden Sensor haben 🙂

Als nächstes müssen wir die Serie zum Laufen bringen. Um herauszufinden, wie Ihr serieller Arduino-Port aussieht, haben wir den folgenden Befehl in das Terminal ausgeführt:

dmesg | grep tty  

Die Ausgabe war ungefähr so ​​​​…

[ 0,000000] Konsole [tty0] aktiviert[ 3522.192687] cdc_acm 7-1:1.0:ttyACM0:USB-ACM-Gerät  

Die zweite Zeile enthält Details zu unserem Ardiuno. ttyACM0 ist der Gerätename und ‘/dev/ttyACM0’ ist die serielle Schnittstelle.

Das Öffnen und Lesen der seriellen Schnittstelle macht Python wirklich einfach. Sie können einen kleinen Test durchführen, um zu überprüfen, ob es funktioniert, indem Sie den folgenden Code verwenden:

Für die Kommunikation mit dem Arduino benötigen wir die serielle Bibliothek:

import serialser =serial.Serial('/dev/ttyACM0') # open first serial portwhile True:print ser.readline() # druckt jede Zeile, die es von serial liest  

Schließlich müssen wir nur noch die beiden Teile zusammenhacken. Hier ist der Code, den wir verwendet haben:

import serialimport paho.mqtt.client als mqttimport timemqttc =mqtt.Client(client_id="939")mqttc.username_pw_set("Louis", password="AbcDEFgH") mqttc.connect("mqtt.opensensors.io")ser =serial.Serial('/dev/ttyACM0') # erste serielle Schnittstelle öffnen während True:message=ser.readline()print messagemqttc.publish("/users/Louis/ ODI/airquality", payload=message, qos=0, keep=False)time.sleep(1);  

Damit haben wir unsere Sensordaten an Opensensors veröffentlicht!

Wir empfehlen, den Arduino-Code anzupassen, um die Daten im JSON-Format auszugeben. Dies erleichtert das Lesen und das Hinzufügen von Funktionen.

Sie können sich hier das Thema zur Erstellung von Open Data ansehen, das wir erstellt haben!

Code

import serialimport paho.mqtt.client als mqttimport timemqttc =mqtt.Client(client_id="939")mqttc.username_pw_set("Louis", password="AbcDEFgH")mqttc.connect ("opensensors.io")ser =serial.Serial('/dev/ttyACM0') # erste serielle Schnittstelle öffnen während True:message=ser.readline()print messagemqttc.publish("/users/Louis/ODI/airquality", payload=Nachricht, qos=0, keep=False)time.sleep(1); 

Quelle:Wie man die Luftqualität auf OpenSensors misst


Herstellungsprozess

  1. Helium-Luftqualitätssensor
  2. Wie schlechte Luftqualität unsere Gesundheit beeinflusst
  3. Wie einfach ist es, einen Thermistor zu verwenden?!
  4. So steigern Sie die Effizienz des Luftkompressors
  5. So messen Sie die Dicke der Lötstoppmaske
  6. Wie erleichtert IoT die Entwicklung von Indoor-AQMS?
  7. Wie funktionieren Lufttrockner?
  8. So entfernen Sie Verunreinigungen in der Druckluft
  9. Verwendung von Silikonarmbändern zur Messung der Luftqualität
  10. Kohlenstoffbasierter Luftqualitätssensor