INHOUDSOPGAWE:

Monitor u tuin: 16 stappe (met foto's)
Monitor u tuin: 16 stappe (met foto's)

Video: Monitor u tuin: 16 stappe (met foto's)

Video: Monitor u tuin: 16 stappe (met foto's)
Video: Экран под ванну (со скрытым люком) 2024, November
Anonim
Monitor u tuin
Monitor u tuin

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:

  1. Arduino uno
  2. Nodemcu
  3. Temperatuur- en humiditeitsensor DHT 11
  4. Grondvogsensor - FC28
  5. Battery bank 10000mah (vir Power Arduino & nodemcu)
  6. Nokia LCD 5110
  7. Resitor (5 x 10k, 1 x 330ohms)
  8. Potentiometer Roterende tipe (om die helderheid van die LCD aan te pas) 0-100K
  9. Springdrade
  10. Broodbord

Stap 2: BASIESENSOR: Soil Moisture FC 28

BASIESENSOR: Grondvog FC 28
BASIESENSOR: Grondvog 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

Verstaan MQTT: vir publisering van data op afstand
Verstaan MQTT: vir publisering van data op afstand

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

MQTT: 'n Instansie skep
MQTT: 'n Instansie skep

Ek het 'n instansie geskep met die naam "myIOT"

plan: Oulike plan

Stap 6: MQTT: Instansie -inligting

MQTT: Instansie -inligting
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

MQTT: Voeg gebruiker by
MQTT: Voeg gebruiker by

Skep 'n gebruiker met die naam "nodemcu_12" en gee 'n wagwoord

Stap 8: MQTT: Toewysing van ACL -reël

MQTT: Ken ACL -reël toe
MQTT: Ken ACL -reël toe

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

Nodemcu: Laai Lua -skrifte op na Nodemcu met ESPlorer_1
Nodemcu: Laai Lua -skrifte 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

Nodemcu: Laai Lua -skrifte op na Nodemcu met ESPlorer_II
Nodemcu: Laai Lua -skrifte op na Nodemcu met ESPlorer_II

Stap 12: Nodemcu: Laai Lua Scripts op na Nodemcu met ESPlorer_III

Nodemcu: Laai Lua -skrifte op na Nodemcu met ESPlorer_III
Nodemcu: Laai Lua -skrifte 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

Nodemcu: Die opstel van MQTT -kliënt in Android
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

Bykomende stappe: Werk met Nokia LCD 5110
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 finale samestelling
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: