Sisukord:
- 1. samm: OSAD JA TÖÖRIISTAD
- 2. samm: MULLANE NIISKUSOND V1
- 3. samm: MULDA NIISKUSESAND V2
- 4. samm: MULDA NIISKUSESAND V3 "Katana"
- Samm 5: PÕHIMÕÕTE
- 6. toiming: 7 SEGMENDI NÄITUS
- 7. samm: PUMP ja PUMPI JUHTIMINE
- 8. samm: KONFIGURATSIOON ja NUPUD
- 9. samm: RTC: REAL AJALINE KELL
- 10. samm: KÕIK KOKKU ÜLES
- Samm 11: SKETCHES ja palju muud
- 12. samm: *** VÕITSIME !!! ***
Video: APIS - automatiseeritud taimede niisutussüsteem: 12 sammu (koos piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
AJALUGU: (selle süsteemi järgmine areng on saadaval siin)
Taimede kastmise teemal on üsna palju juhendeid, nii et ma vaevalt leiutasin siin midagi originaalset. Selle süsteemi muudab erinevaks programmeerimine ja kohandamine, mis võimaldas paremini juhtida ja integreerida igapäevaellu.
Siin on video jootmisjooksust: jootmisjooks
Nii tekkis APIS:
Meil on kaks punase kuuma tšillipipra taime, mis on vaevalt "üle elanud" mitu meie puhkust ja pidasid sel hetkel peaaegu pereliikmeteks. Nad on läbi elanud äärmise põua ja ülekastmise, kuid on alati kuidagi taastunud.
Arduino-põhise taimede kastmise ehitamise idee oli peaaegu esimene idee, kuidas saaks Arduinot koduautomaatika projektina rakendada. Nii ehitati lihtne taimede kastmissüsteem.
Versioonil 1 ei olnud aga mingeid märke mulla niiskuse kohta ja ei olnud võimalik öelda, kas see hakkas taimi kastma või kaste oli mõne päeva pärast.
Uudishimu, nagu me kõik teame, tappis kassi ja versioon 2 ehitati neljakohalise 7 -segmendilise mooduliga, mis kuvab pidevalt praegust niiskust.
Sellest ei piisanud. Järgmine küsimus oli "millal viimati taimi kasteti"? (Kuna me olime harva kodus seda tunnistajaks). Versioon 3 kasutas 7 -segmendilist moodulit ka selle kuvamiseks, kui kaua aega tagasi viimane kastmisjooks toimus (jooksva tekstistringina).
Ühel õhtul algas jootmine kell 4 hommikul, äratades kõik üles. Masendav … Kuna APIS -i ööseks väljalülitamiseks ja päevaks sisse lülitamiseks oli liiga palju tööd, et vältida keset ööd kastmist, lisati versiooni 4 osana reaalajas kell, et seade öösel magama panna.
Kuna reaalajas kell nõuab korrapäraseid kohandusi (näiteks suveaja lüliti), sisaldab versioon 5 kolme nuppu, mis võimaldavad seadistada erinevaid taime kastmisparameetreid.
See ei piirdunud sellega. Märkasin, et niiskusandur kipub üsna kiiresti erodeeruma, tõenäoliselt tänu sellele, et see oli (disaini järgi) konstantse pinge all ja seetõttu oli sondide vahel pidev elektrivool (erodeeriv anood). Hiinast pärit odav mullaandur elas umbes nädala. Isegi tsingitud nael oli kuu ajaga “ära söödud”. Roostevabast terasest sond hoidis paremini, kuid märkasin, et isegi see loobub. Versioon 6 lülitab sondi sisse ainult 1 minutiks iga tund (ja kogu aeg jootmise ajal), vähendades seega oluliselt erosiooni (~ 16 minutit päevas vs 24 tundi ööpäevas).
Idee:
Töötage välja taimede jootmissüsteem, millel on järgmised võimalused:
- Mõõtke mulla niiskust
- Ettemääratud "madala" niiskuse märgini jõudmisel lülitage veepump sisse ja kastke taimi, kuni saavutatakse "kõrge" niiskuse märk
- Kastmist tuleks teha mitmel korral, eraldades tegevusetuse perioodid, et vesi saaks pinnasest küllastuda
- Süsteem peaks öösel "une" ja "ärkamise" vahel deaktiveeruma
- "Ärkamise" aeg tuleks nädalavahetustel kohandada hilisemale väärtusele
- Süsteem peaks pidama pumpamiskäikude logi
- Süsteem peaks kuvama praegust mulla niiskuse näitu
- Süsteem peaks kuvama viimase pumba töötamise kuupäeva/kellaaja
- Kastmisparameetrid peaksid olema reguleeritavad ilma ümberprogrammeerimiseta
- Peatage pumpamine ja näidake veateadet, kui pumba töötamine ei muuda niiskust (veetase või anduriprobleemid), vältides seadme üleujutamist ja vee lekkimist
- Süsteem peaks niiskusanduri sisse/välja lülitama, et vältida metalli erosiooni
- Süsteem peaks torudest vett tühjendama, et vältida hallituse teket nende sees
Järgmisi parameetreid tuleks konfigureerida nuppude abil:
- Niiskus "madal", %, pumba käivitamiseks (vaikimisi = 60 %)
- Niiskus "kõrge", %, pumba töötamise peatamiseks (vaikimisi = 65 %)
- Ühe kastmisperioodi kestus sekundites (vaikimisi = 60 sekundit)
- Sihtniiskuse saavutamiseks tehtud proovimiste arv (vaikimisi = 4 jooksu)
- Sõjaväe aeg ööseks välja lülitamiseks, ainult tunnid (vaikimisi = 22 või 22:00)
- Sõjalise aja aktiveerimine hommikul, ainult tunnid (vaikimisi = 07 või 7 hommikul)
- Nädalavahetuse korrigeerimine hommikuseks aktiveerimiseks, delta tunnid (vaikimisi = +2 tundi)
- Praegune kuupäev ja kellaaeg
APIS kirjutab EEPROM -i mällu 10 viimase jootmise jooksu kuupäeva/kellaaja. Logi saab kuvada, näidates jooksude kuupäeva ja kellaaega.
Üks paljudest asjadest, mida APIS -ist õppisime, on see, et tegelikult ei pea te taimi iga päev kastma, mis oli meie rutiin, kuni nägime mulla niiskuse näitu 7 -segmendilisel ekraanil …
1. samm: OSAD JA TÖÖRIISTAD
APIS -i ehitamiseks vajate järgmisi osi:
Juhtkarp ja torud:
- Arduino Uno pardal: saidil Amazon.com
- 12v peristaltiline vedelpump silikoontorudega: saidil Adafruit.com
- 4X numbriline LED-ekraan Digitaaltoru JY-MCU moodul: saidil Fasttech.com
- DS1307 reaalajas kella purunemisplaadi komplekt: saidil Adafruit.com (valikuline)
- Microtivity IM206 6x6x6mm taktilüliti: Amazon.com -is
- Vero pardal: saidil Amazon.com
- L293D mootorijuhi IC: saidil Fasttech.com
- 3 x 10 kOhm takistid
- Arduino projekteerib plastkorpust: saidil Amazon.com
- 12v vahelduvvoolu/alalisvoolu adapter 2,1 mm toitepistikuga: saidil Amazon.com
- Bambusest vardad
- Turvis ja natuke supercement liimi
- Super pehme latekskummist toru 1/8 "ID, 3/16" OD, 1/32 "sein, pool-selge merevaigukollane, 10 jalga. Pikkus: saidil McMaster.com
- Vastupidav nailonist tiheda tihendiga okastoruliitmik, tee 1/8 "toru ID, valge, 10 tk: McMaster.com
- Vastupidav nailonist tiheda tihendiga okastoruliitmik, Wye 1/8 "toru ID, valge, pakendid 10: McMaster.com
- Nagu tavaliselt, juhtmed, jootetööriistad jne.
Niiskusandur:
- Väike puutükk (1/4 "x 1/4" x 1 ")
- 2 x roostevabast terasest akne eemaldamise nõela: saidil Amazon.com
- Mulla niiskuse tuvastamise anduri moodul: saidil Fasttech.com
2. samm: MULLANE NIISKUSOND V1
Pinnase niiskust mõõdetakse kahe maasse sisestatud (umbes 1 tolli kaugusel) metallist sondi vahelise takistuse alusel. Skeemid on kujutatud pildil.
Esimene proovitud sond oli see, mida saate osta mitmetelt Interneti -teenuse pakkujatelt (nagu see).
Nende probleem on see, et fooliumitase on suhteliselt õhuke ja laguneb kiiresti (ühe või kahe nädala jooksul), nii et loobusin kiiresti sellest tsingitud naelal põhineva tugevama anduri jaoks valmistatud eeltöödeldud materjalist (pls. Vt järgmist sammu)).
3. samm: MULDA NIISKUSESAND V2
"Järgmise põlvkonna" sond oli kodus valmistatud kahest tsingitud naelast, puitplaadist ja paarist juhtmest.
Kuna mul oli juba kulunud toodetud sond, kasutasin uuesti ühendusdetaili ja sealt pärit elektroonikamoodulit, põhimõtteliselt vahetasin lihtsalt pinnase komponendi välja.
Tsingitud küüned erodeerusid minu üllatuseks (küll aeglasemalt kui õhuke foolium), kuid siiski kiiremini, kui sooviksin.
Kavandati veel üks sond, mis põhines roostevabast terasest akne eemaldamise nõeltel. (vt järgmist sammu).
4. samm: MULDA NIISKUSESAND V3 "Katana"
Roostevabast terasest sond (mis meenutab samuraimõõka, sellest ka nimi) on praegu kasutusel.
Usun, et kiiret erosiooni võib seostada asjaoluga, et sond oli alati elektripinge all (24x7), olenemata sellest, kui sageli tegelik mõõtmine toimus.
Selle leevendamiseks muutsin mõõtmisintervallid 1 tunniks (lõppude lõpuks EI OLE see reaalajasüsteem) ja ühendasin sondi ühe digitaalse tihvtiga püsiva 5 v asemel. Praegu töötab sond 24 tunni asemel ainult ~ 16 minutit päevas, mis peaks selle eluiga dramaatiliselt pikendama.
Samm 5: PÕHIMÕÕTE
APIS põhineb Arduino UNO plaadil.
APIS mõõdab mulla niiskust üks kord tunnis ja kui see langeb alla etteantud läve, lülitab pumba etteantud ajavahemiku jooksul ette kindlaksmääratud arv kordi, mis on eraldatud küllastusintervallidega.
Kui niiskuslävi on saavutatud, naaseb protsess kord tunnis mõõtmisrežiimi.
Kui soovitud niiskust ei ole võimalik saavutada, kuid alumine piir on saavutatud, on see samuti korras (vähemalt toimus kastmine). Põhjuseks võib olla õnnetu sondi paigutamine, kus see on niiskest pinnasest liiga kaugel.
Kui aga isegi alamniiskuse alampiiri ei suudetud saavutada, kuulutatakse välja veatingimus. (Tõenäoliselt sondi probleem või toiteämbris sai vesi otsa jne). Veateadetes magab seade 24 tundi ilma midagi tegemata ja proovib siis uuesti.
6. toiming: 7 SEGMENDI NÄITUS
TM1650 PÕHINE 7 SEGMENDI NÄITUS:
Algselt polnud APIS -il kuvamisvõimalusi. Ilma USB kaudu ühendamata oli võimatu öelda praegust mulla niiskustaset.
Selle parandamiseks lisasin süsteemile neljakohalise 7 segmendi kuva: saidil Fasttech.com
Ma ei leidnud kusagil selle mooduliga töötamiseks raamatukogu (ka mitte selle andmelehte), nii et pärast paaritunnist I²C pordi uurimist ja katsetamist otsustan ise draiveriteegi kirjutada.
See toetab kuni 16 -kohalisi kuvamisi (vaikimisi 4), võib kuvada ASCII põhimärke (pange tähele, et kõiki märke ei saa koostada 7 segmendiga, nii et tähti nagu W, M jne ei rakendata). punkti kuvamine moodulil, tähemärkide string (rohkem kui 4 tähe kuvamiseks) ja toetab 16 heledusastet.
Raamatukogu on saadaval arduino.cc mänguväljakul siin. TM1650 draiveriteek
Näidisvideo on saadaval siin
ANIMATSIOON:
Veejooksul rakendatakse natuke 7 -segmendilist animatsiooni.
- Pumba sisselülitamisel töötavad ekraanil olevad digitaalsed punktid vasakult paremale, sümboliseerides veejooksu: jootmise animatsioonivideo
- Küllastusperioodil jooksevad punktid ekraani keskelt väljapoole, sümboliseerides küllastust: küllastusanimatsioonivideo
Mittevajalik, kuid meeldiv puudutus.
7. samm: PUMP ja PUMPI JUHTIMINE
PUMP
Kasutasin taimede jootmiseks 12v peristaltilist vedelpumpa (saadaval siit). Pump tagab umbes 100 ml/min (mis on umbes 1/2 klaasi - seda on hea meeles pidada, kui seadistate veejooksu aja ülevoolu vältimiseks, ja see juhtus 8-))
PUMBA JUHTIMINE - L293D
Pumpa juhitakse L293D mootorijuhi kiibi kaudu. Kuna pöörlemissuund on eelseadistatud, peate juhtimiseks kasutama ainult kiibi lubamise tihvti. Suunatihvtid saab ühendada otse +5v ja GND alaliselt.
Kui te (nagu mina) polnud kindel, mis suunas pump läheb, saate siiski ühendada kõik kolm tihvti Arduinoga ja juhtida suunda programmiliselt. Vähem uuesti jootmist.
8. samm: KONFIGURATSIOON ja NUPUD
NUPUD:
Kasutasin kolme nuppu APIS -i seadistamiseks ja juhtimiseks.
Kõik nupuvajutused töödeldakse tihvtide katkestuste põhjal (PinChangeInt raamatukogu).
- Punane (parempoolne) on nupp SELECT. See viib APIS -i konfiguratsioonirežiimi ja kinnitab ka väärtused.
- Musta vasakpoolset ja keskmist nuppu (vastavalt PLUS ja MINUS) kasutatakse seadistatavate väärtuste suurendamiseks/vähendamiseks (konfigureerimisrežiimis) või praeguse kuupäeva/kellaaja ja viimase jootmise teabe kuvamiseks (tavarežiimis).
Kuna enamus ajast on ekraan välja lülitatud, siis "äratavad" kõik nupud APIS -i üles ja alles siis täidavad teisel vajutusel oma funktsiooni.
Ekraan lülitub välja pärast 30 -sekundilist tegevusetust (kui jootmine pole pooleli).
APIS jookseb käivitamisel läbi vaatamiseks konfiguratsiooniparameetrid: video
KONFIGURATSIOON:
APIS -il on neli konfigureerimisrežiimi:
- Seadistage jootmise parameetrid
- Seadistage reaalajas kell
- "Jõuga" kastmisjooks
- Vaadake üle kastmispäevik
KASUTAMISE PARAMETRID:
- Madal mulla niiskuslävi (alustage kastmist)
- Kõrge mulla niiskuslävi (lõpetage kastmine)
- Ühe kastmisperioodi kestus (sekundites)
- Kastmiskordade arv ühes partiis
- Mulla küllastusperioodi kestus ühe partii jooksul (minutites)
- Öörežiimi aktiveerimisaeg (sõjaväeline aeg, ainult tunnid)
- Öörežiimi lõppaeg (ainult sõjaväeline aeg, ainult tunnid)
- Nädalavahetuse kohandamine öörežiimi lõpuaja jaoks (tundides)
REAL AJAL KELLI SEADISTAMINE:
- Sajand (st 20 2015. aasta kohta)
- Aasta (st 15 2015. aastal)
- Kuu
- Päev
- Tund
- Minut
Pärast minutite kinnitamist seadistatakse kellaaeg sekunditega 00.
Seadistuste aeg on 15 sekundit, pärast mida kõik muudatused tühistatakse.
Salvestamisel salvestatakse parameetrid EEPROM -i mällu.
KASUTUSJUHENDUSE SUNNITAMINE:
Ikka pole kindel, miks ma selle rakendasin, kuid see on olemas. Pärast aktiveerimist lülitub APIS jootmisrežiimi. Kastmisrežiimile kehtivad siiski künnised. See tähendab, et kui sunnite jootma, kuid mulla niiskus on üle HIGH märgi, lõpetatakse jootmine kohe. Põhimõtteliselt toimib see ainult siis, kui mulla niiskus jääb LOW ja HIGH künniste vahele.
KASUTUSPÄEVA ÜLEVAADE:
APIS peab EEPROM -i mällu logi viimase 10 jootmise kohta, mida kasutaja saab vaadata. Salvestatakse ainult kastmisjooksu kuupäev/kellaaeg. Künniseid (sel ajal) ja HIGH künnise saavutamiseks kulunud jooksude arvu ei salvestata (kuigi järgmises versioonis võivad need olla).
9. samm: RTC: REAL AJALINE KELL
ÖINE REŽIIM
Kui APIS mind öösel äratas, tuli pähe mõte rakendada "öörežiim".
Öörežiim on siis, kui mõõtmisi ei toimu, ekraan on välja lülitatud ja jootmist ei toimu.
Tavalisel tööpäeval APIS "ärkab" kell 7 hommikul (seadistatav) ja siseneb öörežiimi kell 22:00 (seadistatav). Nädalavahetusel kasutab APIS äratuse viivitamiseks "nädalavahetuse reguleerimise" seadet (näiteks kella 9 -ni), kui nädalavahetuse kohandamine on 2 tundi).
RTC LÕHUTABEL vs "TARKVARA" RTC:
Kuupäeva/kellaaja jälgimiseks ja öörežiimide sisenemiseks/väljumiseks kasutasin riistvara RTC -d (saadaval siin).
Selle kasutamine on vabatahtlik, kuna visandeid saab koostada niinimetatud "tarkvara" RTC kasutamiseks (kasutades arduino millis () funktsionaalsust).
Tarkvara RTC kasutamise puuduseks on see, et APIS -i sisselülitamisel peate määrama kellaaja.
Muutsin standardset RTC raamatukogu nii, et see sobiks täpselt API -ga ja lahendaks ka millisekundilise ümbermineku probleemi. (Allalaadimiseks vaadake visandite sammu).
10. samm: KÕIK KOKKU ÜLES
Kogu süsteem (välja arvatud sond), sealhulgas pump, mahub Arduino Uno väikesesse kasti.
- TM1650 ekraan kasutab TWI -liidest, nii et SDA ja SDC juhtmed lähevad vastavalt Arduino tihvtidele A4 ja A5. Ülejäänud kaks juhet on +5v ja GND.
- RTC -plaat kasutab TWI -liidest, nii nagu eespool. (TM1650 ja RTC kasutavad erinevaid sadamaid, seega eksisteerivad nad rahulikult koos). RTC +5v tihvt on ühendatud arduino tihvtiga 12 (toiteallikaks on +5v asemel digitaalne pin). Ei mäleta, miks ma seda tegin, sa ei pea.
- L293D tihvtid on ühendatud järgmiselt: lubage (tihvt 1) asendisse D5 ja suunanupud 2 ja 7 vastavalt arduino tihvtidega D6 ja D7.
- NUPUD on ühendatud nuppudega D2, D8 ja D9 vastavalt SELECT, PLUS ja MINUS. (Nuppe rakendatakse allalastavate 10K takistitega-konfiguratsioonis "aktiivne-kõrge").
- PROBE mooduli +5v toide on ühendatud arduino kontaktiga 10 (perioodiliste mõõtmiste võimaldamiseks) ja sond analoogpistikuga A1.
MÄRKUS. Fritzingu skeemifail on lisatud githubi hoidlasse.
Samm 11: SKETCHES ja palju muud
Värskendus märtsis 2015:
- Lisatud funktsionaalsus torude tühjendamiseks pärast jootmist, et vältida hallituse teket (poiss! Mul on hea meel, et ma ei juhtinud L293D pumba pöörlemissuunda!)
- Ulatuslikum metsaraie sisaldab jootmisperioodi alguse ja lõpu kuupäeva/kellaaega, niiskuse algust ja lõppu ning seda, mitu korda pump kastmisprotsessi ajal sisse lülitas
- Vearutiini värskendati: seade lähtestatakse pärast 24 tunni möödumist veaolekusse sisenemisest
- Kompileeritud uuesti rakendusega TaskScheduler 2.1.0
- Erinevad muud veaparandused
Alates 18. novembrist 2015 uuendati APIS -i järgmiste lisafunktsioonidega:
- DirectIO teegi kasutamine kiiremaks ja lihtsamaks nööpnõelte vahetamiseks
- Ajavööndi teegi kasutamine EST ja EDT vahel õigeks vahetamiseks
- Lisatud nupu tagasilöögiloogika, kasutades ainult TaskSchedulerit
- Lisatud nupu kordamise funktsioon (väärtused tsüklit, kui nuppu vajutatakse ja hoitakse, tsükli kiirus suureneb pärast 5 tsüklit)
- Kompileeritud uuesti IDE 1.6.6 AVR 1.6.9 -ga TaskScheduler 1.8.4 vastu
- Kolis Githubi
RAAMATUKOGUD:
APIS põhineb järgmistel raamatukogudel:
- EEPROM - osa Arduino IDE -st
- Traat - osa Arduino IDE -st
- EnableInterrupt - saadaval Githubis
- Ajavöönd - saadaval Githubis
- DirectIO - saadaval Githubis
Minu poolt muudetud (hargnenud):
- Aeg - saadaval Githubis
- RTClib - saadaval Githubis
Minu poolt välja töötatud:
- TM1650 - saadaval Githubis
- TaskScheduler - saadaval Githubis
- AvgFilter - saadaval Githubis
SKETCH:
APIS -i eskiisi uusim versioon, sealhulgas fritzeerimisskeemifail, on saadaval Githubis
Andmelehed:
- L293D: siin
- RTC väljalülituslaud: siin
12. samm: *** VÕITSIME !!! ***
See projekt võitis Dexter Industriesi sponsoreeritud konkursil Koduautomaatika teise auhinna.
Vaata järgi! WOO-HOO !!!
Koduautomaatika teine auhind
Soovitan:
Arduino taimede monitor koos mulla mahtuvusanduriga - õpetus: 6 sammu
Arduino taimmonitor mulla mahtuvusanduriga - Õpetus: Selles õpetuses õpime, kuidas tuvastada mulla niiskust, kasutades mahtuvuslikku niiskussensorit koos OLED -ekraani ja Visuinoga. Vaadake videot
Päikeseenergial töötav "nutikas" WiFi -juhitav niisutussüsteem: 6 sammu (piltidega)
Päikeseenergial töötav "nutikas" WiFi -juhitav niisutussüsteem: see projekt kasutab ebay standardseid DIY päikese- ja 12 -voldiseid osi koos Shelly IoT -seadmetega ja mõningaid põhiprogramme OpenHAB -is, et luua omatehtud, täielikult päikeseenergial töötav arukas aiavõrk ja niisutus setup.System Highlights: Fu
UWaiPi - ajaga juhitav automaatne taimede kastmissüsteem: 11 sammu (koos piltidega)
UWaiPi - ajaga juhitav automaatne taimede kastmissüsteem: Tere! Kas unustasite täna hommikul oma taimi kastma? Kas plaanite puhkust, kuid mõtlete, kes hakkab taimi kastma? Noh, kui teie vastused on jah, siis on mul teie probleemile lahendus. Mul on tõesti hea meel tutvustada uWaiPi
IoT taimede jälgimissüsteem (koos IBM IoT platvormiga): 11 sammu (koos piltidega)
IoT taimede jälgimissüsteem (koos IBM IoT platvormiga): ülevaade Taimeseire süsteem (PMS) on rakendus, mis on loodud töölisklassi kuuluvatele inimestele, pidades silmas rohelist pöialt. Praegu on töötavad inimesed hõivatud kui kunagi varem; edendada oma karjääri ja hallata oma rahandust
Nutikas niisutussüsteem IoT abil # "Built on BOLT": 6 sammu (koos piltidega)
Nutikas niisutussüsteem, mis kasutab IoT -d # "Built on BOLT": Nutikas niisutussüsteem on IoT -põhine seade, mis on võimeline niisutusprotsessi automatiseerima, analüüsides mulla niiskust ja kliimatingimusi (näiteks vihma). Samuti kuvatakse andurite andmed kuvatakse graafilisel kujul BOLT