Isi kandungan:
- Bekalan
- Langkah 1: Perkara Partikulat (PM): Apa Itu? Bagaimana ia masuk ke udara?
- Langkah 2: Mengapa Penting untuk Mengenai Masalah-masalah Partikulat?
- Langkah 3: Sensor Zarah - SDS011
- Langkah 4: Tetapi Bagaimana SDS011 Dapat Menangkap Partikel-partikel tersebut?
- Langkah 5: Waktu Tayangan
- Langkah 6: Indeks Kualiti Udara - AQI
- Langkah 7: Mencatat Data Secara Lokal
- Langkah 8: Menghantar Data ke Perkhidmatan Cloud
- Langkah 9: Protokol MQTT dan ThingSpeak Connection
- Langkah 10: Penerbitan MQTT
- Langkah 11: Skrip Akhir
- Langkah 12: Mengeluarkan Monitor di Luar
- Langkah 13: Pembakaran Motor Bensin
- Langkah 14: Pembakaran Kayu
- Langkah 15: Kesimpulannya
Video: Monitor Kualiti Udara Kos rendah IoT Berdasarkan RaspberryPi 4: 15 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Santiago, Chile semasa kecemasan alam sekitar musim sejuk mempunyai hak istimewa untuk tinggal di salah satu negara paling indah di dunia, tetapi sayangnya, itu bukan semua mawar. Chile pada musim sejuk banyak mengalami pencemaran udara, terutamanya disebabkan oleh bahan partikulat seperti debu dan kabut asap.
Kerana cuaca sejuk, di selatan, pencemaran udara terutama disebabkan oleh calefactors berasaskan kayu dan di Santiago (ibu kota utama di tengah negara ini) bercampur dari industri, kereta, dan keadaan geografinya yang unik di antara 2 rantai gunung besar.
Pada masa ini, pencemaran udara adalah masalah besar di seluruh dunia dan dalam artikel ini kita akan meneroka bagaimana untuk membangunkan monitor kualiti udara buatan sendiri yang murah, berdasarkan Raspberry Pi. Sekiranya anda berminat untuk mengetahui lebih lanjut mengenai kualiti udara, sila kunjungi Projek "World Air Quality Index".
Bekalan
- Raspberry Pi 4
- 1SDS011 - Sensor pengesanan kualiti udara laser ketepatan tinggi pm2.5
- Kotak plastik
Langkah 1: Perkara Partikulat (PM): Apa Itu? Bagaimana ia masuk ke udara?
Oleh itu, untuk memahami pencemaran atau pencemaran udara, kita mesti mengkaji zarah-zarah yang berkaitan dengan itu, yang juga dikenali sebagai zarah. Melihat grafik pada bahagian sebelumnya kita dapat melihat bahawa mereka menyebutkan PM2.5 dan PM10. Mari berikan gambaran ringkas mengenai perkara itu.
PM bermaksud bahan partikulat (juga disebut pencemaran zarah): istilah untuk campuran zarah pepejal dan titisan cecair yang terdapat di udara. Sebilangan zarah, seperti habuk, kotoran, jelaga, atau asap, cukup besar atau gelap sehingga dapat dilihat dengan mata kasar. Yang lain sangat kecil sehingga hanya dapat dikesan menggunakan mikroskop elektron. Zarah terdapat dalam pelbagai saiz. Zarah dengan diameter kurang dari atau sama dengan 10 mikrometer sangat kecil sehingga dapat masuk ke paru-paru, berpotensi menyebabkan masalah kesihatan yang serius. Sepuluh mikrometer kurang dari lebar rambut manusia tunggal.
Pencemaran zarah merangkumi zarah debu kasar (PM10): zarah yang dapat dihirup, dengan diameter yang biasanya 10 mikrometer dan lebih kecil. Sumber termasuk operasi penghancuran atau pengisaran dan habuk yang dikacau oleh kenderaan di jalan raya. Zarah halus (PM2.5): zarah yang dapat dihirup halus, dengan diameter yang umumnya 2.5 mikrometer dan lebih kecil. Zarah halus dihasilkan dari semua jenis pembakaran, termasuk kenderaan bermotor, loji janakuasa, pembakaran kayu kediaman, kebakaran hutan, pembakaran pertanian, dan beberapa proses perindustrian yang dapat anda temukan lebih banyak mengenai bahan partikulat di laman EPA: Agensi Perlindungan Alam Sekitar Amerika Syarikat
Langkah 2: Mengapa Penting untuk Mengenai Masalah-masalah Partikulat?
Seperti yang dijelaskan oleh GERARDO ALVARADO Z. dalam karyanya di Universiti Chile, kajian mengenai episod pencemaran udara tinggi di Lembah Meuse (Belgia) pada tahun 1930, Donora (Pennsylvania) pada tahun 1948 dan London pada tahun 1952 telah menjadi sumber pertama yang didokumentasikan yang berkaitan dengan kematian. dengan pencemaran zarah (Préndez, 1993). Kemajuan dalam penyelidikan kesan pencemaran udara terhadap kesihatan manusia telah menentukan bahawa risiko kesihatan disebabkan oleh zarah-zarah yang dapat dihirup, bergantung pada penembusan dan pemendapannya di bahagian yang berbeza dari sistem pernafasan, dan tindak balas Biologi terhadap bahan-bahan yang tersimpan.
Zarah-zarah paling tebal, kira-kira 5 μm, disaring oleh tindakan sendi silia saluran hidung dan mukosa yang menutupi rongga hidung dan trakea. Zarah-zarah dengan diameter antara 0,5 dan 5 μm dapat disimpan di bronkus dan bahkan di alveoli pulmonari, bagaimanapun, ia dihilangkan oleh silia bronkus dan bronkiol setelah beberapa jam. Zarah-zarah yang lebih kecil dari 0,5 μm dapat menembus jauh sehingga tersimpan di alveoli pulmonari, tersisa dari beberapa minggu hingga bertahun-tahun, kerana tidak ada mekanisme pengangkutan mukosiliari yang memudahkan penghapusan. Gambar berikut menunjukkan penembusan zarah dalam sistem pernafasan bergantung pada ukurannya.
Jadi, untuk melihat kedua-dua jenis zarah (PM2.5 dan PM10) sangat penting dan berita baiknya ialah kedua-duanya dapat dibaca oleh sensor yang ringkas dan tidak mahal, SDS011.
Langkah 3: Sensor Zarah - SDS011
Pemantauan Kualiti Udara adalah sains terkenal dan mapan yang bermula pada tahun 80-an. Pada masa itu, teknologinya agak terhad, dan penyelesaian yang digunakan untuk mengukur kompleks pencemaran udara, membebankan dan sangat mahal.
Nasib baik, pada masa kini, dengan teknologi terkini dan moden, penyelesaian yang digunakan untuk pemantauan Kualiti Udara menjadi tidak hanya lebih tepat tetapi juga lebih cepat dalam pengukuran. Peranti menjadi lebih kecil, dan harganya jauh lebih murah daripada sebelumnya.
Dalam artikel ini kita akan memfokus pada sensor zarah, yang dapat mengesan jumlah debu di udara. Walaupun generasi pertama hanya dapat mengesan jumlah kelegapan, sensor terbaru seperti SDS011 dari INOVAFIT, putaran dari Universiti Jinan (di Shandong), kini dapat mengesan PM2.5 dan PM10.
Dengan ukurannya, SDS011 mungkin merupakan salah satu sensor terbaik dari segi ketepatan dan harganya (kurang dari USD40.00).
- Nilai yang diukur: PM2.5, PM10
- Julat: 0–999.9 μg / m³
- Voltan bekalan: 5V (4.7–5.3V)
- Penggunaan kuasa (kerja): 70mA ± 10mA
- Penggunaan kuasa (laser mod tidur & kipas): <4mA
- Suhu penyimpanan: -20 hingga + 60C
- Suhu kerja: -10 hingga + 50C
- Kelembapan (penyimpanan): Maks. 90%
- Kelembapan (kerja): Maks. 70% (pemeluwapan wap air memalsukan bacaan)
- Ketepatan: 70% untuk 0.3μm dan 98% untuk 0.5μm
- Saiz: 71x70x23 mm
- Persijilan: CE, FCC, RoHS
SD011 menggunakan PCB sebagai satu sisi selongsong, yang memungkinkan untuk mengurangkan kosnya. Diod reseptor dipasang di sisi PCB (ini wajib kerana kebisingan antara dioda dan LNA harus dielakkan). Laser pemancar dipasang pada kotak plastik dan disambungkan ke PCB melalui wayar fleksibel.
Ringkasnya, Nova Fitness SDS011 adalah sensor habuk laser profesional. Kipas yang dipasang pada sensor menghisap udara secara automatik. Sensor menggunakan prinsip penyebaran cahaya laser * untuk mengukur nilai zarah debu yang terampai di udara. Sensor memberikan bacaan ketepatan tinggi dan boleh dipercayai nilai PM2.5 dan PM10. Sebarang perubahan dalam persekitaran dapat dilihat dengan cepat masa tindak balas yang singkat di bawah 10 saat. Sensor dalam mod standard melaporkan pembacaan dengan selang 1 saat.
* Prinsip Penyebaran Laser: Penyerakan cahaya dapat disebabkan ketika zarah melalui kawasan pengesanan. Cahaya yang tersebar diubah menjadi isyarat elektrik dan isyarat ini akan diperkuat dan diproses. Bilangan dan diameter zarah dapat diperoleh dengan analisis kerana bentuk gelombang isyarat mempunyai hubungan tertentu dengan diameter zarah.
Langkah 4: Tetapi Bagaimana SDS011 Dapat Menangkap Partikel-partikel tersebut?
Seperti yang dikomentari sebelumnya, prinsip yang digunakan oleh SDS011 adalah penyebaran cahaya atau lebih baik, Penyebaran Cahaya Dinamis (DLS), yang merupakan teknik dalam fizik yang dapat digunakan untuk menentukan profil pengagihan ukuran partikel kecil dalam ampaian atau polimer dalam larutan. Dalam skop DLS, fluktuasi temporal biasanya dianalisis dengan intensitas atau fungsi korelasi auto foton (juga dikenal sebagai spektroskopi korelasi foton atau penyebaran cahaya kuasi-elastik). Dalam analisis domain masa, fungsi autokorelasi (ACF) biasanya merosot bermula dari masa penundaan sifar, dan dinamika yang lebih cepat kerana partikel yang lebih kecil menyebabkan penyahtinjaan jejak intensiti tersebar lebih cepat. Telah ditunjukkan bahawa intensiti ACF adalah transformasi Fourier spektrum kuasa, dan oleh itu pengukuran DLS dapat dilakukan dengan baik di domain spektrum.
Di atas penyebaran cahaya dinamik hipotesis dua sampel: Zarah yang lebih besar (seperti PM10) di bahagian atas dan zarah yang lebih kecil (seperti PM2.5) di bahagian bawah. Dan melihat ke dalam sensor kita, kita dapat melihat bagaimana prinsip penyebaran cahaya dilaksanakan.
Isyarat elektrik yang ditangkap pada dioda menuju Penguat Kebisingan Rendah dan dari itu akan ditukar menjadi isyarat digital melalui ADC dan ke luar melalui UART.
Untuk mengetahui lebih lanjut mengenai SDS011 mengenai pengalaman saintifik yang sebenar, sila lihat karya Konstantinos et al, Pengembangan dan Pengujian On-Field Sistem Mudah Alih Kos Rendah untuk Pemantauan PM2.5 2018.
Langkah 5: Waktu Tayangan
Mari kita berehat sebentar mengenai semua teori ini dan fokus pada bagaimana mengukur perkara partikulat menggunakan Raspberry Pi dan sensor SDS011
Sambungan HW sebenarnya sangat mudah. Sensor dijual dengan penyesuai USB untuk menghubungkan data output dari 7 pin UART dengan salah satu penyambung USB standard RPi.
Pinout SDS011:
- Pin 1 - tidak bersambung
- Pin 2 - PM2.5: 0–999μg / m³; Keluaran PWM
- Pin 3–5V
- Pin 4 - PM10: 0–999 μg / m³; Keluaran PWM
- Pin 5 - GND
- Pin 6 - RX UART (TTL) 3.3V
- Pin 7 - TX UART (TTL) 3.3V
Untuk tutorial ini, saya menggunakan untuk pertama kalinya, Raspberry-Pi 4. yang baru. Tetapi sudah tentu, model sebelumnya juga akan berfungsi dengan baik.
Sebaik sahaja anda menyambungkan sensor di salah satu port USB RPi, secara automatik anda akan mula mendengar suara kipasnya. Bunyi itu agak menjengkelkan, jadi mungkin anda harus mencabutnya dan tunggu sehingga anda sudah siap dengan SW.
Komunikasi antara sensor dan RPi akan melalui protokol bersiri. Perincian mengenai protokol ini boleh didapati di sini: Protokol Kawalan Sensor Debu Laser V1.3. Tetapi untuk projek ini, yang terbaik adalah menggunakan antara muka python untuk mempermudah kod yang akan dibangunkan. Anda boleh membuat antara muka anda sendiri atau menggunakan beberapa yang terdapat di internet, seperti Frank Heuer atau Ivan Kalchev. Kami akan menggunakan yang terakhir, yang sangat mudah dan berfungsi dengan baik (anda boleh memuat turun skrip sds011.py dari GitHub atau milik saya).
Fail sds011.py mesti berada di direktori yang sama di mana anda membuat skrip anda.
Semasa fasa pengembangan, saya akan menggunakan Jupyter Notebook, tetapi anda boleh menggunakan IDE yang anda suka (Thonny atau Geany, misalnya, yang merupakan sebahagian daripada paket Raspberry Pi Debian keduanya sangat baik).
Mula mengimport sds011, dan buat contoh sensor anda. SDS011 menyediakan kaedah untuk membaca dari sensor menggunakan UART.
dari sds011 import *
sensor = SDS011 ("/ dev / ttyUSB0")
Anda boleh menghidupkan atau mematikan sensor anda dengan perintah tidur:
pmt_2_5, pmt_10 = sensor.query ()
Tunggu sekurang-kurangnya 10 saat untuk penstabilan sebelum pengukuran dan sekurang-kurangnya 2 saat untuk memulakan yang baru (lihat kod di atas).
Dan ini yang perlu anda ketahui dari segi SW untuk menggunakan sensor. Tetapi mari kita lebih mendalam mengenai Kawalan Kualiti Udara! Pada awal artikel ini, jika anda telah menjelajahi laman web yang memberikan maklumat tentang seberapa baik atau buruk udara, anda harus menyedari bahawa warna dikaitkan dengan nilai-nilai tersebut. Setiap warna adalah Indeks. Yang paling terkenal adalah AQI (Indeks Kualiti Udara), yang digunakan di AS dan beberapa negara lain.
Langkah 6: Indeks Kualiti Udara - AQI
AQI adalah indeks untuk melaporkan kualiti udara harian. Ini memberitahu anda betapa bersih atau tercemarnya udara anda, dan apa kesan kesihatan yang berkaitan mungkin menjadi perhatian anda. AQI memberi tumpuan kepada kesan kesihatan yang mungkin anda alami dalam beberapa jam atau hari setelah menghirup udara tercemar.
EPA (Agensi Perlindungan Alam Sekitar Amerika Syarikat), misalnya, menghitung AQI tidak hanya untuk pencemaran zarah (PM2.5 dan PM10) tetapi juga untuk pencemaran udara utama lain yang diatur oleh Clean Air Act: ozon permukaan tanah, karbon monoksida, sulfur dioksida, dan nitrogen dioksida. Untuk setiap bahan pencemar ini, EPA telah menetapkan standard kualiti udara nasional untuk melindungi kesihatan awam. Lihat gambar di atas dengan nilai, warna dan mesej kesihatan AQI yang berkaitan.
Seperti yang dinyatakan sebelum ini, nilai dan warna AQI berkaitan dengan masing-masing agen pencemar, tetapi bagaimana mengaitkan nilai yang dihasilkan oleh sensor dengan mereka? Jadual tambahan menghubungkan semuanya seperti yang ditunjukkan di atas.
Tetapi tentu saja, tidak masuk akal untuk menggunakan jadual seperti itu. Pada akhirnya, itu adalah algoritma matematik sederhana yang membuat pengiraan. Untuk itu, kami akan mengimport perpustakaan untuk menukar antara nilai AQI dan kepekatan pencemar (µg / m³): python-aqi.
Pasang perpustakaan menggunakan PIP dan buat ujian (lihat kod di atas)
pip memasang python-aqi
Dan bagaimana dengan Chile?
Di Chile indeks serupa digunakan, ICAP: Air Quality Index untuk Breathable Particles. Keputusan Tertinggi 59 dari 16 Maret 1998, dari Sekretaris Jenderal Kementerian Presiden Presiden, menetapkan dalam artikelnya 1, huruf g) bahawa tingkat yang menentukan ICA untuk Bahan Partikulat Bernafas, ICAP.
Nilai akan bervariasi secara linear antara bahagian, nilai 500 akan sesuai dengan nilai had di mana akan ada risiko bagi penduduk ketika terkena kepekatan ini. Menurut nilai ICAP, kategori telah ditetapkan yang memenuhi syarat tahap konsentrasi MP10 yang terdedah kepada orang.
Langkah 7: Mencatat Data Secara Lokal
Pada saat ini, kami memiliki semua alat untuk menangkap data dari sensor dan juga mengubahnya untuk "nilai yang dapat dibaca", iaitu indeks AQI.
Mari buat fungsi untuk menangkap nilai-nilai tersebut. Kami akan menangkap 3 nilai secara berurutan dengan mengambil rata-rata di antaranya:
def get_data (n = 3):
sensor.sleep (sleep = False) pmt_2_5 = 0 pmt_10 = 0 time.sleep (10) for i in range (n): x = sensor.query () pmt_2_5 = pmt_2_5 + x [0] pmt_10 = pmt_10 + x [1] time.sleep (2) pmt_2_5 = bulat (pmt_2_5 / n, 1) pmt_10 = bulat (pmt_10 / n, 1) sensor. waktu tidur (tidur = Benar). tidur (2) kembali pmt_2_5, pmt_10 Di atas anda dapat melihat keputusan ujian. Mari kita lakukan fungsi untuk menukar nilai numerik PM dalam indeks AQI
def conv_aqi (pmt_2_5, pmt_10):
aqi_2_5 = aqi.to_iaqi (aqi. POLLUTANT_PM25, str (pmt_2_5)) aqi_10 = aqi.to_iaqi (aqi. POLLUTANT_PM10, str (pmt_10)) kembali aqi_2_5, aqi_10 di atas hasil ujian dengan kedua fungsi. Tetapi apa yang perlu dilakukan dengan mereka? Jawapan yang paling mudah adalah membuat fungsi untuk menyimpan data yang diambil, menyimpannya pada fail tempatan
def save_log ():
dengan terbuka ("PATH ANDA DI SINI / air_quality.csv", "a") sebagai log: dt = datetime.now () log.write ("{}, {}, {}, {}, {} n". format (dt, pmt_2_5, aqi_2_5, pmt_10, aqi_10)) log.close () Dengan satu gelung, anda boleh log data secara berkala dalam fail tempatan anda, misalnya, setiap minit
sementara (Betul):
pmt_2_5, pmt_10 = get_data () aqi_2_5, aqi_10 = conv_aqi (pmt_2_5, pmt_10) cuba: save_log () kecuali: print ("[INFO] Gagal dalam log data") time.sleep (60) Setiap 60 saat, cap waktu ditambah data akan "ditambahkan" ke file ini, seperti yang dapat kita lihat di atas.
Langkah 8: Menghantar Data ke Perkhidmatan Cloud
Pada ketika ini, kami telah belajar bagaimana menangkap data dari sensor, menyimpannya pada fail CSV tempatan. Sekarang, inilah masanya untuk melihat bagaimana menghantar data tersebut ke platform IoT. Pada tutorial ini, kami akan menggunakan ThingSpeak.com.
"ThingSpeak adalah aplikasi Internet of Things (IoT) sumber terbuka untuk menyimpan dan mengambil data dari sesuatu, menggunakan API REST dan MQTT. ThingSpeak memungkinkan penciptaan aplikasi pembalakan sensor, aplikasi pengesanan lokasi, dan rangkaian sosial dengan kemas kini status."
Pertama, anda mesti mempunyai akaun di ThinkSpeak.com. Seterusnya, ikuti arahan untuk membuat Saluran, perhatikan ID Salurannya dan Tulis Kunci API.
Semasa membuat saluran, anda juga mesti menentukan maklumat apa yang akan dimuat ke setiap salah satu dari 8 bidang, seperti yang ditunjukkan di atas (dalam kes kami hanya 4 daripadanya akan digunakan).
Langkah 9: Protokol MQTT dan ThingSpeak Connection
MQTT adalah seni bina penerbitan / langganan yang dibangunkan terutamanya untuk menyambungkan lebar jalur dan peranti dengan kuasa melalui rangkaian tanpa wayar. Ini adalah protokol sederhana dan ringan yang berjalan di atas soket TCP / IP atau WebSockets. MQTT melalui WebSockets dapat diamankan dengan SSL. Senibina penerbitan / langganan membolehkan mesej didorong ke peranti pelanggan tanpa peranti perlu terus melakukan tinjauan ke pelayan.
Broker MQTT adalah pusat komunikasi, dan bertanggungjawab untuk menghantar semua mesej antara pengirim dan penerima yang sah. Pelanggan adalah mana-mana peranti yang menghubungkan dengan broker dan boleh menerbitkan atau melanggan topik untuk mengakses maklumat. Topik mengandungi maklumat penghalaan untuk broker. Setiap pelanggan yang ingin mengirim mesej menerbitkannya ke topik tertentu, dan setiap pelanggan yang ingin menerima mesej melanggan topik tertentu. Broker menyampaikan semua mesej dengan topik yang sesuai kepada klien yang sesuai.
ThingSpeak ™ mempunyai broker MQTT di URL mqtt.thingspeak.com dan port 1883. Broker ThingSpeak menyokong penerbitan MQTT dan langganan MQTT.
Dalam kes kami, kami akan menggunakan MQTT Publish.
Langkah 10: Penerbitan MQTT
Sebagai permulaan, mari kita pasang pustaka pelanggan Eclipse Paho MQTT Python, yang menerapkan versi 3.1 dan 3.1.1 protokol MQTT
sudo pip pasang paho-mqtt
Seterusnya, mari kita import paho library:
import paho.mqtt.publish sebagai terbitan
dan memulakan saluran Thingspeak dan protokol MQTT. Kaedah sambungan ini paling mudah dan memerlukan sumber sistem paling sedikit:
channelID = "ID SALURAN ANDA"
apiKey = "KUNCI MENULIS ANDA" topik = "saluran /" + saluranID + "/ terbitkan /" + apiKey mqttHost = "mqtt.thingspeak.com" Sekarang kita mesti menentukan "muatan" kita
tPayload = "field1 =" + str (pmt_2_5) + "& field2 =" + str (aqi_2_5) + "& field3 =" + str (pmt_10) + "& field4 =" + str (aqi_10)
Itu sahaja! kami bersedia untuk mula menghantar data ke awan! Mari tulis semula fungsi gelung sebelumnya untuk juga memasukkan bahagian ThingSpeak daripadanya.
# Menghantar semua data ke ThingSpeak setiap 1 minit
sementara (Betul): pmt_2_5, pmt_10 = get_data () aqi_2_5, aqi_10 = conv_aqi (pmt_2_5, pmt_10) tPayload = "field1 =" + str (pmt_2_5) + "& field2 =" + str (aqi_2_5) + "& field3 =" + str (pmt_10) + "& field4 =" + str (aqi_10) cuba: publish.single (topik, payload = tPayload, hostname = mqttHost, port = tPort, tls = tTLS, transport = tTransport) save_log () kecuali: print ("[INFO] Gagal menghantar data ") time.sleep (60) Sekiranya semuanya baik-baik saja, anda mesti melihat data juga muncul di saluran anda di thingspeak.com seperti gambar di atas.
Langkah 11: Skrip Akhir
Penting untuk menunjukkan bahawa Jupyter Notebook adalah alat yang sangat baik untuk pengembangan dan laporan, tetapi tidak untuk membuat kod untuk dimasukkan ke dalam pengeluaran. Apa yang harus anda lakukan sekarang ialah mengambil bahagian kod yang relevan dan membuat skrip.py dan jalankan di terminal anda.
Contohnya, "ts_air_quality_logger.py", yang harus anda jalankan dengan arahan:
python 3 ts_air_quality_logger.py
Skrip ini serta Jupyter Notebook dan sds011.py boleh didapati di repositori saya di RPi_Air_Quality_Sensor.
Perhatikan bahawa skrip ini layak untuk pengujian sahaja. Yang terbaik adalah tidak menggunakan kelewatan di dalam gelung terakhir (yang meletakkan kod dalam "jeda"), sebaliknya gunakan pemasa. Atau untuk aplikasi yang sebenarnya, yang terbaik adalah tidak menggunakan gelung, dengan Linux diprogram untuk melaksanakan skrip secara berkala dengan crontab.
Langkah 12: Mengeluarkan Monitor di Luar
Setelah monitor Raspberry Pi Air Quality saya berfungsi, saya memasang RPi di dalam kotak plastik, menyimpan sensor di luar dan meletakkannya di luar rumah saya.
Dua pengalaman dibuat.
Langkah 13: Pembakaran Motor Bensin
Sensor itu diletakkan sekitar 1m dari scape gas Lambretta, dan motornya dihidupkan. Motor berjalan selama beberapa minit dan dimatikan. Dari fail log di atas, hasil yang saya dapat. Menarik untuk mengesahkan bahawa PM2.5 adalah partikulat paling berbahaya yang dihasilkan dari motor.
Langkah 14: Pembakaran Kayu
Melihat fail log, kami menyedari bahawa data sensor sesaat "di luar Jangkauan" dan tidak ditangkap dengan baik oleh Perpustakaan penukaran AQI, jadi saya menukar kod sebelumnya untuk mengatasinya:
def conv_aqi (pmt_2_5, pmt_10):
cuba: aqi_2_5 = aqi.to_iaqi (aqi. POLLUTANT_PM25, str (pmt_2_5)) aqi_10 = aqi.to_iaqi (aqi. POLLUTANT_PM10, str (pmt_10)) return aqi_2_5, aqi_10 kecuali: return 600, 600 Keadaan ini boleh berlaku di lapangan, tidak mengapa. Ingatlah bahawa sebenarnya, anda harus menggunakan rata-rata bergerak untuk benar-benar mendapatkan AQI (sekurang-kurangnya setiap jam, tetapi biasanya setiap hari).
Langkah 15: Kesimpulannya
Seperti biasa, saya berharap projek ini dapat membantu orang lain memasuki dunia Elektronik dan Sains Data yang menarik!
Untuk perincian dan kod akhir, sila kunjungi simpanan GitHub saya: RPi_Air_Quality_Sensor.
Saludos dari selatan dunia!
Jumpa anda di arahan saya yang seterusnya!
Terima kasih, Marcelo
Disyorkan:
Meter Kualiti Udara Dalaman: 5 Langkah (dengan Gambar)
Meter Kualiti Udara Dalaman: Projek sederhana untuk memeriksa kualiti udara di rumah anda. Sejak akhir-akhir ini kami tinggal / bekerja dari rumah, mungkin idea yang baik untuk memantau kualiti udara dan mengingatkan diri anda apabila tiba masanya untuk membuka tingkap dan dapatkan udara segar masuk
Sensor Kualiti Udara AEROBOT V1.0: 6 Langkah (dengan Gambar)
Sensor Kualiti Udara AEROBOT V1.0: Instruksinya ini adalah untuk membuat sensor kualiti udara yang murah dan sangat tepat bernama AEROBOT. Projek ini menunjukkan suhu, kelembapan relatif, ketumpatan debu PM 2.5 dan amaran mengenai kualiti udara di sekitarnya. Ia menggunakan sensor DHT11
Monitor Kualiti Udara Dengan MQ135 dan Sensor Suhu dan Kelembapan Luaran Melebihi MQTT: 4 Langkah
Monitor Kualiti Udara Dengan MQ135 dan Sensor Suhu dan Kelembapan Luaran Lebih Dari MQTT: Ini adalah untuk tujuan ujian
MQmax 0.7 Platform IoT WiFi Kos Rendah Berdasarkan Esp8266 dan Arduino Mini Pro: 6 Langkah
MQmax 0.7 Platform IoT WiFi Kos Rendah Berdasarkan Esp8266 dan Arduino Mini Pro: Hello Ini adalah Instruksiku yang kedua (mulai sekarang saya berhenti mengira). Saya membuat ini untuk mewujudkan platform yang mudah (paling tidak untuk saya), murah, senang dibuat dan cekap untuk aplikasi Real IoT yang merangkumi kerja M2M. Platform ini berfungsi dengan esp8266 dan
Jadual Hoki Udara Kos Rendah DIY: 27 Langkah (dengan Gambar)
Jadual Hoki Udara Kos Rendah DIY: Penyediaan hoki udara profesional biasanya hanya tersedia di arked kerana sistem canggih yang diperlukan untuk mengendalikannya. Matlamat kami adalah untuk membina meja hoki udara DIY, membawa pengalaman permainan ini di rumah. Dengan menggunakan