Sisällysluettelo:
- Vaihe 1: Laitteisto
- Vaihe 2: Raspbery Pi: n kytkentä
- Vaihe 3: Tietojen kerääminen antureilta
- Vaihe 4: Koti -automaatiopalvelun määrittäminen
- Vaihe 5: Tulokset
- Vaihe 6: Johtopäätös
Video: Raspberry Pi Sisäilman seuranta- ja säätöjärjestelmä: 6 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Ihmiset haluavat viihtyä kotonaan. Koska alueemme ilmasto ei ehkä sovi itsellemme, käytämme monia laitteita terveen sisäympäristön ylläpitämiseksi: lämmitin, ilmanjäähdytin, ilmankostutin, ilmankuivain, puhdistin jne. Nykyään on yleistä löytää joitakin laitteita, jotka on varustettu automaattisella tilassa, jotta voit tunnistaa ympäristön ja hallita itseäsi. Kuitenkin:
- Monet heistä ovat ylihinnoiteltuja/ eivät rahan arvoisia.
- Niiden sähköpiirit on helpompi rikkoa ja vaikeampi vaihtaa kuin perinteiset mekaaniset osat
- Laitteiden on oltava valmistajan sovelluksen hallinnoimia. On tavallista, että talossasi on muutamia älykkäitä laitteita, ja jokaisella niistä on oma sovellus. Heidän ratkaisunsa on integroida sovellus alustoille, kuten Alexa, Google Assistant ja IFTTT, jotta meillä on "keskitetty" ohjain
- Tärkeintä on, että valmistajilla on tietomme ja Google/Amazon/IFTTT/jne. Emme. Et ehkä välitä yksityisyydestä, mutta joskus me kaikki ehkä haluamme tarkastella makuuhuoneesi kosteuskuviota esimerkiksi päättääksemme milloin avata ikkunat.
Tässä opetusohjelmassa rakennan prototyypin suhteellisen edullisista Raspberry Pi -pohjaisista sisäilmastointilaitteista. RPi kommunikoi oheislaitteiden kanssa SPI/I2C/USB -liitännän kautta:
- Ilmakehäanturia käytetään lämpötilan, kosteuden ja ilmanpaineen keräämiseen.
- Erittäin tarkka ilmanlaatutunnistin tarjoaa ilmakehän hiukkas- (PM2.5- ja PM10) -tiedot, joita käytetään ilmanlaatuindeksin (AQI) laskemiseen
Ohjain käsittelee hankittuja tietoja ja käynnistää laitteen toimintoja lähettämällä pyynnöt IFTTT Webhook -automaatiopalvelulle, joka ohjaa tuettuja WiFi Smart -liittimiä.
Prototyyppi on rakennettu siten, että siihen voidaan helposti lisätä muita antureita, laitteita ja automaatiopalveluja.
Vaihe 1: Laitteisto
Suositeltu laitteisto tämän rakentamiseen:
- Raspberry Pi (mikä tahansa versio), jossa on WiFi. Rakennan tämän RPi B+: lla. RPi ZeroW toimisi hienosti ja maksoi ~ 15 dollaria
- BME280 -anturi lämpötilalle, kosteudelle, ilmanpaineelle ~ 5 $
- A Nova SDS011 High Precision Laser PM2.5/PM10 ilmanlaadun tunnistusmoduuli ~ 25 $
- LED/LCD -näyttö. Käytin SSD1305 2,23 tuuman OLED -näyttöä ~ 15 $
- Jotkut WiFi/ZigBee/Z-Wave Smart -liitännät. 10-20 dollaria kappale
- Ilmanpuhdistin, ilmankostutin, ilmankuivain, lämmitin, jäähdytin jne. Mekaanisilla kytkimillä. Esimerkiksi käytin halpaa ilmanpuhdistinta tämän opetusohjelman tekemiseen
Yllä olevat kokonaiskustannukset ovat <100 dollaria, paljon vähemmän kuin esimerkiksi älykäs puhdistin, joka voisi helposti maksaa 200 dollaria.
Vaihe 2: Raspbery Pi: n kytkentä
Kytkentäkaavio osoittaa, kuinka RPi kytketään BME280 -anturilla I2C -liitännän avulla ja OLED -näyttö HAT SPI -liitännän avulla.
Waveshare OLED HAT voidaan kiinnittää GPIO: n päälle, mutta tarvitset GPIO -jakajan jakaaksesi sen muiden oheislaitteiden kanssa. Se voitaisiin konfiguroida käyttämään I2C: tä juottamalla takana olevat vastukset.
Lisätietoja SSD1305 OLED HATista löytyy täältä.
Sekä I2C- että SPI -rajapinnat on otettava käyttöön RPi: ssä seuraavilla tavoilla:
sudo raspi-config
Nova SDS011 -pölyanturi on kytketty RPi: hen USB-portin kautta (sarja-USB-sovittimella).
Vaihe 3: Tietojen kerääminen antureilta
Ilmakehän tiedot, jotka näyttävät melko yksinkertaisilta, kerätään BME280 -anturista python -komentosarjasta.
21. marraskuuta 20 19:19:25-INFO-kompensoitu lukema (id = 6e2e8de5-6bc2-4929-82ab-0c0e3ef6f2d2, aikaleima = 2020-11-21 19: 19: 25.604317, lämpötila = 20.956 ° C, paine = 1019.08 hPa, kosteus = 49.23 % rH)
Pölyanturin tiedot tarvitsevat hieman enemmän käsittelyä. Anturimoduuli imee joitakin ilmanäytteitä havaitakseen hiukkaset, joten sen pitäisi toimia jonkin aikaa (30 sekuntia) saadakseen luotettavia tuloksia. Havaintoni perusteella otan huomioon vain kolmen viimeisen näytteen keskiarvon. Prosessi on saatavilla tässä skriptissä.
21 -marras -20 19:21:07 - DEBUG - 0. PM2.5: 2.8, PM10: 5.9
21-marras-20 19:21:09- DEBUG- 1. PM2.5: 2.9, PM10: 6.0 21-marras-20 19:21:11- DEBUG- 2. PM2.5: 2.9, PM10: 6.0 21- 20. marraskuuta 19:21:13- VAHVISTUS- 3. PM2.5: 2.9, PM10: 6.3 21. marraskuuta 20:21:15- DEBUG- 4. PM2.5: 3.0, PM10: 6.2 21. marraskuuta- 20 19:21:17 - DEBUG - 5. PM2.5: 2.9, PM10: 6.4 21. marras -20 19:21:19 - DEBUG - 6. PM2.5: 3.0, PM10: 6.6 21. marraskuuta 20 19: 21: 21 - DEBUG - 7. PM2.5: 3.0, PM10: 6.8 21. marras -20 19:21:23 - DEBUG - 8. PM2.5: 3.1, PM10: 7.0 21. marras -20 19:21: 25 - DEBUG - 9. PM2.5: 3.2, PM10: 7.0 21. marraskuuta -20 19:21:28 - DEBUG - 10. PM2.5: 3.2, PM10: 7.1 21. marras -20 19:21:30 - DEBUG - 11. PM2.5: 3.2, PM10: 6.9 21. marras -20 19:21:32 - DEBUG - 12. PM2.5: 3.3, PM10: 7.0 21. marras -20 19:21:34 - DEBUG - 13. PM2.5: 3.3, PM10: 7.1 21. marras -20 19:21:36 - DEBUG - 14. PM2.5: 3.3, PM10: 7.1
Pölyanturi tarjoaa vain PM2.5- ja PM10-indeksit. AQI: n laskemiseksi tarvitsemme python-aqi-moduulin:
aqi_index = aqi.to_aqi ([((aqi. POLLUTANT_PM25, dust_data [0]), (aqi. POLLUTANT_PM10, dust_data [1])])
Tietojen kerääminen, näyttäminen ja laitteen ohjaus suoritetaan samanaikaisesti ja asynkronisesti. Tiedot tallennetaan paikalliseen tietokantaan. Meidän ei tarvitse käyttää niitä usein, jos ympäristö ei muutu liian nopeasti. Minulle 15 minuutin väliaika riittää. Lisäksi pölyanturimoduuli kerää pölyä sisälle, joten meidän ei pitäisi käyttää sitä liikaa puhdistustehtävän välttämiseksi.
Vaihe 4: Koti -automaatiopalvelun määrittäminen
Siellä on monia kodin automaatioalustoja, ja niiden pitäisi asentaa alusta, jota älykkäät pistorasiat tukevat. Jos pidät yksityisyydestä, sinun on otettava käyttöön oma järjestelmä. Muussa tapauksessa voit käyttää suosittuja alustoja, joita useimmat WiFi -älypistorasiat tukevat: Google Assistant, Alexa tai IFTTT. Yritä valita pistorasia -alusta, jossa on sovellusliittymä vuorovaikutukseen (Webhook on täydellinen tähän tarkoitukseen)
Käytän IFTTT: tä tässä opetusohjelmassa, koska sitä on erittäin helppo käyttää myös aloittelijoille. Huomaa kuitenkin, että: 1. on monia älykkäitä pistorasioita, jotka eivät tue IFTTT: tä, ja 2. kirjoittaessani tätä, IFTTT sallii sinun luoda vain 3 applettia (automaatiotehtävät) ilmaiseksi, mikä riittää vain yhdelle laite.
Nämä ovat vaiheet:
1. Luo IFTTT: ssä kaksi applettia laitteen kytkemiseksi päälle ja pois päältä Webhook -palvelun avulla. Yksityiskohdat löytyvät täältä.
2. Kopioi API -avain ja kopioi se python -komentosarjaan. Suosittelen säilyttämään sen erillisessä tiedostossa turvallisuussyistä.
3. Määritä ohjauslogiikka/parametrit pääskriptissä.
Vaihe 5: Tulokset
OK, nyt testataan järjestelmää.
OLED -näytössä näkyy nykyinen lämpötila-, kosteus- ja laskettu ilmanlaatuindeksi (AQI). Se näyttää myös vähimmäis- ja enimmäisarvon viimeisten 12 tunnin aikana.
AQI: n aikasarjatiedot muutamassa päivässä osoittavat jotain mielenkiintoista. Huomaatko AQI -kuvion nousut? Se tapahtui kahdesti päivässä, pieni huippu noin klo 12.00 ja korkein huippu on noin klo 19.00. No, arvasit sen, silloin teimme ruokaa, levittäen ympärille paljon hiukkasia. On mielenkiintoista nähdä, miten päivittäinen toiminta vaikuttaa sisäympäristöön.
Lisäksi luvun viimeinen nousu kesti paljon lyhyempi kuin edelliset. silloin lisäämme järjestelmään ilmanpuhdistimen. RPi -ilmastointilaite lähettää PURIFIER_ON -pyynnön, kun AQI> 50 ja PURIFIER_OFF, kun AQI <20. Näet IFTTT Webhook -liipaisimen tuolloin.
Vaihe 6: Johtopäätös
Se siitä!
Kerättyjä tietoja voidaan käyttää myös ilmanlämmittimien, jäähdyttimien, (de) ilmankostuttimien jne. Ohjaamiseen. Sinun tarvitsee vain ostaa lisää älykkäitä pistorasioita ja jokainen vanha laite tulee "älykkääksi".
Jos haluat hallita monia laitteita, sinun on ehkä harkittava huolellisesti, mitä kodin automaatiopalvelua haluat käyttää. Suosittelen lämpimästi avoimen lähdekoodin kodin automaatioalustan perustamista, mutta jos se on liian monimutkainen, on olemassa yksinkertaisempia ratkaisuja, kuten Google Assistant ja IFTTT Webhook, tai Zigbee-älykkäitä pistorasioita.
Tämän prototyypin täydellinen toteutus löytyy Github -arkistosta:
github.com/vuva/IndoorClimateControl
Pidä hauskaa !!!
Suositeltava:
Sisäilman laatumittari: 5 vaihetta (kuvilla)
Sisäilmanlaatumittari: Yksinkertainen hanke, jolla voit tarkistaa talosi ilmanlaadun, koska olemme viime aikoina paljon töissä kotoa, saattaa olla hyvä idea seurata ilmanlaatua ja muistuttaa itseäsi, kun on aika avata ikkuna ja saa raitista ilmaa sisään
Työpöydän COVID19 -seuranta kellolla! Raspberry Pi Powered Tracker: 6 vaihetta
Työpöydän COVID19 -seuranta kellolla! Raspberry Pi Powered Tracker: Tiedämme, että voimme kuolla milloin tahansa, jopa minä voin kuolla kirjoittaessani tätä viestiä, loppujen lopuksi minä, sinä, me kaikki olemme kuolevaisia. Koko maailma järisi COVID19 -pandemian vuoksi. Tiedämme, miten tämä voidaan estää, mutta hei! osaamme rukoilla ja miksi rukoilla, osaammeko
Liikkeen seuranta MPU-6000: n ja Raspberry Pi: n avulla: 4 vaihetta
Liikkeen seuranta MPU-6000: n ja Raspberry Pi: n avulla: MPU-6000 on 6-akselinen liikkeenseuranta-anturi, johon on upotettu 3-akselinen kiihtyvyysanturi ja 3-akselinen gyroskooppi. Tämä anturi pystyy tehokkaasti seuraamaan kohteen tarkan sijainnin ja sijainnin kolmiulotteisessa tasossa. Sitä voidaan käyttää
Raspberry Pi -pohjainen sisäilman seurantajärjestelmä: 6 vaihetta
Raspberry Pi -pohjainen sisäilman seurantajärjestelmä: Lue tämä blogi ja rakenna oma järjestelmäsi, jotta voit saada hälytyksiä, kun huoneesi on liian kuiva tai kostea. tarjoaa nopean katsauksen tärkeimpiin ilmasto -olosuhteisiin
Kiihtyvyyden seuranta Raspberry Pi: n ja AIS328DQTR: n avulla Pythonin avulla: 6 vaihetta
Kiihtyvyyden seuranta Raspberry Pi: n ja AIS328DQTR: n avulla Pythonin avulla: Kiihtyvyys on rajallinen, mielestäni joidenkin fysiikan lakien mukaan.- Terry Riley Gepardi käyttää hämmästyttävää kiihtyvyyttä ja nopeita nopeuden muutoksia jahtaessaan. Nopein olento rannalla silloin tällöin käyttää huipputahdiaan saaliin saamiseen