Sisällysluettelo:

Langaton puutarhajärjestelmä: 7 vaihetta
Langaton puutarhajärjestelmä: 7 vaihetta

Video: Langaton puutarhajärjestelmä: 7 vaihetta

Video: Langaton puutarhajärjestelmä: 7 vaihetta
Video: Näin tyhjennät tietokoneen ja poistat valmistajan asentamat ylimääräiset ohjelmat 2024, Marraskuu
Anonim
Langaton puutarhajärjestelmä
Langaton puutarhajärjestelmä

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

Maaperän anturit
Maaperän anturit
Maaperän anturit
Maaperän anturit
Maaperän anturit
Maaperän anturit
Maaperän anturit
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

Eläinten anturi
Eläinten anturi
Eläinten anturi
Eläinten anturi
Eläinten anturi
Eläinten anturi
Eläinten anturi
Eläinten anturi

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 ohjain
Vesipumpun ohjain
Vesipumpun ohjain
Vesipumpun ohjain
Vesipumpun ohjain
Vesipumpun ohjain
Vesipumpun ohjain
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

Sadetunnistin
Sadetunnistin
Sadetunnistin
Sadetunnistin
Sadetunnistin
Sadetunnistin
Sadetunnistin
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äinten sireeni
Eläinten sireeni
Eläinten sireeni
Eläinten sireeni
Eläinten sireeni
Eläinten sireeni
Eläinten sireeni
Eläinten sireeni

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ä
Pääjärjestelmä
Pääjärjestelmä
Pääjärjestelmä
Pääjärjestelmä
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ä

Web -järjestelmä
Web -järjestelmä
Web -järjestelmä
Web -järjestelmä
Web -järjestelmä
Web -järjestelmä
Web -järjestelmä
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: