Baca konsentrasi CO 2 dari sensor MH-Z19 dan tangani.
Hubungkan RPI & MH-Z19 sebagai:
Mengikuti adalah contoh pemasangan kabel, tetapi Anda dapat menggunakan pin 5V dan 0V lainnya pada RPI.
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+--+---+------+---------+-----+-----+
Set lengkap termasuk pengikut:
Instal set lengkap, unduh dari rilis
git clone https://github.com/UedaTakeyuki/mh-z19.git
Kemudian, sampai ke folder dan mengeluarkan setup.sh *
./setup.sh
Pengaturan yang diperlukan termasuk pengaktifan port serial dilakukan dalam skrip ini.
Untuk Python 2.x
sudo pip install mh_z19
Untuk Python 3.x
sudo pip3 install mh_z19
Jika Anda akan menggunakannya dengan izin root, hubungi PIP tanpa sudo sebagai berikut:
Untuk Python 2.x
pip install mh_z19
Untuk Python 3.x
pip3 install mh_z19
Perbedaan antarmuka antara setiap model Raspberry Pi diselesaikan di dalam modul ini. Misalnya, nama perangkat serial adalah perbedaan antara raspberry pi 3 dan model yang lebih lama, tetapi modul MH-Z19 secara otomatis mendeteksi model dan dibaca dari perangkat serial yang sesuai.
Untuk menggunakan MH-Z19, setelah Anda perlu mengatur perangkat port serial yang memungkinkan pada Raspberry Pi. Halaman wiki berikut mungkin informatif. Juga, silakan merujuk halaman atas PYPI untuk detail.
pi@raspberrypi:~ $ sudo python3 -m mh_z19
{'co2': 668}
Seperti di atas, sudo mungkin diperlukan karena nilai sensor MH-Z19 dibaca melalui koneksi serial dan meminta izin root secara umum.
Modul MH-Z19 yang diinstal sesuai dengan pondslider yang merupakan penangan sensor berganda & serbaguna untuk menyimpan, mengirim, dan melakukan sesuatu yang diperlukan lainnya dengan nilai sensor.
Sebagai contoh, kami memperkenalkan kasus penggunaan berikut:
Pondslider membaca SensorValue oleh Sensor-Handler ditentukan, dan meneruskan nilai-nilai ke penangan nilai * yang melakukan sesuatu dengannya.
Sensor dan penangan nilai adalah modul Python. Untuk lebih detail penangan, silakan merujuk ini.
Modul ini sesuai dengan pondslider yang merupakan penangan sensor berganda & serbaguna untuk menyimpan, mengirim dan melakukan sesuatu yang diperlukan lainnya dengan nilai sensor.
Jika Anda memilih instalasi penuh yang disebutkan di atas, dengan kata lain, Anda telah melakukan setup.sh , pondslider dan ada contoh handler yang sudah diinstal & diatur.
Anda dapat melakukannya dengan save2strage value handler yang ada di handlers/value/saver/save2strage , dan file konfigurasi untuk dibaca dari sensor MH-Z19 dan save by save2strage disiapkan sebagai config.save.toml pada folder yang diinstal MH-Z19.
Pada folder MH-Z19 dengan memanggil Pondslider sebagai berikut;
sudo python -m pondslider --config config.save.toml
Kemudian, /home/pi/data/co2.csv harus dibuat dan baris baru akan ditambahkan untuk setiap panggilan.
Monitor ™ adalah layanan pemantauan jarak jauh gratis untuk menampilkan data terbaru di web.


Silakan merujuk pengantar untuk memahami pemahaman mata burung tentang Monior ™.
Akun gratis tersedia sebagai berikut. Kemudian, login dan dapatkan view_id , yang merupakan ID unik untuk mengarahkan area data pada Monitor ™ untuk menunjukkan nilai dan bagan terbaru, sebagai berikut.
Setelah mendapatkan value_id di browser Anda, kembali ke terminal Raspberry Pi Anda, maka Anda harus mengatur perangkat lunak ini untuk mengirim nilai yang diukur ke value_id. Untuk melakukan ini, hubungi perintah setid.sh di direktori yang diinstal MH_Z19. Katakanlah value_id Anda adalah VPGPARGJ , mengeluarkan perintah setid.sh sebagai berikut:
./setid.sh vpgpargj
Kemudian, panggil skrip Python "Pondslider" sebagai berikut:
pi@raspberrypi:~/mh-z19 $ sudo python -m pondslider
{'co2': 742}
co2
{"ok":false,"reason":"ViewID not valid"}
Bagan Seri-Waktu Anda pada tampilan Monitor ™ di browser harus diperbarui dengan nilai konsentrasi CO2 terbaru.
Anda dapat mengaturnya dengan perintah autostart.sh di direktori yang diinstal MH_Z19 sebagai berikut:
./autostart.sh --on
Anda dapat mematikan ini sebagai berikut:
./autostart.sh --off
Anda juga dapat memeriksa status saat ini sebagai berikut:
./autostart.sh --status
Untuk detail lebih lanjut, silakan merujuk blog ini.
Pondslider juga mendukung ATT M2X. Untuk detail, silakan merujuk dokumen ini.
Fitur tentang kalibrasi (keduanya MH-Z19 & MH-Z19B), perubahan rentang deteksi (MH-Z19B) dan logika ABC ON/OFF (MH-Z19B) diimplementasikan pada versi 0.2.1 atau lebih baru.
Saya khawatir saya hanya menerapkan ini tanpa tes karena kurangnya perangkat dan peralatan yang diperlukan untuk pengujian, FX: Gas CO2 konsentrasi standar, juga modul MH-Z19B. Jika Anda memiliki perangkat atau peralatan ini dan mencoba menggunakan fungsi -fungsi ini dengan murah hati, saya sangat menghargai laporan masalah Anda terlepas dari hasil positif atau negatif.
Untuk detail, silakan merujuk wiki ini.
Revspace/MHZ19 menunjukkan nilai-nilai tidak berdokumen pada lembar data resmi (MH-Z19, MH-Z19B). Sesuai dengan ini, -semua opsi Tambahkan nilai -nilai ini dalam nilai return JSON sebagai berikut:
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}
atau hubungi read_all () berfungsi sebagai berikut:
>>> import mh_z19
>>> mh_z19.read_all()
{'SS': 232, 'UhUl': 10738, 'TT': 61, 'co2': 734, 'temperature': 21}
>>>
Jika Anda harus menggunakan perangkat serial tertentu alih-alih perangkat serial default Raspberry Pi yang dipilih secara otomatis oleh perpustakaan ini, misalnya jika perlu menggunakan /dev /ttyUsb0 untuk konverter USB-serial FT232 sebagai masalah#12, Anda dapat menentukan perangkat serial dengan opsi --Serial_Device sebagai berikut sebagai berikut:
sudo python -m mh_z19 --serial_device /dev/ttyUSB0
Lihat wiki ini.
Lihat wiki ini.
Lihat wiki ini.
Bahkan jika pemasangan kabel tampaknya tidak ada masalah dan UART tampaknya sudah diatur dengan baik tetapi Anda tidak bisa mendapatkan nilai sensor. Seperti yang disarankan Nincube8 bahwa penarikan dengan 1-5kΩ register dapat menjadi solusi berfungsi. Terima kasih Nincube8!
Forum ini ada di sini. Setiap pertanyaan, saran, laporan dipersilakan!
--co2valueonly opsi dengan menggabungkan masalah#39 dan masalah#40. Terima kasih Jonesthefox!