Anca SULIMAN (87625) - Fan Controller

Introducere

  • Proiectul constă în realizarea unui sistem de control și reglare a vitezei unui ventilator cu funcție PWM. Pentru modul automat de funcționare, utilizând un senzor de temperatură, viteza ventilatorului va fi setată pe baza diferenței dintre o temperatură de referință și temperatura ambientală. În cazul modului manual de funcționare, utilizatorul va putea seta viteza de rotație a ventilatorului prin reglarea unui potențiometru. Sistemul va integra și un LCD, care va oferi informații despre temperatura exterioară și despre modul de funcționare curent.
  • Nedeținând un cooler pentru PC, am considerat acest aspect ca baza a alegerii temei proiectului prezentat. Mi s-a părut o bună oportunitate pentru a învăța lucruri noi și pentru a încerca să rezolv o necesitate.
  • Consider că acest proiect poate avea utilitate atât pentru procesul de cooling într-o unitate centrală, cât și pentru ventilația în interiorul unei încăperi mici.

Descriere generală

Hardware Design

Lista pieselor utilizate:

  • Placa de bază
  • Ventilator cu funcție PWM
  • Display LCD 16×2
  • Potențiometru 10k
  • 1 buton
  • Led-uri
  • Senzor de temperatură LM35
  • Pini conectori
  • Fire de legătură
  • Convertor DC-DC Step-up 5V - 12V

Schema electrică

Software design

Mediu de dezvoltare:

  • Visual Studio Code
  • Eagle (schema electrică)
  • HIDBootFlash (încărcarea programului pe placa de bază)

Sursa implementată:

  • proiect.c - semnalul transmis de senzorul de temperatură este citit de convertorul analog-digital. Valoarea returnată, în mV, este transformată în grade Celsius, luând în calcul faptul că 10 mV corespund unui grad Celsius. Ventilatorul poate fi controlat atât automat, în funcție de valoarea temperaturii (afișată de asemenea pe LCD), cât și manual, cu ajutorul unui potențiometru (ieșirea acestuia este conectată la o intrare analogică, valoarea indicată de acesta, obținută tot cu ajutorul convertorului analog-digital, determinând turația ventilatorului). Pentru comutarea între modurile de funcționare se utilizează butonul de pe pinul PB2.

Biblioteca folosită:

  • lcd.c - utilizată pentru interacțiunea cu LCD-ul (afișarea temperaturii și a modului de funcționare)

Rezultate obținute

Mod de funcţionare automat:

Mod de funcţionare manual (este afişată de asemenea valoarea ieşirii potenţiometrului):

Concluzii

Realizarea unui proiect practic, care să includă atât parte de software, cât şi de hardware, a fost o experienţă plăcută şi constructivă, fixâdndu-mi multe noţiuni în acest mod. Cea mai dificilă parte mi s-a părut interacţiunea cu PWM.

Download

Sursele utilizate:

sulimananca_336cc.zip

Bibliografie / resurse

pm/prj2019/ostiru/anca.suliman.txt · Last modified: 2021/04/14 17:07 (external edit)
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