Elektrotehniški vestnik 76(4): 205-210, 2009 Electrotechnical Review: Ljubljana, Slovenija Samonastavljivi algoritmi za prediktivnofunkcijski regulator Dejan Dovžan1, Igor Škrjanc2 1 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, Ljubljana 2 Univerza v Ljubljani, Fakulteta za elektrotehniko, Tržaška 25, Ljubljana E-pošta: dejan. dovzan @fe. uni-lj.si Povzetek. Prediktivnofunkcijski regulator spada v področje prediktivnega vodenja s pomočjo modela (MPC-model based predictive control). Do zdaj je bilo treba parametre regulatorja nastavljati ročno, kar je lahko dokaj zamuden postopek, če ne poznamo modela procesa. Sam model se ponavadi dobi s pomočjo odziva na stopnico, iz katerega se določijo parametri modela prvega reda z zakasnitvijo. Ta postopek pa je pri počasnih procesih dokaj zmuden. V članku podajamo pregled preprostih metod samonastavljanja, ki temeljijo na odzivu na stopnico. Metode so preproste za implementacijo in, kot se izkaže, jih brez večjih problemov prilagodimo za nastavljanje parametrov PFC (prediktivnofunkcijski regulator). Metode smo testirali na podlagi simulacijskih primerov, ki so bili moteni z izhodnim Gaussovim šumom variance 0.01 in 0.001, preizkušene pa so bile tudi na realnih napravah, in sicer na laboratorijski klimi in enosmernem motorju. Ključne besede: samonastavljanje, identifikacija, tangentna metoda, metoda ploščin, PFC. Self-tuning algorithms for predictive functional controller Extended abstract. In this paper we explore possibilities to use simple step response-based identification methods for self tuning of the predictive functional controller (PFC). The methods tested are: tangent method (Fig. 2), area method (Fig. 3) and improved area method. Two versions of the improved area method were tested, one using the normal least squares (Eq. 17) and the other least squares with the instrumentation matrix (Eqs. 18 and 19). The methods were automated and adapted for gaining the PFC parameters. The PFC algorithm is described by Eq. 1 and block scheme in Fig. 1. To tune the PFC, we need five parameters. The first three are from the first order model with delay (gain, time constant and delay) that approximates the real process and the other two are Tr (desired time constant) and H (the time horizon where the model and the process response coincide) that come from the derivation of the algorithm. Parameters of the model are attained from the identification methods. Parameters Tr and H are then tuned in accordance with the gained model parameters from Eq. 24 for better controllable processes and from Eq. 25 for poorly controllable processes. Because of the space limitation the results are given only for two simulated processes (see Eqs. 20 and 21) and for two real processes for the DC motor and laboratory air conditioner. The methods were evaluated by comparing their estimates to the real processes using criterion functions given by Eqs. 22 and 23. The Tabs. 1 and 2 shoe values of the criterion functions. In the first table, there are results from experiment where the Gaussian noise of variance 0.01 was added to the output of the process. In the second table, the noise variance was 0.001. Results of the experiment on the real processes are given in Tab. 3. Our conclusion is that simple identification methods, such as the tested ones, can give us enough accurate parameters for the tuning of the PFC. Keywords: Self-tuning, tangent method, area method, PFC. 1 Uvod Samonastavljajne regulatorjev ima pestro zgodovino. Začelo se je s samonastavljenjem PID regulatorjev. Med prvimi, ki so raziskovali to področje, so bili Ziegler in Nichols (1942) [6][7], Chein, Hornes in Reswick (1952) [8]. Nekateri poskušajo nastaviti parametre na podlagi notranjega modela (IMC-internal model control) (Chien in Fruehauf 1990 [12], Morari in Zafiriou [13]), spet drugi skušajo nastaviti regulator na podlagi določenega faznega razločka (Ogata 1990 [9], Franklin et al. 1986 [10], Ho et al. 1995 [11]). T. Yamamoto et al. predlagajo nastavitve regulatorja PID na podlagi enačenja z GPC-posplošenim prediktivnim regulatorjem. Obstaja pa še veliko drugih različnih člankov in knjig, ki se ukvarjajo z nastavljanjem parametrov regulatorja PID [14], [15], [16], [17]. Nastavljanje parametrov pri prediktivnem vodenju na podlagi modela (MPC-model based predictive control) pri večini pristopov poteka po metodi poskušanja. Cammacho in Bordones za GPC omenjata nastavljanje na podlagi Ziegler-Nicholsonovega preizkusa [3], W. Liu in G. Wang pa za to isto strategijo izpeljeta samonastavljiv algoritem [18]. Al-Ghazzawi predstavlja on-line samonastavljanje MPC regulatorjev z linearnim modelom (LMPC), ki temeljijo na modelu FIR. Tomas Schon pa se v svojem magisterskem delu pod vodstvom Ljunga [20] ukvarja z metodami identifikacije modelov za prediktivno vodenje. Metode, predstavljene v omenjenih delih, so bolj ali manj kompleksne. Zato smo se odločili za testiranje preproste metode identifikacije modela prvega reda z zakasnitvijo, ki ga uporabljamo pri PFC-strategiji vodenja. Dobljene rezultate primerjamo med seboj in poskušamo določiti priporočila za nastavljanje regulatorja. V prvem poglavju je predstavljen PFC-regulacijski algoritem, nato so predstavljene testirane metode identifikacije, sledijo rezultati testa in komentar ter sklep. 2 Uvod v PFC Osnove prediktivnofunkcijskega regulatorja je postavil leta 1978 Richalet [19]. Prediktivnofunkcijski regulator z notranjim modelom prvega reda sprejme pet parametrov. Od tega so trije parametri modela (časovna konstanta Tm, ojačanje Km in zakasnitev DJ, preostala (Hin Tr) pa sta parametra regulatorja, ki sledita iz analitične izpeljave. Parameter H podaja trenutek, v katerem želimo, da se zaprtozančni odziv sistema čim bolj prilega referenčnemu odzivu prvega reda z ojačenjem ena in časovno konstanto Tr (drugi parameter regulatorja). Bločna shema regulatorja je prikazana na sliki 1, regulacijski zakon pa podaja enačba (1): Slika 1: Blocna shema PFC Figure 1: Block scheme of PFC. u(k = - y(k)- yjfi+ymM+K yndk, (1) kj (1-a/) er je g = ——r—H~ Km (1-am ) K = m m 1-a in a = e časovno konstanto in zakasnitev modela (slika 2). Tangento določamo s pomočjo metode najmanjših kvadratov, kjer za število vzorcev vzamemo 0,5Tmocena/Ts. Tsje čas vzorčenja, ki je približno desetino časovne konstante procesa, Tmocena pa je ocenjena časovna konstanta. Časovno konstanto ocenimo kot čas od trenutka, ko se izhod procesa dvigne čez mejo šuma, in do trenutka, ko preide v bližino ustaljenega stanja. Tangenta s(co)=Km 3 Metode identifikacije V nadeljevanju bomo opisali tri uporabljene metode, ki smo jih avtomatizirali. Ustaljeno stanje odziva na stopnico iščemo s pomočjo variance in naklona premice. Dosežemo ga takrat, ko je trenutna varianca šuma približno enaka ocenjeni varianci šuma pred nastopom stopnice, hkrati pa je naklon trenutne tangente na odziv sistema približno enak nič. 3.1 Tangentna metoda Tangentna metoda je ena najbolj intuitivnih metod. S pomočjo ustaljenega stanja določimo ojačenje modela s pomočjo tangente na krivuljo, ki ima največji naklon, pa meja šuma Slika 2: Tangentna metoda Figure 2: Tangent method. 3.2 Metoda ploščin Metoda temelji na računanju ploščine A0 (slika 3) in ploščine pod odzivom sistem A;. Za izpeljavo je predpostavljen odziv sistema prvega reda. S pomočjo ploščine A0 in ojačenja sistema Km), ki ga zopet določimo iz ustaljenega stanja, določimo čas vzpona signala Tar: ¿0 = j ( S (¥ ) - S (t)) dt = j (Km - S (t)) dt T = — Tar k ' (2) (3) Časovno konstanto določimo z integracijo izhoda sistema od nič do časa vzpona, kar nam da ploščino A;. D J ar A1 = j 0 ■ dt + j Km (1 - e- e - (f - D ^ Tm )dt 0 D Al = Km (Tm + Tm (e-1 - 1)) = KmTme" eAj T = ■ ± m K „ Zakasnitev pa določimo prek zveze: D = T - T ^ iar ±m• (4) (5) (6) (7) Podrobnejšo izpeljavo najdemo v knjigi Astroma in Hagglunda [1]. 3.3 Izboljšana metoda ploščin Izboljšana metoda ploščin je izpeljanka metode ploščin. Na tem mestu bo podana poenostavljena izpeljava. Podrobnejšo razlago in izpeljavo te metode lahko najdemo v [2]. 0 0 T am = e L A(t) = J y(t) dt = , t>D Odziv procesa na stopnico amplitude Wje enak: y(t) = WKm (1 - e"(t-D)'Tm) za t>D. Enačbo (8) zapišemo kot: A(t) = WKm [t- D - TmWt] kjer smo upoštevali relacijo iz enačbe (9): o- (t-D)/ Tm = 1 - _y(tL WKm (8) (9) (10) (11) in y(D)=0. Enačbo (10) zapišemo v matrični obliki: ( Km [Wt - W - y(r)l DKm L Tm = A(t) za t>D. Y0 = T , kjer so matrike q= [Km DKm Tm ]T , WmTs - W - y(mTs) Y = r = W (m + n) - W - y((m + n)Ts) A(mTs) (13) (14) (15) (16) A((m + n)Ts) Ts je čas vzorčenja in mTs>D. Oceno matrike 0 lahko dobimo po metodi najmanjših kvadratov: O = (Y TY)-1Y tG . (17) V okolju, kjer je veliko šuma, se uporablja tudi enačba: O = (ZTY)-1ZTG , (18) kjer je Z instrumentacijska matrika. S pomočjo matrike Z minimiziramo vpliv šuma. Primer takšne matrike je: Slika 3: Metoda ploščin Figure 3: Area method. Za vsak trenutek k izračunamo ploščino pod izhodom procesa. Z = mTc -1 (m + n)Ts -1 1 mT, 1 (m+n) Ts (19) 4 Rezultati Metode smo testirali na več simulacijskih procesih. Zaradi omejitve prostora bomo podali rezultate za proces: r l0 -0.8s G„1 -- e Gp2 = 5s +1 - (13.81s +1)2 (1.84s +1) (20) (21) (59 s +1)5 ter za realno klimatsko napravo in motor. Motorju smo dodali zakasnitev treh vzorcev in ga vzorčili s časom vzorčenja 0,1 s. Klimatski napravi smo dodali zakasnitev štirih vzorcev, vzorčili pa s časom vzorčenja 1 s. Realnim procesom smo dodali zakasnitve za testiranje učinkovitosti metod. Točnost modelov smo ocenjevali s pomočjo cenilke Cen in maksimalnega odstopanja E, ki smo jih računali po naslednjih enačbah: Cen=~n X(yp(i) - ym(i)) 2 i=1 (12) E = max(abs((yp (k) - ym (k)) / yp (<»))); (22) (23) Če to enačbo zapišemo za vsak vzorec izhodnega signala y(z), kjer je t>D, dobimo sistem linearnih enačb: ym je izhod modela pri odzivu na stopnico, yp pa izhod procesa pri odzivu na stopnico. Za izboljšano metodo ploščin z instrumentacijsko matriko bomo uporabljali simbol IMP_Z, za navadno izboljšano metodo ploščin pa IMP_X. V spodnjih tabelah (tab. 1, 2 in 3) so podani rezultati simulacijskih primerov za identifikacijo, narejeno pri Gaussovem šumu z varianco 0,01 in 0,001. Stopnica pa je bila izbrana tako, da je bilo ustaljeno stanje sistema vedno ena. Identificirani modeli se z realnimi skladajo predvsem pri nizkih frekvencah, medtem ko je pri visokih odstopanje bolj očitno, kar se vidi tudi na polarnih diagramih simuliranih procesov (sliki 4 in 5). Po pričakovanjih se z realnim procesom bolje ujemajo modeli, ki so bili identificirani pri manjšem šumu. Problem tangentne metode in izboljšane metode ploščin je, da je treba najprej oceniti časovno konstanto u (tangentna metoda) oziroma točko m (izboljšana metoda ploščin), kar je pri močno pošumljenih procesih (z razmerjem med signalom in šumom pod 100) težko določiti z zadovoljivo natančnostjo. VARIANCA ŠUMA 0.01 tangentna metoda metoda ploščin IMP_Z IMP_X Gp1 Cen 9.2e-2 4.1e-3 2.2e-2 3.9e-1 E [%] 11.1 3.8 13.8 38.1 Gp2 Cen 5.8e-3 9.5e-4 7.3e-4 8.0e-3 E [%] 41.6 11.0 13.3 41.6 tangentna metoda metoda ploščin IMP_Z IMP_X Gp1 Cen 1.8e-2 6.6e-3 1.6e-3 1.6e-3 E [%] 4.4 1.3 2.0 2.0 Gp2 Cen 4.1e-3 2.3e-3 1.9e-3 2.5e-3 E [%] 15.6 18.1 16.0 18.2 tangentna metoda metoda ploščin IMP_Z IMP_X MOTOR Cen 5.2e-3 1.8e-3 5.7e-4 6.6e-4 E [%] 5.0 2.8 1.3 1.4 KLIMA Cen 4.2e-4 1.1e-4 1.1e-4 1.0e-4 E [%] 15.5 15.4 14.7 12.6 Na slikah 6 in 7 je prikazano vodenje motorja, na slikah 8 in 9 pa klima naprave. Vodenje je tem boljše, čim boljši je model procesa. Za samo vodenje smo parametra regulatorja Tr in H nastavljali vezano na dobljeni model. Za dobro vodljive procese v obliki: H=round(3/2T/T) Tr=TJ10 In za slabo vodljive procese v obliki: H=round(4- T/Ts) T==Tm/5. (24) (25) Tabela 1: Vrednosti cenilk pri poskusu, opravljenem z varianco šuma 0,01 Table 1: Cost-functions values for the experiment done with the noise variance 0.01 VARIANCA ŠUMA 0.001 Odločitev za slednje vrednosti je temeljila na podlagi več simuliranih primerov in testiranja na realnih napravah, kjer se je izkazalo, da s takimi nastavitvami dobimo dober odziv sistema. Če predpostavljamo, da je notranji model regulatorja popolnoma enak procesu, lahko zapišemo zaprtozančno prenosno funkcijo sistema kot: Hr (s) =- 1 -sD s +1 . (26) Če v izraz vstavimo nastavitve za naše parametre in upoštevamo izbiro časa vzorčenja približno desetino časovne konstante procesa, ugotovimo, da pri dobro vodljivih procesih pohitrimo odziv za faktor 4.8, pri slabo vodljivih pa za faktor 1.8. Tabela 2: Vrednosti cenilk pri poskusu, opravljenem z varianco šuma 0,001 Table 2: Cost-functions values for the experiment done with the noise variance 0.001. REALNA NAPRAVA Tabela 3: Vrednosti cenilk pri realnih napravah Table 3: Cost-functions values for the experiment done on real set-ups. Slika 4: Prikaz polarnih diagramov prvega procesa. S polno črto je prikazan polarni diagram dejanskega sistema, s črtkano črto modela identificiranega pri varianci šuma 0.01 in pikčasta pri varianci šuma 0.001. Pri metodi ploščin slednja poteka tako tesno ob polni, da jo je skoraj nemogoče ločiti. Figure 4: Polar diagrams of the first process. The full line represents the polar diagram of the process, the dashed line the model gained when the output noise of variance 0.01 was present, and the dotted line the model gained when the noise variance was 0.001. In the area method, the dotted line is so close to the full line that it is almost imposible to differentiate between them. e tartgerrtra metoda / " \ ' \\ - Vi iL/ / -1 -0.5 -1 -0.5 -1 -0.5 -1 -0.5 Slika 5: Prikaz polarnih diagramov drugega procesa. S polno črto je prikazan polarni diagram dejanskega sistema, s črtkano črto modela identificiranega pri varianci šuma 0.01 in pikčasta pri varianci šuma 0.001. Figure 5: Polar diagrams of the second process. The full line represents the polar diagram of the process, the dashed line the model gained when the output noise of variance 0.01 was present and the dotted line the model gained when the noise variance was 0.001. Slika 7: Vodenje motorja s pomočjo identificiranih parametrov po metodi ploščin (levo) in po tangentni metodi (desno). Figure 7: Control of the DC motor with the parameters identified with the area method (left) and tangent method (right). 20 time 20 time 20 time 20 time Slika 6: Vodenje motorja s pomočjo identificiranih parametrov po izboljšani metodi ploščin z navadnimi kvadrati (desno) in z instrumentacijsko matriko (levo). Figure 6: Control of the DC motor with the parameters identified with improved area method with normal least squares (right) and least squares with instrumental matrix (left). h i/v. 0 200 400 600 800 1000 time 0 200 400 600 800 1000 time 500 1000 time K 500 1000 time Slika 8: Vodenje klimatske naprave s pomočjo identificiranih parametrov po izboljšani metodi ploščin z navadnimi kvadrati (desno) in z instrumentacijsko matriko (levo). Regulirni signal je omejen na maksimalno vrednost 10 V in minimalno 0 V. Figure 8: Control of the air conditioner with the parameters identified with the improved area method with normal least squares (right) and least squares with instrumental matrix (left). The regulation signal is limited to 10 V and 0 V. 5 2 4 0 10 30 40 30 40 3 0 10 30 40 metoda plošein tangentna metoda ■jlt^ KI Slika 9: Vodenje klimatske naprave s pomočjo identificiranih parametrov po metodi ploščin (levo) in po tangentni metodi (desno). Regulirni signal je omejen na maksimalno vrednost 10 V in minimalno 0 V. Figure 9: Control of the air conditioner with the parameters identified with the area method (left) and tangent method (right). The regulation signal is limited to 10 V and 0 V. 5 Sklep Iz članka je razvidno, da je mogoče s pomočjo preprostih algoritmov zgraditi samonastavljiv algoritem s katerim lahko določimo parametre prediktivnega funkcijskega regulatorja. Čeprav so se nekatere metode na simulacijskih primerih izkazale za izredno dobre, pa se na realnih procesih, ko imamo opravka tudi z lezenjem in osciliranjem izhoda, pokaže, da njihovi rezultati še zdaleč niso tako dobri kot pri simulaciji. Da bi dobili najboljše parametre za vodenje, bi bilo treba v algoritem samonastavljanja vgraditi vse omenjene metode in na podlagi cenilke ter maksimalnega odstopanja od procesa izbrati najboljši model. 6 Literatura [1] K.J. Astrom, T.Hagglund, PID Controllers: Theory, Design and Tuning, The International Society for Measurement and Control, North Carolina, 1995. [2] Qiang Bi, Wen-Jian Cai, Eng-Lock Lee, Robust identification of first order plus dead time model from step response, Control Engineering Practice, Vol.7, No. 1, str. 71 - 77, January 1999. [3] Edvardo F. Camacho, Carlos Bordons, Model Predictive Control, Springer, London, 1999. [4] Igor Škrjanc, Prezentacija Predictive functional control for IDR blok, training for Mitsubishi electronics, Ljubljana, June 2007. [5] Škrjanc, D. Matko, Predictive functional control based on fuzzy model for heat-exchange pilot plant, IEEE Trans. on fuzzy systems, vol. 8, No. 6. pp. 705 - 712, Dec. 2000. 6] J.G. Ziegler, N.B. Nichols, Optimum settings for automtic controlers, Trans. ASME, vol 64, pp. 759 -768, 1942. 7] J.G. Ziegler, N.B. Nichols, Process lags in automatic control circuits, Trans. ASME, vol. 65, pp. 433 - 444, 1943. 8] K.L. Chein, J.A. Hornes, J.B. Reswick, On automatic control of generalized passive systems, Trans. ASME, vol 74, pp. 175 - 185, 1952. 9] K. Ogata, Modern control engineering, (2nd edn), Prentice-Hall, Englewood Cliffs, NJ, 1990. 10] G. F. Franklin, J.D. Powell and A.E Baeini, Feedback control of dynamic systems, Addison-Wesley, Reading, MA, 1986. 11] W.K. Ho, C.C. Hang, L.S. Cao, Tuning of PID controlers based on gain phase margin specifications, Automatica, vol. 31, No. 3, pp. 497 - 502, 1995. 12] I.L. Chien and P.S. Fruehauf, Consider IMC tuning to improve controller performance, Chem. Engn. Progr., vol 86, pp. 33 - 41, 1990. 13] M. Morari, E. Zafiriou, Robust process control., Prentice-Hall, Engelwood Cliffs, NJ, 1989. 14] K.J. Äström and T. Hägglund, Automatic tuning of PID controlers, Instrument society of America, Research Triangle Park, NC, 1988. 15] W. Tan, J. Liu, P.K.S. Tam, PID tuning based on loop shping H„ control, IEEE Proc. Control Theory Application, 145, pp. 485 - 490, 1998. 16] P.J. Gawthrop, Self-tuning PID controllers: algorithms and implementations, IEEE Trans. on Automatic Control, vol. 31, No. 3, pp. 201 - 209, 1986. 17] K.J. Äström and B. Wittenmark, On self-tuning regulators, Automatica, vol. 9, No. 2, pp. 185-199, 1973. 18] W. Liu and G. Wang, Auto-tuning procedure for model based predictive control, Proceedings IEEE SMC, 5, pp. 3421 - 3426, 2000. 19] J. Richalet, A. Rault, J.L. Testund and J. Papon, Model predictive heuristic control: Application to industrial processes, Automatica, vol. 14, pp. 413 - 428, 1978. 20] Thomas Schön, Identification for predictive control - a multiple model approach, Master thesis, Linköping, Oct., 2001. Dejan Dovžan je diplomiral leta 2008 na Fakulteti za elektrotehniko v Ljubljani. Trenutno je zaposlen na isti fakulteti kot mladi raziskovalec. Ukvarja se z modeliranjem in vodenjem sistemov. Igor Škrjanc je diplomiral leta 1992 na Fakulteti za elektrotehniko v Ljubljani, leta 1996 pa na isti fakulteti tudi doktoriral. Leta 2008 je postal redni profesor. Ukvarja se z adaptivnimi, mehkimi, prediktivnimi in mehkoadaptivnimi regulacijskimi sistemi. 5 4 3 200 400 600 time 0 200 400 600 800 1000 time 2 200 400 time 600 0 200 400 600 800 1000 time