Sadržaj:
- Korak 1: Hardver
- Korak 2: Ožičenje Raspbery Pi
- Korak 3: Prikupljanje podataka sa senzora
- Korak 4: Postavljanje usluge kućne automatizacije
- Korak 5: Rezultati
- Korak 6: Zaključak
Video: Raspberry Pi sistem za nadzor i kontrolu klime u zatvorenom prostoru: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
Ljudi žele biti udobni u svojoj kući. Kako nam klima na našem području možda ne odgovara, koristimo mnoge aparate za održavanje zdravog unutrašnjeg okruženja: grijač, hladnjak zraka, ovlaživač zraka, odvlaživač zraka, pročišćivač itd. U današnje vrijeme uobičajeno je pronaći neke od uređaja opremljenih automatskim način da osjete okruženje i da se kontrolišu. Kako god:
- Mnogi od njih su preskupi/ ne vrijede novca.
- Njihova električna kola lakše se prekidaju i teže zamjenjuju od konvencionalnih mehaničkih dijelova
- Uređajima mora upravljati aplikacija proizvođača. Uobičajeno je da u kući imate nekoliko pametnih uređaja, a svaki od njih ima svoju aplikaciju. Njihovo rješenje je integracija aplikacije u platforme poput Alexa, Google Assistant i IFTTT tako da imamo "centralizirani" kontroler
- Ono što je najvažnije, proizvođači imaju naše podatke, a Google/Amazon/IFTTT/itd. Naše podatke. Mi ne znamo. Možda vam nije stalo do privatnosti, ali ponekad bismo svi mogli htjeti pogledati primjer vlažnosti vaše spavaće sobe, na primjer, kako bismo odlučili u koje vrijeme otvoriti prozore.
U ovom vodiču konstruišem prototip relativno jeftinog unutrašnjeg kontrolera klime zasnovanog na Raspberry Pi. RPi komunicira s perifernim uređajima putem SPI/I2C/USB sučelja:
- Atmosferski senzor se koristi za prikupljanje temperature, vlažnosti i tlaka zraka.
- Senzor kvalitete zraka visoke preciznosti pruža podatke o atmosferskim česticama (PM2,5 i PM10) koji se koriste za izračun indeksa kvalitete zraka (AQI)
Kontroler obrađuje prikupljene podatke i pokreće radnje uređaja slanjem zahtjeva na uslugu automatizacije IFTTT Webhook koja kontrolira podržane WiFi Smart priključke.
Prototip je izgrađen na način da se lako mogu dodati drugi senzori, uređaji i usluge automatizacije.
Korak 1: Hardver
Preporučeni hardver za izgradnju ovog:
- Raspberry Pi (bilo koja verzija) s WiFi -jem. Ovo pravim koristeći RPi B+. RPi ZeroW bi bio sasvim u redu i koštao bi ~ 15 $
- BME280 senzor za temperaturu, vlažnost, pritisak zraka ~ 5 USD
- A Nova SDS011 Laserski visokoprecizni laserski PM2.5/PM10 modul senzora za otkrivanje kvalitete zraka ~ 25 $
- LED/LCD ekran. Koristio sam SSD1305 2.23 inčni OLED ekran ~ 15 $
- Neke WiFi/ZigBee/Z-Wave pametne utičnice. 10-20 USD svaki
- Pročišćivač zraka, ovlaživač zraka, odvlaživač zraka, grijač, hladnjak itd. S mehaničkim prekidačima. Na primjer, za izradu ovog vodiča koristio sam jeftin pročišćivač zraka
Gore navedeni ukupni troškovi su <100 USD, mnogo manje od, recimo, pametnog pročišćivača koji bi lako mogao koštati 200 USD.
Korak 2: Ožičenje Raspbery Pi
Dijagram kola prikazuje kako spojiti RPi sa senzorom BME280 koristeći I2C sučelje i OLED prikaz HAT pomoću SPI sučelja.
Waveshare OLED HAT mogao bi se pričvrstiti na GPIO, ali potreban vam je GPIO razdjelnik za dijeljenje s drugim perifernim uređajima. Može se konfigurirati za upotrebu I2C lemljenjem otpornika na stražnjoj strani.
Dodatne informacije o SSD1305 OLED ŠEŠIRU možete pronaći ovdje.
I I2C i SPI interfejsi moraju biti omogućeni u RPi sa:
sudo raspi-config
Senzor prašine Nova SDS011 spojen je na RPi putem USB priključka (sa serijskim USB adapterom).
Korak 3: Prikupljanje podataka sa senzora
Podaci o atmosferi, koji izgledaju prilično jednostavni, prikupljaju se sa BME280 senzora iz python skripte.
21-Nov-20 19:19:25-INFO-kompenzirano čitanje (id = 6e2e8de5-6bc2-4929-82ab-0c0e3ef6f2d2, vremenska oznaka = 2020-11-21 19: 19: 25,604317, temp = 20,956 ° C, pritisak = 1019,08 hPa, vlažnost = 49,23 % rH)
Podaci senzora prašine trebaju malo više obrade. Senzorski modul usisava neke uzorke zraka kako bi otkrio čestice, pa bi trebao raditi neko vrijeme (30 sekundi) kako bi imao pouzdane rezultate. Iz mojih zapažanja uzimam u obzir samo prosjek posljednja 3 uzorka. Proces je dostupan u ovoj skripti.
21. studenog 20 19:21:07 - DEBUG - 0. PM2.5: 2.8, PM10: 5.9
21-Nov-20 19:21:09- DEBUG- 1. PM2.5: 2.9, PM10: 6.0 21.-Nov-20 19:21:11- DEBUG- 2. PM2.5: 2.9, PM10: 6.0 21- 20. studenog 19:21:13- DEBUG- 3. PM2.5: 2.9, PM10: 6.3 21. studenog 20 19:21:15- DEBUG- 4. PM2.5: 3.0, PM10: 6.2 21. studenog- 20 19:21:17 - DEBUG - 5. PM2.5: 2.9, PM10: 6.4 21 -Nov -20 19:21:19 - DEBUG - 6. PM2.5: 3.0, PM10: 6.6 21 -Nov -20 19: 21: 21 - DEBUG - 7. PM2.5: 3.0, PM10: 6.8 21 -Nov -20 19:21:23 - DEBUG - 8. PM2.5: 3.1, PM10: 7.0 21 -Nov -20 19:21: 25 - DEBUG - 9. PM2.5: 3.2, PM10: 7.0 21 -Nov -20 19:21:28 - DEBUG - 10. PM2.5: 3.2, PM10: 7.1 21 -Nov -20 19:21:30 - DEBUG - 11. PM2.5: 3.2, PM10: 6.9 21 -Nov -20 19:21:32 - DEBUG - 12. PM2.5: 3.3, PM10: 7.0 21 -Nov -20 19:21:34 - DEBUG - 13. PM2.5: 3.3, PM10: 7.1 21 -Nov -20 19:21:36 - DEBUG - 14. PM2.5: 3.3, PM10: 7.1
Senzor prašine pruža samo indeks PM2.5 i PM10. Za izračun AQI potreban nam je python-aqi modul:
aqi_index = aqi.to_aqi ([((aqi. POLLUTANT_PM25, podaci o prašini [0]), (aqi. POLLUTANT_PM10, podaci o prašini [1])])
Prikupljanje podataka, prikaz i upravljanje uređajem izvode se istovremeno i asinhrono. Podaci se spremaju u lokalnu bazu podataka. Ne moramo ih često pokretati ako se okruženje ne promijeni prebrzo. Za mene je interval od 15 minuta dovoljan. Nadalje, modul senzora za prašinu akumulira prašinu unutra, pa ga ne bismo trebali pretjerano koristiti kako bismo izbjegli čišćenje.
Korak 4: Postavljanje usluge kućne automatizacije
Postoji mnogo platformi za kućnu automatizaciju i trebale bi instalirati platformu koju podržava pametna utičnica koju imate. Ako se brinete o privatnosti, trebali biste postaviti vlastiti sistem. Inače, možete koristiti popularne platforme koje podržava većina WiFi pametnih utičnica: Google pomoćnik, Alexa ili IFTTT. Pokušajte odabrati platformu utičnice s API -jem za interakciju (Webhook je savršen za ovu svrhu)
U ovom vodiču koristim IFTTT jer je vrlo jednostavan za korištenje čak i za početnike. Ali imajte na umu da: 1. postoji mnogo pametnih utičnica koje ne podržavaju IFTTT, i 2. u vrijeme dok ovo pišem, IFTTT vam dopušta samo stvaranje 3 apleta (zadaci automatizacije) besplatno, što je dovoljno samo za 1 aparatom.
Ovo su koraci:
1. Napravite dva apleta u IFTTT -u za uključivanje i isključivanje uređaja pomoću usluge Webhook. Detalje možete pronaći ovdje.
2. Kopirajte API ključ i kopirajte ga u python skriptu. Predlažem da se to sačuva u zasebnoj datoteci iz sigurnosnih razloga.
3. Definirajte kontrolnu logiku/parametre u glavnom skriptu.
Korak 5: Rezultati
U redu, sada testiramo sistem.
OLED ekran prikazuje trenutnu temperaturu, vlažnost i izračunati indeks kvalitete zraka (AQI). Također prikazuje minimalnu i maksimalnu vrijednost u posljednjih 12 sati.
Podaci o vremenskim serijama AQI-a za nekoliko dana pokazuju nešto zanimljivo. Primjećujete li skokove u AQI uzorku? To se događalo dva puta dnevno, mali vrh oko 12:00, a visoki vrh oko 19:00. Pa, pogađate, to je bilo kad smo kuhali, raznoseći puno čestica okolo. Zanimljivo je vidjeti kako naše dnevne aktivnosti utječu na unutarnje okruženje.
Takođe, posljednji skok u cifri trajao je mnogo kraće od prethodnih. tada u sistem dodajemo pročišćivač zraka. RPi kontroler klime šalje PURIFIER_ON zahtjev kada je AQI> 50 i PURIFIER_OFF kada je AQI <20. Tada možete vidjeti pokretač IFTTT Webhook.
Korak 6: Zaključak
To je to!
Prikupljeni podaci mogu se koristiti i za upravljanje grijačima zraka, hladnjacima, (de) ovlaživačima zraka itd. Samo trebate kupiti više pametnih utičnica i svaki će stari uređaj postati "pametan".
Ako želite kontrolirati mnoge uređaje, možda ćete morati pažljivo razmisliti koju uslugu kućne automatizacije želite koristiti. Toplo bih predložio postavljanje platforme za kućnu automatizaciju otvorenog koda, ali ako je previše komplicirano, postoje jednostavnija rješenja kao što su Google pomoćnik i IFTTT Webhook ili korištenje pametnih utičnica Zigbee.
Potpuna implementacija ovog prototipa može se pronaći u spremištu Github:
github.com/vuva/IndoorClimateControl
Zabavi se !!!
Preporučuje se:
Mjerač kvalitete zraka u zatvorenom prostoru: 5 koraka (sa slikama)
Mjerač kvalitete zraka u zatvorenom prostoru: Jednostavan projekt za provjeru kvalitete zraka u vašoj kući. Budući da u zadnje vrijeme često boravimo/radimo od kuće, možda bi bilo dobro pratiti kvalitetu zraka i podsjetiti se kada je vrijeme da otvorite prozor i udahni malo svježeg zraka
Unutrašnji sistem za nadzor klime na bazi maline Pi: 6 koraka
Unutrašnji sistem za nadzor klime na bazi maline Pi: Pročitajte ovaj blog i izgradite vlastiti sistem tako da možete primati upozorenja kada je vaša soba previše suha ili vlažna. Šta je to sistem za nadzor klime u zatvorenom prostoru i zašto nam je potreban? pružite brz pogled na ključne klimatske odnose
Hidroponski sistem za nadzor i kontrolu staklenika: 5 koraka (sa slikama)
Hidroponski sistem za nadzor i kontrolu staklenika: U ovom uputstvu ću vam pokazati kako izgraditi hidroponski sistem za nadzor i kontrolu staklenika. Pokazat ću vam odabrane komponente, dijagram ožičenja kako je sklop konstruiran i Arduino skicu korištenu za programiranje Seeed
Jednostavan nadzor i sistem za kontrolu zamućenosti za mikroalge: 4 koraka
Jednostavan sistem za nadzor i kontrolu zamućenosti za mikroalge: Recimo samo da vam je dosadilo uzorkovanje vode za mjerenje zamućenosti, bruto pojam koji označava sve male, suspendirane čestice u vodi, koje smanjuju intenzitet svjetlosti sa povećanjem putanje svjetlosti ili većom česticom koncentracija ili oboje
Infinity Bike - Video igra za trening bicikala u zatvorenom prostoru: 5 koraka
Infinity Bike - Video igra za obuku bicikala u zatvorenom prostoru: Tokom zimskih sezona, hladnih dana i lošeg vremena, ljubitelji biciklista imaju samo nekoliko mogućnosti za vježbanje baveći se svojim omiljenim sportom. Tražili smo način da učinimo trening u zatvorenom sa postavkom bicikla/trenera malo zabavnijim, ali većina pr