Kuczmann Miklós

Lineáris rendszerek és szabályozások Arduino UNO mikrovezérlővel


IV.1.8.1. Mintavételes állapotmegfigyelő tervezése.

Az állapotmegfigyelő és az állapot-visszacsatolás tervezéséhez szükség van a (IV.6) állapotváltozós leírásban szereplő folytonos idejű modell diszkretizálására. Az egységugrás-ekvivalens mintavételes modell előállítását a Matlab utasításával meg lehet valósítani:
 
 
ahol a diszkrét idejű modell rendszermátrixa, és a diszkrét idejű modell bemeneti és kimeneti vektora. Utóbbi megegyezik a folytonos idejű modell kimeneti vektorával. A rendszermátrix és a bemeneti vektor viszont függ a mintavételi periódusidő értékétől.
A utasításban definiálni kell a mintavételi periódusidőt. A továbbiakban (), az alábbi Matlab utasításokat kell használni:
 
DI_rendszer = c2d(ss(A,b,c,D),Ts);
FI = DI_rendszer.a;
Gamma = DI_rendszer.b;
 
Így kapjuk a diszkrét idejű modellt:
 
 
A rendszermátrix sajátértékei, azaz a rendszer pólusai az utasítással a következők: és .
A folytonos idejű megfigyelő differenciálegyenlete az alábbi:
 
(IV.51)
 
ahol
 
(IV.52)
 
miután a vektort a pólusáthelyezéssel megtervezzük, feltéve persze, hogy a rendszer megfigyelhető. Ezt a megfigyelőt a továbbiakban nem alkalmazzuk, mert a (IV.51) differenciálegyenlet megoldása mikrovezérlőn meglehetősen időigényes, helyette a diszkrét idejű megfigyelőt implementáljuk. A folytonos idejű megfigyelőt csupán a diszkrét idejű megfigyelő validálására használjuk.
A megvalósítás során a IV.23. ábrán látható mintavételes diszkrét idejű állapotmegfigyelőt alkalmazzuk. A DC motort reprezentáló blokk bemenetén ekkor értelemszerűen a tartószerv, kimenetén a mintavételező szerv is helyet foglal.
 
 
A vizsgált állapotmegfigyelő differenciaegyenlete az alábbi:
 
(IV.53)
 
ahol
(IV.54)
 
miután a vektort pólusáthelyezéssel megtervezzük, amennyiben a rendszer megfigyelhető. A megfigyelő blokk tehát a (IV.53) szerinti számítással előállítja az állapotvektor közelítését.
A jelen diszkrét idejű rendszer megfigyelhető, megfigyelhetőségi mátrixa
 
 
aminek rangja maximális: . A rendszer állapotváltozóinak mérésére tehát állapotmegfigyelő tervezhető. A megfigyelhetőségi mátrix Matlab környezetben az , annak rangja pedig a utasítással határozható meg.
A vektort Ackermann képletével határozzuk meg,
 
(IV.55)
 
ahol a megfigyelhetőségi mátrix inverzének a transzponáltja szerepel, és a mátrixpolinom a megfigyelőpolinomból írható át. A két, általunk definiált sajátértékkel (pólussal) ez a polinom felírható, mint . A megfigyelő ezen pólusait például a helyre helyezve, a Matlab utasítását használva az alábbi utasításokkal megtervezhető a megfigyelő:
 
G = acker(FI',c',[0.05;0.05])';
H = Gamma;
F = FI-G*c;
 
IV.24. ábra. A motor áramának és fordulatszámának mért és állapotmegfigyelővel számított időfüggvényeinek összehasonlítása.
 
Ezután kapjuk, hogy
 
 
A IV.13. ábránál már említett lépcsős gerjesztésre adott áramjel és fordulatszám állapotmegfigyelővel számított közelítése látható a IV.24. ábrán. A mért áramjel meglehetősen zajos, gyakorlatilag használhatatlan, de a folytonos idejű megfigyelővel és a diszkrét idejű megfigyelővel számított áramok közel esnek egymáshoz. A mért és megfigyelt fordulatszámok tökéletesen egybeesnek.
A szabályozó működtetése során az állapotvektor helyett az megfigyelt állapotvektort használjuk.
 

Lineáris rendszerek és szabályozások Arduino UNO mikrovezérlővel

Tartalomjegyzék


Kiadó: Akadémiai Kiadó

Online megjelenés éve: 2026

ISBN: 978 963 664 238 9

A könyv a lineáris rendszerek és lineáris szabályozások témaköreit dolgozza fel azzal a céllal, hogy az elméleti ismereteket egyszerűen kivitelezhető gyakorlati problémák megoldásával támassza alá, különös hangsúlyt fektetve ezért az Arduino UNO mikrovezérlő használatára. Fontos célunk, hogy a bemutatott demonstrációs eszközök egyszerűen kivitelezhetőek legyenek, így az eredmények könnyen rekonstruálhatóak, ugyanakkor jó alapot biztosítanak a továbblépéshez, bonyolultabb berendezések építéséhez, és az elmélet helyes alkalmazásához.

Az első rész a felhasznált hardvereket és szoftvereket mutatja be. A Matlab alapvető jelentőségű rendszerek analízisében, szabályozások tervezésében, és a különféle szimulációkban. A könyvbeli példákat Matlab környezetben dolgoztuk ki. Ezek bemutatása nagyon részletes, a példák nagyban segítik az elmélet megértését. Az Arduino UNO mikrovezérlőre és a hozzá kapcsolható egyéb hardverekre egyszerűségük és kedvező áruk miatt esett a választás. A Matlab környezetben tervezett szabályozókat, illetve a méréseket ezzel a mikrovezérlővel valósítjuk meg.

Számos nagyon jó könyv létezik, amelyek a szükséges mélységben vezetik be az Olvasót a Jelek és rendszerek, illetve a Szabályozástechnika témakörökbe. Néhányat a könyv végén található irodalomjegyzékben megadunk. Szándékosan csak magyar nyelvű könyveket sorolunk itt fel, a témakör hazai és nemzetközi irodalma óriási.

A második részben a Jelek és rendszerek témakörét dolgozzuk fel, ahol az elméleti háttér mellett illusztratív példákat hozunk, melyek segítségével könnyebben érthetővé válnak a tárgyalt fogalmak és módszerek. A témában számos kiváló irodalom fellelhető, melyekre hivatkozva tömör összefoglalását adjuk a témakörnek.

A harmadik rész a Szabályozástechnika területét járja körbe, ismét csak nagyon tömören, a klasszikus PID szabályozóktól az állapottér alapú szabályozásokig mutatjuk be a módszereket. Az elméleti alapokat egy konkrét példa illusztrálja.

A negyedik rész két esettanulmányt tárgyal nagyon részletesen. Az első egy egyenáramú motor, melynek modellezését, paramétereinek méréseken alapuló identifikálását és fordulatszámának szabályozását mutatjuk be. A másik egy instabil rendszer, egy lejtőn guruló golyó stabilizálását valósítja meg. Elvégezzük a demonstrációs eszközök aprólékos matematikai modellezését, a szabályozási körök elméleti tervezését, majd gyakorlati megvalósítását.

Reményeink szerint a könyv az Olvasó segítségére lesz a lineáris rendszerek és szabályozások megismerésében, valamint gyakorlatban való alkalmazásukban. A könyv jól használható az egyetemi mérnöki és informatikus oktatásban, különösen a témakörbe vágó szakdolgozatok, diplomamunkák és a hallgatói kutatómunka területén.

A közölt mintaprogramok szabadon felhasználhatók, továbbfejleszthetők.

Hivatkozás: https://mersz.hu/kuczmann-linearis-rendszerek-es-szabalyozasok-arduino-uno-mikrovezerlovel//

BibTeXEndNoteMendeleyZotero

Kivonat
fullscreenclose
printsave