This shows you the differences between two versions of the page.
|
pm:prj2026:bianca.popa1106:alexia.oprisan [2026/05/10 18:44] alexia.oprisan [Software Design] |
pm:prj2026:bianca.popa1106:alexia.oprisan [2026/05/16 10:18] (current) alexia.oprisan [Descrierea detaliata a modulelor hardware] |
||
|---|---|---|---|
| Line 21: | Line 21: | ||
| * **Microcontrollerul ATmega328P** reprezinta unitatea centrala a sistemului si coordoneaza toate procesele. Acesta colecteaza date de la senzori, proceseaza informatiile si controleaza perifericele conectate. | * **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. | * **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. | + | * **Senzorul NTC waterproof** monitorizeaza temperatura apei, iar valorile citite sunt afisate pe display. |
| * Nivelul apei este monitorizat folosind **senzorul ultrasonic HC-SR04**, care masoara distanta dintre senzor si suprafata apei pentru a detecta eventuale scaderi ale nivelului. | * 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 aliluminarii acvariului prin intermediul unui releu conectat la banda LED. | * **Senzorul LDR** este utilizat pentru detectarea luminii ambientale, permitand controlul automat aliluminarii acvariului prin intermediul unui releu conectat la banda LED. | ||
| Line 50: | Line 50: | ||
| | Microcontroller | ATmega328P Xplained Mini | - | Unitatea centrala a sistemului | | | Microcontroller | ATmega328P Xplained Mini | - | Unitatea centrala a sistemului | | ||
| | RTC | DS3231 | I2C | Pastreaza timpul real si programeaza actiunile automate | | | RTC | DS3231 | I2C | Pastreaza timpul real si programeaza actiunile automate | | ||
| - | | Senzor temperatura | DS18B20 Waterproof | OneWire | Monitorizeaza temperatura apei | | + | | Senzor temperatura | NTC waterproof | ADC | Monitorizeaza temperatura apei | |
| | Senzor nivel apa | HC-SR04 | GPIO | Masoara nivelul apei | | | Senzor nivel apa | HC-SR04 | GPIO | Masoara nivelul apei | | ||
| | Display LCD | LCD 16x2 I2C | I2C | Afiseaza informatii despre sistem | | | Display LCD | LCD 16x2 I2C | I2C | Afiseaza informatii despre sistem | | ||
| Line 63: | Line 63: | ||
| ==== Descrierea detaliata a modulelor hardware ==== | ==== Descrierea detaliata a modulelor hardware ==== | ||
| - | **RTC DS3231** | + | === 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. | + | Modulul RTC DS3231 este utilizat pentru mentinerea timpului real chiar si atunci cand sistemul este oprit. Acesta permite programarea automata a hranirii si a iluminarii la anumite ore prestabilite. |
| - | **DS18B20 Waterproof** | + | RTC-ul comunica cu microcontrollerul prin interfata I2C: |
| - | Senzorul DS18B20 masoara temperatura apei si transmite valorile catre microcontroller folosind protocolul OneWire. Valorile sunt afisate pe LCD si transmise prin Bluetooth catre telefon. | + | * **SDA - PC4 (SDA)** |
| + | * **SCL - PC5 (SCL)** | ||
| - | **HC-SR04** | + | Interfata I2C permite comunicatia seriala folosind doar doua fire de date, ceea ce reduce numarul de pini utilizati. |
| - | 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** | + | === NTC waterproof === |
| - | Senzorul LDR detecteaza intensitatea luminii ambientale prin intermediul ADC-ului microcontrollerului. In functie de valoarea citita, sistemul poate controla automat iluminarea acvariului. | + | Senzorul NTC waterproof este utilizat pentru monitorizarea temperaturii apei din acvariu. Acesta functioneaza ca o rezistenta variabila dependenta de temperatura si este conectat intr-un divizor rezistiv impreuna cu un rezistor de 10kΩ. |
| - | **Servomotor SG90** | + | Conectare: |
| - | Servomotorul SG90 controleaza mecanismul de hranire automata. Acesta este comandat prin PWM si se roteste la anumite ore pentru a distribui hrana. | + | * **PC1 (A1)** - intrare analogica ADC |
| - | **LCD 16x2 I2C** | + | Valorile analogice citite de microcontroller sunt convertite in temperatura si afisate pe display-ul LCD. |
| - | Display-ul LCD afiseaza informatii importante despre sistem, precum temperatura apei, nivelul apei sau starea iluminarii. Comunicatia se realizeaza prin I2C. | ||
| - | **Modul Bluetooth BLE** | + | === HC-SR04 === |
| + | |||
| + | Senzorul ultrasonic HC-SR04 este utilizat pentru monitorizarea nivelului apei. | ||
| + | |||
| + | Conexiuni: | ||
| + | |||
| + | * **TRIG - PD4 (D4)** - iesire digitala | ||
| + | * **ECHO - PD5 (D5)** - intrare digitala | ||
| + | |||
| + | Distanta este calculata pe baza duratei semnalului receptionat. | ||
| + | |||
| + | |||
| + | === LDR === | ||
| + | |||
| + | Senzorul LDR detecteaza intensitatea luminii ambientale si permite controlul automat al iluminarii acvariului. | ||
| + | |||
| + | Conectare: | ||
| + | |||
| + | * **PC0 (A0)** - intrare analogica ADC | ||
| + | |||
| + | LDR-ul este utilizat impreuna cu un rezistor de 10kΩ intr-un divizor de tensiune. | ||
| + | |||
| + | === Servomotor SG90 === | ||
| + | |||
| + | Servomotorul SG90 controleaza mecanismul de hranire automata al pestilor. | ||
| + | |||
| + | Conectare: | ||
| + | |||
| + | * **PB1 (D9)** - pin PWM | ||
| + | |||
| + | PWM-ul permite controlul precis al unghiului de rotatie. | ||
| + | |||
| + | |||
| + | === LCD 16×2 I2C === | ||
| + | |||
| + | Display-ul LCD afiseaza informatii importante despre sistem, precum temperatura apei, nivelul apei si starea iluminarii. | ||
| + | |||
| + | Conexiuni I2C: | ||
| + | |||
| + | * **SDA - PC4** | ||
| + | * **SCL - PC5** | ||
| + | |||
| + | Utilizarea interfetei I2C reduce numarul de pini necesari conectarii. | ||
| + | |||
| + | |||
| + | === Modul releu === | ||
| + | |||
| + | Modulul releu controleaza banda LED de iluminare a acvariului. | ||
| + | |||
| + | Conectare: | ||
| + | |||
| + | * **PD7 (D7)** - iesire digitala | ||
| + | |||
| + | Releul este activat automat in functie de valoarea citita de LDR sau manual prin buton. | ||
| + | |||
| + | |||
| + | === Modul Bluetooth BLE === | ||
| + | |||
| + | Modulul HM-10 / AT-09 permite comunicatia dintre sistem si telefon prin Bluetooth Low Energy. | ||
| + | |||
| + | Conexiuni UART: | ||
| + | |||
| + | * **TXD modul - PB2 (D10)** | ||
| + | * **RXD modul - PB3 (D11)** | ||
| + | |||
| + | Prin Bluetooth, utilizatorul poate monitoriza parametrii sistemului si controla anumite functii folosind o aplicatie mobila. | ||
| + | |||
| + | |||
| + | === Butoane de control === | ||
| + | |||
| + | Sistemul utilizeaza doua butoane pentru control manual: | ||
| + | |||
| + | * **PD3 (D3)** - buton hranire manuala | ||
| + | * **PD6 (D6)** - buton control iluminare | ||
| + | |||
| + | Butonul de hranire utilizeaza intreruperi externe pentru detectarea rapida a apasarii. | ||
| + | |||
| + | ^ Componenta ^ Pin ATmega328P ^ Tip Interfata ^ | ||
| + | | RTC DS3231 | PC4 (SDA), PC5 (SCL) | I2C | | ||
| + | | LCD 16×2 I2C | PC4 (SDA), PC5 (SCL) | I2C | | ||
| + | | HC-SR04 | PD4 (TRIG), PD5 (ECHO) | GPIO | | ||
| + | | Senzor NTC waterproof | PC1 (ADC1 / A1) | ADC | | ||
| + | | LDR | PC0 (ADC0 / A0) | ADC | | ||
| + | | Modul releu | PD7 (D7) | GPIO | | ||
| + | | Banda LED 12V | Alimentare externa prin releu | Alimentare externa | | ||
| + | | Servomotor SG90 | PB1 (OC1A / D9) | PWM | | ||
| + | | Buton hranire | PD3 (INT1 / D3) | Intrerupere externa | | ||
| + | | Buton iluminare | PD6 (D6) | GPIO | | ||
| + | | Modul Bluetooth BLE HM-10 / AT-09 | PB2 (RX / D10), PB3 (TX / D11) | UART | | ||
| - | 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 ===== | ===== Software Design ===== | ||