Kontroler za lemilicu je projekat započet pre nekoliko godina… no došlo je vreme da se isti dovede kraju :). Osnovni problem sa bazičnom aplikacijom dotičnog kontrolera je to što je za mozak istog odabran PIC16F690 koji ne može da se pohvali sa velikom količinom flash-a. Taj pic je odabran zato što sam ja pre nekog vremena naručio (slučajno, hteo sam samo 10) 100 komada pa sam onda dotične piconje trošio gde god su mogli da stanu :).

Elem, osnovni firmware je temperaturu kontrolisao na isti način na koji to radi klasičan termostat. Dakle gasio je grejač kada temperatura dostigne željenu vrednost i palio ga kada temperatura padne ispod vrednosti određene histerezisom i željenom vrednošću. “Problem” koji se javlja pri takvoj kontroli, a koji ima i originalni analogni drajver za lemilicu je u tome što i po isključivanju grejača isti nastavlja da zagreva vrh te lemilica osciluje izmedju donje vrednosti odredjene sa željenom vrednošću umanjenom za histerezis i gornje vrednosti koja zavisi od karakteristika lemilice, okoline u kojoj se nalazi i snage samog grejača (u slučaju Solomon HQ-20/30 lemilice gornja vrednost je oko 30C iznad željene). Ta oscilacija se ne primećuje toliko u radu (bez problema se lemi i sa 300C i 350C u većini slučajeva) ali sam ja ipak odlučio da je red da se lemilica kontroliše malo ozbiljnije te da se te oscilacije dovedu na minimum.

Da bi uglavio PID rutinu u firmware nesto je moralo da leti napolje tako da sam morao da izbacim mogućnost selektovanja tipa lemilice (sa termoparom ili sa ptc-om) te se sada ta odluka vrši u samom firmware-u i generise se poseban HEX za lemilice sa termoparom i za lemilice sa ptc-om. Dalje, meni za podesavanje setovanja je isto morao da leti tako da je ostala samo mogucnost podesavanja inicijalne temperature i to je sve, svi parametri rada (PID koeficijenti, slope/offset za PTC etc etc) se upisuju u HEX odnosno mogu da se upisu direktno u eeprom.

Ono sto se ispostavilo zanimljivo je da se sve 4 lemilice okacene na kontroler ponasaju identicno sto se tice PID kontrole (1 HAKKO original, 1 QUICK, 1 noname HAKKO kompatibilna i jedna Solomon) čemu sam se nadao ali nisam verovao da će tako biti no biće da je sličan dizajn i grejač iste snage učinio svoje :).

Elem, posle malo igranja sa parametrima dobio sam ovo. Ovi parametri idu po defaultu u firmware. Dozvolio sam mali overshoot radi bržeg dostizanja tražene temperature.

PID kontrola lemilice

PID kontrola lemilice

Na grafiku se vidi (zadata temperatura je 250C) kako kreće inicijalizacija, vidi se kako se održava idle temperatura. Do 280sekundi lemilica visi u vazduhu; od 280 do 350 sekundi lemilica je pritisnuta uz natopljen sunđer a zatim i umocena u casu sa vodom; od 400sec do 500sec su lemljeni neki trough hole otpornici na neku bez veze ploču i od 500 pa na dalje je visila opet u vazduhu. Kao što se da videti temperatura se nije značajno mrdala sa zadatih 250C. (btw ovih 250C je realno 277C pošto nisam dodao na računicu temperaturu u sobi a znamo da termopar daje razliku u temperaturi vrućeg i hladnog spoja a ne apsolutnu temperaturu vrućeg spoja).