6.1.3.5. Kako odabrati odgovarajuću strukturu realizacije temeljenu na rekurzivnim algoritmima?

Cilj: Do sada smo spomenuli nekoliko različitih struktura realizacije. Odgovor na to kako odabrati pravu daje ovo poglavlje.

Iako smo tijekom opisa pojedine strukture neke od kriterija odabira već spominjali, navedimo ih ovdje sve zajedno. Četiri su osnovna kriterija za izbor odgovarajuće strukture realizacije impulsne prijenosne funkcije:

a) zahtjev za potrebnom memorijom,

b) zahtjev za radom u realnom vremenu,

c) zahtjev za minimizacijom vremena proračuna, i

d) zahtjev za minimizacijom osjetljivosti na vrijednosti parametara.

Zahtjev za memorijom vezan je s brojem elemenata za kašnjenje. Što realizacija ima više elemenata za kašnjenje, to ona zahtijeva više memorije. Danas ovaj zahtjev i nije toliko bitan. Memorija je jeftina, pa se puno više pažnje posvećuje zahtjevu za rad u realnom vremenu koji je usko vezan sa zahtjevom za minimizaciju vremena proračuna.

Radi se o tome da je ukupno trajanje proračuna upravljačke veličine u(kT) vezano s odabirom perioda uzorkovanja. Novi se uzorak ne može uzeti dok se nije proračunalo upravljanje za prethodni diskretni trenutak. Vrlo je važno i kašnjenje upravljačkog signala u odnosu na trenutak uzimanja ulaznog signala pogreške e(kT). Upravljački se signal dovodi na izvršni uređaj u trenutku (kT+tk), gdje je tk vrijeme potrebno da se proračuna upravljačka veličina i napravi D/A pretvorba. Naravno da u praksi želimo minimizirati ovo vrijeme. Ovaj je zahtjev posebno važan ako vođenje realiziramo računalom s ograničenim procesorskim mogućnostima kod kojega je frekvencija procesora mala. Naravno da na Intelovom Pentium procesoru s taktom 2 GHz problema u realizaciji vođenja većine realnih sustava neće biti, ali koristimo li Dallasov procesor koji je ugrađen u mrežno ugradbeno računalo TINI čiji takt ne prelazi 75MHz, onda problem postoji i nastojimo izabrati realizaciju kod koje je trajanje proračuna najmanje.

Dužina proračuna proporcionalna je broju, vrsti i trajanju aritmetičkih operacija. Pri realizaciji impulsne prijenosne funkcije koriste se aritmetičke operacije množenja i zbrajanja uz dodatne operacije zapisa u memoriju i operacije pomaka iz jednog registra u drugi. Najkritičnija je operacija množenja koja traje najduže. Međutim isto je tako važan broj novih operacija koje se u pojedinom diskretnom trenutku treba napraviti. Određeni broj operacija koji se odnose na prošle uzorke može se napraviti i nakon predaje upravljačkog signala D/A pretvaraču i pripremiti za proračun u sljedećem diskretnom trenutku vremena. Ono što se ne može pripremiti unaprijed su sve operacije koje se provode sa signalom e(kT). Što realizacija ima više operacija koje se provode s e(kT) to će vrijeme proračuna do trenutka kada se upravljački signal može predati D/A pretvaraču biti duže. Na primjer usporedimo direktnu 1D strukturu i paralelnu strukturu. Za naš primjer diskretnog sustava drugog reda prikazuje ih slika  6.1.10.

Slika 6.1.10. Usporedba direktne 1D i paralelne strukture

Lako je uočiti da se kod direktne 1D strukture ulazni signal e(kT) najprije zbraja na prvom sumatoru zatim se rezultat množi s konstantom i ponovo zbraja s vrijednostima koje su mogle biti izračunate i prije očitavanja e(kT) zato što se odnose na prošlost ulaznog signala. Dakle sve skupa tri operacije s ulaznim signalom e(kT). Kod paralelne realizacije imamo samo jedno sumiranje sa signalom e(kT), a sve ostalo se može izračunati prije.

Tablica na slici 6.1.11 prikazuje brojeve operacija za različite strukture realizacije uz pretpostavku jednakog broja polova i nula impulsne prijenosne funkcije.

STRUKTURA

Elemenata za
kašnjenje

Množenja

Zbrajanja

Točki račvanja

Direktna 1D

n

2n+1

2

n+1

Direktna 2D

n

2n+1

n+1

2

Direktna 3D

2n

2n+1

1

2n

Direktna 4D

2n

2n+1

2n

1

Serijska 1D

2m

5m

m+1

3m

Serijska 2D

2m

5m

3m

m+1

Serijska 3D

2m+2

5m

m

3m+1

Serijska 4D

2m+2

5m

3m+1

m

Paralelna 1D

2m

4m+1

m+1

2m+1

Paralelna 2D

2m

4m+1

2m+1

m+1

Paralelna 3D

2m+2

4m+1

m+1

2m+3

Paralelna 4D

2m+2

4m+1

2m+3

m+1

Slika 6.1.11. Broj operacija za različite strukture realizacije (n je broj polova i broj nula impulsne prijenosne funkcije, a m najmanji cijeli broj veći ili jednak n/2)

Četvrti je zahtjev - zahtjev za minimizacijom osjetljivosti na vrijednosti parametara. Njega smo već spomenuli kod direktne realizacije. Problem je u tome što se digitalni regulator primjenjuje na računalu koje ima ograničenu dužinu riječi. Ona s jedne strane utječe na preciznost prikaza koeficijenata impulsne prijenosne funkcije, a s druge strane i na točnost aritmetičkih operacija.

Pogledajmo najprije problem zaokruživanja (kvantizacije) koeficijenata. Računamo li diskretne regulatore u nekom od simulacijskih programa koeficijenti se iskazuju s točnošću od desetak decimala. Primjenom na procesorima ograničene duljine riječi koeficijente moramo zaokružiti. Kod 16 ili 24 bitnih procesora to i nije toliko problem. Kod 16 bitnih je točnost prikaza koeficijenta 4 decimale, a kod 24 bitnog čak 7 decimala, pa se problem može eventualno javiti na primjer kod 8 bitnih procesora. Međutim treba stalno imati na umu da smo regulator proračunali na temelju modela sustava koji se vodi, a greška modeliranja je sigurno veća od greške kvantizacije. Ipak spomenimo da su neke od struktura osjetljivije na varijacije koeficijenata. To su prvenstveno one kod kojih u slijedu imamo više operacija, na primjer svi oblici direktne realizacije. Serijska i paralelna realizacija su manje osjetljive na promjene vrijednosti koeficijenata.

Kod realizacije diskretnih regulatora pojavljuju se dvije operacije: zbrajanje i množenje. Zbrojimo li dva B-bitna broja dobiveni rezultat će imati (B+1) bit. Ukoliko je rezultat ograničen odozgo, najznačajniji bit je uvijek redundantan, pa se bez gubitka točnosti može ispustiti. Tako i rezultat ima B bitova. Ovo povlači zahtjev praćenja mogućeg preteka (eng. Overflow) i uvođenja strategije skaliranja koja je dosta značajna pa o njoj govorimo u poglavlju 6.2.1.

Pomnožimo li dva broja od B bita rezultat ima 2B-1 bit. Ograničavanje rezultata na B bitova ponovo otvara problem zaokruživanja i promatra se kao kvantizacijski šum (šum zaokruživanja). Trebamo spomenuti i to da je zaokruživanje u osnovi nelinearni proces, pa može doći i do pojave ograničenih oscilacija. I o tome ćemo govoriti u poglavlju 6.2.2.

Krenemo li u implementaciju realiziranog algoritma javiti će se brojni problemi implementacije koje smo već napomenuli. O njima govori sljedećih nekoliko poglavlja.