This shows you the differences between two versions of the page.
pm:prj2022:sgherman:sistem_alimentare_combustibil [2022/06/01 01:35] cconstantin0511 [Concluzii] |
pm:prj2022:sgherman:sistem_alimentare_combustibil [2022/06/01 13:41] (current) cconstantin0511 |
||
---|---|---|---|
Line 48: | Line 48: | ||
* În partea de Setup a proiectului setez baudrate-ul la 9600, setez pin-ul care controlează pompa de apa pe modul de output și folosesc un apel de lcd.begin pentru a putea utiliza lcd-ul mai departe. | * În partea de Setup a proiectului setez baudrate-ul la 9600, setez pin-ul care controlează pompa de apa pe modul de output și folosesc un apel de lcd.begin pentru a putea utiliza lcd-ul mai departe. | ||
* Pentru a prelua temperatura de la senzorul de temperatura TMP36 folosesc un apel de analogRead, iar pentru valoarea primită fac o conversie de la tensiune la grade Celsius. Chiar dacă am stabilizat senzorul folosind un capacitor și o rezistenta exista uneori diferențe mai mari de 4 grade între valori consecutive, astfel o sa folosesc o variabila numite finalTemp, aceasta reprezentând media ultimelor 10 valori primite de la senzor. | * Pentru a prelua temperatura de la senzorul de temperatura TMP36 folosesc un apel de analogRead, iar pentru valoarea primită fac o conversie de la tensiune la grade Celsius. Chiar dacă am stabilizat senzorul folosind un capacitor și o rezistenta exista uneori diferențe mai mari de 4 grade între valori consecutive, astfel o sa folosesc o variabila numite finalTemp, aceasta reprezentând media ultimelor 10 valori primite de la senzor. | ||
+ | * In privinta senzorului de temperatura de tip sonda(MAX6675) folosesc biblioteca de Adafruit disponibilă și cu ajutorul unei Instanțe a modulului pot sa citesc temperatura într-un mod rapid, fără sa realizez shiftari și sa fac prelucrări asupra datelor primite direct de la senzor. | ||
* Pentru senzorul de ploaie consider ca am lichid pe senzor dacă valoarea se afla sub un prag(valoarea maxima(atunci când nu se afla lichid pe senzor) - 10% din valoarea maxima). | * Pentru senzorul de ploaie consider ca am lichid pe senzor dacă valoarea se afla sub un prag(valoarea maxima(atunci când nu se afla lichid pe senzor) - 10% din valoarea maxima). | ||
- | * Pentru controlul pompei de apa am 3 case-uri dictate de Valorie preluate de la senzori și folosesc un analogWrite cu valori cuprinse între 4 și 255. Chiar dacă | + | * Pentru controlul pompei de apa am 3 case-uri dictate de Valorie preluate de la senzori și folosesc un analogWrite cu valori cuprinse între 4 și 255. Chiar dacă pompa de apa nu este una de putere mare diferența între moduri se poate observa atât în valoarea indicată de decimetru, cât și în sunetul emis de pompa atunci când folosim 255 sau 200 pentru analogWrite(). |
+ | * Pentru debimetru folosesc întreruperi și la fiecare secunda împart suma valorilor primite de la întreruperi la 7.5 pentru a afla debitul în l/min. | ||
+ | </note> | ||
+ | <note tip> | ||
+ | Software utilizat: | ||
* Arduino IDE | * Arduino IDE | ||
- | * LiquidCrystal I2C, hd44780, | + | * Biblioteci: LiquidCrystal I2C, hd44780.h, max6675.h, wire.h, SPI.h, hd44780ioClass/hd44780_I2Cexp.h. |
+ | * Eagle pentru schema electrica | ||
</note> | </note> | ||
Line 57: | Line 63: | ||
<note tip> | <note tip> | ||
- | {{:pm:prj2022:sgherman:img_2383.jpg?600|}} | + | {{:pm:prj2022:sgherman:img_2383.jpg?500|}} |
- | {{:pm:prj2022:sgherman:img_2385.jpg?600|}} | + | {{:pm:prj2022:sgherman:img_2385.jpg?500|}} |
+ | </note> | ||
+ | <note tip> | ||
+ | *Link pentru un video cu un demo: https://drive.google.com/file/d/1dEo1Nakv90usizdkJ7bZ-to-H092g6mg/view?usp=sharing | ||
</note> | </note> | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | Partea de citire a temperaturii și a prezentei unui lichid cu ajutorul senzorilor este destul de modulara și în esența se poate aplica foarte ușor pentru alte proiecte cu alte aplicații sau accesorii fata cele folosite, singura problema reprezentând-o utilizarea aproape completa a porturilor analog de pe plăcută Arduino. Limitarea de putere a Arduino-ului este vizibila în privința comportamentului pompei de apa. | + | Partea de citire a temperaturii și a prezentei unui lichid cu ajutorul senzorilor este destul de modulara și în esența se poate aplica foarte ușor pentru alte proiecte cu alte aplicații sau accesorii fata cele folosite, singura problema reprezentând-o utilizarea aproape completa a porturilor analog de pe plăcută Arduino. Limitarea de putere a Arduino-ului este vizibila în privința comportamentului pompei de apa. |
+ | In privința senzorilor trebuie menționat faptul ca mă așteptam sa fie mult mai ușor de folosit, aproape plug and play, dar senzorul TMP36 a reprezentat cea mai mare provocare, nu exista biblioteca precum cea pentru max6675, utilizarea valorii este dificila în cazul în care senzorul nu este stabilizat cu un capacitor și o rezistenta, valoarea primită de senzor la VCC nu este garantata la 5V mereu, astfel pe viitor pentru un proiect similar aș utiliza senzori digitali sau senzori care sa ofere suport software prin biblioteci. | ||
===== Download ===== | ===== Download ===== | ||
- | |||
<note warning> | <note warning> | ||
+ | [[https://drive.google.com/drive/folders/1gA84QzOVBb9XlTQNSoC46SrsKQt-weEO?usp=sharing|Link catre arhiva cu fisierul sursa]] | ||
</note> | </note> | ||