Fakulta elektrotechniky a informatiky Univerzita Pardubice Nastavení parametrů PID a PSD regulátorů Semestrální práce z předmětu Teorie řídicích systémů Jméno: Jiří Paar Datum: 9. 1. 2010
Zadání Je dána soustava popsaná ve tvaru, jejichž parametry mají hodnoty Doba do ustálení = 21.0 bb 1 = 0.0000 bb 0 = 0.1667 aa 2 = 1,8333 aa 1 = 1.0000 aa 0 = 0.1667 bb 1. ss + bb 0 FF(ss) = ss 3 + aa 2. ss 2 + aa 1. ss + aa 0 I. Určete kritické hodnoty a. výpočetně s využitím znalosti spojitého přenosu soustavy rr 0kk = TT kk = b. experimentálně v SIMULINKu pomocí relé ve zpětné vazbě s diskrétním vzorkováním (interval vzorkování TT = DD 100 ) rr 0kk = TT kk = II. III. IV. Určete parametry aproximační soustavy ve tvaru experimentálně v SIMULINKu. ZZ = ττ = TT dd = Určete parametry a. PID regulátoru z vypočtených kritických hodnot b. PID regulátoru z odhadovaných parametrů aproximační soustavy c. PSD regulátoru z kritických hodnot určených pomocí relé ve zpětné vazbě. Pro přepočet kritických hodnot parametrů na parametry diferenční rovnice použijte stejný interval vzorkování, co byl použit pro diskrétní relé. Proveďte simulační regulační experiment pro zadaný průběh žádané hodnoty dle obrázku s oběma spojitými a jedním diskrétním regulátorem. Pro každý průběh vyhodnoťte kritérium kvality ITAE na intervalu 0-2D (dvojnásobek doby do ustálení soustavy). PID1: rr 0 = TT ii = TT dd = II TTTTTT = PSD2: rr 0 = TT ii = TT dd = TT = qq 0 = qq 1 = qq 2 = II TTTTTT = PID3: rr 0 = TT ii = TT dd = II TTTTTT = Kromě číselných výsledků zobrazte a. v jednom grafu přechodové charakteristiky zadané soustavy a aproximační soustavy I. řádu s dopravním zpožděním b. v jednom grafu průběhy všech tří regulačních průběhů FF(ss) = w 1 ZZ ττ. ss + 1. ee TT dd.ss II TTTTTT = tt. ee(tt). dddd 0 D 2D t tt 0
Určení kritických hodnot Početně s využitím znalosti spojitého přenosu soustavy Pro určení kritických hodnot použijeme metodu Ziegler-Nichols. Tato metoda je založena na faktu, že při nahrazení regulátoru pouze proporcionální složkou rr 0, docházení při určité velikosti této složky k nestabilitě systému. Systém začne kmitat na kritické periodě TT kk, ze které je odvozena kritická frekvence ωω kk. Hodnota rr 0, při které začíná soustava kmitat, se nazývá kritické zesílení a značí se rr 0kk. K určení obou těchto hodnot musíme znát polynom přenosu celého uzavřeného regulačního obvodu. Celý uzavřený regulační obvod si lze představit podle následujícího obrázku: B/A jsou polynomy přenosu regulované soustavy, Q/P jsou polynomy přenosu regulátoru, u je akční veličina, y je výstup soustavy, w je žádaná hodnota a e je regulační odchylka. Pro tento obvod lze napsat tyto jednoduché vztahy: u B/A Q/P e y w yy = BB AA. uu uu = QQ PP. ee ee = ww yy Následně lze z těchto vztahů vypočítat celkový přenos uzavřeného regulačního obvodu, tedy závislost mezi výstupem a žádanou hodnotou: yy = BB AA. QQ PP. ee = BB AA. QQ. (ww yy) PP yy = yy + BB. QQ BB. QQ. ww AA. PP AA. PP. yy BB. QQ BB. QQ. yy = AA. PP AA. PP. ww BB. QQ BB. QQ BB. QQ yy. 1 + =. ww yy = AA. PP. ww = AA. PP AA. PP BB. QQ 1 + AA. PP BB. QQ AA. PP. ww AA. PP + BB. QQ AA. PP Přenos uzavřeného regulačního obvodu je tedy roven polynomu polynomem proměnné ss, tedy přenos je roven komplexní a je rovna ss = jj. ωω kk. = BB(ss).QQ(ss) AA(ss).PP(ss)+BB(ss).QQ(ss) BB. QQ AA. PP + BB. QQ. ww BB.QQ AA.PP+BB.QQ. Tento polynom je. Proměnná ss je ryze
Při použití metody Ziegler-Nichols je polynom přenosu regulátoru roven pouze hodnotě rr 0kk, tedy QQ = rr 0kk a PP = 1. Celý přenos systému lze tedy zjednodušit na následující tvar: BB(ss). rr 0kk AA(ss) + BB(ss). rr 0kk Z tohoto přenosu je nejdůležitější jeho jmenovatel, který se musí rovnat nule. Protože se jedná o komplexní číslo, musí se rovnat nule reálná i imaginární část. Přenos soustavy je zadán tímto polynomem: bb 1. ss + bb 0 FF(ss) = ss 3 + aa 2. ss 2 = BB(ss) + aa 1. ss + aa 0 AA(ss) Dosadíme do přenosu systému a vypočteme hodnoty rr 0kk a ωω kk. AA(ss) + BB(ss). rr 0kk = 0 ss = jj. ωω kk AA(jj. ωω kk ) + BB(jj. ωω kk ). rr 0kk = 0 (jj. ωω kk ) 3 + aa 2. (jj. ωω kk ) 2 + aa 1. (jj. ωω kk ) + aa 0 + [bb 1. (jj. ωω kk ) + bb 0 ]. rr 0kk = 0 jj. ωω 3 kk aa 2. ωω 2 kk + jj. aa 1. ωω kk + aa 0 + jj. bb 1. ωω kk. rr 0kk + bb 0. rr 0kk = 0 Rozdělíme na reálnou složku: aa 2. ωω kk 2 + aa 0 + bb 0. rr 0kk = 0 rr 0kk = aa 2. ωω kk 2 aa 0 bb 0 A na imaginární složku: ωω kk 3 + aa 1. ωω kk + bb 1. ωω kk. rr 0kk = 0 Z reálné složky si můžeme vyjádřit hodnotu rr 0kk a dosadit do druhé rovnice, ze které spočítáme ωω kk : ωω kk 3 + aa 1. ωω kk + bb 1. ωω kk. aa 2. ωω kk 2 aa 0 bb 0 = 0 ωω 3 + aa 1. ωω kk + bb 1. ωω kk. aa 2. ωω kk 2 ωω 3 kk + ωω kk + 0.1,8333. ωω kk 3 0,1667 =0 bb 0 bb 1. ωω kk. aa 0 bb 0 = 0 0. ωωkk. 0,1667 = 0 0,1667 =0 Získali jsme rovnici, která má tři reálné výsledky: ωω kk. ( ωω kk 2 + 1) = 0 ωω kk1 = 0 ωω kk 2 + 1 = 0 ωω kk2,3 = ±1 Nulová a záporná frekvence nás nezajímá. Získáme jedinou hodnotu ωω kk = 1. Nyní stačí již dopočítat hodnoty kritické periody TT kk a kritického zesílení rr 0kk. ωω kk = 1[ss 1 2. ππ ] TT kk = = 2. ππ 6,28[ss] ωω kk
1,8333.1 0,1667 rr 0kk = = 9,9976 0,1667 Kritické hodnoty získané výpočtem z přenosu soustavy jsou: TT kk = 6,28[ss] rr 0kk = 9,9976 Experimentálně v SIMULINKu pomocí relé ve zpětné vazbě Tato metoda stejně jako metoda Zeigler-Nichols umožňuje zjistit hodnoty rr 0kk a TT kk. Pro použití této metody je potřeba upravit regulátor tak, aby při hodnotě ee 0 měl na výstupu konstantní hodnotu RR a při hodnotě ee < 0 byl výstup roven RR. Tím budou na výstupu soustavy stabilní kmity. Perioda výstupu regulátoru je poté rovna kritické periodě TT kk a kritické zesílení rr 0kk se určí podle následujícího vztahu: 4. RR rr 0kk = ππ. ee mmmmmm Nejprve je nutné si v programu SIMULINK připravit model zadané soustavy. K tomu využijeme blok Transfer function a nastavíme jeho polynom přenosu dle zadání: Tento blok zapouzdříme do nového bloku a použijeme masku pro zadání hodnot koeficientů přenosu. Tyto koeficienty následně v masce vyplníme. Upravený systém s relé ve zpětné vazbě si lze představit podle následujícího obrázku: u 0 ±R u B/A Výstup regulátoru může nabývat pouze hodnot ±RR. Hodnota uu 0 posouvá výstup regulátoru na hodnotu rovnou s žádanou veličinou. Proto se uu 0 = ww, kde ZZ je zesílení soustavy. ZZ Zapojení v SIMULINKu podle předchozího obrázku bude vypadat následovně: ±R e y w
Zesílení zadané soustavy je rovna podílu absolutních členů přenosu, zesílení je rovno ZZ = 1. Proto se k výstupu regulátoru přičítá hodnota 1, což je výsledek podílu ww. Hodnotu RR zvolíme ZZ např. rovnu 2. Podle zadání má relé (Switch) nastavenu vzorkovací periodu na 21. 100 Zobrazíme výsledné hodnoty, ze kterých odečteme kritickou periodu TT kk a ee mmmmmm. TT kk ee mmmmmm Kritické zesílení je tedy rovno: TT kk = 7,14[ss] ee mmmmmm = 0,3327 rr 0kk = 4. RR 4.2 = ππ. ee mmmmmm ππ. 0,3327 = 7,654 Kritické hodnoty pro výpočet s relé ve zpětné vazbě jsou: TT kk = 7,14[ss] rr 0kk = 7,654
Určení parametrů aproximační soustavy Pro určení parametrů aproximační soustavy je nutná znalost přechodové charakteristiky. Pro zjištění přechodové charakteristiky zapojíme soustavu podle následujícího obrázku: Zobrazíme výsledné průběhy: TT uu TT nn Z tohoto grafu můžeme jednoznačně určit zesílení soustavy, které je rovno poměru ustáleného výstupu k ustálenému vstupu, tedy zesílení je rovno ZZ = 1. Můžeme také určit dobu průtahu TT uu 1,2 a dobu náběhu TT nn 7,8. Pro aproximační soustavu musíme ještě kromě zesílení ZZ určit zpoždění TT dd a časovou konstantu ττ. Tyto hodnoty musíme určit zcela náhodně, ovšem k jejich určení nám mohou pomoci hodnoty TT uu (TT dd ) a TT nn (ττ), které upravujeme do té doby, než se průběh výstupu nejvíce podobá výstupu spojité soustavy.
Nejprve si ale budeme muset připravit model přenosu soustavy v SIMULINKu podle následujícího zapojení. Blok Transfer function nahrazuje tuto část přenosu aproximační soustavy: ZZ ττ. ss + 1 Dopravní zpoždění přenosu ee TT dd.ss je nahrazeno blokem Transport Delay. Všechny hodnoty ZZ, ττ a TT dd jsou nově vytvořenému bloku předány pomocí masky. Můžeme si zobrazit přenosovou charakteristiku aproximační soustavy s přechodovou charakteristikou původní spojité soustavy. TT dd ττ
Pro tento průběh byly nastaveny hodnoty aproximační soustavy takto: ZZ = 1 TT dd = 2 ττ = 4,7 Určení hodnot regulátorů Hodnoty PID regulátoru z vypočtených kritických hodnot PID regulátor navrhneme podle následujícího vztahu: uu(tt) = rr 0. ee(tt) + 1 TT ii. ee(tt). dddd Této rovnici odpovídá následující zapojení v SIMULINKu: 0 tt + TT dd. dddd(tt) dddd V tomto zapojení se konstanta rr ii = 1 TT ii a konstanta rr dd = TT dd. Toto zapojení je vytvořeno jako blok a parametry jsou mu předány prostřednictvím masky. Pro přepočet kritických hodnot rr 0kk a TT kk lze využít následujících vztahů: rr 0 = 0,6. rr 0kk TT ii = 0,5. TT kk TT dd = 0,125. TT kk Pro naše vypočtené hodnoty tedy vychází: rr 0 = 0,6.9,9976 = 5,9986 TT ii = 0,5.6,28 = 3,14 TT dd = 0,125.6,28 = 0,785 Hodnoty PID regulátoru z odhadovaných parametrů aproximační soustavy Pro tento PID je použita stejná rovnice jako v předešlém případě. Pro aproximační soustavu prvního řádu s dopravním zpožděním platí následující přepočty pro parametry PID regulátoru: ττ rr 0 = 0,6. ZZ. TT dd TT ii = ττ TT dd = 0,5. TT dd
Pro námi odhadované parametry platí: rr 0 = 0,6. 4,7 1.2 = 1,41 TT ii = 4,7 TT dd = 0,5.2 = 1 Hodnoty PSD regulátoru z kritických hodnot určených pomocí relé ve zpětné vazbě Pro PSD regulátor využijeme dokonalejší náhradu pomocí následující rovnice (polohový tvar): uu(kk) = uu(kk 1) + (qq 0 + qq 1 + qq 2 ). ww(kk) qq 0. yy(kk) qq 1. yy(kk 1) qq 2. yy(kk 2) Tuto rovnici lze zapsat v programu SIMULINK následovně: Blokům Unit Delay i Zero-Order Hold jsou nastaveny vlastnosti Sample Time na T, která určuje vzorkovací periodu. Proměnná qq = qq 0 + qq 1 + qq 2. Všechny tyto hodnoty jsou vytvořenému bloku předány prostřednictvím masky. Blok vypočítává i regulační odchylku ee(kk), která bude potřebná v další části. Pro přepočet parametrů spojitého PID regulátoru na parametry diskrétního PSD regulátoru existují následující vztahy: qq 0 = rr 0. 1 + TT + TT dd 2. TT ii TT qq 1 = rr 0. 1 TT + 2. TT dd 2. TT ii TT qq 2 = rr 0. TT dd TT Pro hodnoty rr 0, TT ii a TT dd použijeme naměřené hodnoty rr 0kk a TT kk pomocí relé ve zpětné vazbě. rr 0 = 0,6.7,654 = 4,5924 TT ii = 0,5.7,14 = 3,57
TT dd = 0,125.7,14 = 0,8925 Tyto hodnoty se dosadí do vztahů pro výpočet parametrů PSD regulátoru (perioda vzorkování je rovna TT = 0,21[ss]): qq 0 = 4,5924. 1 + 0,21 2.3,57 + 0,8925 = 24,24517 0,21 qq 1 = 4,5924. 1 0,21 2.3,57 + 2.0,8925 = 43,4927 0,21 qq 2 = 4,5924. 0,8925 0,21 = 19,5177 Regulační experiment pro zadaný průběh žádané hodnoty Pro tento experiment je nutné si připravit blok, který vytvoří požadovaný průběh žádané hodnoty. w 1 0 D 2D t Blok může vypadat následovně: Blok Step má nastavenu hodnotu výstupu od 0 do 1 a čas skoku na DD = 21ss. Doba simulace musí probíhat přesně 2. DD = 42ss.
Výstup bloku Buzeni je přesně podle zadání: K vyhodnocení kritéria kvality II TTTTTT sestavíme nový blok: Porovnání přechodových charakteristik původní a aproximační soustavy
Vyhodnocení kritéria stability PID1: rr = 5,9986 0 TT = 3,14 ii TT = 0,785 dd II = 115,1 TTTTTT PID2: rr 0 = 1,41 TT ii = 4,7 TT dd = 1 II TTTTTT = 124,8 PSD3: rr 0 =4,5924 TT ii = 3,57 TT dd = 0,8925 TT = 0,21 qq 0 = 24,24517 qq 1 = 43,4927 qq 2 = 19,5177 II TTTTTT = 113,1