Turinys:
- 1 žingsnis: reikmenys
- 2 žingsnis: šlifavimo schema
- 3 žingsnis: Paruoškite „Raspberry Pi“
- 4 žingsnis: duomenų bazės modelis - „MySQL“
- 5 veiksmas: „Frontend“: tinklalapio serverio nustatymas
- 6 veiksmas: „Backend“
- 7 žingsnis: įdėkite LED juostelę
- 8 žingsnis: Vamzdžių įdėjimas
- 9 veiksmas: LCD ekrano įdėjimas
- 10 veiksmas: jutiklių įdėjimas ir šviesos diodų juostos prijungimas
- 11 žingsnis: „Pi“prijungimas
- 12 žingsnis: vandens talpyklos gamyba
- 13 žingsnis: galutinis rezultatas
Video: Automatinis augalų vazonas - mažas sodas: 13 žingsnių (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Aš esu Howest Kortrijk daugialypės terpės ir komunikacijos technologijų studentas. Paskutinei užduočiai atlikti turėjome sukurti savo pasirinktą daiktų interneto projektą.
Ieškodama idėjų, nusprendžiau padaryti kažką naudingo savo mamai, kuri mėgsta auginti augalus, ir pradėjau dirbti prie automatinio augalų puodo.
Pagrindinės šio automatinio augalų puodo „Little Garden“užduotys yra šios:
-
Išmatuokite
- Temperatūra
- Šviesos stiprumas
- Drėgmė
- Dirvožemio drėgmė
Išsaugokite matavimus duomenų bazėje
Pagerinkite augalų augimo sąlygas, jei tam tikra vertė yra per maža
Leiskite įrenginį stebėti ir valdyti per svetainę
Ne kiekvieną žingsnį reikia sekti iki ženklo. Daugelis įvykių gali būti jūsų asmeniniai pageidavimai arba patobulinti. Ši konstrukcija buvo sukurta taip, kad vėliau būtų galima atkurti dalis, todėl galbūt norėsite kitaip elgtis su iteracija, kad ji taptų pastovesnė
1 žingsnis: reikmenys
Daugumos šio projekto reikmenų nėra labai sunku įsigyti, nors mano atveju dirbau su daugybe perdirbtų medžiagų. Taip pat turėjau užtikrinti, kad vėliau galėčiau atgauti kai kurias medžiagas.
Pagrindiniai komponentai:
- „Raspberry Pi 4“modelis B.
- Raspberry Pi maitinimo šaltinis
- Raspberry Pi T-cobbler
- 16 GB „micro SD“kortelė
- Duonos lentos maitinimo šaltinis su 3.3V ir 5V
- Bandomoji Lenta
- 12V maitinimo šaltinis
Jutikliai:
- DHT11: drėgmės ir temperatūros jutiklis
- BH1750: šviesos intensyvumo jutiklis
- Dirvožemio drėgmės jutiklis
- MCP3008
Pavaros komponentai:
- 220 V vandens siurblys
- 12V LED juostelė
- Relės modulis „Velleman“
- 50 PATARIMAS: NPN tranzistorius
- 16x2 LCD modemo ekranas
- PCF8574a
Rezistoriai:
- 3 x 330 omų rezistoriai
- 1 x 5 kΩ rezistorius
- 2 x 10k omų rezistoriai
- 1 x 1k omo rezistorius
- 1 x 10k potencialo rezistorius
Medžiagos:
- Surenkamas šiltnamis/augalų vazonas
- Skirstomoji dėžė
- Plastikinis vandens butelis
- Pasukami
- Trumpieji laidai + įprasta viela
- Sraigtai
- Litavimo skarda + termiškai susitraukiantis vamzdis
- Dvipusis ančiukas
- Dažyti
Įrankiai:
- Klijų pistoletas
- Grąžtas
- Pjūklo pjūklas
- Lituoklis
- Dėžutės pjaustytuvas
- Dažų teptukas
Puikus šio projekto dalykas yra tai, kad jį galima išplėsti arba supaprastinti, pridedant/pašalinant komponentus ir šiek tiek pataisant kodą. Pavyzdžiui, pakeisdami 220 V siurblį 12 V siurbliu, galite išimti maitinimo adapterį iš įrenginio.
2 žingsnis: šlifavimo schema
Prietaiso duonos lentos ir elektrinės schemos pateiktos aukščiau. Čia galite pamatyti, kaip visi komponentai yra sujungti.
Bendras komponentų veikimo paaiškinimas:
- DHT11 matuoja oro drėgmę %, o temperatūrą ° C. Ryšį su juo tvarko I2C bu.
- BH1750 matuoja šviesos intensyvumą liuksais. Ryšį tvarko I2C magistralė
- Dirvožemio drėgmės jutiklis sukuria skaitmeninį signalą, kurį MCP3008 paverčia skaitomu skaitmeniniu „Raspberry Pi“signalu
- 16x2 LCD modulis vienas po kito rodo „Pi“IP adresus. Jis prijungtas prie PCF8574a, kuris gauna signalą iš „Raspberry Pi“, kuris pavers jį daugybe ekrano bitų kaiščių signalų. E ir RS kaiščiai iš LCD yra tiesiogiai prijungti prie „Pi“. Potencio rezistorius nustato ekrano ryškumą.
- Vandens siurblys yra prijungtas prie relės, esančios tarp jos ir 220 V maitinimo/lizdo. „Raspberry Pi“gali siųsti signalą į relę, kad uždarytų elektros grandinę ir įjungtų siurblį.
- LED juostelė prijungta prie 12 V maitinimo šaltinio ir TIP 50 (NPN tranzistorius), kuris perjungia elektros srovę. 1k omo rezistorius naudojamas norint apriboti „Raspberry Pi“naudojamą galią, kitaip jis būtų keptas ypač traškus.
3 žingsnis: Paruoškite „Raspberry Pi“
Jei dar neturite, turėsite įdėti vieną iš Raspberry Pi OS vaizdų į SD kortelę. Nerekomenduoju naudoti „Lite“, nes tai sukėlė problemų pradžioje. Vėliau turėsite įsitikinti, kad jūsų Pi yra atnaujintas, naudodami šias komandas, kai Pi yra prijungtas prie interneto:
- sudo apt-get atnaujinimas
- sudo apt-get atnaujinimas
Po to galite įjungti arba įdiegti projekto paketus, kad jie veiktų, naudodami raspi-config arba komandas.
- SPI
- I2C
- MySQL: kitas žingsnis
- „SocketIO“: pip įdiegti kolbą-lizdą
Po sąrankos galite pridėti reikiamus failus, parašytus html, CSS, „Javascript“ir „Python“. Visą mano kodą galima rasti mano „github“saugykloje.
4 žingsnis: duomenų bazės modelis - „MySQL“
Viršuje galite pamatyti ERD diagramą, kuri priglobta per „MariaDB“. Rekomenduoju vadovautis šiuo „MariaDB“diegimo vadovu ne tik norint įdiegti „MariaDB“, bet ir įsitikinti, kad jūsų „Pi“yra apsaugotas.
Žmonėms, kurie nori suprasti, duomenų bazė veikia taip:
Matavimai ir pavaros perjungimai saugomi kaip eilutės Metingeno lentelėje.
- metingId = matavimo/perjungimo eilutės ID
- deviceId = įrenginio, atsakingo už šią lentelės eilutę, ID
-
waarde = jutiklio matavimo arba pavaros perjungimo vertė
- jutiklis: matavimo vertė atitinkamais vienetais
- pavaros: 0 = IŠJUNGTA ir 1 = ĮJUNGTA
- commentaar = komentarai, naudojami papildomai informacijai, pvz., klaidoms, pridėti
- atskaitos taškas = data ir laikas, kada įvyko matavimas/perjungimas
Įrenginio nustatymai išsaugomi skiltyje „Nustatymai“.
- settingId = šios eilutės ID ir nustatymo vertė
- deviceID = atitinkamo įrenginio/jutiklio ID
- waarde = nustatymo vertė
- tipas = gyventojo tipas, ar jis yra maksimalus ar minimalus?
Paskutinis, bet ne mažiau svarbus dalykas - lentelėje „Įrenginiai“pateikiama informacija apie jutiklius ir pavaras.
- deviceId = įrenginio ID šioje lentelėje
- naam = įrenginio/komponento pavadinimas
- merk = prekės ženklas
- prijs = komponento kaina
- beschrijving = komponento santrauka
- eenheid = išmatuotų verčių vienetas
- typeDevice = nurodo, ar komponentas yra jutiklis, ar pavara
5 veiksmas: „Frontend“: tinklalapio serverio nustatymas
Norėdami paleisti šio įrenginio žiniatinklio serverį, „Pi“reikės įdiegti „Apache“žiniatinklio serverį. Tai galima padaryti naudojant šią komandą:
sudo apt-get įdiegti apache2.
Kai tai bus padaryta, galite pereiti į aplanką:/var/www/html. Čia turėsite įdėti visą priekinės sistemos kodą. Vėliau galite pasiekti svetainę naršydami IP adresą.
6 veiksmas: „Backend“
Norėdami paleisti užpakalinę sistemą, turėsite paleisti failą app.py rankiniu būdu arba sukurdami jam paslaugą „Pi“, kad ji būtų paleista automatiškai.
Kaip pastebėjote, yra nemažai failų. Aš kiek įmanoma atskyriau kodą, kad turėčiau aiškią kodo apžvalgą ir organizavimą.
Trumpas paaiškinimas:
app.py: pagrindinis failas, kuriame yra sujungta duomenų bazė, aparatūros kodas ir galinis kodas
config.py: „databaseRepositories“konfigūracijos failas
Saugyklos: prieigai prie duomenų saugyklos
-
Pagalbininkas
- devices_id: klasės, padedančios identifikuoti įrenginio informaciją duomenų bazėje
- LCD: paleisti PCF ir LCD
- Pavaras: pavaros veikimo klasės
- Jutikliai: jutiklių veikimo klasės
7 žingsnis: įdėkite LED juostelę
Iškirpau LED juostos gabalėlį ir priklijavau prie šiltnamio dėžutės viršaus. Mano naudojamą juostelę galima perpjauti keliose vietose ir vėl prijungti, kad galėtumėte įdėti kelias juosteles ir vėliau jas vėl prijungti per laidus, kad būtų daugiau vietos.
8 žingsnis: Vamzdžių įdėjimas
Vamzdžius galima įdėti įvairiais būdais, tačiau mano atveju aš juos pritvirtinau prie dugno šono, laikydamas juos kuo toliau nuo kitos elektronikos ir leisdamas vandeniui tiesiog tekėti į purvą.
9 veiksmas: LCD ekrano įdėjimas
Sujungimo dėžutės dangtelyje aš pjoviau visą pjūklą, sukurdamas pakankamai didelę angą, kad ekranas galėtų prasiskverbti, tačiau pakankamai mažą, kad PCB liktų už jo. Vėliau jis buvo pritvirtintas prie dangtelio, naudojant siauras.
Skystųjų kristalų ekrane rodomi „Raspberry Pi“IP adresai, leidžiantys sužinoti, kokiu adresu galite naršyti svetainėje.
10 veiksmas: jutiklių įdėjimas ir šviesos diodų juostos prijungimas
Naudodamas frizavimo schemas, aš lituojau jungtis tarp laidų ir įdėjau rezistorius į laidų vidų, naudodamas termiškai susitraukiančius vamzdžius.
Šiltnamio dangčio ir dugno šonuose buvo išpjautos skylės, kad būtų galima pritvirtinti suktukus, per kuriuos ištraukiau jutiklių ir LED juostos laidus.
Sujungiau laidus pagal funkcijas. Vielų ir susitraukimo vamzdžių įtampa laikė jutiklius. DHT11 laidams turėjau naudoti tik klijus, nes tai tęsėsi toliau.
11 žingsnis: „Pi“prijungimas
Aš iškirpiau skyles jungčių dėžutės šone, kad laidai galėtų praeiti vėliau.
Po to padėjau duonos lentą (su „T-cobbler“, PCF8574a, MCP3008, reguliuojamu pasipriešinimu ir TIP50), relę ir „Raspberry Pi“ant jungties dėžutės apačios, kuri buvo uždengta dvipuse antkaite. Maitinimo blokas netilpo ant duonos lentos, todėl turėjau jį uždėti ant šono ir prijungti prie duonos lentos naudodamas trumpiklius.
Galiausiai adapterio, jutiklio ir pavaros laidus ištraukiau per skyles, prijungtas prie duonos lentos, „Raspberry Pi“ir kitų komponentų. Siurblio viela buvo nupjauta, kad galus galėčiau įdėti į relę, kad ją būtų galima naudoti kaip jungiklį.
12 žingsnis: vandens talpyklos gamyba
Aš padariau vandens talpyklą iš 1 l plastikinio vandens buteliuko, nupjaudamas jo viršų dėžutės pjaustytuvu ir nudažęs, kad geriau atrodytų. Tada vandens siurblys buvo įdėtas į vidų. Dėl bendravimo indų taisyklės vanduo gali pats tekėti per vamzdžius, tačiau laikant vamzdį aukštyn problema išsprendžiama.
13 žingsnis: galutinis rezultatas
Akimirka, kurios laukėte. Dabar galite įdėti nešvarumus ir sėklas į šiltnamio dėžę ir leisti prietaisui užvaldyti. Svetainėje galite stebėti įrenginio būseną ir nustatyti optimalias apšvietimo ir dirvožemio sąlygų vertes.
Rekomenduoju dirvą laistyti rankiniu būdu, nes kai kurie nešvarumai iš pradžių gali būti gana sausi. Kai kurie siurbliai taip pat laisto gana lėtai, tačiau turite būti labai atsargūs, nes jie prisipildys greičiau, nei tikėjotės. Jei sodrumas viršija 80%, žemė gali labai sudrėkti. Ir įsitikinkite, kad dirvožemio drėgmės jutiklis yra pakankamai gilus.
Rekomenduojamas:
Išmanusis daiktų interneto sodas: 10 žingsnių (su nuotraukomis)
„Smart IoT Garden“: jei esate kažkas panašaus į mane, jums patinka švieži vaisiai ir daržovės savo lėkštėje, tačiau neturite pakankamai laiko tvarkingam sodui prižiūrėti. Ši pamoka parodys, kaip sukurti protingą daiktų interneto sodą (aš jį vadinu: „Green Guard“), kuris laisto jūsų plotus
„Raspberry Pi“varomas IOT sodas: 18 žingsnių (su nuotraukomis)
„Raspberry Pi“varomas IOT sodas: Vienas iš pagrindinių šio projekto tikslų buvo sugebėti išlaikyti sodo gerovę naudojant daiktų interneto (IoT) galią. Naudodami esamus įrankius ir programinę įrangą, mūsų sodintuvas yra integruotas su jutikliais, kurie
Automatinis išmanusis augalų vazonas - (pasidaryk pats, 3D spausdintas, „Arduino“, savaiminis laistymas, projektas): 23 žingsniai (su nuotraukomis)
Automatinis išmanusis augalų vazonas - (pasidaryk pats, 3D spausdintas, „Arduino“, savaiminis laistymas, projektas): Sveiki, Kartais, kai kelioms dienoms išvykstame iš namų arba esame tikrai užsiėmę, kambariniai augalai (nesąžiningai) kenčia, nes jie nėra laistomi, kai to reikia. Tai yra mano sprendimas. Tai protingas augalų puodas, kurį sudaro: įmontuotas vandens rezervuaras. Senas
Automatinis gėlių augalų laistymo projektas-arduino: 8 žingsniai (su nuotraukomis)
Automatinis gėlių augalų laistymo projektas-arduino: Sveiki, vaikinai! Šiandien aš paaiškinsiu, kaip laistyti augalus, naudojant vandens valdymo sistemą. Tai labai paprasta. Jums tiesiog reikia arduino, LCD ekrano ir drėgmės jutiklio. Nesijaudinkite žingsnis po žingsnio nurodysime procesus. taigi, ką mes darome
„EcoDuino“automatinis augalų laistymas: 8 žingsniai (su nuotraukomis)
„EcoDuino“automatinis augalų laistymas: „EcoDuino“yra „DFRobot“rinkinys, skirtas jūsų augalams laistyti automatiškai. Jis veikia su 6 AA baterijomis, kurios į komplektą neįeina. Sąranka yra labai paprasta ir apima „Arduino“pagrindu sukurtą mikrovaldiklį