This is an old revision of the document!
Masurator pentru turbiditatea apei
Introducere
Scopul proiectului este de a masura turbiditatea apei. Turbiditatea reprezinta, de fapt, nivelul de opacitate al apei, lucru care poate fi influentat de mai multi factori precum prezenta unor particule de pamant si argila, deseuri umane, animale sau chiar si industriale etc. Masurarea turbiditatii este astfel importanta in monitorizarea apei. O crestere a turbiditatii indica existenta unor particule in apa ce ar putea afecta calitatea acesteia de a fi potabila.
Pentru proiect voi folosi 3 LED-uri: un LED verde care imi va indica daca nivelul turbiditatii apei este sub limitele standard, unul galben care ma avertizeaza ca apa devine tulbure si unul rosu daca apa depaseste limitele normale. Pe un ecran voi afisa si masuratorile.
Aceasta idee mi-a venit amintindu-mi de un articol despre poluarea aerului, in care se discuta cum particulele de aer poluat nu se acumuleaza doar pe pielea noastra, ci si in apa din jurul nostru.
Descriere generală
Hardware Design
Lista de piese:
1x Ecran LCD
1x Arduino UNO
3x LED-uri
1x senzor turbiditate
1x breadboard
fire
Schema electrica:
Mai intai conectez toate piesele la GND si VCC (la montaj ma voi folosi de un breadboard).
Pentru ecranul LCD duc pinii SCL si SDA la A5, respectiv A4 pe placa Arduino. In urma unei documentari online, am descoperit ca acestia sunt conventional folositi pentru comunicatia I2C. Nu am utilizat pinii I2C dedicati de pe placuta din cauza limitarii spatiului pe schema. Totusi la montare i-as putea folosi.
Am conectat senzorul de turbiditate la modulul acestuia pe pinii 1, 2 si 3. Deoarece modulul utilizeaza o interfata analogica, am ales sa conectez pinul sau analogic A la pinul A0 de pe Arduino.
Fiecare LED l-am inlantuit in serie cu cate o rezistenta de 220k ohmi pentru a limita curentul care trece prin LED-uri. LED-ul verde l-am conectat la pinul digital 2, cel galben la pinul 4, iar rosu la 6 (numere alese aleator).
Conectarea componentelor:
Software Design
Descrierea codului aplicaţiei (firmware):
LiquidCrystal_I2C.h, pentru a afisa valorile citite de la senzor si rezultatele calculate
Arduino.h, pentru a folosi functii de baza din Arduino
Citirea valorilor de la senzorul de turbiditate folosind ADC
Conversia valorilor citite in volti
Calcularea valorilor NTU (Nephelometric Turbidity Units) pe baza voltajului
Afisarea valorilor pe LCD
Controlul LED-urilor pentru indicarea nivelului de turbiditate
setup(): configurarea pinilor pentru LED-uri ca OUTPUT, initializarea ecranului LCD, configurarea ADC-ului pentru citirea de la senzor
loop(): citirea valorilor de la senzor, calcularea voltajului si a turbiditatii, afisarea rezultatelor pe ecran, controlul reactiei LED-urilor
readADC(uint8_t channel): citirea de la un canal specific al ADC-ului
calcNTU(float voltage): calcularea valorii NTU pe baza voltajului citit de la senzor
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