Sisällysluettelo:
- Vaihe 1: Maaperän anturit
- Vaihe 2: Eläinanturi
- Vaihe 3: Vesipumpun ohjain
- Vaihe 4: Sadetunnistin
- Vaihe 5: Eläinsireeni
- Vaihe 6: Pääjärjestelmä
- Vaihe 7: Web -järjestelmä
Video: Langaton puutarhajärjestelmä: 7 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Tämä projekti perustuu Arduinoon, ja se käyttää "moduuleja", jotka auttavat sinua kastelemaan kasvejasi ja kirjautumaan lämpötilaan, maaperään ja sateeseen.
Järjestelmä on langaton 2, 4 GHz: n kautta ja käyttää NRF24L01 -moduuleja tietojen lähettämiseen ja vastaanottamiseen. Sallikaa minun selittää hieman, miten se toimii, PS! Anteeksi, jos englanti ei ole 100 % oikein, olen Ruotsista.
Käytän tätä järjestelmää hallitakseni kasvejani, syntejä minulla on erilaisia kasveja, jotka tarvitsin kirjatakseni ne erilaiksi.
Maaperän anturit, jotka lukevat maaperän kosteuden ja lämpötilan (toimivat akulla), tarkistavat joka tunti ja välittävät tiedot peruskoneelle, jolla on wifi -yhteys. Tiedot ladataan kotini palvelimelle ja kirjaudutaan verkkosivulle.
Jos maaperä tarvitsee vettä, se aktivoi oikean pumpun sen mukaan, mitä maaperän anturi on tarkistanut. Mutta jos sataa, se ei kastele. Ja jos se on todella kuuma, se kastaa hieman ylimääräistä.
Oletetaan, että sinulla on yksi perunamaa, yksi tupakalle ja yksi tomaatille, niin sinulla voi olla 3 vyöhykettä, joissa on 3 eri anturia ja 3 pumppua.
On myös pir -antureita, jotka tarkistavat liikkeet, ja jos ne aktivoidaan verkkosivulla, kova sireeni alkaa pelotella eläintä tai ihmistä, joka kulkee kasvieni lähellä.
Toivottavasti ymmärrät vähän. Aloitetaan nyt som -antureiden valmistus.
Oma GitHub-sivuni, josta lataat kaiken:
Vaihe 1: Maaperän anturit
Jokaisella anturilla on yksilöllinen numero, joka lisätään verkkosivulle. Joten kun maaperäanturi lähettää tietoja kyseisestä maaperäanturista lisätään oikeaan vyöhykkeeseen. Jos anturia ei ole rekisteröity, tietoja ei lähetetä.
Tätä rakennetta varten tarvitset:
- 1x Atmega328P-PU-siru
- 1x nRF24L01 -moduuli
- 1x 100 uf kondensaattori
- 1x NPN BC547 -transistori
- 2x 22 pF kondensaattorit
- 1x 16.000 MHz kristalli
- 1x maaperän kosteusanturi
- 1x DS18B20 lämpötila -anturi
- 1x RGB -ledi (käytän yleistä anodia)
- 3x 270 ohmin vastukset
- 1x 4,7 K ohmin vastus
- Akku (käytän 3,7 V: n Li-Po-akkua)
- Ja jos käytetään li-po: ta, laturin akku.
Jotta anturit eivät toimi pitkään, älä käytä mitään valmiita Arduino -kortteja, ne tyhjentävät akun nopeasti. Käytä sen sijaan Atmega328P -sirua.
Yhdistä kaikki sähkölaskeni osoittamalla tavalla. (Katso kuva tai PDF -tiedosto) Suosittelemme myös virtakytkimen lisäämistä, jotta voit katkaista virran latauksen aikana.
Kun lähetät koodin, älä unohda määrittää anturia, joka antaa heille yksilöllisen tunnusnumeron, koodi on saatavana GitHub -sivultani.
Jotta maaperän anturit pysyisivät elossa pitkään, käytän niitä NPN -transistorilla vain lukemisen alkaessa. Joten niitä ei aktivoida koko ajan, Jokaisella anturilla on ID -numero välillä 45XX - 5000 (tämä voidaan muuttaa), joten jokaisella anturilla on oltava yksilölliset numerot, sinun tarvitsee vain määritellä koodi.
Anturit menevät nukkumaan akun säästämiseksi.
Vaihe 2: Eläinanturi
Animal Sensor on yksinkertainen pir -anturi. Se aistii eläinten tai ihmisten lämmön. Jos anturi havaitsee liikettä. He lähettävät tukiasemalle.
Mutta mitään hälytystä ei anneta, jotta voit tehdä sen, sivulla, joka sinun on aktivoitava, tai jos olet asettanut ajastimen, se aktivoituu automaattisesti silloin.
Jos tukikohta saa liikesignaalin eläinsensorilta, se välittää sen sireenianturille ja se (toivottavasti) pelottaa eläimen pois. Sireeni on 119 db.
Pir -anturi toimii paristolla ja olen asettanut sen vanhaan hälytyksen koteloon. Eläinanturista tuleva kaapeli on vain akun lataamiseen.
Tätä anturia varten tarvitset:
- ATMEGA328P-PU-siru
- 1 x 16 000 MHz: n kristalli
- 2 x 22 pF kondensaattori
- 1 x Pir -anturimoduuli
- 1 x 100 uF kondensaattori
- 1 x NRF24L01 -moduuli
- 1 x LED (en käytä mitään RGB -lediä täällä)
- 1 x 220 ohmin vastus
- Jos käytät akkua, tarvitset sitä (käytän Li-Po: ta)
- Akkulaturi, jos sinulla on ladattava akku.
- Jonkinlainen virtakytkin.
Kytke kaikki sähköverkkoon kuten näet. Tarkista, että voit käyttää pir -anturia virtalähteestäsi (jotkut tarvitsevat 5 V: n toimiakseen).
Hanki koodi GitHubistani ja määritä käyttämäsi noita -anturi (esim. SENS1, SENS2 jne.), Jotta he saavat yksilöllisiä numeroita.
ATMEGA -siru herää vasta, kun liike rekisteröidään. Koska pir -anturimoduulissa on sisäänrakennettu viiveajastin, koodissa ei ole mitään, joten säädä pir -anturin potti viiveelle, jolloin se herää.
Se on eläintunnistimelle, jatkamme eteenpäin.
Vaihe 3: Vesipumpun ohjain
Vesipumpun ohjaimen on käynnistettävä pumppu tai vesiventtiili peltosi kastelua varten. Ei tarvitse tässä järjestelmässä paristoja, tarvitset virtaa pumpun käyttämiseen. Käytän AC 230 - DC 5 V -moduulia Arduinon käyttämiseen Nano. Minulla on myös pumpputyyppejä, yksi, joka käyttää vesiventtiiliä, joka toimii 12 voltilla, joten minulla on AC 230 - DC 12v -moduuli relelevylle.
Toinen on 230 AC tulo releeseen, jotta voin syöttää 230 V AC -pumpun.
Järjestelmä on melko yksinkertainen, jokaisella pumppuohjaimella on yksilölliset tunnusnumerot, joten sanotaan, että perunakenttä on kuiva ja anturi on asetettu automaattiseen veteen, sitten perunapeltoa varten tarkoitettu pumppu lisätään tähän anturiin, joten maaperäanturi kertoo perusjärjestelmälle, että kastelun pitäisi alkaa, joten perusjärjestelmä lähettää signaalin kyseiselle pumpulle aktivoituakseen.
Voit määrittää, kuinka kauan sen pitäisi toimia verkkosivulla (esimerkiksi 5 minuuttia), kun anturit tarkistavat vain tunnin välein. Myös kun pumppu pysähtyy, se tallentaa ajan järjestelmään, joten automaattinen järjestelmä ei käynnistä pumppua pian. (Mahdollista asentaa myös verkkosivulle).
Voit myös poistaa verkkosivun kastelun käytöstä yöllä/päivällä asettamalla erikoisajat. Ja myös aseta ajastimet kullekin pumpulle kastelun aloittamiseksi. Ja jos sataa, ne eivät kastella.
Toivottavasti ymmärrät:)
Tätä projektia varten tarvitset:
- 1 x Arduino Nano
- 1 x NRF24L01 -moduuli
- 1 x 100 uF kondensaattori
- 1 RGB Led (käytän yleistä anodia)
- 3 x 270 ohmin vastukset
- 1 x relelevy
Yhdistä kaikki sähkölevyksi (katso pdf -tiedosto tai kuva) Lataa koodi GitHubista ja muista määrittää anturin numero.
Ja nyt sinulla on pumpun ohjain, järjestelmä pystyy käsittelemään useampaa kuin yhtä.
Vaihe 4: Sadetunnistin
Sadetunnistinta käytetään sateen havaitsemiseen. Et tarvitse useampaa kuin yhtä. Mutta on mahdollista lisätä lisää. Tämä sadetunnistin on paristokäyttöinen ja tarkistaa sateen 30 minuutin välein.
Sadetunnistin käyttää analogisia ja digitaalisia nastoja. Digitaalisen nastan tarkoituksena on tarkistaa, sataako, (digitaalinen näyttö näyttää vain kyllä tai ei) ja sinun on asetettava kattila sadeanturimoduuliin päälle, kun on hyvä varoittaa "sateesta" (veden taso anturissa, joka osoittaa sateen.)
Analogista tappia käytetään ilmoittamaan prosentteina kuinka märkä se on anturissa.
Jos digitaalinen tappi havaitsee sateen, anturi lähettää sen perusjärjestelmään. Ja pohjajärjestelmä ei kastele kasveja niin kauan kuin "sataa". Anturi ilmoittaa myös kuinka märkä se on ja akun tilan.
Käynnistämme sadetunnistimen vain, kun on aika lukea transistorin läpi, joka mahdollistaa digitaalisen nastan.
Tätä anturia varten tarvitset:
- ATMEGA328P-PU-siru
- 1x 16 000 MHz: n kristalli
- 2x 22 pF kondensaattori
- 1x sadetunnistinmoduuli
- 1x 100 uF kondensaattori
- 1x NRF24L01 -moduuli
- 1x RGB Led (käytin tavallista anodia, se on VCC GND: n sijaan)
- 3x 270 ohmin vastukset
- 1x NPN BC547 -transistori
- 1x akku (käytän Li-Po)
- 1x Li-Po-laturimoduuli (jos käytetään Li-Po-akkua)
Kytke kaikki kuten sähkölehdellä (pdf -muodossa tai kuvassa). Lähetä sitten koodi ATMEGA -sirulle, kuten löydät GitHub -sivultani sadetunnistimen alta. Älä unohda määritellä anturia saadaksesi oikea tunnusnumero.
Ja nyt sinulla on sadetunnistin, joka toimii 30 minuutin välein. Voit muuttaa tämän ajan, jos et halua sitä vähemmän tai enemmän.
Funktiolaskurissa () voit asettaa sirun herätysajan. Lasket näin: Pelimerkit heräävät 8 sekunnin välein ja joka kerta, kun arvo kasvaa.. Joten puoli tuntia on 1800 sekuntia. Jaa se 8: lla (1800 /8), niin saat 225. Se tarkoittaa, että se ei tarkista anturia ennen kuin se käy 225 kertaa ja se on noin 30 minuuttia. Teet saman myös maaperäanturille.
Vaihe 5: Eläinsireeni
Eläinsireeni on yksinkertainen, kun eläinanturi havaitsee liikkeen, sireeni aktivoituu. Käytän todellista sireenia, joten voin jopa pelotella ihmisiä sen kanssa. Mutta voit käyttää myös sireenejä, joita vain eläimet kuulevat.
Käytän Arduino nanoa tässä projektissa ja käytän sitä 12V: lla. Sireeni on myös 12 V, joten releen sijasta käytän 2N2222A -transistoria sireenin aktivoimiseksi. Jos käytät relettä samalla maalla, voit vahingoittaa Arduinoa. Siksi käytän sireenin sijasta transistoria.
Mutta jos sireeni ja Arduino eivät käytä samaa maata, voit käyttää sen sijaan relettä. Ohita transistori ja 2.2K -vastus ja käytä sen sijaan relekorttia. Ja myös Arduino -koodin muutos, kun aktivoitu muuttuu HIGH: sta LOW: ksi ja kun inaktivoitu muuttuu LOW: sta HIGH tai digitaaliseksi lukemaksi nastalle 10, synnit rele käyttää LOW aktivoidakseen ja transistori käyttää HIGH: ta, joten sinun on vaihdettava tämä.
Tätä rakennetta varten tarvitset:
- 1x Arduino nano
- 1x 2,2K vastus (ohita, jos käytät relelevyä)
- 1x 2N2222 Transistori
- 1x Sireeni
- 3x 270 ohmin vastus
- 1x RGB Led (käytän yleistä anodia, VCC GND: n sijasta)
- 1X NRF24L01 -moduuli
- 1x 100 uF kondensaattori
Kytke kaikki PDF -muodossa tai kuvassa näkyvät sähköiset tiedot. Lataa koodi Arduinolle, jonka löydät GitHub -sivultani Animal Siren -kohdasta Älä unohda määrittää anturia oikealle tunnusnumerolle.
Ja nyt sinulla on toimiva sireeni.
Vaihe 6: Pääjärjestelmä
Pääjärjestelmä on kaikista moduuleista tärkein. Ilman sitä et voi käyttää tätä järjestelmää. RX Megasta TX: ään ESP: ssä, mutta meidän on käytävä kahden vastuksen läpi, jotta jännite saadaan alas 3.3. Ja lähetys Megalta RX: lle ESP: llä.
Määritä ESP -moduuli
Jotta voit käyttää ESP: tä, sinun on ensin asetettava sen baudinopeudeksi 9600, sitä olen käyttänyt tässä projektissa ja olen huomannut, että ESP toimii parhaiten. Laatikosta se asetettiin 115200 baudinopeuteen, voit kokeilla sitä, mutta minun ei ollut niin vakaa. Tätä varten tarvitset Arduinon (Mega toimii hyvin) ja sinun on liitettävä ESP: n lähetin (vastuksen kautta, kuten taulukossa näkyy) Serial TX: hen (ei Serial1, jos käytät Megaa) ja RX ESP: ssä Arduino Serialiin RX.
Lataa vilkkuva luonnos (tai mikä tahansa luonnos, joka ei käytä sarjaa) ja avaa sarjamonitori ja aseta baudinopeudeksi 115200 ja NR & CR linjoille
Kirjoita komentoriville AT ja paina enter. Sinun pitäisi saada vastaus, joka sanoo OK, joten nyt tiedämme, että ESP toimii. (Jos ei, yhteysongelma tai viallinen ESP-01-moduuli)
Kirjoita nyt komentoriville AT+UART_DEF = 9600, 8, 1, 0, 0 ja paina enter.
Se vastaa OK -painikkeella ja tämä tarkoittaa, että olemme asettaneet siirtonopeudeksi 9600. Käynnistä ESP uudelleen seuraavalla komennolla: AT+RST ja paina enter. Vaihda sarjamonitorin siirtonopeudeksi 9600 ja kirjoita AT ja paina enter. Jos saat OK takaisin, ESP on asetettu 9600: lle ja voit käyttää sitä projektissa.
SD -korttimoduuli
Haluan, että järjestelmän WIFI -asetusten muuttaminen on helppoa, jos uusi salasana vaihtuu tai wifi -nimi. Siksi tarvitsemme SD -korttimoduulin. Luo SD -kortin sisälle tekstitiedosto nimeltä config.txt ja käytämme JSON -lukemista, joten tarvitsemme JSON -muodon. Joten tekstitiedostossa pitäisi olla seuraava teksti:
}
Muuta tekstiä isoilla kirjaimilla, jotta se sopii wifi -verkkoon.
Sins, jota käytämme NRF24L01, joka käyttää SPI: tä ja SD -kortinlukija käyttää myös SPI: tä, jota meidän on käytettävä SDFat -kirjastoa varten, jotta voimme käyttää SoftwareSPI: tä (voimme lisätä SD -kortinlukijan mihin tahansa nastaan)
DHT -anturi
Tämä järjestelmä on sijoitettu ulos ja siinä on DHT -anturi, jotta voimme tarkistaa ilman kosteuden ja lämpötilan. Sitä käytetään ylimääräiseen kasteluun kuumina päivinä.
Tätä rakennetta varten tarvitset:
- 1x Arduino Mega
- 1x NRF24L01 -moduuli
- 1x ESP-01-moduuli
- 1x SPI Micro SD -korttimoduuli
- 1x DHT-22-anturi
- 1x RGB Led (käytin tavallista anodia, VCC GND: n sijasta)
- 3x 270 ohmin vastukset
- 1x 22 K ohmin vastus
- 2x 10 K ohmin vastus
Huomaa, että jos et saa ESP-01-moduulia vakaaksi, yritä saada virta ulkoisesta 3,3 voltin virtalähteestä.
Liitä kaikki kuten näet PDF -tiedoston sähköisessä taulukossa tai kuvassa.
Lataa koodi Arduino Mega -laitteeseesi ja muista tarkistaa koko koodi kommenttien varalta, koska sinun on asetettava isäntä palvelimelle useisiin paikkoihin (se ei ole paras ratkaisu, jonka tiedän).
Nyt Base -järjestelmäsi on käyttövalmis. Sinun ei tarvitse muuttaa muuttujia maaperän kosteuden syntien koodissa, voit tehdä sen salmen verkkosivulta.
Vaihe 7: Web -järjestelmä
Jotta voit käyttää järjestelmää, tarvitset myös verkkopalvelimen. Käytän vadelmapiä, jossa on Apache, PHP, Mysql, Gettext. Web -järjestelmä on monikielinen, joten voit tehdä sen helposti omalla kielelläsi. Sen mukana tulee ruotsi ja englanti (englannilla voi olla väärä englanti, käännökseni ei ole 100 %.) Joten sinun on asennettava palvelimellesi Gettext ja myös alueet.
Näytän sinulle joitain kuvakaappauksia yllä järjestelmästä.
Sen mukana tulee yksinkertainen kirjautumisjärjestelmä ja tärkein kirjautumistunnus on: admin käyttäjänä ja vesi salasanana.
Jotta voit käyttää sitä, sinun on määritettävä kolme cron -työtä (löydät ne cronjob -kansiosta)
Timer.php -tiedosto, joka sinun on suoritettava joka sekunti. Tämä pitää sisällään kaikki reikäjärjestelmän automaatiot. Joten sinun on määritettävä cron -työ siitä, kuinka usein aiot käyttää sitä. Minulla on se 5 minuutin välein, jolloin dagstatistik.php -tiedoston pitäisi toimia vain kerran ennen keskiyötä (kuten klo 23.30, 23.30). Se ottaa antureilta päivän aikana raportoidut arvot ja tallentaa ne viikon ja kuukauden tilastolle.
Huomaa, että tämä järjestelmä tallentaa lämpötilan celsiusasteina, mutta voit muuttaa Fahrenheit -asteen.
Asetat db.php -tiedostossa järjestelmän mysql -tietokantayhteyden.
Lisää ensin anturit järjestelmään. Tee sitten vyöhykkeitä ja lisää vyöhykkeisiin antureita.
Jos sinulla on kysyttävää tai löydät vikoja järjestelmässä, ilmoita niistä GitHub -sivulla. Voit käyttää verkkojärjestelmää etkä saa myydä sitä.
Jos sinulla on ongelmia gettekstin kieliasetusten kanssa, muista, että jos käytät vadelmaa palvelimena, niiden nimi on usein en_US. UTF-8, joten sinun on tehtävä muutokset i18n_setup.php-tiedostoon ja aluekansioon. Muuten jää jumiin ruotsin kieleen.
Voit ladata sen GitHub -sivulta.
Suositeltava:
Kuinka tehdä langaton tinapurkkipuhelin! (Arduino Walkie Talkie): 7 vaihetta (kuvilla)
Kuinka tehdä langaton tinapurkkipuhelin! (Arduino Walkie Talkie): Juuri eilen olin keskellä erittäin tärkeää puhelua, kun banaanipuhelin lakkasi toimimasta! Olin niin turhautunut. Se on viimeinen kerta, kun jätän puhelun tyhmän puhelimen takia! (Jälkeenpäin ajateltuna olen saattanut olla hieman vihainen
DIY Yksinkertainen langaton latausjalusta: 12 vaihetta
DIY yksinkertainen langaton latausjalusta: Olemme kaikki nähneet langattomia latureita, jotka käyttävät laitteiden lataamiseen resonanssikytkentää. Mutta tässä on puhelinlaturi, jota voidaan käyttää useimpien matkapuhelimien lataamiseen
Raspberry Pi: lle rakennettu automatisoitu puutarhajärjestelmä ulkona tai sisällä - MudPi: 16 vaihetta (kuvilla)
Raspberry Pi: lle rakennettu automatisoitu puutarhajärjestelmä ulkona tai sisällä - MudPi: Pidätkö puutarhanhoidosta, mutta et löydä aikaa sen ylläpitämiseen? Ehkä sinulla on huonekasveja, jotka näyttävät hieman janoiselta tai etsivät tapaa automatisoida vesiviljelysi? Tässä projektissa ratkaisemme nämä ongelmat ja opimme perusteet
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
Viidenkymmenen metrin kantaman langaton tukiasema TP -linkillä WN7200ND langaton USB -sovitin raspbian -venytyksellä: 6 vaihetta
Viidenkymmenen metrin kantaman langaton tukiasema, jossa on TP -linkki WN7200ND langaton USB -sovitin Raspbian Stretchillä: Raspberry Pi on loistava suojattujen langattomien tukiasemien luomiseen, mutta sillä ei ole hyvää kantamaa. Haluan jakaa miten se tehdäänMiksi haluan käyttää vadelmapiä reitittimen sijaan? T