Obsah:
- Krok 1: Hardware
- Krok 2: Zapojení Raspbery Pi
- Krok 3: Shromažďování dat ze senzorů
- Krok 4: Nastavení služby domácí automatizace
- Krok 5: Výsledky
- Krok 6: Závěr
Video: Systém monitorování a řízení vnitřního klimatu Raspberry Pi: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
Lidé chtějí mít ve svém domě pohodlí. Jelikož klima v naší oblasti nám nemusí vyhovovat, používáme k udržování zdravého vnitřního prostředí mnoho spotřebičů: topení, chladič vzduchu, zvlhčovač, odvlhčovač, čistička atd. V dnešní době je běžné najít některá zařízení vybavená automatickým režim vnímat prostředí a ovládat se. Nicméně:
- Mnoho z nich je předražených/ nestojí za peníze.
- Jejich elektrické obvody lze snáze rozbít a hůře vyměnit než běžné mechanické části
- Zařízení musí být spravována aplikací výrobce. Je běžné, že máte ve svém domě několik chytrých spotřebičů a každý z nich má vlastní aplikaci. Jejich řešením je integrovat aplikaci do platforem, jako jsou Alexa, Google Assistant a IFTTT, abychom měli „centralizovaný“ovladač
- A co je nejdůležitější, výrobci mají naše data a Google/Amazon/IFTTT/atd. Mají naše data. Nemáme. Možná vás nezajímá soukromí, ale někdy se možná všichni chceme podívat na vlhkost ve vaší ložnici, abychom se rozhodli, kdy otevřít okna.
V tomto tutoriálu stavím prototyp relativně levného Indoor Climate Controller na bázi Raspberry Pi. RPi komunikuje s periferiemi přes rozhraní SPI/I2C/USB:
- K měření teploty, vlhkosti a tlaku vzduchu se používá atmosférický senzor.
- Vysoce přesný senzor kvality vzduchu poskytuje data o atmosférických částicích (PM2,5 a PM10), která se používají k výpočtu indexu kvality ovzduší (AQI)
Řadič zpracovává získaná data a spouští akce zařízení odesíláním požadavků na automatizační službu IFTTT Webhook, která ovládá podporované inteligentní zásuvky WiFi.
Prototyp je postaven tak, aby bylo možné snadno přidat další senzory, zařízení a automatizační služby.
Krok 1: Hardware
Doporučený hardware k sestavení:
- Raspberry Pi (libovolná verze) s WiFi. Stavím to pomocí RPi B+. RPi ZeroW by fungoval dobře a stál ~ 15 $
- Senzor BME280 pro teplotu, vlhkost a tlak vzduchu ~ 5 $
- Modul senzoru detekce kvality vzduchu Nova SDS011 s vysokou přesností PM2,5/PM10 ~ 25 $
- LED/LCD displej. Použil jsem 2,23 palcový OLED displej SSD1305 ~ 15 $
- Některé chytré zásuvky WiFi/ZigBee/Z-Wave. 10-20 $ každý
- Čistička vzduchu, zvlhčovač, odvlhčovač, ohřívač, chladič atd. S mechanickými spínači. Například jsem na tento tutoriál použil levnou čističku vzduchu
Výše uvedené celkové náklady jsou <100 $, což je mnohem méně, než například inteligentní čistička, která by mohla snadno stát 200 $.
Krok 2: Zapojení Raspbery Pi
Schéma zapojení ukazuje, jak propojit RPi se snímačem BME280 pomocí rozhraní I2C a OLED displeje HAT pomocí rozhraní SPI.
Waveshare OLED HAT by mohl být připojen k horní části GPIO, ale ke sdílení s jinými periferiemi potřebujete rozdělovač GPIO. Mohlo by být nakonfigurováno pro použití I2C pájením odporů na zadní straně.
Další informace o SSD1305 OLED HAT naleznete zde.
V RPi je třeba povolit rozhraní I2C i SPI s:
sudo raspi-config
Senzor prachu Nova SDS011 je připojen k RPi přes USB port (s adaptérem Serial-USB).
Krok 3: Shromažďování dat ze senzorů
Atmosférická data, která vypadají docela jednoduše, jsou shromažďována ze senzoru BME280 ze skriptu pythonu.
21. listopadu 20:19:25-INFO-kompenzované čtení (id = 6e2e8de5-6bc2-4929-82ab-0c0e3ef6f2d2, časové razítko = 2020-11-21 19: 19: 25,604317, teplota = 20,956 ° C, tlak = 1019,08 hPa, vlhkost = 49,23 % rH)
Data senzoru prachu vyžadují trochu více zpracování. Senzorový modul nasává některé vzorky vzduchu, aby detekoval pevné částice, takže by měl chvíli běžet (30 s), aby měl spolehlivé výsledky. Ze svého pozorování považuji pouze průměr posledních 3 vzorků. Tento proces je k dispozici v tomto skriptu.
21. listopadu 20 19:21:07 - DEBUG - 0. PM2,5: 2,8, PM10: 5,9
21. listopadu 20 19:21:09- DEBUG- 1. PM2.5: 2.9, PM10: 6.0 21. listopadu 20:21:11- DEBUG- 2. PM2.5: 2.9, PM10: 6.0 21- 20.listopadu 19:21:13- DEBUG- 3. PM2.5: 2.9, PM10: 6.3 21.-20.listopadu 19:21:15- DEBUG- 4. PM2.5: 3.0, PM10: 6.2 21-Nov- 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. listopadu -20 19:21:23 - DEBUG - 8. PM2.5: 3.1, PM10: 7.0 21. listopadu -20 19:21: 25 - DEBUG - 9. PM2.5: 3.2, PM10: 7.0 21. listopadu -20 19:21:28 - DEBUG - 10. PM2.5: 3.2, PM10: 7.1 21. listopadu -20 19:21:30 - DEBUG - 11. PM2.5: 3,2, PM10: 6,9 21 -listopad -20 19:21:32 - DEBUG - 12. PM2,5: 3,3, PM10: 7,0 21 -lis -20 19:21:34 - DEBUG - 13. PM2.5: 3.3, PM10: 7.1 21. listopadu -20 19:21:36 - DEBUG - 14. PM2.5: 3.3, PM10: 7.1
Prachový senzor poskytuje pouze index PM2,5 a PM10. K výpočtu AQI potřebujeme modul python-aqi:
aqi_index = aqi.to_aqi ([(aqi. POLLUTANT_PM25, dust_data [0]), (aqi. POLLUTANT_PM10, dust_data [1])])
Shromažďování, zobrazování a ovládání zařízení se provádí souběžně a asynchronně. Data jsou uložena v místní databázi. Pokud se prostředí příliš rychle nemění, nemusíme je spouštět často. Mně stačí 15minutový interval. Modul senzoru prachu navíc hromadí prach uvnitř, takže bychom jej neměli nadměrně používat, abychom se vyhnuli čištění.
Krok 4: Nastavení služby domácí automatizace
Existuje mnoho platforem pro domácí automatizaci a měla by nainstalovat platformu, kterou podporuje chytrá zásuvka, kterou máte. Pokud vám jde o soukromí, měli byste si nastavit vlastní systém. Jinak můžete použít oblíbené platformy, které podporuje většina chytrých zásuvek WiFi: Google Assistant, Alexa nebo IFTTT. Zkuste vybrat platformu soketu s rozhraním API, se kterým budete komunikovat (Webhook je pro tento účel ideální)
V tomto tutoriálu používám IFTTT, protože je velmi snadné jej použít i pro nováčky. Uvědomte si však, že: 1. existuje mnoho chytrých zásuvek, které nepodporují IFTTT, a 2. v době, kdy to píšu, vám IFTTT umožňuje pouze bezplatně vytvořit 3 applety (úkoly automatizace), což stačí pouze na 1 spotřebič.
Toto jsou kroky:
1. Vytvořte v IFTTT dva applety pro zapnutí a vypnutí zařízení pomocí služby Webhook. Podrobnosti najdete zde.
2. Zkopírujte klíč API a zkopírujte jej do skriptu pythonu. Z bezpečnostních důvodů bych doporučil ponechat jej v samostatném souboru.
3. Definujte řídicí logiku/parametry v hlavním skriptu.
Krok 5: Výsledky
Dobře, nyní testujeme systém.
OLED displej zobrazuje aktuální teplotu, vlhkost a vypočítaný index kvality vzduchu (AQI). Také zobrazuje minimální a maximální hodnotu za posledních 12 hodin.
Data časových řad AQI za několik dní ukazují něco zajímavého. Všimli jste si přepětí ve vzoru AQI? Stalo se to dvakrát denně, malý vrchol kolem 12:00 a vysoký vrchol je kolem 19:00. Uhodli jste, to bylo, když jsme vařili a šířili kolem sebe spoustu částic. Je zajímavé sledovat, jak naše každodenní aktivita ovlivňuje vnitřní prostředí.
Také poslední nárůst postavy trval mnohem kratší dobu než ty předchozí. tehdy přidáme do systému čističku vzduchu. Ovladač klimatizace RPi odesílá požadavek PURIFIER_ON při AQI> 50 a PURIFIER_OFF při AQI <20. V té době můžete vidět aktivační událost IFTTT Webhook.
Krok 6: Závěr
A je to!
Shromážděná data lze také použít k ovládání ohřívačů vzduchu, chladičů, (de) zvlhčovačů atd. Stačí si koupit více chytrých zásuvek a každý starý spotřebič se stane „chytrým“.
Pokud chcete ovládat mnoho spotřebičů, možná budete muset pečlivě zvážit, jakou službu domácí automatizace chcete použít. Velmi bych doporučil zřídit open-source platformu pro domácí automatizaci, ale pokud je to příliš komplikované, existují jednodušší řešení, jako je Google Assistant a IFTTT Webhook, nebo používání chytrých zásuvek Zigbee.
Úplnou implementaci tohoto prototypu najdete v úložišti Github:
github.com/vuva/IndoorClimateControl
Bavte se !!!
Doporučuje:
Systém monitorování a řízení vlhkosti půdy založený na IoT pomocí NodeMCU: 6 kroků
Systém monitorování a řízení vlhkosti půdy založený na IoT pomocí NodeMCU: V tomto tutoriálu se chystáme implementovat systém monitorování a řízení vlhkosti půdy založený na IoT pomocí WiFi modulu ESP8266, tj. NodeMCU. Komponenty požadované pro tento projekt: WiFi modul ESP8266- Amazon (334/- Reléový modul INR- Amazon (130/- INR
Systém monitorování vnitřního klimatu na bázi Raspberry Pi: 6 kroků
Systém monitorování vnitřního klimatu na bázi Raspberry Pi: Přečtěte si tento blog a vytvořte si vlastní systém, abyste mohli dostávat upozornění, když je váš pokoj příliš suchý nebo vlhký. Co je to vnitřní monitorovací systém klimatu a proč ho potřebujeme? poskytněte rychlý pohled na klíčové klimatické zprávy
Postavte zařízení pro snímání vnitřního prostředí: 4 kroky
Vybudujte zařízení pro snímání vnitřního prostředí: V dnešní době se lidé více zajímají o kvalitu vnitřního prostředí v místě, kde žijí, protože je v těsném vztahu k jejich zdraví. K důležitosti lepší kvality života patří vědomí, že máte zlepšené životní podmínky. I já jsem velmi součástí
4 kroky k měření vnitřního odporu baterie: 4 kroky
4 kroky k měření vnitřního odporu baterie: Zde jsou 4 jednoduché kroky, které vám mohou pomoci změřit vnitřní odpor baterie
Pool Pi Guy - poplašný systém řízený AI a monitorování bazénu pomocí Raspberry Pi: 12 kroků (s obrázky)
Pool Pi Guy - poplašný systém řízený AI a monitorování bazénu pomocí Raspberry Pi: Mít doma bazén je zábava, ale přichází s velkou zodpovědností. Mojí největší starostí je sledování, jestli je někdo poblíž bazénu bez dozoru (zejména mladší děti). Mojí největší nepříjemností je zajistit, aby potrubí vody v bazénu nikdy nekleslo pod vstup čerpadla