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:33]
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.+Din schema lipseste sursa de 24V 5A, coboratorul de tensiune, heaterul(un rezistor), si circuitul de comanda cu mosfetul ​IRLB8743.
  
 === Software Design === === Software Design ===
-Citirea de la modului MAX6675K necesita un delay de 200ms. Am realizat acest lucru non-blocant cu ajutorul functiei millis(). +Citirea de la modului MAX6675K necesita un delay de 200ms. Am realizat acest lucru non-blocant cu ajutorul functiei millis().\\ 
-Toate butoanele au debounce, iar butonul principal, cel al encoderului rotativ suporta si long-press, pentru a schimba intre meniuri. +Toate butoanele au debounce, iar butonul principal, cel al encoderului rotativ suporta si long-press, pentru a schimba intre meniuri.\\ 
-Pentru termostatare am folosit algoritmul PID. Am o banuiala ca perioada ​de esantionare este prea mica si derivata ​nu isi face efectul.  +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.\\ 
-La setarea unei temperaturi,​ algoritmul are putin overshoot, dar dupa o perioada integrala rezolva situatia si se stabilizeaza la +-1 grad celsius+Factorii de proportionala-derivata stabilizeaza temperatura fara overshoot ​la aproximativ SET_TEMP-5.\\ 
-Encoderul rotativ este atasat unei intreruperi. Astfel, am obtinut o interfata foarte fluida, care raspunde foarte bine la comenzi. +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?500| Montaj in carcasa}}+{{:​pm:​prj2021:​alazar:​diablo50002.jpg?600| Montaj in carcasa}}
  
  
-{{:​pm:​prj2021:​alazar:​ss2.jpeg?500| Rezultatul final}}+{{:​pm:​prj2021:​alazar:​diablo50001.jpeg?600| Rezultatul 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 60: 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.1622737993.txt.gz · Last modified: 2021/06/03 19:33 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