Sistem de udare automata a plantelor

Introducere

Proiectul consta intr-un sistem automat de udare a plantelor, care detecteaza daca planta are nevoie sa fie irigata. In acest sens, se va folosi un rezervor de apa. Daca rezervorul nu mai are apa suficienta, se va aprinde un led rosu pentru a atentiona utilizatorul ca recipientul trebuie umplut, iar cand nivelul apei este suficient se va aprinde un led verde. Informatiile citite de la senzori si starea sistemului vor fi transmise prin bluethoot, astfel incat utilizatorul sa aiba acces la ele de pe telefon.

Proiectul vizeaza iubitorii de plante, fiind de ajutor pentru mentinerea calitatii vietii plantelor.

Descriere generală

Arduino primeste date de la cei doi senzori, cel de umiditate si cel de nivel de apa. In functie de datele primite, activeaza pompa in vederea udarii plantei sau led-ul, in cazul in care rezervorul nu are suficienta apa. Folosind modulul bluethoot se vor trimite catre telefonul utilizatorului datele citite de senzori.

Hardware Design

Lista componente:

Componenta Cantitate Link
Arduino UNO 1 ArduShop
Pompa 1 SIGMANORTEC
Driver motor 1 ArduShop
Senzor de umiditate 1 SIGMANORTEC
Senzor nivel de apa 1 SIGMANORTEC
Led-uri 2 SIGMANORTEC
Modul Bluethoot 1 ArduShop
Stabilizator tensiune 5V 1 SIGMANORTEC
Rezistente 7 ArduShop

Schema electrica:

Software Design

Mediu de dezvoltare: Arduino IDE 1.8.19

Functii principale:

  • isSoilDry(): citeste valoarea indicata de senzorul de umiditate in sol si determina pe baza acesteia daca pompa trebuie pornita; daca valoarea citita este mai mare decat o valoarea de referinta maxima, atunci se returneaza true, altfel returneaza false;
  • checkWaterEmpty(): citeste valoarea indicata de senzorul de nivel de apa si daca aceasta este ridicata seteaza pe high pin-ul corespunzator led-ului verde, altfel daca este foarte mica seteaza pe high pinul corespunzatorul led-ului rosu;
  • start() si stop(): folosite pentru pornirea, respectiv oprirea pompei; daca pompa trebuie pornita pinii 12 si 11 vor fi high, respectiv low, pentru a indica ca motorul trebuie sa mearga inainte; daca pompa trebuie oprita, ambii vor fi low;
  • loop(): se verifica daca solul este ud si in caz afirmativ porneste pompa, altfel o opreste; scrie mesaje pe seriala (care se vor transmite prin bluethoot) despre statusul sistemului (“Pump started” / “Pump stopped”); verifica daca a ramas suficienta apa in rezervor;

Pentru transmiterea datelor prin bluethoot, trebuie setat baud rate-ul la 9600 si scrise mesajele la seriala. De asemenea, utilizatorul trebuie sa aiba pe telefon o aplicatie (de exemplu Serial Bluethoot Terminal) pe care va trebui sa o conecteze la modulul de bluethoot.

Rezultate Obţinute

Proiectul este complet functional:

Concluzii

A fost un proiect interesant pentru ca am putut alege o tema pe placul nostru, cat mai interactiva si cu o utilitate practica, iar acest lucru ofera un sentiment de satisfactie atunci cand obtii ceva functional. De asemenea, a fost prima ocazia de a lucra cu arduino si diversi senzori (in afara laboratoarelor).

Am reusit sa obtin un proiect complet functional, desi am avut avut cateva probleme cu trimiterea datelor prin bluethoot pentru care nu am reusit sa gasesc o explicatie clara.

Download

Jurnal

18.04.2022: Alegere tema proiect

21.04.2022 - 25.04.2022: Reasearch despre componentele necesare

27.04.2022: Comandare componente

02.05.2022: Realizare descriere si schema bloc

10.05.2022: Realizare functionalitate principala

17.05.2022 - 20.05.2022: Debug

21.05.2022 - 22.05.2022: Finalizare si realizare documentatie

Bibliografie/Resurse

pm/prj2022/ncaroi/sistem-udare-plante.txt · Last modified: 2022/05/27 16:00 by raluca.vasilache00
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0