82
SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br. 1525 ANALIZA IMPLEMENTACIJSKIH ASPEKATA DIGITALNIH REGULATORA Damir Lukić Zagreb, listopad 2006

ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

SVEUČILIŠTE U ZAGREBU

FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA

DIPLOMSKI RAD br. 1525

ANALIZA IMPLEMENTACIJSKIH ASPEKATA DIGITALNIH REGULATORA

Damir Lukić

Zagreb, listopad 2006

Page 2: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

Zahvaljujem mentoru prof.dr.sc. I. Petroviću na odabranoj temi, savjetima, dobavljenoj literaturi i vođenju pri izradi radnje.

Zahvaljujem dipl.inž. M. Vašku na pružanju

nesebične pomoći savjetima, čime je omogućio da ovaj rad uspješno privedem kraju.

Zahvaljujem roditeljima na potpori i strpljenju koje su iskazali

tokom cjelokupnog mog studija.

Zahvaljujem svima nespomenutima koji su mi na bilo koji način pomogli.

Page 3: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

Sva zaštićena imena i znakovi korišteni u ovom radu ekskluzivno su vlasništvo spomenutih tvrtki.

Page 4: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške
Page 5: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

SADRŽAJ

UVOD............................................................................................................. 1

1. REALIZACIJE DIGITALNOG UPRAVLJAČKOG ALGORITMA................... 2 1.1. Direktna forma I .............................................................................................................. 2

1.2. Direktna forma II ............................................................................................................. 4

1.3. Kaskadna realizacija....................................................................................................... 6

1.4. Paralelna realizacija........................................................................................................ 7

1.5. Stepeničasta (ladder) realizacija .................................................................................... 8

2. BINARNA ARITMETIKA S KONAČNOM DULJINOM RIJEČI...................... 9 2.1. Zapis binarnih brojeva .................................................................................................... 9

2.2. Odsijecanje i zaokruživanje binarnih brojeva ............................................................... 10

3. IZVORI NUMERIČKIH POGREŠAKA ......................................................... 11

4. NASTAJANJE I PROPAGACIJA KVANTIZACIJSKOG ŠUMA KROZ SUSTAV....................................................................................................... 13 4.1. Modeliranje statističke pogreške odsijecanja i zaokruživanja ...................................... 13

4.2. Propagacija kvantizacijskog šuma kroz sustav ............................................................ 14

5. POGREŠKE KOEFICIJENATA I NJIHOV UTJECAJ NA DINAMIKU REGULATORA............................................................................................ 16 5.1. Usporedba realizacija ................................................................................................... 17

5.2. Osjetljivost sustava drugog reda s obzirom na tip realizacije....................................... 18

6. NELINEARNA SVOJSTVA REGULATORA UZROKOVANA KVANTIZACIJOM – POJAS NEOSJETLJIVOSTI, GRANIČNI PERIOD.... 20 6.1. Granični period bez ulazne pobude u otvorenoj petlji, odsijecanje upotrebom dvojnog

komplementa ................................................................................................................ 24

6.2. Granični period bez ulazne pobude zatvorenog kruga uzrokovan odsijecanjem na konačnu duljinu riječi .................................................................................................... 26

6.3. Sustav bez pobude, pojas neosjetljivosti i granični period sustava u otvorenoj petlji regulacije uzrokovani zaokruživanjem na konačnu duljinu riječi .................................. 27

7. DULJINA RIJEČI U AD I DA-PRETVORNICIMA, MEMORIJI I ARITMETIČKOJ JEDINICI .......................................................................... 29 7.1. Duljina riječi u AD-pretvorniku (otvorena petlja) ........................................................... 29

7.2. Duljina riječi u aritmetičkoj jedinici (otvoreni krug)........................................................ 30

7.3. Duljina riječi memorije................................................................................................... 31

7.4. Duljina riječi digitalno-analognog pretvornika............................................................... 32

7.5. Odabir duljine riječi s obzirom na zatvoreni krug regulacije ......................................... 32

Page 6: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

8. SIMULACIJSKE PROVJERE NA MODELU ELEKTRONIČKE ZAKLOPKE UZ POMOĆ PROGRAMSKOG PAKETA MATLAB SIMULINK.................. 33 8.1. Model procesa .............................................................................................................. 33

8.2. I-PD regulator ............................................................................................................... 35

8.3. Simulacije sustava upravljanog različitim izvedbama I-PD regulatora ......................... 37

8.3.1. Sustav upravljan kontinuiranom izvedbom I-PD regulatora.......................................... 37 8.3.2. Sustav upravljan diskretiziranom izvedbom I-PD regulatora ........................................ 42 8.3.3. Sustav upravljan diskretiziranom i kvantiziranom izvedbom I-PD regulatora ............... 46 8.3.4. Sustav upravljan cjelobrojnom izvedbom I-PD regulatora............................................ 53

ZAKLJUČAK ............................................................................................... 63

LITERATURA .............................................................................................. 64

DODATAK 1. ............................................................................................... 66 db.m........................................................................................................................................ 66

lc.m ...................................................................................................................................... 67

trotl_diskretni.m ...................................................................................................................... 68

trotl_kontinuirani.m ................................................................................................................. 70

SAŽETAK .................................................................................................... 72

ABSTRACT ................................................................................................. 73

ŽIVOTOPIS .................................................................................................. 74

Page 7: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

0

Page 8: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

1

UVOD Jedan od najvećih problema s kojim se susreću inženjeri u današnje vrijeme je ekonomska isplativost sustava kojeg razvijaju. To nije niti tako teško za razumjeti iz razloga što se u doba moderne ekonomije sva proizvodnja teži pojeftiniti kako bi proizvod bio konkurentan na tržištu. S obzirom na danas već praktički neizbježna digitalna računala, problem se svodi na razvoj sve bržih i pouzdanijih algoritama zaduženih za upravljanje sustavima. No, i dalje postoji problem cijene, ovaj put digitalnih računala na kojima će se aplikacije s implementiranim algoritmima upravljanja izvršavati. S obzirom da je automatika kao grana elektrotehnike jako vezana uz industriju i proizvodnju općenito, i to na najnižem nivou, jasno je vidljivo na kome leži 'teret' maksimalnog pojeftinjenja proizvodnje. Da bismo to postigli, morat ćemo pronaći načine kako dati okvirni uvid u cijenu koštanja samog sustava mnogo ranije nego li ga projektiramo i implementiramo.

U ovom radu obrađen je utjecaj pogreške kvantizacije na ponašanje reguliranog sustava elektroničke zaklopke (ETB – engl. electronic throttle body) u automobilima. Proučavanjem ove tematike može se lako doći do uvida u ponašanje sustava s obzirom na odabir sklopovskih komponenti i načina implementacije samog algoritama upravljanja. Postavlja se pitanje zbog čega je to korisno, a odgovor koji se nudi je - iz razloga što se već okvirno može odrediti cijena koštanja sustava s obzirom na zahtjeve kvalitete upravljanja, odnosno, može se dobiti uvid u isplativost sustava već u početnom stadiju projektiranja.

Page 9: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

2

1. REALIZACIJE DIGITALNOG UPRAVLJAČKOG ALGORITMA

Pri analizi i sintezi sustava upravljanja, obično se u obzir uzimaju samo efekti diskretizacije sustava, dok se kod implementacije realnih sustava upravljanja moraju se uvesti dodatna ograničenja kojima se sustav koji je trenutno u stadiju projektiranja opisuje. Da bi se to postiglo, koriste se sve jeftiniji mikrokontroleri i mikroprocesori. Digitalni algoritam upravljanja formulira se prijenosnom funkcijom u z-domeni ili jednadžbama diferencija u vremenskoj domeni. Postoji nekoliko načina sklopovske realizacije digitalnog algoritma upravljanja, a osnovni su:

- direktna realizacija (forme I i II), - kaskadna realizacija, - paralelna realizacija, - stepeničasta (ladder) realizacija.

Općenito gledano, kod odabira sklopovske realizacije digitalnog algoritma upravljanja, potrebno je obratiti pažnju na nekolicinu čimbenika:

- cijenu sustava o cijenu sklopovske realizacije određuje zauzeće programskog koda te

duljina riječi mikrokontrolera (mikroprocesora). - vremenska ograničenja

o sustavi upravljanja koji rade u realnom vremenu moraju obraditi podatke unutar određenog fiksnog intervala vremena. Nekim realizacijama može se dodatno ubrzati vrijeme izvođenja algoritma u ovisnosti o tipu mikroprocesora.

- kvalitetu izlaznog signala o ograničeni opseg i točnost binarnih riječi korištenih za prikaz brojeva iz

domene realnih brojeva mogu biti uzroci pogrešaka prilikom obrade podataka. Neke realizacije su više osjetljive na ovakav tip pogrešaka.

1.1. Direktna forma I Prijenosna funkcija kojom se opisuje direktna forma I (DF-I)dana je izrazom

0

1

( ) ( ) .( ) 1

Mi

ii

Nj

jj

b zy z H zx z a z

=

=

= =+

∑ (1-1)

Sklopovska realizacija direktne forme I za sustav II. reda prikazana je na slici 1.1.

Page 10: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

3

Slika 1.1. Direktna forma I, nekanonski oblik Za programsku realizaciju koristi se jednadžba diferencija zasnovana na prijenosnoj funkciji (1-1),

0 1 1

0 1

[ ] [ ] [ 1] ... [ ] [ 1] ... [ ]

[ ] [ ].

M N

M N

i ji j

y k a x k a x k a x k M b y k b y k N

a x k i b y k j= =

= + − + + − − − − − −

= − − −∑ ∑ (1-2)

DF-I ima sljedeća svojstva [19]: 1) Može se predstaviti kao sekcija nula koju prati sekcija polova. 2) U većini shema izvedenih u cjelobrojnoj aritmetici (npr. dvojni komplement

koji se najčešće koristi), ne postoji mogućnost preljeva u internom filtru iz razloga što u filtru zapravo postoji samo jedno sumacijsko mjesto. U cjelobrojnoj aritmetici, preljev predstavlja prijelaz iz najvećeg pozitivnog broja u najveći negativni broj (po apsolutnoj vrijednosti) i obratno. Tada je konačni rezultat [ ]y k uvijek unutar zadanog opsega, čime izbjegavamo preljev konačnog rezultata, čak i prilikom pojave preljeva međurezultata u zbrajalu. Gore navedeno svojstvo je vrlo korisno i neobično DF-I strukture filtra.

3) Postoji dvostruko više kašnjenja nego što je potrebno. Kao rezultat toga, DF-I struktura je nekanonička, ako gledamo kašnjenja. Općenito, uvijek možemo implementirati filtar N-tog reda koristeći samo N elemenata kašnjenja.

4) Kao što je slučaj sa svim DF formama (čiji su koeficijenti određeni koeficijentima prijenosne funkcije), polovi i nule filtra vrlo su osjetljivi na pogreške zaokruživanja koeficijenata i uglavnom ne predstavlja problem za jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške zaokruživanja koeficijenata više je izražena ako su korijeni prijenosne funkcije vrlo blizu jedan drugom u kompleksnoj ravnini. Da bismo smanjili tu osjetljivost, faktoriziramo prijenosne funkcije filtra u paralele ili serije sekcija 2. reda.

Page 11: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

4

Korisno svojstvo DF-I implementacije je da ne može doći do preljeva u cjelobrojnoj aritmetici dvojnog komplementa – dok god je izlazni signal unutar opsega, filtar neće raditi numeričku pogrešku. Većina realizacija ne posjeduje ovo svojstvo. Treba napomenuti da, iako DF-I realizacija posjeduje to korisno svojstvo, ne mora značiti da je uvijek najbolji izbor za implementaciju. Primjer [19]: Prikazano je kako privremeni preljev međurezultata u cjelobrojnoj aritmetici dvojnog komplementa ne uzrokuje neželjene efekte.

U tablici 1.1 prikazani su brojevi koristeći 3 bita s predznakom.

Tablica 1.1. Brojevi prikazani cjelobrojnom aritmetikom dvostrukog komplementa koristeći 3 bita

Decimalni Binarni-4 100 -3 101 -2 110 -1 111 0 000 1 001 2 010 3 011

3 3 4 2+ − = predstavlja zbroj u kojem dolazi do trenutnog preljeva (3 3 6+ = ,

koje zbog preljeva postaje 2− ), no, konačni rezultat je ipak 2 koji se nalazi u propisanom opsegu.

011 011 110 (3 3 2)110 100 010 ( 2 4 2)

+ = + = −+ = − − =

Ova pojava se može objasniti time da se pozitivni preljev u prvom zbrajalu kompenzira s negativnim preljevom u drugom zbrajalu.

1.2. Direktna forma II Direktna forma II (DF-II) ima istu prijenosnu funkciju kao i DF-I (1-1). Sklopovska realizacija DF-II forme prikazana je na slici 1.2.

Page 12: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

5

Slika 1.2. Direktna forma II, kanonski oblik Jednadžbe diferencija DF-II strukture 2. reda dane su izrazom (1-3)

1 2

0 1 2

[ ] [ ] [ 1] [ 2][ ] [ ] [ 1] [ 2].

v k x k b v k b v ky k a v k a v k a v k

= − − − −= + − + −

(1-3)

Ova struktura predstavlja filtar sa sekcijom polova u seriji s filtrom sa sekcijom nula. Razlika između DF-I i DF-II strukture je u tome da DF-II struktura ima nule u FIR sekciji te prethodi rekurzivnoj sekciji s polovima koja je u seriji s njom. Kako LTI filtri u seriji komutiraju, možemo postaviti prvo nule, a nakon njih polove, a da se pri tom ne mijenja prijenosna funkcija. Koeficijenti obje realizacije su jednaki, stoga možemo koristiti jednu liniju kašnjenja koju dijelimo između svih polova i svih nula FIR sekcija. Svojstva DF-II forme [19]:

1) Sekciju polova prati sekcija nula. 2) Ova forma je kanonička gledajući kašnjenje; razlog tome je dijeljenje

elemenata za kašnjenje između sekcija polova i nula. 3) Moguća je pojava internog preljeva na ulaznom dijelu linije za kašnjenje, za

razliku od DF-I forme. 4) Kao i DF-I struktura, i ova je struktura osjetljiva na pogreške odsijecanja

koeficijenata ia i ib , posebno za prijenosne funkcije višeg reda. Niža osjetljivost ostvaruje se koristeći sekcije nižeg reda, ili korištenjem stepeničaste strukture.

Page 13: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

6

1.3. Kaskadna realizacija Kod kaskadne realizacije, prijenosna funkcija n-tog reda upravljačkog algoritma predstavljena je kao umnožak jednostavnijih prijenosnih funkcija prvog i drugog reda [17].

0 1 2( ) ( ) ( ) ( ) ( ).( ) n

y z H z H z H z H zx z

α= = ⋅⋅⋅ (1-4)

Za faktoriziranje prijenosne funkcije koriste se dva tipa elemenata

a) elementi 1. reda

1

1

1( )1

il

i

b zH z ia z

+=

+ (1-5)

b) elementi 2. reda

1 2

11 2

1

1( ) .1

i il

i i

b z b zH za z a z

− −+

− −+

+ +=

+ + (1-6)

Također, treba napomenuti da nije preporučljivo predstavljanje elemenata 2. reda pomoću dva elementa 1. reda s kompleksnim koeficijentima. Sklopovska realizacija za sustav s jednim elementom 1. reda i jednim elementom 2. reda prikazana je na slici 1.3.

Slika 1.3. Kaskadna realizacija Jednadžbe diferencija za prikazanu strukturu dane su izrazima:

1 1 1 0

2 1 1 1 2 2 3 3 0

3 2

1 1 1 2 2 2 3 3 3 0

[ 1] [ ] [ ],[ 1] ( ) [ ] [ ] [ ] [ ],[ 1] [ ],[ ] ( ) [ ] ( ) [ ] ( ) [ ] [ ].i

v k a v k b x kv k b a v k a v k a v k b x kv k v ky k b a v k b a v k b a v k b x k

+ = − ++ = − − − ++ == − + − + − +

(1-7)

Page 14: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

7

1.4. Paralelna realizacija Prijenosna funkcija n-tog reda prikazana je kao zbroj jednostavnijih prijenosnih funkcija prvog i drugog reda [17].

0 1 2( ) ( ) ( ) ( ) ( ).( ) n

y z H z a H z H z H zx z

= = + + + + (1-8)

Koriste se dva tipa elemenata:

a) elementi 1. reda

1( )1

il

i

bH za z−=

+ (1-9)

b) elementi 2. reda

1

0 11 2

1 2

( ) ( )( )1 ( ) ( )

i il

i i

b b zH za z a z

− −

+=

+ + (1-10)

Sklopovska realizacija dana je na slici 1.4.

Slika 1.4. Paralelna realizacija Jednadžbe diferencija za prikazanu paralelnu strukturu, koristeći dva elementa 1. reda, dane su sljedećim izrazom:

0 0

1 1 1

2 2 2

0 1 1 2 2

[ ] [ ],[ 1] [ ] [ ],[ 1] [ ] [ ],[ ] [ ] [ ] [ ].

v k b x kv k a v k x kv k a v k x ky k v k b v k b v k

=+ = − ++ = − += + +

(1-11)

Page 15: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

8

1.5. Stepeničasta (ladder) realizacija Prijenosnu funkciju n-tog reda moguće je prikazati u obliku stepeničaste strukture na sljedeći način [18]:

0

1

1

1( ) ,1

11n

nn

H z ab z

ab z

a

= ++

++

(1-12)

što se može izraziti sljedećim jednadžbama diferencija:

1 1 1 21

2 2 1 21 2

0 1

1[ 1] [ [ ] [ ]] [ ],

1 1[ 1] [ ] [ ],

[ ] [ ] [ ].

b v k v k v k x ka

b v k v k v ka a

y k a x k v k

+ = − +

+ = −

= −

(1-13)

Sklopovska realizacija stepeničaste strukture dana je na slici 1.5. npr. prijenosne funkcije 2. reda.

Slika 1.5. Stepeničasta (ladder) realizacija

Napomena: osim navedenih postoje mnoge druge strukture IIR filtara (IIR - engl. infinite impulse response) koje su rezultat istraživanja u težnji pronalaska strukture koja će biti računski dovoljno efikasna te neosjetljiva na pogreške kvantizacije. Sve ove strukture imaju svoje prednosti i mane, no struktura koja nudi optimalne performanse još uvijek nije pronađena.

Page 16: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

9

2. BINARNA ARITMETIKA S KONAČNOM DULJINOM RIJEČI

Pažnja u ovom poglavlju posvećena je najčešće upotrebljavanim metodama zapisa broja korištenim kod mikroprocesorskog upravljanja – cjelobrojnom zapisu brojeva te zaokruživanju brojeva u analogno-digitalnim pretvornicima i izvođenju aritmetičkih operacija [17].

2.1. Zapis binarnih brojeva Za zapis cijelog broja koristi se 1N + bita, pri čemu se N bita koristi za zapis broja, dok je preostali bit korišten za predznak (MSB – engl. most significant bit). Iz navedenog je lako zaključiti da je najveći broj koji se zapisuje na ovaj način 2 1N − za pozitivan i 2N− za negativan. Prilikom korištenja računala, binarna točka se pomiče na 2. poziciju (odmah iza MSB-a), te na taj način opseg brojeva koji se mogu prikazati iznosi [ 1,1 2 ]N−− − . Granica razlučivosti ovakvog načina zapisa brojeva iznosi 2 N− , odn. dotični iznos predstavlja najmanji diskretni pomak između dva susjedna broja (korak kvantizacije). Izraz 2 N− nazivamo još i LSB – engl. least significant bit (najmanje bitan bit), jer predstavlja desni bit u prikazu broja i najmanje utječe na konačnu vrijednost broja. U cjelobrojnom je prikazu binarni zarez fiksiran. Npr., za 5N = :

0 1 2 3 40.1010 0 2 1 2 0 2 1 2 0 20.1010 0 0.5 0 0.125 00.1010 0.625.

− − − −= ⋅ + ⋅ + ⋅ + ⋅ + ⋅= + + + +=

Prilikom zapisivanja negativnog broja u binarnoj aritmetici, koriste se tri različita oblika zapisa:

a) Zapis s predznakom; vodeći bit predstavlja predznak, 0 za pozitivne vrijednosti i 1 za negativne. Ovakvim zapisom broj 0 ima dva zapisa 0000.00 i 1111.11.

6.5 1110.106.5 0110.10

− =+ =

b) Zapis dvojnog komplementa; pozitivni brojevi jednaki su zapisu s

predznakom, dok se negativni brojevi zapisuju na način da se sve binarne znamenke pozitivnog broja komplementiraju i zatim se pridoda 1.

(0110.10) (1001.01) (0000.01)(0110.10) 1001.10

− = +− =

Page 17: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

10

Ili, prilikom određivanja pozitivnog broja, koristi se isti postupak:

(1001.10) (0110.01) (0000.01)(1001.10) 0110.10

− = +− =

c) Zapis komplementa; pozitivni brojevi zapisani u obliku zapisa s predznakom,

dok su negativni zapisani tako da se svi bitovi pozitivnog broja komplementiraju.

(0110.10) 1001.01− =

2.2. Odsijecanje i zaokruživanje binarnih brojeva Pretpostavlja se ispravno skaliranje broja s decimalnim zarezom, odnosno, pretpostavlja se da nije došlo do preljevanja (engl. overflow) tijekom analogno-digitalne pretvorbe i izvođenja aritmetičkih operacija. Također, u obzir se uzima granica razlučivosti iz razloga što je širina kvantizacije jednaka vrijednosti LSB-a [17].

a) odsijecanje (engl. truncating) Prilikom odsijecanja, svi bitovi manje značajni od LSB-a se odbacuju. Za prikaz cijelog broja u dvojnom komplementu, definira se pogreška odsijecanja na sljedeći način:

[ ]

0 2 .T T

NT

Q x xε

ε −

= −

≥ > − (2-1)

Za komplementarni prikaz i za prikaz s predznakom, pogreška odscijecanja definirana je izrazom

0 2 , 0

0 2 , 0.

NT

NT

za x

za x

ε

ε

≤ < <

≥ > − > (2-2)

b) zaokruživanje (engl. rounding)

Binarni se broj zaokružuje na N-bita tako da se odabere broj unutar N-bita koji je najbliži nezaokruženoj vrijednosti. Npr. 0.1100011 zaokružen na 4 bita je jednak 0.110 . Prilikom zaokruživanja brojeva kojima je LSB zaokružene vrijednosti neodređen treba odabrati jedan rezultat (primjer – 0.1001010 zaokružen na 4 bita je 0.100 ili 0.101 ). Kod cjelobrojne aritmetike, pogreške prouzrokovane zaokruživanjem jednake su za sva tri načina zapisa binarnih brojeva i iznose:

[ ]

2 2 .2 2

R RN N

R

Q x xε

ε− −

= −

−≤ <

(2-3)

Page 18: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

11

3. IZVORI NUMERIČKIH POGREŠAKA Tri glavna izvora numeričkih pogrešaka obrađena su u ovom poglavlju. Oni su redom [17]:

a) Pogreške u analogno-digitalnim pretvornicima

Slika 3.1. Pogreške kod AD-pretvorbe pri čemu je:

T – interval uzorkovanja q – rezolucija (razlučivost kvantizacije)

Tε – pogreška odsijecanja

Rε – pogreška zaokruživanja U analogno-digitalnim pretvornicima moguća je pojava odsijecanja ili zaokruživanja trenutno uzorkovanog signala radi nesavršenosti samog AD-pretvornika. Kvantizacija signala se koristi kako bi se kontinuirani signali mogli obrađivati na digitalnim računalima. AD-pretvornici predstavljaju vezu između kontinuiranog i diskretnog svijeta, te samim time intuitivno je zaključiti da moraju postojati neke pogreške. Cilj odabira AD-pretvornika je da je razlučivost kvantizacije dovoljno dobra za regulirani proces, odn. da je razlučivost AD-pretvornika nešto niža od najveće amplitude šuma koji se pojavljuje i koji je sastavni dio signala u realnom sustavu.

b) Odsijecanja i zaokruživanja prilikom izvođenja aritmetičkih operacija (npr. množenje)

Ova vrsta pogreške se može pojaviti prilikom množenja dva broja prikazana u aritmetici pomičnog zareza ili u obliku binarnih frakcija u cjelobrojnoj aritmetici.

Page 19: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

12

Primjer [17]: množenje upotrebom decimalne aritmetike i riječi s 4 znamenke

0.140 0.140 0.0196⋅ =

Odsijecanjem se dobija 0.019 , pri čemu je pogreška odsijecanja jednaka 0.0006Tε = , dok zaokruživanjem rezultat iznosi 0.020 , tako da pogreška

zaokruživanja iznosi 0.0004Rε =

c) Pogreške prilikom pohrane parametara i koeficijenata sustava u memorijskim jedinicama

Do ovih pogrešaka dolazi zbog konačne duljine riječi koju memorijske jedinice koriste za pohranu podataka. Naime, prilikom pohrane podataka koji su zapisani u većoj točnosti od točnosti dodijeljene memorijske lokacije, dolazi do pogrešaka zaokruživanja ili odsijecanja. Primjer [17]: Vremenska konstanta izračunata za prijenosnu funkciju n-tog reda koristeći 5-znamenkastu preciznost iznosi 0.55436a = , no, algoritam je namijenjen implementaciji na 8-bitovnom računalu (rezolucija 8-bitovnog računala je

72 1/128− = , 8. bit je predznak). Kao rezultat se dobija 0.554a .

Page 20: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

13

4. NASTAJANJE I PROPAGACIJA KVANTIZACIJSKOG ŠUMA KROZ SUSTAV

4.1. Modeliranje statističke pogreške odsijecanja i zaokruživanja Uz vrijednost LSB 2 Nq −= , razlika između pravog broja i broja prikazanog u analogno-digitalnom pretvorniku i procesorskoj jedinici iznosi ε [17]. Koristeći konačnu duljinu riječi, on može poprimiti bilo koju vrijednost u intervalu [0, ]q . Pretpostavlja se da je ε nastao brzim mijenjanjem signala te da ga je moguće modelirati bijelim šumom, jednoliko raspodijeljenom u intervalu [0, ]q . Također, pretpostavlja se da ne postoji veza između različitih izvora pogrešaka.

a) Statistička pogreška odsijecanja Na slici 4.1 prikazana je statistička funkcija gustoće vjerojatnosti za pogrešku odsijecanja u cjelobrojnoj aritmetici dvojnog komplementa.

Slika 4.1. Raspodjela pogreške odsijecanja, cjelobrojna aritmetika Srednja vrijednost i varijanca pogreške odsijecanja Tε računaju se prema sljedećim izrazima:

- srednja vrijednost - { } ,2T TqEε ε= = − (4-1)

- varijanca - { }0 2

2 21 ( ) .12T T T

q

qE dqεσ ε ε ε ε

= = − =∫ (4-2)

Page 21: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

14

b) Statistička pogreška zaokruživanja Slika 4.2 prikazuje funkciju gustoće vjerojatnosti za pogrešku zaokruživanja u cjelobrojnoj aritmetici dvojnog komplementa.

R

P( R)

1/q

-q 0 q

Slika 4.2. Raspodjela pogreške zaokruživanja, cjelobrojna aritmetika

Srednja vrijednost i varijanca pogreške zaokruživanja dani su izrazima (4-3) i (4-4):

- srednja vrijednost - { } 0,R Eε ε= = (4-3)

- varijanca - { }22

2 2 2

2

1 .12R

q

Rq

qE dq

σ ε ε ε−

= = =∫ (4-4)

4.2. Propagacija kvantizacijskog šuma kroz sustav Propagacija kvantizacijskog šuma ε , ovisi o prijenosoj funkciji između ulazne točke ε i izlaza sustava [17]. Promatrajući ponašanje izlaza sustava (u ili uσ ) u odnosu na ponašanje ulaznog šuma (ε ili εσ ), gleda se je li algoritam upravljanja pojačava ili oslabljuje kvantizacijski šum. Pretpostavka je da je sustav stabilan, linearan te vremenski nepromjenjiv, impulsnog odziva ih (ili prikazan prijenosnom funkcijom ( )H z ). Dovede li se ulazni signal [ ]iε , zadan svojom srednjom vrijednošću ε ili varijancom εσ , tada je srednja vrijednost izlaznog signala u dana izrazom

{ } { }0

0

,

.

i k i kk

kk

u E u h E

u h

ε

ε

−=

=

= =

=

∑ (4-5)

Alternativno, koristeći izraz za prijenosnu funkciju u diskretnoj domeni, izraz (4-5) se zapisuje kao

Page 22: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

15

( ) ( ) ( ),u z H z zε= (4-6)

no, kako je ε = const., koristi se teorem o konačnoj vrijednosti

1lim ( ).z

u zH zε→

= (4-7)

Napomena: kvantizacijski šum se može povećati brzim uzorkovanjem iz razloga što je u tom slučaju potrebna veća točnost prilikom zaokruživanja koeficijenata.

Page 23: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

16

5. POGREŠKE KOEFICIJENATA I NJIHOV UTJECAJ NA DINAMIKU REGULATORA

Kod različitih implementacija digitalnih regulatora, zna se da su neke implementacije manje osjetljive na promjene parametara, a neke više [17]. S obzirom da kod digitalnih regulatora imamo konačnu duljinu riječi, koeficijenti prijenosne funkcije ( )H z , pohranjeni u memoriji regulatora, razlikuju se od pravih vrijednosti za određenu vrijednost ∆ . Razlika u ovim vrijednostima utječe na položaj polova i nula, a samim time i na stabilnost i dinamiku digitalnog regulatora. Osjetljivost pak ovisi o načinu implementacije algoritma upravljanja na neki od načina obrađenih u poglavlju 2. Prijenosna funkcija ( )H z dana je izrazom

1

1 1

( ) ( )( ) ,1 (1 )

n nk

kk j j

N z N zH zzb zz

−−

= =

= =+ −∑ ∏

(5-1)

pri čemu su jz polovi ( )H z , a kb koeficijenti koji određuju te polove. ( )N z definira nule prijenosne funkcije. Izrazom (6-2) obavlja se relokacija polova mz kao funkcija varijacije koeficijenata

kb [17]:

1

1

.(1 )

km

m knm

j jj m

zz bzz

+

=≠

∆ = ∆−∏

(5-2)

Koristeći izraz (5-2) može se estimirati utjecaj b∆ za direktnu realizaciju. Za ostale tipove realizacija trebali bi se odrediti slični izrazi. Umjesto toga obrađena je prijenosna funkcija drugog reda kako bi se opisao postupak. Prijenosna funkcija drugog reda prikazana paralelnom realizacijom dana je izrazom

11 2 1 2 1 2 2 1

1 1 1 21 2 1 2 1 2

( ) ( )( ) .( ) 1 1 1 ( )

y z a a a a a b a b zH zu z b z b z b b z b b z

− − − −

+ − += = + =

− − − + + (5-3)

Page 24: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

17

5.1. Usporedba realizacija

a) Direktna forma I

1 2 1 2 1 2 1 2 2 1[ ] ( ) [ 1] [ 2] ( ) [ ] ( ) [ 1].y k b b y k b b y k a a u k a b a b u k= + − − − + + − + − (5-4)

Slika 5.1. Direktna realizacija prijenosne funkcije (5-3), DF-I

b) Paralelna realizacija

1 1 1

2 2 2

1 1 2 2

[ ] [ 1] [ ][ ] [ 1] [ ]

[ ] [ ] [ ].

x k b x k u kx k b x k u ky k a x k a x k

= − += − += +

(5-5)

Slika 5.2. Paralelna realizacija prijenosne funkcije (6-3)

Page 25: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

18

c) Kaskadna realizacija

1 2 1 2 2 1

1

2

'[ ] ( ) [ ] ( ) [ 1][ ] [ 1] '[ ][ ] [ 1] [ ].

u k a a u k a b a b u kx k b x k u ky k b y k x k

= + − + −= − += − +

(5-6)

Slika 5.3. Kaskadna realizacija prijenosne funkcije (5-3) Napomena: koeficijenti polova u kaskadnoj i paralelnoj realizaciji su 1b i 2b , dok su kod direktne realizacije koeficijenti 1 2b b i 1 2b b+ . Za određivanje osjetljivosti položaja polova u ovisnosti o promjeni parametara koristit će se kao karakteristična jednadžba ( , )P z λ , pri čemu su vrijednosti λ koeficijenti [17]. Varijacija λ δλ+ dopušta relokaciju polova u obliku 1 1z zδ+ , 2 2z zδ+ , ...

( , ) ( , )

, .

j j jj

j j

P PP z z P z zz

P

z z zPz

δ λ δλ λ δ δλλ

λ δλ

∂ ∂+ + = + +

∂ ∂

∂∂∂ = − =∂∂

(5-7)

5.2. Osjetljivost sustava drugog reda s obzirom na tip realizacije Direktna realizacija daje sljedeći rezultat

21 2 1 2( ) .P z b b z b b= − + + (5-8)

Neka su 1 2 1 1 2 2,b b b bλ λ+ = = . Parcijalnim deriviranjem dobija se

21 2

11 2

, 2 , 1,

P z zP P Pz z

z

λ λ

λλ λ

= − +∂ ∂ ∂

= − = − =∂ ∂ ∂

(5-9)

Page 26: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

19

1 11

1 1 1 1 2 1 2

12 1 1 2

,| |,2 2 ( )

1 1,| |, .2

z z b bz bz b b b b b

z z bz b b

δδλ λδδλ λ

−= − = = =

− − + −− −

= = =− −

(5-10)

Direktna realizacija bazirana na 1 2b b+ i 1 2b b je iznimno osjetljiva na promjenu koeficijenata u slučaju da su polovi blisko postavljeni ( 1 2b b ). Kod kaskadne i paralelne realizacije, sami koeficijenti predstavljaju polove. Vidljivo je da su kaskadna i paralelna realizacija mnogo manje osjetljive na promjenu koeficijenata od direktne, stoga se upotreba direktne realizacije ne preporuča u slučajevima kada se koriste konačna duljina riječi ili sustavi višeg reda [17].

Page 27: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

20

6. NELINEARNA SVOJSTVA REGULATORA UZROKOVANA KVANTIZACIJOM – POJAS NEOSJETLJIVOSTI, GRANIČNI PERIOD

Prijenosna funkcija predstavljena cjelobrojnom aritmetikom s konačnom duljinom riječi predstavlja nelinearni sustav s povratnom vezom kod kojeg su moguće nelinearne pojave poput pojasa neosjetljivosti ili graničnog perioda. Kod analogno-digitalnog pretvornika s konačnom duljinom riječi također je moguća pojava graničnog perioda za cijeli sustav s povratnom vezom [17]. Na primjeru je prikazano pojavljivanje pojasa neosjetljivosti i graničnog perioda prilikom korištenja decimalne aritmetike. Upotrebljava se ekvivalent odsijecanju kod aritmetike dvojnog komplementa, npr. 5.6 će postati 5 , dok će 5.6− postati

6− .

a) Pojas neosjetljivosti Uzmimo prijenosnu funkciju prvog reda

1

( ) 1 ,( ) 1 0.9

y zu z z−=

− (6-1)

ulaz neka bude jedinična skokovita funkcija

1

1( ) ,1

u zz−=

− (6-2)

početni uvjet neka je

[0] 3.y = (6-3) Izlaz je tada izračunat rekurzivnom jednadžbom diferencija

[ 1] 0.9 [ ] [ 1].y k y k u k+ = + + (6-4)

U tablici 6.1. prikazane su izračunate vrijednosti [ ]y k upotrebom decimalne aritmetike, dok su na slici 6.1. prikazane grafički

Page 28: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

21

Tablica 6.1. Izračunate vrijednosti za ky

k ku ky zaokruženo ky odsječeno

0 0 3 3 3 3 1 1 3.7 4 3.7 3 2 1 4.6 5 3.7 3 3 1 5.5 6 3.7 3 4 1 6.4 6 3.7 3 5 1 6.4 6 3.7 3

Slika 6.1. Grafički prikaz efekata koji se pojavljuju prilikom upotrebe zaokruživanja i odsijecanja u cjelobrojnoj aritmetici

Page 29: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

22

Dodatnim ispitivanjem uz upotrebu Matlab programskog paketa, dobijeni su sljedeći rezultati. Programski kod je dan u dodatku 1.

- prilikom zaokruživanja, uz početne uvjete izlaza ky u intervalu [6,15] , izlaz ostaje u stabilnom stanju određenom početnim uvjetima. U slučaju da su početni uvjeti ispod vrijednosti 6 , izlaz nakon nekoliko koraka dolazi do vrijednosti 6 , a u slučaju da su početni uvjeti izlaza iznad 15 , izlaz u nekoliko koraka dolazi do vrijednosti 15 i ostaje u njoj što govori da postoji pojas neosjetljivosti u intervalu [6,15] .

- prilikom odsijecanja, uz početnu vrijednost izlaza u intervalu [1,10] , izlaz ostaje nepromijenjen i istog je iznosa kao i početna vrijednost. U slučaju da je početna vrijednost manja od 1, izlaz u nekoliko koraka dolazi u vrijednost 1 i ostaje u njoj; u slučaju da je izlaz veći od 10 , on u nekoliko koraka dolazi u vrijednost 10 i ostaje u njoj. Pojas neosjetljivosti se nalazi u intervalu [1,10] .

b) Granični period

Diskretna prijenosna funkcija prvog reda dana je izrazom

1

( ) 1 ,( ) 1 0.9

y zu z z−=

+ (6-5)

ulazni impuls za 0i = neka je ( ) 10u z = , a početno stanje [0] 0y = . Izlaz je dan izrazom

[ 1] 0.9 [ ] [ 1].y k y k u k+ = − + + (6-6) Za beskonačnu duljinu riječi, vrijednost izlaza iznosi:

1

(1 )lim 0.0.9z

z zyz∞ →

−= =

+ (6-7)

U tablici 6.2. prikazano je ponašanje izlaza [ ]y k za konačnu duljinu riječi, dok su na slici 6.2. grafički prikazani navedeni efekti

Tablica 6.2. Izračunate vrijednosti za ky

k ku ky zaokruženo ky odsječeno 0 0 0 0 0 0 1 10 10 10 10 10 2 0 -9 -9 -9 -9 3 0 8.1 8 8.1 8 4 0 -7.3 -7 -7.3 -8 5 0 6.3 6 7.2 7 6 0 -5.4 -5 -6.3 -7 7 0 4.5 5 6.3 6 8 0 -4.5 -5 -5.4 -6 9 0 4.5 5 5.4 5

Page 30: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

23

Slika 6.2. Grafički prikaz efekata koji se pojavljuju prilikom upotrebe zaokruživanja i odsijecanja u cjelobrojnoj aritmetici

Page 31: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

24

- prilikom zaokruživanja, izlaz teži prema graničnom periodu stabilnosti koji se nalazi unutar intervala [ 5,5]− . Izlaz dolazi u trajektoriju graničnog perioda stabilnosti nakon ( ) 5ABS i − koraka.

- prilikom odsijecanja, stanje izlaza teži k 0 i dostiže vrijednost 0 nakon 2N koraka od početka pobude

6.1. Granični period bez ulazne pobude u otvorenoj petlji, odsijecanje upotrebom dvojnog komplementa

Osnovni element kaskadne ili paralelne realizacije regulatora je sekcija prvog reda definirana izrazom (6-8)

1

1

1( ) .1

azH zbz

+=

+ (6-8)

Slika 6.3. Sekcija prvog reda Rekurzivna jednadžba dana je izrazom

[ ] [ 1] [ ][ ] [ ] [ 1],

x k bx k u ky k x k ax k

= − − += + −

(6-9)

pri čemu je x varijabla stanja u sekciji. Kod cjelobrojne aritmetike, x je manji ili jednak 1 2 N−− . Koristeći aritmetiku dvojnog komplementa, odsijecanje je predstavljeno operatorom odsijecanja [...]Q . Odsječena vrijednost varijable kx može se izračunati na dva načina:

[ ] [ [ 1]] [ ][ ] [( ) [ 1]] [ ]

x k Q bx k u kx k Q b x k u k

= − − += − − +

(6-10)

Page 32: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

25

Uobičajeno se za regulatore koji rade u stvarnom vremenu uzima 0b < , stoga se češće koristi drugi izraz iz (6-10). Za slučaj da je:

a) b>0,

granični period se ne pojavljuje. Kako je bilo vidljivo iz primjera za granični period (tablica 6.2.), izlaz y mijenja predznak te svaki put kad je predznak pozitivan, operator odsijecanja umanjuje apsolutnu vrijednost dok se ne dostigne stabilno stanje.

b) b<0, ako je 0 0x > i koristi se drugi izraz iz (6-10), ne pojavljuje se granični period, dok za 0 0x < dolazi do pojave graničnog perioda. Može se pokazati da su uvjeti za nastajanje graničnog perioda

0,1 | |

q GPb

−≤ ≤

− (6-11)

pri čemu je ( 1)2 Nq − −= LSB i | | 0.5b > . Amplituda graničnog perioda izlaza [ ]y k iznosi

[ ] [ ] [ 1].y k x k ax k= + − (6-12) Za 0a < , jednadžba (6-12) uz upotrebu operatora odsijecanja daje

[ ] [ ] [( ) [ 1]].y k x k Q a x k= − − − (6-13) Koristeći izraz (6-11), amplituda graničnog perioda izlaza y dana je na sljedećim izrazom:

1 | || [ ] | 1 .1 | |

ay n qb

−≤ + −

(6-14)

Napomena: utjecaj graničnog perioda otvorenog kruga beznačajan je u odnosu na onaj zatvorenog kruga.

Page 33: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

26

6.2. Granični period bez ulazne pobude zatvorenog kruga uzrokovan odsijecanjem na konačnu duljinu riječi

Granični period realnog sustava vrlo je važan fenomen vezan uz primjenu zatvorenog kruga upravljanja. Ovaj granični period, koji se razlikuje od graničnog perioda u otvorenoj petlji najvećim je dijelom nastao djelovanjem sljedećih čimbenika [17]:

- preniskom razlučivošću analogno-digitalne pretvorbe, - lošim skaliranjem parametara digitalnog algoritma, - lošim skaliranjem očitanja senzora i izvršnih uređaja. a) Pojas neosjetljivosti analogno-digitalnog pretvornika ovisi o intervalu

(ADINTERVAL) i razlučivosti pretvorbe ( 2 Nq −= ). pojas neosjetljivosti ADINTERVAL q= × (6-15) Interval pretvornika odabire se u ovisnosti o zahtjevima na interval ulaznog signala. Svako povećanje pojasa neosjetljivosti analogno-digitalnog pretvornika jako utječe na granični period stabilnosti.

b) Pojas neosjetljivosti algoritma upravljanja ovisi o duljini riječi, intervalu AD pretvorbe i istosmjernom pojačanju algoritma upravljanja.

Primjerice, za regulator dan prijenosnom funkcijom (6-8), pojas neosjetljivosti je

1 2 .( 0) 1

NLSB bpojas neosjetljivosti ADINTERVAL ADINTERVALD aω

−+= =

= + (6-16)

Kod aritmetike dvojnog komplementa, kad god je apsolutna vrijednost izlaza manja od LSB-a regulatora, ona je odsječena na nulu te postoji konstantni pojas neosjetljivosti koji regulator ne može kompenzirati. U slučaju da koristimo aritmetiku s komplementom broja, ova pojava nije izražena. S obzirom da većina regulatora radi u aritmetici dvojnog komplementa, da bi se implementirala aritmetika komplementa broja, koriste se Shenbergovi zakoni koji glase [17]:

1) broj treba množiti i odsijecati u aritmetici dvojnog komplementa 2) ako je rezultat negativan, treba dodati 1 LSB-u rezultata

c) Pojačanje filtra, poredak elemenata

U slučaju kaskadne realizacije regulatora, ukupno pojačanje treba raspodijeliti po svim sekcijama regulatora. U slučaju da je na ulazu prve sekcije veliko pojačanje, ukupni granični period se smanjuje i moguća je pojava preljevanja (engl. overflow).

Page 34: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

27

6.3. Sustav bez pobude, pojas neosjetljivosti i granični period sustava u otvorenoj petlji regulacije uzrokovani zaokruživanjem na konačnu duljinu riječi

Direktna realizacija diskretne prijenosne funkcije dana je izrazom [17]

0

1

( ) ,( ) 1

mk

kk

nj

jj

a zy zu z b z

=

=

=+

∑ (6-17)

Izlaz y dan je rekurzivnom jednadžbom

0 1[ ] [ ] [ ].

m n

i ji j

y k a u k i b y k j= =

= − − −∑ ∑ (6-18)

Za konstantnu pobudu 0u i u slučaju da je pohranjeni izlaz y zaokružen na najbliži višekratnik broja q , izlaz se određuje na sljedeći način

00 1

[ ] [ [ ]],m n

i ji j

y k u a b Q y k j= =

= − −∑ ∑ (6-19)

pri čemu je []Q operator zaokruživanja. Pretpostavlja se da pohranjena vrijednost [ [ ]]Q y k dostiže vrijednost stabilnog stanja [ ]Q y ,

[ ] ,Q y y ε= − (6-20) pri čemu je y vrijednost stabilnog stanja prije zaokruživanja, a vrijednost ε je višekratnik od q ,

00 1

.m n

k jk j

y u a y b= =

= −∑ ∑ (6-21)

Koristeći (6-18) i (6-19), vrijednost izračunatog izlaza [ ]y k dana je izrazom

00 1 1

[ ] .m n n

i j ji j j

y k u a y b bε= = =

= − +∑ ∑ ∑ (6-22)

Koristeći vrijednost stabilnog stanja izlaza y dobiva se

Page 35: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

28

1

[ ] (1 )

[ ] .

n

jj

y k y b

Q y B

ε ε

ε=

= − + +

+

∑ (6-23)

Izračunata vrijednost izlaza [ ]y k biti će zaokružena na [ ]Q y ako je

,2 2q qB B

ε− ≤ < (6-24)

stoga će pohranjeni izlaz [ ]Q y ostati na vrijednosti [ ]Q y ako vrijedi

[ ] .2 2q qy Q u yB B

− ≤ < + (6-25)

Navedeni interval predstavlja pojas neosjetljivosti filtra u otvorenoj petlji. Pojas može biti širok mnogo kvantizacijskih koraka i u slučaju da se računaju predznaci, izlaz može alternirati, odn. pojas neosjetljivosti se pretvara u granični period.

Page 36: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

29

7. DULJINA RIJEČI U AD I DA-PRETVORNICIMA, MEMORIJI I ARITMETIČKOJ JEDINICI

Duljina riječi i brzina uzorkovanja međusobno su ovisne velilčine, tako da je odabir najvećeg intervala uzimanja uzoraka i najmanja duljina riječi iterativan proces. Praktični odabir duljine riječi u osnovi je sveden na odabir mikroprocesora sa 8-bitovnim ili 16-bitovnim registrima. Projektant sustava mora odrediti duljinu riječi koja zadovoljava kriterije kvalitete upravljanja. Njegov cilj je izrada sustava uz minimalne troškove. Očito je da je konačna cijena proizvoda već u početku određena duljinom riječi (zbog odabira ispravnog mikroprocesora) i brzinom uzimanja uzoraka (analogno-digitalni pretvornici).

7.1. Duljina riječi u AD-pretvorniku (otvorena petlja) Analogno-digitalni pretvornik je uređaj koji kvantizira ulazni analogni signal i pretvara ga u digitalni [17]. On služi kao veza između kontinuiranog i diskretiziranog svijeta. Duljina riječi iznosi 1N + (numerička vrijednost + predznak), i određena je trima faktorima:

- dinamičkim opsegom ulaznog analognog signala, - kvantizacijskim šumom AD-pretvornika i - šumom mjerenja.

a) Dinamički opseg analognog signala određen je odnosom maksimalne i minimalne amplitude u ulaznom analognom signalu. Uz skaliranje, najveća amplituda iznosi max 1u = , razlučivost kvantizacije je

dana izrazom min

max

uqu

= , gdje je 2 Nq −= , odn. LSB. Da bismo odredili N koristimo

sljedeći izraz

max2

min

log .uNu

= (7-1)

b) Utjecaj kvantizacijskog šuma AD-pretvornika

Kvadrat srednje vrijednosti kvantizacijskog šuma dan je izrazima:

222

2( 1)22

23 3

2 ,12 3

T

R

N

T

N

R

q

q

ε

ε

− +

= =

= = (7-2)

uz 2 Nq −= koji je LSB. Koristit ćemo izraz 1T RN N= + .

Page 37: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

30

Pretpostavlja se da je analogni signal slučajni Gaussov signal sa srednjom vrijednošću 0.5 i najvećom amplitudom 1 (odgovara 3σ ) [17]. Varijanca analognog signala tada iznosi

2 1 .9

e = (7-3)

Odnos signal-šum dan je izrazom

22

22

129 .1 3(2 )

3

T

T

N

NT

eε −

= = (7-4)

Koristeći logaritamske izraze i označavanje u decibelima dobijaju se sljedeći izrazi za odnos signal-šum:

22

2

2( ) 10log 10log3

( ) 20 log 2 10log3

TN

T

T

eF dB

F dB Nε

= =

= −

(7-5)

Rješenje za N dano je sljedećim izrazom

10log3 0.820log 2 6T

F FN += = + (7-6)

Duljina riječi za AD-pretvornik određuje se kao najveća vrijednost amplitude u , određenom zahtjevima danim izrazima (8-1) i (8-6).

max2

min

( )max 1 log , 0.86T

u F dBNu

≥ + + (7-7)

7.2. Duljina riječi u aritmetičkoj jedinici (otvoreni krug) Kvantizacijski šum prouzrokovan u AD-pretvorniku pojačava se tijekom korištenja aritmetičke jedinice. Omjer između kvantizacijskog šuma ( 2ε ) i izlaznog šuma ( 2

uσ ) iznosi [17]

21 1

2| | 1

1 ( ) ( ) ,2

um

z

K H z H z z dzj

σε π

− −

=

= = ∫ (7-8)

( )H z je prijenosna funkcija algoritma upravljanja, dok su izrazi korišteni za prikaz

kvantizacijskog šuma dani sa

Page 38: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

31

222

2( 1)22

23 3

2 ,12 3

T

R

N

T

N

R

q

q

ε

ε

− +

= =

= = (7-9)

gdje je 2 Nq −= LSB. Pretpostavlja se da je obrađivani signal Gaussov s najvećom amplitudom 1 (odgovara 3σ ), omjer signal-šum izlaza dan je na sljedeći način

2

2

2 2

22

[ ] 10log

119[ ] 10log 10log .

3 (2 )(2 )3

TT

u

u m

NN m m

eF dB

K e

F dB K K

σ

σ

−−

=

=

= =

(7-10)

Rješenje za N dobija se rješenjem nejednadžbe

( ) 100.8 log .6 6T m

F dBN K≥ + + (7-11)

7.3. Duljina riječi memorije U ovom potpoglavlju određuje se utjecaj duljine riječi koeficijenata prijenosne funkcije na relokaciju polova. Maksimalna dopuštena relokacija pola P u s-ravnini iznosi P∆ . Odgovarajuća relokacija polova u z-ravnini dana je izrazima [17]:

( ) ( ) ,P P T P P Tz e e− +∆ − −∆∆ = − (7-12)

2 ( ),PTz e sh PT−∆ = ∆ (7-13) gdje je T interval uzorkovanja. Za z∆ LSB ( 2 Nz −∆ = ) dobijamo:

2 2 ( ),N PTe sh PT− −= ∆ (7-14)

2 22log log .PT PN PTe

P− ∆

= − − (7-15)

Duljina riječi koeficijenta ovisi o apsolutnoj poziciji pola P i o omjeru PP∆ . U izrazu

(7-15) vidi se da postoji uska povezanost duljine riječi i intervala uzorkovanja. Manji interval uzorkovanja T uvjetuje povećanje duljine riječi koeficijenta [17].

Page 39: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

32

7.4. Duljina riječi digitalno-analognog pretvornika Prijenosnu funkciju ZOH karakterizira odnos amplituda dan izrazom [17]

sin /| ( ) | ,/

sZOH

s

f fH ff f

= (7-16)

gdje je 1/s sf T= . Fazno kašnjenje dano je izrazom ( )ZOH fφ

( ) 180 .ZOHs

fff

φ = (7-17)

Za nisku frekvenciju signala, pojačanje je skoro jedinično, no fazno kašnjenje može biti znatno. Duljinu riječi DA-pretvornika određuje dinamički opseg analognog aktuatora

2log ,zas

rez

yNy

= (7-18)

pri čemu je zasy maksimalna vrijednost izlaza aktuatora, a rezy granica razlučivosti.

7.5. Odabir duljine riječi s obzirom na zatvoreni krug regulacije Iz već navedenog, vidljivo je da najveći problemi vezani uz numeričke proračune nastaju kao posljedica utjecaja pojasa neosjetljivosti AD-pretvornika i pojasa neosjetljivosti regulatora (ukoliko je korišten zatvoreni krug regulacije sa parametrima regulatora zadanim u cjelobrojnoj aritmetici) te zaokruživanja brojeva [17]. AD-pretvornik kao najskuplji dio digitalnog regulatora indirektno zahtjeva da se rezolucija AD-pretvornika odabere s obzirom na najveću dopuštenu vrijednost graničnog perioda zatvorenog kruga. Izbor duljine riječi s obzirom na cijenu koštanja sustava [17]:

( 1)ADN + je određen dopuštenim graničnim periodom (7-19) ( 1) 4 ( 1)aritmetički ADN N+ = + + (7-20) ( 1) ( 1) 2DA ADN N+ = + − (7-21)

Page 40: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

33

8. SIMULACIJSKE PROVJERE NA MODELU ELEKTRONIČKE ZAKLOPKE UZ POMOĆ PROGRAMSKOG PAKETA MATLAB SIMULINK

8.1. Model procesa Izlaz iz regulatora predstavlja upravljački napon, koji preko čopera daje napon armature. Protuelektromotorna sila i napon armature formiraju struju armature, koja proizvodi moment motora kojemu se suprotstavlja moment povratne opruge. Zakret motora prenosi se preko reduktora na tijelo ventila. Da bi se onemogućilo integriranje brzine kada je ventil zakrenut u graničnim slučajevima, koristi se blok u kojem je izvedeno blokiranje brzine. Kriteriji kvalitete upravljanja za pojednostavljeni linearni model motora:

(i) nelienarni efekti poput trenja i elastičnosti opruge su zanemarivi (ii) kašnjenje uzrokovano armaturnom vremenskom konstantom je zanemarivo

( aT T< , pri čemu je T vrijeme uzorkovanja, vrijedi za diskretnu i cjelobrojnu izvedbu regulatora, za kontinuiranu izvedbu aT je dovoljno malen da se smije zanemariti)

Model procesa u programskom paketu Matlab Simulink [16], koji je korišten u simulacijama, prikazan je na slici 8.1.

Slika 8.1. Model procesa

Page 41: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

34

pri čemu su parametri procesa:

2.1chK = - pojačanje čopera 1 1[ ]

3aa

K SR

= = - recipročni otpor armature

0.003[ ]aT s= - armaturna vremenska konstanta 0.02[ / ]t vK K Vs rad= = - konstanta momenta (konstanta motora)

6 22 10 [ ]J kgm−= ⋅ - moment inercije sveden na osovinu motora 0.06lK = - omjer na reduktoru 0.05[ / ]sK Nm rad= - konstanta povratne opruge

Povratna veza po elektromotornoj sili emfu djeluje kao prigušivač s ekvivalentnim koeficijentom prigušenja [1]

d a t vK K K K= (8-1) Da bi proces radio u radnom području, korišten je algoritam kojim se brzina integrira jedino u slučaju kad je kut zakreta u dopuštenom opsegu vrijednosti -

0 0[20 ,90 ] . Model blokiranja integratora brzine prikazan je na slici 8.2. Ovim se načinom izbjegava udaranje aktuatora u graničnike, što bi moglo dovesti do oštećenja aktuatora.

Slika 8.2. Blok zabrane integriranja brzine

Page 42: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

35

Prema [1], uvjeti (i) i (ii) su zadovoljeni za model elektroničke zaklopke s kojom radimo, dok pojednostavljeni model procesa koji zadovoljava navedene uvjete možemo opisati IT1 članom (8-2). [1]

( )( ) ,( ) [1 ( ) ]

pp

em

KsG su s s T T sθ

ΣΣ

= =+ +

(8-2)

pri čemu su pojačanje pK , elektromehanička vremenska konstanta emT i parazitna vremenska konstanta TΣ dani izrazima

,ch lp

v

K KKK

= (8-3)

,emd

JTK

= (8-4)

.aT TΣ = (8-5)

8.2. I-PD regulator I-PD regulator je modificirani oblik standardnog PID regulatora, no razlikuju se po tome što PID ima sve tri grane spojene na signal pogreške, dok I-PD ima samo I granu spojenu na signal pogreške, dok su P i D grane spojene na signal povratne veze. Razlog takvom pristupu je izbjegavanje nula zatvorenog sustava koje usljed derivacijskog i proporcionalnog djelovanja izazivaju u većini slučajeva nadvišenje u odzivu te samim time i veće promjene upravljačkog signala. Standardni PID regulator je dan izrazom (8-6), dok je modificirani I-PD regulator dan izrazom (8-7).

0

( )( ) ( ) ( ) ,t

PID i dde tu t Ke t K e d K

dtτ τ= + +∫ (8-6)

0

( )( ) ( ) ( ) .t

I PD i ddy tu t Ky t K e d K

dtτ τ− = − + −∫ (8-7)

Parametri I-PD regulatora određuju se optimumom dvostrukog odnosa (optimum prigušenja, [10], [11]). Optimum dvostrukog odnosa prilično je jednostavna metoda određivanja parametara LTI sustava bilo kojeg reda. Najbitnija karakteristika ovog pristupa je mogućnost analitičke optimizacije parametara regulatora reduciranog reda. Metoda se zasniva na karakterističnom polinomu zatvorenog kruga prikazanom u obliku

1 2 2 3 3 2 22 3 2 3 2( ) ... 1,n n n n

n e e e eN s D D D T s D D T s D T s T s− −= ⋅⋅⋅ + + + + + (8-8)

Page 43: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

36

pri čemu je eT nadomjesna vremenska konstanta, a 2 3, ,..., nD D D karakteristični odnosi. U optimalnom slučaju 2 3 ... 0.5nD D D= = = = [10], sve prijenosne funkcije, bez obzira na red sustava, imaju sličan kvaziaperiodski odziv s nadvišenjem manjim od 8% i vremenom porasta manjim od 2.4 eT . U slučaju regulatora reduciranog reda, samo dominantni karakteristični odnosi 2 3, ,..., , ( )rD D D r n< se postavljaju na vrijednost 0.5 . Koristeći prijenosnu funkciju pojednostavljenog procesa (8-2) i I-PD strukturu regulatora (slika 8.3.) dobiva se karakteristični polinom zatvorenog kruga

3 2

2 3 3 2 22 3 2

( ) ( ) 1

1.

I ID I I

p R p R

e e e

aT TA s s T T s T sK K K K

D D T s D T s T s

= + + + +

= + + +

(8-9)

Slika 8.3. I-PD regulator s pojednostavljenim modelom procesa

Izjednačivši karakteristični polinom s karakterističnim polinomom optimuma dvostrukog odnosa (8-8), određujemo konačne izraze za parametre regulatora

, ,R I DK T T .

2 22 3

1 ,emR

p e

T TKK D D T

Σ+= (8-10)

,I eT T= (8-11)

2 32 (1 ).e

D eem

D D TT D TT TΣ

= −+

(8-12)

Izraz eT određen je sa

2 3e

TTD D

Σ= (8-13)

Page 44: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

37

Druga je mogućnost izabrati eT tako da zadovoljava sljedeća tri zahtjeva:

(i) upravljački signal mora biti unutar propisanih vrijednosti (u navedenom slučaju unutar intervala [ 5,5]V−

(ii) vrijeme smirivanja mora biti dovoljno 'maleno' da regulacija sustava ima smisla - 200settleT ms= .

(iii) tolerancija pogreške smirivanja (za slučaj korištenja kvantizacije) iznosi 00.1 , dok nadvišenje ne smije prelaziti vrijednost od 2% .

Nadomjesna vremenska konstanta koja dovoljno dobro zadovoljava navedene uvjete iznosi 45eT ms= , dok proračunata iznosi 43.2eT ms= . Kako bi se izbjeglo nadvišenje u odzivu koristi se granični aperiodski oblik prijenosne funkcije koji je određen uz 2 0.37D = [11] ( 3 0.5D = ). U daljnjim simulacijama koristi se I-PD regulator s realnim derivatorom iz razloga što u slučaju korištenja idealnog derivatora stupanj brojnika biva veći od stupnja nazivnika narušavajući kauzalnost sustava.

( ) .0.1 1

Dd R

D

T sG s KT s

=+

(8-14)

8.3. Simulacije sustava upravljanog različitim izvedbama I-PD regulatora

Obavljane su simulacije sustava za dva slučaja:

1) Velike promjene referentne veličine – interval 0 0[22 ,87 ] 2) Male promjene referentne veličine – interval 0 0[38 ,45 ]

Razlog korištenja navedena dva slučaja za simuliranje sustava je pokrivanje većeg raspona kuteva zakreta, čime se dodatno stiče uvid u realno ponašanje sustava elektroničke zaklopke.

8.3.1. Sustav upravljan kontinuiranom izvedbom I-PD regulatora Sustav elektroničke zaklopke upravljan kontinuiranim I-PD regulatorom uz blok koji onemogućava 'efekt zaleta' - 'antiwindup' blok prikazan je na slici 8.4.

Page 45: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

38

Slika 8.4. Sustav elektroničkog gasa reguliran kontinuiranim I-PD regulatorom Izvedba kontinuiranog I-PD regulatora za paket Matlab Simulink [16] prikazana je na slici 8.5.

Slika 8.5. Izvedba I-PD regulatora u kontinuiranoj domeni Radi onemogućavanja 'efekta zaleta', uslijed fizikalnih ograničenja sustava, korišten je 'antiwindup' blok prikazan na slici 8.6.

Page 46: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

39

Slika 8.6. Antiwindup blok Izlaz iz regulatora spojen je na ulaz _u IPD , dok je signal pogreške spojen na ulaz e AW bloka. Ponekad, kada upravljački signal dosegne zasićenje, prekida se povratna veza i sustav radi u otvorenoj petlji iz razloga što izvršni organ (u navedenom slučaju ventil) ostaje u svom graničnom položaju neovisno o upravljačkom signalu. Kako regulator sadrži integralni član koji nastavlja integrirati regulacijsko odstupanje

( )e t , izlaz regulatora ( )u t može poprimiti vrlo visoke vrijednosti. Naknadnim smanjivanjem regulacijskog odstupanja ( )e t , regulator vrlo sporo izlazi iz zasićenja. Ovaj efekt se naziva 'efekt zaleta', odn. 'windup' efekt. Da bi se izbjegla ova neželjena pojava, uvodi se uvjetno integriranje; točnije, integralni član I-PD regulatora će integrirati jedino ako su ispunjeni određeni uvjeti i obratno. U navedenom slučaju, uvjet integracije je upravljački signal u intervalu [ 5,5][ ]V− . Logika AW bloka radi na sljedeći način:

(ako je pogreška veća od 0) I (upravljački signal veći od 5[V]) ILI

(ako je pogreška manja od 0) I (upravljački signal manji od -5[V]) TADA

zabrani daljnje integriranje

Page 47: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

40

Odzivi sustava dobiveni simulacijom u kontinuiranoj domeni prikazani su na slikama 8.7 i 8.8.

Slika 8.7. Odziv sustava uz upotrebu kontinuiranog I-PD regulatora na intervalu 0 0[22 ,87 ] ,

uvećani odziv u okolici 087 te uvećani odziv u okolici 022

Page 48: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

41

Slika 8.8. Odziv sustava uz upotrebu kontinuiranog I-PD regulatora na intervalu 0 0[38 ,45 ] ,

uvećani odziv u okolici 045 te uvećani odziv u okolici 038

Page 49: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

42

Odzivi prikazani na slikama 8.7 i 8.8 dobiveni su korištenjem kontinuiranog I-PD regulatora bez korištenja kvantizatora. Dobiveni odzivi imaju minimalna nadvišenja i dovoljno kratko vrijeme smirivanja signala unutar traženih granica. U tablici 8.1 prikazani su rezultati dobiveni simulacijom. Tablica 8.1. Rezultati dobiveni uz korištenje kontinuiraog I-PD regulatora

0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT 112ms 140ms

_m Uσ 0.0044% 0.0401% 111ms 139ms _m Dσ 0.0044% 0.0401%

Napomena: vrijeme smirivanja predstavlja vrijeme u kojem signal prvi puta dostiže vrijednost unutar tolerancije 00.1 oko referentne veličine.

8.3.2. Sustav upravljan diskretiziranom izvedbom I-PD regulatora Sustav upravljan diskretiziranim I-PD regulatorom prikazan je na slici 8.9.

Slika 8.9. Sustav upravljan diskretiziranim I-PD regulatorom Diskretizacijom kontinuiranog I-PD regulatora iz prijašnjeg poglavlja dobija se diskretizirani I-PD regulator prikazan na slici 8.10. Napomena: diskretizacija je provedena uz vrijeme uzorkovanja 5[ ]T ms= .

Page 50: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

43

Slika 8.10. Diskretizirani I-PD regulator

Page 51: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

44

Odzivi za diskretizirani I-PD regulator prikazani su na slikama 8.12 i 8.13.

Slika 8.12. Odziv sustava uz upotrebu diskretiziranog I-PD regulatora na intervalu 0 0[22 ,87 ] ,

uvećani odziv u okolici 087 te uvećani odziv u okolici 022

Page 52: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

45

Slika 8.13. Odziv sustava uz upotrebu diskretiziranog I-PD regulatora na intervalu 0 0[38 ,45 ] ,

uvećani odziv u okolici 045 te uvećani odziv u okolici 038

Page 53: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

46

U tablici 8.2. su prikazani rezultati dobiveni simulacijom. Tablica 8.2. Rezultati simulacije uz korištenje diskretiziranog I-PD regulatora

0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT 160ms 205ms

_m Uσ 0.2045% 1.2777%

_settle DT 160ms 234ms

_m Dσ 0.2045% 1.6516% Uz diskretizaciju početnog kontinuiranog I-PD regulatora odzivi se pogoršavaju, te su vidljiva veća nadvišenja i oscilatornost, također je vidljivo i da je sustav dosta sporiji s obzirom na vrijeme smirivanja.

8.3.3. Sustav upravljan diskretiziranom i kvantiziranom izvedbom I-PD regulatora

Na slici 8.14., prikazan je sustav reguliran diskretiziranim i kvantiziranim I-PD regulatorom.

Slika 8.14. Sustav upravljan diskretiziranim i kvantiziranim I-PD regulatorom Sam je regulator identičan diskretiziranom regulatoru prikazanom slikom 8.10. Razlika između prošlog sustava i ovdje prikazanog je u uvođenju kvantizatora kojima se izvodi analogno-digitalna pretvorba, čime se uvodi pojam razlučivosti opisan ranije u ovom radu.

Ovakvom izvedbom moguće je simulirati realni sustav, te ukazati na pojave koje se događaju prilikom korištenja niže razlučivosti od preporučene. Posebna pozornost će se obratiti na pojave prilikom korištenja 8-bitovne te 16-bitovne razlučivosti.

Page 54: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

47

Blok za AD pretvorbu

Slika 8.15. AD blok za pretvorbu signala reference (identičan blok se koristi i za AD pretvorbu signala povratne veze)

Odzivi dobiveni prilikom simulacije sustava uz upotrebu diskretiziranog i kvantiziranog regulatora uz rezoluciju AD pretvorbe od 16 bitova prikazani su na slikama 8.16 i 8.17.

Page 55: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

48

Slika 8.16. Odziv sustava elektroničkog gasa uz upotrebu diskretiziranog i kvantiziranog I-PD regulatora (16-bit) na intervalu 0 0[22 ,87 ] , uvećani odziv u okolici 870 te uvećani odziv u okolici 220

Page 56: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

49

Slika 8.17. Odziv sustava elektroničkog gasa uz upotrebu diskretiziranog i kvantiziranog I-PD regulatora (16-bit) na intervalu 0 0[38 ,45 ] , uvećani odziv u okolici 450 te uvećani odziv u okolici 380

Page 57: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

50

U tablici 8.3. su prikazani rezultati dobiveni simulacijom. Tablica 8.3. Rezultati simulacije uz korištenje diskretiziranog i kvantiziranog I-PD regulatora uz 16-

bitovnu kvantizaciju 0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT 160ms 205ms

_m Uσ 0.2043% 1.2802%

_settle DT 160ms 234ms

_m Dσ 0.2029% 1.6540% Minimalni diskretni pomak koji se može ostvariti korištenjem 16-bitovnih AD pretvornika iznosi 16 -6 02 15.2588 10 [ ]− = ⋅ . U slučaju korištenja 16-bitovnih AD pretvornika granični period je unutar tolerancije 00.1 , stoga je ovo rješenje prihvatljivo. Međutim, što se događa u slučaju korištenja 8-bitovnih AD pretvornika? Odzivi su prikazani na slikama 8.18 i 8.19.

Page 58: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

51

Slika 8.18. Odziv sustava uz upotrebu diskretiziranog i kvantiziranog I-PD regulatora (8-bit) na intervalu 0 0[22 ,87 ] , uvećani odziv u okolici 087 te uvećani odziv u okolici 022

Page 59: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

52

Slika 8.19. Odziv sustava uz upotrebu diskretiziranog i kvantiziranog I-PD regulatora (8-bit) na intervalu 0 0[38 ,45 ] , uvećani odziv u okolici 045 te uvećani odziv u okolici 038

Page 60: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

53

Tablica 8.4. Rezultati simulacije uz korištenje diskretiziranog i kvantiziranog I-PD regulatora uz 8-

bitovnu kvantizaciju 0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT NR1 NR

_m Uσ 0.2689% 1.6393%

_settle DT NR NR

_m Dσ 0.2605% 1.6944% Na slikama je prikazano kako sustav umjesto da se stabilizira, ostane oscilirati oko referentne vrijednosti. Dotična je pojava opisana u poglavlju 6 i naziva se graničnim periodom. Razlog nastanka ove pojave je kvantizacija signala; kada regulator ne može s dovoljnom točnošću prikazati određenu vrijednost, on oscilira između dvije susjedne vrijednosti. Vidljivo je da je odziv s 8-bitovnim AD pretvornicima mnogo lošiji nego sa 16-bitovnim. Izlaz je postao oscilatoran i izlazi iz traženih tolerancija, tako da se ne može odrediti vrijeme smirivanja. Kod implementacije ovdje prikazanog I-PD algoritma upravljanja nadalje će se koristiti 16-bitovni AD pretvornici, jer daju zadovoljavajuće rezultate.

8.3.4. Sustav upravljan cjelobrojnom izvedbom I-PD regulatora Na slici 8.20 prikazana je simulacijska shema korištena prilikom simuliranja sutava upravljanog cjelobrojnom izvedbom I-PD regulatora.

Slika 8.20. Sustav upravljan cjelobrojnom izvedbom I-PD regulatora Cjelobrojna realizacija se koristi kada se želi realizirati sustav upravljanja na računalu. Konačni cilj ovog rada je bio ispitati utjecaj cjelobrojne (engl. fixed-point) realizacije prilikom implementacije upravljačkog algoritma za mikroprocesore. Kako današnji mikroprocesori imaju binarnu točku na 2. mjestu, iza MSB-a (most significant bit, bit koji je postavljen potpuno lijevo u prikazu broja i predstavlja predznak), smisao cjelobrojne realizacije je bio prikazati sve veličine unutar raspona [ 1,1 2 ]N−− − , te realizirati regulator u danom opsegu. 1 NR – Nema rezultata, odziv se nije stabilizirao unutar granica tolerancije

Page 61: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

54

Sam je regulator izveden koristeći različite realizacije upravljačkog algoritma opisane u poglavlju 1. Na slici 8.21. prikazan je blok I-PD regulatora.

Slika 8.21. Cjelobrojna realizacija I-PD regulatora Vidljivo je da se u P dijelu regulatora pojavljuje koeficijent c koji množi parametar

RK . Dotični koeficijent se koristi kako bi se skalirali parametri regulatora i sveli u područje [ 1,1 2 ]N−− − .

1 .D

cK

= (8-15)

Integrator je izveden koristeći direktnu formu II (DF-II) opisanu u poglavlju 1.

Slika 8.22. Cjelobrojna realizacija I regulatora

Realni je derivator izveden u kaskadnoj realizaciji

Page 62: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

55

Slika 8.23. Cjelobrojna realizacija D regulatora Antiwindup blok je različit od prije spomenutih samo po tome što se ne gleda više raspon od [ 5,5]V− , već se gleda raspon unutar opsega [ 1,0.99]− .

Slika 8.24. Antiwindup blok korišten u cjelobrojnoj realizaciji I-PD regulatora

Page 63: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

56

Blok za AD pretvorbu sastoji se od sljedećih blokova

1) Kvantizator (stupanj kvantizacije iznosi 00.11 ), 2) Zero-order hold ( 5T ms= ), 3) Linearno skaliranje s koeficijentom 1/17k = , 4) Fixed-point gateway In (ulaz u cjelobrojnu aritmetiku).

Slika 8.25. Blok za AD pretvorbu Blok za DA pretvorbu sastoji se od sljedećih blokova:

1) Fixed-point gateway Out (izlaz iz cjelobrojne logike),

2) pojačanje iznosa 1 731kc

= (povratak na realne veličine),

3) Zero-order hold ( 5[ ]T ms= ), 4) Kvantizator (stupanj kvantizacije 2.44[ ]mV ), 5) Zasićenje [ 5,5]V− (zaštita).

Slika 8.26. Blok za DA pretvorbu Simulacije su rađene kako bi prikazali utjecaj cjelobrojne realizacije sa 16-bitovnom i 8-bitovnom duljinom riječi. Odzivi dobiveni simulacijom sustava reguliranog cjelobrojnom realizacijom I-PD regulatora prikazani su na slikama 8.27 i 8.28 (za 16-bitovnu realizaciju) te 8.29 i 8.30 (za 8-bitovnu realizaciju).

Page 64: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

57

Slika 8.27. Odziv sustava uz upotrebu cjelobrojnog I-PD regulatora (16-bit) na intervalu 0 0[22 ,87 ] ,

uvećani odziv u okolici 087 te uvećani odziv u okolici 022

Page 65: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

58

Slika 8.28. Odziv sustava uz upotrebu cjelobrojnog I-PD regulatora (16-bit) na intervalu 0 0[38 ,45 ] ,

uvećani odziv u okolici 045 te uvećani odziv u okolici 038

Page 66: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

59

Tablica 8.5. Rezultati simulacija uz korištenje I-PD regulatora izvedenog u cjelobrojnoj aritmetici

duljinom riječi od 16-bita 0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT 145ms 131ms

_m Uσ 0.1462% 0.1343%

_settle DT 105ms 155ms

_m Dσ 0.1771% 0.1517%

Page 67: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

60

Odzivi za 8-bitovnu duljinu riječi

Slika 8.29. Odziv sustava uz upotrebu cjelobrojnog I-PD regulatora (8-bit) na intervalu 0 0[22 ,87 ] ,

uvećani odziv u okolici 087 te uvećani odziv u okolici 022

Page 68: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

61

Slika 8.30. Odziv sustava uz upotrebu cjelobrojnog I-PD regulatora (8-bit) na intervalu 0 0[38 ,45 ] ,

uvećani odziv u okolici 045 te uvećani odziv u okolici 038

Page 69: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

62

Tablica 8.6. Rezultati simulacija uz korištenje I-PD regulatora izvedenog u cjelobrojnoj aritmetici sa

duljinom riječi od 8-bita 0 0[38 ,45 ] 0 0[22 ,87 ]

_settle UT NR NR

_m Uσ 21.4155% 4.2857%

_settle DT NR NR

_m Dσ 19.8164% 2.7807% Vidljivo je da 16-bitovna realizacija u potpunosti zadovoljava tražene kriterije kvalitete, dok 8-bitovna uopće ne daje smislene rezultate. Razlog tome je razina kvantizacije prilikom korištenja cjelobrojne aritmetike. Prije spomenuto skaliranje parametara regulatora i signala unutar regulatora, nije u potpunosti objašnjeno. Koeficijent c je određen kao recipročna vrijednost najvećeg parametra unutar regulatora (koeficijent koji množi sve tri grane regulatora, kako ne bi došlo do preljeva). Drugi koeficijent koji je uveden je k koji je određen metodom pokušaja i pogrešaka, a služi za skaliranje signala na dopušteni opseg kako prilikom aritmetičkih operacija ne bi došlo do preljeva. Stvarno gledano, trebalo je odrediti oba koeficijenta kako bi sustav funkcionirao i ne bi dolazilo do neželjenih efekata poput preljeva ili nemogućnosti prikaza parametara u zadanom opsegu. U simulacijama se podešavanjem parametara blokova vezanih uz cjelobrojnu aritmetiku u Matlabu, binarnu točku postavilo na poziciju između 1. i 2. bita (gledano s lijeve strane) uz korištenje varijable pomak , čime je dobiven dopušteni opseg vrijednosti u intervalu [ 1,1 2 ]pomak−− − . Kako se broj 1 ne može prikazati u ovom prikazu, kod antiwindup bloka je za uspoređivanje izlazne veličine korištena vrijednost 0.99 , jer dotična zadovoljava cjelobrojnu realizaciju i u slučaju 8-bitovne i u slučaju 16-bitovne riječi. Izlaz iz regulatora pomnožen s recipročnim umnoškom koeficijenata skaliranja c i k utječe na korak kvantizacije koji sada iznosi

15

7

1 2 731 2 22.30[ ] (16 )

1 2 731 2 5.71[V] (8 )

pomak

pomak

mV bitck

bitck

− −

− −

= ⋅ =

= ⋅ = (8-16)

Iz (8-16) jasno je vidljivo zašto realizacija uz korištenje 8-bitovne riječi ima problema sa stabilnošću – regulator poznaje samo 3 stanja izlaza: 5− , 0 i 5[ ]V i stalno radi u zasićenju. Nova razina kvantizacije za realizaciju uz korištenje 16-bitovne riječi je skoro 10 puta veća nego razina kvantizacije AD kartice korištene prilikom identifikacije ovog procesa [2], stoga je njegov utjecaj na granični period dominantan.

Page 70: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

63

ZAKLJUČAK U okviru ovog rada opisani su najvažniji čimbenici koji utječu na implementaciju upravljačkog algoritma u cjelobrojnoj aritmetici, te su provedene simulacije kako bi se pokazale razlike u kvaliteti vladanja procesa upravljanog kontinuiranom (aritmetika pomičnog zareza), diskretiziranom, te cjelobrojnom implementacijom regulatora. Simulacije su obavljane za linearizirani model elektroničke zaklopke. Analiza linearnog modela elektroničke zaklopke pokazuje da dotičnu možemo dovoljno dobro aproksimirati 1IT članom u opsegu 0 0[20 ,90 ] . Za proračun parametara IPD regulatora optimum dvostrukih odnosa se pokazao iznimno prihvatljivim sa stanovišta brzine (što proračuna parametara, što brzine odziva samog procesa) i pouzdanosti. Primjećuje se da su parametri regulatora određeni vrlo jednostavnim algebarskim izrazima. Također, korištenjem I-PD strukture PID regulatora, ukazano je na poboljšane performanse istog u odnosu na standardni PID regulator. Cilj je ovog rada bio odrediti ponašanje regulatora, realiziranog u cjelobrojnoj aritmetici uz korištenje različitih duljina riječi, prilikom regulacije istosmjernog motora koji zakreće ventil elektroničke zaklopke te odrediti minimalnu rezoluciju mikroprocesora na kojem bi se mogao implementirati upravljački algoritam samog regulatora. Simulacijama je određeno da cjelobrojna realizacija uz korištenje 16-bitovne riječi zadovoljava sve kriterije kvalitete upravljanja. Također, vidljive su i pojave poput graničnog perioda koje se, u pravilu, žele izbjeći ili svesti na minimum. Na ovaj je način moguće relativno brzo i jeftino projektirati bilo koji tip regulatora koji će biti implementiran na mikroprocesorima u cjelobrojnoj aritmetici te svesti troškove projektiranja na minimum, dok istovremeno konačni rezultat projektiranja predstavlja optimalni odnos cijena/performanse za kasniju serijsku proizvodnju.

Page 71: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

64

LITERATURA [1] J. Deur, D. Pavković, N. Perić, M. Jansz, D. Horvat, "An electronic throttle control strategy

including compensation of friction and limp-home effects," IEEE International Electric Machines and Drives Conference (IEMDC '03), Madison, WI, USA, June 2003.

[2] J. Deur, D. Pavković, "Experimental identification of an electronic throttle body," Internal

memorandum, Zagreb, October 27, 2001. [3] K. J. Astrom, "PID Control," – predavanja,

http://www.cds.caltech.edu/~murray/courses/cds101/fa02/caltech/astrom-ch6.pdf, 5.10.2006

[4] P. Baudrenghien, "DISP 2003, Lecture 6 – Part 2, Digital filtar 4,"

http://humanresources.web.cern.ch/humanresources/external/training/tech/special/DISP2003/DISP-2003_L06B_27Mar03.pdf, 5.10.2006.

[5] D. Jones, "Effects of finite word lenght," http://www.informatics.bangor.ac.uk/~dewi,

5.10.2006. [6] J. E. Ciolfi, "Fixed-point blockset, for use wih Simulink," The Mathworks, Inc., 1997. [7] R. Polikar, "Lecture 25, Quantizaion & Finite word-lenth effects,"

http://users.rowan.edu/~polikar/CLASSES/ECE351/Lecture25.pdf, 15.9.2006. [8] nepoznati autor, "I-PD control of a Type 0 system with two real poles",

ftp://ftp.deltacompsys.public/PDF/Mathcad%20-20t0p2%simple%20z%20NG.pdf, 5.10.2006.

[9] Z. Vukić, O. Kuljača, "Lectures on PID controllers,"

http://arri.uta.edu/acs/jyotirmay/EE4343/Labs_Projects/pidcontrollers.pdf, 5.10.2006. [10] N. Perić, J. Deur, I. Petrović, D. Pavković, "Sljedni sustavi s izraženom elastičnošću,

zračnošću i trenjem," Sveučilište u Zagrebu, Fakultet elektrotehnike i računarstva, Zavod za automatiku i procesno računarstvo, Zagreb, 2005.

[11] N. Perić, "Sinteza linearnih sljednih sustava primjenom praktičnih optimuma," http://www.fer.hr/_download/repository/SS_pogl_3_PREZENTACIJA.pdf, slajdovi uz

predavanja iz sljednih sustava, 5.10.2006. [12] N. Perić, I. Petrović, "Automatizacija postrojenja i procesa, predavanja," Sveučilište u

Zagrebu, Fakultet elektrotehnike i računarstva, Zavod za automatiku i procesno računarstvo, Zagreb 2004.

[13] M. G. Singh, P. Varaiya, M. Aizerman, S. G. Tzafestas, "Applied digital control,", North-

Holland, 1985. [14] G. F. Franklin, J. D. Powell, M. L. Workman, "Digital control of dynamic systems", 2nd

edition, Addison-Wesley, Reading, MA, 1990. [15] N. Perić, "Automatsko upravljanje, predavanja," Sveučilište u Zagrebu, Fakultet

elektrotehnike i računarstva, Zavod za automatiku i procesno računarstvo, Zagreb, 1998.

Page 72: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

65

[16] grupa autora, "Fixed-point blockset, for use with Simulink", User's guide, version 3, The Mathworks, Inc., 2001.

[17] Paul Katz, "Digital control using microprocessors", Prentice-Hall International, 1981. [18] Karl J. Åström, Björn Wittenmark: "Computer controlled systems - theory and design",

second edition, Prentice-Hall International, 1990. [19] Julius O. Smith III, "Introduction to digital filters with audio applications'', August 2006

Edition, Center for computer research in music and acoustics (CCRMA), Stanford University,

http://ccrma.stanford.edu/~jos/filters/, 16.10.2006.

Page 73: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

66

DODATAK 1. U dodatku 1. predstavljeni su programski kodovi korišteni prilikom izrade ovog rada.

db.m function [y]=dbround(poc_stanje) % deadband, rounding, 50 uzoraka %------------------------------------------------- u=[0:49]; for i=1:50 u(i)=1; end; u(1)=0; y=[0:49]; for i=1:50; y(i)=0; end; %pravi odziv y(1)=poc_stanje; %mijenja vrijednost za pocetno stanje y for i=2:50 y(i)=(0.9*y(i-1))+u(i); end; figure(1); plot(y); grid; title('Odziv sustava na step'); axis([0 50 0 18]); %rounding y(1)=poc_stanje; %mijenja vrijednost za pocetno stanje y for i=2:50 y(i)=round(0.9*y(i-1))+u(i); end; figure(2); plot(y); grid; title('Odziv sustava na step, zaokruzivanje'); axis([0 50 0 18]); %truncating y(1)=poc_stanje; %mijenja vrijednost za pocetno stanje y for i=2:50 y(i)=floor(0.9*y(i-1))+u(i); end; figure(3); plot(y); grid; title('Odziv sustava na step, odsijecanje'); axis([0 50 0 18]);

Page 74: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

67

lc.m function [y] = lcround(poc_stanje) %limit cycle, rounding, 50 uzoraka %------------------------------------------------- for i=1:50; y(i)=0; end; for i=1:50 u(i)=0; end; y(1)=0; u(2)=poc_stanje; %mijenjati pocetnu vrijednost ulaza for i=2:50 y(i)=(-0.9*y(i-1))+u(i); end; figure(1); plot(y); grid; title('Odziv sustava na step'); axis([0 50 -12 12]); y(1)=0; u(2)=poc_stanje; %mijenjati pocetnu vrijednost ulaza for i=2:50 y(i)=round(-0.9*y(i-1))+u(i); end; figure(2); plot(y); grid; title('Odziv sustava na step, zaokruzivanje'); axis([0 50 -12 12]); y(1)=0; u(2)=poc_stanje; %mijenjati pocetnu vrijednost ulaza for i=2:50 y(i)=floor(-0.9*y(i-1))+u(i); end; figure(3); plot(y); grid; title('Odziv sustava na step, odsijecanje'); axis([0 50 -12 12]);

Page 75: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

68

trotl_diskretni.m T=0.005; %prof. Petrovic %T=0; bit=16;pomak=15; %bit=8;pomak=7; %g=90;d=20; %testiram s ovime da odredim k!! g=87;d=22; %g=45;d=38; k=1/17; c=1/43; Ta=3e-3; %armaturna vremenska konstanta, asist. Vasak, e-mail Ra=3; %otpor armature Ka=1/Ra; %reciprocni armature Kch=12.75/5;%pojacanje choppera Kv=0.02; %konstanta motora (EMS=Kv*w) J=2e-6; %moment inercije sveden na osovinu motora Kt=Kv; %konstanta momenta (M=Kt*Ia) Kl=0.06; %omjer na reduktoru 0.059 KS=0.05; %konstanta povratne opruge (return spring) D2=0.37; %IEEE_TIA.PDF D3=0.5; %IEEE_TIA.PDF %num=[Kch*Kt*Ka/(Kl^2*KS) 0]; %den=[J*Ta/(Kl^2*KS) J/(Kl^2*KS) Ta+Kt*Ka*Kv/(Kl^2*KS) 1]; Kd=Ka*Kt*Kv; Tem=J/Kd; %IEEE_TIA.PDF T_eps=T+Ta; %IEEE_TIA.PDF %Te=T_eps/(D2*D3); Te=45e-3; Kp=Kch*Kl/Kv; %IEEE_TIA.PDF KRR=1/Kp*(T_eps+Tem)/(D2^2*D3*Te^2); %IEEE_TIA.PDF TII=Te; %IEEE_TIA.PDF TDD=D2*Te*(1-(D2*D3*Te)/(T_eps+Tem)); %IEEE_TIA.PDF %ap1=Kd/(KS*Kl^2); %IEEE_TIA.PDF %dKR=1/(ap1*Kp); %IEEE_TIA.PDF %a=(D2^2*D3*Te^2)/(ap1*(Tem-T_eps)); %IEEE_TIA.PDF KR=KRR; %-dKR; %IEEE_TIA.PDF TI=TII; %*(1-a); %IEEE_TIA.PDF TD=TDD; %_eps+(TDD-T_eps)/(1-a); %IEEE_TIA.PDF KP=KR; %IEEE_TIA.PDF KI=KR/TI; %IEEE_TIA.PDF KD=KR*TD; %IEEE_TIA.PDF zff=exp(-2*T/Te); %IEEE_TIA.PDF zFff=0.35*zff; %IEEE_TIA.PDF %sim('IPD_Diskretizirani_sa_AWD_FF_slikadiplomski'); %sim('IPD_Diskretizirani_kvantizirani_sa_AWD_FF_slikadiplomski');

Page 76: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

69

sim('IPD_fixedpoint_slikadiplomski_floor'); figure(1); hold on; subplot(2,1,1); plot(theta.time,theta.signals.values); grid; title('Odziv sustava na referentni signal, kut zakreta i upravljacki

signal'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); subplot(2,1,2); plot(u.time,u.signals.values); grid; xlabel('t [s]'); ylabel('u [V]'); legend('upravljacki signal'); figure(2); plot(theta.time,theta.signals.values); if(g==87) axis([2 3.1 86.4 88.3]); %axis([2 3.1 78 90]); else axis([2 3.1 44.5 45.7]); %axis([2 3.1 35 60]); end; grid; title('Uvecani odziv sustava na referentni signal (kut zakreta,

nadvisenje)'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); figure(3); plot(theta.time,theta.signals.values); if(g==87) axis([2.9 4.1 20.7 22.5]); %axis([2.9 4.1 20 22.5]); else axis([2.9 4.1 37.2 38.5]); %axis([2.9 4.1 32 45]); end; grid; title('Uvecani odziv sustava na referentni signal (kut zakreta,

nadvisenje)'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); %nadvisenje sigma_U=max(theta.signals.values(400:1200,:)) %nadvisenje gore sigma_D=min(theta.signals.values(400:1200,:)) %nadvisenje dole sigma_Up=100*(sigma_U-g)/70 sigma_Dp=100*(d-sigma_D)/70

Page 77: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

70

trotl_kontinuirani.m T=0; %g=90;d=20; %testiram s ovime da odredim k!! g=87;d=22; %g=45;d=38; Ta=3e-3; %armaturna vremenska konstanta Ra=3; %otpor armature Ka=1/Ra; %reciprocni armature Kch=12.75/5;%pojacanje choppera Kv=0.02; %konstanta motora (EMS=Kv*w) J=2e-6; %moment inercije sveden na osovinu motora Kt=Kv; %konstanta momenta (M=Kt*Ia) Kl=0.06; %omjer na reduktoru 0.059 KS=0.05; %konstanta povratne opruge (return spring) D2=0.37; D3=0.5; %num=[Kch*Kt*Ka/(Kl^2*KS) 0]; %den=[J*Ta/(Kl^2*KS) J/(Kl^2*KS) Ta+Kt*Ka*Kv/(Kl^2*KS) 1]; Kd=Ka*Kt*Kv; Tem=J/Kd; T_eps=T+Ta; %Te=T_eps/(D2*D3); Te=45e-3; Kp=Kch*Kl/Kv; %rad/V KRR=1/Kp*(T_eps+Tem)/(D2^2*D3*Te^2); TII=Te; TDD=D2*Te*(1-(D2*D3*Te)/(T_eps+Tem)); KR=KRR; %-dKR; TI=TII; %*(1-a); TD=TDD; %_eps+(TDD-T_eps)/(1-a); KP=KR; KI=KR/TI; KD=KR*TD; sim('IPD_Kontinuirani'); figure(1); hold on; subplot(2,1,1); plot(theta.time,theta.signals.values); grid; title('Odziv sustava na referentni signal, kut zakreta i upravljacki

signal'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); subplot(2,1,2); plot(u.time,u.signals.values);

Page 78: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

71

grid; xlabel('t [s]'); ylabel('u [V]'); legend('upravljacki signal'); figure(2); plot(theta.time,theta.signals.values); if(g==87) axis([2 3.1 86.9 87.1]); %axis([2 3.1 78 90]); else axis([2 3.1 44.9 45.1]); %axis([2 3.1 35 60]); end; grid; title('Uvecani odziv sustava na referentni signal (kut zakreta,

nadvisenje)'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); figure(3); plot(theta.time,theta.signals.values); if(g==87) axis([2.9 4.1 21.9 22.1]); %axis([2.9 4.1 20 22.5]); else axis([2.9 4.1 37.9 38.1]); %axis([2.9 4.1 32 45]); end; grid; title('Uvecani odziv sustava na referentni signal (kut zakreta,

nadvisenje)'); xlabel('t [s]'); ylabel('\theta [^o]'); legend('Ref \theta','Odziv \theta'); %nadvisenje sigma_U=max(theta.signals.values(400:1200,:)) %nadvisenje gore sigma_D=min(theta.signals.values(400:1200,:)) %nadvisenje dole sigma_Up=100*(sigma_U-g)/70 sigma_Dp=100*(d-sigma_D)/70

Page 79: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

72

SAŽETAK U moderno doba digitalni regulatori su potpuno istisnuli analogne. Razlozi su vrlo jednostavni: cijena komponenata je mnogostruko niža u masovnoj proizvodnji, dok su istovremeno fleksibilnost i lakoća održavanja samih sustava neusporedivo jednostavniji. No, promatrajući kvalitetu regulacije, stvari se ponešto mijenjaju. Naime, treba obratiti pažnju ne samo na cijenu, već na omjer cijene i performansi sustava. U ovom radu prikazan je postupak projektiranja I-PD regulatora počevši od kontinuiranog, preko diskretiziranog (uz uvođenje kvantizacije) sve do cjelobrojne izvedbe za mikroprocesorsku implementaciju. Iz rezultata simulacija vidljivo je da treba dobro odrediti kriterije kvalitete upravljanja te onda u ovisnosti o njima na vrlo jednostavan i kratak način odabrati tip i cijenu digitalnog regulatora. Rezultati simulacije cjelobrojne izvedbe digitalnog I-PD regulatora prikazuju pri korištenju 8-bitovne riječi da regulator ima samo tri stanja izlaza - 5− , 0 i 5[ ]V , dok pri korištenju 16-bitnovne riječi izlaz regulatora poprima vrijednosti u intervalu [ 5,5][ ]V− u koracima od 22.3[ ]mV . Kvaliteta upravljanja uz korištenje 16-bitovne riječi je mnogostruko veća uz minimalno povećanje cijene. Upotreba I-PD regulatora u ovoj aplikaciji je dovedena do praktično prihvatljivih rješenja i cijene koštanja. Nastavak istraživanja kretao bi se prema inteligentnim regulatorima zasnovanim na neuronskim mrežama ili modelskoj predikciji. Ključne riječi: pogreška kvantizacije, implementacijski aspekti digitalnih regulatora, I-PD regulator, cjelobrojna izvedba digitalnog regulatora

Page 80: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

73

ABSTRACT Digital controllers have been widely used today. With lower price of components, easy maintenance and much better flexibility they represent the only choice in industry applications. But, from aspect of process control quality, it is needed to check the price/performance ratio before implemented. In this work, the procedure of designing I-PD controller is shown, starting from continuous, over discreticized (with quantization) all down to fixed-point realization for microprocessor implementation. From results of simulations, it is visible that it is crucial to choose good quality criterions before even starting the design process. Depending on these criterions, it is easy to choose the right type of digital controller. Simulation results of the fixed-point I-PD controller realization show that when using 8-bit word, controller has got only three output states - 5− , 0 i 5[ ]V . When using 16-bit word, output of the controller is given in the interval [ 5,5][ ]V− in quantization steps of 22.3[ ]mV . With 16-bit word, control quality of this particular system is much better than when using 8-bit word. In this application, the use of I-PD controller is practically usefull regarding control quality and price. Intelligent control algorithms like neural networks or model prediction are next in line for further researching. Keywords: quantization error, implementation aspects of digital controllers, I-PD controller, fixed-point realization

Page 81: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

74

ŽIVOTOPIS Damir Lukić rođen je 4. ožujka 1980. godine u Rijeci. 1986. godine upisuje osnovnu školu, a 1994. godine Gimnaziju Andrije Mohorovičića u Rijeci, matematičko - informatički odjel. Odmalena pokazuje interes prema tehnici i računalima te 1998. godine upisuje Fakultet elektrotehnike i računarstva Sveučilišta u Zagrebu, smjer Automatika. Pod vodstvom mentora prof. I. Petrovića odabire seminarski rad vezan uz utjecaj pogreške kvantizacije na kvalitetu upravljanja procesom, a diplomskim radom produbljuje stečena saznanja i prikazuje utjecaj dotičnih efekata na lineariziranom modelu elektroničke zaklopke.

Page 82: ANALIZA IMPLEMENTACIJSKIH ASPEKATA …jednostavnu sekciju 2. reda, kao što je prikazano na slici 1.1, no može postati problem za DF filtre višeg reda. Osjetljivost na pogreške

75