Návrh diskrétního korekčního členu



Zadání
Proveďte návrh diskrétního korekčního členu za podmínek nulové ustálené odchylky a konečného regulačního děje v okamžicích vzorkování i mimo ně.
Proveďte návrh za stejných podmínek s tím, že přechodová charakteristika Fw nesmí mít větší nárůst, v rámci periody vzorkování, než 0,3.
Návrhy srovnejte mezi sebou a s PSD a PID regulátorem.

Pro návrh použijte přenos Fs=(10p+1)/((30p+1)(8p+1)(3p+1))



Řešení
1) Zvolte vhodnou periodu vzorkování pro návrh diskrétního korekčního členu
2) převeďte Fs na diskrétní ekvivalent Fc
3) Vypočtěte Fw1 a z něj Fr1 pro první bod zadání
4) Vypočtěte Fw2 a Fr2 pro druhý bod zadání (s podmínkou nárůstu Fw)
5) Navrhněte PID regulátor
6) Navrhněte PID regulátor pro PSD a převeďte ho na PSD
7) Srovnejte navržené regulátory z hlediska řízení, poruchy a akčního zásahu

Poznámky k řešení

ad 1) Perioda vzorkování by měla být co nejmenší z důvodu „kvalitního“ výpočtu. Zároveň by neměla být velice malá z důvodu výpočetní náročnosti (je třeba respektovat to, že výpočetní systém má omezenou rychlost). Vhodnou by mohla tedy být například perioda vzorkování cca 1/3 nejmenší časové konstanty (pokud tato není řádově různá od ostatních časových konstant). Perioda vzorkování by neměla být větší než cca 1/3 největší časové konstanty. Malé periody vzorkování mohou vést k problémům s výpočty, či se stabilitou výsledného systému.

Ad 2) při přepočtu využijte tvarovač nultého řádu a zvolenou periodu vzorkování

ad 3) na základě Fc a podmínek zadání vytvořte přenos Fw splňující dané podmínky. Z něj a Fc vypočtěte Fr.
Výsledné přenosy upravte pomocí metody minreal (či podobné). Zaokrouhlení provádějte z rozmyslem – zaokrouhlením nesmíte vnést do výpočtů chybu (například má-li být součet koeficientů jedna, není možné zaokrouhlit pouze jeden, či všechny zaokrouhlit dolů. Nebo u poruchy se musí první členy přenosů rovnat – proto nevhodné zaokrouhlení vede k chybě). Nezobrazujte vytvořený Fw, ale spočítaný z Fr a Fc. Věnujte pozornost stabilitě jednotlivých přenosů.

Ad 4) jako v bodě 3 ale přidat další podmínku omezeného kroku impulsové charakteristiky

ad 5) Zvolte vhodnou metodu a navrhněte PID regulátor (Ziegler – nichols, gmk, frekvenční charakteristiky …)

ad 6) Zvolte vhodnou metodu a navrhněte PID regulátor. (Ziegler – nichols, frekvenční charakteristiky). Návrh je nutné doplnit o dopravní zpoždění, které vznikne v důsledku kombinace diskrétní a spojité části. Výsledný PID regulátor převeďte na PSD (pomocí převodních vztahů, ne transformací).

Ad 7) Vytvořte přenosy Fw, Fu, Fx pro jednotlivé regulátory a vytiskněte je do společného grafu – proveďte srovnání. Průběhy generujte na základě přenosů soustavy a regulátoru – netiskněte původně vypočtený (navržený) Fw.



Popis návrhu diskrétního korekčního členu

U spojitých soustav navrhujeme regulátor (převedeme podmínky na přenos řízení až na podmínky na regulátor).

U diskrétních regulátorů navrhujeme přenos řízení nebo poruchy. Po jeho návrhu dopočteme přenos regulátoru.

  1. Přenos soustavy je Fs=(10p+1)/((30p+1)(3p+1))

  2. Je-li vstupem diskrétní signál, použijeme na vstupu soustavy tvarovač (u nás nultého řádu) a zjistíme (vypočteme) přenos tvarovače se soustavou v Z obraze. V matlabu pomocí funkce c2d a volby ´zoh´ - tvarovač nultého řádu. Potřebujeme volit periodu vzorkování – pro začátek jako třetinu menší časové konstanty. Srovnejte (vytištěné) odezvy na jednotkový skok původní a diskretizované soustavy.

  3. Podmínky na tvorbu přenosu řízení – stabilita (poly, nuly), nulová ustálená odchylka, konečný regulační děj, Pz a normalizované Pz

  4. Výpočet Fw = f0 + f1 z^-1+ f2 z^-2+ f3 z^-3 +

1-Fw = (1-z^-1) M(z) - podmínka nulové ustálené odchylky pro skok řízení (1-z^-1) a k tomu libovolný polynom tak aby bylo možné splnit více podmínek zaráz

Fw = P´(z) R(z) = f0 + f1 z^-1+ f2z^-2... - podmínka na konečný regulační děj (Fw obsahuje čitatelovou část Fc), minimálně musí obsahovat nuly Fc, které leží mimo jednotkovou kružnici z důvodu stability Fw. R(z) je libovolný polynom volený tak aby bylo možné splnit více podmínek naráz.

Polynomy M a R volíme co nejkratší (aby byl výpočet jednoduchý – lze je ovšem i prodloužit -> můžeme uplatnit další dodatečné podmínky, protože některé z koeficientů nejsou vázány rovnicemi a lze je zvolit)

P´(z) = P(z).z^-s / suma(pi) = …. „s“ je maximální kladná mocnina obsažené v Fc

Fc=(0.097z-0.088) / (z^2...)

P´(z)=(0.097z-0.088) z^-2 / (0.097+ -0.088)=10.51z^-1 - 9.51z^-2

1-Fw=1-P´(z)R(z) = (1-z^-1) M(z)

řešíme rovnici tak aby se koeficienty obou polynomů rovnaly u stejného řádu na obou stranách

snažíme se o co nejkratší polynomy R a M

Řešení pro nenormalizované P(z)

z^0 : 1- f0 = 1 = m0

z^-1: -f1 = -0.097 r0 = -m0 + m1

z^-2: -f2 = 0.088 r0 = -m1

toto jsou tři rovnice o třech neznámých a proto je vyřešíme r0 = 1/(0.097-0.088), m0 = 1, m1 = …

zároveň můžeme vypočítat P.R = Fw a vychází nám přenos řízení 10.51z^-1 – 9.51z^-2

  1. výpočet Fr=1/Fc (Fw/(1-Fw))

  2. tisk odezev Fw, Fu, Fx. Pro zjednodušení tvarů použijte minreal (či podobnou funkci)

  3. pokud nevyjde (=vyjde nestabilní), zvětšete periodu vzorkování a zkuste znovu...





Poznámky:

Často se stává, že se regulátor „předbíhá“. Tuto situaci je nutno ošetřit – jedná se patrně o chybu ve výpočtech. Po výpočtu regulátoru je dobré opět vypočítat Fw a zjistit zda je stejný jako výchozí Fw. Pokud je regulátor nestabilní, je třeba zkusit větší periodu vzorkování.

Pro řešení poruchy je kromě uvedených dvou podmínek ještě třetí, a to že první nenulový člen Fu musí být stejný jako první nenulový člen Fc (u odezvy na impuls, skok). To znamená, že musíte v soustavě rovnic, kterou máte, ještě přidat tuto podmínku.

Při realizaci v Matlabu může být problém také zaokrouhlení. Takže si musíte  udělat impulsovou nebo přechodovou charakteristiku Fc ([y t]=step(Fc)) a z ní použít první nenulový člen  jako první  nenulový člen v Fu a dopočítat to tak aby suma byla rovna nule (např fu = tf([0 y(2) 0.5 1-0.5-y(2)], ... ). V tomto případě se Vám první člen odečte a nebude se Vám regulátor předbíhat.







Poslední úpravy 2010-09-21