This is an old revision of the document!
Proiectul constă într-un dozator de apă inteligent, care detectează volumul curent de apă pe baza unui senzor de greutate și care umple recipientul, cu ajutorul unei pompe și a unui releu. Pentru afișaj, am folosit un ecran LCD și o bară de 10 led-uri pentru progres. LCD-ul va avea mai multe moduri, printre care: progres, timp rămas și statistici (câtă apă am băut în ziua respectivă spre exemplu). Pentru a schimba modurile de afișaj voi folosi niște butoane, iar pentru a măsura timpul precis un RTC.
Scopul proiectului și utilitatea o reprezintă, tocmai, automatizarea procesului, marea majoritate a dozatoarelor fiind manuale, deci incoveniente.
Ideea de la care am pornit a fost creearea unui aparat util, nu foarte scump, de care toată lumea are nevoie.
Laboratoare folosite:
- Intreruperi (butoanele care: pornesc aparatul, schimba modul de afisaj etc.) - Timere (RTC) si PWM (intensitatea LED-urilor de progres creste treptat) - ADC (modulul HX711, care transforma semnalul analogic primit de la senzor intr-unul digital) - I2C (Afisajul LCD si modulul RTC)
1. Microcontroler-ul ATmega328P-XMINI - „creierul”, prelucrează datele primite de la senzor, acționează pompa, realizează statisticile și trimite semnal la LED-uri și LCD pentru afișaj
2. Senzor Greutate 1kg (analogic) - pentru detectarea volumului de apă curent
3. Modul Citire Greutate HX711 - funcționează ca un amplificator și convertește semnalul analogic primit de la senzor într-unul digital pe care îl poate procesa microcontrolerul
4. Sursa 12V - pentru alimentarea pompei
5. Convertor Step-Down 5V - pentru a modifica tensiunea de la 12V la 5V, alimentând microcontrolerul
6. Releu - întrerupător (pornește sau oprește pompa)
7. Pompa - pentru a extrage apa din rezervor
8. RTC - folosit pentru a colecta date pentru statistici. Un avantaj al utilizării unui RTC este acuratețea acestuia, precum și funcționarea independentă de sursa principală de curent datorită bateriei proprii (comunică pe baza protocolului I2C)
9. LCD - folosit pentru afișaj (funcționează pe baza protocolului I2C)
10. Butoane - folosite pentru a porni dozatorul sau a schimba modul de afișaj
11. Bara 10 LED-uri - folosită pentru a afișa progresul. Funcționează folosind PWM pentru a varia intensitatea, în timp ce numărul de LED-uri aprinse se modifică în funcție de progres
| Componenta | Model | Cantitate |
|---|---|---|
| Microcontroler | ATmega328P-XMINI | 1 |
| Modul Cântar Electronic 1kg | YZC-133 | 1 |
| Modul Citire Greutate | HX711 | 1 |
| Display LCD 2×16 I2C | 1602 | 1 |
| Pompă peristaltică mini 12VDC | Kamoer CKP-DC-S08 | 1 |
| Modul Releu 1 canal 5V | SRD-05VDC-SL-C | 1 |
| Sursă alimentare 12V 2A | YDS-WA024 | 1 |
| Buton 6x6x6 | Sunrom 5827 | 4 |
| Bară leduri cu 10 segmente | F2510BH | 1 |
| Rezistență | 220 Ω | 12 |
| Rezistență | 1k Ω | 4 |
| Rezistență | 10k Ω | 4 |
| Condensator | 0.1µF | 4 |
| Modul RTC | DS3231 | 1 |
| Baterie | Varta CR2032 | 1 |
| Breadboard | 830 puncte | 1 |
| Fire DuPont M-F | 10 bucăți 10cm | 2 |
| Fire DuPont M-M | 10 bucăți 20cm | 3 |
| Furtun silicon | 1.6m | 1 |
| Mufă alimentare panou DC mamă | 5.5mm x 2.1mm 3 pini | 1 |
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.