Innholdsfortegnelse:

Arduino Plant Irrigator, kodefri: 11 trinn
Arduino Plant Irrigator, kodefri: 11 trinn

Video: Arduino Plant Irrigator, kodefri: 11 trinn

Video: Arduino Plant Irrigator, kodefri: 11 trinn
Video: Arduino Garden Controller - Automatic Watering and Data Logging 2024, Juli
Anonim
Image
Image
Robot Makeup
Robot Makeup

I denne instruksen bygger vi en vanningsrobot som vanner plantene dine på dagtid når jorda blir tørr nok. Dette er et klassisk Arduino-basert prosjekt, men denne gangen bruker vi et visuelt programmeringsspråk, XOD, som gjør programmeringsprosessen ganske eksplisitt.

Trinn 1: Robotmakeup

En nedsenkende vannpumpe vil levere vann til planten når jorden er tørr. Vi måler fuktighetsnivået ved hjelp av en jordfuktighetssensor.

Vi vil ikke vanne anlegget vårt om natten, så lyssensoren sjekker om det er på dagtid.

For å sikre pumpens sikre drift bruker vi en annen jordfuktighetssensor som vannstandssensor.

Robotens visuelle språk er lakonisk: rød LED betyr "det er ikke vann, kan ikke vannes", grønn LED betyr "jeg er i drift, måler miljøindikatorene, klar til vanning når det er nødvendig".

Et Iskra Neo (Arduino Leonardo) -kort styrer alle modulene.

Trinn 2: Montering av elektroniske moduler

Montering av elektroniske moduler
Montering av elektroniske moduler

Moduler som brukes:

  • Iskra Neo -brett (Arduino Leonardo)
  • Sporskjold
  • Jordfuktighetssensor (x2)
  • Lysstyrkesensor
  • LED -modul (x2)
  • Pumpe
  • Veggkontakt (6-9V DC)

Legg merke til strømforsyningskretsen:

  • Bruk en jumper for å få V2 -bussen på et Slot -skjold til å bruke Vin -strømforsyning (fra pluggen direkte)
  • Plasser MOSFET -modulen på et hvilket som helst V2 -spor med en V = P+ jumper på
  • Sørg for at andre moduler bruker V1 -strømbussen (som er Arduinos 5V)

Beste praksis er å føre jordfuktighetssensorer gjennom et annet par MOSFET -er og lese dem regelmessig for å unngå elektrolytisk korrosjon, men la oss holde denne roboten enkel.

Trinn 3: Forstå arbeidsflyt

Forstå arbeidsflyt
Forstå arbeidsflyt

Undersøk diagrammet nedenfra og opp!

  • Pumpen slås på når både "klima" og "vann" er oppfylt
  • Vanntilstand betyr at det er nok vann i tanken. Hvis det ikke er det, slås "no-water LED" på og resultatet av konjunksjon for klima og vannforhold blir feil
  • Klimatilstanden er også kompleks: det er sant hvis både jord- og lysstyrkeforhold er sanne
  • Jordtilstanden er basert på sammenligning mellom gjeldende jordfuktighetsnivå og en forhåndsdefinert terskelverdi Lysstyrketilstand ligner jordtilstanden, men måler lysstyrken i stedet

Trinn 4: Innhenting av terskelverdier

Innhenting av terskelverdier
Innhenting av terskelverdier

Sensorterskler (eksempeldata, kan variere i ditt tilfelle):

  • Jordfuktighet: 0,15
  • Lysstyrke: 0,58
  • Vann: 0,2

Slik tar du målinger (for XOD -versjoner uten serielle funksjoner):

  1. Last ned og installer Arduino IDE
  2. Åpne File-eksempler-01. Basics-AnalogReadSerial eksempel
  3. Endre "forsinkelse (1);" å "forsinke (250);"
  4. Koble brettet. Kontroller at brettmodellen og porten er valgt i servicemenyen
  5. Gjenta for hver sensor:
  • Kontroller pin -nummeret i "int sensorValue = analogRead (A0);" og endre A0 til A3 og A2 for henholdsvis lysstyrke og vannsensorer (hvis du har satt sammen enheten i henhold til opplegget)
  • Last opp skissen Open Service-Serial Monitor, sørg for at 9600 baud er valgt nederst til høyre og se live målinger endres når du justerer sensorens miljø
  • Velg en verdi mellom registrert minimum og maksimum (nærmere minimum for lysstyrkesensoren), del den med 1023 og bruk resultatet i oppdateringen

Trinn 5: Grunnleggende om XOD

Grunnleggende om XOD
Grunnleggende om XOD
  • Last ned og installer XOD IDE
  • Et XOD -program kalles en oppdatering; vi bygger det i området med et antall riller med riller til høyre.
  • Ved den første lanseringen kan du støte på en innebygd opplæringsoppdatering.
  • Lappen består av noder, koblet til lenker gjennom pinnene.
  • Hver node representerer enten en fysisk enhet/signal eller et dataelement, mens koblinger styrer dataflyten.
  • Dobbeltklikk på et tomt mellomrom i lappen eller trykk på "i" -tasten for å åpne en hurtigsøk-dialog der noder kan bli funnet med navn eller beskrivelser.
  • Bruk prosjektleseren øverst til venstre for å utforske oppdateringene.
  • Velg en node og se/rediger egenskapene i inspektøren nederst til venstre.
  • Hvis du vil prøve XODing selv, klikker du på Fil-nytt prosjekt og oppretter en tom oppdatering.
  • Du kan gå tilbake til opplæringen når som helst ved å åpne Hjelp -menyen.

Trinn 6: Irrigator Patch

Irrigator Patch
Irrigator Patch

Bruk oppdateringen (basic-irrgator.xodball) eller bygg den selv i henhold til diagrammet.

Legg merke til at oppdateringen allerede er opprettet, så noen noder ble oppdatert i IDE:

  • "analog-input" noder er nå utdatert, bruk "analog-read" i stedet
  • "led" -noden har flere funksjoner nå

Selv om tersklene bare er konstante tall, legger jeg dem ikke i egenskapsfeltene for sammenligningsnoder, men legger til eksplisitte noder med konstant tall i stedet for å understreke at disse verdiene kan evalueres annerledes. For eksempel kan det være en mobilapplikasjon som lar eieren justere disse verdiene, så det ville være en annen "hent fra app" -node i stedet for disse konstantnummernodene.

Trinn 7: Distribusjon

Utplassering
Utplassering
  • Når oppdateringen er klar, klikker du Distribuer, Last opp til Arduino.
  • Koble brettet.
  • Kontroller brettmodellen og seriell port i rullegardinmenyen, og klikk deretter på Last opp.
  • Dette kan ta en stund; Internett -tilkobling er nødvendig.
  • Hvis du bruker XOD IDE i nettleseren, bruker du Arduino IDE til å laste opp programmet til brettet.
  • Hvis du har problemer med å laste opp oppdateringen, kan du utforske XOD -forumet

Trinn 8: Byggetid

Byggetid
Byggetid

Bruk passende deler til å lage robotens skall eller design og 3D-skrive dem ut selv. I verste fall må du bare slippe pumpen og sensoren i vanntanken og stikke jordsensoren der den hører hjemme. Vurder å lage et gardin for lyssensoren, fordi lysdiodene våre kan blende sensoren og det vil feilvurdere natten.

Trinn 9: Plassering av vannnivåsensor

Plassering av vannstandssensor
Plassering av vannstandssensor

Hvis du bruker en jordfuktighetssensor for å kontrollere vannnivået, må du kontrollere at det gylne belegget er over vann, og spissene vil savne vann tidligere enn oversiden av pumpen.

Trinn 10: Testing

Når roboten din er klar, måles og kodes terskler i lappen, og sistnevnte lastes opp til brettet, det er på tide å teste alle mulige tilfeller.

  • Gjør vannstandssensoren tørr. Bare den røde LED -lampen skal være på. Selv om jorda er tørr og rommet er opplyst samtidig, bør ikke pumpen starte.
  • Tilsett nå vannet, men dekk først lyssensoren for å sikre at tørr jord og tilstedeværelse av vann ikke får roboten til å vanne om natten.
  • Til slutt, la roboten vanne planten din. Den skal stoppe når jorda er fuktig nok.
  • Ta jordsensoren ut for å gjenta vanningen (bare for å være sikker).

Trinn 11: Nyt og forbedre

Nyt og forbedre
Nyt og forbedre

Nå som den grunnleggende vanningen er fullført, bør du vurdere noen forbedringsalternativer:

  • Tilfør jordfuktighetssensorene på nytt for å unngå korrosjon
  • Legg til andre miljømålinger, f.eks. luftfuktighet
  • Lag en sanntidsplan
  • Sett roboten online for å overvåke og kontrollere den eksternt

Anbefalt: