This is an old revision of the document!
Proiectul propune realizarea unui sistem inteligent pentru monitorizarea umidității solului și controlul procesului de irigare, folosind o placă Arduino, un senzor analogic de umiditate a solului și un modul WiFi ESP8266 ESP-01.
Scopul proiectului este automatizarea procesului de udare a unei plante, astfel încât sistemul să poată porni irigarea atunci când nivelul de umiditate al solului scade sub un prag prestabilit. În același timp, sistemul permite și pornirea manuală a irigării prin apăsarea unui buton.
Proiectul este util deoarece poate ajuta la întreținerea plantelor atunci când utilizatorul nu poate verifica manual starea solului. Prin integrarea modulului WiFi, informațiile despre umiditate și starea sistemului pot fi transmise către un telefon sau către o interfață de monitorizare. De asemenea, sistemul include un LCD 1602 pentru afișarea locală a informațiilor importante.
Proiectul utilizează concepte studiate în laboratoarele de Programarea Microprocesoarelor, precum GPIO, USART, întreruperi externe, timere, PWM și ADC.
Sistemul este alcătuit din mai multe module hardware care comunică între ele prin intermediul plăcii Arduino-compatible. Senzorul de umiditate a solului oferă o valoare analogică proporțională cu nivelul de umiditate. Această valoare este citită de microcontroler folosind convertorul analog-digital, ADC.
În modul automat, microcontrolerul verifică periodic valoarea citită de la senzor. Dacă umiditatea solului scade sub un prag ales, sistemul aprinde un LED de avertizare și pornește pompa de apă pentru o perioadă determinată. Pompa este controlată printr-un modul releu, deoarece nu poate fi alimentată direct dintr-un pin al plăcii Arduino.
În modul manual, utilizatorul poate porni irigarea apăsând un buton. Butonul este conectat la un pin de întrerupere externă, astfel încât microcontrolerul poate reacționa imediat la apăsarea acestuia.
Sistemul folosește două LED-uri de stare. Primul LED indică faptul că umiditatea solului este sub pragul prestabilit, iar al doilea LED clipește pe durata procesului de irigare. Clipirea LED-ului este controlată folosind timere.
Pentru monitorizare locală, sistemul include un LCD 1602 conectat printr-un modul de interfață I2C. Pe LCD pot fi afișate valoarea curentă a umidității, modul de funcționare și starea pompei.
Pentru monitorizare la distanță, sistemul folosește un modul WiFi ESP8266 ESP-01. Acesta comunică cu placa Arduino prin USART și transmite informații despre starea sistemului către un telefon sau către o interfață web.
Schema bloc prezintă principalele module ale sistemului și modul în care acestea interacționează.
Senzorul de umiditate a solului este conectat la placa Arduino-compatible printr-o intrare analogică, iar valoarea este citită folosind ADC. Butonul de pornire manuală este conectat la un pin de întrerupere externă.
Placa Arduino controlează LED-urile de stare prin pini GPIO. LED-ul pentru umiditate scăzută este aprins atunci când valoarea citită de la senzor este sub pragul ales, iar LED-ul pentru irigare activă clipește cât timp pompa funcționează.
Pompa de apă este controlată printr-un modul releu. Releul este comandat de Arduino printr-un pin GPIO, iar pompa este alimentată separat de la un suport cu 4 baterii AA.
LCD-ul 1602 este conectat prin interfața I2C și afișează informații despre starea sistemului. Modulul ESP8266 ESP-01, conectat prin adaptorul său, comunică prin USART cu placa Arduino și transmite datele prin WiFi către telefon sau către interfața de monitorizare.
Componentele utilizate în proiect sunt:
Placa Arduino-compatible va reprezenta unitatea centrală de control a sistemului. Aceasta va citi valoarea analogică primită de la senzorul de umiditate și va decide dacă este necesară pornirea irigării.
Senzorul de umiditate va fi conectat la un pin analogic al plăcii, iar valoarea sa va fi prelucrată cu ajutorul modulului ADC.
Modulul ESP8266 ESP-01 va fi folosit pentru transmiterea informațiilor prin WiFi. Deoarece ESP8266 funcționează la 3.3V, va fi utilizat un adaptor ESP-01 care include regulator de tensiune 3.3V și convertor de nivel logic, permițând conectarea mai sigură la o placă Arduino care folosește niveluri logice de 5V.
Pompa de apă va fi controlată prin intermediul modulului releu. Releul permite pornirea și oprirea pompei fără ca aceasta să fie alimentată direct dintr-un pin al microcontrolerului. Pompa va fi alimentată separat folosind suportul cu 4 baterii AA.
LCD-ul 1602, conectat prin modulul I2C, va fi utilizat pentru afișarea locală a valorii umidității, a modului de funcționare și a stării pompei.
Această secțiune va fi completată în etapele următoare ale proiectului.
Proiectul va utiliza următoarele concepte din laboratoare:
Această secțiune va fi completată după implementarea și testarea sistemului.
Această secțiune va fi completată după finalizarea proiectului.
Această secțiune va fi completată după crearea repository-ului pentru codul sursă.