A 10. fejezet fejezetben szereplő vonóelemes mozgásátalakító matematikai modell struktúrájának előállítására mutatunk egyet a lehetséges módszerek közül.
A matematikai modell (átviteli függvény) paraméterezéséhez katalógusból válogatott adatokat használunk.
A matematikai modellel adott rendszer dinamikai (idő- és frekvenciatartománybeli) vizsgálata után szabályozót tervezünk, az ilyen jellegű valóságos rendszerekkel szemben támasztott irányítási célok figyelembe vételével. Elsődleges elvárás természetesen a stabilitás, mégpedig aperiodikus viselkedéssel, túllendülések nélküli, gyors és pontos (hibamentes) alapjel követéssel.
A megoldásban bemutatunk az egyszerűsített linearizált vonóelemes átalakító mellett egy a valóságot jobban tükröző nemlineáris struktúrát. A linearizált modellhez „hagyományos” (PID struktúrájú), a nemlineárishoz pedig állapotvisszacsatolásos szabályozást tervezünk.
A rendszer működését ábrázoló „műszaki vázlat” alapján elkészíthetjük a struktúragráfot. A DC-motorból, hajtóműből, rugalmas tengelykapcsolóból, valamint a vonóelemes mozgatóból (két tárcsa, szíj és mozgatott tömeg) álló rendszer struktúragráfja az alábbi ábrán látható.
Az ábrákon (és a további modellekben) szereplő fizikai mennyiségek:
u |
[V] |
feszültség |
|
R |
[Ω] |
ellenállás |
|
L |
[H=Vs/A] |
induktivitás |
|
nv1=KM |
[Nm/A=Vs/rad]] |
az elektrodinamikai energiaátalakító (váltó) ún. motorállandója |
|
Ω |
[rad/s] |
szögsebesség (m index a motorra, 0 a hajtómű kimenetére, 1 index a motorral hajtott (r [m] sugarú) szíjtárcsára, 2 index a vonóelemmel mozgatott (szintén r [m] sugarú) szíjtárcsára vonatkozik) |
|
J |
[kg m2] |
tehetetlenségi nyomaték (a szögsebességhez hasonló indexeléssel) |
|
B |
[Ns/rad] |
transzlációs mechanikai rendszerben értelmezett csillapítási tényező (a szögsebességhez és a tehetetlenségi nyomatékhoz hasonló indexeléssel) |
|
nt = i |
a hajtómű mint energiaátalakító (transzformátor) állandója (módosítás) |
||
Kt |
[Nm/rad] |
a tengelykapcsoló torziós rugómerevsége |
|
nv2=r |
[m] |
a forgó és haladó mozgás közötti energiaátalakító (váltó) állandója, a szíjtárcsa sugara |
|
m |
[kg] |
a szíjjal mozgatott tömeg |
|
b |
[Ns/m] |
||
k |
[N/m] |
a szíj alsó részében a megnyúlás miatt értelmezhető transzlációs rugómerevség |
|
k1 |
[N/m] |
a vonóelem (bordásszíj) húzott ágában értelmezett, az elmozdulástól függő transzlációs rugómerevség |
|
k2 |
[N/m] |
a vonóelem (bordásszíj) húzott ágában értelmezett, az elmozdulástól függő transzlációs rugómerevség |
|
nv3=1/r |
[1/m] |
a haladó és forgó mozgás közötti energiaátalakító (váltó) állandója |
|
L1 |
[m] |
a terhelt szíjhossz |
|
L2 |
[m] |
a terheletlen szíjhossz |
Ugyan már a vázlatban is alkalmaztunk elhanyagolásokat (például a tengelykapcsolóban fellépő súrlódási veszteséget elhanyagoljuk, BH → 0), de modellünk még mindig igen összetett. Az energiatárolók száma a struktúragráf alapján, egyelőre összevonások nélkül: egy villamos (L), egy torziós rugalmas (K), négy torziós tehetetlenség (J), egy transzlációs mechanikai (m), valamint három transzlációs rugalmas (k). Utóbbiak közül kettő nemlineárisként modellezett. Összesen tíz energiatárolót számolhatunk össze, így gyakorlatilag analitikus módszerekkel kezelhetetlen magasabb rendű rendszermodellt kapunk.
Az összevonható mennyiségek és az egyes részegységek sajátságai figyelembe vételével egyszerűsíthetjük a gráfot.
a DC motor induktivitása mint energiatároló a rendszerben lévő többi tárolóhoz képest gyors dinamikájú (nagyságrendekkel kisebb időállandójú), ezért elhanyagoljuk
a transzlációs rugalmasságokat a 10. fejezet fejezetben ismertetett egyszerűsítéssel linearizáljuk és összevonjuk
|
(17.1) |
ahol kSP [N/mm] a vonóelem (szíj) egy milliméter szélességére vonatkoztatott specifikus rugómerevség, h [mm] a vonóelem szélessége, L1 [mm] a húzott (terhelt) ág hossza, L2 [mm] a terheletlen ág hossza
További egyszerűsítést tesz lehetővé a megfelelően kicsi tehetetlenségű nyomatékú szíjtárcsák választása, így a 2 indexű szíjtárcsát elhagyhatjuk a gráfból. Hasonló megfontolás alapján a hajtott (1 indexű) szíjtárcsát szintén elhanyagolhatjuk.
A következő lépésben transzlációssá alakítjuk a motort követő rotációs mechanikai részrendszert, így a struktúragráf a DC-motor és hajtómű egységre (hajtó részrendszer) és a transzlációs mechanikai rendszerként modellezett vonóelemes egységre (hajtott részrendszer) választható szét, amennyiben a hajtómű módosítása kellően nagy.
A motor-hajtómű egység működését hálózati módszerrel írjuk fel, ehhez az időtartománybeli jeleket átírjuk Laplace-operátoros tartományba.
Az elektrodinamikai energiaátalakító (váltó) egyenletei
|
(17.2) |
|
|
(17.3) |
A villamos részre felírható hurokegyenlet
|
(17.4) |
Az ellenállásra eső feszültség egyenletét és a megfelelő (indukált feszültség – szögsebesség kapcsolatot megadó) váltóegyenletet behelyettesítve
|
(17.5) |
A forgó mechanikai részre csomóponti egyenletet írunk fel, ahol Mv a másik váltóegyenlettel meghatározott „villamos” nyomaték, Mt a terhelésből származó nyomaték
|
(17.6) |
Behelyettesítve
|
(17.7) |
Laplace-transzformálva
|
(17.8) |
Mátrixegyenletként felírva
|
(17.9) |
Mivel a rendszer visszahatásmentes, Mt=0. Ezt szem előtt tartva például Cramer-szabállyal fejezhetjük ki Ωm értékét, majd a körfrekvencia és feszültség között felírható átviteli függvényt
|
(17.10) |
A motor-hajtómű rendszer átviteli függvénye
|
(17.11) |
A szögsebesség és sebesség közötti kapcsolat
|
(17.12) |
A vonóelemes mozgató hajtott szíjtárcsájára értelmezett transzlációs sebesség és a motorra kapcsolt feszültség közötti átviteli függvény egytárolós arányos jellegű
|
(17.13) |
A hajtó részrendszerre vonatkozó katalógusadatok és az azokból számított, a szimulációs modellhez szükséges erősítési tényező és időállandó
Elektromechanikus energiaátalakító (váltó) állandója |
KM = 8,64⋅10-3 (N⋅m)/A |
Motor ellenállása |
R = 24 Ω |
Hajtómű módosítása |
i = 76 |
A motor és hajtómű tehetetlenségi nyomatéka |
Je = 5,9⋅10-8 kg⋅m2 |
A motor és hajtómű csillapítási tényezője |
Be = 1,1⋅10-6 (N⋅m⋅s)/rad |
A szíjtárcsa sugara |
r = 4,82⋅10-3 m |
|
(17.14) |
A hajtott részrendszer modellezése során a hajtó rendszert keresztváltozó (sebesség) forrással helyettesítjük, ezért az azzal párhuzamosan kapcsolt rotációsból transzlációsba redukált tömeget és csillapítást elhagyhatjuk, mert erre a két elemre rákényszerítjük a forrás előírt értékét.
A sorba kapcsolt forgóból transzlációsba redukált tengelykapcsoló és az egyszerűsített vonóelem rugalmasság eredőjét jelöljük kr-rel. A sorosan kapcsolt rugók eredőjét reciprokok összegével számíthatjuk, jelen esetben két rugó eredőjénél az „x”-el jelölt „replusz” módszerrel számíthatjuk
|
(17.15) |
Csomóponti egyenletet felírva határozzuk meg az átviteli függvényt
|
(17.16) |
Kifejtve
|
(17.17) |
Laplace-transzformálva és átrendezve
|
(17.18) |
A hajtott rendszer másodrendű, átviteli függvénye
|
(17.19) |
A hajtott részrendszerre vonatkozó katalógusadatok és az azokból számított, a szimulációs modellhez szükséges erősítési tényező és időállandó
A terhelt szíjhossz |
L1 = 0,15 m |
A terheletlen szíjhossz |
L2 = 3⋅L1+2⋅r⋅π = 0,48 m |
A szíj szélessége |
h = 6 mm |
A szíj specifikus rugómerevsége |
ksp = 9155 N/mm |
A szíjtárcsa sugara |
r = 4,82⋅10-3 m |
A tengelykapcsoló torziós rugómerevsége |
Kt = 23 (N⋅cm)/rad |
A mozgatott tömeg |
m = 0,1 kg |
A mozgatott tömeghez kapcsolt csillapítás |
b = 5⋅10-3 (N⋅s)/m |
|
(17.20) |
A modellben szándékosan választottunk a fogazott szíj esetében olyan valósághoz közeli értékű rugómerevséget, ami az adott mozgatott tömeggel jól érzékelhető rezonanciát eredményez. A szabályozás egyik célja éppen ennek a rezonancia-hajlamnak a megszűntetése.
A rendszer átviteli függvénye a hajtó és a hajtott részrendszer soros eredője kiegészítve egy integrátorral, hiszen eddig a mozgatott rendszer sebességével számoltunk, de valójában az elmozdulásra vagyunk kíváncsiak, pozíciószabályozásról lévén szó.
|
(17.21) |
A LabVIEW 2009-ben készített szimulációs modellhez ismét a paraméteres átviteli függvény megadást választjuk. Az átviteli függvény együtthatók esetenként igen bonyolult összefüggését nem kézzel, hanem a Maxima programmal számoljuk. A Maxima által „számított” kifejezéseket egyszerűen kijelölve, majd a vágólapra másolva a LabVIEW megfelelő mezőibe illeszthető kifejezéseket kapunk, ahogyan ez az alábbi ábrán is látható (itt a Jegyzettömb programba illesztettük a másolt wxMaxima eredményeket). A pi kifejezést helyettesítjük π=3,14159265359 tetszőleges pontosságú értékével.
A képleteket és a paraméterek értékét bemásolva LabVIEW programunkba megkapjuk a szabályozó tervezéséhez szükséges szakasz átviteli függvényt. Célszerű a sebesség-pozíció konverzióhoz szükséges integrálást egyelőre kihagyni az átviteli függvényből. LabVIEW-ban egyszerűen ábrázolhatjuk a jellegzetes időtartománybeli válaszokat (a súlyfüggvényt és az átmeneti függvényt), a pólus-zérus térképet és a pólusok értékét, valamint frekvenciatartománybeli jellemző diagramokat (Bode és Nyquist).
Az átmeneti függvényből és a póluseloszlásból egyértelműen látszik, hogy a harmadrendű rendszer erősen lengő, a feladatnak nem felel meg dinamikai viselkedése (ld. fentebb). Vonóelemes mozgatásnál aperiodikus, gyors és pontos beállást várunk.
Először megvizsgáljuk a – most már integráló tulajdonsággal kiegészített – szakasz viselkedését a negatív visszacsatolású „szabályozási” körben, szabályozó nélkül.
Ha a szabályozót elhagyjuk (egységnyi átviteli tulajdonsággal helyettesítjük), a szakasz és a felnyitott kör átviteli függvénye megegyezik, így egybeesik Bode diagramjuk is.
Már a fázistartalék értéke alapján is sejthetjük, az átmeneti függvény pedig bizonyítja, hogy az erősen lengő szakaszt aperiodikus beállásúra változtatta a negatív visszacsatolás, azonban a „szabályozott” rendszer igencsak lelassult. A (17.9. ábra) ábrán a szakasz átmeneti függvénye 320 időegységnél „fejeződik be”, a LabVIEW CD Step response.vi automatikusan állította be az ábrázolás határát. Ugyanezzel a megoldással az egységnyi arányos szabályozóval kiegészített szakasz átmeneti függvényét kb. 1500 időegységig ábrázolja a program (17.12. ábra).
Célszerű soros integráló hatás nélküli PID-jellegű szabályozó struktúrát választani, hiszen az a szakaszban már van. Így a szakasz másodrendű lengő részében (a stabilitás szempontjából meghatározó domináns póluspárnál) helyezzük el a pólusokat áthelyező szabályozót.
A választott PID-jellegű struktúra a kettős töréspontáthelyező algoritmus. A szakasz két töréspontját (pólusát) a szabályozó két (a TA és TC időállandónak megfelelő) zérusa kompenzálja, az előírt dinamikai tulajdonságokat biztosító felnyitott szabályozási körbeli gyököket pedig a szabályozó (TB és TD időállandónak megfelelő) zérusai adják. Az Ac erősítési tényezővel biztosíthatjuk, hogy a vágási körfrekvencia az előírt stabilitási és gyorsasági feltételeket biztosítsa. A szakaszban lévő integráló tulajdonság miatt az ugrásszerű alapjelet a szabályozás mindenképpen hiba nélkül követi.
|
(17.22) |
A szakasz (egyszerűsített) átviteli függvény egy elsőrendű és egy lengő másodrendű, valamint a sebesség-pozíció átalakítás miatti integráló tag soros eredőjeként felírva
|
(17.23) |
Az alábbiakban a szabályozó egy lehetséges beállítását látjuk. A zárt kör aperiodikus jellegű, zérus maradó hibát eredményező átmeneti függvénye a szabályozó nélküli állapotnál jelentősen gyorsabb.
Az igényeknek megfelelően tovább változtathatjuk a szabályozó öt paraméterét, természetesen a szabályozáselméletben megismert elveket szem előtt tartva.
A szíj pozíciótól függő rugalmasságát a 12. fejezet fejezetben ismertetett elvek alapján vesszük figyelembe. A megfelelően átalakított struktúragráf az alábbiakban látható.
A korábbi megfontolásokhoz hasonlóan állítjuk elő – továbbra is visszahatásmentes hajtóművet feltételezve – a motor-hajtómű („mh”) részrendszer modelljét. Most nem a hajtott tárcsa v1 kerületi sebessége és a motorra kapcsolt uk feszültség közötti átviteli függvényt írjuk fel, a transzlációs v1 sebesség helyett az Ω1 szögsebességet használjuk.
|
(17.24) |
A hajtott tárcsa szögsebességét, tehetetlenségi nyomatékát és torziós csillapítását szintén a korábbi megfontolások alapján a transzlációs rendszerbe redukáljuk. Ezzel az igen egyszerűsített struktúragráf az alábbiak szerint alakul.
Mivel vizsgálatunkban nem a „2” indexű tárcsa szögsebességére vagyunk kíváncsiak, hanem a mozgatott tömeg vm sebességére, a forgó rendszert a már ismert elvek alapján redukáljuk. Így be kell vezetnünk az me eredő tömeget és a be eredő csillapítást az alábbiak szerint
|
(17.25) |
Ha elhanyagolható a tárcsa tehetetlenségi nyomatéka és csillapítása, az eredő tömeg a mozgatott tömeggel, az eredő csillapítás pedig a mozgatott tömeg súrlódásából adódó csillapítással egyezik meg.
A pozíciótól függő rugalmasság összefüggése a 12. fejezet fejezetben szereplő megfontolások alapján, xmax-al jelölve a teljes mozgatási hosszat, xm-mel a tömeg méterben mért pozícióját
|
(17.26) |
A redukált tömeggel és csillapítással felrajzolt struktúragráf és a motor-hajtómű részrendszer átviteli függvénye alapján felírhatjuk a rendszer állapottér modelljét.
A vm csomópontra
|
(17.27) |
Az egyes erők
|
(17.28) |
A hajtott tárcsa szögsebességére és kerületi sebességére vonatkozó összefüggés
|
(17.29) |
A motor-hajtómű rendszer átviteli függvényéből felírt differenciálegyenlet
|
(17.30) |
A mozgatott tömeg pozíciója sebességével kifejezve
|
(17.31) |
Válasszuk az állapotváltozók vektorát az alábbiak szerint
|
(17.32) |
Az állapottér modell főegyenlete
|
(17.33) |
Az állapottér modell segédegyenletéből csak a tömeg elmozdulására vonatkozó részre van szükségünk
|
(17.34) |
A 12. fejezet fejezetben szereplő adatokkal számíthatjuk az állapottér modell főegyenletében lévő rendszermátrixot és bemeneti vektort.
Elektromechanikus energiaátalakító (váltó) állandója |
KM = 5·10-2 (N⋅m)/A |
Motor ellenállása |
R = 15 Ω |
Motor induktivitása elhanyagolható |
L → 0 |
Hajtómű módosítása |
i = 1500 |
A motor és hajtómű tehetetlenségi nyomatéka |
Je = 2,33⋅10-5 kg⋅m2 |
A motor és hajtómű csillapítási tényezője |
Be = 10-3 (N⋅m⋅s)/rad |
A tengelykapcsoló torziós rugómerevsége elhanyagolható |
Kt → ∞ |
A motor-hajtómű részrendszer számított erősítési tényezője |
Amh = 5,71·10-3 rad/(V⋅s) |
A motor-hajtómű részrendszer számított időállandója |
Tmh = 0,020 s |
Az erősítési tényező képlete
|
(17.35) |
Az időállandó képlete
|
(17.36) |
A hajtott részrendszer táblázatos adatai között feltüntetjük a négy jellegzetes hosszúságot (a terheletlen ághosszakat) és a hozzájuk tartozó rugómerevséget, valamint a pozíciótól függő rugómerevség összefüggésében szereplő K-val jelölt erő dimenziójú mennyiséget.
A tárcsák fogszáma |
z = 28 |
A tárcsák fogtávolsága |
p = 5 mm |
A tárcsák sugara a zp=2rπ kifejezésből |
r = zp/(2rπ) = 22,28 mm |
„Holt” szakasz |
x0=25 mm |
Mozgatási tartomány |
xmax=800 mm |
A szíj szélessége |
h = 10 mm |
A szíj specifikus rugómerevsége (a szíj szélesség 1 mm-ére és a szíj 1 mm hosszára) |
ksp = 7,7·103 N/mm |
A szíjtárcsa sugara |
r = 4,82⋅10-3 m |
A tengelykapcsoló torziós rugómerevsége elhanyagolható |
Kt → ∞ |
A mozgatott tömeg |
m = 2 kg |
Súrlódásból adódó csillapítási tényező (tapasztalati érték) |
b = 5⋅10-2 (N⋅s)/m |
L 1 = x max + x 0 + r·π/2 |
L1 = 860 mm |
L 2 = x 0 + rπ/2 |
L2 = 600 mm |
L 3 = x max + x 0 + 2(r·π/2) + 2·x0 + xmozg + r·π/2 |
L3 = 1780 mm |
L 4 = x 0 + 2(r·π/2) + 2x0 + xmax + r·π/2 |
L4 = 980 mm |
k 1 = k sp ·h·L 1 |
k1 = 90 N/mm |
k 2 = k sp ·h·L 2 |
k2 = 128 N/mm |
k 3 = k sp ·h·L 3 |
k3 = 43 N/mm |
k 4 = k sp ·h·L 4 |
k4 = 78 N/mm |
K= x max / (k 1 + k 4 ) |
K = 1,344·105 N |
A fenti adatokkal a nemlineáris állapottér modell egyenletei
|
(17.37) |
Először a linearizált, pozíciótól nem függő rugómerevségű modellt elemezzük és tervezünk hozzá állapotvisszacsatolásos szabályozót. A linearizált rugómerevséget az L1 és L4 ághosszal számoljuk
|
(17.38) |
Ezzel a linearizált állapottér modell
|
(17.39) |
A LabVIEW-beli számítást megkönnyíti, ha a sebesség-pozíció miatt szükséges integrálást nem vonjuk be az állapottér modellbe. Mivel a szabályozandó rendszer integráló háromtárolós jellegű, a három tárolónak megfelelő pólusok áthelyezésével foglalkozunk. Az ezt biztosító állapotvisszacsatolásos kompenzációban így csak a három negatív valós részű pólussal (egy valós és egy konjugált komplex gyökpár) foglalkozunk. Az integráló hatásnak megfelelő nulla értékű pólust nem helyezzük át. Emiatt az állapottér modell kimenete a vm sebesség, amit sorba kapcsolva egy (egységnyi integrálási idejű) integráló taggal ugyanazt az eredményt kapjuk, mintha az integrálást bevonnánk az állapottér modellbe.
|
(17.40) |
Az integrálás nélküli szakasz jellegzetességeit szintén a National Instruments LabVIEW 2009 és a Control Design and Simulation Module segítségével elemezzük.
Először meghatározzuk a szakasz pólusait és ábrázoljuk komplex számsíkbeli elhelyezkedésüket, valamint meghatározzuk a szakasz átmeneti függvényét. Az átmeneti függvény erősen lengő tulajdonságú, ami vonóelemes pozícionálásnál elfogadhatatlan.
Az integráló tulajdonsággal kiegészített harmadrendű szakaszmodellt felnyitott szabályozási körként kezelve előállítjuk a (szabályozó nélkül vagy egységnyi arányos szabályozóval ellátott) zárt szabályozási kör átmeneti függvényét és pólustérképét. A zárt kör ugyan aperiodikus jellegű és az integráló hatás miatt maradó hiba nélkül követi az egységugrás alapjelet, viszont meglehetősen lassú. (Az automatikusan skálázott átmeneti függvényt a szakasz esetén hozzávetőleg 700, a zárt körnél pedig 70k=70000 időegységig ábrázolja) a program.)
A LabVIEW program következő – Szakasz pólusai – lapján a vízszintes és függőleges csúszkákkal (vagy digitális kijelzőjükbe közvetlenül beírva a választott értéket) állíthatjuk be a szakasz kívánt pólusait. Kiszámítjuk az eredeti és a megadott pólusokhoz tartozó, egységnyi erősítésűként kezelt átviteli függvényeket és ábrázoljuk egységugrás gerjesztésre adott válaszukat, valamint Bode diagramjukat.
Az új pólusokat megfelelően megválasztva eltüntethetjük a lengő jelleget és gyorsíthatjuk a rendszert. Természetesen a szabályozási körben a sebességből pozícióra áttérést biztosító integrálást is figyelembe vesszük majd.
A választott pólusokat biztosító állapotvisszacsatolás K-val jelölt mátrixát a Control Design csomag CD Ackermann.vi blokkjával határozzuk meg. Az Ackermann-képletet alkalmazó számítás bemenete az eredeti (harmadrendű) állapottér modell és a választott pólusok vektora, kimenete pedig az állapotvisszacsatolás mátrixa. Az alábbi ábrán igencsak vázlatos az állapotvisszacsatolás ábrázolása, a pontos összefüggéshez a szakasz általános állapottér modelljét használjuk (ahol a bemenet közvetlenül nem hat a kimenetre).
|
(17.41) |
A pólusáthelyezést biztosító állapotvisszacsatolás a v szorzótényező és a K visszacsatoló mátrix segítségével írható fel.
|
(17.42) |
A pólusáthelyezéssel kapott harmadrendű tagot kiegészítjük a sebesség-pozíció konverzió integráló hatásával és egy arányos szabályozót is beiktatunk a körbe, hogy kevesebb „próbálgatással”, gyorsabban kapjunk megfelelő viselkedésű zárt kört. A P-szabályozó létjogosultságát alátámasztja, hogy az integráló tag egységnyi integrálási ideje a zárt kör dinamikai tulajdonságait számunkra kedvezőtlenül befolyásolja, a szabályozó erősítését tulajdonképpen az integrálási idő reciprokának tekinthetjük és ezzel a felnyitott kör Bode-diagramon jól követhető jellegét igényeink szerint alakíthatjuk. Természetesen az állapotvisszacsatolás egyedül is elegendő a szakasztulajdonságok hasonló zárt kör viselkedést eredményező befolyásolására, de komolyabb „fejben számolást” igényel a pólusok eloszlása és az igen könnyen kezelhető szemléletes Bode-diagram kapcsolatának feltérképezése .
A szakasz állapotvisszacsatolásával (és az arányos szabályozóval) megfelelő viselkedésű zárt kört érhetünk el.
A Control & Simulation Loop struktúrában elhelyezett egységugrás jelgenerátorból, arányos szabályozóból, állapottér modellből és a különbségképzővel megvalósított egységnyi negatív visszacsatolásból álló hatásvázlatként adott modellünket szimulációs időlépésenként számítja a LabVIEW a választott differenciálegyenlet megoldóval (példánkban a Runge-Kutta 23-al).
A megoldás – ahogy az alábbi ábrán is látható – a Matlab Simulink nevű, valamint a Scilab Xcos grafikus modellezőjéhez hasonlít.
A LabVIEW-beli grafikus rendszermodell eredményei a megszokott módon XY grafikonban és az időlépésenként frissített Waveform Chart (hullámforma diagram) kijelzőn egyaránt ábrázolhatók.
A korábbi megfontolásoknak megfelelően a nemlineáris állapottér modellből elhagyjuk az xm elmozdulásra, mint állapotváltozóra vonatkozó egyenleteket.
|
(17.43) |
Az állapottér modell kimenetének választott vm elmozdulás integrálásával állítjuk elő az elmozdulást és ezt használjuk fel a rendszermátrix harmadik sorában szereplő elmozdulástól függő rugómerevség számításához. A korábban levezetett összefüggések alapján helyettesítve a rugómerevség kifejezését az állapottér modell mátrixai, pontosabban az (xm méterben adott elmozdulástól függő) A mátrix, a b oszlopvektor, a c sorvektor és a d skalár az alábbiak.
|
(17.44) |
A szimuláció kezdetén az A mátrixba az xm=0 m kiindulási pozíciónak megfelelő értékeket helyettesítjük.
Az előzőleg bemutatott Control & Simulation Loop struktúrában készített lineáris állapottér modellel adott szakaszú szabályozási kör szimulációs modelljéhez hasonlóan vizsgáljuk a nemlineáris rendszert is. Különbséget jelent, hogy minden szimulációs időlépésben kiszámítjuk a rendszermátrix értékét az xm elmozdulás pillanatnyi értékének felhasználásával. Az így kialakult – A mátrixában változtatott – állapottér modellből és a szakasz előírt pólusaiból az Ackermann-formulával számoljuk az állapotvisszacsatolás A és B mátrixot módosító K mátrixát és v skalárját. A minden szimulációs lépésben kétszeresen módosított állapottér modell négy mátrixát vezetjük be a State-Space szimulációs blokkba. A blokk skalár kimenetét (a mozgatott tömeg vm sebességét) integrálva kapjuk a tömeg rendszermátrixot befolyásoló xm elmozdulását.
Az elmozdulás visszacsatolásánál nem keletezik algebrai hurok, mert szimulációs blokkal számított jel visszavezetéséről van szó. (Az algebrai hurok azt jelenti, hogy egy változó értékének kiszámításához magát a változót használjuk fel).
Az ÁTM(t) állapottér modell (rózsaszín, cluster adattípusú) változóba folyamatosan kiírjuk a mátrixok pillanatnyi értékét és ezt az azonos nevű (kék színű, picture típusú) kijelzőben is „kirajzoltatjuk”. Az ÁTM(t) cluster előző szimulációs lépésbeli értékére szükségünk van az A mátrix xm-től függő módosításához, megtartva a másik három mátrix (B, C és D) értékét. Amennyiben közvetlenül visszavezetnénk az Ackermann összefüggéssel módosított állapottér modellt az A mátrix újraszámításába, algebrai hurok miatt nem működne a programunk. Ennek kiküszöbölésére a Memory blokkot kell használnunk, mert ezzel egy szimulációs időlépéssel korábbi értéket használhatunk az azonos időpillanatbeli helyett a nem szimulációs blokkokal végzett számításban.
A szimuláció körülményei, a modellben használt paraméterek, a szakasz előírt pólusai, a P-szabályozó erősítése és a szimuláció időtartama megegyezik a lineáris rendszer vizsgálatánál szereplőkkel. Mindkét modell megoldására a Runge-Kutta 23 differenciálegyenlet megoldót használjuk.
Az elmozdulás időbeli alakulását a szimuláció futása során Waveform Chart kijelzőn folyamatosan követhetjük. Az XY Graphi kijelzőn a futás közben gyűjtött időpont-jelérték párokat ábrázoljuk, miután a Control & Simulation Loop futása befejeződött.
A nemlineáris rendszer eredményeit a lineáris modell eredményeivel az onnan idemásolt, szintén XY Graph-ra rajzolt elmozdulás átmeneti függvény segítségével hasonlíthatjuk össze. Az ábrák alapján kiderül, hogy a linearizált modell meglehetősen jól közelíti a nemlineárist. Az XY Graph kijelzőkön ábrázolt adatokra 16-odfokú polinomot fektetve és azonos időpontokra számítva a polinomiálisan közelített átmeneti függvényeket 0,02 maximális eltérést tapasztalunk a két – 0 és 1 közötti értékeket felveő – átmeneti függvény között a tranziens tartományban.
Szintén futás közben követhetjük az állapottér modell alakulását a szabályozási kör sematikus ábráján. A kiindulási állapottér modellel összehasonlíthatjuk az A és B mátrix folyamatosan változó pillanatnyi értékét, valamint követhetjük a három állapotváltozó és az elmozdulás alakulását, nemkülönben az állapotvisszacsatolás K és v paramétereit.
[17.1.] LabVIEW 2009 Help http://www.ni.com/pdf/manuals/371361f.zip.
[17.2.] LabVIEW Control Design User Manual, June 2009 http://www.ni.com/pdf/manuals/371057g.pdf.
[17.3.] LabVIEW 2009 Control Design and Simulation Module Help http://www.ni.com/pdf/manuals/371894d.zip.
[17.4.] Maxima, a Computer Algebra System: Documentation http://maxima.sourceforge.net/documentation.html.
[17.5.] COMA, Control Engineering with Maxima és Regelungstechnik mit Maxima http://www.austromath.at/daten/maxima/zusatz/Control_Engineering_with_Maxima.pdf.
[17.6.] The art of control engineering. Addison-Wesley. 1997. ISBN 0-201-17545-2.