Garden CareTaker

Autor: Dobrete Vlad-Gabriel

Introducere

In realizarea acestui proiect, am pornit de la nevoia unui ingrijitor de plante care poate fi adaptat atat pentru gradini, cat si pentru case.

Ingrijitorul este capabil sa ude plantele si poate fi controlat atat prin bluetooth din telefon, cat si prin senzorul de umiditate care in momentul in care depaseste o limita inferioara, porneste procesul de udare. Acest proces este asistat pe tot parcursul de afisaj pe display al actiunilor executate, cat si de semnale acustice care anunta terminarea procesului.

Scopul este reprezentat de usurarea intretinerii plantelor deoarece, odata montat, ingrijitorul se va ocupa de acestea. Este un proiect foarte folositor, deoarece poate fi actionat si prin bluetooth(in cazul in care este nevoie sa plecam de acasa, si vrem sa ne asiguram ca plantele au destula apa, putem actiona si din telefon procesul).

De asemenea, mi s-a parut super intersanta ideea de cuplare a unui modul bluetooth, in paralel cu senzorul de umiditate(acest lucru mi-a produs cateva dificultati in realizarea proiectului).

Descriere generala

Pentru a putea pune in functiune robotelul, conectam bateria pentru alimentare. Acesta va citi prin intermediul senzorului, valorile de umiditate ale solului(am testat chiar si cu o paine) si, daca scad sub valoarea de 500(aleasa de mine), water pump-ul va porni si va extrage apa din container. Pe langa aceasta functionalitate, modulul bluetooth, preia concomitent valori trimise de la aplicatia din telefon(daca suntem conectati), si in cazul in care dam comanda de pornire, water pump-ul va incepe sa scoata apa. Pe display sunt afisati toti pasii (start-watering-done watering), si, dupa ultimul pas, este actionat si buzzerul care anunta terminarea procesului. Proiectul este configurat astfel incat sa aiba grija de orice tip de planta. Astfel, in urma unui research, am observat faptul ca fosforul este necesar pentru plante. Water-pump-ul este capabil sa extraga apa combinata cu fosfor.

Schema bloc:

Hardware Design

Lista componente
  • Arduino UNO
  • BreadBoard
  • Mini BreadBoard
  • Modul bluetooth HC-05
  • Modul releu 1 canal comandat 5V
  • Modul senzor umiditate sol - higrometru
  • Pompa de apa 3-6V
  • Tub de cauciuc 6mm 1m
  • Mufa baterie 9v
  • Baterie 9V
  • LCD 1602
  • Buzzer - Tip : Pasiv
  • Container apa
  • Fire de legatura mama-tata
  • Fire de legatura tata-tata
Schema electrica

Software Design

Pentru alcatuirea codului, am folosit biblioteca LiquidCrystal.h pentru a putea lucra cu display-ul, dar si string.h pentru lucrul cu stringuri.

La inceput, am setat toti pinii display-ului, iar in setup am facut initializarile pentru acesta(afisarea mesajului de bun venit).

Am setat si motorul, sa fie oprit in momentul pornirii deoarece starea acestuia ar trebui sa se modifice doar in momentul in care senzorul indica acest lucru sau comanda de la modulul bluetooth.

In loop, logica este segmentata in doua. Dupa cum am spus in descrierea proiectului, robotul poate actiona atat cu un “impuls” de la senzorul de umiditate, cat si prin bluetooth. Astfel, daca in orice moment al timpului, senzorul detecteaza o valoare a umiditatii sub 600, pompa porneste automat. Daca primim de la modulul bluetooth comanda “start”, pompa porneste de asemenea. Pe tot parcursul procesului, pe ecran apare mesajul “Done Watering” pentru a fii informati asupra terminarii proceslui, si, de asemenea, crestem si tone-ul buzzer-ului pentru a insoti display-ul.

Am avut grija prin functiile specifice de delay, sa opresc procesul pentru a nu se crea conflicte intre senzori. De asemenea, pentru a stii cand primim comanda de start, am alcatuit un string cu valorile primite de la aplicatia de pe telefon.

Rezultate Obtinute

Poze:

garden_caretaker1.jpeg

Se poate observa mesajul de Welcome. Pe display sunt vizibile si mesaje din timpul procesului (ex. “Done Watering”).

garden_caretaker2.jpeg

In aceasta poza putem observa ca toate piesele sunt alimentate si functionale. De asemenea, display-ul este gol deoarece procesul nu a pornit.

garden_caretaker3.jpeg

Poza ce arata legaturile facute intre piese, cu preponderenta pentru display.

garden_caretaker4.jpeg

Poza este in intregime submedsibila. Apa este combinata de fosfor si este extrasa de pompa si eliminata prin tubul de cauciuc

garden_caretaker5.jpeg

Se poate observa impovizatia LOL pentru asezarea tubului pentru a curge la tulpina plantei. A fost nevoie sa leg tubul si deoarece jetul de apa este destul de puternic.

Videoclipuri cu functionalitatea proiectului:

https://drive.google.com/drive/folders/1aCdTSJ41K9DBA087OS7uhB60aBDo7OOT?usp=sharing

Concluzii

A fost o experienta super tare. De la gasit varianta de inlocuire a pamantului cu painea LOL, pana la apa cursa peste tot prin casa, am reusit sa creez un mini robotel capabil sa suplineasca timpul pierdut si grija pentru florile din casa si, de ce nu, chiar dintr-o gradina. Consider ca proiectul a fost destul de complex, fiind nevoie sa folosesc destul de multe piese iar codul mi-a pus dificultati din cauza faptului ca, odata conectat modulul bluetooth, pinii RX si TX nu functionau corespunzator(observam acest lucru din afisarile de pe display). Am reparat acest lucru din cod. Pe langa cunsotinte acumulate, m-am ales si cu un Plant CareTaker pe care il folosesc acum in casa. Recomand acest proiect oricui doreste sa inceapa un proiect fun si challenging in acelasi timp.

Download

Cod : garden_caretaker.zip

Documentatia in format pdf : garden_caretaker.pdf

Jurnal

18.04.2021 - Comanda piese

22.04.2021 - 24.04.2021 Construit proiect(partea de Hard) + lipit

25.04.2021 - 26.04.2021 Alcatuire cod

03.05.2021 - 04.05.2021 Completare pagina wiki

Bibliografie/Resurse

pm/prj2021/avaduva/gardencaretaker.txt · Last modified: 2021/05/16 18:59 by vlad.dobrete
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