VIŠA ELEKTROTEHNIČKA ŠKOLA
Mazinjanin Milan MERENJE I REGULACIJA TEMPERATURE - diplomski rad -
Beograd,2007
Kandidat: Mazinjanin Milan Broj indeksa: 40/03 Smer: Automatika Tema: MERENJE I REGULACIJA TEMPERATURE Osnovni zadaci: 1. Teorijsko upoznavanje sa merenjem i regulacijom temperature 2. Pisanje programa za mikrokontroler u asembleru 3. Realizacija sistema i priključenje u realan proces Hardver: 35%
Beograd, 10.12.2007
Softver: 35%
Teorija: 30%
Mentor: _______________________ Mr Borislav Hadžibabi ć
Kandidat: Mazinjanin Milan Broj indeksa: 40/03 Smer: Automatika Tema: MERENJE I REGULACIJA TEMPERATURE Osnovni zadaci: 1. Teorijsko upoznavanje sa merenjem i regulacijom temperature 2. Pisanje programa za mikrokontroler u asembleru 3. Realizacija sistema i priključenje u realan proces Hardver: 35%
Beograd, 10.12.2007
Softver: 35%
Teorija: 30%
Mentor: _______________________ Mr Borislav Hadžibabi ć
IZVOD U ovom radu je opisan kompletan projekat temperaturnog regulatora, sa pokazivanjem trenutne i zadate temperature. Upravljanje se bazira na PI algoritmu.Uredjaj je namenjen za rad u raznim granama industrije, kao što su industrija brizganja plastike, pe čenja gume, ekstrudiranja i sl. Kao aktuator koristi se solid state relej (Solid State Relay-SSR), zbog vrlo česte promene stanja uklju čeno/isključeno.
ABSTRACT In this work, a complete temperature regulator project, displaying actual and desired temperature, is described. Control is based upon PI algorithm. Device is to be used in various kinds of industry, such as plastic moulding industry, baking rubber, extrusion etc. As an actuator, a solid state relay (SSR) is used, due to very short control period.
SADRŽAJ 1. UVOD.....................................................................................................................................1 2. HARDVER............................................................................................................................2 2.1 Osnovna arhitektura...............................................................................................2 2.1 Ostali hardver..........................................................................................................3 3. ULAZNI SIGNAL.................................................................................................................4 3.1 Temperatura............................................................................................................4 3.2 Izbor senzora...........................................................................................................4 3.3 Ulazno kolo..............................................................................................................5 4. TEORIJSKA ANALIZA REGULACIJE...........................................................................7 5. SOFTVER............................................................................................................................14 5.1 Set-up meni............................................................................................................14 5.2 Realizacija regulacije............................................................................................15 6. KONTROLA IZLAZA.......................................................................................................16 7. TESTIRANJE UREĐAJA.................................................................................................17 8. MOGUĆA POBOLJŠANJA..............................................................................................21 9. ZAKLJUČAK......................................................................................................................22 10. INDEKS POJMOVA........................................................................................................23 11. LITERATURA..................................................................................................................24 12. DODATCI..........................................................................................................................25
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
1. UVOD Zadatak ovog diplomskog je konkretno rešenje temperaturnog regulatora za grejanje, za primenu u industriji. Podzadaci su da ima prikazivanje trenutne temperature sistema, zadavanje i prikazivanje željene temperature u opsegu 0-200 C, i izlaznu kontrolu prilagodjenu za brzo i precizno upravljanje. Temperaturna kontrola je česta potreba u industriji, bilo da se radi o industriji gume, plastike, drvnoj industriji ili sl. Postoje mnoga, gotova rešenja, ovakvih ure đaja. Sve poznate firme za proizvodnju elektronskih sklopova imaju u svojoj ponudi više tipova termoregulatora, ili pirometara, kako ih često nazivaju. Nabrojao bih par najpoznatijih kao što su Siemens, Omron, Philips, Omega, itd. U R.Srbiji takođe postoji proizvodnja kvalitetnih termoregulatora, i naveo bih firmu čiji je proizvod (DTR-931) bio inspiracija za ovaj diplomski rad - Nigos, Niš. U ponudi se još uvek nalaze analogni regulatori, koji se koriste isklju čivo zbog kompaktibilnosti sa starijim tipovima mašina, dok nove generacije termokontrolera, baziranih na mikrokontrolerima, svojom cenom i mogu ćnostima preuzimaju primat u proizvodnji, primeni, i prodaji. Svaka generacija i model ure đaja imaju neke svoje specifi čnosti. Osnovne karakteristike kod izrade i nabavke termoregulatora su: -ulazna sonda, -merni opseg, -tačnost, -radni napon, -dimenzije, -analogni ulazi i izlazi i njihove vrednosti, -digitalni ulazi i izlazi, -način regulacije, -mogućnosti komunikacije sa ostalim ure đajima, itd. ˚
Standardne veličine za: -radni napon su 220 V AC, 12 V DC, 24 V DC itd., -grešku su uglavnom ispod 1%, -ulazne signale su 0-20 mA, 4-20 mA, 0-5V, 0-10V, 1-5V, 2-10V itd., -načine regulacije su ON/OFF, P, PI, PID , -komunikacione portove su RS232, RS485, USB itd., -ugradne dimenzije su 90.5x90.5, 45.5x90.5 i 45.5x45.5, po DIN standardu.
1
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
2. HARDVER 2.1 Osnovna arhitektura Osnovu uređaja čini mikrokontroler. Mikrokontroleri su vrlo pogodni za ovakve uređaje jer su malih dimenzija, velikih mogu ćnosti i pristupačne cene. Oni omogu ćavaju da se uz vrlo mali broj eksternih komponenti izradi ure đaj koji obavlja složene funkcije. Osnovni delovi su procesor, memorija, i ulazno/izlazni pinovi. Mikrokontroleri poseduju dodatne mogućnosti kao što su: modul serijske komunikacije UART (Universal Asynchronous Receiver Transmiter), hardverski podržani protokoli I2C i SPI (Serial Peripheral Interface), interni RC oscilator, A/D konvertor... Obzirom da su sve ove jedinice implementirane na jednom čipu, uveliko se smanjuje potreban prostor na štampanoj plo čici, smanjuje se vreme za realizovanje me đusobnih konekcija i smanjuje se mogu ćnost greške pri projektovanju i povezivanju. Za ovaj projekat je odabran proizvod firme Microchip Technologies, model PIC 18F4520. PIC je baziran na Harvard aritekturi, gde su magistrale za podatke i instrukcije razdvojene. Program je pisan u asembleru, ali je mogu će i u višim programskim jezicima kao što su: Visual Basic, C, C++, Pascal, Delphi, Labview itd. Proces upisa programa u mikrokontroler naziva se programiranje. Za programiranje je potreban programator. Programatore pored originalnih Microchip-ovih, proizvode i druge firme. Programatori se me đusobno razlikuju po brzini upisa, broju podržanih mikrokontrolera, proveri zapisa itd. Programiranje se može vršiti i dok je čip unutar elektronskog kola .Ova funkcija se zove ICSP (In Circuit Serial Programming). Vrši se putem 3 pina mikrokontrolera, Program Data (PGD), Program Clock (PGC), i Programing Voltage (Vpp). Napon programiranja je 12V, dok postoji mogu ćnost da se programira i sa naponom od 5V, što dalje oduzima jedan I/O pin (RE3). Alternativno rešenje je i bootloader, koji se ipak prvo mora upisati u mikrokontroler kao deo koda putem standardnog programatora, i jednom upisan bootloader omogućava programiranje mikrokontrolera putem RS232 komunikacije sa PC računarom. Bootloader je deo koda programa, i samim tim uzima deo memorije predvi đene za programiranje. Svi I/O pinovi mogu da se programiraju na više na čina, što znači da se ponekad funkcije I/O pina me đusobno izuzimaju. Svi I/O pinovi mogu biti barem ulazne ili izlazne linije, dok mnogi mogu imati i specifi čnu ulogu. Pinovi su grupisani u portove, konkretno A, B, C, D i E. Svi portovi imaju 8 pinova, osim porta D koji ima 4 pina. Iako, u MPASM asembler programu, postoji funkcija debug, pri testiranju samog programa, ona ne može uvek da odrazi realno stanje registara, I/O linija itd., te se zato koristi hardverski debugg-er koji radi u realnom vremenu, i naziva se ICD (In Circuit Debug). ICD koristi iste pinove mikrokontrolera kao programator.Aktuelna verzija je ICD2, koji se može koristiti i kao programator i kao debugg-er. Za debugg ovog projekta koriš ćeni su MPLAB Simulator, i Microchip ICD2 hardverski debugg-er. Prikaz mikrokontrolera sa njegovim izvodima (I/O pinovi+napajanje) je dat na slici 2.1. Ostale specifikacije ovog mikrokontrolera su date u dodatku 1 ovog rada.
2
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Slika 2.1 Izvod pinova PIC18F4520 mikrokontrolera
2.2 Ostali hardver Od ostalog hardvera koristimo: -osnovne elektronske komponente (otpornike,kondenzatore,diode); -kristal kvarca 18.432 MHz; -7-segmentne LED displeje; -74HCT595 SIPO shift registre, za drajvovanje LED displeja; -D-SUB 9 pinski konektor za RS232 komunikaciju; -10 pinski konektor za ICSP programiranje; -tastere za zadavanje vrednosti temperature; -taster predviđen za reset sistema; -konektore za povezivanje napajanja, i ulaznog i izlaznog signala. 10 pinski konektor za ISCP programiranje je po ICD1 standardu. Mnogi programatori i debugg-eri koriste upravo ovaj tip, dok noviji ICD2 traži RJ-11 priklju čak, pa je potrebno napraviti kabal za prilago đavanje.
3
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
3. ULAZNI SIGNAL 3.1 Temperatura Temperatura je fizička veličina koja predstavlja stepen zagrejanosti tela. Intenzitet temperature: za razliku od dužine, mase i sl. koje se ozna čavaju kao parametarske veličine, temperatura je intenzivna, ili aktivna veli čina. Njena intenzivnost se ogleda u tome što prilikom podele na više manjih tela, svako od njih zadržava istu temperaturu. Za temperaturu se ne može izgraditi sabira č ili delitelj, te se zato i etalon za temperaturu ne ostvaruje na isti na čin kao za ekstezivne veli čine. Senzor za merenje temperature se zove termometar, a tehnika merenja temperature se zove termometrija. Termometar: pri delovanju toplote na neko telo, menjaju se njegova odre đena fizikalna svojstva. Menjaju se dužina, volumen, termoelektri čna sila, el. otpor i sl., a propratni efekti su dilatacija, ekspanzija, zra čenje, termoelektricitet i sl. Temperatura se ne može meritii drugačije nego posrednim putem, merenjem ovih termometrijskih veli čina. Ove termometrijske veli čine je moguće direktno meriti i nalaze se u funkcionalnoj vezi sa temperaturom. Temperaturne skale: Temperaturna skala predstavlja funkcionalnu vezu izme đu temperature i neke termometrijske veli čine. Prve temperaturne skale (Farenhajtova, Reomirova, Celzijusova) nisu imale apsolutni karakter. One su sve relativne, i razlikuju se po referentnim tačkama i po razmeri merne skale. Apsolutna nula, koju je uveo Kelvin, je postala reper za utvr đivanje apsolutne temperature. Apsolutna nula, koja se zove i Kelvinova nula, je -273,15 C. Razmera Kelvinove i Celzijusove skale je identi čna. ˚
3.2 Izbor senzora Izbor senzora za merenje temperature je veoma bogat. Postoje senzori najrazli čitih namena, dimenzija, ta čnosti, itd. Po na činu rada postoje: ekspanzioni senzori, termoparovi, otpornički senzori, poluprovodni čki, senzori infracrvenog zra čenja i specijalni senzori temperature. Svaki poseduje karakteristike koje ga čine pogodnim, ili manje pogodnim za određenu primenu. Za ovaj diplomski rad je izabran PT100, sa četvorozičnom spregom na merni ure đaj, u obliku sonde za potapanje. Proizvo đač je Turck, model TP-206A-L200, sa pripadaju ćim metalnim štitom, model THW-6-L150. Priklju čni kabl je Hirschmann 933, dužine 2m. Otpornički senzori se još zovu i RTD (Resistance Temperature Detector). Postoje metalni i poluprovodni čki RTD senzori (termistori). Metalni RTD senzori se izra đuju od platine (Pt), nikla (Ni), bakra (Cu)... Svaki od njih ima određeni merni opseg, linearnost i primenu. Vrednost termootpora pri T=0 C je standardizovana, i može da iznosi 10 Ω do 25k Ω. Najčešća vrednost je 100 Ω, pa otuda i nazivi Pt100, Ni100, Cu100... Oblik sonde može biti: sonde za potapanje, površinske, i ru čne sonde. Prednosti su: visoka ta čnost, stabilna karakteristika, velika linearnost, brz odziv, male dimenzije i prihvatljiva cena. Mane su: pasivni su senzori, mala promena otpora po K, mala nominalna vrednost otpora pri 0 C i samozagrevanje. Senzor TP-206A-L200 je predvi đen za merenje temperature te čnosti i gasova. Predviđen je za merenje temperature u opsegu od -30 do 350 C, u klasi A, a do 500 C, u klasi B, vreme reagovanja je 15s, poseduje IP67 zaštitu, i ima zaštitu od pogrešnog spajanja priključnih vodova. ˚
˚
˚
˚
˚
4
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
3.3 Ulazno kolo Pošto smo temperaturu preveli u otpornost, od te otpornosti treba napraviti napon u opsegu 0-5V, za potrebe ulaza u mikrokontroler, odnosno njegov A/D konvertor. Kolo koje konvertuje otpornost u napon je signal kondicioner. Kondicioner je smešten na zasebnu pločicu, i može se menjati u slu čaju promene mernog opsega, tipa sonde, ili metode merenja. Električna šema signal kondicionera je prikazana na slici 3.1. R4
100k + OP1 -
R9 R1
51k1 51k1
R3
51k1
V1 R7
R8
1k Ω
100 Ω
OP3 +
Vout
P1
10k Ω
+5V R6
1k Ω
PT100
R5
10k
V2
+12V R10
OP2 +
R11
51k1
68 k R2
100k + OP4 -
P2
2k2 R12
68 k -12V
Slika 3.1 Merni most i instrumentacioni poja č avač
Sonda PT100 je povezana u Vitstonov most. Njena otpornost se menja u opsegu od 100 do 183.19 Ω, za temperaturu od 0 do 220 C. U ovakvoj konfiguraciji mosta, struja kroz sondu je 4.2 do 4.5mA, i razvija snagu od 2 do 3.2mW, što unosi grešku u merenju od približno 0.1 do 0.5 C. Poželjno je da otpornici u mostu budu sa 1% tolerancije, ili da se upare. Napon na izlazu mosta, izme đu tački V1 i V2, se menja od 0 do 320mV. Taj mali napon se povećava preko instrumentacionog poja čavača, čime dobijamo pun opseg za A/D konvertor mikrokontrolera. Sva 4 operaciona poja čavača se nalaze unutar jednog čipa: TL074. Potenciometar P2 služi da podesimo da pri 0 C na izlazu signal kondicionera bude tačno 0V, odnosno da eliminiše ofset koji unose operacioni poja čavači. 5 ˚
˚
˚
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Potenciometar P1 služi za podešavanje, da pri 220 C na izlazu signal kondicionera bude tačno 5V, odnosno da podesi poja čanje na nešto manje od 16, ta čnije 15.78. ˚
Izlazni napon instrumentacionog poja čavača je: ⎛
Uout = ⎜⎜1 + 2 ⋅
⎝
⎞ R4 ⎟ ⋅ (V 1 − V 2 ) R5 + P 1 ⎠⎟ R9 R1
(3.1)
Mora se voditi ra čuna da je R2=R4, R9=R10, i R1=R3. Po jednačini 3.1, i upotrebljenim elementima vidimo da maksimalno poja čanje iznosi 21.77, a minimalno 11.96. Četvorožični način priključivanja Pt100 sonde je dat na slici 3.2. V1
+5V R l
R l V2
R l
PT100
R l
Slika 3.2 Č etvorožič ni nač in priključ enja sonde
Otpornosti R l označavaju otpornost provodnika koji vode do Pt100 senzora. Na ovaj način se kompenzuju parazitne otpornosti unutar Vitstonovog mosta, usled razli čitih dužina vodova, i usled promene temperature.
6
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
4. TEORIJSKA ANALIZA REGULACIJE Na slici 4.1 prikazana je principska blok šema sistema automatskog upravljanja (SAU). X(t) +
e(t)
Regulator
u(t)
y(t)
Objekat Upravljanja
Y(t)
Senzor
Slika 4.1 Sistem Automatskog Upravljanja
Signali sa blok šeme su: X(t) – zadata vrednost Y(t) – regulisana vrednost e(t) – greška, e(t)= X(t)-y(t) u(t) – upravlja čka vrednost Postoje sistemi regulacije u otvorenoj i zatvorenoj sprezi. Ovde je prikazan sistem sa zatvorenom spregom, danas ve ćinski zastupljen. Kod sistema u otvorenoj sprezi, ne postoji povratna informacija o tome šta se dešava na izlazu, koju bi iskoristili za korekciju upravljanja. To je problemati čno jer na sam sistem uti če mnogo faktora. Oni se ti ču njegove stabilnosti, brzine odziva, kontrolabilnost, itd. U takvom sistemu se, po pravilu, postavljaju granični senzori, koji osiguravaju proces od havarije. Na stabilnost sistema utiče tačnost regulatora i senzora, odabrani na čin upravljanja, ometajući faktori itd. Na brzinu odziva uti če inertnost sistema, inertnost upravlja čkih tela, snaga upravljačkih elemenata, itd. Pod mogu ćnosti upravljanja misli se na to, da li je sistem pravilno postavljen, konstruisan i srazmeran u odnosu upravljanog i upravlja čkog tela, tj. da li su tehnolozi i mašinski inženjeri zaduženi za sistem rada i konstrukciju svoj posao zadovoljavajuće uradili, i samim time nama predali sistem koji je uopšte mogu će kvalitetno kontrolisati. Kvalitetna kontrola je pojam koji definiše tehnolog, daju ći nam precizna uputstva o tome šta zadovoljava potrebu, a šta ne. Takođe, mora se ra čunati sa raznim poreme ćajima. Poremećaji se predviđaju na taj način da se sistem osposobi da brzo povrati stabilnu, zadatu vrednost. Posmatraju ći neku temperaturnu aplikaciju, poreme ćaj može biti: pad spoljašnje temperature, promena pritiska, promena vlage, ili čak i razni otkazi u sistemu kao otkaz rada jednog ili više greja ča u sistemu sa dva ili više greja ča. Deo SAU koji mi razmatramo je regulator. Njegova uloga je da primi podatak o trenutnoj grešci sistema i da utiče na aktuator, kako bi se dobila željena vrednost izlaza. Na čin na koji se upravlja sistemom zavisi od upotrebljenog algoritma upravljanja.
7
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Osnovna podela upravljanja je na direktno i inverzno. Kod direktnog upravljanja, sa povećanjem izlazne (upravljane) veli čine se povećava i upravljanje, i obrnuto kod inverznog upravljanja. U blok šemi se direktno upravljanje ozna čava plusom u grani povratne sprege, a inverzno – minusom. Tipi čni primeri su grejanje kao inverzno, i hla đenje kao direktno upravljanje. Kod grejanja, kako se izlazna temperature pove ćava, upravljanje se smanjuje, da se ne pređe zadata temperatura, dok je kod hla đenja suprotno – kako se izlazna temperatura povećava, hlađenje se mora pove ćati da bi se temperatura održala u granicama tolerancije. Po algoritmu upravljanja, svakako, jedan od naj češće korišćenih je PID algoritam, kompletan, ili u nekim svojim delovima. PID kontrola teži da dovede sistem u ravnotežno stanje, odnosno da se izjednače zadata i ostvarena vrednost. Na slici 4.2 nalazi se blok šema PID regulatora. Kao što ime sugeriše, objedinjena su 3 dejstva, P je proporcionalno, I-integralno, i D-diferencijalno dejstvo. P e(t)
+
I
+
u(t)
+ D
Slika 4.2 PID regulator
Na slici 4.3 je prikazana proizvoljna funkcija na kojoj će biti označeni i opisani osnovni parametri pri odzivu sistema na odsko čnu (step) pobudu. Y(t) P
X(t) 90%
ess
10%
t
t Slika 4.3 Odziv sistema
P - preskok tr - vreme uspona (Rise time) ess - greška u ustaljenom stanju (Steady State error)
Preskok je prvi ekstrem izlazne veli čine, odnosno, maksimalna vrednost izlaza u prvom prelasku preko zadate vrednosti. Vreme uspona je vreme za koje sistem promeni svoju vrednost sa 10% na 90%. 8
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Greška stacionarnog stanja je vrednost greške u smirenom stanju sistema, koje nastaje kada greška ulazi u uzak nivo odstupanja od zadate vrednosti za neki odre đeni mali procenat. Taj procenat se različito definiše, ali okvirna vrednost je 5%. Proporcionalno dejstvo je dejstvo srazmerno trenutnoj grešci. Pri ovom tipu upravljanja kao konstanta proporcionalnosti koristi se Kp- P konstanta ili konstanta poja čanja. Pored Kp može se koristiti i PB (Proportional Band), iliti opseg proporcionalnosti, izražen u procentima. Da bi sistem uopšte funkcionisao, Kp mora biti ve će od 0. Odnos Kp i PB je označen jednačinom 4.2. P dejstvo ne eliminiše grešku stacionarnog stanja! P = Kp * e(t )
Kp = P =
(4.1)
100%
(4.2)
PB
100% PB
* e(t )
(4.3)
Promenom parametra Kp, menja se odziv sistema. Prihvatljiv odziv prikazan je na slici 4.4a. Povećanjem Kp (slika 4.4b), sistem brže dostiže zadatu vrednost, ali preveliko pojačanje može dovesti i do prevelikih preskoka ili čak i do nestabilnosti u sistemu, koja se ogleda u prevelikim oscilacijama temperature i gubljenju kontrole. Premalo poja čanje (slika 4.4c) može dovesti do previše sporog odziva sistema, ili do toga da sistem nikada ne dostigne željenu temperaturu. Y(t) X(t)
t Slika 4.4a P upravljanje pri dobro podešenom Kp
Y(t) X(t)
t Slika 4.4b P upravljanje pri prevelikom Kp
9
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Y(t) X(t)
t Slika 4.4c P upravljanje pri premalom Kp
Osnovni problem sa P upravljanjem je što nikada ne može dovesti sistem u ravnotežu, i eliminisati grešku. Sistem upravljan P dejstvom pravi različite greške stacionarnog stanja, za različite uslove u kojima se sistem nalazi. Nekada se ovakva greška stacionarnog stanja podešavala ručno, a danas se koristi automatski pomera č (auto offset), koji predstavlja I dejstvo. Na slici 4.5 prikazan je odziv sistema, i vrednost greške stacionarnog stanja za različite vrednosti proporcionalnog poja čanja. Y(t) X(t)
Kp1 Kp2
Kp1>Kp2
t Slika 4.5 P upravljanje
Integralno dejstvo je srazmerno zbiru svih prethodnih grešaka. Ovo dejstvo se bazira na istoriji i doprinosi upravljanju. I dejstvo se još zove automatski offset. Ono pomera proporcionalni opseg za vrednost koju samo P upravljanje nije moglo da postigne. I dejstvo eliminiše grešku u stacionarnom stanju! I = Ki *
t =t n
∑0 e(t )
(4.4)
t =
Ki =
Kp
Ti Iz jednačine 4.4 se vidi da
(4.5)
I dejstvo dobija svoj zna čaj sa vremenom. Ono dovodi do eliminacije greške u stacionarnog stanju. Me đutim, ukoliko se ne dozira pravilno, moze dovesti do oscilacija regulisane veli čine. I dejstvo se nikada ne koristi samo, jer usporava odziv sistema, već se koristi u kombinaciji sa P dejstvom. Ti je integralno vreme. Izražava se u minutama ili broju ponavljanja po minuti.
10
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Parametar Ki, odnosno integralna konsanta, se menja radi dobijanja odgovaraju ćeg odziva sistema. Pove ćanjem Ki, pove ćava se preskok, ali se i brže postiže ta čnost izlaza. Pri smanjenju Ki, smanjuje se preskok, ali vreme dostizanja stacionarnog stanja se produžava. Na slici 4.6a prikazan je odziv sistema sa pravilno primenjenim P i I dejstvom, a na slici 4.6b se vidi premalo I dejstvo. F-ja ovakvog upravljanja je opisana slede ćim jednačinama: P + I = Kp
t = t n
* e (t ) + Ki * ∑ e (t )
(4.6)
t = 0
P + I = Kp * e(t ) +
Kp Ti
⎡
1
⎣
Ti
P + I = Kp * ⎢e(t ) +
t =t n
* ∑ e(t )
(4.7)
t =0 t =t n
⎤
t =0
⎦
* ∑ e(t )⎥
(4.8)
Y(t) X(t)
t Slika 4.6a PI upravljanje pri dobro podešenim Kp i Ki
Y(t) X(t)
t Slika 4.6b PI upravljanje pri loše podešenim Kp i Ki
Pri implementaciji I dejstva, mora se voditi računa da ne do đe do nagomilavanja integralne greške. Ovo može dovesti do velikih oscilacija i izbacivanja sistema iz stabilnosti. Problem se javlja kada integralna greška nastavi da raste čak i kada je sistem u zasi ćenju, pozitivnom ili negativnom. Ovaj problem se rešava pri izradi samog ure đaja na nekoliko načina: 1. Ograničavanjem integralne greške i po pozitivnoj i po negativnoj vrednosti; 2. Određivanjem vremenskog perioda u okviru koga se integrali greška; 3. Integraljenjem greške tek kada je sistem u proporcionalnom opsegu.
11
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Diferencijalno dejstvo je dejstvo koje posmatra razliku greške u dva uzastopna merenja. Kada diferenciramo tu razliku po vremenu dobijamo brzinu promene greške. Na taj način predviđamo kolika će nam greška biti u slede ćem momentu merenja. Ovo dejstvo, ako se pravilno primeni, smanjuje preskok i ubrzava eliminaciju greške u ustaljenom stanju. D = Kd * [e ( t n −1 ) − e ( t n ) ] Kd = Kp * Td
(4.9) (4.10)
Td je derivativno vreme. Izražava se u jedinici vremena. D dejstvo ima najveću vrednost pri brzim promenama temperature. Kako se dostiže stacionarno stanje, njegov uticaj is čezava. Pri izboru parametra Kd mora se voditi ra čuna da ne dodje do pojave visokofrekventnih smetnji. Ukoliko je Kd preveliko, sistem može postati nestabilan. Obzirom na komplikovanost primene D dejstva, mnogi jednostavniji sistemi koriste samo PI kontrolu. D dejstvo se takođe nikada ne upotrebljava samo, ve ć samo u kombinaciji sa P ili PI dejstvom. Na slici 4.7 je prikazano sadejstvo P, I, i D dejstava, a funkcija je opisana slede ćom jednačinom: P + I + D = Kp * e(t ) + Ki *
t =t n
∑0 e(t ) + Kd * [e(t 1 ) − e(t )] n−
n
(4.11)
t =
⎧ ⎫ 1 t =t P + I + D = Kp * ⎨e(t ) + * ∑ e(t ) + Td * [e(t n−1 ) − e(t n ) ]⎬ Ti t =0 ⎩ ⎭ n
(4.12)
Y(t) X(t)
t Slika 4.7 PID upravljanje, Kp, Ki, Kd dobro podešeni
12
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Podešavanje PID parametara, Kp, Ki i Kd se vrši na više na čina. Osnovna podela je: 1. Podešavanje po sistemu probe i greške; 2. Sistematsko podešavanje.
Podešavanje po osećaju, tj. po sistemu probe i greške, je vrlo individualno i zavisi od iskustva lica koje vrši podešavanje, i poznavanja ponašanja samog sistema na koji se primenjuje PID kontrola. Često, ovakvo podešavanje zahteva previše vremena za eksperimentisanje, tako da se primenjuje samo na manjim, jednostavnijim i bezopasnijim sistemima. Sistematsko podešavanje obuhvata više na čina: 1. Modeliranje sistema, i testiranje softverskim putem (npr. Matlab); 2. Korišćenjem algoritma za odre đivanje parametara, itd. Za potrebe modeliranja sistema mora se dobro poznavati svaki sklop sistema. Na ovaj način, kompletan sistem, i uslovi u kojima se nalazi, predstavljaju se matemati čkom formulom, bilo u vidu modela prostora stanja, prenosne funkcije, frekvencijskog odziva ili sl. Onda se sistem testira na odsko čni signal, u softveru, posmatraju ći izlaz, pri tome menjaju ći PID parametre, odnosno Kp, Ki i Kd koeficijente. Korišćenje algoritma, predstavlja vid podešavanja koji se nalazi na pola puta izmedju modeliranja i intuitivnog podešavanja. Algoritmi imaju unapred date i poznate vrednosti koeficijenata izraženih u vidu formule, u zavisnosti od 2 izmerena parametra sistema. Jedan od algoritama je i Cigler-Nikols (Ziegler-Nichols). Ovaj algoritam je prili čno jednostavan. Postupak je sledeći: Prvo se koristi samo P dejstvo. Kp koeficijent se poja čava od male do kriti čne vrednosti (Kpc) u koracima x2. Kada se dostigne kriti čna vrednost, koja proizvodi oscilacije u izlazu sistema, izmeri se period tih oscilacija (Tc). Ove 2 vrednosti su polazne za dobijanje svih koeficijenata, a oni se ra čunaju prema tablici 4.1.
P PI PID
Kp Kpc/2 Kpc/2.2 Kpc/1.7
Ti
Td
Tc/1.2 Tc/2
Tc/8
Tabela 4.1 Ziegler-Nichols tabela
Sistematsko podešavanje je dobro samo za odre đivanje početnih vrednosti, a fino podešavanje se opet mora vršiti na licu mesta u realnom vremenu.
13
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
5. SOFTVER 5.1 Set-up meni Prilikom prvog uklju čenja uređaja, mora se pokrenuti set-up meni, radi podešavanja osnovnih parametara kontrole. Set-up meni se aktivira držanjem tastera SET pritisnutim pri uključenju ili resetu. Izgled menija: Izaberite jednu od ponudjenih opcija : 1. Izmena zadate temperature (Tzad=XXX) 2. Izmena Kp parametra (Kp=XX) 3. Izmena Ki parametra (Ki=XX) 4. Akvizicija podataka na 5s 5. Pustanje u rad ?_ Izgled poruke za zadavanje temperature: Unesite novu vrednost zadate temperature (0-200) Tzad=_ Izgled poruke za zadavanje Kp parametra: Unesite novu vrednost konstante Kp (3-99) : Kp=_ Izgled poruke za zadavanje Ki parametra: Unesite vrednost konstante Ki (1-25) : Ki=_ Program za podešavanje ima par ograni čenja: -pri unosu parametara mora se voditi ra čuna da jednocifreni brojevi moraju biti upisani u formatu 0X (01,03,07 itd.) ili 00X (003, 005), a dvocifrenih (ukoliko je tražen trocifreni) u formatu 0XX (023,045,037 itd.), -unos konstanti i zadate vrednosti temperature nije ograni čen, pa se moraju upisati tačne vrednosti, i -period uzorkovanja je fiksan, i može se promeniti isklju čivo unutar koda programa. Svi parametri se čuvaju unutar EEPROM memorije, i njihova trenutno zadata vrednost se nalazi unutar zagrada na mestima gore ozna čenim kao XX ili XXX. Zadavanje temperature preko RS232 veze, i preko tastera na plo či se međusobno podržavaju, i može se koristiti bilo koji na čin.
14
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
5.2 Realizacija regulacije Proučivši dobro model PID upravljanja i standardna rešenja koja mnogi proizvo đači primenjuju, došlo se do zaklju čka da bi PI upravljanje bilo zadovoljavaju će za aplikacije za koje je ovaj termoregulator predvi đen. D upravljanje zadaje mnogo poteško ća i iskusnim proizvođačima i inženjerima, tako da se u ovom diplomskom radu ne će koristiti. Jednačine koje su date u prethodnom poglavlju za P, I i PI dejstvo, biće identične primenjene u kodu programa. Pri pisanju programa, vo đeno je računa da se sve mogu će vrednosti drže unutar 1 bajta. Ovo je urađeno da bi se lakše izvršila kontrola programa, da bi koristili uglavnom standardne instrukcije, i da bi se u realnom ure đaju proverio sam algoritam upravljanja. Kada algoritam upravljanja bude postigao zadovoljavaju će rezultate, može se pristupiti radu na poboljšanju tačnosti. Vrednost trenutne greške se ra čuna oduzimanjem trenutne vrednosti temperature od zadate. Zadata vrednost se zadaje putem tastera, i čuva se u EEPROM memoriji mikrokontrolera. To zna či da pri svakom uklju čenju uređaja, imamo sačuvanu poslednju zadatu vrednost. Upis u EEPROM se ograni čava tako da se upis vrši samo pri napuštanju menija za zadavanje temperature, a ne pri svakoj promeni. Na ovaj na čin povećavamo sigurnost upisane vrednosti, i pove ćavamo trajnost EEPROM-a. Zadavanje se vrši preko tastera na liniji RB4, a pove ćavanje i smanjenje preko tastera na liniji RB1 i RB2. Ovi tasteri koriste interapt na promenu (RB4), i interapt na silaznu ivicu (RB1,RB2).RB1 i RB2 su interapti na silaznu ivicu jer su u mirnom stanju vezani na +5V napajanja, što je ura đeno radi optimizacije fizičke realizacije. Trenutna temperatura se dobija sa 10-bitnog A/D konvertora. Vrednost A/D konvertora se mora skalirati da bi imali realnu vrednost. Vrednost konverzije se skalira množenjem sa koeficijentom 220/1024. Prikaz se dalje vrši preko tri 7-segmentna LED displeja. Podatak o temperaturi se šalje serijski preko RE0 linije na SIPO registre, i kada se pošalje ceo podatak o temperaturi, linija RE2 daje jedan period clock-a za latch-ovanje izlaza SIPO registara. Izlazi ovih registara napajaju 7-segmentne LED displeje. Linija RE1 daje takt za shift registre, za upis i pomeranje podataka. Ovaj postupak se ponavlja svaku 1s. Pošto se pri ra čunanju upravljanja uzima poslednja dobijena greška, obezbe đeno je da ona bude stara 100ms. To je omogu ćeno prolazom kroz petlju za izra čunavanje i prikaz 100ms pre po četka novog perioda upravljanja, samo ne prikazuju ći trenutnu temperaturu. U procesu za koji je namenjen ovaj ure đaj, 100ms stara greška nema bitan uticaj na kvalitet upravljanja. Vrednosti parametara Kp i Ki, su zadate putem set-up menija. Kp ima vrednost od 399, a koristi se neskalirano, dok vrednost Ki ima opseg zadavanja od 1-25, koji se kasnije skalira deljenjem sa konstantom 255 (0xFF), i realna vrednost se dobija u opsegu od 0.004 do 0.1. Ukoliko vrednost P upravljanja iznosi više od maksimalnih mogu ćnosti izvršnog elementa, ne ra čuna se I vrednost, već se automatski prelazi na 100% upravljanja. Ovo praktično znači da se I delovanje uopšte ne će računati, sve dok P dejstvo ne padne ispod 100%. Ovim se štitimo od nagomilavanja integralne greške. Pored toga, integralna greška ima ograničenu vrednost, i po pozitivnoj i po negativnoj vrednosti. Ukoliko želimo ve ću preciznost Ki konstante, možemo to posti ći kombinovanjem vrednosti Ki, i izra čunavanjem I greške i dejstva na svaki odre đeni period, koji je za X puta ve ći od perioda izra čunavanja trenutne greške. Period upravljanja se meri preko tajmera 1, i to 10x100ms. Vreme upravljanja se odre đuje preko tajmera 0.
15
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
6. KONTROLA IZLAZA Standardno se za kontrolu izlaza koriste relea ili TTL kompatibilni izlazi. Relea, odnosno elektromehani čki kontaktori, su ranijih godina bili naj češće rešenje. Tada su ta, uglavnom signalna, relea aktivirala kalem ve ćeg, snažnijeg kontaktora, sklopke, koje su uključivale/isključivale izvršni element. Pri koriš ćenju PI upravljanja, ukoliko želimo da postignemo veću preciznost moramo koristiti vrlo kratak period upravljanja. To nikako ne ide na ruku kontaktorima, jer su zbog svojih pokretnih mehani čkih delova podložni habanju. Tu se misli na trošenje kontakata koji se pregrevaju zbog elektri čnog luka, i ostale mehani čke delove koji se mogu polomiti, ili izgubiti svoja osnovna svojstva. Ovaj problem se relativno lako rešavao upotrebom kvalitetnih kontaktora, ali ni oni ne mogu da podnesu previše česta prebacivanja. Naravno da i cena vrlo kvalitetnih kontaktora nije mala i zanemarljiva (ali svakako ne bez razloga). Sa pojavom poluprovodni čkih relea za velike struje, omogu ćeno je korišćenje vrlo brzih prebacivanja. S tim u vezi, i upravlja čki element je morao imati sposobnost da isprati te brze promene, tako da je i signalni rele postao neprihvatljiv. Rele je prihvatljiv za periode upravljanja ve će od 10s, za kvalitetne releje, a preko 20s za manje kvalitetne. Upravljanje na ovom ure đaju se vrši na CMOS nivoima “0” i ”1”, odnosno 0 i 5V. Period upravljanja je 1 s. Sam period je podeljen na 100 delova, tako da se omogu ći upravljanje na nivou jednog procenta maksimalne snage. To zna či da je vreme prebacivanja iz OFF u ON položaj i obratno od 0 do 1000 ms, u koracima od po 10ms. Za ovo nam je potreban snažni izlazni poluprovodni čki rele. Izabran je proizvod firme Acushnet, model SE 2025-ZA. Najbitnija stavka kod izbora SSR releja je da gasi i pali izvršni element ta čno kada sinusoida napojnog naizmeni čnog napona bude u nuli. Ovo se mora obezbediti da bi se eliminisale smetnje. Takođe, ukoliko se koriste za velike struje, ova relea imaju zna čajno grejanje, te se mora koristiti odgovaraju ći hladnjak. Ovde je upotrebljen originalni hladnjak koji proizvođač preporučuje.
16
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
7. TESTIRANJE UREĐAJA Priključenje uređaja u realan proces i testiranje su jedini pravi pokazatelj kvaliteta projektovanja temperaturnog regulatora. Mi ćemo izvršiti priklju čenje na standardni greja č za vodu –Severin- , koje se koristi u doma ćinstima. Maksimalni kapacitet posude je 1l. Greja č koji je korišten ima izuzetno jako grejno telo snage 1 kW. Ovo je potrebno jer je brzina zagrevanja vode ovde klju čna osobina. Nuspojava je stvaranje kamenca na telu greja ča, koje utiče na brzinu postizanja odre đene temperature. Kao zaštitu od pregrevanja, greja č koristi bimetalni zaštitni sklop. Postavka oglednog sklopa data je na slici 7.1. Sam program rada je detaljno testiran i proveravan kroz MPLAB Simulator. Mnogi problemi u funkcionisanju su na ovaj na čin rešeni, ali postojali su i neki problemi koji nisu mogli biti otkriveni primenom Simulatora. Primer toga je titranje tastera za zadavanje temperature. Titranje tastera je pojava koja se manifestuje tako da usled jednog pritiska na taster, ure đaj registruje 2, 3, ili više, zbog mehaničkih svojstava tastera. Ovo je rešeno jednostavnim priklju čenjem keramičkih kondenzatora vrednost 100nF od linije tastera prema masi. Kondenzatori eliminišu brze promene u toku 1ms. Titranje tastera može trajati od 1-10ms u zavisnosti od kvaliteta, starosti, i uslova u kojima je taster radio (prašina, vlaga, korozivna i agresivna sredina itd.).
Slika 7.1 Ogledna postavka
17
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Ogled 1: Tzad=50 C, Ki=2, Kp - promenljivo ˚
Temperaturni odziv, K p=3, Ki=2 60 50 40 ] ] C 30 [ T
˚
20 10 0
0
0 2
0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 4 0 2 4 6 8 0 2 4 6 8 0 1 1 1 1 1 2 2 2 2 2 3
t[s]
Slika 7.2a Odziv sistema, Tzad=50 C ˚
Temperaturni odziv, Kp=9, Ki=2 60 50 40 ] ] C [ 30 T
˚
20 10 0 0
0 2
0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 4 0 1 2 1 4 1 6 1 8 2 0 2 2 2 4 2 6 2 8 3 0 1
t[s]
Slika 7.2b Odziv sistema, Tzad=50 C ˚
Temperaturni odziv, Kp=15, Ki=2 60 50 40 ] ] C 30 [ T
˚
20 10 0 0
0 2
0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 4 0 1 2 1 4 1 6 1 8 2 0 2 2 2 4 2 6 2 8 3 0 1
t[s]
Slika 7.2c Odziv sistema, Tzad=50 C ˚
18
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Ogled 2: Tzad=50 C, Ki=7, Kp - promenljivo ˚
Temperaturni odziv, Kp=3, Ki=7 60 50 40 ] ] C [ 30 T
˚
20 10 0 0
0 2
0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 4 0 1 2 1 4 1 6 1 8 2 0 2 2 2 4 2 6 2 8 3 0 1
t[s]
Slika 7.3a Odziv sistema, Tzad=50 C ˚
Temperaturni od ziv, Kp=9, Ki=7 60 50 40 ] ] C30 [ T
˚
20 10 0 0
0 4 0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 2 0 1 2 1 4 1 6 1 8 2 0 2 2 2 4 2 6 2 8 3 0 1
t[s]
Slika 7.3b Odziv sistema, Tzad=50 C ˚
Temperaturni odziv, Kp=15, Ki=7 60 50 40 ] ] C [ 30 T
˚
20 10 0 0
0 2
0 6 0 8 0 0 0 0 0 0 0 0 0 0 0 0 4 0 1 2 1 4 1 6 1 8 2 0 2 2 2 4 2 6 2 8 3 0 1
t[s]
Slika 7.3c Odziv sistema, Tzad=50 C ˚
19
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Svi ogledi su vršeni sukcesivno kako su i predstavljeni. U posudi je bilo 1l vode, koja je menjana za svaki ogled, da se ne bi čekalo hlađenje vode. Merenje je počinjalo od sobne temperature, od 20 C. Svi uzorci su uzimani na razmaku od 5 sekundi, u trajanju 5 minuta. Brzina promene temperature je približno 1 C/5s. Očigledne su promene u izlaznim graficima, sa promenom parametara upravljanja. Prema svemu prikazanom, kao najbolji izbor se pokazala slede ća kombinacija: Kp=15, Ki=2 (slika 7.2c). ˚
˚
20
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
8. MOGUĆA POBOLJŠANJA Realizovani uređaj je u potpunosti ispunio funkcinalne zahteve predvi đene projektom. U toku realizacije, a naro čito u fazi ispitivanja su uo čena moguća poboljšanja. Moguća poboljšanja su: -generalna optimizacija koda i štampane plo čice, -korišćenje boljeg (12-bitnog) A/D konvertora, -uvođenje boljih matemati čkih rutina i rad sa 16-bitnom aritmetikom, -smanjivanje struje kroz sondu (u slu čaju RTD senzora), -prelazak kompletnog ure đaja na rad samo sa jednostranim napajanjem, -merenje temperature u vise ta čaka primenom više sondi, -rad sa više razli čitih tipova sondi i mernih opsega, -postavljanje vremenski zadatih temperaturnih zona, -uvođenje D dejstva kao opcije, -mogućnost auto-tuning podešavanja PID parametara, -izrada programa za PC, za analizu promene temperature, -komunikacija putem USB porta, itd.
21
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
9. ZAKLJUČAK
Slika 9.1 Gotov ure đ aj
Nakon testiranja uređaja, zaključeno je da je ostvarena zadovoljavaju ća regulacija temperature. Ukoliko se ostvari ve ćina, ili sva navedena poboljšanja, ure đaj bi mogao biti konkurentan i na profesionalnom tržištu. Ovom prilikom bih želeo i da se zahvalim kompletnoj laboratoriji CER, Više elektrotehničke škole, na ustupanju kompletne tehni čke opreme na raspolaganje i na pomo ći pri realizaciji ovog projekta.
22
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
10. INDEKS POJMOVA A
O
A/D konvertor 2, 21 akvizicija 14 algoritam upravljanja 7, 15
ogled 17, 18, 19, 20 operacioni poja čavač 5
P D D upravljanje 8, 12, 15 debugg 2 direktno upravljanje 7
E EEPROM 14, 15 elektromehaički kontaktori 16
G greška merenja 1, 5
I I upravljanje 10, 11, 15 I/O pinovi 2, 3 ICSP 2 ICD2 2 instrumentacioni poja čavač 5, 6 inverzno upravljanje 7 interapt 15
K
P upravljanje 1, 8, 9, 11, 12, 15 PI upravljanje 1, 8, 12, 15, 16 PID upravljanje 1, 8, 13, 15 period upravljanja 15, 16 poremećaji 7 proporcionalni opseg 9 Pt100 4, 5, 6
R regulacija 1, 6, 15 RS232 1, 2, 3, 14 RS485 1 RTD 4, 21
S samozagrevanje 4 SAU 6 set-up meni 14 signal kondicioner 5 SIPO registar 74HCT595 3, 15 sonda 4, 5, 21 SSR relej 16
T
Kd 12, 13 Ki 10, 11, 13, 14, 15 Klasa A 4 Klasa B 4 Kp 9, 11, 12, 13, 14, 15 kvalitetna kontrola 7
termometar 4 temperaturne skale 4 termootpor 4 Td 12, 13 Ti 10, 13
L
V
LED displej 3, 15
Vitstonov most 5, 6
M
Z
mikrokontroler 2
Ziegler-Nichols 13 23
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
11. LITERATURA 1. M.Popović: ”Senzori i merenja”, 4. izdanje, Zavod za udžbenike i nastavna sredstva, Srpsko Sarajevo, 2004. 2. Ž.Đurović, B.Kovačević: ”Digitalni signali i sistemi”, 2. izdanje, Akademska misao, Beograd, 2004. 3. P.Bošnjaković: “Osnovi elektronike”, Viša elektrotehni čka škola, Beograd, 2001. 4. Microchip PIC 18F4520 data sheet, Microchip Technologies Inc., 2004. 5. Microchip MPLAB IDE user's guide, Microchip Technologies Inc., 2006. 6. http://www.microchip.com 7. http://www.wikipedia.org 8. http://www.omega.com 9. http://www.nigos.co.yu 10. http://www.turck.de 11. http://www.jumo.de 12. http://www.cypress.com 13. http://www.peaksensors.co.uk 14. http://www.baumerprocess.com 15. http://www.tellurex.com 16. http://www.ni.com (National Instruments) 17. http://www.htservices.com/Applications/Process/PID1.htm 18. http://www.controlguru.com/ 19. http://control.engineering-information.com/ 20. http://newton.ex.ac.uk/teaching/CDHW/Feedback/ 21. http://www.embedded.com/2000/0010/0010feat3.htm 22. http://iseinc.com/ 23. http://www.piclist.com 24. http://www.myke.com/main.htm 25. http://www.educypedia.be/index.htm 26. http://www.datasheetarchive.com 27. http://www.sharlight.com
24
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
12. DODATCI Dodatak 1 Osnovne karakteristike PIC18F4520 mikrokontrolera: Power-Managed Modes:
Flexible Oscill ator Structure:
. Run: CPU on, Peripherals on . Idle: CPU off, Peripherals on . Sleep: CPU off, Peripherals off . Idle mode Currents Down to 5.8 ⎧A Typical . Sleep mode Current Down to 0.1 ⎧A Typical . Timer1 Oscillator: 1.8 ⎧A, 32 kHz, 2V . Watchdog Timer: 2.1 ⎧A . Two-Speed Oscillator Start-up
. Four Crystal modes, up to 40 MHz . 4x Phase Lock Loop (available for crystal and internal oscillators) . Two External RC modes, up to 4 MHz . Two External Clock modes, up to 40 MHz . Internal Oscillator Block: - 8 user-selectable frequencies, from 31 kHz to 8MHz - P rovides a complete range of clock speeds from 31 kHz to 32 MHz when used with PLL - User-tunable to compensate for frequency drift . Secondary Oscillator using Timer1 @ 32 kHz . Fail-Safe Clock Monitor: - Allows for safe shutdown if peripheral clock stops
Peripheral Highlights : . High-Current Sink/Source 25 mA/25 mA . Three Programmable External Interrupts . Four Input Change Interrupts . Up to 2 Capture/Compare/PWM (CCP) modules, one with Auto-Shutdown (28-pin devices) . Enhanced Capture/Compare/PWM (ECCP) module (40/44-pin devices only): - One, two or four P WM outputs - Selectable polarity - Programmable dead time - Auto-shutdown and auto-restart . Master Synchronous Serial Port (MSS P) module supporting 3-Wire SP I (all 4 modes) and I2C. Master and Slave modes . Enhanced Addressable USART module: - Supports RS-485, RS-232 and LIN 1.2 - RS-232 operation using internal oscillator block (no external crystal required) - Auto-wake-up on Start bit - Auto-Baud Detect . 10-Bit, up to 13-Channel Analog-to-Digital (A/D) Converter module: - Auto-acquisition capability - Conversion available during Sleep . Dual Analog Comparators with Input Multiplexing
Program Memory Device
PIC18F4520
Special Microcontro ller Features: . C Compiler Optimized Architecture: - Optional extended instruction set designed to optimize re-entrant code . 100,000 Erase/Write Cycle Enhanced Flash Program Memory Typical . 1,000,000 Erase/Write Cycle Data EEP ROM Memory Typical . Flash/Data EEPROM Retention: 100 Years Typical . Self-Programmable under Software Control . Priority Levels for Interrupts . 8 x 8 Single-Cycle Hardware Multiplier . Extended Watchdog Timer (WDT): - P rogrammable period from 4 ms to 131s . Single-Supply 5V In-Circuit Serial Programming. (ICSP.) via Two Pins . In-Circuit Debug (ICD) via Two Pins . Wide Operating Voltage Range: 2.0V to 5.5V . Programmable 16-Level High/Low-Voltage Detection (HLVD) module: - Supports interrupt on High/Low-Voltage Detection . Programmable Brown-out Reset (BOR) - With software enable option
Data Memor y I/O
Flash (bytes)
# SingleWord Instructions
SRAM (bytes)
EEPROM (bytes)
32K
16384
1536
256
36
10Bi t A/D (ch)
CCP/ ECCP (PWM)
13
1/1
MSSP
SPI
Y
Master I2C
Y
T R A S U E
1
Comp.
Timers 8/16bi t
2
1/3
25
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Dodatak 2 Tabela promene otpornosti Pt100 elementa pri promeni temperature: C 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200 210 220 ˚
+0 C(Ω) 100.00 103.90 107.79 111.67 115.54 119.40 123.24 127.08 130.90 134.71 138.51 142.29 146.07 149.83 153.58 157.33 161.05 164.77 168.48 172.17 175.86 179.53 183.19 ˚
+1 C(Ω) 100.39 104.29 108.18 112.06 115.93 117.78 123.62 127.46 131.28 135.09 138.88 142.67 146.44 150.21 153.96 157.70 161.43 165.14 168.85 172.54 176.22 179.89 183.55 ˚
+2 C(Ω) 100.78 104.68 108.57 112.45 116.31 120.16 124.01 127.84 131.66 135.47 139.26 143.05 146.82 150.58 154.33 158.07 161.80 165.51 169.22 172.91 176.59 180.26 183.92 ˚
+3 C(Ω) 101.17 105.07 108.96 112.83 116.70 120.55 124.39 128.22 132.04 135.85 139.64 143.43 147.20 150.96 154.71 158.45 162.17 165.89 169.59 173.28 176.96 180.63 184.28 ˚
+4 C(Ω) 101.56 105.46 109.35 113.22 117.08 120.93 124.77 128.61 132.42 136.23 140.02 143.80 147.57 151.33 155.08 158.82 162.54 166.26 169.96 173.65 177.33 180.99 184.65 ˚
+5 C(Ω) +6 C(Ω) +7 C(Ω) +8 C(Ω) +9 C(Ω) C 101.95 102.34 102.73 103.12 103.51 0 105.85 106.24 106.63 107.02 107.40 10 109.73 110.12 110.51 110.90 111.28 20 113.61 113.99 114.38 114.77 115.15 30 117.47 117.85 118.24 118.62 119.01 40 121.32 121.70 122.09 122.47 122.86 50 125.16 125.54 125.92 126.31 126.69 60 128.99 129.37 129.75 130.13 130.52 70 132.80 133.18 133.57 133.95 134.33 80 136.61 136.99 137.37 137.75 138.13 90 140.40 140.78 141.16 141.54 141.91 100 144.18 144.56 144.94 145.31 145.69 110 147.95 148.33 148.70 149.08 149.46 120 151.71 152.08 152.46 152.83 153.21 130 155.46 155.83 156.20 156.58 156.95 140 159.19 159.56 159.94 160.31 160.68 150 162.91 163.29 163.66 164.03 164.40 160 166.63 167.00 167.37 167.74 168.11 170 170.33 170.70 171.07 171.43 171.80 180 174.02 174.38 174.75 175.12 175.49 190 177.69 178.06 178.43 178.79 179.16 200 181.36 181.72 182.09 182.46 182.82 210 185.01 185.38 185.74 186.11 186.47 220 ˚
˚
˚
˚
˚
˚
26
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Dodatak 3 Električna šema signal kondicionera: D1
+Vcc
J 1 1N4148 1 2
C1 0.1uF
D2
R11 68k
-Vcc +Vcc
+Vcc/ -Vcc 1N4148
P2 2k2
R12 68k
-Vcc
C2 0.1uF R9 51k1
J 2 1 2
R1 51.1k +Vcc
+5V/GND RP 10k
R5 10k
J 3
1 2 3 4 5 6 7
OUT1 - IN1 +IN1 +Vcc +IN2 - IN2 OUT2
R3 51.1k 1 2
OUT4 - IN4 +IN4 - Vcc +IN3 - IN3 OUT3
14 13 12 11 10 9 8
100k
R2
-Vcc 100k
J 5
R4 2 1
TL074
R8 100E
Vout/GND
R10 51k1
Pt100 1.1/1.2 J 4 1 2
R6 1k
R7 1k
Pt100 2.1/2.2
Dodatak 4 Električna šema termo regulatora: Vpp
D2
R13 20k
+5V
J 3 1N4001 1 2 +5V/GN D
+5V
C5 0.1uF
D3 1N4001
J 50 PGC PGD Vpp
GND
1 3 5 7 9
2 4 6 8 10
J 2
1 2 GND3 4 5
E G D F CAT1 CAT2 C A DP B
R21150R SharlightCM1-0521 R19150R R20150R R22150R 1 2 GND3 4 5
E G D F CAT1 CAT2 C A DP B
GND
1 2 3 4 5 6 7 8
10 9 8 7 6
R24150R GND R25150R R26150R
R27 150R SharlightCM1-0521 R28 150R
GND
1 2 3 4 5 6 7 8
R29150R
1 2 GND3 4 5
E G D F CAT1 CAT2 C A DP B
R31150R 10 9 8 7 6
16 15 14 13 12 11 10 9
+5V
Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND
Vcc Q0 DS OE_neg ST_clk SH_clk MR_neg Q7'
GND
1 2 3 4 5 6 7 8
Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND
Vcc Q0 DS OE_neg ST_clk SH_clk MR_neg Q7'
SW1 R1 10k
SW4
R6 10k
IN
GND
SET
+5V D1 1N4148
+5V
SW2
RESET
R2 10k
Vpp U1
16 15 14 13 12 11 10 9
1 2 3 4 5 6 7 8 9 10
+5V GND +5V +5V GND
U4
R32150R GND R33150R R34150R
R35150R SharlightCM1-0521 R36150R R37150R
Vcc Q0 DS OE_neg ST_clk SH_clk MR_neg Q7'
CIFRA2
R30150R LEDD3
Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND
CIFRA1 U3
R23150R
LEDD2
+5V
U2
R16150R GND R17150R R18150R
GND
+5V
1 2
R5 150R 10 9 8 7 6
C4 100nF
2TARGET01
R4 150R LEDD1
R14 10k
16 15 14 13 12 11 10 9
Y1
+5V
11 12 13 14
18.432 MHz GND +5V
C1 15pC2 15p
15 16 17 18 19 20
MCLR /Vpp/RE3 RB7/KBI3/PGD RA0/An0 RB6/KBI2/PGC RA17AN1 RB5/KBI1/PGM RA2/AN2/Vref-/CVref RB4/KBI0/AN11 RA3/AN3/Vref+ RB3/AN9/CCP2 RA4/T0CKI/C1OUT RB2/INT2/AN8 RA5/SS/HLVDIN/C2OUT RB1/INT1 RE0/RD/AN5 RB0/INT0/FLT0 RE1/WR/AN6 RE2/CS/AN7 Vdd Vss Vdd Vss RD7/PSP7/P1D OSC1/CLKI/RA7 RD6/PSP6/P1C OSC2/CLKO/RA6 RD5/PSP5/P1B RD4/PSP4 RC0/T1OSO/T13CKI RC7/RX/DT RC1/T1OSI/CCP2 RC6/TX/CK RC2/CCP1/P1A RC5/SDO RC3/SCK/SCL RC4/SDI/SDA RD0/PSP0 RD3/PSP3 RD1/PSP1 RD2/PSP2
40 39 38 37 36 35 34 33
PGD PGC R155k1
32 31
+5V GND
30 29 28 27 26 25 24 23 22 21
DECREMENT C6 100nF
GND +5V
SW3 R3 10k
C7 100nF
INCREMENT R12 10k
C3 56pF
P1 R7 10k
GND
R8 560R R9 560R
PIC18F4520
CIFRA3
R10100k
J 1 1 2
5 9 4 8 3 7 2 6 1 D-SUB
R11 10k
OUT
27
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Dodatak 5 Montažna šema termo regulatora:
Gornja strana ploč ice (Top Layer)
Donja strana ploč ice (Bottom Layer)
28
Mazinjanin Milan: Merenje i regulacija temperature________________________________________________
Dodatak 6 Montažna šema signal kondicionera:
Gornja strana ploč ice (Top Layer)
Donja strana ploč ice (Bottom Layer)
Dodatak 7 Tabela odziva sistema dobijena testiranjem: Tzad=50 C ˚
t[s] 0 5 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110 115 120 125
Kp=3, Ki=2
Kp=9, Ki=2
Kp=15, Ki=2
Kp=3, Ki=7
Kp=9, Ki=7
Kp=15, Ki=7
T [ C] 20 21 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 39 40 40 41 42 42 43
T [ C] 20 21 22 23 24 25 26 28 30 31 32 33 34 35 36 37 38 39 40 40 41 42 43 44 45
T [ C] 20 22 26 24 25 26 27 28 29 30 31 32 34 35 36 37 38 39 40 41 43 44 45 46 47
T [ C] 20 21 22 23 24 24 24 24 25 28 29 30 31 32 32 33 35 36 37 38 39 40 40 41 41
T [ C] 20 21 22 23 24 26 27 28 29 30 31 32 33 35 36 37 38 39 40 41 42 43 45 46 47
T [ C] 20 21 22 23 24 25 26 28 29 30 32 33 34 35 36 37 38 39 40 41 42 44 45 46 47
˚
˚
˚
˚
˚
˚
29