Përmbajtje:
- Furnizimet
- Hapi 1: Çështja e grimcuar (PM): Çfarë është ajo? Si del në ajër?
- Hapi 2: Pse është e rëndësishme të kujdeseni për ato çështje të grimcuara?
- Hapi 3: Sensori i grimcave - SDS011
- Hapi 4: Por si SDS011 mund t'i kapë ato grimca?
- Hapi 5: Koha e shfaqjes
- Hapi 6: Indeksi i Cilësisë së Ajrit - AQI
- Hapi 7: Regjistrimi i të dhënave në nivel lokal
- Hapi 8: Dërgimi i të dhënave në një Shërbim Cloud
- Hapi 9: Protokolli MQTT dhe Lidhja ThingSpeak
- Hapi 10: Publikimi i MQTT
- Hapi 11: Skenari përfundimtar
- Hapi 12: Marrja e monitorit jashtë
- Hapi 13: Djegia e motorit të benzinës
- Hapi 14: Djegia e drurit
- Hapi 15: Përfundimi
Video: Një monitor i cilësisë së ajrit IoT me kosto të ulët bazuar në RaspberryPi 4: 15 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:18
Santiago, Kili gjatë një emergjence mjedisore dimërore kanë privilegjin të jetojnë në një nga vendet më të bukura në botë, por për fat të keq, nuk janë të gjitha trëndafila. Kili gjatë stinës së dimrit vuan shumë nga ndotja e ajrit, kryesisht për shkak të materialeve të grimcave si pluhuri dhe smogu.
Për shkak të motit të ftohtë, në jug, ndotja e ajrit është kryesisht për shkak të kalefaktorëve me bazë druri dhe në Santiago (kryeqyteti kryesor në qendër të vendit) të përzier nga industritë, makinat dhe situata e tij unike gjeografike midis 2 zinxhirëve të mëdhenj të maleve.
Në ditët e sotme, ndotja e ajrit është një problem i madh në të gjithë botën dhe në këtë artikull ne do të eksplorojmë se si të zhvillojmë një monitor të ulët të shtrenjtë të Cilësisë së Ajrit të bërë në shtëpi, bazuar në një Raspberry Pi. Nëse jeni të interesuar të kuptoni më shumë rreth cilësisë së ajrit, ju lutemi vizitoni Projektin "Indeksi i Cilësisë së Ajrit Botëror".
Furnizimet
- Mjedër Pi 4
- 1SDS011 - Sensor lazer me saktësi të lartë PM2.5 për zbulimin e cilësisë së ajrit
- Kuti plastike
Hapi 1: Çështja e grimcuar (PM): Çfarë është ajo? Si del në ajër?
Pra, për të kuptuar ndotjen ose ndotjen e ajrit, ne duhet të studiojmë grimcat që lidhen me atë, e cila njihet edhe si grimca. Duke parë grafikët në pjesën e mëparshme, mund të vërejmë se ato përmendën PM2.5 dhe PM10. Le të bëjmë një përmbledhje të shpejtë të kësaj.
PM qëndron për grimcat (e quajtur edhe ndotja e grimcave): termi për një përzierje të grimcave të ngurta dhe pikave të lëngshme që gjenden në ajër. Disa grimca, të tilla si pluhuri, papastërtia, bloza ose tymi, janë mjaft të mëdha ose të errëta për tu parë me sy të lirë. Të tjerët janë aq të vegjël saqë mund të zbulohen vetëm duke përdorur një mikroskop elektronik. Grimcat vijnë në një gamë të gjerë madhësish. Grimcat më të vogla ose të barabarta me 10 mikrometra në diametër janë aq të vogla sa mund të futen në mushkëri, duke shkaktuar potencialisht probleme serioze shëndetësore. Dhjetë mikrometra është më pak se gjerësia e një qime të vetme njerëzore.
Ndotja e grimcave përfshin grimcat e pluhurit të trashë (PM10): grimca të thithshme, me diametër që janë përgjithësisht 10 mikrometra dhe më të vegjël. Burimet përfshijnë operacionet e shtypjes ose bluarjes dhe pluhurin e trazuar nga automjetet në rrugë. Grimcat e imëta (PM2.5): grimca të imëta për thithje, me diametra që janë përgjithësisht 2.5 mikrometra dhe më të vegjël. Grimcat e imta prodhohen nga të gjitha llojet e djegies, përfshirë automjetet motorike, termocentralet, djegia e drurit të banimit, zjarret në pyje, djegia bujqësore dhe disa procese industriale që mund të gjeni më shumë rreth grimcave në faqen e EPA: Agjencia e Shteteve të Bashkuara për Mbrojtjen e Mjedisit
Hapi 2: Pse është e rëndësishme të kujdeseni për ato çështje të grimcuara?
Siç përshkruhet nga GERARDO ALVARADO Z. në punën e tij në Universitetin e Kilit, studimet e episodeve të ndotjes së lartë të ajrit në Luginën Meuse (Belgjikë) në 1930, Donora (Pensilvania) në 1948 dhe Londër në 1952 kanë qenë burimet e para të dokumentuara që lidheshin me vdekshmërinë me ndotje të grimcave (Préndez, 1993). Përparimet në hetimin e efekteve të ndotjes së ajrit në shëndetin e njerëzve kanë përcaktuar se rreziqet për shëndetin shkaktohen nga grimcat që thithin, në varësi të depërtimit dhe depozitimit të tyre në seksione të ndryshme të sistemit të frymëmarrjes dhe përgjigjes Biologjike ndaj materialeve të depozituara.
Grimcat më të trasha, rreth 5 μm, filtrohen nga veprimi i përbashkët i qerpikëve të kalimit të hundës dhe mukozës që mbulon zgavrën e hundës dhe trakenë. Grimcat me diametër midis 0.5 dhe 5 μm mund të depozitohen në bronke dhe madje edhe në alveolat pulmonare, megjithatë, ato eliminohen nga qerpikët e bronkeve dhe bronkiolave pas disa orësh. Grimcat më të vogla se 0.5 μm mund të depërtojnë thellë derisa të depozitohen në alveolat pulmonare, duke mbetur nga javë në vite, pasi nuk ka asnjë mekanizëm transporti mukociliar që lehtëson eliminimin. Figura e mëposhtme tregon depërtimin e grimcave në sistemin e frymëmarrjes në varësi të madhësisë së tyre.
Pra, të dallosh të dy llojet e grimcave (PM2.5 dhe PM10) janë shumë të rëndësishme dhe lajmi i mirë është se të dyja janë të lexueshme nga një sensor i thjeshtë dhe jo i shtrenjtë, SDS011.
Hapi 3: Sensori i grimcave - SDS011
Monitorimi i cilësisë së ajrit është një shkencë e mirënjohur dhe e vendosur e cila filloi që në vitet '80. Në atë kohë, teknologjia ishte mjaft e kufizuar dhe zgjidhja e përdorur për të përcaktuar sasinë e kompleksit të ndotjes së ajrit, e rëndë dhe me të vërtetë e shtrenjtë.
Për fat të mirë, në ditët e sotme, me teknologjitë më të fundit dhe moderne, zgjidhjet e përdorura për monitorimin e Cilësisë së Ajrit po bëhen jo vetëm më të sakta, por edhe më të shpejta në matje. Pajisjet po bëhen më të vogla dhe kushtojnë shumë më të përballueshme se kurrë më parë.
Në këtë artikull ne do të përqëndrohemi në një sensor grimcash, që mund të zbulojë sasinë e pluhurit në ajër. Ndërsa gjenerata e parë ishte në gjendje të zbulonte sasinë e errësirës, sensorët më të fundit si SDS011 nga INOVAFIT, një spin-off nga Universiteti i Jinan (në Shandong), tani mund të zbulojnë PM2.5 dhe PM10.
Me madhësinë e tij, SDS011 është ndoshta një nga sensorët më të mirë për sa i përket saktësisë dhe çmimit (më pak se 40.00 USD).
- Vlerat e matura: PM2.5, PM10
- Gama: 0–999.9 μg /m³
- Tensioni i furnizimit: 5V (4.7-5.3V)
- Konsumi i energjisë (punë): 70mA ± 10mA
- Konsumi i energjisë (lazer dhe ventilator në modalitetin e gjumit): <4mA
- Temperatura e ruajtjes: -20 deri +60C
- Temperatura e punës: -10 deri +50C
- Lagështia (ruajtja): Maks. 90%
- Lagështia (puna): Maks. 70% (kondensimi i avullit të ujit falsifikon leximet)
- Saktësia: 70% për 0.3μm dhe 98% për 0.5μm
- Madhësia: 71x70x23 mm
- Certifikimi: CE, FCC, RoHS
SD011 përdor PCB si njëra anë e zorrës, duke lejuar uljen e kostos së saj. Dioda e receptorit është montuar në anën e PCB (kjo është e detyrueshme pasi çdo zhurmë midis diodës dhe LNA duhet të shmanget). Lazeri emetues është montuar në kutinë plastike dhe lidhet me PCB nëpërmjet një teli fleksibël.
Me pak fjalë, Nova Fitness SDS011 është një sensor profesional pluhuri lazer. Tifozi i montuar në sensor thith automatikisht ajrin. Sensori përdor një parim të shpërndarjes së dritës lazer* për të matur vlerën e grimcave të pluhurit të pezulluara në ajër. Sensori siguron lexime të saktësisë së lartë dhe të besueshme të vlerave PM2.5 dhe PM10. Çdo ndryshim në mjedis mund të vërehet pothuajse menjëherë në një kohë të shkurtër përgjigjeje nën 10 sekonda. Sensori në modalitetin standard raporton leximin me një interval prej 1 sekondash.
* Parimi i Shpërndarjes me Laser: Shpërndarja e dritës mund të shkaktohet kur grimcat kalojnë nëpër zonën e zbulimit. Drita e shpërndarë shndërrohet në sinjale elektrike dhe këto sinjale do të amplifikohen dhe përpunohen. Numri dhe diametri i grimcave mund të merret me anë të analizës sepse forma e valës së sinjalit ka lidhje të caktuara me diametrin e grimcave.
Hapi 4: Por si SDS011 mund t'i kapë ato grimca?
Siç u komentua më parë, parimi i përdorur nga SDS011 është shpërndarja e dritës ose më mirë, Dynamic Light Scattering (DLS), e cila është një teknikë në fizikë që mund të përdoret për të përcaktuar profilin e shpërndarjes së madhësisë së grimcave të vogla në pezullim ose polimere në tretësirë. Në fushën e DLS, luhatjet kohore zakonisht analizohen me anë të intensitetit ose funksionit të auto-korrelacionit foton (i njohur gjithashtu si spektroskopia e korrelacionit foton ose shpërndarja thuajse-elastike e dritës). Në analizën e fushës kohore, funksioni i autokorrelacionit (ACF) zakonisht prishet duke filluar nga koha e vonesës zero, dhe dinamika më e shpejtë për shkak të grimcave më të vogla çon në dekorrelacion më të shpejtë të gjurmës së intensitetit të shpërndarë. Shtë treguar se intensiteti ACF është transformimi Fourier i spektrit të fuqisë, dhe për këtë arsye matjet DLS mund të kryhen njësoj mirë në fushën spektrale.
Mbi një shpërndarje hipotetike të dritës dinamike të dy mostrave: Grimca më të mëdha (si PM10) në krye dhe grimca më të vogla (si PM2.5) në pjesën e poshtme. Dhe duke parë brenda sensorit tonë, ne mund të shohim se si zbatohet parimi i shpërndarjes së dritës.
Sinjali elektrik i kapur në diodë shkon në Amplifikatorin e Zhurmës së Ulët dhe nga ai konvertohet në një sinjal dixhital përmes një ADC dhe në jashtë përmes një UART.
Për të ditur më shumë rreth SDS011 mbi një përvojë të vërtetë shkencore, ju lutemi hidhini një sy punës së Konstantinos et al në 2018, Zhvillimi dhe Testimi në terren i Sistemit Portativ me Kosto të Ulët për Monitorimin e Përqendrimeve PM2.5.
Hapi 5: Koha e shfaqjes
Le të bëjmë një pushim mbi të gjithë këtë teori dhe të përqëndrohemi në mënyrën e matjes së grimcave duke përdorur një Raspberry Pi dhe sensorin SDS011
Lidhja HW është në fakt shumë e thjeshtë. Sensori shitet me një përshtatës USB për të ndërlidhur të dhënat e daljes nga 7 kunjat e tij UART me një nga lidhësit standardë USB të RPi.
SDS011 pinout:
- Pin 1 - nuk është e lidhur
- Pin 2 - PM2.5: 0–999μg/m³; Dalja PWM
- Pin 3–5V
- Pin 4 - PM10: 0–999 μg/m³; Dalja PWM
- Pin 5 - GND
- Pin 6 - RX UART (TTL) 3.3V
- Pin 7 - TX UART (TTL) 3.3V
Për këtë tutorial, unë jam duke përdorur për herë të parë, një Raspberry-Pi 4. të ri, por natyrisht, çdo model i mëparshëm gjithashtu do të funksionojë mirë.
Sapo të lidhni sensorin në një nga portat USB RPi, automatikisht do të filloni të dëgjoni tingullin e ventilatorit të tij. Zhurma është pak e bezdisshme, kështu që ndoshta duhet ta shkëputni nga priza dhe të prisni derisa të keni gati gjithçka me SW.
Komunikimi midis sensorit dhe RPi do të bëhet përmes një protokolli serik. Detajet në lidhje me këtë protokoll mund të gjenden këtu: Protokolli i Kontrollit të Sensorit të Pluhurit Laser V1.3. Por për këtë projekt, më e mira është të përdorni një ndërfaqe python për të thjeshtuar kodin që do të zhvillohet. Ju mund të krijoni ndërfaqen tuaj ose të përdorni disa që janë në dispozicion në internet, si të Frank Heuer ose Ivan Kalchev. Ne do të përdorim të fundit, i cili është shumë i thjeshtë dhe funksionon mirë (mund të shkarkoni skriptin sds011.py nga GitHub ose imi).
Skedari sds011.py duhet të jetë në të njëjtën drejtori ku krijoni skriptin tuaj.
Gjatë fazës së zhvillimit, unë do të përdor një Fletore Jupyter, por ju mund të përdorni çdo IDE që ju pëlqen (Thonny ose Geany, për shembull, që janë pjesë e paketës Raspberry Pi Debian janë të dyja shumë të mira).
Filloni të importoni sds011 dhe krijoni shembullin e sensorit tuaj. SDS011 siguron një metodë për të lexuar nga sensori duke përdorur një UART.
nga importi sds011 *
sensor = SDS011 ("/dev/ttyUSB0")
Mund të ndizni ose fikni sensorin tuaj me komandën e gjumit:
pmt_2_5, pmt_10 = sensor.query ()
Prisni të paktën 10 sekonda për stabilizim para matjeve dhe të paktën 2 sekonda për të filluar një të re (shihni kodin më lart).
Dhe kjo është gjithçka që duhet të dini për sa i përket SW për të përdorur sensorin. Por le të shkojmë më thellë në Kontrollin e Cilësisë së Ajrit! Në fillim të këtij artikulli, nëse keni eksploruar faqet që japin informacion se sa i mirë apo i keq është ajri, duhet të kuptoni që ngjyrat lidhen me ato vlera. Çdo ngjyrë është një Indeks. Më i njohuri prej tyre është AQI (Indeksi i Cilësisë së Ajrit), i përdorur në SHBA dhe disa vende të tjera.
Hapi 6: Indeksi i Cilësisë së Ajrit - AQI
AQI është një indeks për raportimin e cilësisë ditore të ajrit. Ai ju tregon se sa i pastër ose i ndotur është ajri juaj, dhe cilat efekte shoqëruese shëndetësore mund të jenë shqetësuese për ju. AQI fokusohet në efektet shëndetësore që mund të përjetoni brenda pak orësh ose ditësh pasi merrni frymë ajër të ndotur.
EPA (Agjencia e Shteteve të Bashkuara për Mbrojtjen e Mjedisit), për shembull, llogarit AQI jo vetëm për ndotjen e grimcave (PM2.5 dhe PM10), por edhe për ndotësit e tjerë kryesorë të ajrit të rregulluar nga Akti i Ajrit të Pastër: ozoni i nivelit tokësor, monoksidi i karbonit, dioksid squfuri dhe dioksid nitrogjeni. Për secilin prej këtyre ndotësve, EPA ka krijuar standarde kombëtare të cilësisë së ajrit për të mbrojtur shëndetin publik. Shikoni foton e mësipërme me vlerat AQI, ngjyrat dhe mesazhet shëndetësore të lidhura.
Siç u komentua më parë ato vlera dhe ngjyra AQI janë të lidhura me secilin prej agjentëve ndotës, por si të shoqërohen vlerat e krijuara nga sensorët me to? Një tabelë shtesë i lidh të gjitha siç tregohet më sipër.
Por sigurisht, nuk ka kuptim të përdorësh një tryezë të tillë. Në fund, është një algoritëm i thjeshtë matematikor që bën llogaritjen. Për këtë, ne do të importojmë bibliotekën për ta kthyer midis vlerës AQI dhe përqendrimit të ndotësve (µg/m³): python-aqi.
Instaloni bibliotekën duke përdorur PIP dhe bëni një test (shihni kodin më lart)
pip instaloni python-aqi
Po në lidhje me Kilin?
Në Kili përdoret një indeks i ngjashëm, ICAP: Indeksi i Cilësisë së Ajrit për Grimcat Frymëmarrëse. Një Dekret Suprem 59 i 16 marsit 1998, i Sekretarit të Përgjithshëm të Ministrisë së Presidencës së Republikës, përcakton në nenin e tij 1, shkronja g) që nivelet që përcaktojnë ICA për materialin e grimcave të frymëmarrjes, ICAP.
Vlerat do të ndryshojnë në mënyrë lineare midis seksioneve, vlera 500 do të korrespondonte me vlerën kufi mbi të cilën do të kishte një rrezik për popullatën kur ekspozohej ndaj këtyre përqendrimeve. Sipas vlerave të ICAP, janë krijuar kategori që kualifikojnë nivelet e përqendrimit të MP10, ndaj të cilëve njerëzit ishin të ekspozuar.
Hapi 7: Regjistrimi i të dhënave në nivel lokal
Në këtë pikë, ne kemi të gjitha mjetet për të kapur të dhëna nga sensori dhe gjithashtu t'i konvertojmë ato për një "vlerë më të lexueshme", se është indeksi AQI.
Le të krijojmë një funksion për të kapur ato vlera. Ne do të kapim 3 vlera në sekuencë duke marrë mesataren midis tyre:
def get_data (n = 3):
sensor.gjumë (gjumë = I rremë) pmt_2_5 = 0 pmt_10 = 0 kohë. gjumë (10) për i në rang (n): x = sensor.query () pmt_2_5 = pmt_2_5 + x [0] pmt_10 = pmt_10 + x [1] koha. gjumi (2) pmt_2_5 = rrumbullak (pmt_2_5/n, 1) pmt_10 = rrumbullak (pmt_10/n, 1) sensor. gjumi (gjumi = Vërtetë) koha. gjumi (2) kthimi pmt_2_5, pmt_10 Më sipër mund të shihni rezultatin e testit. Le të bëjmë gjithashtu një funksion për të kthyer vlerat numerike të PM në indeksin 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)) kthehu aqi_2_5, aqi_10 mbi rezultatin e një testi me të dy funksionet. Por çfarë të bëni me ta? Përgjigja më e thjeshtë është krijimi i një funksioni për të ruajtur të dhënat e kapura, duke i ruajtur ato në një skedar lokal
def save_log ():
me hapur ("Rruga JUAJ K HTU/air_quality.csv", "a") si regjistër: dt = datetime.now () log.write ("{}, {}, {}, {}, {} n". format (dt, pmt_2_5, aqi_2_5, pmt_10, aqi_10)) log. mbyll () Me një lak të vetëm, mund të regjistroni të dhëna në baza të rregullta në skedarin tuaj lokal, për shembull, çdo minutë
ndërsa (e vërtetë):
pmt_2_5, pmt_10 = marr_data () aqi_2_5, aqi_10 = conv_aqi (pmt_2_5, pmt_10) provo: save_log () përveç: print ("[INFO] Dështimi në regjistrimin e të dhënave") kohë. gjumë (60) Çdo 60 sekonda, afati kohor plus të dhënat do të "shtohen" në këtë skedar, siç mund ta shohim më lart.
Hapi 8: Dërgimi i të dhënave në një Shërbim Cloud
Në këtë pikë, ne kemi mësuar se si të kapim të dhëna nga sensori, duke i ruajtur ato në një skedar lokal CSV. Tani, është koha për të parë se si t'i dërgoni ato të dhëna në një platformë IoT. Në këtë tutorial, ne do të përdorim ThingSpeak.com.
"ThingSpeak është një aplikacion me burim të hapur të Internetit të Gjërave (IoT) për të ruajtur dhe marrë të dhëna nga gjërat, duke përdorur API-të REST dhe MQTT. ThingSpeak mundëson krijimin e aplikacioneve të regjistrimit të sensorëve, aplikacioneve për përcjelljen e vendndodhjes dhe një rrjeti social të gjërave me përditësime të statusit."
Së pari, duhet të keni një llogari në ThinkSpeak.com. Tjetra, ndiqni udhëzimet për të krijuar një kanal, duke marrë parasysh ID -në e tij dhe shkruani çelësin API.
Kur krijoni kanalin, duhet gjithashtu të përcaktoni se çfarë informacioni do të ngarkohet në secilën nga 8 fushat, siç tregohet më sipër (në rastin tonë vetëm 4 prej tyre do të përdoren).
Hapi 9: Protokolli MQTT dhe Lidhja ThingSpeak
MQTT është një arkitekturë publikimi/abonimi që u zhvillua kryesisht për të lidhur gjerësinë e brezit dhe pajisjet e kufizuara në energji përmes rrjeteve pa tel. Shtë një protokoll i thjeshtë dhe i lehtë që kalon nëpër bazat TCP/IP ose WebSockets. MQTT mbi WebSockets mund të sigurohet me SSL. Arkitektura e publikimit/regjistrimit mundëson që mesazhet të shtyhen në pajisjet e klientit pa pasur nevojë që pajisja të anketojë vazhdimisht serverin.
Ndërmjetësi MQTT është pika qendrore e komunikimit dhe është përgjegjëse për shpërndarjen e të gjitha mesazheve midis dërguesve dhe marrësve të ligjshëm. Një klient është çdo pajisje që lidhet me ndërmjetësin dhe mund të publikojë ose të regjistrohet në tema për të hyrë në informacion. Një temë përmban informacione për drejtimin për ndërmjetësin. Çdo klient që dëshiron të dërgojë mesazhe i publikon ato në një temë të caktuar, dhe secili klient që dëshiron të marrë mesazhe regjistrohet në një temë të caktuar. Ndërmjetësi i dërgon të gjithë mesazhet me temën që përputhet tek klientët përkatës.
ThingSpeak ™ ka një ndërmjetës MQTT në URL mqtt.thingspeak.com dhe portin 1883. Ndërmjetësi ThingSpeak mbështet të dy botimet MQTT dhe pajtimin MQTT.
Në rastin tonë, ne do të përdorim Publikimin MQTT.
Hapi 10: Publikimi i MQTT
Për të filluar, le të instalojmë bibliotekën e klientit Eclipse Paho MQTT Python, që zbaton versionet 3.1 dhe 3.1.1 të protokollit MQTT
sudo pip instaloni paho-mqtt
Tjetra, le të importojmë bibliotekën paho:
import paho.mqtt.publikoj si publikoj
dhe iniconi kanalin Thingspeak dhe protokollin MQTT. Kjo metodë e lidhjes është më e thjeshta dhe kërkon më pak burime të sistemit:
channelID = "ID -ja juaj e kanalit"
apiKey = "ÇELEYS TUAJ TR SHKRUAR" temë = "kanale/" + channelID + "/publikoj/" + apiKey mqttHost = "mqtt.thingspeak.com" Tani ne duhet të përcaktojmë "ngarkesën" tonë
tPayload = "field1 =" + str (pmt_2_5) + "& field2 =" + str (aqi_2_5) + "& field3 =" + str (pmt_10) + "& field4 =" + str (aqi_10)
Dhe kjo eshte! ne jemi gati të fillojmë të dërgojmë të dhëna në re! Le të rishkruajmë funksionin e mëparshëm të lakut për të përfshirë edhe pjesën ThingSpeak të tij.
# Dërgimi i të gjitha të dhënave në ThingSpeak çdo 1 minutë
ndërsa (E vërtetë): pmt_2_5, pmt_10 = merrni_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) provoni: botoni.single (temë, ngarkesë = tPayload, hostname = mqttHost, port = tPort, tls = tTLS, transport = tTransport) save_log () përveç: print ("[INFO] Dështimi në dërgimin e të dhënave ") koha. Gjumi (60) Nëse gjithçka është në rregull, duhet të shihni që të dhënat gjithashtu shfaqen në kanalin tuaj në thingspeak.com siç tregohet më sipër.
Hapi 11: Skenari përfundimtar
Importantshtë e rëndësishme të theksohet se Jupyter Notebook është një mjet shumë i mirë për zhvillim dhe raportim, por jo për të krijuar një kod për ta vënë në prodhim. Ajo që duhet të bëni tani është të merrni pjesën përkatëse të kodit dhe të krijoni një skript.py dhe ta ekzekutoni atë në terminalin tuaj.
Për shembull, "ts_air_quality_logger.py", që duhet të ekzekutoni me komandën:
python 3 ts_air_quality_logger.py
Ky skenar, si dhe Fletorja Jupyter dhe sds011.py mund të gjenden në depon time në RPi_Air_Quality_Sensor.
Vini re se ky skenar është i realizueshëm vetëm për testim. Më e mira është të mos përdorni vonesa brenda lakut përfundimtar (që vendos kodin në "pauzë"), në vend të kësaj përdorni kohëmatës. Ose për një aplikim të vërtetë, më e mira është të mos përdorni lak, duke pasur Linux të programuar për të ekzekutuar skriptin në baza të rregullta me crontab.
Hapi 12: Marrja e monitorit jashtë
Pasi monitori im i Raspberry Pi Quality Air po punonte, unë mblodha RPi brenda një kutie plastike, duke e mbajtur sensorin jashtë dhe e vendosa jashtë shtëpisë sime.
U bënë dy përvoja.
Hapi 13: Djegia e motorit të benzinës
Sensori u vendos rreth 1m nga gazi i Lambretta dhe motori i tij u ndez. Motori po punonte për disa minuta dhe u fik. Nga skedari i mësipërm i regjistrit, rezultati që mora. Interesante për të konfirmuar se PM2.5 ishte grimca më e rrezikshme që rezultoi nga motori.
Hapi 14: Djegia e drurit
Duke parë skedarin e regjistrit, ne kuptojmë se të dhënat e sensorit ishin momentale "jashtë rrezes" dhe nuk ishin kapur mirë nga Biblioteka e konvertimit AQI, kështu që unë ndryshoj kodin e mëparshëm për ta trajtuar atë:
def conv_aqi (pmt_2_5, pmt_10):
provo: aqi_2_5 = aqi.to_iaqi (aqi. POLLUTANT_PM25, str (pmt_2_5)) aqi_10 = aqi.to_iaqi (aqi. POLLUTANT_PM10, str (pmt_10)) kthehu aqi_2_5, aqi_10 përveç: kthimit 600, 600 Kjo situatë mund të ndodhë në terren, gjë që është në rregull. Mos harroni se në fakt, duhet të përdorni mesataren lëvizëse për të marrë vërtet AQI (të paktën për orë, por zakonisht çdo ditë).
Hapi 15: Përfundimi
Si gjithmonë, shpresoj se ky projekt mund të ndihmojë të tjerët të gjejnë rrugën e tyre në botën emocionuese të Elektronikës dhe Shkencës së të Dhënave!
Për detaje dhe kodin përfundimtar, ju lutemi vizitoni depozitimin tim GitHub: RPi_Air_Quality_Sensor.
Saludos nga jugu i botës!
Shihemi në udhëzimin tim të ardhshëm!
Faleminderit, Marcelo
Recommended:
Bëni një këngë të ndjeshme me kosto të ulët në minuta !: 10 hapa (me fotografi)
Bëni një udhë të ndjeshme me kosto të ulët në minuta !: Në udhëzuesin tim të mëparshëm, ju tregova se si të bëni një model model treni me mur anësor të automatizuar. Ai përdori një segment pista, të quajtur 'pista e sensuar'. Thingshtë një gjë mjaft e dobishme të kesh në një plan urbanistik model hekurudhor. Mund të përdoret për sa më poshtë: Blloko
Laptop me një buxhet: një opsion i energjisë me kosto të ulët (Dy disqe të brendshëm, bazuar në Lenovo): 3 hapa
Laptop me një buxhet: një opsion i energjisë me kosto të ulët (Dy disqe të brendshëm, bazuar në Lenovo): Ky udhëzues do të përqëndrohet në një konfigurim të përditësuar të laptopit Lenovo T540p si një makinë shoferi ditore për shfletimin e uebit, përpunimin e fjalëve, lojërat e lehta dhe audio Me Shtë konfiguruar me ruajtje në gjendje të ngurtë dhe mekanike për shpejtësinë dhe kapacitetin
Ndërtoni një Sensor të Cilësisë së Ajrit Inhouse IoT Nuk kërkohet re: 10 hapa
Ndërtoni një Sensor të Cilësisë së Ajrit Inhouse IoT Nuk kërkohet re: Cilësia e ajrit të brendshëm ose të jashtëm varet nga shumë burime ndotjeje dhe gjithashtu nga moti. Kjo pajisje kap disa nga parametrat e zakonshëm dhe disa nga më interesantët duke përdorur 2 çipa sensorë. Temperatura Lagështia Presioni Gazi Organik Mikro
MQmax 0.7 një platformë WiFi IoT me kosto të ulët Bazuar në Esp8266 dhe Arduino Mini Pro: 6 hapa
MQmax 0.7 një Platformë IoT WiFi me kosto të ulët Bazuar në Esp8266 dhe Arduino Mini Pro: Përshëndetje Ky është udhëzimi im i dytë (tani e tutje ndaloj numërimin). Unë e bëra këtë për të krijuar një platformë të thjeshtë (për mua të paktën), të lirë, të lehtë për t’u bërë dhe efektive për aplikimet e IoT Real që përfshijnë punën M2M. Kjo Platformë punon me esp8266 dhe
Ndarës i ajrit me vaj me kosto të ulët .: 6 hapa
Kosto e ulët e ndarësit të ajrit të naftës .: Valvula pcv e makinës së gruas sime është lëshuar vëllim i konsiderueshëm i naftës në marrjen e ajrit. Instalimi i një valvule të re nuk ndihmoi. Ja se si shkova për të bërë një ndarës ajri me vaj të ulët për automjetin e saj