Autorul poate fi contactat la adresa: Login pentru adresa
Plant Independence este un proiect care incearca sa automatizeze ingrijirea plantelor. Proiectul final va fi capabil sa ude singur o planta in momentul in care detecteaza faptul ca acesta are nevoie de apa.
Utilizatorul va avea acces la date precum:
Device-ul final va monitoriza gradul de umiditate al solului si nivelul apei din rezervorul de apa. In momentul in care umiditatea solului scade sub un anumit nivel device-ul va uda planta cu apa din rezervor.
Proiectul pare foarte util in zone de home automation. Posibilitatea de a monitoriza o planta de la distanta pare foarte util. Un caz de utilizare foarte bun ar fi cel in care pleci cateva saptamani in vacanta si vrei sa stii ca plantele tale au suficienta apa.
Proiectul va avea trei componente mari si anume:
Server-ul va fi o masina de linux cel mai probabil in cloud. Aceasta va comunica cu device-ul printr-un protocol proprietar. Aici vor fi stocate intr-o baza de date detaliile despre planta. Cel mai probabil acest server va servi si partea de interfata web.
Interfata Web va fi locul in care utilizatorul va putea vedea detalii despre starea plantei, cand a fost udata ultima oara, nivelul de apa din rezervor etc.
Device-ul este cea mai complexa parte a proiectului si presupune exact partea care va face automatizarea udarii plantei. Aceste este alcatuit din mai multe module:
Cablajul principal este cel standard pentru proiect. Acesta va avea inteligenta device-ului. Aici se vor aduna datele de la senzori, se va comanda pompa de apa si LCD-ul si se va comunica cu server-ul.
Placa de baza va aduna date de la senzorul cu ultrasunete si cel de umiditate. In cazul in care solul nu este suficient de umed si inca este apa in rezervor acesta va comanda pornirea pompei de apa.
Ecranul LCD va avea niste date simple despre planta. Acesta va oferi o interfata pentru a verifica rapid ca totul este in regula cu planta.
Modulul Wireless va fi modalitatea prin care se va comunica cu server-ul. Comunicarea cu acest modul se va face printr-un protocol serial.
Lista piesa va fi descrisa pentru fiecare modul. In proiect sunt incluse bineinteles piesele pentru placa de baza. In plus au fost folosite urmatoarele module:
Codul care este pus pe microcontroller este dezvoltat in C folosind Programmer's Notepad. Pentru partea de server este folosit C pentru a face conexiune directa cu microcontrolerul si Node.js pentru a afisa informatiile. Este folosita o baza de date de tip MongoDb pentru mentinerea datelor.
Din punct de vedere al bibliotecilor externe nu este nimic de mentionat momentan. Se vor folosi surse externe de cod in sensul in care se va utiliza codul pentru interactiunea cu LCD-ul text si cu interfata USART dezvoltat in cadrul laboratorului.
Vor fi dezvoltate module externe special pentru a comunica cu fiecare perific, si anume:
Protoculul de comunicare va fi unul proprietar intre microcontroller si server.
In acest moment partea de server este una simplista care ofera o interfata grafica minimala.
Rezultatele nu sunt tocmai cele dorite.
Implementarea comunicatia Wifi nu a reusit si astfel nici partea de comunicare cu interfata web nu exista.
Totusi sistemul de udare automata este functional. Codul scris este pe cat posibil non-blocant.
Rezultatul final este un modul care masoara umiditatea solului si nivelul apei din rezervor si atunci cand este nevoie uda planta.