This is an old revision of the document!


Automatizare irigație solar

  • Autor: Postolache Florin
  • Grupă: 335CC

Introducere

Proiectul reprezintă un prototip pentru o automatizare a unui solar. Acesta va analiza 2 dintre cele mai importante necesități ale unei plante cu ajutorul a doi senzori. (senzor de temperatură și senzor de măsurare a umidității solului)

Descriere generală

Plăcuța va analiza datele primite de la cei doi senzori și în funcție de valorile primite de la aceștia, va reacționa în următoarele moduri:

  • În cazul în care temperatura din cameră este prea ridicată, se va activa un buzzer care va atenționa utilizatorul că trebuie să deschidă solarul.
  • În cazul în care solul este mult prea uscat, se va porni o pompă care va împinge apa dintr-un rezervor către pământ. Pentru a ne asigura că există presiune pe furtun, în celălalt capăt se va afla o electrovalvă care se va deschide la puțin timp după activarea pompei.
  • În cazul în care nu mai există apă în rezervor, același buzzer menționat mai sus va începe să sune pentru a atenționa utilizatorul că trebuie să intervină.

De asemenea, acesta va afișa toate datele primite pe un ecran LCD.

SCHEMA BLOC

Hardware Design

Componente utilizate
Senzor de temperatură
Senzor de umiditate a solului
Senzor de nivel
Buzzer
Modul releu 2 canale
Ecran LCD 16×2
Pompă submersibilă 12V
Electrovalvă 12V
Diodă
Tuburi
Cabluri
Rezistențe diverse valori
Arduino UNO R3 ATmega328p

Aici puneţi tot ce ţine de hardware design:

Software Design

  • mediu dezvoltare: Arduino IDE
  • biblioteci folosite:
    • LiquidCrystal - folosită pentru a afișa date pe ecranul lcd
    • OneWire, DallasTemperature - folosite pentru a comunica cu senzorul de temperatură și a prelucra informația oferită de acesta

Logica

  • void setup() - inițializez comunicarea cu lcd-ul, creez caracterul special pentru grade, definesc restul pinilor ca fiind de input/output și atașez întreruperi butoanelor care schimbă datele ce se afișează pe lcd
  • void loop() - se apelează la infinit urmatoarele funcții:
    • humidity_analysis(): Citește valoarea primită de la senzorul de umiditate a solului. În funcție de valoarea primită de la senzor și valoarea booleanului este_gol_rezervorul pornește pompa și deschide electrovalva/oprește pompa și închide electrovalva.
    • get_temp(): Citește valoarea primită de la senzorul de temperatură.
    • get_distance(): Aflu nivelul apei din rezervor. Trimit o undă direct către suprafața apei. Aștept ecoul ei să fie captat de senzor. Nivelul este determinat pe baza diferenței de timp între trimitere-captare.
    • trigger_buzzer(): Analizeaza valorile date de senzorul de temperatură și senzorul ultrasonic și pe baza acestora vede dacă trebuie să pornească sau nu buzzer-ul.
    • afiseaza_date(): Afișează informațiile citite de pe senzori.

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2022/robert/automatizare_irigatie_solar.1653502530.txt.gz · Last modified: 2022/05/25 21:15 by florin.postolache
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