Kuczmann Miklós

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


IV.2.2. A mérőrendszer bemutatása

A lejtőn egyensúlyozott golyó rendszerének vizsgálatára és a lineáris szabályozási módszerek szintézisére épített laboratóriumi modell fényképe a IV.29. ábrán látható.
Az hosszú rúdon a golyó úgy mozoghat, hogy középpontja a szenzortól minimálisan , maximálisan távolságra lehet. A rúd tömege . A golyó itt egy pingponglabda, sugara , tömege . A motor tengelyéhez rögzített kar hossza . A motor karjához erősített toldalék a rúdhoz a rúd tengelyétől távolságban csatlakozik.
 
IV.29. ábra. A lejtőn egyensúlyozott golyó rendszerének vizsgálatára és szabályozására készített laboratóriumi modell.
 
Ezen adatok ismeretében a (IV.70) állapotváltozós leírás Matlab környezetben a következőképp definiálható:
 
g = 9.81; d = 16.5/1000; l = 77/1000;
a = 3/5*g*d/l; % a = 1.2613
A = [0 1;0 0]; b = [0;-a]; c = [1 0]; D = 0;
FI_rendszer = ss(A,b,c,D);
 
A (IV.72) átviteli függvény definiálása pedig a következőképp történhet:
 
WP = tf(-a, [1 0 0]);
 
A szükséges Matlab utasításokat lépésről lépésre mutatjuk be.
A rudat mozgató motor egy SG90 mikroszervomotor, a távolságmérő szenzor pedig egy VL53LO/1XV2 lézeres távolságérzékelő. A méréseket és a szabályozást egy Arduino UNO mikrovezérlő végzi.
A szervomotor az Arduino környezethez jól illeszkedő egyszerű SG90 mikroszervomotor, amelynek tengelyét ebben az alkalmazásban a vízszinteshez képest maximálisan -ban lehet elforgatni mindkét irányba. A motor egyszerűen a szögelfordulás értékével vezérelhető, a programban a szög értékét kell megadni egész értékű fokban.
A motort vezérlő függvények az sorral építhetők be. A programot lépésről lépésre építjük fel.
A (IV.69) összefüggésben használt egyszerűsítő feltételezést a megépített modell esetén méréssel ellenőriztük. A szervomotor tengelyét a vízszintestől felfelé is és lefelé is -onként beállítottuk a tartományban. Minden beállításnál lemértük a motor tengelyére erősített hosszúság kar és a rúd felfüggesztési pontjában (ami távolságra van a rúd tengelyétől) a függőleges irányú elmozdulást, majd meghatároztuk a és az szögeket, s kiszámítottuk a hányadost. Ez az érték a vizsgált tartományban jó közelítéssel visszaadja az értéket, -on belüli hibával.
Ebben az alkalmazásban felhasznált lézeres távolságmérő szenzor az Arduino környezethez könnyedén illeszthető VL53LO/1XV2 jelzésű szenzor, amely a C++ nyelvű programba a sorral építhető be.
Használat előtt a szenzor linearitását érdemes megvizsgálni. A golyót -enként rögzítettük a intervallumban. Minden pozícióban 20 másodpercen keresztül mintavételi periódusidővel mértük a távolságot, majd meghatároztuk a 200 mérési eredmény átlagát. Ez látható a IV.30. ábrán, ahol az elméleti lineáris karakterisztikát is feltüntettük. A függőleges tengelyen a beállított távolságot, a vízszintes tengelyen a mért távolságértéket mértük fel. Jól látható, hogy a szenzor a jelen elrendezésben távolságig elenyésző hibával mér, a beállított és a mért távolságérték jó egyezést mutat, de felett a szenzor néhány mm-es hibát vét, a beállított értéknél kisebb értéket ad. Ezt a hibát a mérést követően korrigálni fogjuk.
 
IV.30. ábra. A távolságmérő szenzor linearitásának ellenőrzése.
 
IV.31. ábra. A különbség és annak harmadfokú közelítése.
 
A különbséget ábrázoljuk a mért távolság függvényében a IV.31. ábrán, és az azt közelítő harmadfokú polinomot.
A harmadfokú polinommal korrigált távolságérték jól használható a vizsgálatok során:
 
(IV.73)
 
ahol , , , . Ezen értékeket a Matlab Basic Fitting Toolbox segítségével határoztuk meg.
 

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