Indholdsfortegnelse:

Arduino Plant Irrigator, kodefri: 11 trin
Arduino Plant Irrigator, kodefri: 11 trin

Video: Arduino Plant Irrigator, kodefri: 11 trin

Video: Arduino Plant Irrigator, kodefri: 11 trin
Video: Arduino Garden Controller - Automatic Watering and Data Logging 2024, November
Anonim
Image
Image
Robot makeup
Robot makeup

I denne instruktør bygger vi en vandingsrobot, som vander dine planter i dagtimerne, når jorden bliver tør nok. Dette er et klassisk Arduino-baseret projekt, men denne gang bruger vi et visuelt programmeringssprog, XOD, hvilket gør programmeringsprocessen ganske eksplicit.

Trin 1: Robot Makeup

En nedsænkende vandpumpe vil levere vand til planten, når jorden er tør. Vi måler dens fugtighedsniveau ved hjælp af en jordfugtighedsføler.

Vi ønsker ikke at vande vores anlæg om natten, så lyssensoren kontrollerer, om det er dagtimerne.

For at sikre pumpens sikre drift bruger vi en anden jordfugtighedsføler som vandstandssensor.

Robotens visuelle sprog er lakonisk: rød LED betyder "der er intet vand, kan ikke vandes" grøn LED betyder "jeg arbejder, måler miljøindikatorerne, klar til at skylle efter behov".

Et Iskra Neo (Arduino Leonardo) bord bestyrer alle moduler.

Trin 2: Samling af elektroniske moduler

Montering af elektroniske moduler
Montering af elektroniske moduler

Brugte moduler:

  • Iskra Neo board (Arduino Leonardo)
  • Slot skjold
  • Jordfugtighedsføler (x2)
  • Lysstyrkesensor
  • LED -modul (x2)
  • Pumpe
  • Vægstik (6-9V DC)

Bemærk strømforsyningskredsløbet:

  • Brug en jumper til at få V2 -bussen på et slotskærm til at bruge Vin -strømforsyning (fra stikket direkte)
  • Placer MOSFET -modulet på en hvilken som helst V2 -slot med en V = P+ jumper på
  • Sørg for, at andre moduler bruger V1 -strømbussen (som er Arduinos 5V)

Bedste praksis er at føre jordfugtighedssensorer gennem et andet par MOSFET'er og læse dem regelmæssigt for at undgå elektrolytisk korrosion, men lad os holde denne robot enkel.

Trin 3: Forståelse af arbejdsgange

Forståelse af arbejdsgang
Forståelse af arbejdsgang

Undersøg diagrammet fra bunden og op!

  • Pumpen tændes, når både "klima" og "vand" betingelser er opfyldt
  • Vandtilstand betyder, at der er nok vand i tanken, hvis det ikke er tilfældet, tænder "ingen-vand-LED", og resultatet af konjunktion for klima og vandforhold bliver falsk
  • Klimatilstanden er også kompleks: det er sandt, hvis både jord- og lysstyrkeforhold er sande
  • Jordtilstand er baseret på sammenligning mellem det nuværende jordfugtighedsniveau og en foruddefineret tærskelværdi Lysstyrke ligner jordtilstanden, men måler i stedet lysstyrken

Trin 4: Opnåelse af tærskelværdier

Opnåelse af tærskelværdier
Opnåelse af tærskelværdier

Sensortærskler (eksempeldata, kan variere i dit tilfælde):

  • Jordfugtighed: 0,15
  • Lysstyrke: 0,58
  • Vand: 0,2

Sådan foretages målinger (for XOD -versioner uden serielle funktioner):

  1. Download og installer Arduino IDE
  2. Åbn fil-eksempler-01. Basics-AnalogReadSerial-eksempel
  3. Skift "forsinkelse (1);" at "forsinke (250);"
  4. Tilslut kortet. Sørg for, at din bordmodel og port er valgt i servicemenuen
  5. Gentag for hver sensor:
  • Kontroller pinkoden i "int sensorValue = analogRead (A0);" og skift A0 til A3 og A2 for henholdsvis lysstyrke og vandfølere (hvis du har samlet din enhed i henhold til skemaet)
  • Upload skitsen Åbn service-seriel skærm, sørg for at 9600 baud er valgt nederst til højre, og se live målinger ændre sig, når du justerer sensorens miljø
  • Vælg en værdi mellem registreret minimum og maksimum (tættere på minimum for lysstyrkesensoren), divider den med 1023 og brug resultatet i din patch

Trin 5: XOD Basics

XOD Basics
XOD Basics
  • Download og installer XOD IDE
  • Et XOD -program kaldes en patch; vi bygger det i området med et antal slidsede rækker til højre.
  • Ved den første lancering kan du støde på en indbygget tutorial-patch.
  • Patchen består af noder, der er forbundet med links gennem stifterne.
  • Hver node repræsenterer enten en fysisk enhed/signal eller et dataelement, mens links styrer datastrømmen.
  • Dobbeltklik på et tomt mellemrum i patchen, eller tryk på "i" -tasten for at åbne en hurtig søgedialog, hvor noder kan findes efter deres navne eller beskrivelser.
  • Brug projektbrowser øverst til venstre for at udforske programrettelserne.
  • Vælg en knude, og se/rediger dens egenskaber i inspektøren nederst til venstre.
  • Hvis du vil prøve XODing selv, skal du klikke på File-New Project og oprette en tom patch.
  • Du kan vende tilbage til selvstudiet når som helst du vil ved at åbne menuen Hjælp.

Trin 6: Vandingsopdatering

Vandingspatch
Vandingspatch

Brug lappen (basic-irrgator.xodball) eller byg den selv i henhold til diagrammet.

Bemærk, at den medfølgende patch allerede er oprettet, så nogle noder blev opdateret i IDE:

  • "analog-input" noder er nu udfaset, brug "analog-read" i stedet
  • "led" -knude har flere funktioner nu

Selvom tærsklerne bare er konstante tal, placerer jeg dem ikke i egenskabsfelterne for sammenligningsknudepunkter, men tilføjer eksplicitte konstant-tal-noder i stedet for at understrege, at disse værdier kunne evalueres forskelligt. For eksempel kan der være en mobilapplikation, der giver ejeren mulighed for at justere disse værdier, så der ville være en anden "hent fra app" -knude i stedet for disse noder med konstant tal.

Trin 7: Implementering

Implementering
Implementering
  • Når patchen er klar, skal du klikke på Implementér, Upload til Arduino.
  • Tilslut kortet.
  • Kontroller tavlemodellen og den serielle port i rullemenuerne, og klik derefter på Upload.
  • Dette kan tage et stykke tid; Internetforbindelse er påkrævet.
  • Hvis du bruger browseren XOD IDE, skal du bruge Arduino IDE til at uploade programmet til tavlen.
  • Hvis du har problemer med at uploade patchen, skal du undersøge XOD -forummet

Trin 8: Konstruktionstid

Konstruktionstid
Konstruktionstid

Brug passende dele til at lave robotens skal eller design og 3D-print dem selv. I værste fald skal du bare tabe pumpen og sensoren i vandtanken og stikke jordsensoren, hvor den hører hjemme. Overvej at lave et gardin til lysstyrkesensoren, fordi vores lysdioder kan blinde sensoren, og det vil fejlvurdere natten.

Trin 9: Placering af vandstandssensor

Placering af vandstandssensor
Placering af vandstandssensor

Hvis du bruger en jordfugtighedsføler til at kontrollere vandstanden, skal du sørge for, at dens gyldne belægning er over vandet, og dens spidser vil savne vand tidligere, end den øverste side af pumpen vil.

Trin 10: Test

Når din robot er klar, måles og kodes tærskler i patchen, og sidstnævnte uploades til tavlen, er det tid til at teste alle mulige sager.

  • Gør vandstandssensoren tør. Kun den røde LED skal være tændt. Selvom jorden er tør og rummet er oplyst på samme tid, bør pumpen ikke starte.
  • Tilføj nu vandet, men dæk først lysstyrkesensoren for at sikre, at tør jord og tilstedeværelse af vand ikke får robotten til at skylle om natten.
  • Lad endelig robotten vande dit anlæg. Det skal stoppe, når jorden er fugtig nok.
  • Tag jordsensoren ud for at gentage vandingen (bare for at være sikker).

Trin 11: Nyd og forbedre

Nyd og forbedre
Nyd og forbedre

Nu hvor den grundlæggende vandingsanlæg er færdig, skal du overveje nogle forbedringsmuligheder:

  • Tilslut jordfugtighedssensorerne igen for at undgå korrosion
  • Tilføj andre miljømålinger, f.eks. luftfugtighed
  • Lav en tidsplan i realtid
  • Sæt robotten online for at overvåge og styre den eksternt

Anbefalede: