Kuczmann Miklós

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


IV.2.6.2. Állapot-visszacsatolás tervezése pólusáthelyezéssel.

A diszkrét idejű rendszer irányítható, az irányíthatósági mátrix a Matlab függvényének meghívásával számítható:
 
 
aminek rangja maximális: , azaz a rendszer irányítása állapot-visszacsatolással megvalósítható (). Ez a lépés csupán a stabilizálást oldaná meg, az állapot-visszacsatolás önmagában stabilizálásra alkalmas. A pontos egységugrás-típusú referenciakövetés érdekében az állapot-visszacsatolást integrátorral egészítjük ki. Az így előálló rendszer a IV.54. ábrán látható.
 
IV.54. ábra. A golyóegyensúlyozást megvalósító szabályozási kör megfigyelővel, állapot-visszacsatolással és integrátorral.
 
Az integrátorral kiegészített, irányítható zárt szabályozási kör pólusait a , illetve a helyre áthelyezve, az alábbi Matlab utasításokat használva
 
FIh = [FI zeros(2,1); c*Ts 1];
Gammah = [Gamma; 0];
k = acker(FIh,Gammah,[p1;p2;pcinf]);
 
a következő erősítéseket kapjuk:
 
 
Ebben az elrendezésben az tapasztalható, hogy az erősítések ezen nagyságrendje a viszonylag gyors működés mellett biztosítja azt is, hogy a szervomotor nem rángatja erőteljesen a rudat, s így a pingponglabda nem emelkedik el a rúdtól.
A 80 mm, 120 mm és 160 mm referenciajelre adott mért és számított ugrásválaszok a IV.55. ábrán láthatóak.
A megfigyelő és az állapot-visszacsatolás paramétereit az Arduino kód elején a következőképp definiálhatjuk:
 
float F[4] = {-0.1616, 0.1000, -3.3734, 1.0000};
float G[2] = {1.1616, 3.3734};
float H[2] = {-0.0063, -0.1261};
 
float k[3] = {-9.4342, -4.6552, -8.6412};
float d = 0;
 
A függvényben a következő sorok valósítják meg a megfigyelőt és a beavatkozó jel számítását:
 
d = d + error*Ts;
xk0 = F[0]*xk[0] + F[1]*xk[1] + G[0]*r/1000 + H[0]*u;
xk1 = F[2]*xk[0] + F[3]*xk[1] + G[1]*r/1000 + H[1]*u;
xk[0] = xk0;
xk[1] = xk1;
 
u = -(k[0]*xk[0]+k[1]*xk[1])+k[2]*d;
 
IV.55. ábra. Az Ackermann-képlettel tervezett szabályozó stabil és pontos irányítást biztosít.
 

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