This is an old revision of the document!


AquaGuardian System

AquaGuardian System este un sistem inteligent creat pentru monitorizarea si automatizarea unui acvariu. Ideea proiectului a pornit din dorinta de a realiza un sistem capabil sa mentina conditii stabile si sigure pentru pesti prin monitorizarea permanenta a parametrilor importanti si automatizarea unor procese esentiale.

Scopul proiectului

Sistemul monitorizeaza constant parametri importanti ai acvariului, precum temperatura apei, nivelul apei si lumina ambientala, pentru a mentine un mediu sigur si stabil pentru pesti. Informatiile sunt afisate in timp real pe un LCD conectat prin I2C, astfel incat utilizatorul poate vedea rapid ce se intampla in acvariu.

Una dintre functiile principale ale proiectului este hranirea automata la ore fixe. Cu ajutorul modulului RTC DS3231, sistemul pastreaza timpul real si declanseaza automat hranirea la ore prestabilite, cum ar fi dimineata si seara. In plus, sistemul poate controla si iluminarea acvariului in functie de lumina detectata de senzorul LDR, contribuind la crearea unui mediu mai natural pentru pesti si plante.

Sistemul include si conectivitate Bluetooth BLE, permitand monitorizarea parametrilor principali direct de pe telefon. Utilizatorul poate vizualiza informatii precum temperatura apei sau starea iluminarii si poate controla anumite functii ale sistemului prin intermediul unei aplicatii mobile.

Mi s-a parut un proiect interesant deoarece combina mai multe concepte importante din domeniul sistemelor embedded: senzori, intreruperi, ADC, PWM, UART si comunicatie I2C. In plus, consider ca este un proiect util deoarece poate ajuta orice persoana care are un acvariu sa mentina un mediu mai sigur si mai stabil pentru pesti, fara sa verifice constant fiecare parametru manual.

Descriere generală

Sistemul integreaza mai multe module hardware si software care comunica intre ele pentru a asigura functionarea automata a acvariului si monitorizarea parametrilor importanti.

  • Microcontrollerul ATmega328P reprezinta unitatea centrala a sistemului si coordoneaza toate procesele. Acesta colecteaza date de la senzori, proceseaza informatiile si controleaza perifericele conectate.
  • Modulul RTC DS3231 este utilizat pentru pastrarea timpului real si pentru programarea actiunilor automate, precum hranirea pestilor sau controlul iluminarii la anumite ore.
  • Senzorul DS18B20 waterproof monitorizeaza temperatura apei, iar valorile citite sunt afisate pe display si transmise prin Bluetooth catre telefon.
  • Nivelul apei este monitorizat folosind senzorul ultrasonic HC-SR04, care masoara distanta dintre senzor si suprafata apei pentru a detecta eventuale scaderi ale nivelului.
  • Senzorul LDR este utilizat pentru detectarea luminii ambientale, permitand controlul automat al iluminarii acvariului prin intermediul unui releu conectat la banda LED.
  • Pentru hranirea automata este utilizat un servomotor SG90 care actioneaza mecanismul de distribuire a hranei la ore prestabilite.
  • Display-ul LCD 16×2 conectat prin I2C afiseaza in timp real informatii importante despre sistem, precum temperatura apei, nivelul apei sau starea iluminarii.

Sistemul include si un modul Bluetooth BLE HM-10/AT-09 care permite comunicatia cu telefonul mobil. Prin intermediul unei aplicatii mobile, utilizatorul poate monitoriza parametrii principali ai acvariului si poate controla anumite functii ale sistemului.

Comunicatia dintre module este realizata folosind mai multe interfete specifice sistemelor embedded:

  • I2C pentru RTC si LCD
  • UART pentru comunicatia Bluetooth
  • ADC pentru citirea senzorului LDR
  • PWM pentru controlul servomotorului

Hardware Design

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

Componenta Model Interfata cu MCU Functie
Microcontroller ATmega328P Xplained Mini - Unitatea centrala a sistemului
RTC DS3231 I2C Pastreaza timpul real si programeaza actiunile automate
Senzor temperatura DS18B20 Waterproof OneWire Monitorizeaza temperatura apei
Senzor nivel apa HC-SR04 GPIO Masoara nivelul apei
Senzor lumina LDR ADC Detecteaza lumina ambientala
Display LCD LCD 16×2 I2C I2C Afiseaza informatii despre sistem
Servomotor SG90 180° PWM Controleaza mecanismul de hranire
Modul releu Releu 5V 1 canal GPIO Controleaza banda LED
Iluminare Banda LED 12V Alimentare externa prin releu Iluminarea acvariului
Modul Bluetooth HM-10 / AT-09 BLE UART Comunicatie cu telefonul
Buton Push Button GPIO Control manual al sistemului

Descrierea detaliata a modulelor hardware

RTC DS3231

Modulul RTC DS3231 este utilizat pentru mentinerea timpului real chiar si atunci cand sistemul este oprit. Acesta comunica cu microcontrollerul prin interfata I2C si permite programarea automata a hranirii si iluminarii la anumite ore prestabilite.

DS18B20 Waterproof

Senzorul DS18B20 masoara temperatura apei si transmite valorile catre microcontroller folosind protocolul OneWire. Valorile sunt afisate pe LCD si transmise prin Bluetooth catre telefon.

HC-SR04

Senzorul ultrasonic HC-SR04 este utilizat pentru monitorizarea nivelului apei. Acesta masoara distanta dintre senzor si suprafata apei pentru a detecta eventuale scaderi ale nivelului.

LDR

Senzorul LDR detecteaza intensitatea luminii ambientale prin intermediul ADC-ului microcontrollerului. In functie de valoarea citita, sistemul poate controla automat iluminarea acvariului.

Servomotor SG90

Servomotorul SG90 controleaza mecanismul de hranire automata. Acesta este comandat prin PWM si se roteste la anumite ore pentru a distribui hrana.

LCD 16×2 I2C

Display-ul LCD afiseaza informatii importante despre sistem, precum temperatura apei, nivelul apei sau starea iluminarii. Comunicatia se realizeaza prin I2C.

Modul Bluetooth BLE

Modulul HM-10/AT-09 permite comunicatia dintre sistem si telefon prin Bluetooth Low Energy. Utilizatorul poate monitoriza parametrii sistemului si controla anumite functii folosind o aplicatie mobila.

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

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/prj2026/bianca.popa1106/alexia.oprisan.1778270233.txt.gz · Last modified: 2026/05/08 22:57 by alexia.oprisan
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