Innehållsförteckning:

Arduino Plant Irrigator, kodfri: 11 steg
Arduino Plant Irrigator, kodfri: 11 steg

Video: Arduino Plant Irrigator, kodfri: 11 steg

Video: Arduino Plant Irrigator, kodfri: 11 steg
Video: Arduino Garden Controller - Automatic Watering and Data Logging 2024, Juli
Anonim
Image
Image
Robotmakeup
Robotmakeup

I denna instruerbara bygger vi en vattningsrobot som bevattnar dina växter dagtid när jorden blir tillräckligt torr. Detta är ett klassiskt Arduino-baserat projekt, men den här gången använder vi ett visuellt programmeringsspråk, XOD, vilket gör programmeringsprocessen ganska tydlig.

Steg 1: Robotmakeup

En nedsänkande vattenpump kommer att leverera vatten till växten när jorden är torr. Vi mäter dess fuktnivå med en jordfuktighetssensor.

Vi vill inte vattna vår anläggning på natten, så ljussensorn kontrollerar om det är dagtid.

För att säkerställa pumpens säkra drift använder vi en annan jordfuktighetssensor som vattennivåsensor.

Robotens bildspråk är lakoniskt: röd lysdiod betyder "det finns inget vatten, kan inte bevattnas" grön lysdiod betyder "jag arbetar, mäter miljöindikatorer, redo att bevattna vid behov".

En Iskra Neo (Arduino Leonardo) styrelse styr alla moduler.

Steg 2: Montering av elektroniska moduler

Montering av elektroniska moduler
Montering av elektroniska moduler

Moduler som används:

  • Iskra Neo board (Arduino Leonardo)
  • Slotsköld
  • Jordfuktighetsgivare (x2)
  • Ljussensor
  • LED -modul (x2)
  • Pump
  • Väggkontakt (6-9V DC)

Observera strömförsörjningskretsen:

  • Använd en bygel för att få V2 -bussen på en Slot -sköld att använda Vin -strömförsörjning (från kontakten direkt)
  • Placera MOSFET -modulen på valfri V2 -kortplats med en bygel V = P+ på
  • Se till att andra moduler använder V1 -strömbussen (som är Arduinos 5V)

Bästa praxis är att leda jordfuktighetssensorer genom ytterligare ett par MOSFET och läsa dem regelbundet för att undvika elektrolytisk korrosion, men låt oss hålla den här roboten enkel.

Steg 3: Förstå arbetsflöde

Förstå arbetsflöde
Förstå arbetsflöde

Undersök diagrammet nedifrån och upp!

  • Pumpen slås på när både "klimat" och "vatten" villkor är uppfyllda
  • Vattentillstånd betyder att det finns tillräckligt med vatten i tanken, om det inte är så tänds "no-water LED" och resultatet av konjunktion för klimat och vattenförhållanden blir falskt
  • Klimatförhållandet är också komplext: det är sant om både jord- och ljusstyrka är sanna
  • Jordtillståndet baseras på jämförelse mellan nuvarande markfuktighetsnivå och ett fördefinierat tröskelvärde Ljusstyrka liknar markförhållandet, men mäter ljusstyrkan istället

Steg 4: Skaffa tröskelvärden

Skaffa tröskelvärden
Skaffa tröskelvärden

Sensortrösklar (provdata, kan variera i ditt fall):

  • Jordfuktighet: 0,15
  • Ljusstyrka: 0,58
  • Vatten: 0,2

Hur man gör mätningar (för XOD -versioner utan seriella funktioner):

  1. Ladda ner och installera Arduino IDE
  2. Öppna fil-exempel-01. Basics-AnalogReadSerial-exempel
  3. Ändra "fördröjning (1);" att "fördröja (250);"
  4. Anslut kortet. Se till att din kortmodell och port är valda i servicemenyn
  5. Upprepa för varje sensor:
  • Kontrollera stiftnumret i "int sensorValue = analogRead (A0);" och ändra A0 till A3 och A2 för ljusstyrka respektive vattensensorer (om du har monterat din enhet enligt schemat)
  • Ladda upp skissen Öppna service-seriell bildskärm, se till att 9600 baud har valts längst ned till höger och se hur live-mätningar ändras när du justerar sensorns miljö
  • Välj ett värde mellan registrerat minimum och maximalt (närmare minimum för ljussensorn), dela det med 1023 och använd resultatet i din lapp

Steg 5: XOD Basics

XOD Basics
XOD Basics
  • Ladda ner och installera XOD IDE
  • Ett XOD -program kallas en patch; vi bygger det i området med ett antal ritsar till höger.
  • Vid den första lanseringen kan du stöta på en inbyggd tutorial-patch.
  • Plåstret består av noder, anslutna med länkar genom stiften.
  • Varje nod representerar antingen en fysisk enhet/signal eller ett dataobjekt, medan länkar styr dataflödet.
  • Dubbelklicka på ett tomt utrymme i korrigeringen eller tryck på "i" -knappen för att öppna en snabbsökningsdialogruta där noder kan hittas med deras namn eller beskrivningar.
  • Använd projektwebbläsaren uppe till vänster för att utforska patchar.
  • Välj en nod och visa/redigera dess egenskaper i inspektören längst ned till vänster.
  • För att prova XODing själv klickar du på File-New Project och skapar en tom patch.
  • Du kan återgå till självstudien när du vill genom att öppna Hjälp -menyn.

Steg 6: Bevattningsplåster

Bevattningsplåster
Bevattningsplåster

Använd lappen (basic-irrgator.xodball) eller bygg den själv enligt diagrammet.

Lägg märke till att korrigeringsfilen redan har skapats, så några noder uppdaterades i IDE:

  • "analog-ingång" -noder är nu utfasade, använd "analog-läs" istället
  • "led" -noden har fler funktioner nu

Trots att trösklarna bara är konstanta siffror lägger jag dem inte i egenskapsfälten för jämförelsesnoder, utan lägger till explicita konstantnummernoder istället för att betona att dessa värden kan utvärderas annorlunda. Till exempel kan det finnas en mobilapplikation som tillåter ägaren att justera dessa värden, så det skulle finnas en annan "hämta från app" -nod istället för dessa konstantnummernoder.

Steg 7: Distribution

Spridning
Spridning
  • När patchen är klar klickar du på Distribuera, Ladda upp till Arduino.
  • Anslut kortet.
  • Kontrollera kortmodellen och den seriella porten i rullgardinsmenyn och klicka sedan på Ladda upp.
  • Det här kan ta ett tag; Internetanslutning krävs.
  • Om du använder webbläsaren XOD IDE, använd Arduino IDE för att ladda upp programmet till styrelsen.
  • Om du har problem med att ladda upp korrigeringen kan du utforska XOD -forumet

Steg 8: Byggtid

Byggtid
Byggtid

Använd lämpliga delar för att göra robotens skal eller design och 3D-skriva ut dem själv. I värsta fall tappar du bara pumpen och sensorn i vattentanken och sticker jordsensorn där den hör. Tänk på att göra en gardin för ljussensorn, eftersom våra lysdioder kan blinda sensorn och det kommer att bedöma fel på natten.

Steg 9: Placering av vattennivåsensor

Placering av vattennivåsensor
Placering av vattennivåsensor

Om du använder en jordfuktighetssensor för att kontrollera vattennivån, se till att den gyllene beläggningen är över vattnet, och dess spetsar kommer att sakna vatten tidigare än pumpens ovansida.

Steg 10: Testning

När din robot är klar mäts och kodas trösklar i plåstret, och den senare laddas upp till kortet, det är dags att testa alla möjliga fall.

  • Gör vattennivåsensorn torr. Endast den röda lysdioden ska lysa. Även om jorden är torr och rummet är upplyst samtidigt bör pumpen inte starta.
  • Lägg nu till vattnet, men täck först över ljussensorn för att säkerställa att torr jord och närvaro av vatten inte får roboten att skölja på natten.
  • Slutligen, låt roboten vattna din anläggning. Det bör sluta när jorden är tillräckligt fuktig.
  • Ta ut jordsensorn för att upprepa bevattningen (bara för att vara säker).

Steg 11: Njut och förbättra

Njut och förbättra
Njut och förbättra

Nu när den grundläggande bevattningsanläggningen är klar, överväg några förbättringsalternativ:

  • Dra om jordfuktighetssensorerna igen för att undvika korrosion
  • Lägg till andra miljömätningar, t.ex. luftfuktighet
  • Gör ett schema i realtid
  • Sätt roboten online för att övervaka och styra den på distans

Rekommenderad: