„Szabályozástechnika - 2DOF szabályzó tervezése” változatai közötti eltérés
aNincs szerkesztési összefoglaló |
|||
| 45. sor: | 45. sor: | ||
==A megoldandó egyenlet levezetése== | ==A megoldandó egyenlet levezetése== | ||
[[File:Szabtech_2dof_szabályzó_felépítése.JPG]] | |||
<syntaxhighlight lang="matlab" style="font-size: 150%;"> | <syntaxhighlight lang="matlab" style="font-size: 150%;"> | ||
% A 2DOF szabályzó tervezés alapelve, hogy mi a zárt kör átviteli függvényében | |||
% előre meghatározott pólusokat szeretnénk. Azaz célunk, hogy: | |||
% | |||
% Bm A0 | |||
% Dcl = ---- * ---- alakú legyen, ahol A0 az úgynevezett observer polinom. | |||
% Am A0 | |||
% | |||
% Itt Am gyökei lesznek az általunk előírt pólusok. | |||
% A szakasz diszkrétidejű átviteli függvénye: D(z) = B(z) / A(z) | |||
% A zárt kör átviteli függvénye: | |||
% | |||
% T B/A T*B Bm A0 | |||
% Dcl = --- * --------------- = ----------- == ---- * ---- | |||
% R 1 + B/A * S/R A*R + B*S Am A0 | |||
% | |||
% Szeretnénk egyszerűsíteni a B polinommal, így R gyökei közé bevesszük B gyökeit. | |||
% Azonban R gyökei közé csak a B stabilis gyökeit tehetjük, a szabályzó stabilitásának érdekében. | |||
% Így B = Bplus * Bminus felbontásra jutunk, ahol Bplus tartalmazza B kiejthető gyökeit, | |||
% azaz azokat, amelyek az egységkörön belül vannak és NEM tisztán negatív valósak! | |||
% Tehát R gyökei közé bevehetjük Bplus gyökeit: R = R1 * Bplus | |||
% Így le tudunk egyszerűsíteni Bplus-al az egyenlet bal oldalán: | |||
% | |||
% T*Bminus Bm A0 | |||
% ----------------- == ---- * ---- | |||
% A*R1 + Bminus*S Am A0 | |||
% | |||
% Az egyenletből látszik, hogy Bm polinomnak mindenképpen tartalmaznia kell B nem kiejthető gyökeit, | |||
% azaz Bm = Bm' * Bminus alakú kell hogy legyen. Így tovább egyszerűsíthetünk: | |||
% | |||
% T Bm' A0 | |||
% ----------------- == ---- * ---- | |||
% A*R1 + Bminus*S Am A0 | |||
% | |||
% Előírás lehet, hogy a szabályzó "k" darab integrátort tartalmazzon, melyeket az R polinomba | |||
% kell bepakolnunk. Azaz R = R1 * Bplus, ahol R1 = (z-1)^k * R1' | |||
% Így a végleges egyenletünk: | |||
% | |||
% T Bm' A0 | |||
% -------------------------- == ---- * ---- | |||
% A*(z-1)^k*R1' + Bminus*S Am A0 | |||
% | |||
% Ez alapján a szabályzó T polinomja egyszerűen számítható: T = Bm' * A0 | |||
% Az egyenlet nevezője pedig egy diophantoszi polinomegyenlet, amiből a lentebb ismertetett | |||
% módszerrel R1' (ebből pedig R) és S már egyszerűen meghatározható. | |||