Indholdsfortegnelse:

Autonomt plantevandingssystem: 4 trin
Autonomt plantevandingssystem: 4 trin

Video: Autonomt plantevandingssystem: 4 trin

Video: Autonomt plantevandingssystem: 4 trin
Video: Xiaomi Mi Scooter 3 speedhack. tutorial in the description or comments 2024, November
Anonim
Autonomt plantevandingssystem
Autonomt plantevandingssystem
Autonomt plantevandingssystem
Autonomt plantevandingssystem
Autonomt plantevandingssystem
Autonomt plantevandingssystem

Dette projekt præsenterer et smart autonomt plantevandingssystem. Systemet er autonomt i energi ved hjælp af et 12v batteri og et solpanel, og vander anlægget, når de rigtige betingelser er klar, med et gennemtænkt (håber jeg) fejlsikkert system. Det er smart, fordi det kommunikerede med brugeren / brugerne via Telegram -appen.

De trin, systemet følger, er som følger:

  • jordens vandindhold overvåges altid;
  • hvis jordens vandindhold er under en bestemt værdi (max_jordfugt), vil systemet:

    • (?) kontrollerer, at vandtanken ikke er tom (og under) vandingsbegivenheden for at undgå, at pumpen kører tør;
    • (?) kontrollerer, at minimumsperioden for vand mellem to vandingsbegivenheder er overskredet. Dette gøres for at undgå at vande planterne for mange gange i løbet af dagen (hellere have lidt tørhed på et tidspunkt), og for at tilføje en vis sikkerhed, hvis jordfugtighedsføleren er brudt;
    • (?) start kunstvandingen;
    • stopper kunstvandingen, når:

      • (?) jordvandets indhold når en bestemt værdi (max_jordfugt) eller;
      • (?) vandtanken er tom, i hvilket tilfælde vanding genoptages, så snart den er fyldt igen, eller;
      • (?) vandingsvarigheden overstiger den maksimale tilladte varighed for hver vandingsbegivenhed (watering_max_time). Målet her er at undgå at køre pumpen, indtil vandtanken er tom, hvis der er en lækage i systemet, der forhindrer jordfugtigheden i at stige;
  • (?) kontrollerer, at planter vandes mindst hvert givet tidsrum (max_wo_water), for at undgå at de dør, hvis f.eks. jordfugtighedsføleren er brudt og returnerer altid høje værdier;

Brugeren får besked via Telegram -meddelelser ved hvert vigtigt trin (angivet?). Brugeren kan også manuelt udløse en kunstvandingshændelse fra Telegram, selvom jordvandets indhold er højere end den givne værdi (max_soil_moisture). Det er også muligt at tænde og slukke for hele systemet, spørge om systemet er i gang eller spørge den aktuelle værdi af jordvandets indhold (se Telegram -snapshot).

Forbrugsvarer

Materiale

Her er en liste over de produkter, der bruges til at bygge systemet. Jeg må sige, at jeg ikke modtager nogen incitamenter fra Amazon, hvorfra alle produkter blev købt.

Sådan styres systemet:

  • NodeMCU -kort (ESP8266) til hjernen, 17,99 €
  • Relæmodul, 11,99 €
  • 120 prototyper jumperwires, 6,99 € -> prototyping
  • 3 brødbrætter, 8,99 € -> prototyper
  • Vandtæt æske, 10,99 €
  • 525 stk. Modstandssæt, 10,99 €
  • Trykt print med forbindelser, der ligner et brødbræt, 9,27 €
  • Elektriske ledninger 20, 22 eller 24 AWG afhængigt af dine præferencer (20 er mere solid, men skal reduceres for nogle forbindelser, 22 er gode, 24 er billigere), 18,99 €

For autonomi i energi:

  • 12V batteri, 21,90 €
  • 10W wp 12V monokrystallinsk solpanel, 23,90 €
  • 12/24V opladningsregulator, 13,99 €

Til vandtanken:

  • 12V vandpumpe, 16,99 €
  • DC han/hun stik (til tilslutning af pumpen), 6,99 €

Sensorerne:

  • Vandstandsvand, 7,99 €
  • Kapacitiv jordfugtighedsføler, 9,49 €
  • noget neglelak til vandtætning af jordfugtighedsføleren, 7,99 €;

Og kunstvandingssystemet:

Vandingssystem, 22,97 €

I alt 237,40 €. Det er ikke billigt! Men husk på, at det stadig er billigere end et præbygget system og med mange flere muligheder! Nogle dele er også kun til prototyper (15,98 €), og jeg købte mange komponenter i grupper af flere stykker til andre projekter, f.eks. 525 modstande er en vanvittig mængde, du behøver ikke 3 NodeMCU -kort eller 6 relæer til dette projekt.

Trin 1: Kode

For at gengive dette projekt skal du bruge nogle værktøjer, noget materiale og koden fra dette projekt.

Kode

For at få koden fra dette projekt skal du enten klone den (eller bedre, gaffel den) fra Github -depotet ved hjælp af GIT, og hvis du ikke ved, hvad GIT, klon og gaffel betyder, skal du blot downloade den på din computer ved hjælp af dette link?.

Konfigurer det derefter til dine behov!

For at bruge Telegram skal NodeMCU være forbundet til internettet. Jeg gjorde det ved hjælp af dets WIFI -modul og mit hjemme WIFI. For at konfigurere din egen forbindelse skal du åbne plant_watering.ino-scriptet i Arduino IDE og udfylde de manglende værdier for dine wifi-legitimationsoplysninger (jeg går ud fra, at du har WiFi):

String ssid = "xxxxx"; // Navn på dit Wifi String -pass = "xxxxx"; // Wifi -adgangskode

Derefter opretter vi en Telegram -bot, som er en brugerkonto lidt som du har, men faktisk drives af en robot (din NodeMCU). Følg trinene beskrevet her for at gøre dette. Med få ord:

  • Åbn Telegram (og opret forbindelse til din konto);
  • Opret en ny bot:

    • Søg i BotFather i dine kontakter (skriv det i søgelinjen), og åbn en samtale med det (som du ville gøre med enhver ny kontaktperson);
    • Skriv /newbot i samtalen (hold øje med sagen, og inkluder /!)
    • Navngiv din bot, som du vil, men slut den med "bot" (f.eks. "Watering_balcony_bot");
    • Botfather giver dig et bot -token, hold det meget hemmeligt (del det ikke ved hjælp af GIT !!), vi bruger det i få trin;
    • Søg det i dine kontakter, og send den denne besked: /start
    • Kopiér token returneret af Botfather, og indsæt det på dit plant_watering.ino script her:

      String token = "xxxxxx: xxxxxxxxxxxxxxxxxxxxxxx"; // Telegram bot -token

Din bot lever nu!

For at give den mulighed for at kommunikere med dig, skal den kende dit samtale -id. Fordi vi gerne vil kunne dele, hvad boten siger med andre mennesker, hvis vi tager på ferie, foretrækker jeg i stedet at oprette en gruppechat. Så opret en (Ny gruppe), tilføj din bot ved at søge i dens navn, og tilføj en tredje bot ved navn IDBot midlertidigt. Navngiv derefter din gruppechat, som du vil. Åbn din gruppechat, og skriv /getgroupid. IDBot returnerer et nummer som -xxxxxxxxx (glem ikke minuset, når du kopierer det!), Det er dit gruppechat -id!

Du kan også bede /getid om at få dit personlige id, så din bot sender beskeder direkte til dig i stedet (ikke sender det til gruppen)

Kopier id'et, og indsæt det på dit plant_watering.ino -script her:

int chatID = -000000000; // Dette er id'et for din gruppechat Indsæt /getid her i stedet, hvis du vil have boten til at sende beskeder direkte til dig

Fjern derefter IDBot fra din gruppe for sikkerheds skyld (vi ønsker ikke, at data lækker).

I det sidste trin skal du installere CTBot- og ArduinoJson -bibliotekerne. For at gøre det skal du skrive ctrl+maj+I, søge i CTBot og søge efter CTBot af Stefano Ledda, og klik på installer. Gentag derefter for ArduinoJson, og søg efter ArduinoJson af Benoit Blanchon, men installer version 5.13.5 for nu, fordi CTBot ikke er kompatibel med den sjette version endnu (du kan tjekke her, om der er ændringer).

Og det er det, din kode er klar! Nu kan du uploade den til NodeMCU! Hvis der er nogle fejl, skal du kontrollere, at du har valgt NodeMCU 1.0 som korttype, og at du bruger den rigtige version til dine biblioteker.

Trin 2: Værktøjer

Værktøjer

Værktøjerne er meget enkle, jeg brugte til dette projekt:

  • Et loddejern + tin (f.eks. 220V 60W);
  • Et multimeter (mit er en TackLife DM01M);
  • En flad skruetrækker (lille er bedre);
  • Skære tang;

Hvis du har dem, kan du også tilføje nogle wire strippere, men de er ikke uundværlige.

Trin 3: Montering

montage
montage

Du kan finde samlingen af delene ved hjælp af Fritzing til at åbne Fritzing -projektet i Github -depotet.

NB: NodeMCU er forbundet til solopladningsregulatoren med et USB -kabel (den i skematikken har ikke et). Se afsnittet Materiale for et eksempel på en solopladningsregulator med en USB.

Jeg stillede alle brugerdefinerede dele til rådighed i fritzing -mappen fra Github -projektet (alt kan findes på internettet undtagen vandflyderen, fordi jeg lavede det).

Trin 4: Anerkendelser

Jeg vil gerne anerkende min vidunderlige partner, der lod mig gøre dette i weekenderne! Og selvfølgelig alle de beslutningstagere, der gjorde projektet muligt, såsom @shurillu til super CTBot -biblioteket, EstebanP27 til hans tutorial, hvorfra jeg lærte meget til dette projekt! Jeg vil også gerne takke svgrepo, hvorfra jeg brugte SVG'er som grundlag for logoet.

Anbefalede: