Satura rādītājs:
- 1. darbība. Aparatūra
- 2. solis: Raspbery Pi savienošana
- 3. darbība: datu vākšana no sensoriem
- 4. darbība. Mājas automatizācijas pakalpojuma iestatīšana
- 5. darbība. Rezultāti
- 6. darbība. Secinājums
Video: Raspberry Pi iekštelpu klimata uzraudzības un kontroles sistēma: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Cilvēki vēlas justies ērti savā mājā. Tā kā mūsu apkārtnes klimats var nebūt piemērots mums, mēs izmantojam daudzas ierīces, lai uzturētu veselīgu iekštelpu vidi: sildītāju, gaisa dzesētāju, mitrinātāju, sausinātāju, attīrītāju utt. Mūsdienās ir ierasts atrast dažas ierīces, kas aprīkotas ar automātisko režīmā, lai sajustu vidi un kontrolētu sevi. Tomēr:
- Daudzi no tiem ir pārāk dārgi/ nav naudas vērti.
- Viņu elektriskās ķēdes ir vieglāk salauzt un grūtāk nomainīt nekā parastās mehāniskās detaļas
- Ierīces jāpārvalda ražotāja lietotnē. Mājās parasti ir dažas viedās ierīces, un katrai no tām ir sava lietotne. Viņu risinājums ir integrēt lietotni tādās platformās kā Alexa, Google palīgs un IFTTT, lai mums būtu "centralizēts" kontrolieris
- Vissvarīgākais ir tas, ka ražotājiem ir mūsu dati, un Google/Amazon/IFTTT/etc ir mūsu dati. Mums nav. Jums, iespējams, nerūp privātums, bet dažreiz mēs visi varētu vēlēties apskatīt jūsu guļamistabas mitruma modeli, piemēram, lai izlemtu, kurā laikā atvērt logus.
Šajā apmācībā es izveidoju salīdzinoši zemu izmaksu iekštelpu klimata kontroliera Raspberry Pi bāzes prototipu. RPi sazinās ar perifērijas ierīcēm, izmantojot SPI/I2C/USB saskarnes:
- Lai savāktu temperatūru, mitrumu un gaisa spiedienu, tiek izmantots atmosfēras sensors.
- Augstas precizitātes gaisa kvalitātes sensors nodrošina atmosfēras daļiņu (PM2.5 un PM10) datus, ko izmanto, lai aprēķinātu gaisa kvalitātes indeksu (AQI)
Kontrolieris apstrādā iegūtos datus un aktivizē ierīces darbības, nosūtot pieprasījumus IFTTT Webhook automatizācijas pakalpojumam, kas kontrolē atbalstītos WiFi Smart spraudņus.
Prototips ir veidots tā, lai varētu viegli pievienot citus sensorus, ierīces un automatizācijas pakalpojumus.
1. darbība. Aparatūra
Ieteicamā aparatūra, lai to izveidotu:
- Raspberry Pi (jebkura versija) ar WiFi. Es to izveidoju, izmantojot RPi B+. RPi ZeroW darītu lieliski un maksātu ~ 15 USD
- BME280 sensors temperatūrai, mitrumam, gaisa spiedienam ~ 5 $
- A Nova SDS011 augstas precizitātes lāzers PM2.5/PM10 gaisa kvalitātes noteikšanas sensora modulis ~ 25 $
- LED/LCD displejs. Es izmantoju SSD1305 2,23 collu OLED ekrānu ~ 15 $
- Daži WiFi/ZigBee/Z-Wave viedie ligzdas. 10-20 USD par katru
- Gaisa attīrītājs, mitrinātājs, sausinātājs, sildītājs, dzesētājs utt. Ar mehāniskiem slēdžiem. Piemēram, šīs apmācības sagatavošanai es izmantoju lētu gaisa attīrītāju
Iepriekš minētās kopējās izmaksas ir <100 USD, kas ir daudz mazāk nekā, piemēram, viedais attīrītājs, kas varētu viegli maksāt 200 USD.
2. solis: Raspbery Pi savienošana
Shēmas shēma parāda, kā savienot RPi ar BME280 sensoru, izmantojot I2C saskarni, un OLED displeju HAT, izmantojot SPI saskarni.
Waveshare OLED HAT varētu piestiprināt virs GPIO, taču, lai to kopīgotu ar citām perifērijas ierīcēm, ir nepieciešams GPIO sadalītājs. To var konfigurēt, lai izmantotu I2C, lodējot rezistorus aizmugurē.
Plašāku informāciju par SSD1305 OLED CAT var atrast šeit.
Gan I2C, gan SPI saskarnes ir jāiespējo RPi ar:
sudo raspi-config
Putekļu sensors Nova SDS011 ir savienots ar RPi, izmantojot USB portu (ar seriālā USB adapteri).
3. darbība: datu vākšana no sensoriem
Atmosfēras dati, kas izskatās diezgan vienkārši, tiek savākti no BME280 sensora no python skripta.
21. novembris-20 19:19:25-INFO-kompensēta_lasīšana (id = 6e2e8de5-6bc2-4929-82ab-0c0e3ef6f2d2, laika zīmogs = 2020-11-21 19: 19: 25.604317, temperatūra = 20,956 ° C, spiediens = 1019,08 hPa, mitrums = 49,23 % rH)
Putekļu sensora dati ir jāapstrādā nedaudz vairāk. Sensora modulis iesūc dažus gaisa paraugus, lai noteiktu daļiņas, tāpēc tam vajadzētu darboties kādu laiku (30 sekundes), lai iegūtu ticamus rezultātus. No mana novērojuma es ņemu vērā tikai pēdējo 3 paraugu vidējo. Process ir pieejams šajā skriptā.
21. novembris -20 19:21:07 - DEBUG - 0. PM2.5: 2.8, PM10: 5.9
21. novembris-20 19:21:09- DEBUG- 1. PM2.5: 2.9, PM10: 6.0 21. novembris-20 19:21:11- DEBUG- 2. PM2.5: 2.9, PM10: 6.0 21- 20. novembris 19:21:13- DEBUG- 3. PM2.5: 2.9, PM10: 6.3 21. novembris 20:21:15- DEBUG- 4. PM2.5: 3.0, PM10: 6.2 21. novembris- 20 19:21:17 - DEBUG - 5. PM2.5: 2.9, PM10: 6.4 21. novembris -20 19:21:19 - DEBUG - 6. PM2.5: 3.0, PM10: 6.6 21. novembris 20 19: 21: 21 - DEBUG - 7. PM2.5: 3.0, PM10: 6.8 21. novembris -20 19:21:23 - DEBUG - 8. PM2.5: 3.1, PM10: 7.0 21. novembris -20 19:21: 25 - DEBUG - 9. PM2.5: 3.2, PM10: 7.0 21. novembris -20 19:21:28 - DEBUG - 10. PM2.5: 3.2, PM10: 7.1 21. novembris 20:21:30 - DEBUG - 11. PM2.5: 3.2, PM10: 6.9 21. novembris -20 19:21:32 - DEBUG - 12. PM2.5: 3.3, PM10: 7.0 21. novembris -20 19:21:34 - DEBUG - 13. PM2.5: 3.3, PM10: 7.1 21. novembris 20:21:36 - DEBUG - 14. PM2.5: 3.3, PM10: 7.1
Putekļu sensors nodrošina tikai PM2.5 un PM10 indeksu. Lai aprēķinātu AQI, mums ir nepieciešams python-aqi modulis:
aqi_index = aqi.to_aqi ([((aqi. POLLUTANT_PM25, dust_data [0]), (aqi. POLLUTANT_PM10, dust_data [1])])
Datu vākšana, attēlošana un ierīces kontrole tiek veikta vienlaikus un asinhroni. Dati tiek saglabāti vietējā datu bāzē. Mums nav nepieciešams tos bieži palaist, ja vide nemainās pārāk ātri. Man pietiek ar 15 minūšu intervālu. Turklāt putekļu sensora modulī uzkrājas putekļi, tāpēc mums nevajadzētu tos pārmērīgi izmantot, lai izvairītos no tīrīšanas.
4. darbība. Mājas automatizācijas pakalpojuma iestatīšana
Ir daudz mājas automatizācijas platformu, un tām vajadzētu instalēt platformu, kuru atbalsta jūsu viedā kontaktligzda. Ja jums rūp privātums, jums vajadzētu izveidot savu sistēmu. Pretējā gadījumā varat izmantot populārās platformas, kuras atbalsta lielākā daļa WiFi viedo ligzdu: Google palīgs, Alexa vai IFTTT. Mēģiniet izvēlēties kontaktligzdas platformu ar API, ar kuru mijiedarboties (Webhook ir ideāls šim nolūkam)
Šajā apmācībā es izmantoju IFTTT, jo to ir ļoti viegli lietot pat iesācējiem. Bet ņemiet vērā, ka: 1. ir daudz viedo kontaktligzdu, kas neatbalsta IFTTT, un 2. brīdī, kad to rakstu, IFTTT ļauj bez maksas izveidot tikai 3 sīklietotnes (automatizācijas uzdevumus), ar ko pietiek tikai 1 ierīce.
Šie ir soļi:
1. Izmantojot Webhook pakalpojumu, IFTTT izveidojiet divas sīklietotnes ierīces ieslēgšanai un izslēgšanai. Sīkāka informācija atrodama šeit.
2. Kopējiet API atslēgu un nokopējiet to python skriptā. Es ieteiktu drošības apsvērumu dēļ to saglabāt atsevišķā failā.
3. Definējiet vadības loģiku/parametrus galvenajā skriptā.
5. darbība. Rezultāti
Labi, tagad mēs pārbaudām sistēmu.
OLED displejs parāda pašreizējo temperatūru, mitrumu un aprēķināto gaisa kvalitātes indeksu (AQI). Tas arī parāda minimālo un maksimālo vērtību pēdējo 12 stundu laikā.
AQI laikrindu dati dažās dienās parāda kaut ko interesantu. Ievērojiet AQI modeļa pieaugumu? Tas notika divas reizes dienā, mazā virsotne ap pulksten 12:00 un augstākā virsotne ir ap pulksten 19:00. Nu, jūs uzminējāt, tas bija tad, kad gatavojām, apkārt izklīdinot daudz daļiņu. Ir interesanti redzēt, kā mūsu ikdienas aktivitātes ietekmē iekštelpu vidi.
Arī pēdējais skaitļa pieaugums ilga daudz īsāk nekā iepriekšējie. tas ir, kad mēs pievienojam sistēmā gaisa attīrītāju. RPi klimata kontrolieris nosūta PURIFIER_ON pieprasījumu, ja AQI> 50, un PURIFIER_OFF, ja AQI <20. Tajā laikā varat redzēt IFTTT Webhook aktivizētāju.
6. darbība. Secinājums
Tieši tā!
Savāktos datus var izmantot arī, lai kontrolētu gaisa sildītājus, dzesētājus, (de) mitrinātājus utt. Jums vienkārši jāpērk vairāk viedo kontaktligzdu, un katra vecā ierīce kļūs "gudra".
Ja vēlaties kontrolēt daudzas ierīces, iespējams, jums rūpīgi jāizvērtē, kuru mājas automatizācijas pakalpojumu vēlaties izmantot. Es ļoti ieteiktu izveidot atvērtā pirmkoda mājas automatizācijas platformu, taču, ja tā ir pārāk sarežģīta, ir pieejami vienkāršāki risinājumi, piemēram, Google palīgs un IFTTT Webhook, vai izmantot Zigbee viedās ligzdas.
Pilnu šī prototipa ieviešanu var atrast Github krātuvē:
github.com/vuva/IndoorClimateControl
Izklaidējieties !!!
Ieteicams:
Uz IoT balstīta augsnes mitruma uzraudzības un kontroles sistēma, izmantojot NodeMCU: 6 soļi
Uz IoT balstīta augsnes mitruma uzraudzības un kontroles sistēma, izmantojot NodeMCU: Šajā apmācībā mēs ieviesīsim uz IoT balstītu augsnes mitruma uzraudzības un kontroles sistēmu, izmantojot ESP8266 WiFi moduli, ti, NodeMCU. Šim projektam nepieciešamās sastāvdaļas: ESP8266 WiFi modulis- Amazon (334/- INR) releja modulis- Amazon (130/- INR
Raspberry Pi balstīta iekštelpu klimata uzraudzības sistēma: 6 soļi
Raspberry Pi balstīta iekštelpu klimata uzraudzības sistēma: izlasiet šo emuāru un izveidojiet savu sistēmu, lai jūs varētu saņemt brīdinājumus, ja jūsu istaba ir pārāk sausa vai mitra. Kas ir iekštelpu klimata uzraudzības sistēma un kāpēc mums tāda nepieciešama? ātri apskatīt galvenos klimata apstākļus
ELEKTRONISKĀ ĀTRUMA KONTROLES (ESC) KONTROLES SIGNĀLA ĢENERATORA ALTERNATĪVA: 7 soļi
ELEKTRONISKĀ ĀTRUMA KONTROLES (ESC) KONTROLES SIGNĀLA ĢENERATORA ALTERNATĪVS: Pirms kāda laika savā YouTube kanālā publicēju videoklipu (https://www.youtube.com/watch?v=-4sblF1GY1E), kurā parādīju, kā izveidot vēja turbīnu. no birstes līdzstrāvas motora. Es izveidoju video spāņu valodā, un tas paskaidroja, ka šis dzinējs tika nodots
Hidroponiska siltumnīcas uzraudzības un kontroles sistēma: 5 soļi (ar attēliem)
Hidroponiskā siltumnīcu uzraudzības un kontroles sistēma: Šajā pamācībā es jums parādīšu, kā izveidot hidroponisku siltumnīcas monitoringa un kontroles sistēmu. Es jums parādīšu izvēlētos komponentus, ķēdes uzbūves shēmu un Arduino skici, kas izmantota programmēšanai Seeed
Vienkārša duļķainības uzraudzības un kontroles sistēma mikroaļģēm: 4 soļi
Vienkārša duļķainības monitoringa un kontroles sistēma mikroaļģēm: Pieņemsim, ka jums ir garlaicīgi ar paraugu ņemšanas ūdeni, lai izmērītu duļķainību - bruto termins, kas norāda uz sīkām, suspendētām daļiņām ūdenī, kas samazina gaismas intensitāti, palielinoties gaismas ceļam vai palielinot daļiņu koncentrācija vai abi