Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2021:alazar:programmablesolderingstation [2021/06/03 19:17]
radu_leonard.rica
pm:prj2021:alazar:programmablesolderingstation [2021/06/10 12:12] (current)
radu_leonard.rica
Line 30: Line 30:
  
 === Schema Electrica === === Schema Electrica ===
-{{:​pm:​prj2021:​alazar:​ss3.jpg?​800|}}+{{:​pm:​prj2021:​alazar:​ss3.jpg?​600|}} 
 +Din schema lipseste sursa de 24V 5A, coboratorul de tensiune, heaterul(un rezistor), si circuitul de comanda cu mosfetul IRLB8743.
  
 === Software Design === === Software Design ===
-  * PID algorithm +Citirea de la modului MAX6675K necesita un delay de 200ms. Am realizat acest lucru non-blocant cu ajutorul functiei millis().\\ 
-  * 2 Buttons +Toate butoanele au debounce, iar butonul principal, cel al encoderului rotativ suporta si long-press, pentru a schimba intre meniuri.\\ 
-  ​* Multipage menu+Pentru termostatare am folosit algoritmul ​PID. Am adaugat erorile la integrala cu 5 grade inainte de temperatura setata, pentru a nu aparea overshoot puternic la incalzirea de la temperatura mica la temperatura mare(de exemplu de la 50 la 350). Perioada intre sample-uri este de 0.15s.\\ 
 +Factorii de proportionala-derivata stabilizeaza temperatura fara overshoot la aproximativ SET_TEMP-5.\\ 
 +Termenul integralei stabilizeaza temperatura la SET_TEMP+-1.\\ 
 +Encoderul rotativ este atasat unei intreruperi. Astfel, am obtinut o interfata foarte fluida, care raspunde foarte bine la comenzi.\\ 
 +Temperaturile butoanelor se pot seta din meniul de setari si se salveaza in EEPROM.\\ 
 +Compilarea am facut-o cu flag-ul -O2.  
  
 === Rezultate obtinute === === Rezultate obtinute ===
-{{:​pm:​prj2021:​alazar:​ss1.jpeg?200|}} + 
-{{:​pm:​prj2021:​alazar:​ss2.jpeg?200|}}+{{:​pm:​prj2021:​alazar:​diablo50002.jpg?600Montaj in carcasa}} 
 + 
 + 
 +{{:​pm:​prj2021:​alazar:​diablo50001.jpeg?600Rezultatul final}}
  
 === Concluzii === === Concluzii ===
 +In urma acestui proiect mi-am consolidat cunostiintele de programare, am invatat mai multe despre algoritmul PID,
 +despre realizarea unei interfete eficiente, non-blocante,​ foarte placute estetic si cel mai important am realizat un aparat foarte
 +robust, compatibil cu orice letcon de pe piata care are termocupla de tip K, foarte bun pentru a realiza in continuare alte proiecte de acest tip.
 +Majoritatea testelor le-am realizat cu o sursa liniara cu transformatoare.
 +
 +=== Link Github ===
 +[[https://​github.com/​raduleo19/​Soldering-Station | Github]]
 === Download === === Download ===
 {{:​pm:​prj2021:​alazar:​solderingstation.zip| Cod sursa}} {{:​pm:​prj2021:​alazar:​solderingstation.zip| Cod sursa}}
 +
 === Jurnal === === Jurnal ===
    * 25 Aprilie -> Alegerea temei proiectului    * 25 Aprilie -> Alegerea temei proiectului
Line 52: Line 69:
    * 3 Iunie -> Crearea logicii principale a codului, proiectare interfata    * 3 Iunie -> Crearea logicii principale a codului, proiectare interfata
    * 5-6 Iunie -> Montaj final si programarea completa    * 5-6 Iunie -> Montaj final si programarea completa
 +   * 9 Iunie -> Adaugare setari temperatura butoane, rezolvare bug derivata cu semn inversat, adaugare sampling time 0.15s 
 +   * 10 Iunie -> Calibrare PID precizie +-1, varianta finala
 === Bibliografie/​Resurse === === Bibliografie/​Resurse ===
-[[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​alazar/​programmablesolderingstation?​do=export_pdf |Download ​pagina asta]]+[[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​alazar/​programmablesolderingstation?​do=export_pdf |Download ​PDF]]
pm/prj2021/alazar/programmablesolderingstation.1622737020.txt.gz · Last modified: 2021/06/03 19:17 by radu_leonard.rica
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