Tartalomjegyzék:
- Lépés: Talajérzékelők
- 2. lépés: Állatérzékelő
- 3. lépés: Vízszivattyú vezérlő
- 4. lépés: Esőérzékelő
- 5. lépés: Állati sziréna
- 6. lépés: Fő rendszer
- 7. lépés: A webes rendszer
Videó: Vezeték nélküli kerti rendszer: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Ez a projekt az Arduino -n alapul, és "modulokat" használ a növények öntözéséhez, valamint a hőmérséklet, a talaj és az eső naplózásához.
A rendszer 2, 4 GHz -es vezeték nélküli, és NRF24L01 modulokat használ az adatok küldésére és fogadására. Hadd magyarázzam el egy kicsit, hogyan működik, PS! Elnézést, ha az angol nem 100 % -ig helyes, én Svédországból származom.
Ezt a rendszert használom a növényeim ellenőrzésére, bűnöim Különböző növényeim vannak, amelyekre szükségem volt különböző naplózáshoz. Tehát építek egy zóna alapú naplórendszert.
A Talajérzékelők, amelyek leolvassák a talaj nedvességét és hőmérsékletét (akkumulátorról működik), óránként ellenőrzik, és továbbítják az adatokat az alapgépnek, amely rendelkezik wifi kapcsolattal. Az adatokat a házamban lévő szerverre töltik fel, és bejelentkeznek egy weboldalra.
Ha a talajnak vízre van szüksége, akkor aktiválja a megfelelő szivattyút attól függően, hogy a talajérzékelő mit ellenőriz. De ha esik, akkor nem öntözik. És ha nagyon forró, akkor öntözni fog.
Tegyük fel, hogy van egy burgonya földje, egy dohányhoz és egy paradicsomhoz, akkor 3 zónája lehet 3 különböző érzékelővel és 3 szivattyúval.
Vannak pir érzékelők is, amelyek ellenőrzik a mozgásokat, és ha aktiválják őket a weboldalon, egy hangos sziréna elkezd ijeszteni az állatot vagy a növényeim közelében sétáló személyt.
Remélem, értesz egy kicsit. Most kezdjük el a som érzékelők gyártását.
A GitHub oldalam, ahonnan mindent letölthetsz:
Lépés: Talajérzékelők
Minden érzékelő egyedi számmal rendelkezik, amelyet hozzáadnak a weboldalhoz. Tehát amikor a talajérzékelő továbbítja az adatokat, a talajérzékelő a megfelelő zónába kerül. Ha az érzékelő nincs regisztrálva, akkor nem kerül adatküldésre.
Ehhez az építéshez szüksége van:
- 1x Atmega328P-PU chip
- 1x nRF24L01 modul
- 1x 100 uf kondenzátor
- 1x NPN BC547 tranzisztor
- 2x 22 pF kondenzátor
- 1x 16.000 MHz -es kristály
- 1x talajnedvesség érzékelő
- 1x DS18B20 hőmérséklet érzékelő
- 1x RGB LED (közös anódot használok)
- 3x 270 ohmos ellenállás
- 1x 4,7 K ohm ellenállás
- Akkumulátor (3,7 V-os Li-Po akkumulátort használok)
- És ha li-po-t használ, akkor töltőmodult az akkumulátorhoz.
Annak érdekében, hogy az érzékelők hosszú ideig működjenek, ne használjon előre elkészített Arduino kártyát, mert gyorsan lemerítik az akkumulátort. Ehelyett használja az Atmega328P chipet.
Csatlakoztasson mindent úgy, ahogy az elektromos lapon látható. (Lásd a képet vagy a PDF -fájlt.) Javasoljuk, hogy adjon hozzá egy tápkapcsolót is, hogy letörölje az áramot töltés közben.
A kód feltöltésekor ne felejtse el meghatározni az érzékelőt, hogy egyedi azonosító számot kapjon, a kód elérhető a GitHub oldalamon.
Annak érdekében, hogy a talajérzékelők hosszú ideig életben maradjanak, NPN tranzisztorral táplálom őket, csak akkor, amikor a leolvasás megkezdődik. Tehát nem aktiválódnak állandóan, Minden érzékelő azonosító száma 45XX és 5000 között van (ez megváltoztatható), így minden érzékelőnek egyedi számokkal kell rendelkeznie, mindössze annyit kell tennie, hogy definiálja a kódot.
Az érzékelők alvó állapotba kerülnek az akkumulátor kímélése érdekében.
2. lépés: Állatérzékelő
Az Animal Sensor egy egyszerű pir érzékelő. Érzi az állatok vagy emberek hőségét. Ha az érzékelő mozgást érzékel. Elküldik a bázisállomásra.
De nem fog riasztás bekapcsolni, ehhez aktiválni kell az oldalon, vagy ha beállított egy időzítőt, akkor automatikusan aktiválódik.
Ha a bázis mozgásjelet kap az Állatérzékelőtől, akkor továbbítja a Sziréna érzékelőnek, és (remélem) elriasztja az állatot. A szirénám 119 db -nál van.
A pir érzékelő akkumulátorról működik, és egy régi riasztóból származó régi pir érzékelő tokba helyeztem. Az állat -érzékelőből érkező kábel csak az akkumulátor feltöltésére szolgál.
Ehhez az érzékelőhöz szüksége van:
- ATMEGA328P-PU chip
- 1 x 16 000 MHz -es kristály
- 2 x 22 pF kondenzátor
- 1 x Pir érzékelő modul
- 1 x 100 uF kondenzátor
- 1 db NRF24L01 modul
- 1 x LED (itt nem használok RGB ledet)
- 1 x 220 ohmos ellenállás
- Ha akkumulátorról fog működni, akkor erre szüksége lesz (én Li-Po-t használok)
- Akkumulátor töltő modul, ha van újratölthető akkumulátora.
- Valami tápkapcsoló.
Csatlakoztasson mindent úgy, ahogy látja az elektromos lapon. Ellenőrizze, hogy a pir érzékelőjét akkumulátorról tudja -e táplálni (néhánynak 5 V -os működésre van szüksége).
Szerezze be a kódot a GitHub -ból, és határozza meg a használni kívánt boszorkányérzékelőt (pl. SENS1, SENS2 stb.), Hogy egyedi számokat kapjon.
Az ATMEGA chip csak akkor ébred fel, ha a mozgás regisztrálva van. Ha a pir érzékelő modul beépített késleltetési időzítőt tartalmaz, erre nincs semmi kód, ezért állítsa be a pir érzékelő edényét a késleltetésre, mert ébren lesz.
Ennyi az állatérzékelőre, továbblépünk.
3. lépés: Vízszivattyú vezérlő
A vízszivattyú -vezérlőnek szivattyút vagy vízszelepet kell indítania a mezők öntözésére. Ehhez a rendszerhez nincs szükség akkumulátor -bűnre, a szivattyú működtetéséhez áramellátásra van szüksége. AC 230 - DC 5 V modult használok egy Arduino futtatásához Nano. Szintén szivattyútípusokra van szükségem, egy olyanra, amely 12 V -os vízszelepet használ, ezért van egy 230 V -DC 12 V -os modulom a relélaphoz.
A másik 230 V -os bemenet a relébe, így 230 V -os váltóáramú szivattyút tudok táplálni.
A rendszer meglehetősen egyszerű, minden szivattyúvezérlő egyedi azonosítószámokkal rendelkezik, tehát tegyük fel, hogy a burgonyatábla száraz, és az érzékelő automatikus vízre van állítva, majd a burgonyatábla szivattyúját hozzáadják ehhez az érzékelőhöz, tehát a talajérzékelő azt mondja az alaprendszernek, hogy az öntözést meg kell kezdeni, ezért az alaprendszer jelet küld a szivattyúnak az aktiváláshoz.
Beállíthatja, hogy mennyi ideig kelljen futnia a weboldalon (például 5 perc), ha az érzékelők csak óránként ellenőrzik. A szivattyú leállításakor is eltárolja az időt a rendszerben, így az automatikus rendszer nem indítja el hamarosan a szivattyút. (A weboldalon is beállítható).
A weboldalon speciális időpontok beállításával letilthatja az öntözést éjszaka/nappal. És állítson be időzítőt minden szivattyúhoz az öntözés megkezdéséhez. És ha esik, nem öntözik.
Remélem megérted:)
Ehhez a projekthez szüksége van:
- 1 x Arduino Nano
- 1 db NRF24L01 modul
- 1 x 100 uF kondenzátor
- 1 RGB LED (közös anódot használok)
- 3 x 270 ohmos ellenállás
- 1 x relé tábla
Csatlakoztasson mindent elektromos lapként (lásd pdf fájl vagy kép) Töltse le a kódot a GitHub -ból, és ne felejtse el meghatározni az érzékelő számát.
És most van egy szivattyúvezérlője, a rendszer nem csak egyet tud kezelni.
4. lépés: Esőérzékelő
Az esőérzékelőt az eső érzékelésére használják. Nem kell egynél több. De lehet még többet is hozzáadni. Ez az esőérzékelő akkumulátorral működik, és 30 percenként ellenőrzi az esőt. Egyedi számmal is azonosítják őket.
Az esőérzékelő analóg és digitális csapokat használ. A digitális csapnak ellenőriznie kell, hogy esik -e az eső (a digitális kijelzőn csak igen vagy nem), és be kell kapcsolni az edényt az esőérzékelő modulon, amikor rendben van, hogy figyelmeztessen az esőre (az érzékelő vízszintje esőt jelez.)
Az analóg csap segítségével százalékosan tájékoztathatja, hogy mennyire nedves az érzékelő.
Ha a digitális csap érzékeli, hogy esik az eső, az érzékelő elküldi azt az alaprendszerhez. És az alaprendszer nem öntözi a növényeket, amíg "esik". Az érzékelő azt is jelzi, hogy mennyire nedves és az akkumulátor állapotát.
Csak akkor működtetjük az esőérzékelőt, ha eljött az idő a digitális tüske segítségével működő tranzisztoron keresztül.
Ehhez az érzékelőhöz szüksége van:
- ATMEGA328P-PU chip
- 1x 16 000 MHz -es kristály
- 2x 22 pF kondenzátor
- 1x esőérzékelő modul
- 1x 100 uF kondenzátor
- 1x NRF24L01 modul
- 1x RGB LED (közös anódot használtam, ez VCC a GND helyett)
- 3x 270 Ohm ellenállás
- 1x NPN BC547 tranzisztor
- 1x akkumulátor (Li-Po-t használok)
- 1x Li-Po töltő modul (ha használt Li-Po akkumulátor)
Csatlakoztasson mindent úgy, ahogy az elektromos lapon látja (pdf -ben vagy a képen) Ezután töltse fel a kódot az ATMEGA chipre, amint azt a GitHub oldalamon az Esőérzékelő alatt találja. Ne felejtse el meghatározni az érzékelőt, hogy megkapja a megfelelő azonosító számot.
És most lesz egy esőérzékelője, amely 30 percenként üzemel. Ezen az időn változtathat, ha kevesebbet vagy többet szeretne.
A function counterHandler () programban beállíthatja a chip ébresztési idejét. Így számol: A chipek 8 másodpercenként ébrednek fel, és minden alkalommal növeli az értéket. Tehát 30 percig 225 -ször kap, mielőtt műveleteket hajtana végre.. Tehát fél óra alatt 1800 másodperc van. Tehát oszd el 8 -mal (1800 /8), és 225 -öt kapsz. Ez azt jelenti, hogy nem fogja ellenőrizni az érzékelőt, amíg nem fut 225 alkalommal, és ez körülbelül 30 perc lesz. Ugyanezt kell tennie a talajérzékelővel is.
5. lépés: Állati sziréna
Az állati sziréna egyszerű, ha az állatérzékelő mozgást észlel, a sziréna aktiválódik. Valódi szirénát használok, így akár meg is ijeszthetem az embereket. De olyan szirénákat is használhat, amelyeket csak az állatok hallanak.
Arduino nano -t használok ebben a projektben, és 12V -ról táplálom. A sziréna is 12 V -os, így a relé helyett 2N2222A tranzisztorral fogom engedélyezni a szirénát. Ha relét használ, ha ugyanaz a talaj, akkor károsíthatja az Arduino -t. Ezért ezért inkább tranzisztort használok a sziréna engedélyezéséhez.
De ha a sziréna és az Arduino nem ugyanazt a földet használja, akkor használhat relét. Hagyja ki a tranzisztor és a 2.2K ellenállást, és használjon helyette egy relé táblát. És az Arduino kód változása is, ha az aktiválás HIGH -ról LOW -ra változik, és ha inaktiválva van, LOW -ról HIGH -ra vagy digitális leolvasásra változik a 10 -es érintkezőre, akkor a relé LOW -t használ az aktiváláshoz, a tranzisztor pedig HIGH -t, ezért ezt át kell kapcsolni.
Ehhez az építéshez szüksége van:
- 1x Arduino nano
- 1x 2,2K ellenállás (ugorjon át relé tábla használata esetén)
- 1x 2N2222 tranzisztor
- 1x sziréna
- 3x 270 Ohm ellenállás
- 1x RGB LED (GND helyett közös anódot használok, VCC)
- 1X NRF24L01 modul
- 1x 100 uF kondenzátor
Csatlakoztasson mindent, ahogy az elektromos lapon PDF -ben vagy a képen látja. Töltse fel a kódot az Arduino -ba, amelyet a GitHub oldalamon az Animal Siren alatt talál. Ne felejtse el meghatározni az érzékelőt a megfelelő azonosítószámhoz.
És most van egy működő szirénája.
6. lépés: Fő rendszer
A fő rendszer a legfontosabb az összes modul közül. Enélkül nem használhatja ezt a rendszert. A fő rendszer az ESP-01 modullal csatlakozik az internethez, és a csatlakoztatáshoz Arduino Megas Serial1 csapokat használunk. Az RX a Mega -tól a TX -ig az ESP -n, de két ellenálláson kell átmennünk, hogy a feszültséget 3.3 -ra csökkentsük. És a TX a Mega -ról az RX -re az ESP -n.
Állítsa be az ESP modult
Az ESP használatához először az adatátviteli sebességet 9600 -ra kell állítani, ezt használtam ebben a projektben, és azt tapasztaltam, hogy az ESP működik a legjobban. A dobozból 115200 baud sebességre van állítva, kipróbálhatja, de az enyém nem volt olyan stabil. Ehhez szüksége van egy Arduino -ra (a Mega jól működik), és csatlakoztatnia kell az ESP TX -jét (az ellenállásokon keresztül, ahogy a lapon látható) a Serial TX -hez (nem Serial1, ha Mega -t használ), és az RX -t az ESP -n az Arduino Serial -hoz RX.
Töltsön fel villogó vázlatot (vagy bármilyen vázlatot, amely nem használ soros), és nyissa meg a soros monitort, és állítsa az adatátviteli sebességet 115200 -ra, és NR & CR -t a vonalakra
A parancssorba írjon AT és nyomja meg az enter billentyűt. Választ kell kapnia, amely azt mondja, hogy OK, így most már tudjuk, hogy az ESP működik. (Ha nem, akkor csatlakozási probléma vagy rossz ESP-01 modul)
Most írja be a parancssorba, hogy AT+UART_DEF = 9600, 8, 1, 0, 0, és nyomja meg az enter billentyűt.
OK -val válaszol, és ez azt jelenti, hogy az átviteli sebességet 9600 -ra állítottuk. Indítsa újra az ESP -t a következő paranccsal: AT+RST, és nyomja meg az enter billentyűt. Módosítsa az átviteli sebességet a soros monitoron 9600 -ra, és írja be az AT -t, és nyomja meg az enter gombot. Ha minden rendben van, az ESP 9600 -ra van beállítva, és használhatja a projekthez.
Az SD kártya modul
Szeretném, ha könnyen megváltoztatná a rendszer WIFI -beállításait, ha új jelszót vagy wifi nevet változtatna. Ezért van szükségünk az SD kártya modulra. Az SD -kártyán belül hozzon létre egy config.txt nevű szöveges fájlt, és olvasáshoz JSON -t használunk, ezért JSON -formátumra van szükségünk. Tehát a szöveges fájlnak a következő szöveggel kell rendelkeznie:
}
Módosítsa a szöveget a BIG betűkkel, hogy megfeleljen a wifi hálózatának.
Az általunk használt bűnök NRF24L01, amely SPI -t használ, és az SD -kártyaolvasó is SPI -t használ, szükségünk van az SDFat könyvtárra, hogy használhassuk a SoftwareSPI -t (az SD -kártyaolvasót bármilyen csaphoz hozzáadhatjuk)
DHT érzékelő
Ez a rendszer kívül helyezkedik el, és DHT érzékelővel rendelkezik, így ellenőrizni tudjuk a levegő páratartalmát és hőmérsékletét. Forró napokon extra öntözésre használják.
Ehhez az építéshez szüksége van:
- 1x Arduino Mega
- 1x NRF24L01 modul
- 1x ESP-01 modul
- 1x SPI Micro SD kártya modul
- 1x DHT-22 érzékelő
- 1x RGB LED (GND helyett közös anódot használtam, VCC)
- 3x 270 Ohm ellenállás
- 1x 22 K ohmos ellenállás
- 2x 10 K ohmos ellenállás
Kérjük, vegye figyelembe, hogy ha nem kap stabil ESP-01 modult, próbálja meg külső 3,3 V-os áramforrásról táplálni.
Csatlakoztasson mindent úgy, ahogy a PDF fájl elektromos lapján vagy a képen látja.
Töltse fel a kódot az Arduino Mega készülékére, és ne felejtse el ellenőrizni a teljes kódot megjegyzésekhez, mert a gazdagépet több helyen kell a szerverre állítani (ez nem a legjobb megoldás, amit tudok).
Most az Ön alaprendszere használatra kész. Nem kell módosítania a talajnedvesség bűneinek kódjában szereplő változókat, ezt a weboldalon is megteheti.
7. lépés: A webes rendszer
A rendszer használatához webszerverre is szükség van. Egy málna pi -t használok Apache, PHP, Mysql, Gettext használatával. A webes rendszer többnyelvű, így könnyen elkészítheti az Ön nyelvén. Svédül és angolul jön (az angolban lehet helytelen angol, az én fordításom nem 100 %.) Tehát telepítenie kell a Gettext -et az Ön szerverére, és a területi beállításokat is.
Mutatok néhány fenti képernyőképet a rendszerből.
Egyszerű bejelentkezési rendszerrel rendelkezik, és a fő bejelentkezés: admin mint felhasználó, és víz, mint jelszó.
A használatához három cron feladatot kell beállítania (ezeket a cronjob mappa alatt találja)
A timer.php fájlt, amelyet másodpercenként kell futtatnia. Ez a furatrendszer összes automatizálását tartalmazza. A temperatur.php fájlnév segítségével a rendszer felkéri a rendszert a levegő hőmérsékletének leolvasására és naplózására. Tehát be kell állítania egy cron feladatot, hogy milyen gyakran fogja futtatni. 5 percenként van. Ezután a dagstatistik.php nevű fájl csak egyszer fuss éjfél előtt (például 23:30, 23:30). Napközben veszi az érzékelőktől kapott értékeket, és elmenti a heti és havi statisztikákra.
Kérjük, vegye figyelembe, hogy ez a rendszer Celsius -fokban tárolja a hőmérsékletet, de Ön Fahrenheit -fokra állíthatja be.
A db.php fájlban állítsa be a rendszer mysql adatbázis -kapcsolatát.
Először adja hozzá az érzékelőket a rendszerhez. Ezután készítsen zónákat, és adjon hozzá érzékelőket a zónákhoz.
Ha kérdései vannak, vagy hibákat talál a rendszerben, kérjük, jelentse őket a GitHub oldalon. Használhatja a webrendszert, és nem adhatja el.
Ha problémái vannak a gettext területi beállításaival, ne feledje, hogy ha málnát használ szerverként, akkor gyakran az en_US. UTF-8 nevet kapja, így ezeket a módosításokat az i18n_setup.php fájlban és a locale mappában kell elvégeznie. Ellenkező esetben megragad a svéd nyelv.
Letöltöd a GitHub oldaláról.
Ajánlott:
Vezeték nélküli Arduino robot a HC12 vezeték nélküli modul használatával: 7 lépés
Vezeték nélküli Arduino robot a HC12 vezeték nélküli modul használatával: Hé srácok, üdv újra. Korábbi hozzászólásomban elmagyaráztam, hogy mi az a H -híd áramkör, az L293D motorvezérlő IC, a malackalapú L293D motorvezérlő IC a nagyáramú motorvezérlők vezetéséhez, és hogyan tervezheti meg és készítheti el saját L293D motorvezérlő tábláját
Távirányítású autó - Vezeték nélküli vezeték nélküli Xbox 360 vezérlővel: 5 lépés
Távirányítású autó - vezérelhető a vezeték nélküli Xbox 360 vezérlő használatával: Ezek az utasítások saját távirányítású autó létrehozásához, vezeték nélküli Xbox 360 vezérlővel vezérelhetők
Ötven méter hatótávolságú vezeték nélküli hozzáférési pont TP Link WN7200ND USB vezeték nélküli adapterrel Raspbian Stretch -en: 6 lépés
Ötven méter hatótávolságú vezeték nélküli hozzáférési pont TP Link WN7200ND USB vezeték nélküli adapterrel a Raspbian Stretch -en: A Raspberry Pi kiválóan alkalmas biztonságos vezeték nélküli hozzáférési pontok létrehozására, de nem rendelkezik jó hatótávolsággal, TP Link WN7200ND USB vezeték nélküli adaptert használtam annak kiterjesztéséhez. Szeretném megosztani, hogyan kell csinálniMiért akarok málna pi -t használni router helyett? T
DIY vezeték nélküli mikrofon vezeték nélküli gitárrendszerhez: 4 lépés
DIY Wireless Mic to Wireless Guitar System: Néztem néhány videót és néhány zenekart, és szinte közülük vezeték nélküli rendszert használ a gitáron. Megőrülök, mozogok, sétálok, és azt csinálok, amit akarnak, anélkül, hogy a zsinórt használnám, ezért arról álmodozom, hogy lesz egy .. De .. nekem ez most túl drága, ezért erre jutottam
Hackeljen be egy vezeték nélküli kaputelefont egy vezeték nélküli riasztókapcsolóba vagy be/ki kapcsolóba: 4 lépés
Hackeljen be egy vezeték nélküli kaputelefont egy vezeték nélküli riasztókapcsolóba vagy be/ki kapcsolóba: Nemrég építettem egy riasztórendszert, és telepítettem a házamba. Mágneses kapcsolókat használtam az ajtókon, és bekötöttem a padláson. Az ablakok egy másik történet, és a kemény huzalozás nem volt lehetőség. Szükségem volt egy vezeték nélküli megoldásra, és ez