Innehållsförteckning:
- Steg 1: Installera trädgårdsbevattning
- Steg 2: Fit Tap Timer
- Steg 3: Arduino Build
- Steg 4: Arduino -programmering
- Steg 5: Skåpbyggnad
- Steg 6: Testkontrollen före limning
- Steg 7: Lim / vattentäta kapslingar
- Steg 8: Installera
- Steg 9: ThingsBoard -integration - Övervakning och rapportering
Video: DIY - Automatiserad trädgårdsbevattning - (Arduino / IOT): 9 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Detta projekt visar dig hur man bygger en bevattningskontroller för en trädgård. Kan mäta markfuktavläsningar och aktivera bevattning från en trädgårdskran om jorden blir för torr. Regulatorn innehåller också en temperatur- och fuktsensor. Regulatorn aktiverar inte trädgårdskranen om temperaturen är för låg. Sensoravläsningar och statistik om vattenanvändning / körtider registreras på ThingsBoard IOT för visualisering och analys. Varningar och mejl utlöses om bevattningskontrollen slutar överföra data, jorden blir för torr eller för mättad.
Förkunskaper
- Arduino -kunskap inklusive åtminstone grundläggande kodning för Arduino och lödning.
- 1x tryckt trädgårdskran
Materialförteckning
- Trädbevattning poly rör, jetplan, droppare etc.
- Elektronisk tapptimer med två urtavlor (dvs. Aqua Systems Electronic Digital Tap Timer)
- Tryckreducerare 300kpa
- Arduino Uno
- Lora Arduino Shield
- Lora Gateway (behövs inte om du har en lokal Things Network -gateway inom räckhåll)
- DHT11 Temperaturfuktighetssensor
- 5v Relä
- Telefonkabel
- Buntband
- Fordonsdelad korrugerad slang
- Automotive Terminal Connector Strips
- 2x galvaniserade naglar
- 1x motstånd
- Kisel / Caulk
- PVC -cement
- PVC Primer
- PVC -rör 32 mm bredd x 60 mm längd
- PVC -rör 90 mm bredd x 30 cm längd
- 3x PVC Push End Caps 90mm
- 1x PVC -skruvändlock 90 mm
- 1x PVC -gänginsats 90 mm
- 1x PVC -ändkåpor 32 mm
- 1x 3,2V strömkälla (tryckningstimer) [batterier, nätadapter för multivolt]
- 1x 6-12V strömkälla (arduino) [batterier, USB, USB till nätadapter]
- trådtätningstejp
- elektrisk tejp
Steg 1: Installera trädgårdsbevattning
Layout poly -rör, passformstrålar, droppledningar och droppare. Bevattningskontrollen fungerar med alla bevattningsanpassningar. Kärnan mäter markens fuktavläsningar och aktiverar kranens timer om och när jorden är för torr. Regulatorn kan kalibreras för att ställa in lågpunkten för mättnad, hur länge tapptimern ska vara påslagen och hur ofta kontrollen ska kontrollera mättnaden.
Dessa inställningar kan ändras på arduino och lagras i EPROM -minne. Inställningarna kan också uppdateras med IOT -integrationen. Detta projekt kommer att köra regulatorn var fjärde timme och slå på kranen i 3 minuter om jorden är för torr. Det kan köra några gånger i rad om det är torrt/varmt eller en gång om dagen eller två annars.
Steg 2: Fit Tap Timer
Montera kranens timer och experimentera med de justerbara rattarna för att räkna ut en grov frekvens och körtid som fungerar bäst för din bevattningsinstallation. Vi kommer att ta bort timern och ändra den för att fungera med en Arduino.
Steg 3: Arduino Build
Använd kopplingsschemat som en vägledning för bygget. På bilderna har telefonkabelkopplingar använts och skruvplintar för kopplingspunkter. Viss lödning krävs.
Tryck på Timer Modification
Ta försiktigt isär kranens timer. Vi kommer att koppla ihop de två justerbara urtavlorna så att de kan styras av arduino istället för manuella rattar. Den vänstra frekvensratten kopplas hårt till återställningspositionen så att den högra ratten kan växlas mellan på/av -läget. Den högra ratten kommer att ha en tråd från den högra mittenkontakten och den yttre högra kontakten som visas. Som standard är timern i avstängt läge. Om de två trådarna kommer i kontakt slås timern på. Med de två ledningarna anslutna till ett 5V -relä kan en arduino sedan stänga/öppna kontakten mellan de två ledningarna. Med en ledning i den gemensamma reläterminalen och den andra i den normalt stängda terminalen kommer vi att se till att timern stängs av när arduino stängs av. Om reläpinnen ställs in på HIGH startas timern; Om du ställer in den på LOW stängs timern av.
Jordprob
För detta projekt löds de två spikarna till tråd ansluten till skruvplintar. En nagels terminal går rakt till marken. Den andra ansluter till en analog ingång i arduino och ett motstånd. Motståndet ansluter till arduinos 5v -signal. Visas i vriddiagrammet.
Temp/fuktighetssensor
DHT11 Temp/Humidity Sensor är ansluten till arduino 5V, jordad och en digital stift på arduino.
Lora sköld
Detta projekt använde också en Dragino Lora Shield (visas inte i kopplingsschemat).
PVC -bas
PVC -basen för arduino som användes i detta projekt var konstruerad så att temp/fuktighetssensorn kunde utsättas samtidigt som alla andra komponenter hölls säkrade inuti det vattentäta PVC -höljet. Ett litet hål borras/skärs för sensorn och kisel används för att hålla det på plats samtidigt som det hindrar fukt från att nå arduino. Visas i diagrammet.
Steg 4: Arduino -programmering
Anslut komponenterna via en brödbräda eller plintremsor för programmering och testning
EPROM -konfiguration
Först måste vi skriva konfigurationsvariabler till EPROM -minne. Kör följande kod på din arduino:
Kod tillgänglig på Github
Här är DRY_VALUE inställd på 960. 1024 betyder att jorden är helt torr, 0 betyder fullständig mättnad, 960 var en bra mättnadsnivå för motståndet, kabellängden och spikarna som användes. Detta kan variera beroende på din egen konfiguration.
VALVE_OPEN är inställd på 180000 milisekunder (3 minuter). När/om tapptimern är påslagen kommer den att stå öppen i 3 minuter.
RUN_INTERVAL är inställd på 14400000 milisekunder (4 timmar). Det betyder att regulatorn kommer att kontrollera jordfuktigheten var fjärde timme och slå på kranens timer i 3 minuter om mättnaden är låg (större än 960).
Koden ovan kan ändras och dessa värden ändras när som helst.
Programkod
Kod tillgänglig på Github
Beroenden:
- TimedAction
- Radiohuvud
Detta exempel använde Dragino Lora -skölden och specifikt Lora -exemplet samtidigt med skölden som anslöt direkt till Dragino Lora Gateway.
Detta kan anpassas för att använda Things Network genom att ta bort koden under avsnittet "BEGIN: lora vars" och ändra programmet för att inkludera följande Dragino -exempel eller anpassas för att fungera med andra radio/wifi -skärmar etc.
Den medföljande koden förutsätter att DHT11_PIN är digital stift 4, RELAY_PIN är digital stift 3 och jordfuktans analoga stift är analog ingång 0.
En felsökningsvariabel kan ställas in på true så att seriella felsökningsmeddelanden kan loggas vid baudrate 9600.
Steg 5: Skåpbyggnad
Skär PVC -röret så att det passar kranen och Arduino -basen. Borra hål för kranmätare och slangbeslag. Borra hål i röret tillräckligt breda för bilröret, skjut in 10 cm längder av röret i hålen och reta ut ledningar från arduino- och knackningstimern. Detta bör innehålla:
Från Arduino
- Strömförsörjningskablar och/eller en usb -kabel från arduino USB -port.
- Jordfuktkablar (VCC, GND, A0)
- Två ledningar från reläets NC & Common -skruvterminaler
Från kran timer
- Strömförsörjningskablar
- Två ledningar från höger ringkontakter
Steg 6: Testkontrollen före limning
Se till att allt fortfarande fungerar innan du förseglar allt.
Bilderna ovan visar en provinställning i en esky där jordfuktighetsproben placerades i en kruka och kranens timer var utrustad med vatten från en läskflaska.
En droppare fästes på kranens timer.
Detta var ett bra sätt att testa att installationen inte över eller under vatten anläggningen.
Detta exempel kan köras så länge som behövs för att kalibrera regulatorn.
Steg 7: Lim / vattentäta kapslingar
Använd PVC Primer och PVC Cement för att säkra ändlock och koppling.
Använd caulk/kisel för att fylla alla luckor runt den automatiska ledningen och tryck på kopplingsuret.
Här används ett skruvändlock på arduino -höljet för tillgänglighet.
Steg 8: Installera
Installera på en klar dag. Komponenterna och trådarna måste hålla sig torra innan de förseglas.
Placera styrenheten någonstans mitt mellan där trädgårdskranen är placerad och där jordproben kommer att placeras.
Montera kranens timer och se till att den är strömlös tills installationen är klar.
Montera jordproben.
Anslut remsanslutningarna till varje komponent och lägg sedan telefonkabeln från varje komponents skruvterminaler och se till att kabeln är täckt av en automatisk kabel. Kopplar ihop allt
Täta alla terminaler och alla andra exponerade delar med trådtätningstejp och sedan elektrisk tejp.
Täta alla lösa/exponerade områden på den delade ledningen med trådtätningstejp och sedan eltejp.
Anslut timern till en 3,2v strömkälla. Antingen ett batteri eller en 3,2V DC - nätadapter som går till ett eluttag.
Anslut Arduino till en 6-12V likströmskälla. Antingen ett batteri eller en USB / DC-AC-adapter som går till ett eluttag.
Starta och testa!
Steg 9: ThingsBoard -integration - Övervakning och rapportering
Detta exempel använde A Dragino Lora Shield anslutet till en Dragino Lora Gateway. Oavsett om du använder den här installationen, en annan Lora -installation eller någon annan IOT -anslutning kan data som samlas in av bevattningskontrollen vidarebefordras till en IOT -plattform som Thingsboard. Som standard sänder programmet följande datasträng där varje teckenbyte är hex -kodad:
TXXXHXXXSXXXXRX
Där T följs av temperaturen följs H av luftfuktigheten, S följs av mättnadsnivån och R följs av en enda siffra som avser vilken åtgärd den utförde vid det senaste körintervallet. Detta kan vara antingen 0-5 där varje siffra betyder:
0: Programmet initieras1: Temperaturgivarfel2: Temperaturen var för låg för att köras3: Jordfuktigheten var för torr så att kranens timer aktiverades4: Jordfuktigheten var fin så att kranens timer inte aktiverades5: Bevattningskontrollen har inaktiverats
Det finns flera sätt att installera en kopia av Thingsboard på din egen utrustning eller så kan du skapa ett gratis konto på vår ThingsBoard -installation här.
Konfigurera din enhet i Thingsboard
Följ dessa instruktioner för att lägga till en ny enhet i Thingsboard som kallar den "Bevattningskontroller".
Push -telemetradata från enheten
Följ dessa instruktioner för att ställa in en metod för att skicka telemtrydata från enheten till Thingboard via MQTT, HTTP eller CoAp.
På vår server driver vi följande JSON till https://thingsboard.meansofproduction.tech/api/v1/… var fjärde timme när enheten körs (med levande data):
Vi driver också följande attribut till https://thingsboard.meansofproduction.tech/api/v1/… regelbundet med data om när noden senast sågs:
Detta används för varningar som utlöses om enheten slutar överföra data.
Skapa en instrumentpanel
Skapa en instrumentpanel enligt beskrivningen här. Våra widgets inkluderar:
En enkel kortwidget skapad från fältet lastRunResult telemetri. En vertikal digital mätare för fältet för temperatur -telemetri En tidsserietabell skapad från fältet lastRunResult som visar data från de senaste dagarna. En horisontell stapel som visar mättnadstelemetri -fältet. Detta använder en databehandlingsfunktion:
return 1024-värde;
Och anger ett lägsta och högsta värde 0-100. På detta sätt kan mättnadsnivån uttryckas som en procentsats. En mätare för att visa fuktighetsvärdet. Ett tidsseriediagram som innehåller temp, fuktighet och körresultat, grupperat i 5 timmarsperioder för den senaste veckan, aggregerat för att visa maxvärden. Detta ger oss en bar för ett fyra timmars körhändelse. En datapostbehandlingsfunktion används för att uttrycka körresultatet som antingen 0 eller 120 beroende på om vatten kördes eller inte. Det ger en enkel visuell återkoppling för att se hur ofta vattnet rinner på en vecka. Ett statiskt HTML -kort som visar en bild av trädgården.
E -postvarningar
Vi använde regler för att konfigurera e -postvarningar för bevattningskontrollen. Alla använder meddelandefilter och en plugin -åtgärd för skicka e -post.
För att skicka ett e -postmeddelande om bevattningskontrollanten inte skickar data använde vi "Device Attributes Filter" med följande filter:
typeof cs.secondsSinceLastSeen! == 'undefined' && cs.secondsSinceLastSeen> 21600
För att skicka ett e -postmeddelande om jorden blir för torr, använd följande telemetrifilter
typ av mättnad! = "odefinierad" && mättnad> 1010
För att skicka ett e -postmeddelande om jorden blir för fuktig använder du följande telemetrifilter
typ av mättnad! = "odefinierad" && mättnad
Rekommenderad:
Ta fantastiska bilder med en iPhone: 9 steg (med bilder)
Ta fantastiska bilder med en iPhone: De flesta av oss har en smartphone med oss överallt nuförtiden, så det är viktigt att veta hur du använder din smartphone -kamera för att ta fantastiska bilder! Jag har bara haft en smartphone i ett par år, och jag har älskat att ha en bra kamera för att dokumentera saker jag
DIY makroobjektiv med AF (annorlunda än alla andra DIY -makrolinser): 4 steg (med bilder)
DIY-makrolinser med AF (annorlunda än alla andra DIY-makrolinser): Jag har sett många människor göra makrolinser med ett standard kit-objektiv (vanligtvis 18-55 mm). De flesta av dem är ett objektiv som bara fastnar på kameran bakåt eller det främre elementet tas bort. Det finns nackdelar med båda dessa alternativ. För montering av objektivet
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder)
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: Jag planerar att använda denna Rapsberry PI i ett gäng roliga projekt tillbaka i min blogg. Kolla gärna in det. Jag ville börja använda mitt Raspberry PI men jag hade inte ett tangentbord eller en mus på min nya plats. Det var ett tag sedan jag installerade en hallon
Hur man gör en 2 -spelare DIY Bartop Arcade med Custom Marquee Coin Slots, med en Pandoras låda: 17 steg (med bilder)
Hur man gör en 2 -spelare DIY Bartop Arcade med anpassade Marquee -myntplatser, med hjälp av en Pandoras låda: Detta är en steg -för -steg -handledning om hur man bygger en arkadmaskin med två spelare som har anpassade myntplatser inbyggda i tältet. Myntplatserna kommer att göras så att de bara accepterar mynt i storleken på kvartal och större. Denna arkad drivs
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen