INHOUDSOPGAWE:
- Stap 1: Komponente:
- Stap 2: BASIESENSOR: Soil Moisture FC 28
- Stap 3: Verstaan MQTT: vir eksterne data -publikasie
- Stap 4: MQTT: Die opstel van MQTT -makelaarrekening
- Stap 5: MQTT: 'n Instansie skep
- Stap 6: MQTT: Instansie -inligting
- Stap 7: MQTT: Voeg gebruiker by
- Stap 8: MQTT: Toewysing van ACL -reël
- Stap 9: Nodemcu: Konfigureer
- Stap 10: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_1
- Stap 11: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_II
- Stap 12: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_III
- Stap 13: Nodemcu: die opstel van die Arduino om met Nodemcu te praat
- Stap 14: Nodemcu: Die opstel van MQTT -kliënt in Android
- Stap 15: Bykomende stappe: Werk met Nokia LCD 5110
- Stap 16: Die finale samestelling
Video: Monitor u tuin: 16 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Monitor u tuin vanaf enige plek, gebruik die plaaslike skerm om die grondtoestande plaaslik te monitor, of gebruik Mobile om van afstand te monitor. Die kring gebruik grondvogsensor, tesame met temperatuur en humiditeit om bewus te wees van die omgewingstoestande in die grond.
Stap 1: Komponente:
- Arduino uno
- Nodemcu
- Temperatuur- en humiditeitsensor DHT 11
- Grondvogsensor - FC28
- Battery bank 10000mah (vir Power Arduino & nodemcu)
- Nokia LCD 5110
- Resitor (5 x 10k, 1 x 330ohms)
- Potentiometer Roterende tipe (om die helderheid van die LCD aan te pas) 0-100K
- Springdrade
- Broodbord
Stap 2: BASIESENSOR: Soil Moisture FC 28
Om vog te meet, gebruik ons grondvogsensor FC 28, waarvan die basiese beginsel die volgende is:-
Die spesifikasies van die FC-28 grondvogsensor is soos volg: Invoerspanning: 3.3-5V
Uitgangsspanning: 0 - 4.2V
Insetstroom: 35mA
Uitsetsein: analoog en digitaal
Die FC-28-grondvogsensor het vier penne: VCC: Power
A0: Analoog uitvoer
D0: Digitale uitset
GND: Grond
Analoog modus Om die sensor in die analoog modus aan te sluit, moet ons die analoog uitset van die sensor gebruik. As ons die analoog uitset van die grondvogsensor FC-28 neem, gee die sensor ons 'n waarde van 0 tot 1023. Die vog word in persentasie gemeet, dus sal ons hierdie waardes van 0 tot 100 karteer en dan sal ons hierdie waardes wys op die seriële monitor. U kan verskillende reekse van die vogwaardes stel en die waterpomp daarvolgens aan- of afskakel.
Die module bevat ook 'n potensiometer wat die drempelwaarde kan stel. Hierdie drempelwaarde word vergelyk deur die LM393 -vergelyker. Die uitvoer -LED sal volgens hierdie drempelwaarde op en af brand.
Die kode vir interaksie met grondvogsensor word in verdere stappe opgeneem
Stap 3: Verstaan MQTT: vir eksterne data -publikasie
Voordat ons verder begin, gaan ons eers deur die eksterne data -publikasie vir IOT
MQTT staan vir MQ Telemetry Transport. Dit is 'n baie eenvoudige en ligte boodskapprotokol vir publiseer/inteken, ontwerp vir beperkte toestelle en lae bandwydte, hoë vertraging of onbetroubare netwerke. Die ontwerpbeginsels is om netwerkbandwydte en vereistes vir apparaatbronne tot 'n minimum te beperk, terwyl dit ook probeer om betroubaarheid en 'n mate van versekering van aflewering te verseker. Hierdie beginsels maak ook die protokol ideaal vir die opkomende 'masjien-tot-masjien' (M2M) of 'Internet of Things' wêreld van gekoppelde toestelle, en vir mobiele toepassings waar bandwydte en batterykrag hoog is.
Bron:
MQTT [1] (MQ Telemetry Transport or Message Queuing Telemetry Transport) is 'n ISO-standaard (ISO/IEC PRF 20922) [2] publiseer-skryf-gebaseerde boodskapprotokol. Dit werk bo -op die TCP/IP -protokol. Dit is ontwerp vir verbindings met afgeleë plekke waar 'n 'klein kodevoetspoor' nodig is of die netwerkbandwydte beperk is.
Bron:
Stap 4: MQTT: Die opstel van MQTT -makelaarrekening
Daar is verskillende MQTT -makelaarsrekeninge, vir hierdie tutoriaal het ek cloudmqtt gebruik (https://www.cloudmqtt.com/)
CloudMQTT word bestuurde Mosquitto -bedieners in die wolk. Mosquitto implementeer die MQ Telemetry Transport -protokol, MQTT, wat ligte metodes bied om boodskappe uit te voer met behulp van 'n tou -model vir publiseer/inteken van boodskappe.
Die volgende stappe moet uitgevoer word om die cloudmqtt -rekening as makelaar op te stel
- Skep 'n rekening en meld aan by die bedieningspaneel
- druk op Create+ om 'n nuwe instansie te skep
- Om aan die gang te kom, moet ons aanmeld vir 'n kliënteplan, ons kan CloudMQTT gratis probeer met die plan CuteCat.
- Nadat u 'instansie' geskep het, is die volgende stap om 'n gebruiker te skep en verder toestemming aan die gebruiker toe te ken vir toegang tot boodskappe (via ACL -reëls)
Die volledige gids vir die opstel van MQTT -makelaarrekening in cloudmqtt kan verkry word deur die skakel te volg: -
Alle bogenoemde stappe word een vir een in die volgende skyfies geplaas
Stap 5: MQTT: 'n Instansie skep
Ek het 'n instansie geskep met die naam "myIOT"
plan: Oulike plan
Stap 6: MQTT: Instansie -inligting
Die instansie word onmiddellik voorsien na aanmelding, en u kan die instansiebesonderhede, soos verbindingsinligting, op die besonderhede -bladsy sien. U kan ook die bestuurskoppelvlak van daar af bereik. Soms moet u 'n spesifieke verbindings -URL gebruik
Stap 7: MQTT: Voeg gebruiker by
Skep 'n gebruiker met die naam "nodemcu_12" en gee 'n wagwoord
Stap 8: MQTT: Toewysing van ACL -reël
Na die skepping van 'n nuwe gebruiker (nodemcu_12), stoor die nuwe gebruiker, moet nou 'n verdere ACL aan die nuwe gebruiker verskaf word. Op die aangehegte prentjie kan gesien word dat ek lees- en skryftoegang aan die gebruiker gegee het.
Let wel: Onderwerp moet bygevoeg word soos in die formaat aangedui (dit is verder nodig vir lees en skryf van knoop na MQTT -kliënt)
Stap 9: Nodemcu: Konfigureer
In hierdie spesifieke projek het ek nodemcu van Knewron Technologies gebruik; meer inligting kan verkry word deur die skakel te volg: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Gids.pdf? Dl = 0)
Dit kan gesien word dat NodeMCU 'n eLua -firmware is vir die ESP8266 WiFi SOC van Espressif. Nodemcu van knowron is vooraf gelaai met firmware, so ons moet net die app -sagteware laai, naamlik: -
- init.lua
- setup.lua
- config.lua
- app.lua
Al die bogenoemde lua -skrifte kan van Github afgelaai word deur die skakel te volg: Aflaai van Github
Wysig die config.lua -skrifte uit die bogenoemde lua -skrifte met MQTT -gasheernaam, wagwoord, wifi ssid, ens.
Om die bogenoemde skrifte na nodemcu af te laai, moet ons 'n instrument soos 'ESPlorer' gebruik, verwys na dokumente vir meer inligting:
Die werk met ESPlorer word in die volgende stap beskryf
Stap 10: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_1
- Klik op die knoppie Verfris
- Kies die COM (kommunikasie) poort en baud rate (algemeen gebruik 9600)
- Klik op Open
Stap 11: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_II
Stap 12: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_III
Stoor en saamstel -knoppie stuur al die vier lua -skrifte na nodemcu, nadat hierdie nodemcu gereed is om met ons arduino te praat.
Versameling van die CHIP ID -inligting:
Elke nodemcu het 'n chip -ID (waarskynlik 'n paar nr.), Hierdie chip -ID is verder nodig om 'n boodskap aan die MQTT -makelaar te publiseer, om te weet wat die chip -ID is, klik op die knoppie Chip ID in 'ESPlorer'
Stap 13: Nodemcu: die opstel van die Arduino om met Nodemcu te praat
Die onderstaande kode bepaal die grondvog, temperatuur en humiditeit en vertoon verder die data op Nokia LCD 5110 en in reekse.
Arduino kode
Verbind dan Arduino RX --- Nodemcu TX
Arduino TX --- Nodemcu RX
Bogenoemde kode bevat ook maniere om die sagte reeksbiblioteek te gebruik, waardeur DO -penne ook as seriële penne kan werk; ek het RX/TX -penne gebruik om aan die seriële poort van nodemcu te koppel.
Let op: Aangesien nodemcu met 3.3V werk, word dit aanbeveel om 'n vlakverskuiwing te gebruik; ek het egter sonder 'n niveauschakelaar direk gekoppel, en die prestasie lyk presies reg vir die toepassing hierbo.
Stap 14: Nodemcu: Die opstel van MQTT -kliënt in Android
Die laaste stap om die inligting op u selfoon met 'n Android-kliënt te sien:-
Daar is verskillende MQTT -Android -toepassings; ek het die een van Google Play gebruik met die volgende skakel:
.https://play.google.com/store/apps/details?
Die opset vir die Android -app is redelik eenvoudig en u moet die volgende instel
- MQTT -gasheeradres saam met poortnr
- MQTT gebruikersnaam en adres
- MQTT makelaar node adres
Nadat u die bogenoemde besonderhede bygevoeg het, koppel die toepassing aan, as die toepassing gekoppel is aan die MQTT -makelaar, dan verskyn alle ingangstatus / seriële kommunikasiedata van arduino as logboek.
Stap 15: Bykomende stappe: Werk met Nokia LCD 5110
Hierna volg die penkonfigurasie vir LCD 5110
1) RST - Herstel
2) CE - Chip Aktiveer
3) D/C - Seleksie van data/opdrag
4) DIN - Seriële invoer
5) CLK - klokinvoer
6) VCC - 3.3V
7) LIG - Beheer van agterlig
8) GND - Grond
Soos hierbo getoon, koppel arduino aan die LCD 5110 in die volgorde hierbo, met 'n weerstand van 1-10 K tussenin.
Hier volg die pin -to -pin -verbindings vir LCD 5110 na Arduino uno
- CLK - Arduino Digital pin 3
- DIN - Arduino digitale pen 4
- D/C - Arduino digitale pen 5
- RST - Arduino Digital pin 6
- CE - Arduino digitale pen 7
Verdere "BL" -pen van LCD 5110 kan saam met potensimeter (0-100K) gebruik word om die helderheid van LCD te beheer
Die biblioteek wat vir bogenoemde kode gebruik word, is: - Laai die PCD8544 af van onderstaande skakel
Die integrasie van DHT11, temperatuur en humiditeit sensor met arduino kan gekyk word vanaf die volgende skakel DHT11.
Stap 16: Die finale samestelling
Die laaste stap is om die bogenoemde in 'n boks bymekaar te sit, verkieslik, vir die toevoer, het ek 'n 10000 mah powerbank gebruik om beide die Arduino sowel as Nodemcu aan te dryf.
Ons kan ook 'n muurlaaier vir 'n lang tydperk gebruik, indien verlang.
Aanbeveel:
Arduino Binnenshuise Tuin: 7 stappe
Arduino Binnenshuise tuin: Tuinmaak in die moderne tyd beteken dat dinge ingewikkelder en moeisamer word, met elektrone, stukkies en grepe. Die kombinasie van mikrobeheerders en tuinmaak is 'n baie gewilde idee. Ek dink dit is omdat tuine baie eenvoudige insette en uitsette het wat
IoT -tuin met Arduino: 3 stappe
IoT Garden With Arduino: Hallo makers! Dit is 'n projek om u IoT -tuin te skep! U sal die temperatuur van die kamer kan lees, die pomp kan beheer en u plante vanaf u slimfoon kan monitor, selfs as u nie tuis is nie. Die pomp neem die water uit die
Garduino - die slim tuin met Arduino: 4 stappe (met foto's)
Garduino - die slim tuin met Arduino: Niemand is deesdae onskuldig nie. Is daar iemand wat nie per ongeluk 'n plant doodgemaak het nie ??? Dit is moeilik om u plante lewendig te hou. Jy koop 'n nuwe plant, en in die ergste geval vergeet jy dit net om nat te maak. In die beter geval, onthou jy dat dit bestaan, maar jy doen dit
Interaktiewe magiese tuin: 4 stappe
Interaktiewe magiese tuin: ek is baie lief vir plante, maar soms hou plante nie van jou terug nie. Ek is die slegste plantma ooit, en ek het besluit om 'n interaktiewe tuin te maak. Hierdie tuin sal jou vertel wanneer dit water wil hê, sodat jy dit nooit vergeet nie. Ek wou ook die garde maak
Herstel van sonkrag in die tuin: 7 stappe
Mains Powered Solar Garden Light Restoration: Dit volg regtig op sommige van my vorige projekte op die net, maar is nou verwant aan die LED -afbreek wat voorheen gedokumenteer is. sonkrag aangedryf