Jeg vil dele min homebrew kvistder har tjent mig i over et år nu.
Begynder at mestre Arduino, Tænkte jeg på, hvilken slags projekt jeg skulle implementere. Jeg huskede, at jeg har mange indendørs planter, som med jævne mellemrum glemmer at vand, og spørgsmålet om vanding under ferier og forretningsrejser har et sted at være.
Systemet består af følgende komponenter:
Betjeningsenheden er hjertet i systemet. Her er batterierne, Arduino, DS3231 tidsmodul, display, spændingsomformere og kontroller.
I nærheden af planterne ligger en dåse med vand. Der er nedsænkbare pumper i beholderen, der pumper vand gennem rør ind i planterne.
Fordelingen af vand mellem planter kan justeres yderligere ved hjælp af en kam med vandhaner.
Alle de tekniske elementer i systemet kan skjules bag gardiner og gryder, så de ikke er særlig synlige
Systemoversigt:
Nøglesystemparametre:
1. Batterilevetid på cirka 5 måneder
2. Systemet understøtter styring af 3 pumper. For hver pumpe kan du tilslutte en kam med 2-4 vandhaner og desuden kontrollere vandstrømmen. I alt får vi muligheden for at forbinde op til 12 planter
3. Tiden tages fra et separat uafhængigt urmodul DS3231. Pumpen udløses, når den time, der er angivet i indstillingen (f.eks. 8:00).
4. Displayet viser information
5. Vandingsindstillinger er angivet i programkoden, de kan ændres ved at skylle Arduino igen
Forklaring af de oplysninger, der vises på displayet:
Den første linje er tabeloverskriften. Hver række viser information om den respektive pumpe. Den første kolonne - viser arbejdsperioden (PR). For eksempel med en værdi på "5" - pumpen kører hver 5. dag. Den anden søjle er driftstiden (PD) - den time, hvor pumpen begynder at starte. Den tredje kolonne er køretid (BP) - pumpens køretid i sekunder. Den fjerde kolonne - dage tilbage (FØR) - viser, hvor mange dage der er tilbage, indtil næste operation. Dato og tid vises også.
Systemet har ingen feedback, så indstillingerne skal vælges empirisk. Det er bedst at gruppere planter, der er tæt med hensyn til vandingskrav (nogle tolererer tørke godt, mens andre kan lide rigelig vanding) og størrelsen på gryderne.
Indstillingerne er omtrent som følger: hver 5. dag tændes pumpen kl. 8:00 i 30 sekunder.
Nedenfor vises det i hvilken del af koden disse indstillinger er placeret.
I programkoden kan du deaktivere 2. og 3. pumper. I dette tilfælde vises information kun på de inkluderede pumper.
Autonomi sikres af:
• Drevet af 18650 batterier
• Arduino og går i en dyb søvn (Powerdown) og vågner op af Watсhdog
• Arduino-spændingsstabilisatorbit fra venstre ben
• Displayet er slukket under betjening. For at aktivere displayet skal du holde sleep-knappen inde i ca. 10 sekunder.
• Alle indikator-LED'er fjernes fra modulerne
Systemet bruger ca. 3 mA, 1 pumpe bruger ca. 350 mA i drift.
Vigtigste detaljer:
• Madbeholder til boliger
• Kinesisk klon Arduino nano
• DS3231 realtidsmodul
• 18650 batterier
• Boost-modul op til 5V (nuværende ca. 1 A)
• Sænkning af modulet op til 3,3V for at tænde for displayet
• Nokia 5110-skærm
• TP4056-modul til opladning (+ beskyttelse) af batteriet
• Batteriopladningsindikator
• Forskellige "frizz": felteffekttransistorer, modstande, kondensatorer (elektrolytisk og keramisk)
• Kontakter og knapper
Montering af "skema" på enheden:
Forklaringer i henhold til ordningen:
1. 4 18650 batterier er parallelt tilsluttet. Den samlede kapacitet er ca. 13000 mA / h.
2. Batteriet er tilsluttet opladnings- og beskyttelsesmodulet TP4056. Opladning sker via micro USB-stikket fra telefonopladning. Opladning er nødvendig med en strøm på mindst 1A. Anslået tid til fuld opladning er 13-14 timer. Indikator-LED'er kan blinkes ud og vises på chassiset.
3. Dernæst tilsluttes en boostkonverter op til 5V gennem kontakten. Det giver strøm til de fleste af komponenterne i kredsløbet, inklusive pumper. Med et fald i batteriets opladningsniveau falder spændingen fra 4,2 V til 2,7 V, hvilket ikke er nok til at kredsløbet fungerer. Modulet giver en stabil spænding. Et filter lavet af elektrolytiske og keramiske kondensatorer er placeret ved modulets udgang. Den elektrolytiske kondensator spiller en udjævnende, stabiliserende rolle. Keramisk kondensator bruges til at bekæmpe interferens med høj frekvens. Hvis modulet "bipper" induktoren under drift for at eliminere dette fænomen, kan en ekstra elektrolytisk kondensator placeres ved indgangen til modulet. Elektrolytiske kondensatorer med en kapacitet på 1000 mikrofarader ved 6,3V. Keramiske kondensatorer er egnede fra 1-2 mikrofarader. Kredsløbet bruges ved 10 uF, fordi jeg havde en masse ekstra.
4. For at skifte til displayet skal du bruge en spænding på 3,3V, så der tilføjes en buck-konverter med lignende filtre fra kondensatorer.
5. DS3231 urmodul, der er behov for en mere nøjagtig timing. Strøm-LED'en (1) loddes af på DS3231-modulet. Dette gøres med henblik på energibesparelser. Hvis du bruger almindelige batterier (ikke genopladelige), er du nødt til at løsne modstanden (2). Modulet er designet til genopladelige batterier, inklusive opladning af dem. Hvis batteriet er normalt, bliver ladestrømmen hurtigt ubrugelig.
6. Systemets vigtigste hjerne er Arduino nano-platformen. Af energibesparende formål er du nødt til at aflodse alle lysdioder (eller i det mindste kun strøm) og også bid af venstre ben på spændingsregulatoren.
7. Pumpen styres via felteffekttransistorer. Alle, der er åbne med 5V spænding og er i stand til at skifte strøm fra 1A, gør det. Først brugte jeg de færdige. Jeg loddet et batteri af felteffekttransistorer + modstande (100 Ohm for at beskytte Arduino, 10k Ohm for at trække lukkeren på transistoren til jorden, så mosfetten lukker) + loddes også tilslutningerne KF 301-2P for at fikse ledningerne
Senere lavede et mere kompakt batteri på AO3400 SMD mosfets
Et sted i et halvt år mislykkedes felteffekttransistorer. Årsagen var, at i bremsetilstand fungerer kollektormotoren som en generator. For at beskytte felteffekttransistoren skal du bruge en beskyttelsesdiode. Jeg brugte 1N4007.
8. Displayet viser alle oplysninger. For at vække displayet skal du holde knappen inde i op til 10 sekunder. Hvis du ændrer minut i timer, går systemet i dvale, og displayet slukkes.
Opbygningsproces:
Første test på en brødbræt og skriv firmware
Forbind derefter alt med en hængslet installation
Opfanget karosseri og testet med ægte pumper
Jeg borede huller i etuiet, malede alt med en sort mat grunning og fikserede komponenterne til varmsmeltelim
Yderligere monteringspunkter:
• En beholder med vand skal altid være placeret under gryderne, ellers er der risiko for, at vand fortsætter med at hælde, når pumpene er slukket.
• Afstanden fra bunden af beholderen til enden af røret må ikke overstige 70 cm. Det vil være vanskeligere for pumpen at hæve vandet til en større højde.
• På en minipumpe med Ali er transparente slanger 6x1,5 mm store
• Det er vigtigt, at åbningen af vandindtagspumpen ikke hviler mod væggen i vandtanken, ellers er der intet normalt tryk.
• Brug ikke jerndele (klemmer, ledning osv.) Til at fastgøre slangen til pumpen. Alt ruster meget hurtigt.
• Pumpen har korte ledninger. Mest sandsynligt bliver de nødt til at øges. For at forsegle ledningerne er det bedst at bruge smeltlim og på oversiden krympe.
Programmets logik:
• Arduino går ud af søvnen
• DS3231-modullæsninger (dato og tid) tildeles variabler
• Når datoen ændres, ændres værdien af tælleren for de sidste dage
• Hvis arbejdsperioden (indstillingen) falder sammen med antallet af passerede dage, kontrolleres timen
• Hvis timen (indstilling) og timen fra tidsmodulet falder sammen, skal du tænde for pumpen i det angivne tidsrum
• Arduino går i dvale
• Hvis du holder på sleep-knappen, leveres strøm til displayet, og Arduino vågner op
Vandingsindstillinger er angivet her i denne del af koden:
Jeg anvender en skitse og biblioteker
Generelt er jeg tilfreds med systemet. Hun vandede regelmæssigt mine planter på vindueskarmen i cirka et år. Nu flyttede jeg systemet til et andet rum, og i mit eget sammensatte jeg et nyt, mere praktisk og interessant, men det er en anden historie ...