Obsah:
- Krok 1: Požadované součásti
- Krok 2: Jazyk a protokol
- Krok 3: Eclipse Mosquitto MQTT Broker
- Krok 4: Tok dat v celém projektu
- Krok 5: Připojení senzorů s NodeMCU
- Krok 6: Připojení ponorného vodního čerpadla k ESP8266
- Krok 7: Instalace programu Mosquitto Broker a spuštění programu Python do Raspberry Pi
- Krok 8: Jak MQTT funguje?
- Krok 9: Programování NodeMCU a ESP8266
- Krok 10: Navrhování webové stránky a připojení k databázi SQL
- Krok 11: Dokončete práci
Video: Automatizace zeleného domu: 11 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Automatizace skleníků je projekt, kde jsou tři parametry skleníku, tj. Vlhkost půdy, teplota a vlhkost, monitorovány uživatelem na dálku jednoduše pomocí webového prohlížeče.
Krok 1: Požadované součásti
Některé nezbytné součásti jsou uvedeny níže
1. Raspberry PI Model B
2. Vývojová rada NodeMCU
3. Wifi modul ESP8266
4. Senzor vlhkosti
5. Snímač teploty a vlhkosti DHT11
6. Jednokanálové relé 5V
7. 5V ponorné vodní čerpadlo
8. Chlebová deska
9. Modul napájecího zdroje Bread Board
Krok 2: Jazyk a protokol
- Pro mikrořadiče se používá jazyk C.
- Zprávy MQTT: MQTT je zkratka pro MQ Telemetry Transport. Jedná se o extrémně jednoduchý a lehký protokol pro zasílání zpráv publikování/přihlášení k odběru, navržený pro omezená zařízení a sítě s nízkou šířkou pásma, vysokou latencí nebo nespolehlivými sítěmi. Principy návrhu jsou minimalizovat požadavky na šířku pásma sítě a prostředky zařízení a současně se snažit zajistit spolehlivost a určitý stupeň zajištění dodávky. Díky těmto zásadám je také protokol ideální pro vznikající svět připojených zařízení „stroj na stroj“(M2M) nebo „internet věcí“a pro mobilní aplikace, kde je šířka pásma a kapacita baterie na prvním místě.
- Program Python se používá k automatizaci toku vody a připojení k databázi.
Krok 3: Eclipse Mosquitto MQTT Broker
Zde jsem použil Mosquitto MQTT Broker pro snadnou komunikaci zpráv mezi uzly.
Eclipse Mosquitto je zprostředkovatel zpráv s otevřeným zdrojovým kódem (s licencí EPL/EDL), který implementuje protokol MQTT verze 5.0, 3.1.1 a 3.1. Mosquitto je lehký a je vhodný pro použití na všech zařízeních od nízkoenergetických jednodeskových počítačů po plné servery.
Protokol MQTT poskytuje lehký způsob provádění zpráv pomocí modelu publikování/odběru. Díky tomu je vhodný pro zasílání zpráv o internetu věcí, jako jsou senzory s nízkým výkonem nebo mobilní zařízení, jako jsou telefony, vestavěné počítače nebo mikrořadiče.
Projekt Mosquitto také poskytuje knihovnu C pro implementaci klientů MQTT a velmi populární klienty MQTT příkazového řádku mosquitto_pub a mosquitto_sub.
Krok 4: Tok dat v celém projektu
Na výše uvedeném obrázku jsou uzly
- NodeMCU
- Malina PI
- ESP8266
NodeMCU je snímací část Zeleného domu a ESP8266 je ovládací část, která dodává vodu, když země potřebuje vodu podle senzorů.
Raspberry PI obsahuje Mosquitto Broker a klienta Pythonu, který odebírá zprávy od MQTT Broker a ukládá data na SQL server.
Krok 5: Připojení senzorů s NodeMCU
Snímač teploty a vlhkosti DHT11 a snímač vlhkosti vody mohou pracovat na 3,3 voltů.
NodeMCU nemůže poskytnout více než 3,3 voltů. Senzory se tedy mohou přímo připojit k desce mikrokontroléru NodeMCU.
Krok 6: Připojení ponorného vodního čerpadla k ESP8266
V případě potřeby se k zásobování vodou používá ponorné vodní čerpadlo.
Vodní čerpadlo potřebuje ke svému provozu 5 voltové napájení.
K připojení motoru je potřeba jednokanálové relé. Když je aktivován kolík GPIO2 na ESP8266, relé sepne a automaticky dodává vodu pomocí ponorného vodního čerpadla.
Zde je k desce ESP8266, relé a ponornému vodnímu čerpadlu poskytováno externí napájení.
Moje úplné hardwarové připojení je na obrázku výše.
Krok 7: Instalace programu Mosquitto Broker a spuštění programu Python do Raspberry Pi
Následují kroky pro instalaci brokera Mosquitto do Raspberry PI
Otevřete terminál a zadejte následující příkazy
sudo apt-add-repository ppa: mosquitto-dev/mosquitto-ppa
sudo apt-get update
sudo apt-get install mosquitto
sudo apt-get install mosquitto-clients
Měl by automaticky spustit komár.
Chcete -li zastavit a spustit službu, kterou jsem potřeboval použít
sudo service stop mosquitto
sudo service start mosquitto
Většina stránek, které jsem objevil, používá formát.
sudo /etc/init.d/mosquitto zastavit
Krok 8: Jak MQTT funguje?
MQTT je jedním z nejčastěji používaných protokolů v projektech IoT. Zkratka znamená Telemetry Transport ve frontě zpráv.
Kromě toho je navržen jako lehký protokol pro zasílání zpráv, který používá operace publikování/odběru k výměně dat mezi klienty a serverem. Díky malým rozměrům, nízké spotřebě energie, minimálním datovým paketům a snadné implementaci je protokol ideální pro svět „stroj na stroj“nebo „internet věcí“.
Jako každý jiný internetový protokol je i MQTT založen na klientech a serveru. Stejně tak je server ten, kdo je zodpovědný za zpracování požadavků klienta na příjem nebo odesílání dat mezi sebou. Server MQTT se nazývá broker a klienti jsou jednoduše připojená zařízení.
* Pokud chce zařízení (klient) odesílat data makléři, říkáme této operaci „publikování“.
* Pokud chce zařízení (klient) přijímat data od brokera, říkáme této operaci „předplatné“.
Krok 9: Programování NodeMCU a ESP8266
Následuje zdrojový kód pro desku mikrokontroléru NodeMCU a ESP8266
Krok 10: Navrhování webové stránky a připojení k databázi SQL
Webová stránka je navržena pomocí jazyka HTML, CSS a PHP.
PHP se používá k extrahování údajů ze senzorů z databáze a jejich zobrazení na stránce HTML.
Srdcem tohoto projektu je program python.
Práce, které provádí program python, jsou následující.
- Přihlašuje se k tématu, ve kterém senzor odesílá údaje ze senzoru.
- Publikuje příkaz k zapnutí/vypnutí vodního čerpadla makléři MQTT.
- Ukládá údaje ze snímače do databáze SQL.
Zde je v mém případě program python a databáze SQL přítomen v notebooku. Webová stránka běžící přes lokálního hostitele.
Následuje zdrojový kód mého programu python.
Krok 11: Dokončete práci
Následují kroky, ve kterých proces pokračuje.
- NodeMCU funguje jako snímací část a čte teplotu, vlhkost a vlhkost půdy.
- Odešle hodnoty brokerovi MQTT s tématem „Téma 1“
- V notebooku běží program python a přihlašuje se k odběru tématu „Téma 1“pomocí makléře MQTT.
- Když NodeMCU odešle hodnoty, pak Mosquitto MQTT Broker okamžitě odešle data do programu python.
- Program Python poté vypočítá, zda je v Zeleném domě potřeba voda. Poté uloží naměřené hodnoty do databáze SQL.
- Pokud je v Zeleném domě potřeba voda, pak program python zveřejní zprávu o zapnutí/vypnutí vodního čerpadla makléři Mosquitto MQTT s tématem „Téma 2“
- ESP8266 funguje jako pohon. Přihlásí se k tématu „Téma 2“, ve kterém téma program python zprávu zveřejňuje. Když program python zveřejní jakoukoli zprávu, zpráva se okamžitě přenese do ESP8266. Podle zprávy zapnuto/vypnuto zapínalo/vypínalo ponorné vodní čerpadlo.
- Poslední fáze pro zobrazení živých odečtů na webové stránce. Webová stránka načítá data z databáze SQL, do které program python ukládá data přímo a zobrazuje hodnoty na stránce.
Doporučuje:
Monitorování zeleného domu s IOT: 5 kroků
Monitorování zeleného domu pomocí IOT: Pokud jde o zemědělství, monitorování teploty & vlhkost rostlin je důležitým faktorem pro jejich přežití. V současné době lidé používají teploměry připevněné ve skleníku, aby zemědělci mohli měřit teplotu. Tato ruční aplikace však
Hlasová automatizace domácí automatizace Raspberry Pi: 5 kroků
Hlasová automatizace domácí automatizace Raspberry Pi: Cílem této instrukce je poskytnout podrobný návod, jak nastavit malinový pi, který dokáže automatizovat světla / LED pomocí vašich hlasových příkazů
Automatizace domácnosti s Androidem a Arduinem: Otevřete bránu, když se dostanete domů: 5 kroků
Domácí automatizace s Androidem a Arduinem: Otevřete bránu, když se dostanete domů: Tento návod se týká nastavení systému domácí automatizace, který bude řízen pomocí smartphonu pomocí internetového připojení, aby byl k němu přístup odkudkoli, kde ho potřebujete. Kromě toho provede určité akce vždy, když je splněno kritérium
Automatizace domácí automatizace Bluetooth: 7 kroků (s obrázky)
Bluetooth Control Home Automation: Dobrý den, v tomto projektu jde o stavbu nejjednoduššího zařízení pro domácí automatizaci pomocí arduina a modulu bluetooth. Tenhle se velmi snadno staví a dá se postavit za pár hodin. Ve své verzi, kterou právě vysvětluji, mohu
Kurz zeleného laserového subwooferu: 6 kroků
Green Laser Subwoofer Tutorial: This tutorial will allow you to make a simple light show with any laser = Dwith simple things you have at home. Here is the video .. = D