Sisällysluettelo:
- Vaihe 1: Tarvittavat komponentit
- Vaihe 2: Kieli ja protokolla
- Vaihe 3: Eclipse Mosquitto MQTT Broker
- Vaihe 4: Datavirta koko projektissa
- Vaihe 5: Anturien liittäminen NodeMCU -laitteeseen
- Vaihe 6: Upotettavan vesipumpun liittäminen ESP8266: een
- Vaihe 7: Mosquitto Broker & Ryt Python -ohjelman asentaminen Raspberry Pi: hen
- Vaihe 8: Kuinka MQTT toimii?
- Vaihe 9: NodeMCU: n ja ESP8266: n ohjelmointi
- Vaihe 10: Web -sivun suunnittelu ja yhteyden muodostaminen SQL -tietokantaan
- Vaihe 11: Suorita työ loppuun
Video: Kasvihuoneen automaatio: 11 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Kasvihuoneiden automaatio on projekti, jossa käyttäjä valvoo kolmea kasvihuoneen parametria eli maaperän kosteutta, lämpötilaa ja kosteutta etänä yksinkertaisesti verkkoselaimen avulla.
Vaihe 1: Tarvittavat komponentit
Alla on lueteltu muutamia välttämättömiä komponentteja
1. Vadelma PI Malli B
2. NodeMCU Development Board
3. ESP8266 Wifi -moduuli
4. Kosteusanturi
5. DHT11 lämpötila- ja kosteusanturi
6. 5V yksikanavainen rele
7. 5V upotettava vesipumppu
8. Leipälauta
9. Leipälevyn virtalähdemoduuli
Vaihe 2: Kieli ja protokolla
- C Mikro -ohjaimissa käytetään kieltä.
- MQTT Messaging: MQTT on lyhenne sanoista MQ Telemetry Transport. Se on julkaisu/tilaus, erittäin yksinkertainen ja kevyt viestintäprotokolla, joka on suunniteltu rajoitetuille laitteille ja pienelle kaistanleveydelle, korkealle latenssille tai epäluotettaville verkkoille. Suunnitteluperiaatteiden tarkoituksena on minimoida verkon kaistanleveys ja laiteresurssivaatimukset samalla kun pyritään varmistamaan luotettavuus ja jonkinasteinen toimitusvarmuus. Nämä periaatteet tekevät protokollasta myös ihanteellisen yhdistettävissä olevien laitteiden ja koneiden välisessä maailmassa (M2M) tai esineiden Internetissä sekä mobiilisovelluksissa, joissa kaistanleveys ja akkuvirta ovat huippuluokkaa.
- Python -ohjelmaa käytetään veden virtauksen ja tietokantayhteyden automatisointiin.
Vaihe 3: Eclipse Mosquitto MQTT Broker
Tässä käytin Mosquitto MQTT Brokeria solmujen väliseen helppoon viestintään.
Eclipse Mosquitto on avoimen lähdekoodin (EPL/EDL -lisensoitu) sanomanvälittäjä, joka toteuttaa MQTT -protokollan versiot 5.0, 3.1.1 ja 3.1. Mosquitto on kevyt ja sopii käytettäväksi kaikilla laitteilla pienitehoisista yhden kortin tietokoneista täydisiin palvelimiin.
MQTT -protokolla tarjoaa kevyen tavan lähettää viestejä käyttämällä julkaisu-/tilausmallia. Tämä tekee siitä sopivan esineiden Internet -viesteihin, kuten pienitehoisille antureille tai mobiililaitteille, kuten puhelimille, sulautetuille tietokoneille tai mikro -ohjaimille.
Mosquitto -projekti tarjoaa myös C -kirjaston MQTT -asiakkaiden ja erittäin suosittujen mosquitto_pub- ja mosquitto_sub -komentorivin MQTT -asiakkaiden toteuttamiseen.
Vaihe 4: Datavirta koko projektissa
Yllä olevassa kuvassa solmut ovat
- NodeMCU
- Vadelma PI
- ESP8266
NodeMCU on Green Housen anturiosa ja ESP8266 on käyttöosa, joka toimittaa vettä, kun maaperä tarvitsee vettä antureiden mukaan.
Raspberry PI sisältää Mosquitto Brokerin ja Python -asiakkaan, joka tilaa MQTT Brokerilta tulevat viestit ja tallentaa tiedot SQL -palvelimelle.
Vaihe 5: Anturien liittäminen NodeMCU -laitteeseen
DHT11 -lämpötila- ja kosteusanturi sekä veden kosteusanturi voivat toimia 3,3 voltin jännitteellä.
NodeMCU ei voi tuottaa enempää kuin 3,3 volttia. Joten anturit voidaan yhdistää suoraan NodeMCU -mikrokorttiin.
Vaihe 6: Upotettavan vesipumpun liittäminen ESP8266: een
Upotettavaa vesipumppua käytetään veden syöttämiseen aina tarvittaessa.
Vesipumppu tarvitsee 5 voltin virtalähteen toimiakseen.
Moottorin kytkemiseen tarvitaan yksikanavainen rele. Kun ESP8266: n GPIO2 -nasta aktivoidaan, rele kytkeytyy päälle ja syöttää veden automaattisesti upotettavan vesipumpun avulla.
Täällä on ulkoinen virtalähde ESP8266 -kortille, releelle ja upotettavaan vesipumppuun.
Täydellinen laitteistoyhteyteni on yllä olevassa kuvassa.
Vaihe 7: Mosquitto Broker & Ryt Python -ohjelman asentaminen Raspberry Pi: hen
Seuraavat vaiheet asentavat Mosquitto -välittäjän Raspberry PI: hen
Avaa pääte ja kirjoita seuraavat komennot
sudo apt-add-repository ppa: mosquitto-dev/mosquitto-ppa
sudo apt-get päivitys
sudo apt-get install mosquitto
sudo apt-get install mosquitto-clientit
Sen pitäisi automaattisesti käynnistää hyttyset.
Pysäyttääksesi ja käynnistääkseni tarvitsemani palvelun
sudo -palvelu lopettaa hyttysen
sudo -palvelu käynnistää hyttysen
Useimmat sivustot löysin, missä käytetään muotoa.
sudo /etc/init.d/mosquitto stop
Vaihe 8: Kuinka MQTT toimii?
MQTT on yksi yleisimmin käytetyistä protokollista IoT -projekteissa. Se tarkoittaa Message Queuing Telemetry Transportia.
Lisäksi se on suunniteltu kevyeksi viestiprotokollaksi, joka käyttää julkaisu-/tilaustoimintoja tietojen vaihtamiseen asiakkaiden ja palvelimen välillä. Lisäksi sen pieni koko, pieni virrankulutus, minimoidut datapaketit ja helppokäyttöisyys tekevät protokollasta ihanteellisen "koneiden välillä" tai "esineiden internet" -maailmassa.
Kuten mikä tahansa muu Internet -protokolla, MQTT perustuu asiakkaisiin ja palvelimeen. Samoin palvelin on kaveri, joka vastaa asiakkaan pyyntöjen vastaanottamisesta tai lähettämisestä toistensa välillä. MQTT -palvelinta kutsutaan välittäjäksi ja asiakkaat ovat yksinkertaisesti yhdistettyjä laitteita.
* Kun laite (asiakas) haluaa lähettää tietoja välittäjälle, kutsumme tätä toimintoa julkaisemiseksi.
* Kun laite (asiakas) haluaa vastaanottaa tietoja välittäjältä, kutsumme tätä toimintoa tilaukseksi.
Vaihe 9: NodeMCU: n ja ESP8266: n ohjelmointi
Seuraavassa on NodeMCU- ja ESP8266 -mikrokortin lähdekoodi
Vaihe 10: Web -sivun suunnittelu ja yhteyden muodostaminen SQL -tietokantaan
Verkkosivu on suunniteltu HTML-, CSS- ja PHP -kielellä.
PHP: tä käytetään poimimaan anturin lukemat tietokannasta ja näyttämään se HTML -sivulla.
Tämän projektin ytimenä on python -ohjelma.
Python -ohjelman tekemät työt ovat seuraavat.
- Se tilaa aiheen, jossa anturi lähettää anturin lukemat.
- Se julkaisee vesipumpun päälle/pois -komennon MQTT -välittäjälle.
- Se tallentaa anturin lukeman SQL -tietokantaan.
Tässä tapauksessa python -ohjelma ja SQL -tietokanta ovat läsnä kannettavassa tietokoneessa. Verkkosivu, joka kulkee paikallisen isännän kautta.
Seuraavassa on python -ohjelman lähdekoodi.
Vaihe 11: Suorita työ loppuun
Seuraavassa on vaiheet, joissa prosessi etenee.
- NodeMCU toimii anturina ja lukee lämpötilan, kosteuden ja maaperän kosteustason.
- Se lähettää lukemat MQTT -välittäjälle aiheella "Aihe 1"
- Kannettavassa tietokoneessa python -ohjelma on käynnissä ja se tilaa aiheen "Aihe 1" MQTT -välittäjän kanssa.
- Kun NodeMCU lähettää lukemat, Mosquitto MQTT Broker lähettää tiedot välittömästi python -ohjelmaan.
- Python -ohjelma laskee sitten, tarvitaanko vettä Green Housessa. Sitten se tallentaa lukemat SQL -tietokantaan.
- Jos vettä tarvitaan Green Housessa, python -ohjelma julkaisee vesipumpun päälle/pois -viestin Mosquitto MQTT -välittäjälle aiheella "Aihe 2"
- ESP8266 toimii toimilaitteena. Se tilaa aiheen "Aihe 2", jossa aiheessa python -ohjelma julkaisee viestin. Kun python -ohjelma julkaisee minkä tahansa viestin, viesti siirretään välittömästi ESP8266: een. On/off -viestin mukaan se käynnisti/sammutti upotettavan vesipumpun.
- Viimeinen vaihe näyttää live -lukemat verkkosivulla. Verkkosivu hakee tiedot SQL -tietokannasta, johon python -ohjelma tallentaa tiedot suoraan ja näyttää lukemat sivulla.
Suositeltava:
Puhuva automaatio -- Ääni Arduinolta -- Puheohjattu automaatio -- HC -05 Bluetooth -moduuli: 9 vaihetta (kuvilla)
Puhuva automaatio || Ääni Arduinolta || Puheohjattu automaatio || HC - 05 Bluetooth -moduuli: …………………………. Tilaa YouTube -kanavani saadaksesi lisää videoita …. …. Tässä videossa olemme rakentaneet puhuvan automaation. Kun lähetät äänikomennon matkapuhelimen kautta, se käynnistää kodin laitteet ja lähettää palautetta
Kasvihuoneen automatisointi LoRa! (Osa 2) -- Moottoroitu ikkunanavaaja: 6 vaihetta (kuvilla)
Kasvihuoneen automatisointi LoRa! (Osa 2) || Moottoroitu ikkunanavaaja: Tässä projektissa näytän sinulle, kuinka loin moottoroidun ikkunanavaajan kasvihuoneelleni. Tämä tarkoittaa sitä, että näytän sinulle, mitä moottoria käytin, kuinka suunnittelin varsinaisen mekaanisen järjestelmän, kuinka ajaan moottoria ja lopulta kuinka käytin Arduino LoRaa
Kasvihuoneen automatisointi LoRa! (Osa 1) -- Anturit (lämpötila, kosteus, maaperän kosteus): 5 vaihetta
Kasvihuoneen automatisointi LoRa! (Osa 1) || Anturit (lämpötila, kosteus, maaperän kosteus): Tässä projektissa näytän sinulle, kuinka automatisoin kasvihuoneen. Tämä tarkoittaa sitä, että näytän teille, kuinka rakensin kasvihuoneen ja miten kytkin virta- ja automaatioelektroniikan. Aion myös näyttää sinulle, kuinka ohjelmoida Arduino -levy, joka käyttää L
Kasvihuoneen anturilaatikko: 5 vaihetta
Kasvihuoneen anturilaatikko: Hei. Haluan esitellä vielä yhden projektini laajalle yhteiskunnalle. Hankkeen tavoitteena on automatisoida takapihalleni rakentama kasvihuone. Tämä on ensimmäinen askel- kasvihuoneen anturikompleksin luominen. Myöhemmin tulevaisuudessa
Hydroponic kasvihuoneen valvonta- ja ohjausjärjestelmä: 5 vaihetta (kuvilla)
Vesiviljelykasvihuoneiden valvonta- ja ohjausjärjestelmä: Tässä ohjeessa näytän sinulle, kuinka rakentaa hydroponinen kasvihuonekaasujen valvonta- ja ohjausjärjestelmä. Näytän sinulle valitut komponentit, kytkentäkaavion piirin rakentamisesta ja Arduinon luonnoksesta, jota käytettiin Seeedin ohjelmointiin