Budapesti Műszaki és Gazdaságtudományi Egyetem Irányítástechnika és Informatika Tanszék
Varga Ádám
ROBOTOK ÉS NEMLINEÁRIS MECHATRONIKAI RENDSZEREK PREDIKTÍV IRÁNYÍTÁSA (PREDICTIVE CONTROL OF ROBOTS AND NONLINEAR MECHATRONIC SYSYTEMS) Ph. D. értekezés tézisei Témavezető: Dr. Lantos Béla Budapesti Műszaki és Gazdaságtudományi Egyetem Irányítástechnika és Informatika Tanszék Műegyetem, 2008
Budapest, 2008. május
[6]
Rawlings, J.B. and Muske, K.R. (1993). The stability of constrained receding horizon control. IEEE Trans. Automatic Control, 38, 1512-1516.
[7]
J.M. Maciejowski: Predictive Control with Constraints, Pearson Education, 2002.
[8]
V. M. Zatsiorsky, Kinetics of Human Motion, Human Kinetics Ltd (UK), 2002.
[9]
Zoltán Bejek - Róbert Paróczai - Árpád Illyés – Rita M. Kiss (2005). The influence of walking speed on gait parameters in healthy people and in patients with osteoarthritis. Journal Knee Surgery, Sport Traumatology, Arthroscopy 14: 612-622
1
Bevezető ................................................................................................. 1
[10] Kiss RM, Kocsis L, Knoll Zs (2004) Joint kinematics and spatial temporal
2
Kitűzött kutatási feladatok .................................................................. 3
3
A vizsgálatok módszerei ....................................................................... 4
4
Az új tudományos eredmények összefoglalása................................... 5
parameters of gait measured by an ultrasound based system. Medical Engineering &Physics 26: 611-620
TARTALOMJEGYZÉK
[11] Allgöwer,F. and A. Zheng ed. (2000). Nonlinear predictive control. Birkhäuser,
Basel.
[12] C. W. Musser, “Strain wave gearing,” U.S. Patent 2 906 143, 1955.
1. TÉZISCSOPORT ......................................................................................... 5
[13] H. D. Taghirad, and P. R. Belanger: “Modelling and Parameter Identifcation of
Harmonic Drive Systems,” Dynamic Systems, Measurement, and Control 120, No. 4, pp. 439-444, 1998.
2. TÉZISCSOPORT ......................................................................................... 8
[14] L. Lemmer, B. Kiss, and I. Janosi: “Modeling, Identification, and Control of
3. TÉZISCSOPORT ....................................................................................... 11
Harmonic Drives for Automotive Applications,” Proc. IEEE Int. Conf. on Intelligent Engineering Systems, INES'06, London, pp. 92-97, 2006.
[15] P. Rózsa: “Lineáris Algebra és Alkalmazásai”, Műszaki Könykiadó, Budapest,
1974
19
4. TÉZISCSOPORT ....................................................................................... 14 5
Alkalmazások...................................................................................... 16
6
Irodalomjegyzék ................................................................................. 18
6 1
Irodalomjegyzék
Bevezető Saját publikációk
Általános mérnöki törekvés a különféle rendszerek optimális viselkedésének megközelítése. Sajnos a nemlineáris dinamikus rendszerek optimális szabályozása nehéz probléma mind a tervezés, mind a megvalósítás során (lásd Pontrjagin-féle maximum elv, vagy Bellman dinamikus programozási módszere). A probléma nehézségeink áthidalására egy kísérlet a modell alapú prediktív irányítás. A prediktív irányítás alapötlete egy optimális felnyitott körbeli irányítás tervezése véges irányítási és predikciós horizont méret mellett. Ebben az esetben a felnyitott körbeli tervezés jelentős egyszerűsítést jelent a zárt körbeli tervezéshez képest a maximum elv vagy a dinamikus programozás alapján. A prediktív irányítási algoritmus eredménye egy olyan beavatkozó jel sorozat a horizonton belül, amely optimalizálja a költségfüggvény értékét felhasználva a lényeges jelek modellre épülő jóslását. A felnyitott körben optimális bemenőjel sorozat első eleme zárt körben kiadásra kerül, és a horizont tovább mozdul előre. Ez a folyamat ciklikusan ismétlődik [1], [7], [11]. Nemlineáris
rendszerek
esetén
mindkét
probléma
(a
beavatkozó
jel
optimalizálása és a predikció) szorosan összekapcsolódik, és a megoldás iterációt igényel a horizonton belüli optimalizálási lépésben is. Mivel a beavatkozó jel
[s1] A. Varga, B. Lantos: “Predictive Control of Harmonic Drive in Automotive Application”, Journal of Advanced Computational Intelligence and Intelligent Informatics, Fuji Press, Japan, Vol. 11., No.9, pp. 1165-1172, 2007 [s2] A. Varga, B. Lantos: “Model Based Predictive Control of Underactuated Nonlinear Mechatronic Systems”, Periodica Polytechnica El. Eng., 49:(1-2), pp. 123-140, 2005 [s3] A. Varga, B. Lantos: “Predictive Control of Nonlinear Systems”, Proceedings of 6th International Carpathian Control Conference ICCC’05, Miskolc, Vol. 1, pp. 57-62, 2005. [s4] A. Varga, B. Lantos: “Eigenvalue Properties of Discrete Time Linear Receding Horizon Control Systems,” Proceedings of IEEE International Conference on Mechatronics, Budapest, pp. 531-536, 2006. [s5] A. Varga, B. Lantos: “Predictive Control of Powered Lower Limb Prosthetic”, Proceedings of International Conference of Climbing and Walking Robots, CLAWAR, Brussels, Belgium, pp. 204-214, 2006. [s6] A. Varga: “Elosztott szimulációs környezet tervezése és implementálása robotirányító algoritmusok teszteléséhez”, Proceedings of the International Conference MicroCAD, Miskolc, Vol. K. pp. 407-412, 2004. [s7] A. Varga: “Study of integrated control related patents in automotive industry and real-time implementation issues,Patent and real-time implementation study”, Elektronikus jármű és járműirányítási tudásközpont, RET 3.3 projekt, technical report, 2005
felnyitott körben kerül kiszámításra majd zárt körben kerül alkalmazásra, ezért stabilitási problémák léphetnek fel. Mérnöki szempontból világos, hogy a horizont növelésével a rendszer stabilitásának esélye növelhető, viszont a horizont hosszának növekedésével nő a számítási idő és a probléma komplexitása. A prediktív szabályozás problémája egyszerűbb, ha a rendszer lineáris és időinvariáns (LTI) vagy olyan folyamatszabályozási rendszer, melynek időállandói nagyok és az optimalizálásra rendelkezésre álló idő akár több 10 másodperc is lehet. LTI rendszerek esetében a költségfüggvény optimális megoldása felírható a
A tézisfüzetben hivatkozott irodalom [1]
Camacho, E. F. and C. Bordons (2000). Model predictive control. Springer, London.
[2]
Rossiter, J.A. et al. (1998). A numerically robust state-space approach to stable-predictive control strategies. Automatica, 34, 65-73.
[3]
Lantos, B. (2003). Control systems theory and design. Vol. II. Advanced control systems (in Hungarian). Hungarian Academic Press, Budapest.
[4]
Mosca, E. and Zhang, J. (1992). Stable design of predictive control. Automatica, 28, 1229-1233.
[5]
Åström, K.J. and Furuta, K. (2000). Swinging up a pendulum by energy control. Automatica, 36, 287-295.
beavatkozó jel függvényeként, amelyet ki lehet használni az optimalizálás során. Sajnos robotok, járművek és sok más mechatronikai rendszer nemlineáris és gyors dinamikus rendszer, ahol a szükséges mintavételi idő nagyságrendileg 1ms-50ms.
1
18
Aktív alsó végtagprotézis LTV linearizáláson alapuló prediktív irányítása mellett
vizsgálatokat
végeztem
a
térdben
található
elektromos
motor
Diszkrétidejű nemlineáris dinamikus rendszerek mozgó horizontú prediktív
teljesítményének megválasztására. Bemutattam egy ilyen protézis megvalósításakor
irányítása véges horizont esetén egy nemlineáris optimalizálási feladat véges
megoldandó technikai problémákat és megoldási lehetőségeiket.
dimenzióban, amely az ún. nemlineáris programozási feladat. MATLAB
Gépjárművek kormányrendszere számára kifejlesztett prediktív irányítási módszert
alkalmaztam
egy
reális
SIA
(SuperImposed
környezetben a feladat megoldható az Optimization Toolbox fmincon függvényével
Actuator)
nemlineáris korlátozások esetén is. Speciálisan, ha a rendszer lineáris, a
kormányrendszerben, amely hullámhajtóművet alkalmaz. A dinamikus rendszer
költségfüggvény kvadratikus és a korlátozások lineáris egyenlőségek és/vagy lineáris
ebben az esetben teljesen aktuált volt (a beavatkozó jelek és a szabadságfokok száma
egyenlőtlenségek
SIA rendszer esetén megegyezik). Az irányítási módszer megvalósításra került a
optimalizálási feladat, amely a quadprog függvénnyel megoldható. Vannak azonban
alakjában
adottak,
akkor
a
probléma
egy
kvadratikus
ThyssenKrupp Presta Hungary Kft cégnél. A beágyazott irányító rendszer dSPACE
lényeges korlátozó tényezők, ha magas szintű fejlesztési környezetről indulva, mint
AutoBox platformra épült fel.
amilyen a MATLAB/Simulink, beágyazott irányítást kell létrehozni.
A kutatási eredmények nemzetközi és hazai idegen nyelvű folyóiratcikkek és
A MATLAB/Simulink és a toolboxaik licensz-kötelesek, és elhagyván ezt a
nemzetközi konferencia előadások révén váltak ismertté a nemzetközi tudományos
környezetet és stand-alone implementációt létrehozva, amely nem igényli a licenszet,
életben. A kutatási eredmények beépültek az Országos Tudományos Kutatási
csak a MATLAB által támogatott Windows, UNIX és Linux standard operációs
Alprogram
korszerű
rendszerekre lehet áttérni a Matlab Compiler segítségével. Valósidejű operációs
irányításelméletének, navigációjának és az intelligencia növelésének kutatása” című
rendszerekre való áttérés, mint amilyen például a QNX, amely képes ms
lezárt és az OTKA K 71762 (2008-2012) “Autonóm földi, légi és vízi robotok
nagyságrendű időzítések precíz kezelésére is, a MATLAB által nincs támogatva.
korszerű irányításelmélete és mesterséges intelligencia eszközei“ című jelenleg is
Ezért minden MATLAB alatt kifejlesztett és tesztelt implementációt újra kell írni
folyó kutatási projektek eredményeibe.
C/C++ nyelven, és újra tesztelni a QNX valósidejű operációs rendszer alatt. További
OTKA
T
042634
(2003-2006)
“Autonóm
robotok
probléma az is, hogy az újabb MATLAB verziók, mint az R2006a és folytatásai nem C/C++ nyelvre, hanem egy titkos belső kódra fordítanak, melyet a futtató rendszer tud csak interpretálni. A MATLAB/Simulink alatt kifejlesztett implementációk kifordíthatók ugyan a Real Time Workshop és Target Compiler-ek segítségével a beágyazott irányítás processzorára (ha létezik hozzá Target Compiler a Simulink alatt), de a Simulink alatt kifejlesztett blokkokban csak C-ben megírt S-függvények szerepelhetnek, és ami még fontosabb, nem használhatók a toolboxok szolgáltatásai. Ez azt jelenti, hogy újra kellene írni olyan szolgáltatásokat C/C++ nyelven (amelyek aztán a C-ben megírt S-függvényekbe beágyazhatók), mint a nemlineáris vagy kvadratikus programozási feladat megoldása. Hasonló okok miatt a MATLAB/Simulink alá fejlesztett Predictive Control Toolbox sem jöhet szóba nemlineáris dinamikus
17
2
Circulat spline position [rad]
eszközéül, mivel egyrészt csak LTI rendszerek mozgó horizontú prediktív
Circulat spline position [rad]
rendszerek beágyazott prediktív irányításának fejlesztési és implementálási irányítására készült és nem támogatja a horizont kezdetén történő újra linearizálást, másrészt a Real Time Workshop nincs felkészítve a kifordítására beágyazott processzorokra. A kutatás során fontos szempont volt a magas szintű tervezési lehetőségek és
ugyanakkor
a
rendelkezésre
álló
eszközök
korlátainak
figyelembevétele is.
balra: ugrás nyomaték gerjesztés, jobbra: szinusz nyomaték gerjesztés
Kitűzött kutatási feladatok
Flex spline torque [Nm]
2
Time [s]
Time [s]
8. ábra. Számított pozíció referencia (folytonos) és mért (szaggatott) integrátorral kiegészítve,
A szabályozások valósidejű megvalósítása gyakran olyan kényszereket jelent az alkalmazás során, mint a statikus memória foglalás, rövid és determinisztikus
Flex spline torque [Nm]
kiaknázása,
számítási idő. Napjaink számítógépei egyre gyorsabbak, ami által a számítási idő
Time [s]
Time [s]
egyre csökken, így egyre kifinomultabb szabályozási algoritmusok lesznek
9. ábra. Számított nyomaték referencia (folytonos) és mért (szaggatott), balra: ugrás nyomaték
alkalmazhatóak [s7]. Ennek ellenére a fenti korlátozások gondot okoznak olyan
gerjesztés, jobbra: szinusz nyomaték gerjesztés
módszerek számára, amelyek online numerikus optimalizálást használnak, mint a prediktív irányítás, különösen amikor univerzális gyors prototípus tervező
5
Alkalmazások
rendszerek alkalmazásának szükségessége merül fel. Egy másik probléma a prediktív szabályozások paramétereinek hangolása egy adott zárt szabályozási körbeli viselkedés
eléréséhez.
Ennek
alapján
az
értekezés
tézisei
a
következő
problématerületeket ölelik fel:
A
tézisekben
megfogalmazott
új
tudományos
eredményeket
többféle
mechatronikai, robotikai és járműipari probléma megoldása keretében alkalmaztam. A vizsgált alkalmazásokban dominált a dinamikus rendszer alulaktuált jellege (a beavatkozó jelek száma kisebb volt a rendszer szabadságfokánál).
•
•
Nemlineáris rendszerek irányítása prediktív algoritmusokkal, melyekhez
A nemlineáris mechanikai rendszer LTV linearizáláson alapuló prediktív
nincs szükség online numerikus optimalizálásra. A nemlineáris rendszerek
irányítására kifejlesztett módszert invertált inga fellendítésére és stabilizálására
felölelik a robotok egy nagy osztályát és olyan mechatronikus
alkalmaztam. Az alulaktuált rendszert egy Quanser Q8 kártyával és WinCon
rendszereket, amelyek lehetnek akár alulirányítottak (a beavatkozó jelek
szoftverrel ellátott számítógéppel irányítottam. A WinCon a Venturcom RTX
száma kisebb a rendszer szabadságfokánál) vagy differenciálisan nem
valósidejű kernel-t használja, mely képes Windows alá feltelepülni, így a valósidejű
simák.
szabályozást egy asztali számítógép (Intel Pentium 4 2.8GHz CPU) is el tudta látni.
A szabályozók valósidejű megvalósítása során fellépő problémák
A szabályozást MATLAB/Simulink segítségével valósítottam meg, mely képes
feloldása. Univerzális, sokoldalú és könnyen alkalmazható keretprogram
kommunikálni valós időben a Venturcom RTX operációs rendszerrel.
3
16
létrehozását a kormányon, második lépésben egy hasonló, lassabb (hosszabb
kifejlesztése, amely beilleszthető valósidejű környezetbe gyors prototípus
horizont hossz) szabályozó végzi el a kerék pozíció szabályozását.
tervező eszközök használatával.
A vizsgálatok során a 4) típusú költségfüggvényt használtam, mind integrátorral
•
Prediktív szabályozás során használt költségfüggvények paramétereinek
kiegészítve, mind anélkül. Mivel a vezető érzékeny a kis nyomatékon keletkező
meghatározása adott viselkedés elérésének érdekében. Zárt szabályozási
rezgésekre, a kormányon kiszabályozott nyomaték simítására bevezettem a
körbeli lineáris prediktív szabályozás vizsgálata, különös tekintettel a pólus
költségfüggvényben egy addicionális tagot, amely a beavatkozó jel megváltozását
elhelyezkedésre
bünteti, és megvizsgáltam hatását a prediktív irányítás minőségére.
tekintetében. •
a
különböző
költségfüggvények
és
paramétereik
Térd felett amputált személyek által használt aktív protézis prediktív
4.2. Kísérletileg igazoltam, hogy a kifejlesztett algoritmus hatékonyan alkalmazható
irányítása, melynek célja az egészséges járás utánzása/elérése. A
gépjármű kormányrendszerének részét képező hullámhajtómű prediktív irányítására
problémakör az emberi járásról készült mérések analizálásától a különböző
a
szabályozók
SIA
rendszerben.
A
kifejlesztett
algoritmust
valósidejű
környezetben
megvalósítottam és teszteltem az erre kialakított tesztpadon a ThyssenKrupp Presta •
Compiler for dSPACE AutoBox segítségével valósítottam meg.
Circulat spline position [rad]
Circulat spline position [rad]
0 -0.1 -0.2 -0.3 -0.4 -0.5
Hullámhajtómű
használata
és
prediktív
szabályozása
gépjármű
Jelen kutatás fő célja az LTI rendszerekre az irodalomban található prediktív
0.3
0.1
elhelyezett
kell működnie, továbbá jó “kormányzási érzetet” kell biztosítania.
0.4
0.2
térdében
mellett, mivel emberrel áll kapcsolatban, kellően simán és biztonságosan
jellegű (szlalom) gerjesztő nyomaték hatására keletkező tranzienseket mutatják be.
0.3
protézis
kormányzási rendszerében. A szabályozónak a jó követési tulajdonságok
A következő ábrák a kormányon jelentkező ugrás alakú (irányváltás) és szinusz
0.4
keresztül a
elektromos motor teljesítményének meghatározásáig terjed.
Hungary Kft prototípus rendszerén. Az algoritmust MATLAB/Simulink és Target
0.5
tervezésén
irányítási módszerek [1], [2], [3], [4], [6], [7] továbbfejlesztése és olyan prediktív
0.2
irányítási algoritmusok kifejlesztése volt, melyek alkalmasak nemlineáris (alulaktuált
0.1
0
vagy teljesen aktuált) rendszerek, mint például robotok és más mechatronikai
-0.1
-0.2
rendszerek irányítására gyors prototípus tervező eszközök bevonásával.
-0.3
-0.4 0
0.5
1
1.5
2
2.5
3
3.5
0
Time [s]
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Time [s]
7. ábra. Számított pozíció referencia (folytonos) és mért (szaggatott), balra: ugrás nyomaték
3
A vizsgálatok módszerei
gerjesztés, jobbra: szinusz nyomaték gerjesztés
A kutatás során többféle elméleti és gyakorlati módszer került alkalmazásra. Az elméleti tárgyalás során a lineáris mátrix algebra módszereit alkalmaztam a beavatkozó jel zárt alakú megoldásának levezetéséhez, valamint a lineáris prediktív szabályozások zárt körbeli viselkedésének leírásához, különös tekintettel a sajátérték és szinguláris érték felbontásokra [15].
15
4
Bonyolult nemlineáris dinamikus rendszerek irányításának tervezésekor elvárás a gyors prototípus tervezői rendszerek által biztosítható fejlesztési támogatás,
4. téziscsoport – Gépjármű kormányrendszerének részét képező hullámhajtómű prediktív irányítása
valamint az alkalmazás előtt az irányítás hardware-in-the-loop tesztelése (lásd embernélküli járművek és robotok biztonságkritikus beágyazott irányításának
Új algoritmust fejlesztettem ki gépjármű kormányrendszerének részét képező
tesztelése alkalmazás előtt). Ezért kompromisszumokat kellett hozni mind a
hullámhajtómű és elektromos kormányszervo együttes prediktív irányítására. A SIA
probléma megfogalmazása, mind pedig az implementálási lehetőségek között. Az
(SuperImposed Actuator) konfiguráció lehetőséget ad a kormány és a kormányzott
értekezésben
kerekek közötti áttétel menet közbeni állítására, a pozíció szabályozására és a vezető
vizsgált
területeket
és
célokat
eme
kompromisszum
figyelembevételével választottam meg.
számára megfelelő kormányzási érzet biztosítására. A téziscsoporthoz tartozó
A szabályozók alkalmazása során a szimulációkhoz és a valósidejű
publikáció [s1], [s7].
megvalósításhoz is egyaránt MATLAB, Quanser és dSPACE szoftverek kerültek felhasználásra.
Az
algoritmusokat
C-ben,
MATLAB-ban
és
Simulink-ben
programoztam. A szabályozók fizikai megvalósítása során gyors prototípus tervező eszközök kerültek alkalmazásra, mint a MATLAB/Simulink, Real Time Workshop, Target Compiler for dSPACE és Quanser.
4
Az új tudományos eredmények összefoglalása
1. téziscsoport – Nemlineáris mechatronikai rendszerek prediktív irányítása
6. ábra. SIA rendszer felépítése
LTV linearizálással, különös tekintettel az alulaktuált rendszerekre A hullámhajtómű modelljét és paramétereit az irodalomból vettem át [12], [13], [14].
Új módszert és valósidejű fejlesztési környezetet dolgoztam ki elágazás nélküli merev robotok és nemlineáris mechatronikai rendszerek modell alapú prediktív
4.1. Prediktív szabályozási algoritmust fejlesztettem ki hullámhajtóműben található
irányításához. A téziscsoporthoz tartozó publikációk [s2], [s3], [s6].
motor és a szervo motor együttes irányítására. A cél a kormányzott kerék pozíció szabályozása, továbbá a kormányon a megfelelő nyomatékérzet biztosítása. A
1.1. Új véges, mozgó horizontú prediktív szabályozási algoritmust dolgoztam ki,
kormányszög és kormányzott kerék közötti áttétel a jármű sebességétől függ, míg a
amely a rendszer horizonton belüli referencia állapotának pályamenti linearizálásán
kormányon keletkező nyomaték több paramétertől (jármű sebesség, kormányszög,
alapul. Lineáris időben változó (LTV) rendszerek esetében megadom az optimális
stb.). Mivel a két szabályozott mennyiség (pozíció, nyomaték) időállandói között
beavatkozó
több nagyságrend különbség van, kaszkád jellegű szabályozást valósítottam meg,
jel
megváltozás
zárt
analitikus
megoldását
különböző
költségfüggvényekhez, melyek az irodalomban elterjedtek. A cél az online
kihasználva, hogy a zárt kör állapotegyenlete felírható zárt alakban. Első lépésben
numerikus optimalizálás elkerülése volt, mely gyakran előfordul LTV rendszerek
egy gyors (rövid horizont hossz) prediktív szabályozás oldja meg a nyomaték
prediktív irányítása esetében.
5
14
Feltételezett x = (q T , q& T ) T állapotú és τ bemenőjelű rendszer:
τ = H ( q ) q&& + h ( q , q& ) Általános koordinátákban adott munkapont körüli linearizált állapotegyenlet: ∂H −1
∂h ∂h −1 − H −1 δx + H { δu ∂q ∂q& ∂q B(t ) 1444444 424444444 3
δq&& =
(u − h) − H −1
A(t )
3. ábra. Térd szög perturbáció 1-szabdságfok szabályozás esetén, balra: 3) eset, jobbra: 4) eset, folytonos: integrátor nélkül, szaggatott: integrátorral kiegészítve
Diszkrét időben:
δx k + 1 = A k δx k + B k δu k Adott horizont hossz (N) esetén a predikciós összefüggések: B0 0 0 L A0 δx1 A1B0 B1 0 L A1 A0 x δ 2 M M O M = M δx0 + δU Nnx1 M 1 0 2 B B L B A A A i i 0 i 1 k −1 δx N 2 Nnx1 1 4243 i = N −1 = N −1 i = N −1 i4 24 2 Nnx 2n NnxNn 14424 43 1 4444444424444444 4 3 δX
∏
∏
∏
P
4. ábra. Térd szög perturbáció 2-szabadságfok szabályozás esetén, balra: 3) eset, jobbra: 4) eset,
Q
Rövid formában:
δX = Pδx0 + QδU
folytonos: integrátor nélkül, szaggatott: integrátorral kiegészítve
Lagrange-multiplikátorokkal kiegészített általános költségfüggvény J: 1 1 < δX , δX > + < µ , δxk > + λ < δU , δU > 2 2 Optimális δU beavatkozó jel megváltozás sorozat zárt alakban: J=
µ = (Q N (Q T Q + λI ) −1 Q TN ) −1 ( PN δx 0 − Q N (Q T Q + λI ) −1 Q T Pδx 0 ) δU = −(Q T Q + λI ) −1 (Q T Pδx0 + Q TN µ ) 5. ábra. Csípő szög perturbáció 2-szabadság szabályozás esetén, balra: 3) eset, jobbra: 4) eset, folytonos: integrátor nélkül, szaggatott: integrátorral kiegészítve
1.2. A fent leírt algoritmus alkalmazásához a τ = Hq&& + h alakban felírható rendszerekhez egy valósidejű fejlesztői környezetet dolgoztam ki, amely rekurzív algoritmust használ a geometriai, kinematikai és dinamikus modell függvényeinek és a prediktív irányításnak a meghatározásához. A környezet C-ben készült olyan formában, hogy az valós idejű környezetben is futtatható legyen. A programot elég a Denavit-Hartenberg paraméterek és a szabályozási paraméterek (horizont méret, súlyozások) megadásával előkészíteni. A keretprogramok ezután beilleszthetőek egy
13
6
gyors prototípus tervező rendszerbe valós idejű futtatáshoz, mely esetemben a
Ezen túlmenően az eredmények felhasználhatóak nem helyes élettani járás
MATLAB, Simulink és Real Time Workshop volt, kiegészítve a beágyazott irányító
diagnosztizálására (például trauma, rehabilitáció nyomon követése).
rendszerhez tartozó Target Compiler-rel.
y0
hip
1.3. A fenti keretprogram alternatívájaként elkészítettem MATLAB-ban, annak
q1
szimbolikus számítási kapacitását használva, egy olyan programot, amely a Denavit-
Thigh/segment 1
Hartenberg paraméterek és a változó fizikai mennyiségek megadása után elkészíti a geometriai,
kinematikai
és
dinamikus
modellt
a
megfelelő
knee y1
segment 2
paraméterezve. Ezeket a modelleket C nyelvben értelmezhető programmá átírja, így
x1
gravity
a2
a szabályozási algoritmus átugorhatja a rekurzív számításokat.
q2
ankle x2
1.4. Kísérletileg igazoltam, hogy a kifejlesztett algoritmusok és programok hatékonyan alkalmazhatóak alulaktuált nemlineáris rendszerek prediktív irányítására.
y2
2. ábra. Modell a járásról készült mérések kiértékeléséhez
Tesztelésre az invertált ingát használtam MATLAB/Simulink és Quanser eszközök kiegyensúlyozása volt LTV linearizálást alkalmazó prediktív irányítással.
a1
Shank/
változókkal
bevonásával, ahol a feladat az inga alsó egyensúlyi állapotból való fellendítése és
body x0
A modell paramétereinek meghatározásához az ultrahangos mérési eredményeken [9], [10] kívül csak a szóban forgó alany testsúlyára és magasságára van szükség, melyekből [8] eredményeinek felhasználásával jó közelítéssel ki lehet számolni az egyes végtagok paramétereit (geometriai, tömeg és inerciális jellemzők).
3.2. Prediktív irányítási algoritmust fejlesztettem ki az I. tézis eredményeinek felhasználásával egy aktív protézis irányítására, mely az egészséges láb mozgását másolja le. Az algoritmushoz az előzőekben az egészséges lábra kiszámított nyomatékok kerülnek felhasználásra, mint referencia pálya. Kétféle szabályozási megközelítést vizsgáltam meg (1- illetve 2-szabadságfokú), melyekből személyre szabottan
lehet
választani.
Mindkét
megközelítés
tulajdonságait
két-két
költségfüggvény (a 3) és 4) eset LTV rendszerekre értelmezve) felhasználásával 1. ábra. Az invertált inga (PS600)
vizsgáltam meg szimulációkban különféle horizont hosszoknál, valódi adatokat és méréseket felhasználva. A következő ábrákon a szabályozás eredménye látható szimulációk keretében. A zavarást a lendítési fázis során keletkező térdre ható nyomaték jelenti (kis botlás).
7
12
tett gyakran teljesülő korlátozó megszorítás segítségével bebizonyítottam, hogy a 2)
A referencia pálya kiszámításához, amely az LTV linearizálás alapját képezte az
esetben a stabilitás tulajdonsága és a 0 pólusok száma nem változik, továbbá a 4)
egyensúlyi helyzetből való fellendítés prediktív irányítása során, felhasználtam
esetben a súlyozó mátrix nincs hatással a zárt kör pólusainak eloszlására.
Aström-Furuta energia alapú algoritmusát [5].
Ezen túlmenően a 4) esetben megvizsgáltam az irányítási horizont hatását. Zárt analitikus összefüggést adtam a zárt kör pólusainak elhelyezkedésére. Megmutattam
2. téziscsoport – Nemlineáris rendszerek prediktív irányításának sajátérték
továbbá, hogy ha csak 1 instabil pólussal rendelkezik az eredeti rendszer, a zárt kör
tulajdonságai LTI linearizálás esetén
minden (irányítási és predikciós) horizont méret mellett stabil marad. Lineáris prediktív irányítást feltételezve matematikailag megalapozott általános
2.3. Kimutattam az Ackermann-formula szerinti állapot-visszacsatolás és a prediktív
összefüggéseket dolgoztam ki a zárt szabályozási kör pólusainak elhelyezkedésére
szabályozás közötti ekvivalenciát gyakran teljesülő feltételek esetén. A két módszer
különböző költségfüggvények esetén. A téziscsoporthoz tartozó publikáció [s4].
közti analógiát felhasználva kifejlesztettem egy MIMO prediktív pólusáthelyezési technikát, melynek segítségével a zárt kör pólusai bizonyos megkötések mellett
2.1. Olyan rendszerek esetében, ahol a linearizálás csak a horizont elején történik
tetszőleges helyre tehetők, továbbá a módszer nem igényel szelekciós sémát.
meg (LTI), analitikus megoldást adtam a zárt szabályozási kör sajátértékeinek elhelyezkedésére, figyelembe véve 7 költségfüggvény osztályt, amelyek elterjedtek a
3. téziscsoport – Aktív alsó végtagprotézis prediktív szabályozása LTV
szabályozástechnikában.
linearizálással
multiplikátorokkal kiegészített költségfüggvények esetén a következők.
Módszert dolgoztam ki térd felett amputált betegek által használt aktív alsó
1) Beavatkozó jel minimalizálása a horizonton belül.
végtagprotézis prediktív szabályozására. Új algoritmust fejlesztettem ki a protézis térdében lévő motor szabályozásához, melynek célja az egészséges láb mozgásának
J =
Megoldása:
költségfüggvényt használva. Valódi protézist használó emberek járásáról készült
U =0
alapozva
kifejlesztettem
a
prediktív
irányításhoz
kapcsolódó
nem releváns.
téziscsoporthoz tartozó publikáció [s5]. 2) Az állapothiba minimalizálása a horizonton belül.
3.1. Új módszert fejlesztettem ki az emberi járásról készült ultrahangos mérések kiértékeléséhez, melynek segítségével meghatároztam a járás során az izületekben
J=
1 < X,X > 2
ébredő nyomatékokat, valamint az emberi járás egyszerűsített modelljét és
Megoldása:
paramétereit. A kifejlesztett modell és a mérési eredmények megalapozzák a
U = − (Q T Q ) −1 Q T Px 0
prediktív irányítás referencia pályájának (pozíció, sebesség, nyomaték) számítását.
11
eredmények
a
Lagrange-
A zárt kör megegyezik az eredeti rendszerrel. Ez az eset gyakorlati szempontból
szükséges
rendszermodellt. A módszer hatékonyságát szimulációval demonstráltam. A
ehhez
1 < U ,U > 2
utánzása. A vizsgálatokat kétféle esetre végeztem el, mindkét esetben kétféle mérésekre
Az
8
Megmutattam, hogy ha a horizont hossza tart a végtelenhez, akkor a zárt kör
Megmutattam, hogy a feladat megoldása és a zárt kör pólusainak
sajátértékei stabilak, továbbá mindig van m = dim u darab 0 (gyors, ún. véges
elhelyezkedése, amennyiben például a Moore-Penrose pszeudoinverzet feltételezzük,
beállású, angolul dead beat) sajátérték.
megegyezik a 4) esetével.
3) Az állapothiba minimalizálása a horizonton belül állapot kényszerrel a horizont
6) Állapot és beavatkozó jel minimalizálása a horizonton belül.
végén. J=
J=
1 < X , X > + < µ , xN > 2
1 1 < X , X > + λ < U ,U > 2 2
Megoldása:
U = − (Q T Q + λ I ) −1 Q T Px
Megoldása:
µ = (Q N (Q T Q ) −1 Q TN ) −1 ( PN − Q N (Q T Q ) −1 Q T P ) x0
A pólusok elhelyezkedése 3 különböző eset kombinációjaként adódik a λ paraméter értékétől függően. Ha λ kicsi, akkor a megoldás a 2) esetéhez konvergál.
U = − (Q T Q ) −1 (Q T Px 0 + Q TN µ ) Megmutattam, hogy végtelen horizont hossz esetén ez az eset a 2) esethez konvergál. Rövidebb horizont méreteknél a kényszer dominál a zárt kör pólusait tekintve, amely a 0 közelébe húzza a pólusokat.
Másrészt a λ paraméter rendelkezik egy olyan értéktartománnyal (a szinguláris értékektől függően), ahol a póluseloszlás a 4) esetnek felel meg. Végül ha λ végtelenhez tart, akkor a zárt kör pólusai az eredeti rendszer pólusaihoz konvergálnak, ami az 1) eset.
4) Beavatkozó jel minimalizálása a horizonton belül, állapot kényszerrel a horizont 7) Állapot és beavatkozó jel minimalizálása a horizonton belül, állapot kényszerrel a
végén. J=
horizont végén.
1 < U ,U > + < µ , x N > 2
J=
Megoldása:
1 1 < X , X > + λ < U ,U > + < µ , x N > 2 2
Megoldása:
T −1 U = − Q TN (Q N Q N ) PN x 0
Megmutattam, hogy a horizont hosszának növekedésével a zárt kör pólusai az eredeti rendszer stabil pólusaihoz és az eredeti rendszer instabil pólusainak reciprokához tartanak.
µ = (Q N (Q T Q + λ I ) −1 Q NT ) −1 ( PN − Q N (Q T Q + λ I ) −1 Q T P ) x 0 T U = − (Q T Q + λ I ) −1 (Q T Px0 + Q N µ)
A pólus elhelyezkedés megoldása a 3), 4) és 6) esetek kombinációja, az azokban megfogalmazott µ és/vagy λ feltételek teljesülésétől függően.
5) Állapot kényszer a horizont végén. x N = PN x0 + Q N U = 0
2.2. Meghatároztam a zárt kör pólusainak eloszlását az előző költségfüggvények és súlyozó mátrixok jelenlétében. A vizsgálatokat csak a 2) és 4) esetre terjesztettem ki, mivel ezen esetek segítségével levezethető a többi. A súlyozó mátrix struktúrájára
9
10