Kuczmann Miklós

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


IV.2.5.6. A folytonos idejű PID-szabályozók mintavételes realizálása

A PID-szabályozók mintavételes realizálása különböző közelítésekkel történhet. Itt az Tustin-képletet használjuk az implementációban, ahol jelöli a két egymást követő mintavétel között eltelt időt.
A PD-szabályozó kimenőjele így
 
 
amit az alábbi programsor állít elő:
 
u = -(dt-2*TDv)/(dt+2*TDv)*u_old+
KPD*(dt+2*TD)/(dt+2*TDv)*error+
KPD*(dt-2*TD)/(dt+2*TDv)*error_old;
 
A paramétereket a programban így adhatjuk meg:
A PID-szabályozó beavatkozó jele az alábbi:
 
 
amit a következőképp lehet implementálni:
 
u = 4*TDv/(dt+2*TDv)*u_old+(dt-2*TDv)/(dt+2*TDv)*u_old2+
KPID*((dt+2*TD)*(dt+2*TI)/2/TI/(dt+2*TDv)*error+
(dt*dt-4*TI*TD)/TI/(dt+2*TDv)*error_old+
(dt-2*TD)*(dt-2*TI)/2/TI/(dt+2*TDv)*error_old2);
 
Itt , amely sor a program elejére kerül, a változók definiálása részhez.
Szükség van az , és az , változók frissítésére. Ezeket az számítását követően írjuk felül: , , illetve , . A változó (a programban ) a két mintavétel közt eltelt idő, amelynek mérése a függvény elején történik:
 
unsigned long t1 = micros();
float dt = (t1-t0)/1e6;
t0 = t1;
 
A változó inicializálása a függvényben történik meg.
A IV.38. ábrán és a IV.39. ábrán a 80 mm, 120 mm és 160 mm referenciajelre adott mért és számított ugrásválaszok összehasonlítása látható a PD-szabályozásra és a soros PID-szabályozásra. A golyó kb. 40 mm kezdeti állapotból indul, a szimulációt a mérésből nyert kezdeti értékekkel indítottuk. Jól látható, hogy a PD-szabályozó a tényleges fizikai rendszeren nagyon pontatlan eredményt ad maradó hibával, habár az elméleti modellel számított statikus hiba nulla, hiszen az elméleti modell kétszeresen integráló. Ez a nem modellezett jelenségekből fakad, mert a kettős integrátor típusú rendszerhez több egyszerűsítésen át jutottunk el. Kiemelendő viszont, hogy a stabilizálás megtörténik. A PID-szabályozó azonban az extra integrátornak köszönhetően a fizikailag megépített rendszeren is pontos statikus eredményt szolgáltat. A PID-szabályozó megvalósításának itt van egy nagy hátránya, amely a tranziensben erősen kiütközik, nevezetesen, hogy az ugrásválasz negatív irányba indul el, majd irányt váltva éri el állandósult állapotbeli értékét, amely azon túl, hogy stabil, pontos is. Az előálló zárt szabályozási kör ún. nem minimumfázisú rendszerként viselkedik, jelentősen lassítva a szabályozást.
 
IV.38. ábra. A PD-szabályozó állandósult állapotban nagy hibával követi a referenciajelet.
 
IV.39. ábra. A PID-szabályozó stabil és pontos irányítást tesz lehetővé.
 

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