Noriu pasidalinti savo naministai man tarnauja daugiau nei metus.
Pradedamas meistruoti Arduino, Galvojau, kokį projektą įgyvendinti. Prisiminiau, kad turiu daug kambarinių augalų, kurie periodiškai pamiršta laistyti, o laistymo klausimas atostogų ir verslo kelionių metu turi būti.
Sistemą sudaro šie komponentai:
Valdymo blokas yra sistemos šerdis. Čia yra akumuliatoriai, „Arduino“, DS3231 laiko modulis, ekranas, įtampos keitikliai ir valdikliai.
Šalia augalų yra vandens talpykla. Kanistroje yra povandeniniai siurbliai, kurie per vamzdžius į augalus pumpuoja vandenį.
Vandens pasiskirstymą tarp augalų galima dar tikslinti naudojant šukas su čiaupais.
Visi techniniai sistemos elementai gali būti paslėpti užuolaidose ir puoduose, kad jie nebūtų labai pastebimi
Sistemos apžvalga:
Pagrindiniai sistemos parametrai:
1. Maždaug 5 mėnesių baterijos veikimo laikas
2. Sistema palaiko 3 siurblių valdymą. Prie kiekvieno siurblio galite prijungti šuką su 2–4 čiaupais ir papildomai valdyti vandens srautą. Iš viso mes gauname galimybę prijungti iki 12 augalų
3. Laikas imamas iš atskiro nepriklausomo laikrodžio modulio DS3231. Siurblys suaktyvinamas, kai nustatytoje valandoje nurodoma valanda (pavyzdžiui, 8:00).
4. Ekrane rodoma informacija
5. Laistymo nustatymai yra nurodyti programos kode, juos galima pakeisti atnaujinant Arduino
Ekrane rodomos informacijos paaiškinimas:
Pirma eilutė yra lentelės antraštė. Kiekvienoje eilutėje rodoma informacija apie atitinkamą siurblį. Pirmasis stulpelis - rodo darbo laikotarpį (PR). Pavyzdžiui, kai vertė yra „5“ - siurblys veiks kas 5 dienas. Antrasis stulpelis yra darbo valanda (PD) - valanda, kurios pradžioje siurblys įsijungs. Trečiasis stulpelis yra veikimo laikas (BP) - siurblio veikimo laikas sekundėmis. Ketvirtasis stulpelis - dienos liko (PRIEŠ) - rodo, kiek dienų liko iki kitos operacijos. Taip pat rodoma data ir laikas.
Sistema neturi grįžtamojo ryšio, todėl parametrus reikia pasirinkti empiriškai. Geriausia sugrupuoti augalus, kurie yra artimi laistymo poreikiams (vieni gerai toleruoja sausrą, o kiti mėgsta gausų laistymą) ir vazonų dydžiais.
Nustatymai yra maždaug tokie: kas 5 dienas siurblį įjunkite 8 valandą 30 sekundžių.
Žemiau bus nurodyta, kurioje kodo dalyje yra šie nustatymai.
Programos kode galite išjungti 2-ąjį ir 3-ąjį siurblius. Tokiu atveju informacija bus rodoma tik įtrauktuose siurbliuose.
Autonomiją užtikrina:
• Maitinamas 18650 akumuliatorių
• Arduino, eina į gilų miegą („Powerdown“) ir atsibunda „Watсhdog“
• „Arduino“ įtampos stabilizatorius yra šiek tiek nuo kairės kojos
• Eksploatacijos metu ekranas yra išjungtas. Norėdami suaktyvinti ekraną, turite palaikyti miego mygtuką maždaug 10 sekundžių.
• Visi moduliniai indikatoriai yra pašalinti
Sistema sunaudoja apie 3 mA, 1 siurblys veikia apie 350 mA.
Pagrindinė informacija:
• Maisto indas būstui laikyti
• Kinijos klonas „Arduino nano“
• DS3231 realaus laiko modulis
• 18650 baterijų
• Stiprinimo modulis iki 5 V (srovė apie 1 A)
• Nuleiskite modulį iki 3,3 V, kad maitintumėte ekraną
• „Nokia 5110“ ekranas
• TP4056 modulis akumuliatoriui įkrauti (+ apsaugai)
• Akumuliatoriaus įkrovos indikatorius
• Įvairūs „frizai“: lauko efekto tranzistoriai, rezistoriai, kondensatoriai (elektrolitiniai ir keraminiai)
• Jungikliai ir mygtukai
Įrenginio montavimo "schema":
Paaiškinimai pagal schemą:
1. 4 18650 baterijos yra sujungtos lygiagrečiai. Bendra galia yra apie 13000 mA / h.
2. Baterija prijungta prie įkrovimo ir apsauginio modulio TP4056. Įkraunamas per „micro USB“ jungtį iš telefono įkrovimo. Įkrauti reikia ne mažesne kaip 1 A srove. Numatomas laikas visiškai įkrauti yra 13–14 valandų. Indikatoriaus lemputes galima mirksėti ir parodyti ant važiuoklės.
3. Tada per jungiklį prijungiamas iki 5 V stiprintuvo keitiklis. Jis maitins daugumą grandinės komponentų, įskaitant siurblius. Mažėjant akumuliatoriaus įkrovos lygiui, įtampa sumažės nuo 4,2 V iki 2,7 V, o to nepakanka, kad grandinė veiktų. Modulis užtikrins stabilią įtampą. Filtro, pagaminto iš elektrolitinių ir keraminių kondensatorių, dedamas į modulio išvestį. Elektrolitinis kondensatorius atlieka išlyginamąjį, stabilizuojantįjį vaidmenį. Keraminis kondensatorius naudojamas kovojant su aukšto dažnio trukdžiais. Jei modulis „pypteli“ induktoriui veikiant, siekiant pašalinti šį reiškinį, prie modulio įėjimo galima įdėti papildomą elektrolitinį kondensatorių. Elektrolitiniai kondensatoriai, kurių talpa 1000 mikrofaradų esant 6,3 V. Keraminiai kondensatoriai yra tinkami nuo 1–2 mikrofaradų. Grandinė naudojama esant 10 uF, nes turėjau daug papildomo.
4. Norėdami maitinti ekraną, jums reikia 3,3 V įtampos, todėl pridedamas „Buck“ keitiklis su panašiais filtrais iš kondensatorių.
5. DS3231 laikrodžio modulis, reikalingas tikslesniam laiko nustatymui. Maitinimo indikatorius (1) yra išjungtas DS3231 modulyje. Tai daroma energijos taupymo tikslais. Jei naudojate įprastas baterijas (neįkraunamas), tuomet turite išardyti rezistorių (2). Modulis skirtas įkraunamoms baterijoms, įskaitant jų įkrovimą. Jei baterija normali, įkrovimo srovė greitai ją nenaudos.
6. Pagrindinės sistemos smegenys yra „Arduino nano“ platforma. Energijos taupymo tikslais turite nuimti visus šviesos diodus (arba bent jau maitinimą), taip pat nupjauti kairiąją įtampos reguliatoriaus koją.
7. Siurblys valdomas lauko efekto tranzistoriais. Visi, kurie atidaromi esant 5 V įtampai ir galintys perjungti srovę nuo 1A, padarys. Iš pradžių naudojau paruoštus. Aš litavau lauko efekto tranzistorių + rezistorių bateriją (100 omų, kad apsaugotų Arduino, 10 omų, kad tranzistoriaus sklendę pritraukčiau prie žemės, kad mosfetas užsidarytų) + taip pat litavau jungtis KF 301-2P laidams pritvirtinti.
Vėliau pagamino kompaktiškesnę AO3400 SMD akumuliatorių bateriją
Kažkur per pusmetį sugedo 2 lauko tranzistoriai. Priežastis buvo ta, kad stabdymo režimu kolektoriaus variklis veikia kaip generatorius. Norėdami apsaugoti lauko efekto tranzistorių, turite naudoti apsauginį diodą. Aš naudojau 1N4007.
8. Ekrane rodoma visa informacija. Norėdami pažadinti ekraną, turite laikyti mygtuką iki 10 sekundžių. Jei valandą pakeisite minutę, sistema užmigs, o ekranas išsijungs.
Sukurkite procesą:
Pirmieji bandymai ant lentos ir programinės įrangos rašymas
Kitas, viskas sujungta su šarnyru
Pakėlė kėbulą ir išbandė tikrais siurbliais
Aš išgręžiau skylutes dėkle, viską nudažiau juodu matiniu gruntu ir pritvirtinau komponentus karšto lydalo klijais
Papildomi surinkimo taškai:
• Po vazonėliais visada turi būti vandens indas, nes priešingu atveju yra pavojus, kad išjungus siurblius, vanduo ir toliau liausis.
• Atstumas nuo talpyklos dugno iki vamzdžio galo neturi viršyti 70 cm. Siurbliui bus sunkiau pakelti vandenį į didesnį aukštį.
• Mini siurblyje su Ali yra skaidrios 6x1,5 mm žarnos
• Svarbu, kad vandens įsiurbimo siurblio anga neatsiremtų į vandens rezervuaro sieną, kitaip nebus normalus slėgis.
• Nenaudokite geležinių dalių (spaustukų, vielos ir kt.), Kad žarna būtų pritvirtinta prie siurblio. Viskas labai greitai sudega.
• Siurblys turi trumpus laidus. Greičiausiai jų reikės padidinti. Laidams užsandarinti geriausia naudoti karšto lydalo klijus, o ant viršaus - susitraukiančius.
Programos logika:
• Arduino išmiega
• DS3231 modulio rodmenys (data ir laikas) priskiriami kintamiesiems
• Kai keičiasi data, keičiasi ir praėjusių dienų skaitiklio vertė
• Jei darbo (nustatymo) laikotarpis sutampa su praleistų dienų skaičiumi, valanda yra patikrinama
• Jei valanda (nustatymas) ir valanda iš laiko modulio sutampa, įjunkite siurblį nustatymuose nurodytam laikui
• Arduino eina miegoti
• Jei laikote miego mygtuką, ekranas tiekia energiją ir „Arduino“ atsibunda
Laistymo nustatymai nurodyti šioje kodo dalyje:
Taikau eskizą ir bibliotekas
Apskritai esu patenkintas šia sistema. Ji maždaug metus laistė mano augalus ant palangės. Dabar perkėliau sistemą į kitą kambarį, o savoje sudėjau naują, patogesnį ir įdomesnį, bet tai jau kita istorija ...