Vandingstimer til gravitationssystemer. Lav automatisk vanding af planter ved hjælp af Arduino Meddelelse om behovet for vanding på fugtsensorer

Ekstern

I dag bruges forskellige vandingssystemer til at lette planteplejen, de gør det muligt at kontrollere mængden af ​​vand for hver plantetype, bruge drypvanding eller sprinklere. Der spares på vandet, og der skabes de mest gunstige udviklingsbetingelser for planter. Den eneste ulempe ved sådanne systemer er behovet for konstant overvågning; tænding/slukning sker manuelt. Dette er en ret ubehagelig opgave; varigheden af ​​vanding, afhængigt af plantetypen, klimatiske forhold og det specifikke system, kan nå to timer. For at løse dette problem bør du installere en vandingstimer til tyngdekraftsystemer.

Først skal du forklare begrebet "tyngdekraftsstrømningssystemer", ellers kan du i nogle kilder finde sjove forklaringer på principperne for deres drift og en fuldstændig misforståelse af hydrodynamik.

Automatiske havevandingssystemer - diagram

Der er eksperter, der hævder, at kunstvandingstimere til tyngdekraftsystemer er så gode, at de kan fungere ved vandtryk fra 0 til 6 atmosfærer. De vil arbejde ved nul tryk, men intet vil blive vandet. Tyngdekraftsflow er ikke et fysisk begreb, men et rent dagligdags koncept. Og dette betyder ikke fraværet af tryk, men fraværet af konstant fungerende vandpumper. I gravitationssystemer leverer pumpen kun vand til lagertanken, som er placeret i nogen afstand fra jorden. På grund af højdeforskellen mellem den øverste vandstand og det sted, hvor den kommer ud, skabes der tryk, som er det, der tvinger vandstrømmen til at bevæge sig.

Hvorfor bruges timere i de fleste tilfælde til tyngdekraftsystemer? Fordi de ikke kan arbejde ved højt tryk, er deres lukkeventiler for skrøbelige, og deres drivmekanisme er svag. For de fleste enheder må det maksimale vandtryk ikke overstige 0,5 atm; for et sådant tryk skal beholderen med vand være placeret i en afstand af fem meter fra jordens overflade. Langt de fleste kunstvandingssystemer har lagertanke placeret meget lavere.

Typer af timere

I øjeblikket kan tre typer timere købes:

  • mekanisk. De enkleste er semi-automatiske styresystemer. De tænder manuelt og slukker automatisk efter et bestemt tidsrum (op til 120 minutter). De kræver ikke strømkilder; lukkeventilen aktiveres af en fjeder. Fordele: lave omkostninger og høj pålidelighed. Ulemper - du kan ikke undvære tilstedeværelsen af ​​mennesker under tænding;

  • elektronisk med mekanisk styring. Vandingstilstande er fuldautomatiske, vandingsplanen kan justeres i en periode på syv dage, og vandingsvarigheden er op til 120 minutter. Fordele: relativt lave omkostninger, nem oprettelse og administration af programmer. Ulemper - manglende evne til at tilslutte ekstra udstyr;

  • elektronisk med programstyring. De mest moderne enheder har mulighed for at installere op til 16 specialfunktioner. Ulemper - høje omkostninger. Derudover kan det være svært for utrænede brugere at installere programmer.

Mekaniske timere bruges sjældent; oftest styres vandingssystemer af en af ​​​​de typer elektroniske enheder. Vandforsyningen reguleres ved hjælp af en magnetventil (magnetventil) eller en kugleventil.

Timer til kunstvanding på 2 linjer, mekanisk "Expert Garden"

  1. Magnetventil. På et bestemt tidspunkt tilføres strøm til den elektromagnetiske spole, under påvirkning af det elektromagnetiske felt trækkes kernen ind i solenoiden og blokerer vandstrømmen. Hvis strømmen stopper, skubbes kernen op af en fjeder, og rørets lumen åbner sig. I timere kan driftsprincippet være det modsatte - uden spænding lukker ventilen med en fjeder, og når der opstår et stærkt magnetfelt, åbner den. På grund af dette funktionsprincip spares batteristrøm. Man kan skelne betjeningen af ​​magnetventilen ved et karakteristisk klik under åbning/lukning.
  2. Kugleventil.Åbning/lukning udføres af en gearkasse drevet af en elmotor. For at spare batteristrøm er den også konstant i lukket position; den åbner kun, når vandingssystemet er tændt. Når kugleventiltimeren udløses, høres en kort lyd fra elmotoren og gearkassen.

Vigtig. Så snart der er risiko for frost, skal timeren slukkes. Hvorfor? Under opstart opstår der store strømme i statorviklingerne, så snart rotoren begynder at rotere, falder strømstyrken til driftsbetingelserne. Under frost kan kugleventilen fryse lidt, elmotorens kraft er ikke nok til at rive den af. Dette betyder, at startstrømme vil strømme gennem viklingerne i lang tid, hvilket uundgåeligt vil føre til deres overophedning og kortslutning. Og selve gearkassen er ikke designet til at modstå betydelige kræfter; drivgearene kan svigte. Sådanne fejlfunktioner kræver komplekse reparationer eller fuldstændig udskiftning af enheden.

Elektroniske timere med mekanisk styring (vippekontakt type)

Meget let at betjene, pålidelige og holdbare enheder. For at vælge driftstilstande for vandingssystemet skal du udføre følgende trin:

  • Skru det øverste gennemsigtige plastikdæksel af. Du skal arbejde forsigtigt, mister ikke tætningspakningen, den kan falde ud;
  • Brug den venstre vippekontakt til at indstille frekvensen for tænding af systemet, den maksimale periode er 72 timer;
  • Brug den højre vippekontakt til at indstille en specifik vandingsvarighed, maksimalt 120 minutter.

Vigtig. Den indledende nedtællingstid for den elektroniske enhed begynder fra det tidspunkt, timeren tændes. Det betyder, at hvis du for eksempel ønsker, at vandingen skal tændes med jævne mellemrum klokken fem om morgenen, så skal den første timerindstilling ske samtidig. I fremtiden vil det tidspunkt, hvor kunstvandingssystemet er tændt, ikke ændre sig.

Producenter, komplet med en timer, sælger et komplet sæt fittings til at forbinde plastrør eller fleksible slanger med forskellige diametre. Timeren drives af to AAA 1,5 V batterier.

Vandingstimer - foto

Elektroniske timere med programstyring

Mere moderne enheder har betydeligt udvidede funktioner. Leveringssættet inkluderer adaptere til tilslutning af rørledninger og fleksible slanger med forskellige diametre. Opsætning af softwarekontrol gøres som følger:

  • fjern plastikdækslet. Det er snoet ret stramt på fabrikken, du bliver nødt til at yde en betydelig indsats;
  • tryk på Time power-knappen, programmets installationsparametre vises på det elektroniske display. Indstil det aktuelle klokkeslæt og ugedag, handlingen skal bekræftes ved at trykke på knappen Indstil;
  • gå til hver dag i ugen efter tur, vælg tid og varighed for at tænde for den elektroniske timer. Disse parametre vil blive gemt i hele brugsperioden;
  • Hvis det ønskes, kan enheden konfigureres med op til 16 forskellige programmer. For at gøre dette skal du trykke på knappen Prog og derefter konfigurere det nødvendige antal programmer. Alle indtastede data skal bekræftes ved at trykke på knappen Set.

Der er en ret rummelig kondensator installeret inde i enheden. Den er designet til at signalere, når batterierne er kritisk lave, og til at skifte timeren til autonom strømtilstand. Når batterispændingen er lav, vises et advarselssignal på displayet. Siden dets udseende kan batterierne stadig fungere i 2-3 dage, afhængigt af hyppigheden og varigheden af ​​at tænde vandingssystemet.

I fuldstændig autonom tilstand kan kondensatoren sikre driften af ​​timeren i 3-4 dage. Hvis batterierne ikke udskiftes inden for dette tidsrum, slukkes timeren. Herefter vil alle tidligere installerede vandingstilstande blive slettet fra hukommelsen, og du bliver nødt til at gentage installationstrinnene helt fra begyndelsen.

I standby-tilstand bruger timeren ikke mere end 1,2 mA; under drift stiger strømforbruget til 350 mA. Dette er meget små værdier, der gør det muligt for enheden at fungere på batterier alene i mindst en sæson. Fabrikanter undgik specifikt denne gang; under den årlige rutinemæssige inspektion af vandingssystemet før start anbefales det at installere nye batterier.

Der er timermodeller designet til at fungere på store og komplekse kunstvandingssystemer. De har flere ventiler, som giver dig mulighed for at styre vandingstilstandene i flere separate zoner; hver af dem har sine egne parametre. Enheder med flere ventiler kan tilsluttes en spænding på 220 V eller have op til otte AAA 1,5 V-batterier.

Hvilke data skal tages i betragtning ved konfiguration af sensorer

Betingelserne for dyrkning af planter afhænger i høj grad af den korrekte indstilling af timerprogrammet. Hvad skal du overveje?

Opdeling af kunstvandingsområdet i separate zoner under hensyntagen til typerne af afgrøder. Hver af dem har sine egne krav, i nogle tilfælde bliver du nødt til at købe multi-ventil timere.

Hydraulisk beregning for maksimalt vandforbrug. Driften af ​​timere skal tage hensyn til drevenes samlede kapacitet. Hvis der ikke er nogen automatisk pumpning, skal du uafhængigt overvåge tilgængeligheden af ​​vand og om nødvendigt fylde beholderne.

Analyse af føringen af ​​vandingssystemer. Store højdeforskelle på individuelle vandingslinjer kan have en væsentlig indflydelse på deres ydeevne. Ved opsætning skal man ikke kun huske på vandingstiden, men også den mængde vand, der tilføres planterne i denne tid.

Efter at have afsluttet installationen af ​​timeren, anbefales det at kontrollere systemets funktionalitet. For at gøre dette indstilles minimumskoblingsperioder, og den korrekte funktion af ventilaktuatorerne kontrolleres. Hvis timeren fungerer normalt, kan du begynde specifik programmering og sætte systemet i automatisk driftstilstand.

Processen med at installere et timerprogram vil være meget enklere, hvis du køber ekstra sensorer med det.

Yderligere timerfunktioner

Elektroniske vandingstimere ved hjælp af sensorer kan udføre flere yderligere funktioner, hvilket yderligere forenkler processen med at dyrke afgrøder i drivhuse eller udendørs.

  1. Regnsensor. Sådant udstyr bruges under installation af kunstvanding i åbne områder. Regnsensoren sender et signal til den elektroniske enhed om tilstedeværelsen af ​​naturlig nedbør. Timeren reagerer på disse signaler og springer én vanding over, der falder sammen med regnperioden. Føleren er justerbar i nedbørsintervallet fra 3 mm til 25 mm. Et så bredt udvalg giver dig mulighed for mere præcist at regulere vandingshastighederne under hensyntagen til vejrforholdene. Tilstedeværelsen af ​​en accelereret genkaldsfunktion giver dig mulighed for at stoppe vanding på kortest mulig tid efter regnen starter; enhederne kræver ikke yderligere vedligeholdelse. Afhængigt af justeringerne af ventilationsringen indstilles en forsinkelse i at returnere dachaen til standbytilstand. Tiden til at vende tilbage til udgangspositionen er direkte afhængig af fugtigheden og temperaturen i den omgivende luft. Dette giver mulighed for betydelige vandbesparelser.
  2. Membranpumpe. Den kan monteres sammen med en timer eller i et separat hus; den overvåger vandstanden i lagertanke. Når mængden af ​​vand falder til under et kritisk niveau, tænder pumpen automatisk for at genopfylde forsyningerne. Efter at have fyldt tankene, slukker pumpen.
  3. Radiokanal jordfugtighedssensor. Den mest moderne enhed gør pleje af planter meget lettere. Installeret flere steder på bedene blokerer den for timerkommandoen til vanding i tilfælde af høj jordfugtighed. De mest moderne enheder øger afgrødeudbyttet med mindst 10%.
  4. Vandrensningsfilter. Udfører vandrensning af høj kvalitet og øger timerens driftstid betydeligt.

Yderligere overvågnings- og kontrolenheder kan købes komplet med en vandingstimer eller separat.

Video - Vandingstimere til tyngdekraftsystemer

Om smarte huse du har sikkert hørt. Mange ideer i denne retning er meget futuristiske, men det bør ikke stoppe os.

Nogle virkede fantastiske for bare 20 - 25 år siden, men bliver nu brugt overalt. I den nærmeste fremtid vil alle huse blive meget smartere, eller i det mindste begynde at blive smartere. Denne retning er ikke kun lovende, men også interessant, så du bør ikke stå til side.

Overhovedet, smart hus er et meget komplekst system af sensorer, mekaniske og elektroniske komponenter, styret efter et programmeret program. Dette system overvåger forbruget (og lækage) af vand, gas og elektricitet. Styrer belysningen. Inkluderer brandbeskyttelseselementer. Giver fjernstyring af forskellige enheder via telefon eller SMS. Indeholder elementer af beskyttelse mod tyveri og uautoriseret adgang. Indeholder uafbrydelige strømforsyningsenheder, der er afgørende for hele systemet.

Hovedopgaven for sådanne systemer er at gøre livet lettere for mennesker ved at flytte nogle af deres bekymringer til automatisering. Vi vil arbejde efter dette princip og overlade nogle af lektierne til mikrocontrolleren. Lad os starte, som altid, med en enkel.

Der er mange vandingsanordninger, fra primitive, som gasbind, med den ene ende begravet i en plantepotte og den anden nedsænket i en beholder med vand, til højteknologiske elektronisk kontrollerede vandingssystemer. Førstnævnte har lav kvalitet og effektivitet af kunstvanding, sidstnævnte har en høj pris, og de arbejder efter deres egen algoritme, som ikke kan ændres.

Vi vil udvikle en enhed, der er universel, med mulighed for funktionel udvidelse, men samtidig billig og effektiv.

Arbejdsalgoritme automatisk plantevandingsmaskine simpelt: jorden i potten er tørret ud - vand den, vand den - vent til den tørrer. Alt virker simpelt ved første øjekast. Vi laver en liste over nødvendige komponenter: et mikrocontrollerkort, en pumpe, en strømafbryder til styring af pumpemotoren, en jordfugtighedssensor, en beholder med vand (faktisk ville det være rart at tilslutte til vandforsyningen, men vi må hellere ikke :-) For at systemet skal være helt autonomt, er det nødvendigt at udstyre det med en enhed, der giver besked om vandforbrug, for eksempel grøn LED - der er vand nok, rød - der er ikke nok vand tilbage, du skal fylde op. Det betyder, at du også skal bruge en vandstandssensor.

Pumpe til automatisk plantevanding

Vi laver alt fra ovenstående, undtagen pumpen, selv. Enhver lav-effekt pumpe duer. Du kan kigge i gamle og ødelagte inkjet-printere eller købe en forrudesprinklerpumpe hos autodele; Jeg fandt den enkleste til 90 rubler.

Vigtigt: Før du tilslutter pumpen til en færdig enhed, skal du kontrollere dens funktion. En bilpumpe kan producere et flere meter langt springvand; Derhjemme kan sådan "vanding" måske ikke forstås og forbydes direkte. Vælg den optimale spænding eksperimentelt. Autopumpen er designet til strøm fra det indbyggede 12 V netværk, på min kopi vises tilstrækkeligt tryk allerede ved en spænding på 8...9 V. Pumpen fra printeren vil ikke give et tryk på flere meter, men der er et andet problem med det: det pumpede blæk ind i printeren, men det er meget svært at vaske, og sådan en pumpe skal vaskes omhyggeligt.

Om sensorer

Det er bedst at lave en jordfugtighedssensor grafit; metal er modtageligt for elektrolyse og korrosion, og derfor forringes dets egenskaber over tid. Selvom i vores eksperimentelle opsætning, fungerer sensorer lavet af søm og kobbertråd normalt.

En neglesensor er det enkleste design. For at lave det skal du bruge et stykke plastik eller gummi, to søm, ledninger og cambric (isoleringstape).

Væskeniveausensoren kan laves på samme måde som jordfugtsensoren, eller du kan komme med et design af flydertypen. Den anden mulighed er at foretrække. I figur 3 er der en variant af en sådan sensor, hvor 1 er en beholder med vand til vanding og et minimumsmærke, 4 er et rør lavet af et hvilket som helst materiale og stang 3, som bevæger sig frit i røret. Tuben og refill kan tages fra en gammel kuglepen. En flyder 2 (et stykke skumplast) er fastgjort til stangen nedenfor. I den øverste overvandsdel af strukturen på røret placerer vi kontakter 5 på en plastplade, disse vil være sensorkontakterne. Vi fastgør strømførende plade 6 til stangen på toppen.. Stangens slaglængde i røret er 1...2 cm Vi lodder ledninger til kontakter 5 for tilslutning til Arduino. Rør 4 er fast monteret inde i beholderen.

Funktionsprincippet for sensoren er som følger. Når der er meget vand, skubber flyder 2 stang 3 helt op, mens plade 6 ikke rører kontakter 5. Når vandstanden falder under MIN-mærket, falder flyderen sammen med vandstanden og sænker stangen med plade b, som igen rører 5 kontakter og lukker dem sammen. Controlleren kan kun læse kontakternes tilstand 5. Hvis du er for doven til at pille, kan du købe lignende i autoreservebutikker, de sælges der som kølevæskeniveausensorer, den enkleste pris er 100 - 150 rubler.

Vi overlader kontrollen til Arduino

For hende er dette en triviel opgave. Vi forbinder sensorerne med en kontakt til Arduino-stiften og trækker dem til jord gennem en højmodstandsmodstand og med den anden kontakt - til +5 V af Arduino-strømforsyningen. For at vælge metoden til tilslutning af pumpen skal vi kende den strøm, den bruger i driftstilstand, og nødvendigvis ved pumpning af vand; Ved tomgang kan strømmen være mindre. Hvis strømmen er mindre end 3,5 A, kan du bruge uln2003-transistorsamlingen til at forbinde pumpen.

Hver uln2003-udgang kan drive en belastning på 0,5 A. Jeg tilsluttede alle syv ind- og udgange parallelt for at øge belastningsstrømmen: 7×0,5 = 3,5 A. Hvis pumpestrømmen er mere end 3,5 A, kan du installere en felteffekt transistor, for eksempel irf630 (men yderligere elementer er nødvendige for det). Denne transistor kan tåle strøm op til 9 A. Kræver din pumpe mere strøm, så skift pumpen, ellers ender vi med en brandslange frem for en sprinkler :-)

For mad automatisk plantevandingsmaskine Du kan bruge batterier fra radiostyret legetøj eller en AC-strømforsyning. Den valgte strømforsyning skal være normeret til den strøm, der kræves af pumperne. Jeg ville gå med batteristrøm; pumperne tændes sjældent og i kort tid, så der er ikke behov for en strømforsyning, der konstant er tilsluttet netværket. Derudover kan du med tiden tilføje batteriopladningsovervågning og opladningsbehovssignalering til programmet.

Blokdiagrammet for kontrolalgoritmen er vist i figuren nedenfor. Efter at enheden er startet op, polles sensorerne i en kontinuerlig driftscyklus, og baseret på hver sensors tilstand udføres handlinger. Vandstandssensoren styrer LED'erne. En jordfugtighedssensor styrer pumpen.

Programmet er enkelt, men kræver justeringer i hvert enkelt tilfælde. Vær særlig opmærksom på pausen mellem at tænde og slukke for pumpen: Jo mindre urtepotten er og jo større pumpeydelsen er, jo kortere skal pausen være. Pausen efter at have slukket pumpen afhænger også af grydens størrelse. Efter vanding skal jorden være mættet, ellers, hvis fugten ikke når sensoren, tænder systemet for vanding igen. Den bedste mulighed er at placere vandforsyningsrøret ved siden af ​​sensoren, så jorden i området af sensoren straks er mættet. Jeg vil også bemærke her: fugtighedsniveauet for at tænde for kunstvanding kan justeres af sensoren selv og nedsænke den til forskellige dybder.

Program kode

// konstanter
const int dw = 12; // vandstandssensor 12 pin
const int dg = 11; //jordfugtføler 11 pin
const int pumps = 2; // styr pumpen på 2 ben
const int ledG = 3; // grøn LED 3 pin
const int ledR = 4; // rød LED 4 pin
// variabler
int dwS = 0; // vandstandssensor status
int dgS = 0; //
//installationer
void opsætning() (
// erklærer LED- og pumpebenene som output:
pinMode(nasos, OUTPUT);
pinMode(ledG, OUTPUT);
pinMode(ledR, OUTPUT);
// erklærer sensor- og pumpeben som input:
pinMode(dw, INPUT);
pinMode(dg, INPUT);
}
// arbejdscyklus
ugyldig 1ор())(
// aflæs væskeniveausensorens tilstande
dwS = digitalRead(dw);
// hvis der er meget vand - tænd for grøn, ellers rød
hvis (dwS == LAV) (
digitalWrite(ledG, HIGH);
digitalWrite(ledR, LOW);
}
andet(
digitalWrite(ledG, LOW);
digitalWrite(ledR, HIGH);
}
// aflæs tilstandene for jordfugtighedssensoren
dgS = digitalRead(dg);
// hvis jorden er tør, tænd for vanding
hvis (dgS == LAV) (
digitalWrite(nasos, HIGH);
forsinkelse (2000);
digitalWrite(nasos, LOW);
forsinkelse(30000);
}
andet(
digitalWrite(nasos, LOW);
}
}

Med hensyn til koden vil jeg sige følgende. For at forenkle det installerede jeg forsinkelseskommandoer, som jeg selv klagede over. På grund af forsinkelsen fryser vores enhed på et tidspunkt i 30 sekunder (og måske bliver vi nødt til at installere mere). Men i denne enhed er dette ikke kritisk. Hvis apparatet ender med at vande 10 planter, og det er en tilfældighed, at de alle skal vandes på samme tid, tror jeg, at de 300 sekunder, den sidste plante skal vente, ikke er så vigtige.

Men for strømforsyningen vil en sådan løsning spille en positiv rolle: den vil ikke tillade enheden at tænde 10 pumper på samme tid. Den første forsinkelse (2000) tænder pumpen i 2 sekunder; hvis du har en stor plante i en stor potte, skal tiden øges; hvis pumpen er meget produktiv, så skal den tværtimod reduceres. Den anden forsinkelse (30000) giver jorden 30 sekunder til at suge i vand, jeg skrev om dette tidligere. Måske skal denne tid også justeres.

Strukturelt består enheden af ​​to dele - elektronisk og mekanisk. Det er tilrådeligt at placere den elektroniske del og batterierne i et hus, så utilsigtet stænk ikke beskadiger elektronikken. Du kan ikke bruge hele Arduino, men en mikrocontroller, kvarts med kondensatorer og en 5 V strømstabilisator.I samme tilfælde placerer vi uln2003-chippen, modstande, display-LED'er på frontpanelet og installerer et stik til tilslutning af sensorer og en pumpe . Hvis pumpen er kraftig og uln bliver varm, så borer vi huller i huset til ventilation. Der er ingen grund til at installere en ekstra indikator for at tænde enheden; en af ​​vandstands-LED'erne er altid tændt, og den vil udføre denne funktion.

Huset til den elektroniske del kan være lavet af ethvert materiale eller valgt færdiglavet. Til beholderen kan du bruge en plastikflaske eller glaskrukke af passende størrelse, eller du kan lime den sammen af ​​plastik. Vi fastgør væskeniveausensoren og installerer pumpen. Hvis pumpen skal nedsænkes til bunden (og der er sådanne tilfælde), så isolerer vi meget omhyggeligt alle dens strømførende ledninger. Vi trækker et rør med passende diameter fra pumpen til potten med planten. Du kan købe en i en autoreservebutik sammen med en pumpe eller vælge en passende gummi- eller silikone. Vi kommer med et beslag til røret på kanten af ​​potten, så der ikke sprøjtes, når der tilføres vand. Vi installerer fugtsensoren i umiddelbar nærhed af røret. For at forhindre, at en glas- eller plastikbeholder, der står ved siden af ​​en plante, skræmmer andre med sit udseende, kan du bruge akrylmaling til at give den din egen designerstil.

Næste test. Glem ikke: plantens velbefindende afhænger af enhedens drift. Før du udfører praktiske test, skal du udføre bænktest ved at teste enheden med en potte uden en plante i flere dage. Jorden i det bør ikke være oversvømmet eller tør. Om nødvendigt uddybe fugtsensoren yderligere eller omvendt hæv den højere. Juster varigheden af ​​pumpens drift i programmet. Det bør ikke give en dråbe hvert femte minut, men det bør heller ikke oversvømme jorden en gang om ugen. Som eksperimentet skrider frem, overvåg temperaturen på de elektroniske komponenter.

Undgå overophedning!

Når alt er fejlrettet, skal du gå videre til praktiske test og tage den mest uhøjtidelige plante. Overvåg omhyggeligt plantens tilstand; hvis noget er galt, stop eksperimentet, indtil årsagerne er afklaret. Hvis alt er i orden, skal du tilslutte en anden sensor og pumpe til Arduino, tilføje koden og automatisere vandingen af ​​en anden plante. Uden yderligere udvidelse af havnene kan Arduino håndtere et dusin planter.

Ansøgning. Kode uden kommentarer:
const int dw = 12;
const int dg = 11;
const int pumps = 2;
const int ledG = 3;
const int ledR = 4;
int dwS = 0;
int dgS = 0;
void setup() ( pinMode(nasos, OUTPUT);
pinMode(ledG, OUTPUT);
pinMode(ledR, OUTPUT);
pinMode(dw, INPUT);
pinMode(dg, INPUT); )
void loop())( dwS = digitalRead(dw);
if (dwS == LOW) (digitalWrite(ledG, HIGH);
digitalWrite(ledR, LOW); )
andet (digitalWrite(ledG, LOW);
digitalWrite(ledR, HIGH); )
dgS = digitalRead(dg);
if (dgS == LOW) (digitalWrite(nasos, HIGH);
forsinkelse (2000);
digitalWrite(nasos, LOW);
forsinkelse(30000); )
andet (digitalWrite(nasos, LOW); ))

Forrige artikel: Næste artikel:

Den følgende figur viser et blokdiagram over en omfattende løsning til fjernstyring og overvågning af et kunstvandingssystem.

Styresystemets controller indsamler data fra systemsensorerne og sender dem til serveren ved hjælp af et GPRS-modem. Som svar modtager den kommandoer fra serveren til at styre systemets aktuatorer (vandingsventiler, pumpe og spærreventil til at tilføje vand til tanken).

Brugeren har adgang til serveren via en webapplikation fra en pc eller mobilenhed.

System styreskab

Følgende figur viser konstruktions- og funktionsdiagrammet for styreskabet.

Systemets centrum er Arduino Mega-controlleren.

Controlleren styrer SIM900-modemet ved hjælp af AT-kommandoer sendt via COM-porten.

På denne måde udveksles data med serveren.

Der er tilfælde, hvor modemmet kan komme i en "vanskelig situation". Nogle gange kræves en hård genstart for at gendanne den til normal drift. For at gøre dette er der tilføjet et modem-nulstillingsmodul til systemet, som er et elektromagnetisk relæ, hvorigennem modemets strøm skiftes.

Signaler fra vandstandssensorer i tanken modtages af et diskret signalindgangsmodul. Sensorerne har en udgang af tør kontakttype. Du kan læse mere om dem. For at indlæse diskrete signaler fra sensorerne i controlleren, imprægnerer vi dem med 24 V spænding fra strømforsyningen. Indgangsmodulet består af optisk isolerede diskrete inputs, der konverterer 24 V indgangsspændingsniveauet til et 5 V niveau, som er forståeligt for controlleren.

For at måle temperaturen udenfor er der tilsluttet en DS18B20 føler til regulatoren. Controlleren udveksler med den via OneWire-grænsefladen.

I denne artikel vil vi ikke give det elektriske diagram af styreskabet, Arduino-programkoden og tale i detaljer om driften af ​​webserveren, fordi Dette er et emne for en anden diskussion. For dem, der ønsker at dykke dybere ned i dette emne, har vi forberedt.

WEB-applikation til styring af kunstvanding via internettet

Gennem webapplikationen:

  • overvåger systemets aktuelle tilstand: vandstand i tanken, udetemperatur, tilstand af vandingsledninger (vanding i gang/vanding stoppet).
  • styrer vanding (tænder og slukker for de nødvendige ledninger) manuelt
  • opretter en tidsplan for vanding automatisk
  • modtager besked om vigtige hændelser i systemet (tab af forbindelse, lav vandstand i tanken osv.)
  • analyserer grafen over temperaturændringer på gaden under systemdrift
  • viser hændelser, der forekommer ved objektet, ved hjælp af hændelsesloggen

Hovedskærm til styring og overvågning af systemstatus

Hovedskærmen i webapplikationen viser de aktuelle tilstande for alle systemknudepunkter: aflæsninger fra vandstandssensorerne i tanken og temperatursensoren (tabel til venstre), samt status for magnetventilerne for alle vandingskredsløb ( tabel til højre).

På den samme skærm kan brugeren manuelt tænde eller slukke for enhver af vandingsledningerne.

Nederst på skærmen viser de seneste hændelser, der fandt sted på stationen.

Automatisk vandingsplan kontrolskærm

På denne skærm kan brugeren oprette en tidsplan for, at systemet fungerer i automatisk tilstand, så serveren tænder og slukker for vanding på stationen uden brugerindblanding.

Hændelsesloggen

Vigtige hændelser på stationen registreres i loggen: tænd/sluk for vandingsledningerne, tab af kommunikation med stationen, genoprettelse af kommunikation med stationen, udetemperaturen er under det specificerede niveau, tanken er tom, tanken er næsten tom.

Brugeralarm

I stationsindstillingerne kan brugeren udpege nogle hændelser som "advarsel" eller "nødsituation". Når disse hændelser opstår, vil serveren underrette brugeren via e-mail og/eller SMS. Det kan være hændelser, hvor kommunikationen med stationen går tabt, lav vandstand i tanken eller lave udetemperaturer.

Den nedre temperaturgrænse og timeout-tid, hvorefter systemet registrerer en kommunikationsfejl, indstilles i indstillingerne.

Udendørs temperaturdiagram

Denne skærm viser en graf over temperaturændringer over en bestemt periode (10 minutter, 30 minutter, time, 12 timer, dag, uge, måned).

Videreudvikling af systemet

I fremtiden er det planlagt at øge informationsindholdet i systemet ved at tilføje vandmålere til det. Måleraflæsninger vil være synlige for brugeren gennem webapplikationen. Ud fra disse data vil det være muligt at bygge grafer over vandforbruget over en længere periode.

Derudover er det planlagt at udstyre vandingslinjer med jordfugtighedssensorer og styre vanding baseret på deres aflæsninger. Dette vil skabe endnu mere behagelige betingelser for plantevækst og øge vandbesparelser.

Konklusion

For dem, der ønsker at studere mere detaljeret teknologien til at udveksle data med en fjernserver ved hjælp af Arduino og SIM900-modemet, har vi forberedt en række lektioner om dette emne. Her .

Det er alt for nu! Vi håber det var interessant! Vi ses igen kl DOV SMART! For ikke at gå glip af en ny artikel, tilmeld dig vores


Ard Automatisk vandingssystem automatiserer arbejdet med at pleje indendørs blomster. I temabutikker sælger de dette design til en vanvittig pris. Det er dog umagen værd, da maskinen uafhængigt regulerer "portionerne" af fugt til planten.

Denne artikel inviterer læseren til at skabe deres eget automatiske vandingssystem ved hjælp af Arduino. Mikrocontrolleren fungerer i dette tilfælde som et kontrolsystem for perifere enheder.

Nødvendige værktøjer og periferiudstyr til implementering af "Autowatering"-projektet baseret på Arduino-mikrocontrolleren

Irrigator er en enhed, der kontrollerer jordens fugtighed. Enheden overfører data til en fugtighedssensor, som vil indikere til det designet automatiske vandingssystem for at begynde at arbejde. Programmeringssproget C++ bruges til at kompilere programmet.

Bord med nødvendige materialer:

Komponent Beskrivelse
Arduino Uno mikrocontroller Platformen forbinder perifere enheder og består af 2 dele: software og hardware. Koden til at skabe husholdningsapparater er programmeret ved hjælp af et gratis miljø - Arduino IDE.

For at oprette og implementere et program på en mikrocontroller skal du købe et USB-kabel. For autonom drift bør du købe en 10 V strømforsyning.

Der er 12 ben på platformen, hvis rolle er digital input og output. Brugeren vælger individuelt funktionerne for hver pin.

USB-kabel Obligatorisk i designet af "auto-vanding-systemet på Arduino" til overførsel af koden.
Sensortilslutningskort – Troyka Shield Kortet forbinder sensoriske perifere enheder ved hjælp af almindelige kabler. Langs kanterne er der 3 ben kontakter - S + V + G.
Skub klemrækken Fungerer som klemme til bundtede ledninger. Strukturen fastgøres ved hjælp af en knap på en fjeder.
Strømforsyning udstyret med USB-indgang

Jordfugtighedsanalysator

Ideel til at forbinde platforme. Designet inkluderer en lommelygte, der indikerer starten på arbejdet.

Apparatet giver signaler, hvis jorden er for meget eller utilstrækkeligt fugtet. Tilslutning til tavlen sker ved hjælp af 3 ledninger.

● MAX dybde til nedsænkning i jorden – 4 cm;

● MAX strømforbrug – 50 mA;

● Strømforsyningsspænding – op til 4 V.

Pumpe med rør til nedsænkning i vand Styring udføres ved hjælp af en switch. Kabellængden når 2 meter.
Tænd/sluk-tast Designet til at lukke og åbne et elektrisk kredsløb. Hvis du bruger enheden, når du konstruerer et Arduino autovandingssystem, kræves ingen yderligere lodning. Tilslutning til hovedpanelet udføres også med 3 ledninger.
Forbindelsesledning – "far-far" Flere ledninger forbinder perifere enheder.
Forbindelsesledning - "mor-far" Ledninger forbinder også perifere enheder.
Indendørs blomst Systemet er velegnet til forskellige typer indendørs planter.

Forbindelsesdiagram og algoritme for arbejdet i "Autowatering"-projektet baseret på Arduino mikrocontroller

Nedenfor er algoritmen og forbindelsesdiagrammet for projektet på Arduino-platformen. Automatisk vanding er konstrueret som følger:

  1. Vi placerer sensorkortet på mikrocontrolleren.
  2. Vi forbinder fugtighedsanalysatoren ved hjælp af kortet beskrevet ovenfor til en lignende pin - A0.
  3. Vi forbinder sensoren til mikrocontrolleren:
    1. CS-stiften er forbundet til ben nr. 9 på kortet.
    2. Display-SPI-stifterne er forbundet til den tilsvarende header på samme kort.
  4. Vi sætter tænd/sluk-nøglen i ben nr. 4.
  5. Vi forbinder kontakten til strømafbryderen i stikkene, der er angivet med bogstaverne p+, p-.
  6. Nu forbinder vi vandpumpen med et rør ved hjælp af en klemrække til kontakterne med bogstaverne l+ og l-. Efterhånden vil der blive bygget et diagram foran den designende person.
  7. Vi sætter et berøringspanel, der analyserer luftfugtighed, ind i en urtepotte.
  8. Vi indsætter enden af ​​røret med vand i jorden. Hvis planten sammen med potten ikke vejer mere end 2 kg, fastgør vi slangen separat. Ellers kan en dråbe vand vælte blomsten.
  9. Placer vandpumpen i en flaske fyldt med vand.
  10. Vi forbinder strukturen til elektrisk strøm.

Nedenfor tilbyder vi dig to alternative ordninger til vores enhed:

Sensoren analyserer fugttilstanden ved at bestemme jordens surhedsgrad. Før du indsætter vandingsmaskinen i systemet, er det nødvendigt at teste og kalibrere udstyret:

  1. Vi registrerer de oplysninger, der vises på displayet. I dette tilfælde sidder sensoren fast i en tør gryde. Dette er angivet som minimum luftfugtighed.
  2. Vi vander jorden med planten. Vi venter på, at vandet mætter jorden fuldstændigt. Berøringsskærmen vil derefter vise et niveau. Det er nødvendigt at registrere de modtagne oplysninger. Det betyder maksimal luftfugtighed.
  3. I en notesblok fikserer vi konstanterne HUM_MIN og HUM_MAX med den værdi, der blev opnået som et resultat af kalibrering. Vi skriver værdierne i programmet, som vi derefter overfører til mikrocontrolleren.

Ovenstående beskriver designet af automatisk vanding til en blomst. Men for elskere af indendørs planter er huset indrettet med krukker med blomster. På den ene side virker dette spørgsmål kompliceret: du skal tilslutte flere pumper og jordfugtighedsanalysatorer. Men der er en billigere og enklere løsning til at designe automatisk vanding.

Der laves 25 cm huller i slangen fra pumpen ved hjælp af en syl. Stykker af kuglepengenopfyldninger er stukket ind i de resulterende huller. Resultatet er:

  • potter med planter er linet op i vindueskarmen;
  • røret er installeret på urtepotten, så vandet strømmer fra hvert hul ind i en separat potte;
  • voila: opfindelsen vander alle planterne på samme tid.

Brugeren vælger selvstændigt tidspunktet for vanding, men kun for en blomst. Ofte er blomsterne ens i vægt og størrelse. Derfor tørrer jorden i potterne i samme tid. Til dette blev en kombinationsmetode opfundet: antallet af potter er opdelt i grupper med lige stor vægt og størrelse.

Eksempelkode for Arduino til Autowatering-projektet

Lad os gå videre til programmering af koden:

//Download biblioteket til skærmen og tilslut det til programmet #include "QuadDisplay2.h"; //Opret en konstant, der angiver den kontakt, som vandpumpen er tilsluttet #define VODPOMPA_PIN 4; // Opret en konstant, der angiver den kontakt, som jordfugtighedsanalysatoren er tilsluttet #define HUM_PIN A0; //Min for fugtighed #define HUM_MIN 200; // Max ved fugtighed #define HUM_MAX 700; //Tid mellem vandingstjek #define INTER 60000 * 3; //Deklarer en variabel, hvori fugtighedsværdien vil blive lagret unsigned int hum = 0; //Vi gemmer tidsperioden i denne variabel unsigned long Time = 0; //Deklarer et objekt fra QuadDisplay-klassen, begiv derefter nummerpladen //af kontaktpersonens CS QuadDisplay-skærm(9); //Opret en metode, der er ansvarlig for driften af ​​displayets void setup(void) ( //Kørsel af start()-metoden; //Erklære en funktion, der vil være ansvarlig for vandpumpens output fra //contact pinMode(VODPOMPA_PIN, OUTPUT); //På displayet lyser tallet - 0 dis.displayInt(0); ) //Opret en metode, der er ansvarlig for den aktuelle fugtighedsindikator void loop(void) ( //Beregn den aktuelle befugtningsindikator int humNow = analogRead (HUM_PIN); // Hvis værdiindikatoren ikke er lig med den forrige, så... if(humNow != hum) ( //Gem værdien modtaget nu hum= humNow; //Vis værdien på skærmen displayInt (humNow); ) //Indstil betingelserne: hvis en periode angivet af brugeren er gået, og //fugtigheden i jorden er mindre end nødvendigt, så... hvis ((Tid == 0 || millis) () - Tid > INTER) && hum< HUM_MIN) { // Даем сигнал о начале работы водяной помпы digitalWrite(VODPOMPA_PIN, HIGH); //Объявляем потом, длящийся 2 секунды delay(2000); // Завершаем работу помпы digitalWrite(POMP_PIN, LOW); // Ставим в значение переменной Time текущее время и добавляем 3 минуты Time = millis(); } }

Derudover kan du se et par interessante videoer fra vores kolleger.