Elektrotehniški vestnik 73(4): 195-200, 2006 Electrotechnical Review, Ljubljana, Slovenija Nekatere težave pri identifikaciji vzorčenih sistemov in pretvorbi identificiranih modelov v zvezni prostor Sašo Blažič Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana, Slovenija E-pošta: saso. blazic@fe. uni-lj.si Povzetek. V članku smo nakazali probleme, na katere naletimo, če identificiramo diskretni model procesa, ki ga želimo pozneje pretvoriti v zvezni prostor. Posvetili smo se pojavoma, kiju pogosto zasledimo pri identificiranih modelih sistemov in povzročata težave pri načrtovanju vodenja teh sistemov. Gre za diskretne pole na negativni realni osi in diskretne ničle zunaj kroga enote v modelu procesa, ki ga dobimo pri identifikaciji. Predlagali smo tudi po dve rešitvi za vsakega od omenjenih problemov. Ena možnost je, da spremenimo algoritem sprotnega ocenjevanja parametrov, tako da vključimo projekcijo polov oz. ničel, druga pa, da model, pridobljen z metodo najmanjših kvadratov, popravimo. V obeh primerih preprečimo omenjena pojava in minimalno poslabšamo opisno moč pridobljenih modelov. Ključne besede: identifikacija, diskretizacija, fazno neminimalni sistemi, diskretni poli v levi polravnini Some issues at sampled-data identification and conversion of the identified models into the continuous-time domain Extended abstract. The paper deals with identification of continuous plants where the continuous model is not identified directly. Rather, it is obtained by converting the identified discrete-time model into the continuous-time domain. Two problems are exposed. Firstly, if the discrete-time model possesses poles on negative real axis, the conversion into the continuous-time domain is not possible. Secondly, due to many factors the identified model can be of non-minimum phase even though that does not hold for the plant itself. The virtual non-minimum phase property of the model unnecessarily limits the accessible performance of the closed-loop system. Two solutions to overcome each of the two problems are proposed. To ensure that the discrete-time model does not possess poles on the negative real axis, an algorithm that projects discrete poles to the right-hand-side half-plane is added to the on-line identification. The other possibility to circumvent the unwanted poles is to simply cancel them with zeros. This is done after identification and is justified since these poles are not the result of the actual modes in the plant. For the non-minimum phase zeros, the problem is solved by mirroring the zeros over the circular line into the unit circle. This transformation can be performed in each step of the on-line identification or just once after identification. One experiment was performed that tests the two proposed algorithms for avoidance of poles on negative real axis (the results are shown in Fig. 2 and Table 1). The other experiment tested the two proposed algorithms for avoidance of zeros outside the unit circle (the results are shown in Fig. 3 and Table 2). Key words: identification, discretisation, non-minimum phase system, left-hand-side discrete pole Prejet 9. maj, 2006 Odobren 19. september, 2006 1 Uvod Če želimo opisati obnašanje nekega sistema, potrebujemo formalen zapis tega sistema, ki mu rečemo model. Le-tega lahko pridobimo z opisom fizikalnih dogajanj v sistemu ali z analizo podatkov o sistemu (meritev). V drugem primeru govorimo o identifikaciji [4, 2]. Podatki, kijih imamo na voljo, so najpogosteje enakomerno vzorčeni signali sistemskega vhoda in izhoda. Naloga identifikacije v tem primeru je dobiti opis vhodno-izhodnega obnašanja, npr. v obliki prenosne funkcije. Cilj modeliranja v našem primeru je bil model procesa v zveznem prostoru, ker je veliko regulacijskih algoritmov razvitih v tem prostoru. Po drugi strani imamo na voljo vzorčene podatke in najbolj logična pot je, da poiščemo diskretni model sistema. Obstajata dve možnosti: poiskati diskretno prenosno funkcijo in jo pozneje pretvoriti v zvezno obliko ali pa direktno identificirati zvezno prenosno funkcijo iz »diskretnih po-datkov<. Obe možnosti se veliko uporabljata [4]. V našem primeru smo ubrali prvo pot. Nakazali bomo pasti tega pristopa in predlagali nekaj rešitev. V drugem poglavju so na kratko predstavljene metode diskretizacije zveznih sistemov, v tretjem pa smo se osredotočili na nasprotno pot, torej na pretvorbo diskretnih sistemov v zvezne. V četrtem poglavju smo prikazali težave pri pretvorbi identificiranih diskretnih sistemov v zvezni prostor in predlagali nekaj rešitev. V petem poglavju so podani sklepi. 2 Diskretizacija zveznih dinamičnih sistemov Pretvorba zveznih dinamičnih sistemov v diskretne oziroma diskretizacija je problematična, ker pri postopku izgubljamo informacijo. Iz sistemov, kjer poznamo vhode in izhode v vsakem časovnem trenutku, dobimo sisteme, kjer lahko opišemo obnašanje le v diskretnih časovnih trenutkih. Glede na to, da diskretni sistem nima informacije o tem, kaj se v sistemu dogaja med trenutki vzorčenja, obstaja precej postopkov za diskretizacijo, ki temeljijo na drugačnih predpostavkah o obnašanju sistema med trenutki vzorčenja. Najbolj uporabljane metode za diskretizacijo zveznih sistemov so naslednje [1,3]: • Metoda bilinearne transformacije, pri kateri iščemo diskretni sistem, ki ima podoben frekvenčni odziv kot zvezni sistem. • Metoda stopničaste invariance (angl. zero-order hold équivalence, ZOH équivalence), kjer iščemo tisti diskretni sistem, ki se obnaša enako kot zvezni sistem, kateremu med trenutkoma vzorčenja zadržimo vrednost vhodnega signala, izhod pa opazujemo le v trenutkih vzorčenja. • Metoda ekvivalence z zadrževalnikom prvega reda (angl. first-order hold équivalence, FOH équivalence) je podobna kot prejšnja metoda, le da uporabimo na vhodu zveznega sistema zadrževalnik prvega in ne ničtega reda. • Metoda ekvivalence polov in ničel. Pri tej metodi pretvorimo zvezne pole pi in ničle Zi v diskretne pole 7Ti in ničle ^ po naslednji enačbi: tt7- = ePiT ^ - = 1,2,...,n Ci = eZiT,i = 1,2,..., m, (D podobne rezultate dobimo pri uporabi metode ekvivalence polov in ničel. Če želimo realizirati digitalni filter, pa primerjamo frekvenčna odziva in določimo, da se frekvenčna odziva zveznega in diskretnega sistema natančno ujemata pri mejni frekvenci filtra. V takšnih primerih uporabimo bilinearno transformacijo. Predmet našega zanimanja so regulacijski sistemi, zato se bomo v nadaljevanju članka posvetili le metodi stopničaste invariance. 3 Preslikava iz diskretnega v zvezni prostor Metode diskretizacije so smiselne le, če je preslikava povratno enolična, torej obstaja tudi enolična preslikava iz diskretne oblike v zvezno. Če smo diskretni model procesa dobili s postopkom identifikacije in želimo regulator načrtati v zveznem prostoru, je treba sistem pretvoriti iz diskretne oblike v zvezno. Načeloma se da preslikavo izvesti, problem so le poli na negativni realni osi in v z = 0, ki nimajo zveznega ekvivalenta. Ker lahko vsako strogo pravo (angl. strictly proper) prenosno funkcijo z realnimi koeficienti izrazimo kot vsoto strogo pravih prenosnih funkcij prvega in drugega reda, pri čemer imajo tudi te realne koeficiente, se bomo v nadaljevanju posvetili pretvorbi diskretnih prenosnih funkcij prvega in drugega reda v zvezni prostor. 3.1 Sistemi prvega reda Diskretni sistem naj opisuje prenosna funkcija Gd(z) = 7i Z — Tï\ ki jo želimo pretvoriti v zvezni prostor, kjer definiramo ci (2) Gz(s) = s-pi (3) kjer je T čas vzorčenja, n število polov zveznega sistema, m pa število ničel zveznega sistema. Seveda se uporablja enačba (1) le za pretvorbo končnih ničel, zvezne ničle, ki se nahajajo v neskončnosti, premaknemo (vse razen ene) v točko z = —1 [1]. Če bi pretvorili neskončne zvezne ničle v neskončne diskretne ničle, bi umetno ustvarili časovno zakasnitev, kar je seveda nesmiselno. Ena diskretna ničla ostane v neskončnosti, sicer bi imel diskretni sistem neposredno povezavo z vhoda na izhod. Seveda obstajajo še številne druge možnosti za diskretizacijo, a omenjene so tiste, ki se pogosteje uporabljajo. Izbor metode je zelo odvisen od namena diskretizacije. Če diskretiziramo zvezni proces, ki ga želimo regulirati z diskretnim regulatorjem, je ponavadi idealna izbira metoda stopničaste invariance, saj je zadrževalno vezje na vhodu procesa zelo dober model dejanskega digitalno-analognega (D/A) pretvornika. Zelo Parametra p\ in c\ zvezne prenosne funkcije dobimo po kratkem izračunu, če upoštevamo metodo stopničaste invariance: pi = ^lnTTi, a = - 7iPi 1 — 7Ti (4) Iz enačbe (4) vidimo, daje pretvorba smiselna, če 7Ti >0, torej če leži diskretni pol v desni polravnini. Naj omenimo, da enake enačbe za pretvorbo dobimo tudi, če uporabljamo metodo ekvivalence polov in ničel. 3.2 Sistemi drugega reda Diskretni sistem naj opisuje prenosna funkcija 01Z + /3 2 Gd(z) = Z2 + OL\Z + Oi2 Pl(z-tl) _ ^ _ (z - 7Ti)(z - 7T2) Z-7TI Z~ 7T2 ' 7i 72 ki jo želimo pretvoriti v zvezni prostor, kjer definiramo sz + a\s + d2 _ bi(s - zi) _ a c2 (s-pi)(s-p2) S-pi S-P2 Z razširitvijo enačbe (4) dobimo: Pi = ^hnri, Ci = - llPl , z = 1,2. (7) 1 1 - 7Ti Tudi ta pretvorba je mogoča, če ležita diskretna pola v desni polravnini oz. bolje rečeno na realni osi desne polravnine. Tudi če pola ne ležita na realni osi, lahko uporabimo enačbo (7). Če diskretni pol zapišemo v polarnih koordinatah 71^ = pie^i (i = 1, 2), potem lahko izračunamo naravni logaritem po naslednji enačbi: ln^e-7^) = Inpi + jipi, -7r<(pi<7r (8) in pola p\ in p2 v enačbi (7) se izračunata po naslednji enačbi: Pi = + jcpi), z = 1,2. (9) Z enačbami (7), (8) in (9) lahko pretvorimo v zvezno obliko poljuben diskretni sistem drugega reda, saj lahko kot (fi v enačbi (8) zavzame poljubno vrednost. Vendar pa zadeva ni tako preprosta. Če bi imel neki diskretni pol fazni kot 7r (oz. 180°), bi z upoštevanjem enačbe (9) dobili zvezni pol, katerega imaginarni del bi bil 7r/T. Torej bi šlo za kompleksni pol z neničelnim imaginarnim delom, ki pa ne bi imel konjugirano kompleksnega para. Dobljena prenosna funkcija ne bi imela realnih koeficientov, zato diskretnega pola na negativni realni osi ne moremo pretvarjati na omenjeni način. Nekateri programski paketi, kot je Matlab, problem rešujejo tako, da enemu diskretnemu polu na negativni realni osi priredijo dva konjugirano kompleksna zvezna pola, s čimer pa se red sistema poveča za 1, kar pri identifikaciji zveznih sistemov ni zelo dobra rešitev, saj rešuje posledico problema (lego diskretnega pola na negativni realni osi) in ne njegovega vzroka (napako pri oceni omenjenega pola). Zanimivo je, da z uporabo metode ekvivalence polov in ničel dobimo enaka pola sistema, ničla pa ni enaka. Se več, v številnih realnih primerih, ko naletimo na negativno realno ničlo diskretnega sistema, pretvorba v zvezni prostor z uporabo metode ekvivalence polov in ničel sploh ni mogoča. 4 Težave pri pretvorbi identificiranih diskretnih sistemov v zvezni prostor V tem poglavju se bomo dotaknili nekaterih težav, na katere naletimo pri pretvorbi identificiranih diskretnih sistemov v zvezni prostor. Nakazali bomo tudi nekatere rešitve, ki jih lahko uporabimo, da omilimo omenjene težave. Omejili se bomo na sisteme drugega reda. Težave, na katere naletimo pri omenjenih sistemih, so podobne kot pri sistemih višjega reda, tako da ta omejitev ni zelo kritična. Obravnavali bomo diskretne sisteme s polom na negativni realni osi in fazno neminimalne sisteme. 4.1 Diskretni sistemi s poli na negativni realni osi O problematiki polov na negativni realni osi smo govorili že v 3. poglavju. Žal se pri identifikaciji dokaj pogosto dogaja, da ima identificirani model pole na negativni realni osi [5]. To se dogaja pogosteje takrat, ko je model procesa preparametriziran. Takrat ima namreč model procesa višji red kot realni proces. Tisti poli, ki ne ustrezajo dejanskim načinom v procesu, bi teoretično morali biti v koordinatnem izhodišču ravnine z. Zaradi motenj, šumov ipd. se lahko zgodi, da se diskretni pol identificiranega sistema pojavi na negativni realni osi. V tem razdelku se bomo ukvarjali z dvema vprašanjema: • Ali se je mogoče fenomenu diskretnih polov na negativni realni osi pri identifikaciji izogniti? • Ali je mogoče identificirani sistem z diskretnim polom na negativni realni osi vseeno preoblikovati, pri čemer takšen pol odstranimo, hkrati pa ob tej transformaciji ne izgubimo veliko informacije? 4.1.1 Algoritem s projekcijo polov v desno polravnino kompleksne ravnine z Poli na negativni realni osi nimajo zveznega ekvivalenta, problematični pa so tudi drugi poli, ki ležijo v levi polravnini. Pri njih je fazni kot med 90° in 180°. To ustreza imaginarnemu delu zveznega pola med četrtino in polovico frekvence vzorčenja, kar je občutno preveč za normalno vzorčene sisteme. Takšnih polov v sistemih s primerno izbranim časom vzorčenja ne sme biti. Če že nastopijo, to pomeni, daje frekvenca vzorčenja prenizka. Kadar je sistem dobro načrtan, naj bi poli diskretnih sistemov ležali v desni polravnini. Če se omejimo na sisteme drugega reda, kot jih opisuje enačba (5), lahko hitro ugotovimo, daje potreben in zadosten pogoj, da ležita oba pola v desni polravnini, izpolnjenost pogojev: ai <0, > 0. (10) Če izvajamo identifikacijo rekurzivno in v vsakem diskretnem trenutku popravljamo vrednost parametrov, je mogoče postopek spremeniti tako, da uvedemo projekcijo parametrov v skladu s pogojema (10). Torej po korekciji parametrov v k-tem trenutku izvedemo naslednji algoritem: if alfal > 0 alfal := 0 endif if alfa2 < 0 alfa2 := 0 endif Težava zgornjega algoritma je, da v diskretni verziji ne dela zelo dobro, ker se parametri spreminjajo skokovito in ne vključimo projekcije v tistem trenutku, ko pride do kršitve pogojev (10), ampak šele nekoliko pozneje. Do takrat pa se spremenijo tudi drugi parametri in s popravkom le enega parametra vplivamo na ojačenje, časovne konstante (zelo pomembno je, da minimalna sprememba dominantnega pola zelo spremeni časovno konstanto sistema, če pol leži blizu z = 1) in druge lastnosti identificiranega modela. Da bi se izognili temu problemu, smo uvedli projekcijo polov in ne identificiranih parametrov. V ta namen uporabimo drugi algoritem: if (alfal > 0) or (alfa2 < 0) oj := (betal+beta2) / (1+alfal+alfa2) delta := alfal~2 - 4*alfa2 if (delta < 0) alfal := 0 else dom_pol := (-alfal + sqrt(delta)) / 2 alfal := -dom_pol alfa2 := 0 endif oj 2 := (betal+beta2) / betal := betal / oj2 * beta2 := beta2 / oj2 * endif (l+alfal+alfa2) oj oj alfa2 := 0 betal := (1+alfal) * oj beta2 := 0 else // oba pola v levi polravnini! endif endif Tudi ta algoritem se izvede takrat, ko ima identificirani sistem vsaj en pol na negativni realni osi. Če ležita pola na realni osi, je diskriminanta sistema delta pozitivna. Takrat se najprej izračuna ocenjeno ojačenje sistema o j, potem lega dominantnega pola dom_pol, na koncu se postavijo vsi štirje parametri diskretne prenosne funkcije. Prenosna funkcija sistema iz enačbe (5) je torej: Gd(z) = Piz + 0 z2 + a\z + 0 a\ (H) Algoritem se sproži, ko je kršen katerikoli od pogojev v (10). Najprej se izračuna ocenjeno ojačenje sistema, ki se shrani v spremenljivko o j, nato se izvede test, ali gre za realne pole ali konjugirano kompleksne. V drugem primeru se parameter a\ postavi na 0, s čimer se pola sistema postavita na imaginarno os. Če pa gre za realna pola, se vrednost dominantnega pola shrani v dom_pol, drugi pol pa postavimo v koordinatno izhodišče. Spremenljivka oj2 hrani vrednost ojačenja identificiranega sistema po projekciji polov, nato pa se popravita še parametra števca prenosne funkcije, s čimer vzpostavimo originalno ojačenje. 4.1.2 Algoritem s krajšanjem pola v levi polravnini kompleksne ravnine z Alternativa prejšnjemu algoritmu je možnost, da ocenjevanje parametrov izvedemo s klasično metodo najmanjših kvadratov. Če se zgodi, da po postopku identifikacije en od polov leži v levi polravnini kompleksne ravnine z, ga pokrajšamo z ničlo, pri čemer ohranimo ojačenje. Možnost, da bi bila oba pola v levi polravnini, ni smiselna in bi lahko nastopila le pri izrazito prevelikih šumih in je tako rekoč nemogoča. Če bi se to le zgodilo, je takšen identificirani model neuporaben. Za krajšanje pola in ničle uporabimo naslednji algoritem, ki se izvede po postopku identifikacije z metodo najmanjših kvadratov: if (alfal > 0) or (alfa2 < 0) delta := alfal~2 - 4*alfa2 if (delta > 0) oj := (betal+beta2) / (1+alfal+alfa2) dom_pol := (-alfal + sqrt(delta)) / 2 alfal := -dom_pol V algoritmu je treba postaviti parameter alfal na negativno vrednost dominantnega pola, parameter betal pa na takšno vrednost, da sta ojačenji obeh sistemov enaki. 4.1.3 Simulacijski eksperiment Izvedli smo simulacijski eksperiment na modelu G (s) = 1/(5 + 1), ki mu je na izhodu dodan beli šum standardne deviacije 0,05, čas vzorčenja pa je bil 0,2 sekunde. Signal za identifikacijo je prikazan na sliki 1. Identificirali smo sistem 2. reda, čeprav je dejanski sistem prvega reda s polom v z = 0,8187 in ojačenjem 1. Uporabili smo metodo najmanjših kvadratov [3]: enk = (12) ter obe modifikaciji, opisani v tem razdelku (ocenjeni parametri so 6P pri projekciji parametrov in 6k pri krajšanju polov in ničel). Matrika ^ je matrika regresor-jev, vektor y pa vektor izhodov [3]. Tabela 1 prikazuje primerjavo različnih načinov identifikacije in dobljenih rezultatov. Kriterijske funkcije so vsota kvadratov razlike med dvema signaloma, in sicer Jver,ik med merjenim signalom in signalom enokoračne predikcije: Jver,lk = ~ (13) k=kz Pri tem je y(k) enokoračna predikcija izhoda procesa v vseh treh primerih 0P in 0^): y(k)=il>(k)0, k = kz,kz + l,...kkl (14) k z in k k pa sta indeksa prvega in zadnjega vzorca v signalu y(k), seveda pa moramo na intervalu kz < k < kk poznati tudi vrednost ij)(k). Če vseh vrednosti ne poznamo, potem vrednosti kz in kk ustrezno popravimo. J vernim dobimo, če simuliramo dejanski model procesa (brez šuma) in vse tri identificirane modele z enakim vhodnim signalom, kot je bil uporabljen pri identifikaciji (to lahko storimo, ker vse štiri modele v simulacij skem preizkusu poznamo): kk Jver,sim = ^ (ž/o(&) ~ Vo(k))' (15) k=kz Pri tem je yo(k) izhod simuliranega modela procesa brez šuma, yo(k) pa so trije izhodi simuliranih identificiranih modelov (za modele s parametri 0nk, 0P in 0^). Jvai,sim je kriterijska funkcija, ki govori o kakovosti modela pri vrednotenju z drugim preizkusnim signalom. V našem primeru smo uporabili stopnico, Jvai,sim Pa se izračuna na identičen način kot Jver,sim v enačbi (15). Ker odzivi vseh sistemov tako rekoč sovpadajo, niso grafično prikazani. 1 —i a 0.5 0 - Tabela 1. Primerjava rezultatov identifikacije po metodi najmanjših kvadratov (2. stolpec), z vključenim algoritmom projekcije pola (3. stolpec) in s krajšanjem pola in ničle po identifikaciji (4. stolpec) Table 1. The comparison of identification results - least squares (2nd column), the projection of the pole (3rd column), pole-zero cancellation (4th column) najmanjši kvadrati projekcija krajšanje dom. pol 0,8084 0,8061 0,8084 drugi pol -0,4556 0,0001 - ničla -0,5976 -0,4437 - ojačenje 0,9919 0,9962 0,9919 Jver,lk 0,9765 1,3529 1,2466 Jver,sim 0,7923 0,8970 0,8114 Jval,sim 0,0028 0,0041 0,0038 Slika 1. Signal za identifikacijo (poskus 1) Figure 1. Identification signal (experiment 1) Vse tri kriterijske funkcije kažejo, da je najboljši model dobljen z metodo najmanjših kvadratov, sledi model s krajšanjem pola in ničle, najslabši pa je model s projekcijo pola v desno polravnino. Opazimo tudi, da sta obe modifikaciji metode najmanjših kvadratov rešili problem pola na negativni realni osi, ki ga klasična metoda najmanjših kvadratov ne prepreči. Tudi dejstvo, da je metoda s krajšanjem pola in ničle dala tako dobre rezultate, ni presenetljivo. Dejanski proces je namreč prvega reda, torej ima enako strukturo kot model procesa po krajšanju pola in ničle. 4.2 Fazno neminimalni sistemi Fazno neminimalni sistemi so sistemi, kjer faza faznega odziva s frekvenco pada hitreje kot pri kakšnem drugem sistemu, ki ima enak potek amplitudnega frekvenčnega odziva. Ta pojav zasledimo pri sistemih, ki imajo zvezne ničle v desni polravnini (oz. diskretne ničle zunaj kroga enote), sistemih z zakasnitvijo ipd. Takšni sistemi so z regulacijskega stališča precejšnja težava, tako da se moramo prepričati, ali gre res za fazno neminimalne sisteme ali pa je to le posledica slabe identifikacije. Izkušnje namreč kažejo, da se zelo pogosto zgodi, da identifikacija fazno minimalnega sistema oceni sistem kot fazno ne-minimalen. Razlogov za to je več. S povečevanjem frekvence vzorčenja gredo ničle diskretnega sistema proti z = 1 ali z = —1. Zaradi motenj te ničle zelo pogosto ocenimo zunaj kroga enote. Visokofrekvenčne motnje tudi sicer zelo pogosto povzročijo postavitev ene od ničel daleč iz kroga enote, saj ta ničla poskuša modelirati visokofrekvenčno vsebino signala. Identificirani sistem lahko postane fazno neminimalen tudi zaradi zakasnitev v sistemih. Izkaže se, da omenjene ničle, do katerih pride »po nesreči<, zlahka pretvorimo v fazno minimalne, sistema pa ne spremenimo bistveno. Pravzaprav ohranimo am-plitudni odziv in spremenimo le fazni odziv. To storimo tako, da ničlo Q nadomestimo z 1 in ohranimo ojačenje. V modelu sistema (5) to pomeni, da zamenjamo koeficienta števca prenosne funkcije /3\ in /?2. To storimo z preprostim algoritmom: if abs(betal) < abs(beta2) temp := betal; betal := beta2; beta2 := temp; endif Ta algoritem lahko izvajamo pri sprotni identifikaciji parametrov modela v vsakem trenutku vzorčenja ali pa ga izvedemo le ob koncu identifikacije. V prvem primeru govorimo o projekciji ničle v krog enote, v drugem pa gre za popravek parametrov po končanem postopku identifikacije. Izvedli smo simulacij ski poskus na modelu G (s) = l/(s2 + s + 1), ki mu je na izhodu dodan beli šum standardne deviacije 0,004, čas vzorčenja pa je bil 0,2 sekunde. Signal za identifikacijo je prikazan na sliki 2. Tabela 2 prikazuje primerjavo različnih načinov identifikacije in dobljenih rezultatov. Dejanska pola ležita v točkah 0,8913 db 0,1559j, ničla pa v točki —0,9354, ojačenje je 1. Tudi pri tem poskusu smo definirali identične kriterijske funkcije kot pri prejšnjem. Izračunamo jih s pomočjo enačb (13), (14) in (15). Rezultat vrednotenja dobljenih modelov s stopničastim vhodnim signalom je prikazan na sliki 3, kjer je odziv dejanskega sistema prikazan z iz vlečeno krivuljo, odzivi vseh treh identificiranih modelov pa tako rekoč sovpadajo in so prikazani s črtkano krivuljo. Pri identifikaciji procesa z metodo najmanjših kvadratov dobimo fazno neminimalni sistem, čemur se obe predlagani modifikaciji izogneta. Če upoštevamo samo vrednost kriterijske funkcije pri verifikaciji, je najboljši tisti model, ki je dobljen z metodo najmanjših kvadratov, sledita metoda s projekcijo ničle in metoda s popravkom po končanem postopku. Pomembnejša pa je vrednost kriterijske funkcije pri validaciji. V tem primeru je najboljši model s projekcijo ničle, sledi metoda s popravkom po končani identifikaciji, metoda najmanjših kvadratov pa da najslabše rezultate. 1 -i nn ^ 0.5 Slika 2. Signal za identifikacijo (poskus 2) Figure 2. Identification signal (experiment 2) Slika 3. Validacija (poskus 2) Figure 3. Validation (experiment 2) 5 Sklep Nakazali smo nekaj problemov, na katere naletimo, če identificiramo diskretni model procesa, ki ga želimo pozneje pretvoriti v zvezni prostor. Največji probleme so diskretni poli na negativni realni osi. Ker so po svojem pomenu problematični vsi poli v levi polravnini, smo Tabela 2. Primerjava rezultatov identifikacije po metodi najmanjših kvadratov (2. stolpec), z vključenim algoritmom projekcije ničle (3. stolpec) in z naknadnim popravkom dobljenega modela (4. stolpec) Table 2. The comparison of identification results - least squares (2nd column), the projection of the zero (3rd column), off-line mirroring of the zero into unit circle (4th column) najmanjši kvadrati projekcija popravek na koncu pola 0,8790 ± 0,1525j 0.8791 ± 0,1526j 0,8790 ± 0,1525j ničla -1,0461 -1,0000 -0,9559 ojačenje 1,0059 1,0057 1,0059 Jver,lk 0,1393 0,1393 0,1393 Jver,sim 0,7901 0,7929 0,8216 Jval,sim 0,0147 0,0143 0,0146 predlagali algoritem projekcije, ki med sprotno identifikacijo preprečuje, da bi pol prešel v levo polravnino. Druga možnost je, da po končani identifikaciji morebitni pol v levi polravnini pokrajšamo z ničlo (tudi če ne ležita blizu), saj pol v levi polravnini pomeni, da smo v resnici identificirali šum in ne pravega signala. Obe metodi preprečita pojavljanje polov na negativni realni osi v identificiranem modelu procesa. Pri našem simulacij skem poskusu smo dobili boljše rezultate z metodo krajšanja pola in ničle. Pozneje smo se posvetili fazno neminimal-nim ničlam. Tudi te so pogosto le posledica raznih težav in ne dejanskega stanja sistema. Predlagali smo tudi algoritem, ki preprečuje te ničle med sprotno identifikacijo. Uporabimo ga lahko tudi po končani identifikaciji. Obe predlagani rešitvi preprečita fazno neminimalnost identificiranega sistema, rezultati vrednotenja pa so bili pri izvedenem poskusu boljši kot pri uporabi metode najmanjših kvadratov. Od obeh modifikacij se je za boljšo izkazala tista s projekcijo ničle v krog enote. 6 Literatura [1] G. F. Franklin, J. D. Powell, M. L. Workman, Digital Control of Dynamic Systems, Second Edition, Reading, Addison-Wesley Publishing Company, 1990. [2] J. Kocijan, D. Matko, Primer identifikacije modela sistema v delovni točki, Elektrotehniški Vestnik, Vol. 63, No. 3, 1996, pp. 159-165. [3] D. Matko, Diskretni regulacijski sistemi, Ljubljana, ZAFER, 1991. [4] D. Matko, Identifikacije, Ljubljana, ZAFER, 1992. [5] M. Pachter, O. R. Reynolds, Identification of a Discrete-Time Dynamical System, IEEE Transactions on Aerospace and Electronic Systems, Vol. 36, No. 2000. Sašo Blažič je docent na Fakulteti za elektrotehniko Univerze v Ljubljani. Diplomiral je leta 1996, magistriral leta 1999 in doktoriral leta 2002, vse na isti fakulteti. Ukvarja se predvsem z adaptivnim vodenjem.