Aspect - samouceci regulacijski sistem za zahtevne procese Gregor DOLANC, Samo GERKŠIČ, Juš KOCIJAN, Damir VRANČIČ, Stanko STRMČNIK, Miha BOŽIČEK, Zoran MARINŠEK, Igor ŠKRJANC, Sašo BLAŽIČ Izvleček: Sistem Aspect je napreden sistem za regulacijo zahtevnejših procesov, ki so lahko nelinearni, časovno spremenljivi in lahko vsebujejo mrtvi čas. Da bi bila uvajanje in uporaba čimbolj enostavna, je sistem samoučeč, kar pomeni, da nastavitev in optimizacija regulacijskih parametrov potekata avtomatsko, in sicer na osnovi modela procesa, ki se samodejno izgrajuje med delovanjem. Regulacijski sistem Aspect je izveden v obliki programske opreme, ki lahko teče na zmogljivejših programirljivih logičnih krmilnikih. Ključne besede: regulacijski sistemi, samoučeči sistemi, industrijski procesi, regulacija zahtevnih procesov, pro-gramirljivi logični krmilniki, ■ 1 Uvod Regulacija zahtevnih procesov ob zmožnosti avtomatske konfiguracije in nastavitve algoritmov za regulacijo predstavlja izziv za raziskovalce s področja procesne avtomatike. Tako so v literaturi objavljeni številni teoretični koncepti naprednih regulacijskih algoritmov in sistemov, ki naj bi omogočali uspešno regulacijo zahtevnejših procesov. Kljub velikemu obsegu raziskav pa je prenos Dr. Gregor Dolanc, univ. dipl. inž., dr. Samo Gerkšič, univ. dipl. inž., Institut Jožef Stefan, Ljubljana; Prof. dr. Juš Kocijan, univ. dipl. inž., Institut Jožef Stefan, Ljubljana, Politehnika Nova Gorica, Nova Gorica; Doc. dr. Damir Vrančic, univ. dipl. inž., prof. dr. Stanko Strm-čnik, univ. dipl. inž., Institut Jožef Stefan, Ljubljana; Mag. Miha Božiček, univ. dipl. inž., dr. Zoran Marinšek, univ. dipl. inž., Inea, d. o. o., Ljubljana; Prof. dr. Igor Škrjanc, univ. dipl. inž., doc. dr. Sašo Blažič, univ. dipl. inž., Fakulteta za elektrotehniko, Ljubljana teoretičnih rezultatov v praktično uporabo relativno težaven, saj koncepti naprednih regulacijskih algoritmov poleg prednosti prinašajo tudi težave, ki zavirajo njihovo široko implementacijo in uporabo, kot na primer: • za uvajanje, vzdrževanje in uporabo kompleksnih regulacijskih sistemov so pogosto potrebna specialistična znanja, ki so izven obsega ustaljene prakse; • obstoječa računalniška oprema za avtomatizacijo (npr. pro-gramirljivi logični krmilniki) pogosto nimajo niti zadostne računske moči niti ustreznih funkcij, potrebnih za izvedbo kompleksnih regulacijskih sistemov. Za praktično uporabo je torej izjemno zanimiv razvoj takih sistemov, ki bi bili enostavni za uvajanje in uporabo, nivo njihove kompleksnosti pa bi bil takšen, da bi jih bilo mogoče implementirati v okviru razpoložljive računalniške opreme za avtomatizacijo. To je torej izhodišče za regulacijski sistem Aspect, ki ga opisujemo v tem prispevku. Regulacijski sistem je bil razvit in patentiran [1] v okviru istoimenskega projekta ob finančni podpori Evropske unije v okviru Petega okvirnega programa. Cilj projekta ni bil iskanje novih temeljnih konceptov, pač pa smo skušali izbrati najprimernejše obstoječe rešitve in jih prilagoditi tako, da bi bila poenostavljena njihova implementacija in predvsem uporaba. Končni rezultat projekta je regulacijski sistem, ki vsebuje napredne samoučeče regulacijske algoritme in ostalo infrastrukturo ter lahko obratuje v okviru komercialno dostopnih programirljivih logičnih krmilnikov, ki izpolnjujejo določene tehnične pogoje. Ključne zahteve pri izvedbi regulacijskega sistema so bile naslednje: • Regulacijski sistem mora biti čimbolj univerzalen, kar pomeni, da mora omogočati uspešno regulacijo različnih ''zahtevnejših'' procesov, to pomeni procesov, ki so bodisi nelinearni bodisi počasi časovno spremenljivi in lahko vsebujejo tudi mrtvi čas. Znano je, da takšnih procesov s pomočjo klasičnih PID-regulatorjev ni mogoče uspešno regulirati, vsaj ne v celotnem področju njihovega delovanja. • Uvajanje in uporaba regulacijskega sistema morata biti čimbolj enostavna. To pomeni, da sistem od upo- rabnika oziroma uvajalca ne sme zahtevati obsežne konfiguracije in nastavitve množice neznanih parametrov. Nasprotno: sistem mora biti samoučeč, kar pomeni, da se nastavi pretežno samodejno iz informacij, ki jih dobi med delovanjem procesa. Regulacijski sistem Aspect kot produkt je izveden v obliki programske opreme. Točneje: gre za specifikacije za programsko opremo, izdelane do visokega nivoja podrobnosti. Na osnovi specifikacij je možna končna izvedba programske opreme za poljuben tip računalniške opreme (progra-mirljivi logični krmilnik), ki pa mora zadoščati določenim minimalnim pogojem glede zmogljivosti. Na ta način je sistem Aspect možno uporabiti na različni računalniški opremi. V okviru projekta smo na osnovi specifikacij izdelali končno programsko opremo za programirljivi krmilnik serije Mitsubishi. Regulacijski sistem smo uspešno preizkusili in ovrednotili najprej s pomočjo simulacije in kasneje v okviru uporabe na nekaj realnih industrijskih procesih. ■ 2 Koncept regulacijskega sistema Aspect Programska oprema sistema Aspect je zgrajena modularno in je sestavljena iz treh glavnih sestavnih delov oziroma modulov: • glavni programski modul (RTM, ang. ''Run-Time Module''), • operaterski vmesnik (HMI, ang. ''Human Machine Interface''), • orodje za konfiguriranje (CT, ang. ''Configuration Tool''). Modul RTM je glavna komponenta in vsebuje vse glavne funkcije regulacijskega sistema (regulacijski algoritmi, nastavitev regulacijskih parametrov, učenje modela procesa, ocena kvalitete regulacije, koordinacija in ostalo) in poteka na programirljivem logičnem krmilniku. Vmesnik HMI je predloga za izvedbo grafičnih menijev v okviru komercialno dostopnih operaterskih vmesnikov ali v okviru osebnega računalnika. V prvi vrsti omogoča posege operaterja v sistem ter prikazuje glavne signale procesa ter status modula RTM. Omogoča tudi različne nastavitve in diagnostične operacije. Orodje za konfiguriranje CT je program, ki deluje na osebnem računalniku in omogoča osnovno konfiguriranje oziroma prilagoditev glavnega programskega modula RTM glede na zahteve in lastnosti procesa. Med kon-figuriranjem je med orodjem za konfiguriranje CT in glavnim programskim modulom RTM vzpostavljena dvosmerna komunikacijska povezava. V nadaljevanju bomo vso pozornost posvetili glavnemu programskemu modulu RTM in si ogledali njegovo zgradbo in način delovanja. Modul RTM je sestavljen iz ločenih funkcijskih enot, ki jih v nadaljevanju na kratko predstavljamo: 2.1 Enota za regulacijo (CAA) Enota za regulacijo (CAA, ang. ''Control Algorithm Agent'') izvaja zaprto-zančno regulacijo procesa, in sicer lahko izbiramo med tremi različnimi regulacijskimi algoritmi: 1. PID-regulator z mehkim razvrščanjem ojačenj, 2. prediktivni regulator s kompenzacijo mrtvega časa, 3. nevro-PID-regulator. V prispevku bomo opisali le prvo izmed treh možnosti, to je PID-regulator z mehkim razvrščanjem ojačenj. V osnovi gre za PID-regulator, izveden v hitrostni obliki in nadgrajen z razvrščanjem ojačenj, izvedenim s pomočjo mehke logike (PID Fuzzy-gain scheduling controller; PID FGSC, [2]). Na ta način je mogoča regulacija nelinearnih procesov, saj se obnašanje regulatorja prilagaja dinamičnim lastnostim procesa. Regulacijski algoritem vsebuje tudi avtomatsko nastavitev parametrov, in sicer na osnovi nelinearnega modela procesa. Podprti so trije načini delovanja: • avtomatski (AUTO) - vključuje vse funkcije regulacijskega algoritma, • varni (SAFE) - PID-regulator s fiksnimi parametri, ki omogočajo stabilno, a praviloma ne optimalno regulacijo, • ročni (MAN) - ročni način spreminjanja izhoda regulatorja in mehki preklop v avtomatski način delovanja. Enota za regulacijo je realizirana v treh nivojih, kot je prikazano na sliki 1. Slika 1. Zgradba enote za regulacijo Nivo regulacije vključuje omenjeni osnovni PID-regulacijski algoritem, ki vključuje zahtevane''industrijske'' lastnosti, kot so omejitve izhoda in hitrosti spremembe izhoda, zaščita proti integralskemu pobegu ter brezudarni preklopi med avtomatskim in ročnim načinom delovanja. Nivo razvrščanja ojačenj izvaja mehke preklope med posameznimi seti regulacijskih parametrov, ki ustrezajo posameznim delovnim področjem procesa, ki so opisana z lokalnimi modeli. Preklopi se izvajajo s pomočjo mehke logike z uporabo trikotnih pripadnostnih funkcij, upoštevajoč trenutno vrednost krmilne veličine (scheduling variable). Nivo avtomatske nastavitve parametrov regulatorja določa sete parametrov regulatorja, ki ustrezajo parametrom posameznih lokalnih modelov. Nastavitev se sproži vsakič, ko se pojavi nov lokalni model oziroma se osvežijo parametri določenega obstoječega lokalnega modela. Diskretni lokalni model se najprej pretvori v časovno zvezno obliko, na podlagi te pa se izračunajo parametri regulatorja. Določitev parametrov sloni na kriteriju ''magnitude optimum'' in na uporabi metode ''večkratne integracije'' [3]. 2.2 Enota za učenje modela (OLA) Regulacijski parametri vseh treh regulacijskih algoritmov se določajo avtomatsko, in sicer na podlagi informacije o procesu, ki je zapisana v obliki nelinearnega modela. Slednji je izveden v obliki množice lokalnih linearnih modelov nizkega reda. Posamezen lokalni model ima sledečo strukturo: y{k) = -a. jyik -1) - jy(k - 2) + + b1ju(k -1 - du J) +... ... + b2 ju(k - 2 - du J) + c1, JV (k -1 - dv J) + c2,Jv (k - 2 - dv J) + rj k............................čas (diskretno) j.............................št. lokalnega modela y(k)........................izhod procesa (regulirana veličina) u(k)........................regulirna veličina v(k)........................merljiva motnja du..........................mrtvi čas veje u - y dv..........................mrtvi čas veje v - y a,,, b,,, c,,, r ............parametri lokalnega modela Slika 2. Zgradba enote za učenje modela Na ta način je možno opisati obnašanje nelinearnega procesa v celotnem območju delovanja. Posamezni linearni modeli, ki tvorijo nelinearni model, se pridobijo eksperimentalno s pomočjo procedure za identifikacijo, bodisi med regularnim delovanjem procesa bodisi s pomočjo namenskega eksperimenta. Procedura za identifikacijo je vgrajena v enoto za učenje modela (OLA, ang. ''On-line Learning Agent''). Učenje (identifikacija) se izvaja periodično ali na zahtevo nadzornega sistema (OS). Ker gre za računsko zahtevno opravilo, se učenje praviloma izvaja kot opravilo z nižjo prioriteto. Učenje poteka po naslednjih korakih: Analiza vzbujanja preveri, če so variance signalov procesa iz sklada preteklih vrednosti nad določenim pragom, saj je zadostnost vzbujanja pogoj, da se učenje lokalnih modelov sploh lahko izvede. Dovoljenje za učenje je dano le tistim lokalnim modelom, katerih vsota pripadnostnih funkcij (normalizirana glede na dolžino sklada preteklih vrednosti) preseže postavljeni prag. Identifikacija lokalnih modelov se izvaja s pomočjo metode pomožnih spremenljivk, nadgrajene z mehanizmom za preklop modelov s pomočjo mehke logike (FIV; Fuzzy Instrumental Variables). Identifikacija se izvede za vsak lokalni model, za katerega je bilo dano dovoljenje za učenje. Rezultat identifikacije določenega lokalnega modela sta dva linearna modela, in sicer model prvega reda in model drugega reda. Metoda FIV se inicializira s pomočjo klasične metode najmanjših kvadratov (LS; Least Squares). Verifikacija/validacija lokalnih modelov se izvaja s pomočjo primerjave izhoda določenega lokalnega modela in dejanskega izhoda procesa v okolici pozicije izbranega lokalnega modela, na podlagi tega se izračuna mera odstopanja, tj. vsota kvadratov odstopanj, ki pomeni merilo za kvaliteto modela. Za vsak lokalni model se izvede verifikacija nad tremi seti parametrov modela: začetni (obstoječi) model, novi model, dobljen s pomočjo FIV-metode, novi model, dobljen s pomočjo LS-metode. Privzame se tisti set parametrov, kjer je odstopanje najmanjša. 2.3 Enota za shranjevanje modelov (MIA) Enota za shranjevanje modelov (MIA, ang. ''Model Information Agent'') vzdržuje bazo veljavnih lokalnih modelov. Vsak lokalni model je opremljen z informacijo o statusu, ki je podan z dvema zastavicama, od katerih prva označuje, ali je od prvega zagona sistema dalje pripadajoči lokalni model bil vsaj enkrat uspešno identificiran. Druga zastavica pa pove, ali je določen lokalni model že bil izkoriščen za avtomatsko nastavitev parametrov regulatorja. Omenjena zastavica je postavljena s strani enote za regulacijo (CAA) in preprečuje večkratno avtomatsko učenje parametrov regulatorja glede na lokalne modele, ki so ostali nespremenjeni. Ko se iz enote za učenje modela (OLA) prenese nov lokalni model, se omenjena zastavica postavi na nizek logični nivo, kar omogoči ponovno avtomatsko nastavitev parametrov regulatorja za ta lokalni model. Enota za shranjevanje modela vsebuje tudi funkcijo interpolacije, ki oceni parametre neidentifici-ranih modelov, ki ležijo med dvema identificiranima modeloma. 2.4 Nadzor kvalitete regulacije (CPM) Nadzor kvalitete regulacije (CPM, ang. ''Control Performance Monitor'') analizira sklad preteklih vrednosti signalov procesa in ocenjuje kvaliteto regulacije. Najprej prepozna stanje, v katerem se trenutno nahajata regulacijski sistem in proces, nato pa oceni več različnih cenilk kvalitete regulacije, iz katerih določi končno oceno kvalitete regulacije, kot je shematsko prikazano na sliki 3. Če je ocena kvalitete regulacije slaba, lahko nadzorni sistem (OS) sproži različne akcije: identifikacijo lokalnega modela, nastavitev parametrov regulatorja ter skrajni ukrep: preklop regulacije iz avtomatskega (AUTO) v varnostni (SAFE) način obratovanja. 2.5 Nadzorni sistem (OS) Nadzorni sistem (OS, ang. ''Operation Supervisor'') koordinira delovanje naštetih enot in procesira ukaze oziro- Slika 3. Potek ocene kvalitete regulacije ma posege s strani uporabnika - ope- • raterja. Zaradi obsežnosti posameznih funkcij navajamo le njihove kategorije: koordinacija vseh enot, koordinacija posegov s strani operaterja, priprava podatkov za prikaz v okviru HMI, podpora različnih delovnih režimov, procesiranje t. i. konfiguracijskih podatkov, koordinacija z ostalimi signali, ki so v okviru platforme (PLC-ja) in so v povezavi z reguliranim procesom, • upravljanje s strojno opremo računalniškega sistema (vhodni in izhodni signali). ■ 3 Izvedba sistema Kot je bilo omenjeno v uvodu, je regulacijski sistem Aspect izveden v obliki natančnih specifikacij za programsko opremo. Specifikacije omogočajo izvedbo končne programske opreme za poljubno računalniško oziroma PLC-platformo, ki pa mora zadoščati določenim minimalnim tehničnim kriterijem. V tem prispevku se omejujemo na izvedbo, pri kateri je glavni programski mo- dul RTM realiziran v okviru pro-gramirljivega logičnega krmilnika Mitsubishi, serija A1S, natančneje v okviru koprocesorskega modula SPAC20. Vmesnik HMI je implementiran v okviru operaterskega vmesnika Beijer E700, ki spada med standardne operaterske vmesnike za krmilnike Mitsubishi. Regulacijski sistem Aspect oziroma njegov glavni programski modul RTM je realiziran v obliki programske opreme, ki se dopolnjuje s programskim orodjem INEA IDR Blok, ki je namenjeno programiranju oziroma reševanju regulacijskih (DDC) nalog s pomočjo krmilnikov serije Mitsubishi. Orodje INEA IDR Blok je blokovno orientirano orodje, s pomočjo katerega uporabnik nariše regulacijsko shemo v obliki blokovne sheme, pri čemer uporablja bloke iz knjižnice, ki je del orodja. V tem smislu se regulacijski sistem Aspect pojavlja kot nov oziroma dodaten blok v okviru orodja IDR Blok. ■ 4 Preizkus delovanja Regulacijski sistem Aspect smo preizkusili v obratu za proizvodnjo ventilov, in sicer na hidravlični testni liniji, ki je namenjena testiranju regulacijskih ventilov. Poenostavljena shema linije je prikazana na sliki 4. Na testiranem ventilu je potrebno regulirati tlačno razliko, pri čemer re-gulirno veličino predstavlja krmilni signal hitrosti vrtenja črpalk P1, P2 in P3. Gre za proces, ki je nelinearen in časovno spremenljiv, vzrok so naslednja dejstva: • odvisnost med tlačno razliko na ventilu in pretokom (hitrostjo vrtenja črpalk) je kvadratična, torej nelinearna, • odprtost ventila se med testom lahko spreminja, • za test je možno uporabiti poljubno kombinacijo aktivnih črpalk. Vsa ta dejstva povzročajo spremembe ojačenja procesa, tj. razmerja med spremembo tlačne razlike in spremembo hitrosti vrtenja črpalk, gledano v ustaljenih razmerah. Ker je ojačenje procesa poleg vrste dinamike ključnega pomena za nasta- Slika 4. Tehnološka shema testne linije vitev parametrov regulatorja, mora biti krmilna veličina za razporejanje ojačenj (scheduling variable) izbrana tako, da je v funkcijski odvisnosti (po možnosti proporcionalni) z ojačenjem procesa. Dinamika procesa je sestavljena iz dinamike črpalke (vztrajnost mehanskih delov) in dinamike tekočine v ceveh (vztrajnost tekočine). Obe dinamiki lahko aproksimiramo s členom prvega reda, kar v skupnem pomeni dinamiko drugega reda. Da bi primerjali delovanje sistema Aspect z rešitvami iz standardne prakse, smo proces regulirali na dva načina. Prvič smo uporabili fiksni PID-regulator, ki se kot klasična rešitev uporablja v večini industrijskih primerov. Ta je aktiviran, kadar je regulacijski sistem Aspect v načinu ''Safe''. Parametri fiksnega PID-regulatorja so bili določeni izkustveno, tako da je bilo doseženo približno optimalno delovanje regulacije pri nižjih vrednostih tlačnih razlik. Drugič smo proces regulirali z regulacijskim sistemom Aspect, in sicer v ''Auto'' načinu delovanja, ki vključuje vse njegove funkcije. Regulacijski parametri za ''Auto'' način delovanja pa so bili določeni avtomatsko s pomočjo enote za učenje modela (OLA) in namenskih eksperimentov, ki jih podpira nadzorni sistem (OS). Slika 5 prikazuje regulacijo s fiksnim PID-regulatorjem. Zgornji graf na sliki prikazuje potek tlačne razlike (Ap) in njene želene vrednosti (SP). Odziv tlačne razlike je blizu optimalnemu, vendar le, ko je tlačna razlika nizka. Ko tlačna razlika narašča, postaja odziv oscilatoren, saj zaradi kvadratične odvisnosti tlačne razlike od hitrosti vrtenja črpalk narašča ojačenje procesa in s tem tudi ojačenje zaprtozančne prenosne funkcije, kar ob procesni dinamiki drugega reda vodi v oscilacije. Slika 5. Regulacija s fiksnim PID-regulatorjem Slika 6. Regulacija s sistemom Aspect Slika 6 prikazuje regulacijo s sistemom Aspect v načinu ''Auto''. Za razliko od regulacije s fiksnim PID-regu-latorjem opazimo, da je odziv tlačne razlike vedno enake oblike in vedno blizu optimalnemu odzivu ne glede na velikost tlačne razlike. Funkcija razporejanja ojačenj PID FGSC algoritma namreč v tem primeru prilagaja parametre regulatorja tako, da je skupno zaprto zančno obnašanje bolj ali manj konstantno ne glede na spreminjajoče se ojačenje procesa. Primerjava obeh regulacij kaže, da sistem Aspect deluje neprimerno bolje od klasične rešitve, to je fiksnega PID-regulatorja. ■ 5 Zaključek Z razvojem sistema Aspect smo zgradili praktično uporaben regulacijski sistem, ki pri uporabi v zahtevnih procesih deluje bolje od obstoječih klasičnih rešitev, hkrati pa od uporabnika oziroma uvajalca zahteva manj nastavitev kot klasične rešitve (npr. fiksni PlD-regulator). V primeru sistema Aspect se regulacijski parametri nastavijo in optimirajo samodejno, v primeru fiksnega PlD-regulatorja pa jih mora nastaviti uporabnik oziroma uvajalec. Sistema Aspect je tržni produkt, njegovo delovanje je uspešno preizkušeno na realnih procesih, pri čemer so se pričakovane prednosti sistema tudi v resnici potrdile. Literatura [1] Self-tuning controller for nonlinear processes described by set of local linear models, PCT/ S102/00029, Slovenia, december 2002 (PATENT). [2] Kocijan, J., Žunič, G., Strmčnik, S., Vrančic, D., 2002, Fuzzy gain-scheduling control of a gasliquid separation plant implemented on a PLC. Int. J. Control, vol. 75, no. 14, pp. 1082-1091. [3] Vrančic, D., Strmčnik, S., Juričic, 2001, A magnitude optimum multiple integration tuning method for filtered PID controller. Auto-matica, vol. 37, pp. 1473-1479. Aspect - A self-learning control system for demanding processes Abstract: An aspect system is an advanced control system used to control demanding processes, which can be either non-linear or time-variant and may possess some dead time. To ensure its simple configuration and usage, the control system has self-learning abilities, used to automatically tune and optimise the control parameters. The tuning and optimisation is performed using a model of the controlled process, which is built automatically on the basis of the information retrieved from the process during operation. The aspect control system is implemented in terms of a software product that can run on powerful programmable logic controllers. Keywords: control systems, self-learning systems, industrial processes, control of demanding processes, programmable logic controllers,