Lesen Sie die CO 2 -Konzentration aus dem MH-Z19-Sensor und bearbeiten Sie ihn.
Verbinden Sie RPI & MH-Z19 als:
Die Follower sind ein Beispiel für die Verkabelung, aber Sie können andere 5 -V- und 0V -Pin am RPI verwenden.
pi@raspberrypi:~/mh-z19 $ gpio readall
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5v | | | <---- Vin
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | | <---- Gnd
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 | <---- RxD
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 | <---- TxD
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 0 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 0 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 0 | 35 || 36 | 0 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 0 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 0 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+---Pi B+--+---+------+---------+-----+-----+
Vollständige Set enthalten Followings:
Installieren Sie den vollständigen Satz, herunterladen von der Version
git clone https://github.com/UedaTakeyuki/mh-z19.git
Dann kamen zum Ordner und geben Sie Setup.sh * aus
./setup.sh
In diesem Skript finden Sie die erforderlichen Einstellungen einschließlich serieller Port -Aktivierung.
Für Python 2.x
sudo pip install mh_z19
Für Python 3.x
sudo pip3 install mh_z19
Für den Fall, dass Sie es mit der Witut -Root -Erlaubnis verwenden würden, rufen Sie Pip ohne sudo wie folgt an:
Für Python 2.x
pip install mh_z19
Für Python 3.x
pip3 install mh_z19
Die Unterschiede der Schnittstelle zwischen jedem Himbeer -PI -Modell sind in diesem Modul aufgelöst. Zum Beispiel ist der serielle Geräteame Unterschied zwischen Raspberry Pi 3 und älterem Modell, das MH-Z19-Modul jedoch automatisch das Modell und lesen aus geeignetem seriellem Gerät.
Um MH-Z19 zu verwenden, müssen Sie das serielle Anschlussgerät auf dem Raspberry PI einrichten. Die folgende Wiki -Seite könnte informativ sein. Weitere Informationen finden Sie in der Top -Seite von PYPI.
pi@raspberrypi:~ $ sudo python3 -m mh_z19
{'co2': 668}
Wie oben ist SUDO möglicherweise erforderlich, da der Sensorwert des MH-Z19 durch die serielle Verbindung gelesen wird und die Wurzelgenehmigung im Allgemeinen angefordert wird.
Das installierte MH-Z19 -Modul entspricht dem Pondslider, bei dem es sich um einen mehrfachen und vielseitigen Sensorhandler handelt, um etwas mit dem Sensorwert zu speichern, zu senden und zu tun.
Als Beispiel führen wir den folgenden Anwendungsfall ein:
Der Pondslider liest SensorValue von Sensor-Handler angegeben und übergibt die Werte an Value-Handler *, die etwas damit anfangen.
Sowohl Sensor- als auch Werthandler sind ein Python -Modul. Weitere Details von Handlern finden Sie in diesem.
Dieses Modul entspricht dem Pondslider, der mehrere und vielseitige Sensorhandler ist, um etwas mit dem Sensorwert zu speichern, zu senden und zu tun.
Wenn Sie die oben erwähnte vollständige Installation entscheiden, haben Sie mit anderen Worten Setup.sh , der Pondslider und dort Beispielhandler, bereits installiert und eingestellt.
Sie können dies mit Save2Strage Value-Handler tun, der sich in Handlern/Wert/Saver/Save2Strage befindet, und die Konfigurationsdatei zum Lesen von MH-Z19-Sensor und Speichern per Save2Strage wird als config.save.toml im mh-z19 installierten Ordner hergestellt.
Im Ordner MH-Z19, indem er Pondslider wie folgt aufruft;
sudo python -m pondslider --config config.save.toml
Dann sollte /home/pi/data/co2.csv erstellt werden und für jeden Anruf wird eine neue Zeile hinzugefügt.
Der Monitor ™ ist ein kostenloser Remote -Überwachungsdienst, um die neuesten Daten im Web anzuzeigen.


Bitte beachten Sie eine Einführung, um das Verständnis von Vögeln-Augen über Monior ™ zu erfassen.
Ein kostenloses Konto ist wie folgt verfügbar. Melden Sie sich dann an und erhalten Sie eine View_id , die eindeutig ID ist, um einen Datenbereich auf dem Monitor ™ zu verweisen, um den neuesten Wert und Diagramm wie folgt anzuzeigen.
Nachdem Sie einen Value_id in Ihrem Browser erhalten haben, kehren Sie zum Terminal Ihres Raspberry Pi zurück, und dann sollten Sie Ihre diese Software so einstellen, dass sie den gemessenen Wert an den value_id senden. Um dies zu tun, call setid.sh Befehl im installierten Verzeichnis MH_Z19. Nehmen wir an, Ihr Value_ID ist VPGPARGJ , Issue setID.sh -Befehl wie folgt:
./setid.sh vpgpargj
Rufen Sie dann "Pondslider" Python -Skript wie folgt an:
pi@raspberrypi:~/mh-z19 $ sudo python -m pondslider
{'co2': 742}
co2
{"ok":false,"reason":"ViewID not valid"}
Ihr Zeitreihendiagramm im Monitor ™ -Andisplay im Browser muss durch den neuesten CO2-Konzentrationswert aktualisiert werden.
Sie können es im Befehl autostart.sh im mh_z19 installierten Verzeichnis wie folgt festlegen:
./autostart.sh --on
Sie können dies wie folgt ausschalten:
./autostart.sh --off
Außerdem können Sie den aktuellen Status wie folgt überprüfen:
./autostart.sh --status
Weitere Informationen finden Sie in diesem Blog.
Der Pondslider unterstützt auch ATT M2X. Details finden Sie in diesem Dokument.
Merkmale über die Kalibrierung (sowohl MH-Z19 & MH-Z19B), Erkennungsbereich Änderung (MH-Z19b) und ABC-Logik Ein/Aus (MH-Z19b) werden unter Version 0.2.1 oder höher implementiert.
Ich fürchte, ich habe diese nur ohne Test implementiert, da die notwendigen Geräte und Apparate für den Test, FX: Standardkonzentration CO2-Gas, auch MH-Z19b-Modul, nicht implementiert. Wenn Sie über diese Geräte oder Apparate verfügen und versuchen, diese Funktionen großzügig zu verwenden, schätze ich Ihren Ausgabebericht, unabhängig davon, ob das Ergebnis positiv oder negativ war.
Details finden Sie in diesem Wiki.
Der Revspace/MHz19 zeigt Werte undokumentiert, die in den offiziellen Datenblättern (MH-Z19, MH-Z19B) nicht dokumentiert sind. In Übereinstimmung damit addieren Sie diese Werte in den Rückgabe -JSON -Wert wie folgt:
sudo python -m mh_z19 --all
{"SS": 232, "UhUl": 10752, "TT": 61, "co2": 818, "temperature": 21}
sudo python3 -m mh_z19 --all
{"TT": 61, "co2": 807, "SS": 232, "temperature": 21, "UhUl": 10752}
oder rufen Sie Read_all () auf wie folgt:
>>> import mh_z19
>>> mh_z19.read_all()
{'SS': 232, 'UhUl': 10738, 'TT': 61, 'co2': 734, 'temperature': 21}
>>>
Falls Sie ein spezifisches serielles Gerät anstelle von Raspberry PI-Standard - seriellem Gerät verwenden sollten, wodurch diese Bibliothek automatisch ausgewählt wird, z.
sudo python -m mh_z19 --serial_device /dev/ttyUSB0
Siehe dieses Wiki.
Siehe dieses Wiki.
Siehe dieses Wiki.
Auch wenn die Verkabelung kein Problem erscheint und UART gut vorbereitet zu sein scheint, aber Sie können keinen Sensorwert erhalten. Wie Nincube8 vorschlug, kann das Abzug von 1-5KΩ-Register eine funktionierende Lösung sein. Danke Nincube8!
Das Forum ist hier Avai. Fragen, Vorschläge, Berichte sind willkommen!
--co2valueonly hinzu, indem Sie Ausgabe Nr. 39 verschmelzen und Ausgabe Nr. 40. Danke Jonästhefox!