Szerzői jog © 2014 Dr. Korondi Péter, Dr. Tamás Péter, Budai Csaba, Graff József, Bojtos Attila, Dr. Samu Krisztián, Krizsán Zoltán, Dr. Kovács Szilveszter
A tananyag a TÁMOP-4.1.2.A/1-11/1-2011-0042 azonosító számú „ Mechatronikai mérnök MSc tananyagfejlesztés ” projekt keretében készült. A tananyagfejlesztés az Európai Unió támogatásával és az Európai Szociális Alap társfinanszírozásával valósult meg.
A kiadásért felel a(z): BME MOGI
Felelős szerkesztő: BME MOGI
ISBN 978-963-313-137-4
2014
A Japán Gazdasági és Kereskedelmi Minisztérium jelentése szerint a robotipari piac drámai átrendeződése várható (ld. 1.1. ábra). A hangsúly a termelési szektorban használt klasszikus ipari robotokról át fog helyeződni az un. szerviz robotokra, melyek máris átvették a vezető szerepet a tudományos folyóiratokban és konferenciákon, habár piaci részesedésük szinte elhanyagolható. Ez felerősödni a közel jövőben fog. Ez az észlelés az irodai, kórházi és hasonló robotok növekvő trendjét mutatja.
Mostanáig a közemberek csak TV-ben láthattak robotokat, de ezekkel nem volt valós fizikai kapcsolatuk. Ez azt jelenti, hogy a robotok tisztán csak mérnöki eszközök voltak (mérnökök találkoztak velük). Egyértelmű, hogy az ipari robotokat robot specialista mérnökök használják és programozzák. Ahogy a robotok kis és középvállalkozásokban is megjelennek már olyan mérnökök is használják őket, akik nem robot specialisták. Így a robotprogramozó módszereknek hatékonyabbá kell válniuk, hogy a veszteségek elkerülhetőek legyenek a kistermelésben a gyakori váltás miatt. Tehát növekvő igény van arra, hogy a robotok betanítása automatizáltabb legyen, valamint hogy képesebbek legyenek sokkal kifinomultabb feladatok elvégzésére is. Automatikus anyagmozgatásra az ipari robot egy nagyon kezes megoldás, habár speciális figyelmet igényel a munkafolyamat beprogramozása. Az offline programozása az ipari robotnak meglehetősen bonyolult, mert nagyon pontos rendszer beállításon alapul s a virtuális környezetet gondosan kalibrálni kell, hogy lemásoljuk a valós felépítést, és elkerüljük a helyszínen történő programmódosításokat. Ezek a problémák elkerülhetőek online programozással, de online programozás során a robot képtelen bármit is termelni. Ez eredményezi a folyamatos igényt az új és hatékony robotbetanító módszereknek. Az ipari robotok területén a legnagyobb kihívást nyújtó akadály az, hogy kb. 400-szor annyi időt vesz igénybe a robot komplex működésének a beprogramozása, mint amennyi ideig a tényleges feladat végrehajtása történik. [2]
A következő lépésben a robotot már nem mérnökök fogják használni. Robot felhasználói szempontból az emberek négy fő csoportra oszthatóak:
robot specialista mérnökök
mérnökök, de nem robot specialisták
nem mérnökök, de a robottechnika iránt érdeklődők
idős emberek, robotikától tartózkodók
Mindennapi életünkben a robotok nem elég ha csak egy előre beprogramozott feladatot hajtanak végre. Alkalmazkodniuk kell a változó körülményekhez, saját döntéseket hozni, valamint szociálisan beilleszkedni az emberi környezetbe. Ez egy sokkal kifinomultabb robot vezérlő módszert kíván. A használat módja olyan egyszerű (vagy egyszerűbb) kell legyen, mint bármely irodai, avagy háztartási berendezés használata. A szerviz robotok más eszközökétől sokkal kifinomultabb feladatok elvégzésére szolgálnak, ezért a robot vezérlése és mesterséges intelligenciája ki kell elégítse a kommunikációs feladatot az ember-robot kölcsönhatásban. A hardver tervezéssel összhangban az alacsony szintű szoftverfejlesztés is számos további kérdést vet fel:
Hogyan kellene egy szociális robotnak kinéznie?
Hogyan kommunikáljunk a robottal?
Lehetséges, hogy a robotnak legyenek érzelmei?
Mi az érzelem meghatározása?
Az emberek mindig is ragaszkodtak személyes használati cikkeikhez (telefon, autó, stb.). Ez a ragaszkodás erősebb lehet a szerviz robotokhoz. Ennek a - jelenleg egyoldalú - ragaszkodási viszonynak a kölcsönössé tétele nem csak nyilvánvaló marketing előnyökkel járna, de növelné az együttműködés hatékonyságát is az ember-rendszer interakciókban.
Ez az írás e trend szerint van rendezve kezdve az ipari robotokkal és a szociális robotokkal végződően. A II. részben a műhely-béli ember-robot együttműködés lesz bemutatva. A III. rész mérnöki szempontból mutatja be a szerviz robotokat. A IV. rsz bevezet az eto-robotikába (etológiailag inspirált robotok). Az V. rész a végkifejlet, és az utolsó a köszönetnyilvánítás és a hivatkozások.
Amíg a szerviz robotok mindennapi életünkbe próbálnak beszivárogni, addig továbbra is komoly erőfeszítések vannak a robot manipulátorok kutatásában. Amíg a szerviz robotok egyre barátságosabbá és természetesebbé válnak, annál szembetűnőbbé válik a manipulátorok működtetésének és programozásának fejletlensége. Mivel a kis- és középvállalatok (KKV) automatizálni kezdenek a rugalmasan kezelhető robot-cellák iránti igény növekszik. A rugalmasság számos tényezőn múlhat:
A hardver rugalmassága (robot, CNC gép)
Integrálási rugalmasság (robot cella újrakonfigurálása)
Működtetési rugalmasság (ember-gép kölcsönhatás)
Az első két komponenst a robot gyártóknak és az informatikai technológia kutatóinak van címezve. A legnagyobb kihívás ezen a területen közös standard protokollt nyújtani a rendszert felépítő különféle komponenseknek. A szerviz orientált építkezés (SOA) paradigmája [3] tudományosan elfogadott megközelítést nyújt és továbbra is az érdeklődés középpontjában áll [4, 5, 6].
Másrészről a rendszer legkevésbé rugalmas pontja meghatározza a rendszer rugalmasságát. A probléma jól meghatározott a [7] referenciában: a legrugalmasabb robot cellákat saját operációs szoftverrel árusítják, így a kulcs a működtetés rugalmassá tételéhez az integrátor kezében marad. Hogy több alkalmazkodóképességet vigyünk a működésbe a [7] referencia egy készlet robosztus vezérlő szoftvert mutat be.Továbbá szem előtt kell tartani, hogy a KKV-k gyakran nem tehetik meg, hogy magasan képzett működtető személyzetet alkalmazzanak, ezért is járul hozzá a könnyű programozás és beállítás a rugalmassághoz (ld.: 2-2. ábra). Továbbra is az ember-robot együttműködés áll a középpontban az egyszerű robotprogramozás célja miatt.
A legkönnyebb és legtermészetesebb módja a robot programozásának a kézzel való betanítás. Kézzel mozgatni a manipulátort veszélyeket hordoz: a robotnak áram alatt kell lennie, tehát egy robosztus és biztonságos vezérlő rendszer szükséges. A manipulátor bármely önálló mozgása potenciális veszélyforrás, ha az embernek a robot munkaterében kell dolgoznia. A robot-ember kölcsönhatás az erejének vezérlése megoldást nyújt és az alkalmazott ellenállás vezérlés [8] használata erőmérő érzékelőkkel kifizetődőnek tűnik a kerítés nélküli együttműködésre. Másik vezérlési sémát mutat be a [9] összehasonlításként a PD és csúsztató mód vezérlő algoritmussal. A probléma másik kimenetele a megfelelő robot rendszer. A robosztusság hiánya az előző rendszerben késztetett új technológiák kutatására. [10] referencia bemutat egy vezérlő rendszert pneumatikus izmok által mozgatott manipulátorok számára, míg a [11] és [12] direkt motoros meghajtást használnak drótkötél mechanizmussal. Az ipari manipulátorok vezérlését célzó kutatások trendje tisztán a robosztus, de kompatibilis rendszer felé mutat, hogy egyesítse a pontosságot és biztonságot.
Az emberrobot együttműködés keretei között a legfontosabb szempont a kétoldalú kommunikáció. Az előző részben tárgyalt fizikai kölcsönhatás által felvetett biztonsági problémák, valamint a robot környezet tudatossága továbbra is jelentős probléma. Minél hatékonyabb és rugalmasabb a kölcsönhatás a felhasználóval annál kifinomultabb felismerő technológiára van szükség. A [13] referencia érdekes példát hoz erre. A hagyományos megközelítéssel egy további csatornán kellene kommunikálni a robottal a számára átnyújtott objektumról. A taktilis érzékelők jobb potenciált nyújtanak a robot rendszernek az emberi szándék megértésére, ezáltal az interakció kiterjesztett modularitására.
A működtető szemszögéből a rendszer megérthető a különféle közreműködőkhöz alkalmazkodott kezelőfelületen keresztül:
A robot cella komplexitása
A robot cella által végzett feladat komplexitása
A működtető hozzáértése
Szükséges információk
A kulcs a jobb rugalmassághoz a hagyományos és nagyon technikai grafikai felhasználió felület átformálása az ember és az ipari robot között (ld.: 23. ábra). A fókusznak a robot cella gyakorlati működtetéséről a kognitív programozásra és működtetésre kell áttérnie. E terület kutatásai magukba foglalnak más területeket is, mint a pszichológiai, használhatósági és emberi tényezők.
Hagyományos értelemben az ipari robotok olyan gépek, melyek a lehető legkevesebb emberi interakciót kívánnak meg. Az embereket a működtetés részének tekintve nem csak a rugalmasság és hatékonyság nő, hanem ez elősegíti az ember-robot kapcsolatok megértését is és általában új lépéseket tesz az automatizálás iránti bizalom építésében.
A kiszolgálószektor robotjainak egyre és egyre kifinomultabb feladatokat kell ellátnia. Ez ugyanaz a trend mint az ipari robotok evolúciójának. Az első ipari robotot Griffith P. Taylor készítette 1937-ben. [14] Ez szinte csak mechanikai részekből és elektromos motorból állt. Fablokkok előre beprogramozott minta szerinti pakolására volt képes. A program lyukkártyán volt, mely elektromágneseket aktivált. Manapság az ipari robotok hegesztenek, festenek, marnak, stb.
Bizonyos nézőpontból a legegyszerűbb robot otthonunkban a mosógép, a turmixgép, a mosogató gép stb. Ezek az eszközök a mindennapi rutinunkat segítik. Ennek a fejlődésnek a következő lépcsőfoka segítség a mindennapi szolgáltatás típusú feladatainkban. A szolgáltatási feladatokból eredően a szerviz szektor legtöbb robotja mobil robot. Számos készséges robot platform áll valahogy a segítségünkre, vagy csak a szórakoztatás kedvéből. Roomba [15], vagy Navibot [16] segítenek tisztán tartani a háztartás idáig soha nem látott kényelmes módon. Vannak kutyaszerű berendezések is, mint AIBO [17], vagy Genibo, de ezek csak nagyon primitív szinten próbálják leutánozni egy valódi kutya viselkedését. Néhány ember által inspirált robot is elérhető, mint a Honda ASIMO-ja [18] vagy a SONY QRIO-ja [19], de ezek a komplex és technikailag nagyon fejlett platformok is csak karcolják a valódi ember- gép kölcsönhatás felszínét.
Idősek számára ott van Paro [20] vagy Kobie, egyfajta terápiás robotok, melyek képesek érzékelni a fényt, hangot, hőmérsékletet és érintést, tehát képesek érzékelni a környezetüket és az őket körülvevő embereket. Ezek a robotok egyszerű módon lépnek kölcsönhatásba a használóval. Képesek az idősek viselkedési preferenciáit megtanulni és reagálnak a nevük szólítására. Még az „egyszerű” játékok is, mint ezek, képesek lehetnek csökkenteni a felhasználó feszültségét, hogy javítsák a szocializációt az idősek között és tökéletesebb kommunikációt teremtsenek a gondviselőkkel.
Korábban az ipari robotokat csak cégóriások a nagysorozatú gyártásban (klasszikusan az autóiparban) alkalmaztak, ahol a robotokat robotika szakemberek programozták. A robot oldalon nem volt szükség az ember megértésre, hiszen a szakemberek ismerték a robotok minden belső rezzenését, gondolkoztak a robot helyett is. Annak ellenére, hogy a robotokat robotspecialisták programozták, a programozási idő meglehetősen hosszú volt. Átlagos szabályként azt mondhatjuk, hogy klasszikusan kb. 400-szor annyi idő egy művelet beprogramozása, mint a művelet elvégzése. Mára a robotok egyre több és egyre kisebb cégeknél jelennek meg, ahol egyre kevésbé van lehetőség tisztán robotikai szakemberek alkalmazására. De ebben az esetben a robotok még mérnökök kezében maradnak, akik valamilyen szinten értenek a robot nyelvén, ugyanakkor a robotokat is egyre intelligensebbre kell tervezni. Ennek a motiváltsága kettős. A kisebb szériák gyártásánál a robotizált folyamat gyakori átállítása a hagyományos robotprogramozási módszerekkel a költségeket annyira megnövelné, hogy a robotizálást teljesen versenyképtelenné válna. További gond, hogy a robotok programozása olyan szaktudást igényel, amely a kis és közép méretű vállalatoknál nincsen jelen. Ez vezetett az ún. szuper-flexibilis robotprogramozáshoz [1], ahol a cél az volt, hogy minél természetesebb módon lehessen a robotokat programozni. [2,3] a robotok programozásának és betanításának egy új paradigmáját mutatta be, amely a szokványostól eltérő kognitív info-kommunikációs csatornákra épül. Ha a robotfolyamattal a műhelyfőnök különösebb informatikai tudás nélkül is tud kommunikálni és „elmagyarázni” az elvégzendő feladat lényegét, mint egy kollégának, és a robot nagyobb részt automatikusan elő tudja állítani a szükséges robotprogramokat, akkor az átállás ideje, szakember igénye és költsége jelentősen csökkenthető. A gondot az jelenti, hogy ha 100%-os automatizálásra törekszünk, akkor a biztonság, a felkészülés minden extrém esetre, ismételten túlzottan megnöveli a költségeket. A megoldás a robotfelügyeleti rendszer, ahol bizonyos mértékben bevonjuk az emberi intelligenciát (brain in the control loop) folyamatot valósítunk meg [4]. Ez egy új dimenziót nyitott a robotizációban, nevezetesen a kis- és a középvállalatok számára is elérhetővé tette a robotos alkalmazásokat. A robotot egy erős, a jól definiált feladatot precízen megoldó, korlátozott intelligenciával rendelkező, de ugyanakkor több tekintetben fogyatékos betanított munkásnak tekintette és ez elindította azt a folyamatot, amelyben a robotokkal egyre egyszerűbb nyelven lehet kommunikálni.
Hamarosan a robotok megjelennek a mindennapi életünkben (ld. 1 ábra). Öregedő társadalmunkban egyre több ember szorul fizikai segítségre, és egyre drágább az emberi munkaerő. Valószínűleg a betegszállító robotok lesznek az elsők (kísérleti jelleggel ilyenek már vannak), ezt követően jönnek az időseket, fogyatékosokat figyelő, óvó, majd fizikailag segítő robotok, esetleg a terápiás robotok, de valószínűleg eljutunk a takarító és főző robotokig. A robotok olyan emberek között fognak tevékenykedni, akik csak saját nyelvükön tudnak kommunikálni, ezért a robotoknak kell megtanulni egy olyan nyelvet, amelyet a hétköznapi ember is megért. Kérdés, hogy milyen legyen ez a nyelv. Könnyen jutunk arra a következtetésre, hogy a legjobb az lenne, ha a robottal úgy lehetne kapcsolatot teremteni, mintha az egy másik ember lenne. Ezzel az a baj, hogy a jelenleg legintelligensebb robot is messze elmarad az emberi intelligenciától, így ha a robot felhasználója nem figyel (megfeledkezik, hogy egy robottal áll szembe), és embernek tekinti a robotot, akkor a robot megzavarodhat pl. beszédtechnológiai eszközökkel egy udvarias kérést sokkal nehezebb felismerni, mint egy direkt rövid parancsot. Sokkal tisztább a helyzet, ha a robotot nem az emberrel, hanem egy állattal tekintjük egyenrangúnak és csak olyan parancsokat adunk, hogy ül, fekszik, hozd ide, tedd ezt vagy azt. Az ipari robotokkal szemben az emberek között tevékenykedő robotok esetében nem mindegy, hogy a robot miként hajtja végre a feladatot. A robotnak a feladat megoldása mellett viselkednie is kell, szociálisan be kell illeszkednie az emberek közé. Ismét az a kérdés, hogy miként kell beilleszkedni, és a válasz ismét az, hogy a robot inkább legyen egy mesterséges állat, mint egy mesterséges ember.
Ez egy új tudományterület [5]. Ennek lényege, hogy az etológusok megfigyelik az állatok viselkedését és verbális etológiai modellt készítenek. Ezt az etológiai modellt informatikusok algoritmizálható matematikai modellé alakítják, majd a mechatronikai mérnökök beépítik a robotokba vagy más eszközökbe. A folyamatot a 2-4. ábra-án láthatjuk. A természettől a mérnökök sok technikai megoldást tanultak el, de most nem egy technikai megoldást kell eltanulni, hanem a viselkedést. Szeretnénk, ha a robot valamilyen mértékig szerethetővé válna, de a robotot ne úgy szeressük, mint egy másik embert, hanem úgy mint egy mesterséges állatot. De a kérdés, hogy pl. a kutya milyen viselkedéssel éri el azt, hogy szeressük. Erre a kérdésre etológusoktól várjuk a választ.
A MOGI Robi egy olyan kutatás eredménye, ahol az etológusok megfigyelték a kutyák kötődését a gazdájukhoz, az informatikusok ezt a viselkedést algoritmizálták és leprogramozták, majd a mérnökök megépítettek egy robot lényt, amelynek néhány viselkedéseleme a kutyáéhoz hasonlít. Annak ellenére, hogy MOGI Robinak nincsenek érzései, úgy tud mozogni, viselkedni, hogy bennünk az az érzés támad: kötődik hozzánk, szeret minket. A kutya és gazdája közötti kötődést magyar etológusok írták le először tudományosan [6,7]. Feltételezhetően a kutyák is túlélési céllal, a relatív táplálék bőség miatt alkalmazkodtak az emberhez. Így alakulhatott ki az állatvilágban egyedülálló, fajok közti viselkedés, a kutya-ember kötődés. A kötődés fogalmát eredetileg a pszichológusok az anya gyermek kapcsolatára dolgozták ki. Megfigyelhető, hogy a gyermek keresi az anyja közelségét, az anyjához fordul vigaszért a vele való kontaktus megnyugtatja, az anyjától elválasztva azonban tiltakozik, sír, növekszik a stressz szintje. Az újra találkozáskor üdvözli az anyját, hozzábújik, majd rövid időn belül megnyugszik Ezek a viselkedés elemek a kutyáknál is megfigyelhetők, és tán könnyebben algoritmizálhatók, önthetők szabályokba, mint az emberi viselkedés. Ezért esett a választás egy kutyaszerű robotlény, MOGI Robi, létrehozására (ld. Hiba! A hivatkozási forrás nem található.).
Az etológiai modell olyan állításokból áll, pl. Ha a gazda közel van, akkor a kutya stressz állapota csökken. Ha a kutya stressz állapota alacsony és a labda a közelben van, akkor a kutya játékkedve nő. ha a kutya játékkedve nagyon magas, akkor játszani kezd. Ilyen szabályokból több százat állítottunk fel, és addig finomítottuk a szabályokat, amíg a robot viselkedése kutyaszerűvé nem vált. Egy ilyen verbális modellt a fuzzy logika segítségével a legegyszerűbb matematikai formába önteni.
Az etológiai modell szemléltetése terén az egyik fő elvárás a robottal kapcsolatban az volt, hogy a mozgása ne legyen kötött, azaz élőlényhez hasonlóan ne csak elfordulni és két irányba (előre-hátra) tudjon egy adott pillanatban elmozdulni, hanem képes legyen oldalazó, illetve pályán való haladás közben orientációt változtatni a pálya elhagyása nélkül. Tehát bármely pillanatban rendelkezzen a síkban lehetséges három szabadsági fokkal (holonomikus robot). Ehhez saját fejlesztésű robot alapra volt szükség. Ahhoz, hogy a robot képes legyen kötődéshez fűződő valamennyi hangulati elem megjelenítésére, egy fuzzy automatán alapuló érzelmi motort fejlesztettük. A robot viselkedésének kiszámításához olyan számítási kapacitás (három párhuzamosan működő számítógép) szükséges, amely a jelen technikai szinten nem helyezhető el a roboton, ezért fordultunk az intelligens tér koncepcióhoz, és fejlesztettünk ki egy mozgáskövető rendszert. A robot intelligenciáját elosztottuk a robotot körülvevő intelligens térben.
Takarics Béla, Szemes T Péter, Korondi Péter, Superflexible Welding Robot Based on the Ubiquitous Computing Concept. In: 7th International Conference on Global Research and Education. Pécs, Magyarország, 2008.09.15-2008.09.18. pp. 237-246. Paper IA0168
Korondi Péter, Bjørn Solvang, Baranyi Péter, „Cognitive Robotics and Telemanipulation”, Keynote előadás az EDPE 2009 Konferencián Dubrovnik, Horvátország, 2009.10.12-2009.10.14.
Sziebig Gábor, Korondi Péter, „Kognitív robotika” OGÉT 2010, pp. 408-415
Solvang Bjørn, Korondi Péter, Sziebig Gábor, Ando Noriaki, SAPIR: Supervised and Adaptive Programming of Industrial Robots. In: Proc. 11th IEEE International Conference on Intelligent Engineering Systems (INES'07). Budapest, 2007.06.29-2007.07.02. (IEEE)pp. 281-286.(ISBN: 1-4244-1147-5)
Géza Szayer, Bence Kovács, Balázs Varga, Piros Sándor, Péter Korondi MOGI Robi, egy érzéseket kifejező robot, OGÉT 2011
Topál, J., Miklósi, Á, Csányi, V. 1998. Attachment behaviour in the dogs: a new application of the Ainsworth's Strange Situation Test. J. of Comp. Psych. 112, 219-229..
Gácsi, M., Topál, J., Miklósi, A., Dóka, A., Csányi, V. 2001. Attachment behaviour of adult dogs (Canis familiaris) living at rescue centres: Forming new bonds. Journal of Comparative Psychology, 115, 423-431
Elsődleges célja ezen fejezetnek, hogy bemutassa a manapság elérhető robot keretrendszereket, összehasonlítsa azokat. Elsődleges összehasonlítási alap az egyszerű használat, a biztonságos üzemeltetés és a kiterjesztés lehetősége lesz. A különböző koncepciók ismertetése után a két legnépszerűbbet részletesebben összehasonlítjuk.
Az RT-middleware (Robot Technology Middleware) egy olyan technológia, amely implementálja a komplex robot rendszerek készítéséhez szükséges elemeket. Segítségével egyszerűen készíthetünk, majd később üzemeltethetünk térben elosztott rendszereket. Mindezeket újrahasznosítható, szabványosított komponensekkel, kommunikációs csatornákkal, programozói API-kal, automatizmusokkal és eszközökkel teszi lehetővé.
A robotika területén a robot rendszerek feladata gyakran változhat. Ha ez a cél vagy maga a környezet gyakran változik, akkor újrahasznosítható, újra konfigurálható komponensek szükségesek, valamint egy azokat üzemeltető keretrendszer, amely tudja ezen változásokat kezelni. Az ilyen komponensek és a keretrendszer fejlesztése speciális programozói ismereteket, tapasztalatot igényel. Ezen implementáció során használhatunk már meglévő általános célú keretrendszereket (pl. CORBA), továbbá számos programozói nyelvet használhatunk, melyek döntően befolyásolják ezen munka nehézségét, idejét. Egy teljesen új robot keretrendszer implementálása az alapoktól bonyolult feladat, és több verzió szükséges a megfelelő eléréséhez. Egy létező keretrendszer alkalmazása, és annak a testre szabása jelentősen lerövidíti a fejlesztés idejét, bonyolultságát.
A keretrendszerek (framework) és a köztes rétegek (middleware) népszerűsége egyre nő, ez gazdag funkció készletüknek köszönhető, azaz a gazdag funkció készletének, így használatukkal könnyedén és gyorsan tudunk komplex rendszereket létrehozni. Robot meghajtókat használva robot keretrendszerből egy komplex és hatékony robot rendszert tudunk létrehozni viszonylag kevés munkával. Legtöbb esetben a robot rendszerek létrehozása valójában csak egy általános robot keretrendszer paramétereinek beállítása az adott célra.
Amennyiben egy létező kertrendszerhez csupán néhány funkció szükséges egyszerűen kiterjeszthetjük azt. Ezen kiegészítése a létező rendszernek sokkal könnyebb feladat, mint egy új implementálása a kezdetektől, mert az ilyen jellegű rendszerek tervezése, és implementálása speciális ismereteket és tapasztalatot igényel. Legtöbb esetben a hiányzó funkciók könnyen beágyazhatóak, ha a létező keretrendszert erre felkészítették, készítésénél gondoltak erre.
A robotika területén számos olyan elem van, amely hasonló tulajdonságú, azonos csoportba sorolható. Ezért a robot keretrendszer koncepció - mint egy általános keretrendszer, mely testre szabható, vagy kiterjeszthető – helyénvaló, sőt célszerű. Valószínűleg nem létezik és nem is lehet olyan robot keretrendszer készíteni, amely mindet igény maradéktalanul kielégít
Ebben az alfejezetben először felderítjük a robot rendszerekkel szemben támasztott követelményeket, majd megvizsgáljuk a jelenleg elérhetőeket (YARP, OpenRDK, OpenRTM-aist és ROS), hogy mennyire elégítik ki a támasztott követelményeinket. Végül ezen fejezet végén egy táblázatban foglaljuk össze a ROS és Openrtm-aist tulajdonságait.
Robot middleware egy olyan szoftver köztes réteg, egy olyan keretrendszer, amely kiterjesztik az általános célú kommunikáció middleware-eket, mint a CORBA vagy ICE. Számos eszközt, könyvtárat, API-t, és leírást biztosítanak a robot komponensek és robot rendszerek létrehozásához és üzemeltetéséhez. A robot köztes rétegek, mint a ragasztó fogják össze a robot részeket, megteremtik a kapcsolatot közöttük transzparens módon.
Definiáljuk először a követelményeket a robot rendszerekkel szemben, és azok aktorait. Általában a robot rendszerek felhasználói két nagy csoportba oszthatóak: a vég-felhasználók, és a komponensek fejlesztői. Minden robot keretrendszernek ezen két csoport munkáját kell támogatniuk eszközökkel és mechanizmusokkal.
A Robot keretrendszerek főbb használati eseteit a 21. ábra szemlélteti. Ezeket a használati eseteket megvizsgálva azonosíthatunk néhány funkcionális követelményt. A komponens fejlesztő megtervezi a robot komponens szerkezetét, kapcsolódásait más komponensekhez, majd implementálja azokat. A megvalósításhoz különböző operációs rendszer, és programozói nyelv támogatása célravezető. Olyan eszközök szükségesek továbbá, melyekkel a komponensek váza vagy akár félkész komponensek generálhatóak a gyorsabb fejlesztés érdekében. A fejlesztők fő tevékenysége az osztály vázak generálása, üzleti logika implementálása, fordítás, majd végül a tesztesetek futtatása. Természetesen a fejlesztők, mint végfelhasználó tesztelik is az általuk készített komponenseket, de ekkor a másik szerepkörben tevékenykednek. Összefoglalva a fejlesztő szemszögéből a következő lényeges igények azonosíthatóak:
Minél több programozó nyelv támogatása. Egy valós fejlesztés alkalmával a kutató vagy fejlesztő csoport tagjai, melyek a robot rendszer részeit külön-külön implementálják, más-más programozói nyelvet ismernek, szeretnek. Átképzésük egy nyelvre idő és költség igényes. Olyan keretrendszer, amely támogatja a különböző nyelven megírt komponensek kommunikációját több fejlesztőt és döntéshozó szimpátiáját elnyerheti.
Támogasson több operációs rendszert is. Manapság a Windows és Linux operációs rendszerek támogatása kötelező, nem szabad a kutató/fejlesztőt a megszokott környezetéből kiragadni. Másik, folyton előtérbe kerülő igény a régi rendszerek támogatása. Ha a leendő rendszer más már meglévő rendszerekkel kell, hogy együttműködjön, ami már egy adott operációs rendszeren fut, könnyebb az integráció, ha azonos operációs rendszeren fut az új rendszer is.
Szkeleton generáló és egyéb eszközök a komponensekhez. A fejlesztés gyorsításának érdekében a kód generáló varázslók nagyon fontosak. Sablonok és eszközök (grafikus, és parancssori is) megléte jelentősen könnyíti a fejlesztő munkáját. Bár az eszközöket és azok paramétereit meg kell ismerni/tanulni, de ez biztosan kevesebb időt igényel, mint a komponensek elkészítése az alapoktól.
A fejlesztő aktorral ellentétben a végfelhasználónak nincs (és nem is kell, hogy legyen) semmilyen programozói ismerete. Ez a felhasználó csoport csak használni akarja a komponenseket a munkájához. A lehető legkevesebb komponens és rendszer paramétert kell, hogy ismerje. A robot rendszerével szép grafikus felületen és vizuális segédekkel keresztül kapcsolódik. Két fő célja van: saját, komplex robot rendszerek kialakítása az elérhető komponensek felhasználásával (azok mentése) és az előzőleg létrehozott saját robot rendszerének üzemeltetése. A saját robot rendszer létrehozása gyakran magában foglalja az elérhető robot komponensek felkutatását is, amely során információkat szerez arról (hozzáférés, név, leírás, verzió, ...). Ezek a hozzáférési információk erősen függenek a robot keretrendszertől. Általában szimbolikus nevekkel hivatkozhatnak a felhasználók az elemekre, de valójában a hoszt IP címe és TCP/UDP portja azonosítja azokat. Sajnos a legtöbb keretrendszer csak az online komponenseket támogatja, így azoknak futniuk kell, és regisztráltnak kell lennie a saját rendszer szerkesztésének időpontjában.
A végfelhasználó regisztrálja (elérhetővé teszi) a komponensét, így elérhetővé teszi azt saját maga és más végfelhasználók számára. Regisztráció után az már elérhető lesz a saját robot rendszer kialakítása során. A robot rendszer futtatása közben szeretné ezt vezérelni, paramétereit változtatni.
Összegezve a végfelhasználó a következő követelmények támasztja a robot keretrendszerekkel szemben:
Bevezetésével a szoftver környezet ne változzon meg nagymértékben. A fejlesztő csoport már használ technológiákat egy operációs rendszeren, kialakította a megfelelő szoftver környezetét a mindennapokra. Új szoftverek telepítése időigényes feladat lehet, és szolgáltatások kiesését eredményezheti.
Felhasználó barát grafikus felület szüksége. Amennyire csak lehet automatizálni kell a folyamatokat, a rendszer paramétereihez a hozzáférést grafikus felületen kell lehetővé tenni.
Ugyanúgy, ahogy a fejlesztő is a végfelhasználó is igényli a heterogén rendszereket, és azt, hogy a megszokott operációs rendszerét használja ezután is. A Windows és Linux operációs rendszerek használata itt is javasolt.
Összefoglalva egy robot keretrendszernek egy hatékony API-n keresztül kell a szolgáltatásait nyújtania, lehető legtöbb automatizmust kell elvégezni lehetőleg transzparens módon, minél több operációs rendszert, és programozó nyelvet kell támogatnia. Egyszerűnek kell lennie továbbá, hogy elterjedjen, népszerűvé váljon.
Az egyik osztott rendszer a robot rendszerek fejlesztésére az OpenRDK (információ, és a robot rendszer elérhető a [1] helyen található, a koncepciót Calisi et al vezette be [2] ). Ágensekből építhetjük fel a komplex rendszerünket, ami valójában egy egyszerű processz. Ezen ágenseken belül modulok futhatnak, melyek egy fonálban futnak. Minden modul rendelkezik egy tárolóval (repository), melyben a belső tulajdonságait menedzselheti. Ágensek közötti ( inter-agent = inter-process) kommunikációnak két fajtáját támogatja: a tulajdonságok megosztását, és az üzenet küldést.
Rendelkezik egy RConsole nevű grafikus eszközzel, amely a távoli modulok felderítését és vezérlését segíti. Ez az eszköz segítségére lehet mind a fejlesztőnek hibakeresésnél, mind a végfelhasználónak az üzemeltetés során. Valójában ez egy speciális ágens, melynek grafikus felülete van.
Másik robot platform a YARP (Yet Another Robot Platform, hivatalos információ oldala [3]). Itt a kommunikáció Observer tervezési mintán alapszik. Minden kapcsolatnak típusa van, melyek a következők lehetnek: TCP, UDP, MCAST, osztott memória. A portokon forgalmazott adatok SHA256 alapú titkosítással védettek lehetnek. Ebben a rendszerben a portokat kell egy központi név szerverbe regisztrálni egyedi névvel. A YARP név szerver, ami maga is egy speciális YARP port, nyilvántartja az összes többi YARP port kulcs mezőit string formátumban.
A harmadik fontos robot keretrendszer az OpenRTM-aist (információs oldala [4]). Koncepcióját a [5], [6], [7] vezették be Ando et al. Itt is a komponenseket használhatjuk osztott módon, melyeket regisztrálni kell egy közös név szolgáltatóba (CORBA eszköze). A komponensek modulokból állhatnak, melyeket bármikor betölthetünk. A keretrendszer egy tervezési mintákat használó, robosztus rendszer, mely tudása kiemelkedik a többiekhez viszonyítva. A rendszerünk komponensei azonos jogokkal rendelkeznek, nincs központi logika (CORBA név szolgáltatás van csak). A komponensek egymással a portokon keresztül kommunikálhatnak, melynek két fajtája van.
Az adatportok aszinkron kommunikációt biztosítanak, míg a szerviz portok segítségével a másik port szolgáltatásait érhetjük el. a szerviz portok használatát nehezíti, hogy az elavult Corba technológia ismerete szükséges hozzá. A komponensek összekapcsolását a végfelhasználónak kell elvégeznie a grafikus felület segítségével. A fejlesztőknek ez egy kényelmes állapot, mely gépi modellt kínál, csupán felül kell definiálni a megfelelő metódust. Számos operációs rendszert és programozó nyelvet támogat. Véleményem szerint a világon a második legnépszerűbb robot keretrendszer (Japánban az első).
Az utolsó robot keretrendszer a ROS (Robot Operating System), amelyet a készítői operációs rendszernek neveznek, de hasonló szolgáltatásokat biztosít, mint az eddig vizsgáltak (fórum, dokumentáció a [8] oldalon található, felépítését, és működését Quigley et al vezették be [9]). Itt is a robot rendszerünk elemeit kell egy központi szerverre regisztrálni, de itt ROS node-nak nevezik. Maga a rendszer nem engedi tovább osztani a node-okat, de a mások által fejlesztett nodelet csomag lehetővé teszi "csomópontocskák" létrehozását, azaz algoritmusok, melyek egy processzen belül futnak. Saját központi processze van (roscore file, amely a ros master, és a rosout node-okat hozza létre), amely biztosítja a központi loggolást, és egy osztott, közös paraméter készletet. Ennek a központi logikának folyamatosan futni kell, a rendszerünk üzeme alatt. A csomópontok egymással kommunikálni aszinkron módon üzenet küldéssel, vagy szinkron módon szerviz hívással tudnak. A csomópontok kapcsolódása automatikus, azaz ha elérhető az a folyamat, amely meghirdette a topic-ot, és amelyik érdeklődik az iránt, úgy azok összekapcsolónak a roscore API-ját használva. A fejlesztők munkáját maximálisan támogatják, a végfelhasználókét kevésbé. A legnépszerűbb mind a robotgyártók, mind a robot komponenseket fejlesztők körében.
Mind a négy keretrendszer esetében valamilyen fogalmat használnak osztottan, ami vagy ágens, vagy port, vagy komponens, vagy node. Bár a YARP a kommunikációra több lehetőséget biztosít, addig az eszköz készlete sajnos csekély. Míg az OpenRDK és YARP fejlesztése leállt, addig az OpenRTM-aist és ROS rendszerek hódítanak szerte a világban. A továbbiakban ezen két robot keretrendszert állítjuk egymás mellé, és hasonlítjuk össze részletesebben.
A fejlesztő szemszögéből a komponens programozását segítő eszközök meglétét és a szükséges ismereteket vizsgáljuk meg. Megnézzük, hogy a két rendszer esetében mi jellemzi egy új projekt, majd a projektben egy új komponens létrehozását.
ROS esetén egy új csomag a catkin_create_package eszközzel generálható, amely eredményeképpen egy mappa jön létre, ami tartalmaz egy CMakeLists.txt-t és egy package.xml-t. Ezeket a file-okat kell később módosítanunk, ha más csomagot használunk, vagy új futtatható állományt szeretnénk készíteni. Ha csak üzenetet szeretnénk fogadni, vagy használni, akkor a hivatalos tutorial-t könnyen átírhatjuk, és a saját logikát egy általunk létrehozott metódusba tehetjük. Nem generál osztály vázat, de nincs is szükség a használatához osztályra, valamint a kezdő mappa tartalma egyszerű. Az alap szolgáltatások elérése 3 osztály használatával már lehetséges, a komponens logikájának implementálása nem igényel nagyfokú rendszer ismeretet. A rendszer C++ és Python nyelvet támogat. A fordításhoz saját catkin_make eszközt biztosít, amely a platform független CMake rendszert használja. Programozói fejlesztő felületekből azokat használhatjuk, amelyeket a CMake ismer, és képes a projekt file-okat generálni (jelen pillanatban: CodeBlocks, Eclipse, Xcode, KDevelop, Visual Studio).
OpenRTM-aist rendszerben a projekt létrehozása az RTCBuiler vagy egy karakteres eszköz rtc-template-el lehetséges. Az RTC Builder az Eclipse-en belül fut, felületét a 22. ábra mutatja.
Ezek az eszközök létrehoznak négy szöveges file-t: makefile-t, a komponens osztály header-t és cpp forrást, valamint egy main-t tartalmazó cpp file-t. Ezek a generált állományok már működnek, azonban tartalmuk nehezen érthető, módosításukhoz nagy rendszer ismeret szükséges (már alapból egy származtatott osztályunk van, ami felüldefiniál metódusokat, valamint a Factory tervezési minta kódjai is léteznek). 5-10 osztály ismerete szükséges a kezdő lépésekhez is. A kezdő projekt létrehozásához is sok paraméter ismerete szükséges 20-30, aminek angol nyelvű dokumentációja szegényes, így riasztó lehet. A C++, Java, Phyton nyelveket támogatja, valamint Eclipse és Visual Studio környezeteket.
ROS esetében több mint 2000 kisebb nagyobb mások által készített komponens használható fel. Ez esetben, mivel vannak kész komponensek egy új alkalmazás építése gyors és egyszerű. Ha a robotrendszerünket jól terveztük meg, azaz pontosan definiáltuk a komponenseket, és azok között interfészeket, akkor fejlesztés történhet párhuzamosan és gyorsan, köszönhetően a rendelkezésre álló eszközöknek. Egy topic-ba egyszerűen lehet üzenetet küldeni a rostopic eszköz segítségével, vagy akár figyelni, hogy megérkezett-e a megfelelő üzenet. Nem kell tehát a másik komponens-re várni, amelyik fogadja vagy küldi az üzenetet. Egy új funkció kiexportálása csupán egy új metódus, egy új változó definiálását és egy függvény hívását igényli.
OpenRTM-aist rendszerben 500-1000 komponens érhető el, amelyek egy része csak Windows-on vagy csak Linux-on fut. Ezek dokumentációja legtöbb esetben csak japánul található meg, ezért használatuk nehézkes. A fejlesztőt debug, teszt eszközök nem segítik, nekünk kell megírni a teszt komponenseket is. A rendszer szolgáltatásainak használatához sok esetben CORBA ismerete szükséges, ami újabb tanulni való a fejlesztőnek. A fejlesztőnek egy osztályt kell létrehoznia, ami komponens logikáját kell, hogy tartalmazza. Ez a komponens portokon keresztül kapcsolódhat más komponensekkel, valamint egy állapot gépként kell implementálni. A komponens teljes architektúráját a 23. ábra láthatjuk.
Az OpenRTM-aist a végfelhasználónak mindenképpen több lehetőséget ad, mint más robot rendszerek. Biztosítja a komponensek cseréjét a robot rendszer struktúrájának kialakítására, az egyes komponensek paramétereinek beállítását és annak vezérlését. A rendszerhez mellékelnek parancssori eszközöket rtc_shell csomagban, amelyek Phyton scriptek, valamint egy Eclipse plugint egy rendszer szerkesztőt. A 24. ábra szemlélteti a képernyő képét.
Az ábrán bal oldalt az elérhető komponenseket, mellette középen a robot rendszerünk topológiáját, jobb szélen pedig a komponens fontosabb tulajdonságát láthatjuk ez - bár mérete elég nagy, és grafika képességei limitáltak - mindenképpen egy hatékony rendszer felügyeleti eszköz. A végfelhasználó bármikor el tudja indítani vagy leállítani a robot rendszerét, vagy annak bármelyik komponensét. Ha ez a felület nem volna elegendő, akkor lehet újat fejleszteni, de rendszer ilyen mélyen nincs dokumentálva, így a forrás kódokat kell elemezni.
ROS esetében kevés eszköz áll a végfelhasználó rendelkezésére, sőt valójában a fejlesztő eszközöket használhatjuk csak. Van ugyan néhány grafikus felületű eszköz, amelyek qt-ben implementáltak, de ezzel csak a log üzeneteket tudjuk megjeleníteni, a rendszer felépítését tudjuk megjeleníteni. Létezik egy külső komponens család a Robot Web Tools, amely egy Java script gyűjtemény és egy Python szerver alkalmazás, mellyel egy böngészőből lehet a robotokat megfigyelni, de ehhez még saját fejlesztés szükséges.
Az OpenRTM-aist a végfelhasználónak több lehetőséget biztosít grafikus felületeken keresztül, de a fejlesztéséhez több ismeret szükséges. Olyan esetekben, amikor a kutató személy több lehetőséget, megoldást szeretne használni, optimálisabb megoldás a ROS-nál. A több programozói nyelv, és operációs rendszer miatt szélesebb körben alkalmazható. Sajnos a dokumentáció hiánya, és a meglévő komponensek részleges japán nyelvű dokumentációja miatt nem tud igazán elterjedni. A több operációs rendszer támogatását előnyként említettük, azonban hátrányt is jelent, hiszen ha olyan rendszert szeretnénk építeni, amely komponenseit megtaláltuk, de azok nem képesek azonos rendszeren futni, akkor csak ezért kell több számítógépet üzemben tartani. A fejlesztők számára több lehetőséget biztosít, azonban sokkal több ismeret és tapasztalat szükséges a kihasználásához. Az OpenRTM-aist példa projektjeiben sok hasznos dolgot találhatunk, de mivel nincs leírva, nekünk kell megkeresni. A rendszernek aktív japán közössége van, de a kérdések és a válaszok sok esetben csak japánul érhetőek el.
A ROS használata javasolt autonóm rendszerek esetén, amikor a komponensek automatikus kapcsolódása törvényszerű. Ilyenkor nem kell grafikus felület. A meglévő komponensek között megtaláljuk a szükségeset, mivel általában kis méretűek, ezért megismerésük, kiterjesztésük nem okoz nagyobb problémát. Kezdő fejlesztőként a ROS komponens létrehozása lényegesen egyszerűbb, hiszen nem is szükséges osztályt létrehoznunk, elég csak használni a meglévőket. Itt is igaz a kevesebb, sokszor több elv. Folyamatosan fejleszti egy aktív közösség, melynek köszönhetően a hetedik verziót számlálja. Aktív fórum oldala van, ahol kérdéseinkre gyorsan kapunk válaszokat.
Napjainkban számos tárgyunkat informatikai eszközünket illetjük az intelligens vagy okos jelzővel. Okos telefon, intelligens épület, stb. De mit jelent az informatikai eszközök intelligenciája? Természetesen nem lehet emberi intelligenciáról beszélni. Az intelligens informatikai eszközök külső megjelenése sem emberi, de tudásban sem mérhetők az emberhez. Sokkal inkább tekinthetők egy alacsonyabb intelligenciájú, az embertől különböző külsejű másik fajnak. Ez a leírás illik az állatokra is.
Az Eto-Informatika célja, hogy az ember és az informatikai eszközök kapcsolatát egy új, etológiai indíttatású alapra helyezze. Mivel az informatikai eszközök egy alárendelt szerepet kell játszaniuk a felhasználóval szemben és morfológiailag is különböznek az embertől, úgy gondoljuk, hogy az ember és informatikai eszközök kapcsolatában, illetve kommunikációjában etológiai (ember-állat) megközelítés sikeresen adaptálható. E projektben az ember és informatikai eszközök kapcsolatának mintájául elsősorban a 20 ezer éves tapasztalatok alapján kialakult ember-kutya szociális kapcsolatának etológiai modellje szolgál.
Példaként vegyünk egy olyan funkciót, mint az üdvözlés. A felhasználó hangulatát ez sokban javíthatja. Meg kell ismernünk, hogy a különböző állatok milyen üdvözlésormát használnak és azok közül melyik ültethető át informatikai eszközre.
Az elmúlt évtizedekben a kutatások abba az irányba haladtak, hogy embereknek fejlesszen ki olyan robotokat, amelyek a napi életvitelt könnyítik meg. A robotok, ilyen ember közeli alkalmazása teljesen új problémákat és nehézségek megoldását igényli az ipari robotokkal szemben. Az ipari robotok egy könnyen definiálható környezetben dolgoznak (gyár) magas hatékonyság mellett, mivel a beléjük táplált program elegendő a munka megfelelő elvégzésére. Természetesen ilyen esetben, az ember és gép közötti kommunikációra elegendő a program futása során érkező jelre a program hierarchiája szerint generálni a válasz jelet. Tehát csakis parancs szerű kommunikálás van. Ezzel ellentétben az emberi robotoknak már teljesíteniük kell az emberek által támasztott szociális követelményeket, úgy mint érzelem kifejezés, kognitív gondolkodás. Tehát ezen szociális robotoknak emberekkel, emberek által megértett és értelmezhető kommunikációt, érzelem kifejezést és interekciót kell folytatni. A szociális robotok kutatása és fejlesztése kiterjed a művészetektől, a mérnökökön és az orvostudományon keresztül egyéb tudomány területekig. Ezért az emberi robotk érzelem kifejezés lehetőségét szeretném megvalósítani.
Szociális robotok érzelmi modellt használnak, amely rendelkezik egy általános szerkezete érzelmeket kezelő szerkezettel . A robotok el vannak látva érzékelőkkel (vizuális, audio-, mechanikai érzékelők) amelyek detektálják környezet eseményeit. Azonosított események során az érzelmi információk átadása az érzelmi motornak. Az érzelmi motor értelmezi a információt. Kiszámítja a hatását, az eseménynek az érzelmi modellen. Végül, az érzelmi modell a motor által értelmezett majd a motor által választ generáló kimenetet a .kimeneti perifériákon kifejezi.
Etológiai és pszichológiai kutatások eredményei (pl.: Topál és munkatársai 1998, Ainsworth 1969, Bowlby 1969) alapján feltételezhető, hogy a kutya és gazdája, valamint a csecsemő és anyja közti aszimmetrikus szociális kapcsolat – a kötődés – hátterében lényegileg ugyanaz a mechanizmus áll.
A kezdetben vadon élő, az emberre semmilyen preferenciát nem mutató farkasok közül azok az egyedek, amelyek – máig tudományos vita tárgyát képező okból - az ember közelségét keresték, a táplálék relatív bősége miatt evolúciós előnyre tettek szert vad, falkában élő társaikhoz képest. A túlélésük szempontjából előnyösebb környezethez való alkalmazkodás, és az ember külső szelekciós hatása – a tenyésztés és a kevésbé együttműködő állatok megölése – így vezethetett el egy új faj, a házi kutya (Canis familiaris) megjelenéséhez. Később a kutyákat az ember, mint természetes környezetük meghatározó eleme evolúciósan együttműködésre szelektálta, így alakulhatott ki az állatvilágban egyedülálló, fajok közti viselkedés, a kutya-ember kötődés.
Jelenlegi ismereteink bemutatása a kötődésről, amely a későbbiekben segíti majd az ember számára érzelmileg jobban elfogadható intelligens, autonóm gépek megalkotását (Zanaty és mtsi 2008).
„A legáltalánosabb megfogalmazás szerint a kötődés egy egyed tartós vonzódása valamely inger-együtteshez.” A dolgozatban használt megközelítésben a kötődés alatt a gazda és a kutya közötti egyedi felismerésen alapuló szociális vonzódást értünk (Gácsi 2003), amely viszonyban a kutya kötődésének a tapasztalható viselkedés szintjén megjelenő formáját kíséreljük meg reprodukálni. Célunk olyan autonóm mechanizmus létrehozása, mely a kötődés viselkedésformáit legalább megközelítőleg létrehozza, így az általa adott eredmények és a valós kutyákból álló kontroll minta által adott referencia közti minőségi eltérésből következtethetünk a koncepció helyességére.
A kötődés tudományos megismerésének gyökerei Konrad Lorenz-ig, az etológia atyjáig nyúlnak vissza, aki lúdfiókákon figyelte meg, hogy azt tekintik szülőjüknek, akit a kikelés pillanatában először megpillantanak – imprinting - (Lorenz 1935), így az egyedfejlődés kezdeti szakaszában őt tekintik biztonságos menedéknek és a későbbiekben is preferenciát mutatnak rá. Ez veleszületett adottságuk, amely segíti a túlélésüket. Számos más faj esetében is megfigyeltek és dokumentáltak a szülő-utód kapcsolatában megjelenő különleges viszonyt. A kötődés általánosabb leírása azonban akkor került először a figyelem középpontjába, amikor a pszichoanalitika professzora J. Bowlby (1969) megalkotta etológiai ihletésű elméletét a csecsemők anyjukhoz való kötődéséről. Az alkalmazott pszichológia területén már régóta vizsgált szülő-gyermek viszony és az állatok viselkedésében megjelenő analógiákat fölismerve publikált egy evolúciós szemléletű tanulmányt az anya-gyermek kötődésről.
Ebben a következő, jól elkülöníthető viselkedéselemeket nevezi meg, mint a kötődési viselkedés megjelenési formáit:
Közelség keresés – A gyermek keresi az anyja közelségét, megközelíti, követi, a vele való kontaktus megnyugtatja, az anyjától elválasztva azonban tiltakozik, averzív viselkedést mutat – sír – (3 szeparációs fázis), növekszik a stressz szintje.
„Safe Haven” – A baba stresszhelyzetben az anyjához fordul vigaszért, és támogatásért, ha ezt nem tudja megtenni, akkor elbizonytalanodik, félni kezd.
„Secure Base” - A játék és exploráció során az anya szolgál biztonságos menedékként az utód számára, így fenyegetés esetén hozzá menekül a fenyegetőtől való lehető leggyorsabb eltávolodás helyett.
Szeparációs Stressz – Az utódot az anyjától elválasztva a gyermek szeparációs stresszt mutat, fél, sír, zavart lesz, újra találkozáskor üdvözli az anyját, hozzábújik, majd rövid időn belül megnyugszik.
A fenti viselkedéselemek a kutya-gazda kötődés esetében is megjelennek, ennek kísérleti bizonyítását a következő pontban tárgyaljuk.
Bowlby cikkével szinte azonos időben jelent meg a a szintén pszichológus M. D. S. Ainsworth (1969) tanulmánya melyben ismerteti módszerét, az Idegen Helyzet Tesztet (IHT). A teszt segítségével kimutatható csecsemő korú gyermekek kötődése anyjukhoz.
A hét, egyenként 3 perces jelenet során egy barátságos idegen megjelenése, majd az anyától való két rövid szeparáció mérsékelt stresszt jelent a 12-18 hónapos csecsemő számára. A teszt segítségével eredetileg a babák ismeretlen helyen mutatott kontaktuskereső és explorációs viselkedésének egyensúlyát kívánták vizsgálni különböző helyzetekben (Ainsworth és Wittig 1969). Az anyától (illetve apától) való többszöri szeparációt és újra találkozást tartalmazó teszt ideálisnak tűnt a kötődési viselkedés aktiválására. A teszthelyzet alkalmas módszernek bizonyult a még nem eléggé önálló újszülött fő veszélyforrásokkal való szembesülésének modellezésére, az anyától való szeparáció következtében egyedül vagy egy idegen fajtárs jelenlétében mutatott viselkedés megfigyelésére. Egy későbbi munkájában a teszt újratalálkozás részében rejlő lehetőségeket fölismerve már négy csoportba tudja osztani a vizsgált csecsemőket viselkedésüktől függően (A-elkerülő, B-biztonságos, C-ambivalens/rezisztens, D-dezorientált/abnormális), így a teszt kiértékelése emberek esetén cizellált vizsgálati eredménnyel kecsegtetett. (Ainsworth 1978)
A fajon belüli szülő-utód kapcsolatban a környezeti hatások és tanult viselkedések vizsgálata mellett fölmerült az igény, hogy megvizsgálják, ember által gondozott állatok esetén képes-e a gondozott állatkölyök kötődésre az őt felnevelő ember gondozó felé (Bard, 1991). Így került sor szociális főemlősök – csimpánzok - fajon belüli és az emberrel kapcsolatos kötődési viselkedésének vizsgálatára. Korábbi főemlősökön végzett vizsgálatokkal pedig az ember szociális viselkedését evolúciós gyökerekre visszavezető kérdésekre próbáltak válaszolni (Harlow 1965). Ezen főemlős kísérletek mellett merült föl fejlett szociális viselkedése, és számos más előnyös tulajdonsága miatt a kutya vizsgálatának lehetősége (Igel és Calvin 1960).
A kutyákon a domesztikáció során az emberi környezetben történő szelekció eredményeként olyan változások mentek végbe, melyek új környezetükben a lehető legjobban segítették túlélésüket. Így alakult ki a kutyákra jellemző szelídség, az emberhez való szociális vonzódás és az embertől való függőség a felnőtt állatok esetében is – a neoténia.
„A domesztikáció folyamata tehát feltétlenül az emberre való kötődési képesség kifejlődése irányában kellett hogy hasson, ezzel megteremtve a konfliktusmentes együttélés lehetőségét (Millot 1994).”
Az IHT kutyákkal való elvégzése viszonylag új keletű, Topál és munkatársai (1998) vizsgálták először a kutya-gazda kötődést etológiai módszerrel. Az általunk kontrollcsoportnak tekintett mintán Gácsi Márta: A kutyák gazda iránt mutatott viselkedésének etológia vizsgálata (2003) című doktori értekezésének keretein belül végezte el az IHT kísérleteket, jelen dolgozat számos pontban épít munkájára, így az általa alkalmazott IHT protokollt fogjuk használni a modellnek megfelelő egyszerűsítésekkel.
1. epizód (0-2 perc)
A gazda a kísérleti helyiségben , 1 percig passzív, majd játékot kezdeményez. Ha a kutya nem akar játszani, akkor is megpróbál fizikai kontaktusba lépni vele (simogatni).
2. epizód (2-4 perc)
Az idegen belép az ajtón majd megáll. Később a megközelíti a kutyát, fizikai kontaktust kezdeményez vele. Ezután a szoba közepén fél percig passzív marad. Ezután 1 percben a kutyával próbál játszani. Megpróbálja a helyiség ajtótól távolabbi részébe csalogatni a kutyát és ott játszani vele. Ha a kutya nem akar játszani, akkor is megpróbál fizikai kontaktusba lépni vele (simogatni). A gazda az idegen jelenlétében passzív, majd amíg a kutya az idegennel játszik feltűnés nélkül kimegy.
3. epizód (4-6 perc)
Amikor a gazda kiment, az idegen megpróbálja folytatni a kutyával a játékot maximum még egy percig. Amennyiben már eddig sem játszott, ill., ha bármikor abbahagyja a kutya a játékot (az 1 percen belül), vagy ha letelt az 1 perc játékra szánt idő, akkor az idegen minden esetben fizikai kontaktust kezdeményez. Ez úgy történik, hogy aktívan keresve a kutya közelségét megpróbálja megsimogatni, és ezzel rávenni arra, hogy jöjjön vele a szoba közepéhez, ahol passzív marad. A kutyával végig fizikai kontaktust kezdeményez.
Amikor a (következő epizód elején) a gazda bejön, az idegen úgy távozik, hogy megvárja, míg az üdvözlés lezajlik, és a gazda eltávolodik az ajtótól.
4. epizód (6-8 perc)
A gazda belép az ajtón majd passzívan áll, 5 másodpercig vár a kutya reakciójára, majd üdvözli a kutyát fizikai kontaktust kezdeményez. Ezután 1 percig játszik vele. Ezután a szoba közepére megy és passzív lesz újabb egy percig. Utána feláll, és kimegy.
5. epizód (8-10 perc)
A kutya egyedül van a helyiségben.
6. epizód (10-12 perc)
Az idegen belép, majd megáll 5 másodpercig passzív. Ezután üdvözli a kutyát, és fizikai kontaktust kezdeményez. Utána az idegen a helyiség ajtótól távolabbi részében megpróbál a kutyával játékot kezdeményezni maximum 1 percig. Amennyiben a kutya nem hajlandó játszani, ill., ha bármikor abbahagyja a kutya a játékot (az 1 percen belül), vagy ha letelt az 1 perc játékra szánt idő , akkor fizikai kontaktust kezdeményez, aktívan keresve a kutya közelségét. Megpróbálja a kutyát a szoba közepére csalni majd ott passzív lesz. A kutyával fizikai kontaktust kezdeményez, ha az közel jön. Amikor a gazda bejön, az idegen távozik. (Megvárja, míg az üdvözlés lezajlik, és a gazda eltávolodik az ajtótól.)
7. epizód (12-14 perc)
A gazda bejön az ajtón. Megáll, 5 másodpercig passzív, majd üdvözli a kutyát fizikai kontaktust kezdeményez. Ezek után 1 percig játszik vele. Ezután a gazda a szoba közepén passzív marad.
Közelségkeresés – „Proximity Maintenance”
A kutya saját belső állapotának (stressz szintjének) megfelelően választja meg, a gazdától való távolságát, a gazda közelsége megnyugtatja, magas stressz esetén a kutya-gazda távolság csökken, alacsony stressz szint esetén a kutya explorál, játszik, közben folyamatosan figyeli a gazda helyzetét
Mentsvár – „Secure Base”
Ha a kutya megijed, váratlan vagy félelmetes külső ingerforrással találkozik, a gazdához megy ahelyett, hogy a lehető legrövidebb idő alatt az ijesztő ingertől a legmesszebb próbálna kerülni.
Szeparációs stressz – „Separation Distress”
Ha a kutyát a gazdától elválasztják, akkor a belső stressz szintje nő, nyugtalan lesz, újra találkozáskor üdvözli a gazdát, akinek jelenlétében ismét megnyugszik, belső stressz szintje csökken.
Menedék – „Safe Haven”
A kutya stressz helyzetben, fájdalom esetén a gazdához fordul támogatásért, ha erre nincs lehetősége, belső stressz szintje nő, és zavarviselkedést mutat.
Szociális tanácsadó – „Social Reference”
A kutya ismeretlen ingeregyüttessel találkozva, amennyiben saját maga nem tudja eldönteni, hogy az adott ingerhez hogyan viszonyuljon, a gazda viselkedését figyeli és saját viselkedését ahhoz igazítja.
A továbbiakból gondolatok kivehetők, de a fogalmazás legyen egy kicsit más
Rohamosan fejlődő társadalmunk embere már nem kerülheti el, hogy mindennapi életviteléhez ne vegye igénybe a legújabb informatikai fejlesztések gyümölcseit. Az Európai Uniós irányelveknek megfelelően hazánkban is a "digitális írástudás” elterjesztése és fejlesztése egy kiemelt célterület. Mind kormányzati, mind politikai és ipari, valamint társadalmi "nyomás” nehezedik a ma emberére, hogy egyre több új informatikai rendszer használatát sajátítsa el. Gondoljunk csak az elektronikus ügyintézésre, adóbevallásra, számlázásra, banki átutalásokra, elektronikus vásárlásra, parkolásra, autópálya díj kiegyenlítésre, mobil fizetésre stb. Ezek a rendszerek már ma hazánkban is egyre elterjedtebbek, és még így is igen jelentős lemaradásban vagyunk pl. a Japánban ma mindennaposan elterjedt informatikai alkalmazások terén. A jelenlegi informatikai fejlesztéseknek köszönhetően jelentősen lerövidülnek a fent említett esetekben az ügyintézés költségei és az ezekre fordított idő, így ezen eljárások gazdasági hatása jelentős. A fejlett világban így az EU-ban is jelentős pénzeket fordítanak olyan informatikai fejlesztésekre, melyek könnyebbé, gyorsabbá teszik életünket. A nemzeti GDP egyre nagyobb hányadát fordítják az elektronikus kormányzati-hivatali rendszerek fejlesztésére, informatikai rendszerek biztonságának fejlesztésére stb. A ma emberét nemcsak hivatalos ügyeinek intézése közben szorítják rá egyre jobban az új informatikai termékek használatára, hanem a szórakoztató ipar részéről hatalmas a nyomás az új fejlesztések minél hamarabb történő piacra történő bevezetésében. A háztartásunkban egyre több termék digitális, internetre köthető, elektronikusan vezérelhető, adattároló, adattovábbító. Napjaink fiataljainak a mindennapi tevékenységeinek nagy része köthető a „digitális szociális viselkedéshez”: már szinte csak elektronikus levélben, vagy azonnali üzenettovábbítóval kommunikálnak, az SMS, MMS már mindennapos, szinte minden elektronikus használati tárgyuk alkalmas digitális adatrögzítésre és továbbításra. Az ipar fejlesztői jól látva ezeket a trendeket egyre nagyobb erőforrásokat fektetnek az új termékek személyre szabhatóságának fejlesztésébe, hogy termékeik ne csak használhatóak legyenek, hanem nélkülözhetetlen legyen felhasználója (gazdája) számára és akár kifejezze gazdája kulturális, társadalmi hovatartozását, mint például az új generációs mobiltelefonok esetén megfigyelhető. Mivel a mai mobiltelefonok már mindenki számára elérhetők, a tömeggyártás felgyorsulásával egyre olcsóbbak, ma már egyetlen mobiltelefon is igen jelentős számítási és adattárolási kapacitással bír, ami egyre bonyolultabb feladatok elvégzésére teszi alkalmassá. Így például egy mobiltelefon ma már szinte minden feladatot el tud végezni, amire a ma emberének szüksége van „digitális ügyei” intézéséhez. Az új informatikai lehetőségek alkalmazásához, kihasználásához elengedhetetlen, a "digitális írástudás" ennek első lépése, hogy az általunk használt informatikai eszközöket egyáltalán használni tudjuk. Minél bonyolultabb egy eszköz használata, annál kevésbé használható a mindennapokban, annál kevésbé vagyunk hajlandóak az eszköz funkcióinak megtanulására. A felhasználók jogos igénye, hogy az új informatikai eszközök- szoftverek használata ne nyűg legyen, és ha már ezeket az eszközökkel naponta sok időt töltünk "együtt", akkor ezek a saját ízlésünknek megfelelően személyre szabható „segítőtársak" legyenek.
A kutyák kötődési viselkedését vizsgálták etológiai kutatók az elmúlt 50 évben. Ma már a kötődési viselkedés objektíven mérhető az idegen helyzet teszt (IHT) segítségével. A kutyák viselkedésének számos IHT-vel való megfigyelése az alapvető bemenete egy elvont érzelmi fuzzy modellnek, az ún. eto-motornak. Ez az eto-motor vezérli magas szinten a MogiRobi-t.
A vezérlő algoritmus bemenő információit az iSPACE biztosítja. Az iSPACE (Intelligent Space)[2] egy intelligens környezet, mely információt és fizikai támogatást nyújt az emberek és robotok számára teljesítményük javítása érdekében. Ezt szenzorhálózaton és a nyers szenzor jelek megosztott feldolgozásán keresztül valósítja meg. A robottal végzett viselkedési kísérlet során a gazdája, egy idegen és egy játék tartózkodik az iSPACE-ben, ld. 3-1. ábra. A működés a gazda és az idegen viselkedésén múlik
Etológia által ösztönzött kutatások az ember-kutya kapcsolat és kölcsönhatás területén azt sugallják, hogy a kutyák viselkedési képességeket alakítottak ki az emberi környezetben. A szociális fejlődés megnöveli a túlélési esélyeket az emberi környezetben. [5] A kutyák vizuális (pl. farok-, fej- és fülmozgatást) és akusztikus jeleket (pl. ugatást, morgást és nyüszítést) használnak érzelmeik kifejezésére. A kutyák kombinálják is ezeket a módszereket az emberekkel való kommunikációhoz. Az emberek képesek felismerni a kutyák alapvető érzelmeit különösebb tapasztalat nélkül is.[6] Mérnöki módszereink tükrében nem nyújtunk érzelmi modellt a robotnak, de adunk egy eszközt a modell megvalósítására. A robot érzelmei kifejezhetőek a 3-2. ábra és az 3-3. ábra szerint, ahol a robot szomorú vagy vidám. Analógiát állítunk a kutya és a robot között. Az ember-robot kölcsönhatást az ember-kutya interakció analógiájára tervezzük. Az emberek képesek érzelmek felismerésére a roboton az alapvető kutyaszerű viselkedés motívumaiból.
Ipari környezetben leginkább az nonholonóm robotok alkalmasak ipari feladatok elvégzésére. Ellenben a szociális és szervizrobotok esetében további vizsgálatokra van szükség a meghatás koncepcióját tekintve. A cél egy olyan robot készítése, mely könnyen elfogadható az emberek számára, akár egy kutya. Tulajdonképpen a kutya és a legtöbb állat is holonóm mozgásúak. A holonóm robotok és kutyák külön sajátossága, hogy mozgási és nézési irányuk eltérhet a célpont megközelítése során egy nem egyenes trajektórián (ld. 34. ábra). A mozgási és nézési irány mindig különböző a fent említett esetben. Nagyon különös, ha egy nonholonóm meghajtású robot leveszi a tekintetét célpontjáról miközben megközelíti azt.
Ezen alapul a feltételezésünk, miszerint a holonóm meghajtás megfelelőbb a szerviz robotok esetében érzelmek kifejezésére mozgások által és azzal hogy tekintetüket a célra irányítják miközben megközelítik azt. A holonóm tulajdonság alig érhető el lábbal rendelkező robotok esetében a nagy energiafogyasztás és a széleskörű mérnöki munka igénye miatt. Ebből kifolyólag a holonóm kerék (omni kerék) a MogiRobi kompromisszumos megoldása.
Lábak helyett a szerkezet egy holonóm alappal rendelkezik. Ez egy új koncepciójú mobil robot meghajtási rendszer. A robot mozgása lábakkal sokkal több energiát igényelne, mint kerekeken gurulva, azon kívül sokkal komplikáltabb és költségesebb is lenne. Egyenletes mozgás lábakon komplex vezérlő algoritmust, drága mechanikai konstrukciót igényelne több változatban is. A fő szempont a robot mozgásának megtervezése során az a képessége volt, hogy mozoghasson minden síkbeli szabadságfokban. A többirányú meghajtással a robot felveheti a referencia pozíciót és orientációt bármely irányból, akár egy kutya, nem csak előre és hátramenetből mint a differenciális, vagy autószerű meghajtások. Az omni kerekek olyan kerekek melyek kerületén körül apró tárcsák (kisebb kerekek) helyezkednek el merőlegesen a gördülési irányra. (37. ábra) Ez a mechanikai konstrukció azt eredményezi, hogy a kerék foroghat teljes erőből, ugyanakkor könnyen elcsúszhat oldalirányba. A három kereket három DC motor hajtja fogaskerekeken és szíjhajtáson keresztül. A robot képes elérni a 2m/s csúcssebességét (7,2 km/h) bármely irányba. Amint az 35. ábra és a 36. ábra mutatja, a motor tengelyek körben helyezkednek el a középpont felé irányítva. A tengelyek 120°-ot zárnak be egymással. Ezzel a fajta konfigurációval egy 3 szabadságfokú holonóm rendszert (x,y, rot z) kaphatunk. A legtöbb szárazföldi állat három szabadságfokban képes mozogni. Forgás és egyidejű haladás valamelyik irányba. [4] A hagyományos meghajtások (kormányzott kerék, differenciális meghajtás) ezt nem tudják teljesíteni. A MogiRobi platformja képes 20 kilogrammot is szállítani maximális sebességén. Körülbelül 0,25 kWatt DC motor erejével rendelkezik. Normál használat mellett két órát képes működni egyetlen akkumulátortöltéssel. Minden motor tengelyen inkrementális enkóderek vannak. Az inkrementális enkóderek jeléből és a kinematikai modellből kiszámolható az x,y és rot z koordináta az út során A és B pont között. Hasonlóképpen megtervezhető az út két relatív referenciapont között interpolációval. Az állati jellegű mozgás (gyorsulás, sebesség, út) elérhető egy beágyazott rendszerben megvalósított vezérlő algoritmussal. Az alvázon elhelyezett alaplap megkaphatja a mozgáshoz szükséges relatív pozíciót, orientációt, abszolút sebességet és gyorsulás referenciát valamint már perifériális referenciákat Bluetoothon keresztül. A perifériális elektronika soros perifériális interfészen (SPI) keresztül csatlakoztatható.
A robotnak van egy drótozott teste, melyet két RC szervó mozgat fel és le. Ezzel a részével a robot úgy viselkedhet, mint az agresszíven viselkedő macskák.
A robot fejét a 3-10. ábra szemlélteti, négy szabadságfoka van. A robot nyaka által mozoghat a test íve körül. A fejet egy gömbcsukló kapcsolja a testhez. A gömbcsuklónak három szabadságfoka van (rot x, y, z). A fej a gömbcsukló körül mozog három RC szervó által hajtva. (3-8. ábra és 3-9. ábra) Ezek közül a nyakon található kettő a rot x és y, valamint egy a fejben a rot z szabadsági foknak. (Ahol Z a függőleges tengely. A fejen található még két fül és szempillák melyeket szintén kompakt szervók mozgatnak.
A megfogót a 3-11. ábra szemlélteti. Ez nagyon fontos szerepet játszik amikor a robottal játszunk. A robot befoghat egy labdát vele.
A faroknak fontos szerepe van az érzelmek vizualizálásában. A farok mechanikai konstrukcióját a 3-12. ábra és a 3-13. ábra szemlélteti. Egy szervó hajtás mozgatja a műanyag farkat két vezeték segítségével. A farok rugókkal a testhez van hajlítva. Az oszcilláló mechanikai rendszert egy DC szervó hajtás gerjeszti a csóváló mozgáshoz. A rendszer csillapítása elhanyagolható. Számos rugó kipróbálásával és vezérlő algoritmus segítségével úgy tudtuk behangolni a rendszert, hogy az egy állat farok csóválásához hasonlítson. Ezek a kis dolgok is rendkívül fontosak ahhoz, hogy a robotot el tudják fogadni gyerekek, idősek stb.
Minden vezérlőpanelnek van egy processzora. Az első egy egyszerű 8-bites RISC Xmega processzor az Atmeltől. (3-14. ábra) Ez kezeli Bluetoothon keresztül a kommunikációt a szerverrel. Szintén ez kezeli a motorvezérlő ciklust és a magas szintű pozíciószámításokat. Elküldi a szervó vezérlőpanelek számára a referencia szögeket és kezeli a három enkóder csatornát az útméréshez. A szervó vezérlő panelt szemlélteti a 3-15. ábra, ennek 15 kimeneti csatornája van kompakt RC szervókhoz. RC szervók esetében nagyon fontos, hogy izolált tápot használjunk. A szervó vezérlő panel PWM jeleket állít elő a RC szervók számára. A szervó meghajtások erősen limitáltan képesek gyorsulni, hogy elkerüljék a tranziens zavarásokat a mozgás során. Minden szervó trajektória alacsony szimmetrikus gyorsulási profillal van kiszámolva, ezáltal biztosítva egyenletes mozgásprofilt a robotnak. A névleges teljesítmény paraméterei a PWM erősítő panelnak háromszor 24V/10A. Speciális autóiparral kompatibilis IC-ket használunk áram visszacsatolással, túláram- és hőmérsékletérzékeléssel. A robot hátulján található egy LDC vezérlőgombokkal, ld. 3-16. ábra. Lehetőség van választani a különféle vezérlési módok között. Futtathat öntesztet, ellenőrizhet információt, telep töltöttséget.
A robot lehet játék-üzemmódban, ahol külső számítógépről kap vezérlőjeleket a Bluetooth interfészén keresztül. Jogging üzemmódban a gombok segítségével vezérelhető a robot. Önteszt üzemmódban a robot ellenőrzi a perifériáit és a szervó meghajtást.
A fejezetben modellek fuzzy szabály-interpolációs automata (Hiba! A hivatkozási forrás nem található., Hiba! A hivatkozási forrás nem található., Hiba! A hivatkozási forrás nem található. és Hiba! A hivatkozási forrás nem található.) alapú megvalósítási lehetőségeit vizsgáljuk. Először az etológiai indíttatású ember-gép kapcsolatról, majd a viselkedés-alapú irányításról, végül pedig a fuzzy automatáról lesz szó. A leírni kívánt etológiai teszt folyamat bemutatása után a modell felépítését részletezzük. A fejezet végén példát láthatunk a fuzzy automata szabálybázisára és az ennek megfelelő futási eredményekre.
Az utóbbi években megnőtt az érdeklődés ember-gép kapcsolat alkalmazások iránt (Human-Robot Interaction - HRI). Általánossá vált a nézet, hogy az ember-gép kapcsolat javítható, ha ezen intelligens rendszerek valamilyen szocio-kognitív, vagy szocio-emocionális viselkedés kifejezésére képesek (lásd pl. Hiba! A hivatkozási forrás nem található.). A téma számos, a pszichológiát, a kognitív tudományokat, a szociológiát, a mesterséges intelligenciát, a számítástechnikát és robotikát is magába foglaló tudományterületet érint. A legfőbb cél az, hogy olyan megoldásokat találjunk, melyben ember az intelligens rendszerekkel a lehető leg természetesebb módon léphet kapcsolatba. Napjainkra az ember-gép kapcsolat felhasználó központúvá vált, azaz a rendszer hatékonyságát is a felhasználó szemszögéből kell értékelni. Ez a szemlélet erősíti azt is, hogy ma már egy robotnak nem csak egyes emocionális és kognitív képességeket kell mutatnia, hanem birtokában kell lennie az egyéniség kifejezés képességének is. Általában az egyébként szociális interakcióra képes robotok is alkalmatlanok hosszútávú emberi kapcsolatok kialakítására, így a kezdetben feléjük irányuló érdeklődés is hamar lelohad. A szociális interakcióra képes robotok tervezése számos kihívást rejt magában. Az eddigi fejlődés ellenére a természetes ember-robot interakció eléréséig sok még a megoldatlan feladat. A „borzongások völgye” hatás (Mori Hiba! A hivatkozási forrás nem található.) szerint, ha egy robot túlságosan emberszerűvé kezd válni, akkor van egy pont, ahol megnő annak a valószínűsége, hogy a vele kapcsolatba lépő emberből ellenérzéseket (félelmet) vált ki. Sokan vitatják ezt a hatást arra hivatkozva, hogy az elmélet nincs elég kutatással alátámasztva. Mások azt gondolják, hogy ha a hasonlóság átlép egy bizonyos határt, mint ahogy ez például az újabb számítógép grafikus karaktereknél történik, akkor a figurát az emberek elkezdik emberként kezelni Hiba! A hivatkozási forrás nem található.. Ugyanez a 3D robotok esetében már kevésbé egyértelmű, mivel a jelenlegi technológia túl nyers még a természetesnek tűnő viselkedés, érzelmek és párbeszédek megvalósításához. Azaz a „borzongások völgye” hatás a robotok esetében még megoldatlan kihívás.
A szociálisan interaktív robotok jelentős fejlődése ellenére motorikus és kognitív képességeik még mindig kívánnivalókat hagynak maguk után és az emberrel csak nagyon korlátozott interakcióra képesek. Ez a legfőbb probléma, mert a robotban a jelenleg rendelkezésre álló (hardver és szoftver) technológia mellett nem lehet elérni a kívánt emberszerű kognitív és motorikus képességeket. Emiatt van az, hogy a szociálisan interaktív robotok csak kevéssé keltik fel az emberek érdeklődését és az újdonság varázsának múltával még az is hamar eltűnik.
A biológiai, vagy pszichológiailag ihletett robotok tervezése és készítése azon múlik, hogy milyen mértékben értjük az emberi motorikus és mentális folyamatokat. Ezek azonban az élet leg összetettebb jelenségei. Ezért nagyon valószínű, hogy a szociálisan interaktív robotikához szükséges olyan emberi képességek, mint pl. a „megérzés”, vagy „emberi emlékezet, kellő szinten nem implementálható.
Ha a szociálisan interaktív robotot az ember képességeit alapul véve tervezzük, nem lesz lehetőségünk a szociális interakció embertől független általánosítására. Jelen esetben nem támaszkodhatunk az evolúcióra, ezért így csak a lehető leg emberibb robot elkészítését tűzhetjük ki célul.
Mindezen problémakör elkerülhető, ha etológiai indíttatású ember-gép kapcsolat modellt választunk. Az etológiai indíttatású ember-gép kapcsolat modell az állatok egymás közötti és az állatok ember felé irányuló interakciójának vizsgálatán alapul. Ez esetben az ember-gép kapcsolatban a robot a robot úgy viselkedik, mint egy az ember mellé szegődött állat társ. A paradigmának megfelelően a robotnak nem az embert és az ember-ember közti, hanem a biológiai rendszerekben már ismert fajok közötti kommunikációs sémákat kell követnie. A 20.000 éves ember-kutya kapcsolat Hiba! A hivatkozási forrás nem található. jó példa lehet erre a fajok közötti interakció paradigmára. Így természetesen a „borzongások völgye” hatás (Hiba! A hivatkozási forrás nem található.) is elkerülhető, hisz a robot nem lesz emberszerű.
Az ilyen robotoknak nem az ember szociális viselkedését kell másolnia (beleértve pl. a beszélt nyelvet is), hanem olyan minimális szociális viselkedéseket, melyek az ember-robot kooperációhoz elégségesek. Ezen alapmodell aztán bővíthető amennyiben az interakció összetettebbé válik.
Az etológiai modellekben jelentős állati viselkedéseket leíró tudás halmozódott. Ezen modellek általában verbális szakértői szabályok formájában adottak. A leíró szabály alapú tudásreprezentáció viszonylag könnyen átalakítható fuzzy szabályokká, azaz a verbális etológiai modellek viszonylag egyszerűen fuzzy modellekké alakíthatók. Problémát jelenthet azonban, hogy az etológiai modellek célja valamely jelenség szóbeli leírása és nem pedig implementálása. Azaz az etológiai modellek az implementáció szempontjából általában hiányosak. Ezen hiányosságok, azaz a nem teljes leírás miatt a klasszikus fuzzy következtetési módszerek nem alkalmazhatóak. A továbbiakban ezért fuzzy modellként alacsony számítás igényű fuzzy szabály interpolációs (Fuzzy Rule Interpolation - FRI) modelleket értünk (pl. FIVE Hiba! A hivatkozási forrás nem található.). A fuzzy interpolációs modellek ritka szabálybázisa jól illeszkedik az etológiai modellek „hiányos” leíró jellegű szabályformájához.
Az etológiai modellek fuzzy interpolációs modellekkel való leírásának legfőbb előnye az egyszerű szabályalapú tudásábrázolási forma. Emiatt a modell, még ha a modell a későbbiekben hangolásra kerül is, a szakértő (etológus) által könnyen értelmezhető, értékelhető és ellenőrizhető marad. Mindemellett az alacsony számítás igényű fuzzy szabály interpolációs módszerek könnyen implementálhatóak akár közvetlenül a robotokba is.
A továbbiakban az ember-gép kapcsolatra javasolt viselkedés-alapú szabályzási sémát vizsgáljuk.
A viselkedés-alapú szabályzás (Behaviour-based Control Hiba! A hivatkozási forrás nem található.) legfőbb építőelemei a viselkedéskomponensek. A viselkedéskomponensek tipikus emberi, állati, vagy mesterséges viselkedéseket másolhatnak. A rendszer aktuális viselkedése ezen viselkedéskomponenseknek az aktuális helyzethez leginkább illeszkedő kombinációja. A viselkedéskomponensek kódolása történhet pl. egyszerű reflexszerű ágens formában, az illető szituációban helyes cselekvéseket rendelve a megfigyelésekhez.
Ha egy helyzet megoldására több lehetséges viselkedéskomponens is alkalmas, akkor ezek közül vagy választanunk kell egyet, vagy valamilyen módon egyesítenünk kell őket. A viselkedéskomponensek egyesítése kétféleképpen történhet. Az első a versengéses eset, amikor viselkedéskomponensek pl. prioritást kapnak és azt választjuk, amelyiknek ez magasabb a másikat pedig figyelmen kívül hagyjuk. A második az együttműködő eset, amikor a viselkedéskomponenseket valamilyen szempont szerint egyesítjük.
A viselkedés-alapú szabályzásnak két fő feladata van. Az első a viselkedés koordináció, annak meghatározása, hogy az adott helyzet megoldására mely viselkedéskomponensek alkalmasak, a második a viselkedés fúzió. Az első feladat tekinthető a rendszer állapot becslésének, ahol az állapot nem más, mint az egyes viselkedés komponensek alkalmazhatóságának mértéke. A második, a viselkedés fúzió, a viselkedés komponensek egyesítése az alkalmazhatóságuk mértékének megfelelően. Jelen esetben mind a két feladat megoldható fuzzy interpolációs módszerekkel. Sőt, ha az egyes viselkedés komponenseket is fuzzy modellel írjuk le, az egész egy hierarchikus fuzzy rendszert alkot.
A fuzzy interpolációs modellnek köszönhetően a fuzzy szabályrendszer viszonylag egyszerűen megalkotható. Nem kell teljes szabályrendszert készítenünk, elég csak a lényegi szabályokat megadnunk. Ez esetben ugyanis az interpolációs modell azon esetekre is ad interpolált következtetést, amiket a szabályrendszerben nem határoztunk meg. Elég tehát a lényegi szabályokra koncentrálni, az ezekből kikövetkeztethető szabályokat akár szándékosan is ki lehet hagyni.
A fuzzy interpolációs modellek viselkedés-alapú szabályzásbeli alkalmazását a rendszer leginkább heurisztikus részén, a viselkedés koordináción mutatjuk be. A viselkedés koordináció feladata annak meghatározása, hogy az aktuális helyzet kezeléséhez milyen mértékben szükségesek az egyes viselkedéskomponensek.
A javasolt viselkedés-alapú szabályzás struktúrában ez a feladat egy véges állapotú fuzzy automatára hárul Hiba! A hivatkozási forrás nem található. (lásd 4-1 ábrát és a következő fejezetet a részletekért), ahol fuzzy automata állapota az egyes viselkedéskomponensek szükségességének mértékét leíró vektor. Ez a megoldás azon a feltételezésen alapszik, hogy egy adott helyzetben a viselkedés komponensek szükségessége meghatározható az alkalmazhatóságuk mértékéből. Az alkalmazhatóságuk mértéke pedig megbecsülhető abból, hogy az adott helyzet mennyire hasonlít az illető viselkedés komponensek előfeltételeire. (Egy viselkedés komponens előfeltétele annak a helyzetnek a leírása, amelyben az illető viselkedés komponensek alkalmas a helyzet megoldására.) Ebben az esetben ahelyett, hogy a viselkedés komponensek szükségességét vizsgálnánk, elég azt néznünk, hogy egy adott helyzet mennyire hasonlít az egyes viselkedés komponensek előfeltételeire.
A teljes rendszer (lásd 4-1 ábra) a viselkedés koordináción kívül fuzzy modell alapú viselkedés fúziót és viselkedés komponenseket is tartalmaz (FLC). Az állapotváltozó (States) értéke határozza meg a komponens viselkedések szükségességének mértékét. Az állapot változásokat az állapot-átmeneti fuzzy szabályrendszer (state-transition rule base) irányítja. Az új állapot az aktuális állapot és a megfigyelések alapján kerül meghatározásra. Jelen esetben a fuzzy automata kimenete az új állapot, azaz a következő időpillanat aktuális állapota. Az aktuális állapot határozza meg a viselkedés fúzió során az egyes viselkedés komponensek súlyát. A viselkedés fúzió ugyancsak lehet fuzzy rendszer (pl. fuzzy szabály interpolációs következtetés), vagy egyszerűen csak egy súlyozott összeg. A szimptóma kiértékelés (symptom evaluation, 4-1 ábra), a hibadiagnosztikai rendszerek terminológiáját követve, egyfajta megfigyelés előfeldolgozást végez a fuzzy automata számára. Ezek a komponensek ugyancsak lehetnek fuzzy rendszerek (FLC).
Így a rendszer állapot becslés első lépése az aktuális helyzet és az egyes viselkedés komponensek előfeltételinek összehasonlítása. A szimptóma kiértékelés feladata ezen hasonlóságok meghatározása az aktuális szimptóma és az egyes viselkedés komponens előfeltételek szimptómái hasonlósága alapján. Ezen előfeltétel szimptómák jellemzik azt, hogy hozzájuk tartozó viselkedés komponens mely esetben helyes, azaz alkalmazható az illető helyzetben. A szimptóma kiértékelés nem más, mint az aktuális szimptóma és az összes viselkedés komponens előfeltétel szimptóma hasonlóságának meghatározása. Több lehetséges fuzzy megoldás is létezik a szimptóma kiértékelésre. Alkalmasak rá pl. a fuzzy klaszterezési módszerek, mint pl. a Fuzzy c-Means Hiba! A hivatkozási forrás nem található.. Ez esetben a klaszter középpontok lehetnek a viselkedés komponens előfeltétel szimptómák és a keresett hasonlóságok kiolvashatóak a fuzzy partíciós mátrixból, azaz az aktuális szimptómának az egyes klaszterekhez való tartozás mértékéből. Egyszerűbb esetben a szimptóma kiértékelés lehet fuzzy rendszer, vagy akár be is épülhet a fuzzy automata állapot-átmeneti szabályrendszerébe.
A rendszer állapot meghatározásánál fontos szempont, hogy a viselkedés komponens előfeltétel szimptómák függhetnek a rendszer aktuális viselkedésétől, azaz a rendszer állapotától. Mindegyik viselkedés komponens saját előfeltétel szimptóma rendszerrel rendelkezik, melyben szerepelhet az aktuális rendszer állapot is. Valójában a szimptóma kiértékelés állapotfüggősége miatt van szükség fuzzy automatára az állapot kiértékelés során. Az automata állapota a becsült rendszer állapot. Az állapot-átmenetek az állapot-átmeneti fuzzy szabályrendszer (lásd 4-1 ábra, “Fuzzy Reasoning (state-transition rule base)”) alapján a megelőző állapotnak és a szimptóma kiértékelésnek megfelelően hozott fuzzy szabály interpolációs következtetések.
Ahogy arról az előző fejezetben is szó volt, az ember-gép kapcsolatra ajánlott modell a viselkedés-alapú szabályzásnak Hiba! A hivatkozási forrás nem található. megfelelő formát követi, azaz a rendszer aktuális viselkedése a komponens viselkedések a pillanatnyi helyzetre való alkalmasságuk mértékében fett fúziójaként jön létre. Az ajánlott modellben a viselkedés koordináció szerepét egy fuzzy automata tölti be. Számos fuzzy automata értelmezés lelhető fel az irodalomban Hiba! A hivatkozási forrás nem található.. Az egyik leg általánosabb forma a fuzzy véges állapotú automata (Fuzzy Finite-state Automaton FFA Hiba! A hivatkozási forrás nem található.), melyet az alábbi módon határozhatunk meg (Hiba! A hivatkozási forrás nem található., Hiba! A hivatkozási forrás nem található., Hiba! A hivatkozási forrás nem található.):
, | (4.1) |
ahol Q a véges állapot halmaz, Q={q1,q2,...,qn}, Σ a véges bemeneti szimbólum halmaz, Σ={a1,a2,...,am}, az lehetséges kezdeti állapota, Z a kimeneti szimbólumok véges halmaza, Z={b1,b2,...,bn}, a fuzzy átmeneti függvény, mely az állapotot (aktuális állapot) a bemeneti szimbólum hatására egy másik állapothoz (következő állapot) rendeli, [0,1] értéket adva annak és a kimeneti függvény, mely kimenő értéket rendel az állapothoz.
A fuzzy véges állapotú automata koncepciót a fuzzy véges dimenziószámú automata koncepcióra kiterjesztve az alábbi formát kapjuk:
, | (4.2) |
ahol S a véges fuzzy állapot halmaz, , X a véges dimenziószámú bemeneti vektor, , az fuzzy kezdeti állapota, Y a véges dimenziószámú kimeneti vektor, , a fuzzy állapot-átmeneti függvény, mely egy bemeneti érték hatására az aktuális fuzzy állapothoz az új fuzzy állapotot rendeli és a kimeneti függvény, mely kimenő értéket rendel a a bemenethez és a fuzzy állapothoz (lásd 4.2. ábra).
Az állapot-átmeneti függvény fuzzy szabályrendszerként megadása esetén a fuzzy szabályoknak dimenziós a feltétel és n dimenziós a következmény oldala. Klasszikus fuzzy következtetés és teljes szabályrendszer esetén a szabályok száma az alábbi:
, | (4.3) |
ahol n az S fuzzy állapotvektor hossza, m a bemenet dimenziószáma, i az állapotvektor dimenziónként lehetséges nyelvi értékeinek száma, és j a bemenet dimenziónként lehetséges nyelvi értékeinek száma.
A fenti összefüggés (4.3) alapján, az állapot-átmeneti szabályrendszer szabályszáma exponenciálisan függ a fuzzy állapotvektor hosszától és a bemenetek számától. A fuzzy szabály interpolációs következtetési módszernek köszönhetően ez a szabályszám dramatikusan csökkenthető. Lásd pl. Hiba! A hivatkozási forrás nem található., ahol az eredetileg exponenciális szabályszám polinomiálissá volt alakítható a fuzzy szabály interpolációs következtetésnek köszönhetően.
Könnyű belátni, hogy amennyiben a fuzzy véges dimenziószámú automata a kimeneti függvénye független párhuzamos komponens viselkedésekre és viselkedés fúzióra bontható, akkor a fuzzy véges dimenziószámú automata a viselkedés-alapú szabályzásnál megismert formára alakítható (lásd 43. és 41. ábrákat). Fuzzy automaták viselkedés-alapú szabályzási formában történő alkalmazásaira mutat további példákat Hiba! A hivatkozási forrás nem található., Hiba! A hivatkozási forrás nem található. és Hiba! A hivatkozási forrás nem található..
Az itt bemutatott etológiai tesz folyamatot a kutya és gazdája kötődésének vizsgálatára dolgozták ki. Maga a teszt hét, egyenként két-két percig tartó szakaszból áll, ahol a kutya más-más helyzetbe kerül: először a gazdájával, majd egy idegennel, vagy egyedül (az előre meghatározott protokollnak megfelelően). A teszt folyamán a kutya viselkedését főleg a gazda közelségének keresése alapján értékelik Hiba! A hivatkozási forrás nem található..
Az első vizsgálati szakaszban a kutya és a gazdája együtt van egy a kutya számára ismeretlen szobában. A gazda eleinte passzív, majd játékot kezdeményez a kutyával. A második szakaszban egy idegen jön a szobába, majd ő is játékot kezdeményez a kutyával. Ezt követően a gazda elhagyja a szobát, azaz a harmadik szakaszban a kutyát elválasztják a gazdájától. A harmadik szakasz folytatásában az idegen újból játékot kezdeményez a kutyával, majd egy kis időre leül, majd megpróbálja megsimogatni a kutyát. A negyedik szakasz elején a gazda visszatér a szobába, ez az első újra egyesülés. Eközben az idegen elhagyja a szobát és két percig a kutya újra csak a gazdájával van együtt. Majd kimegy a gazda is, ez az ötödik szakasz, amikor a kutya egyedül van a szobában. A következő szakaszban az idegen visszajön, majd újból játékot kezdeményez, vagy megpróbálja megsimogatni a kutyát. A gazda újbóli visszatérése jelzi az utolsó szakasz kezdetét. Ebben az idegen kimegy, a gazda pedig két percig a kutyával próbál kapcsolatba lépni.
A teszt kiértékelése során az etológusok előre definiált viselkedés változókat figyelnek, hogy leírhassák a kutya gazdája felé és az idegen felé irányuló válaszait. Az így nyert adatokat elemezve keresnek lényegi különbségeket a kutya gazdája iránti és az idegen felé mutatott viselkedésében.
A korábban taglalt etológiai indíttatású ember-gép kapcsolat modell felépítésére példaként most ez az összetett etológiai modell kerül bemutatásra. A példában az etológiai modell által irányított ágens a kutya viselkedését szimulálja. A többi szereplőt a teszt folyamatban megadott szerepkörök irányítják. A szimulált ágens (kutya) a tesztnek megfelelően számos tevékenység végzésére alkalmas (valamilyen objektum felé halad, felveszi, vagy elejti a játékot, csóválja a farkát, stb.). Ezen tevékenységek közül egy néhány egyszerre is végrehajtható (együttműködő), míg mások kizárják egymást (versengő). Mindkét esetben a viselkedés fúzió végzi a viselkedés komponensek egyesítését.
A most bemutatott modell eredetileg a kutya viselkedésének szimulációjára készült az idegenhelyzet tesztben (Strange Situation Test – SST Hiba! A hivatkozási forrás nem található.), de a modell elég rugalmas ahhoz, hogy etológiailag helyes módon reagáljon a teszt szakaszaitól eltérő helyzetekben is. A teljes SST szimulációs rendszer egyszerűsített blokkvázlatát az 44. ábra mutatja.
A 45. ábra az SST szimulációs rendszer egy lehetséges képernyőtervét mutatja, ahol a szoba, melyben az események zajlanak, felülről látszik. Az ember szereplőket négyzetek jelzik, kék a gazda, bíbor az idegen. A kutyát két kör jelzi, a nagyobbik a „teste”, a kisebbik a „feje”, ami a kutya figyelmének iránya meghatározása miatt szükséges. A kutyán a vékony zöld vonal a „farkat” jelöli, ezt a kutya „csóválhatja”, vagy változtathatja a hosszát. A szimulációban a kutya színe az izgatottságának megfelelően változik. A szobán van egy ajtó, ahol az ember szereplők elhagyhatják a szobát, illetve visszatérhetnek (a kutya nem hagyhatja el a helységet). Van ezen kívül még egy játék objektum (kis kék kör), amit valamennyi szereplő felvehet, vagy eldobhat.
A következőkben a modell néhány minta viselkedése és azok fuzzy automatának megfelelő definíciói kerülnek bemutatásra.
Az első minta viselkedés két viselkedés komponensből áll, úgymint ‘DogExploresTheRoom’ és ‘DogGoesToDoor’. A ‘DogExploresTheRoom’ a kutya felderítő tevékenysége, melyben a kutya „körbenéz” és megvizsgálja a számára ismeretlen helyet (lásd a fehér nyomvonalat a 46. ábrán). A ‘DogGoesToDoor’ egy egyszerű tevékenység, melyben a kutya az ajtóhoz megy, majd megáll (leül a gazdájára várva, hogy az újból megjelenjen). A minta viselkedéshez kapcsolódó fuzzy interpolációs automata állapot-átmeneti szabályrendszere felelős a viselkedés koordinációért.
A mintaviselkedéshez tartozó állapotok az alábbiak:
„Rejtett” állapotok, melyekhez nem kapcsolódik közvetlenül viselkedés komponens, de a viselkedés koordinációban szerepet játszanak: „A kutya gazda hiánya hangulata” (DogMissTheOwner) és a „A kutya nyugtalansági foka” (DogAnxietyLevel).
‘Normál’ állapotok, melyekhez közvetlenül is tarozik viselkedés komponens, jelen esetben a már korábban említett ‘DogExploresTheRoom’ és ‘DogGoesToDoor’: „A kutya ajtóhoz megy hangulata” (DogGoesToDoor) és a „A kutya felderíti a szobát hangulata” (DogExploresTheRoom).
Egy lehetséges állapot-átmeneti fuzzy szabályrendszer az alábbi formában adható meg (csak a példa állapotait kiemelve):
„A kutya gazda hiánya hangulata” állapotot meghatározó állapot-átmeneti fuzzy szabályrendszer:
If OwnerInTheRoom=False Then DogMissTheOwner=Increasing
If OwnerInTheRoom=True Then DogMissTheOwner=Decreasing
„A kutya nyugtalansági foka” állapotot meghatározó állapot-átmeneti fuzzy szabályrendszer:
If OwnerToDogDistance=Small And Human2ToDogDistance=High Then DogAnxietyLevel=Decreasing
If OwnerToDogDistance=High And Human2ToDogDistance=Low Then DogAnxietyLevel=Increasing
„A kutya ajtóhoz megy hangulata” állapotot meghatározó állapot-átmeneti fuzzy szabályrendszer:
If OwnerInTheRoom=False And DogMissTheOwner=High Then DogGoesToDoor=High
If OwnerInTheRoom=True Then DogGoesToDoor=Low
„A kutya felderíti a szobát hangulata”állapotot meghatározó állapot-átmeneti fuzzy szabályrendszer:
If DogAnxietyLevel=Low And OwnerStartsGame=False And ThePlaceIsUnknown=High Then DogExploresTheRoom=High
If ThePlaceIsUnknown=Low Then DogExploresTheRoom=Low
If DogAnxietyLevel=High Then DogExploresTheRoom=Low
A dőlt betűs szövegrészek a fuzzy szabályrendszer fuzzy nyelvi változói (azaz fuzzy halmazok). Itt kell megjegyeznünk, hogy a fenti szabályrendszer ritka, csak lényegi szabályokat tartalmaz, azaz fuzzy szabály interpolációs automata állapot-átmeneti szabályrendszere.
A példában bemutatott viselkedés egy lehetséges futási eredményét mutatja a 46. és 47. ábra. Az ábrákon bemutatott futatási példa kezdetén a gazda a szobában van, az idegen pedig kívül. A hely a kutyának ismeretlen (‘ThePlaceIsUnknown=High’ a szabályrendszerben). A fenti szabályrendszernek megfelelően a kutya elkezdi felderíteni a helységet (lásd 46. ábra). Egy kicsit később a kutya gazdája elhagyja a szobát, az idegen pedig bejön és bent marad (szaggatott fehér vonal a 47. ábrán). Az események következtében (a fenti állapot-átmeneti szabályrendszernek megfelelően), a kutya nyugtalanná válik és megemelkedik a „A kutya gazda hiánya hangulata” állapot tagsági értéke is, minek hatására a kutya az ajtóhoz megy (fehér vonal a 47. ábrán) és ott kezd várakozni, ahol a gazda elhagyta a szobát. Lásd az állapotváltozásokat a 48. ábrán.
A 48. ábrán a mintapélda négy állapotváltozójának időbeli alakulását látjuk. Két azonnali változást a gazda mozgása vált ki. Az első, amikor a kutya észreveszi, hogy a gazda az ajtó felé tart (a 200. iterációs lépés körül). Ekkor a kutya felderítési kedve rohamosan csökkenni kezd, de a gazda követése hangulata (‘DogGoesToOwner’) még mindig magas addig, amíg a gazda el nem hagyja a szobát (a 250. iterációs lépés körül). Amikor a gazda elhagyja a szobát a ‘DogGoesToDoor’ viselkedéskomponens válik aktívvá, a ‘Missing the owner’ állapot emelkedésének következtében. Ugyanekkor a gazda hiánya miatt a kutya nyugtalansági szintje is emelkedik.
A második példában a ‘DogGoesToOwner’ viselkedés komponenst vizsgáljuk meg alaposabban egy az előző példától eltérő szemszögből. Ahogy azt az állapotváltozó neve is jelzi, a kutya gazdához közelítésének igényét fejezi ki, illetve a hozzá tartozó viselkedés komponens felelős azért, hogy a kutya a gazdához menjen. Az ezen állapotváltozóhoz tartozó állapot átmeneti szabálybázis jóval összetettebb az előző példánál. A teljes ‘DogGoesToOwner’ állapot-átmeneti szabályrendszert az Hiba! A hivatkozási forrás nem található.. táblázat mutatja, ahol az utolsó oszlop a szabály következmény, az azt megelőző oszlopok pedig a szabály feltétel dimenziók (a táblázatban ‘x’ jelöli, ha egy szabály nem függ valamely megfigyeléstől).
A szabálybázisban használt nyelvi értékek jelentése az alábbi (a „megfigyelés” a pillanatnyi környezetben mért érték, a „megelőző állapot” a megelőző iteráció állapot változókat illető következménye):
dgtd – megelőző állapot – a kutya az ajtóhoz megy hangulat (zero-large) – lásd 4-12. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dgto – megelőző állapot – a kutya a gazdához megy hangulat (zero-large) – lásd 4-12. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
oir – megfigyelés – a gazda a szobában van (true-false) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
ddo – megfigyelés – a kutya és a gazda távolsága (zero-large) – lásd 4-10. for ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dgtt – megelőző állapot – a kutya játékhoz megy hangulata (zero-large) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dgro – megelőző állapot – a kutya üdvözli a gazdát hangulata (zero-large) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dpmo – megelőző állapot – a kutya játszik a gazdával hangulata (zero-large) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dpms – megelőző állapot – a kutya játszik az idegennel hangulata (zero-large) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
danl – megelőző állapot – a kutya nyugtalansági foka (zero-large) – lásd 4-11. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
ogo – megfigyelés – a gazda kimegy a szobából (true-false) – lásd 4-9. ábrát a nyelvi értékekhez tartozó fuzzy partíciókért
dgto (consequent) – next state – a kutya a gazdához megy hangulat (zero-large) (kimenet)
# | dgtd | dgto | oir | ddo | dgtt | dgro | dpmo | dpms | danl | ogo | dgto |
1 | dgtdl | x | oirt | x | x | x | x | x | x | x | dgtoz |
2 | dgtdz | x | oirt | x | dgttz | dgrol | x | dpmsz | x | ogof | dgtol |
3 | dgtdz | x | oirt | x | dgttz | x | x | dpmsz | danll | ogof | dgtol |
4 | dgtdz | x | oirt | x | dgttz | x | dpmol | x | x | ogof | dgtol |
5 | dgtdz | x | oirt | x | x | x | x | x | x | ogot | dgtol |
6 | dgtdz | x | oirt | x | x | dgroz | dpmoz | x | danlz | ogof | dgtoz |
7 | x | x | oirf | x | x | dgroz | x | x | x | ogof | dgtoz |
8 | dgtdz | x | x | x | dgtth | dgroz | x | dpmsz | x | ogof | dgtoz |
9 | dgtdz | x | x | x | x | dgroz | x | dpmsl | x | ogof | dgtoz |
10 | dgtdz | dgtol | oirt | ddoz | dgttz | dgroz | dpmoz | dpmsz | x | ogof | dgtoz |
11 | dgtdz | dgtol | oirt | ddol | dgttz | x | x | dpmsz | x | x | dgtol |
A fenti szabályok sorrendben az alábbi szöveges formában értelmezhetők:
a kutya az ajtóhoz megy a kutya nem megy a gazdához
a kutyának üdvözölnie kell a gazdát a kutya a gazdához megy
a kutya nyugtalan a kutya a gazdához megy
a kutya gazdával való játékkedve magas a kutya a gazdához megy
a gazda kimegy a szobából a kutya a gazdához megy (a gazda követése)
a kutya nyugodt, nem játszi és nem üdvözöl a kutya nem megy a gazdához
a gazda nincs a szobában a kutya nem megy a gazdához (nem tud odamenni)
a kutya a játékhoz megy a kutya nem megy a gazdához
a kutya idegennel való játékkedve magas a kutya nem megy a gazdához
a kutya már a gazdához ment és mellette van a kutya nem megy a gazdához (már ott van)
a kutya már a gazdához ment de a gazda messze van a kutya a gazdához megy (továbbra is követi)
A fenti szabályrendszer egy összetett viselkedést ír le, a fuzzy szabály interpolációs következtetésnek köszönhetően mindössze tizenegy szabállyal annak ellenére, hogy a bemeneti dimenziószám igen magas (tíz változó). A 49. - 412. ábrák az egyes állapotváltozókhoz tartozó lehetséges nyelvi értékek fuzzy partícióit mutatják. Fentről lefelé az ábrákon az egyes görbék az illető fuzzy partíciót, a hozzá tartozó közelítő skálafüggvényt Hiba! A hivatkozási forrás nem található. és a közelítő skálafüggvény alapján rekonstruált fuzzy partíciót jelölik. Ahogy az az ábrákon is látszik, a legtöbb fuzzy partíció igen egyszerű (a kilenc szabály feltételből hat ugyan azt az egyszerű fuzzy partíciót használja). A legtöbb partíció csak két háromszög alakú nyelvi értéket (fuzzy halmazt) tartalmaz úgy, hogy a magjuk a 0 és 1 pozícióba esik és mindkét oldali meredekségük 1. Ez igaz a modell többi szabály rendszerére is, a legtöbb feltétel oldali változó a 49 ábrán bemutatott fuzzy partíciót használja.
A modell legtöbb viselkedés komponense a kutya mozgásirányáért felelős. A modellben ezen viselkedések fúziója az egyes elmozdulás vektorok súlyozott összegével történik, ahol a súlyok az illető viselkedés komponensekhez tartozó állapot értékek. A többi viselkedés komponens a mozgástól függetlenül is végrehajtható, így nem igényel különösebb viselkedés fúziót. Vanank olyan szabályrendszerek is, melyek olyan „rejtett” állapotok értékét határozzák meg, melyekhez nem kapcsolódik közvetlenül viselkedés komponens, de a viselkedés koordinációban szerepet játszanak. Ilyen pl. a ‘DogGreetsOwner’ állapotváltozó, melyhez közvetlenül nem tartozik viselkedés komponens, de ahogy azt az Hiba! A hivatkozási forrás nem található.. táblázat is mutatja, szerepet kap a ‘DogGoesToOwner’ állapotváltozó meghatározásában.
A modell különböző egyedi képességeket mutató kutyára is hangolható. Ez három [0,1] érték közé állítható faktor alapján történik (lásd 44 ábrán ‘Parameters’), úgy mint „Nyugtalanság”, „Idegen elfogadó készség” és „Kötődés”. A „Nyugtalanság” paraméter a kutya egyedi jellemzőit állítja a nyugodttól az idegesig. Az „Idegen elfogadó készség” a kutya idegenekkel szembeni viselkedését paraméterezi a barátságostól a barátságtalanig. A „Kötődés” a kutya gazda iránti kötődésének mértékét változtathatja a gyengétől az erős kötődésig. Valójában ezen módosító paraméterek nem jelennek meg közvetlenül a szabályrendszerekben, hanem másodlagos változókat állítanak, melyek több kapcsolódó szabályrendszert is módosítanak. A három külső paraméter („Nyugtalanság”, „Idegen elfogadó készség” és „Kötődés”) közvetlenül csak a másodlagos paramétereket meghatározó szabályrendszerekben szerepel. Ezen másodlagos paraméterek az alábbiak:
Játssz akkor is, ha nincs ott a gazda (ha a gazda nincs a szobában).
Ne játssz az idegennel (még akkor sem, ha lehetőség lenne rá).
Fuss körbe (a nyugtalanság miatt) ha az idegen a szobában van.
Fuss körbe (a nyugtalanság miatt) ha egyedül vagy.
Az idegen üdvözlésének alap szintje.
A gazda üdvözlésének alap szintje.
Az idegen követésének alap szintje, ha elhagyja a szobát.
A gazda üdvözlésének alap szintje, ha a szobába lép.
A stressz alap szintje (nyugtalanság).
Az ajtóban állás alap szintje.
Az ajtóban állás alap szintje akkor, ha a gazda a szobában van.
A passzivitás alap szintje.
A fentebb a külső paraméterek kapcsán bemutatott hierarchikus felépítés lényeges az egyes szabályrendszerek bemeneti dimenziószámának csökkentése érdekében (három helyett csak egy-egy változóval bővülnek az érintett szabályrendszerek), mert így csökkenthető a szabályok száma is. A másodlagos paramétereket is fuzzy interpolációs szabályrendszerek határozzák meg a három külső paraméter alapján. Ezek a rendszer inicializációja során kapnak értéket, de futásidőben is változtathatók, lehetővé téve, hogy a kutyák viselkedési formáit valamely tevékenység közben is megváltoztathassuk.
A modellhez tartozó lényeges, de attól függetlenül futó rendszer a „megfigyelő” (lásd 44 ábrát). Feladata, hogy a futás közben a valódi kutyákat érintő mérésekhez hasonlóan értékelje a modell működését. Ezért a megfigyelésit nem a modell állapotváltozóinak ismeretében hozza, hanem csak a környezet változóiból kikövetkeztetve (mint ahogy azt a valódi kutya esetén is teszi az etológus). A környezet megfigyelése alapján következtet a szimulált kutya állapotára, hogy az éppen „játszik”, „felfedez”, „az ajtóban áll”, vagy „passzív”. A megfigyelő az esetleges ember-kutya interakciót ugyancsak feljegyzi. A „látottakat” ugyan olyan módon pontozza, mint ahogy azt az etológusok teszik egy valódi kutyát megfigyelve az SST során. A megfigyelő rendszer által a modell működéséről készített mérési eredmények így más kutyák méréseivel így közvetlenül összevethetők.
Hivatkozások
[1] | |
[2] | D. Calisi, A. Censi, L. Iocchi és D. Nardi, „OpenRDK: a modular framework for robotic software development,” in Intelligent Robots and Systems, 2008. IROS 2008. IEEE/RSJ International Conference on, 2008. |
[3] | |
[4] | „OpenRTM-aist robot middleware hivatalos weboladal,” [Online]. |
[5] | N. Ando, T. Suehiro, K. Kitagaki, T. Kotoku és W.-K. Yoon, „RT-middleware: distributed component middleware for RT (robot technology),” in Intelligent Robots and Systems, 2005.(IROS 2005). 2005 IEEE/RSJ International Conference on, 2005. |
[6] | N. Ando, T. Suehiro és T. Kotoku, „A software platform for component based rt-system development: Openrtm-aist,” in Simulation, Modeling, and Programming for Autonomous Robots, Springer, 2008. |
[7] | N. Ando, S. Kurihara, G. Biggs, T. Sakamoto, H. Nakamoto és T. Kotoku, „Software deployment infrastructure for component based rt-systems,” Journal of Robotics and Mechatronics, %1. kötet23, %1. szám3, 2011. |
[8] | |
[9] | M. Quigley, K. Conley, B. Gerkey, J. Faust, T. Foote, J. Leibs, R. Wheeler és A. Y. Ng, „ROS: an open-source Robot Operating System,” in ICRA workshop on open source software, 2009. |
[10] | Domada, M. Ishde, K. Ohnishi, and T. Hori, „Disturbance observer-based motion control of dlrect drive motors,” IEEE Transactions on Energy Conversion, %1. kötet6, %1. szám3, pp. 553-559, 1991. |
[11] | Iwasaki, M.; Shibata, T.; Matsui, N., „Disturbance-observer-based nonlinear friction compensation in table drive system,” IEEE/ASME Transactions on Mechatronics, %1. kötet4, %1. szám1, pp. 3-8, 1999. |
[12] | ObserverLi, W.; Hori, Y., „Vibration Suppression Using Single Neuron-Based PI Fuzzy Controller and Fractional,” Order Disturbance IEEE Transactions on Industrial Electronics, %1. kötet54, %1. szám1, p. 117 – 126, 2007. |
[13] | Tomita, M.; Senjyu, T.; Doki, S.; Okuma, S., „New sensorless control for brushless DC motors using disturbance observers and adaptive velocity estimations,” IEEE Transactions on Industrial Electronics, %1. kötet45, %1. szám2, pp. 274 - 282, 1998. |
[14] | Radke, A.; Gao, Zhiqiang, „A survey of state and disturbance observers for practitioners,” in American Control Conference June 2006 Page(s):6, 14, 2006. |
[15] | Katsura, S.; Matsumoto, Y.; Ohnishi, K., „Modeling of Force Sensing and Validation of Disturbance Observer for Force Control,” IEEE Transactions on Industrial Electronics, %1. kötet54, %1. szám1, p. 530 – 538, 2007. |
[16] | McCann, R.A.; Islam, M.S.; Husain, I, „Application of a sliding-mode observer for position and speed estimation in switched reluctance motor drives.;,” IEEE Transactions on Industry Applications, %1. kötet37, %1. szám1, p. 51 – 58, 2001. |
[17] | |
[18] | T. Thomessen, P. K. Sannæs, and T. K. Lien, “Intuitive Robot Programming,” in 35th International Symposium on Robotics, 2004. |
Az első modern master-slave telemanipulációs rendszert 1945. körül Goertz fejlesztette ki az Argonne Nemzeti Laboratóriumban (ANL) [1]. Ez egy mechanikai pantográf rendszer volt, amivel az emberi operátor radioaktív anyagokat tudott vezérelni egy ”forró cellában”, úgy hogy közben ő a cellán kívül helyezkedett el. A fogantyút, mint master eszközt fogva az operátor mozgatni tudta a cellában elhelyezett slave eszközként működő megfogót és a folyamat során erőértékeket kapott. Nem sokkal később, még 1945-ben az elektronikus szervómechanizmusok felváltották a direkt mechanikus master – slave rendszereket és láncolatait [2]. A zárt áramkörű televíziót amikor bemutatták, a kezelő tetszőleges távolságban helyezkedhetett el a szerkezettől. A slave és környezete között kialakult erőhatást a master eszköz érzékelte. 1964-ben, Mosher kifejlesztett egy hatásos modellt, ami egy handy-man volt elektrohidraulikus kezekkel, kezenként 10 szabadságfokkal. Az akkori kutatások egyik fő témája a robotrendszerek távirányítása volt. A távirányítású robot rendszereket gyártásban, víz alatti manipulációban, tartályellenőrzéseknél, atomerőművek karbantartásánál, űrkutatásban és sok más helyen felhasználták. A telemanipulációval (telerobotika) kapcsolatban lévő fejlesztések történelmi áttekintések az [1]- ben találhatók.
A telemanipuláció az a folyamat, ahol az operátornak valamilyen feladatot kell elvégeznie veszélyes vagy számára elérhetetlen környezetben, mint például az űrben, víz alatt, atomerőműveknél, ahol fizikailag nem lehet jelen. A teleoperációs rendszer kibővíti az operátor hatáskörét, így a Távoli Munkatéren is tud munkát végezni. Ezt a kiterjesztést a master – slave rendszerekkel oldották meg. A telemanipuláció két, egymással szorosan összefüggő folyamatra bontható. Egyik folyamat a master és az operátor kölcsönhatása, a másik a slave készülék és a távoli környezetnek a kölcsönhatása. A master szerkezet testesíti meg a távoli környezetet az operátor oldalon, a slave szerkezet pedig az operátort a távoli oldalon. Amikor emberek használják ezt a szerkezetet csak azért hogy tárgyakat mozgassanak és a távoli környezetből érkező reakcióerőnek nincs számottevő hatása a teljesítményre, akkor az operátor pozíciójának mérése és vizuális visszacsatolás elegendő lehet. De amikor az elvégezendő feladatban fontos a környezet reakciója, és a slave szerkezet kárt okozhat a távolról irányított környezetben (csavar becsavarása, összeszerelés), az erő visszacsatolása elengedhetetlen a hatékonyság javítása érdekében. Az erővisszacsatolás fokozza az élményt, úgy érezheti az operátor, mintha ott lenne. Az operátor és a távolról irányított oldal közötti információ áramlását az 5-1. ábra ([3]) mutatja, ahol 3 típusú információ visszacsatolás látható (vizuális, hangi és az érintési). Habár az ember öt különböző visszacsatolást érzékel a környezetéből, de a telemanipulációnál csak hármat használtak fel.
Az 5-2. ábra a telemanipuláció általános koncepcióját mutatja. A “világ” két részre van bontva: a Master Részre és a Slave Részre. A master – slave rendszer mint két információs csatorna jelenik meg: Hatás és Ellenhatás csatorna. A Hatás csatorna továbbítja az információt az operátortól a Távoli Munkatérhez. Az Ellenhatás csatorna pedig az ellenkező irányban működik: a Távoli Munkatértől az operátorig. A telemanipuláció hajnalán, az emberi operátor és az irányított környezet mechanikailag össze volt párosítva. Az információ mechanikusan áramlott, ami eléggé leszűkítette a az elvégezhető feladatokat. Manapság az információ elektronikusan áramlik, ami egy új dimenziót nyitott a slave oldalon. Az Ember – Robot rendszereket is már telemanipulációként lehet felfogni, ahol az ember és a robot szimultán dolgoznak a feladaton. Például egy távirányítású bomba hatástalanításnál a robotnak el kell érnie a bombát, majd a visszaszámlálót szét kell szerelnie slave manipulátorok segítségével. Ebben az esetben a navigációs és a manipulációs feladat különválhat. Amikor egy mobil robotcsoport összehangoltan mozgat egy nagy tárgyat, akkor az operátornak kell irányítani az egész folyamatot. Általában a Slave Eszköz akár egy Multi Robot Rendszer is lehet, ahol több mint egy robotdolgozik együtt a feladaton. A Számítógépes Hálózati Vezérlés (Computer Networked Control) segítségével a rendszer kiterjeszthető. Az a koncepció az, hogy egy operátor és a robot páros helyett többszörös operátort, robot vagy akár több assistant agent-et használnak, amelyek összehangoltan dolgoznak együtt [4]. Az Ember – Robot típusú telemanipuláció a következők szerint osztályozható:
Single master-- single slave
Multi-master-- single slave
Single master -- multi-slave
Multi-master-- multi-slave
Tehát arra a következtetésre juthatunk, hogy a telemanipuláció hatásköre kiszélesedett és új terminológiák jelentek meg. Néhányat összegyűjtöttünk itt.
A Teleoperátor az maga a gép, ami végrehajtja a műveletet a távoli helyszínen. A teleoperátor általános értelmezését használva, a Telerobot egy alosztály. Eredetileg a telemanipuláció a cselekvést jelentette, amiben a slave manipulátor leköveti a master manipulátor mozdulatait. Ebben az esetben a slave és a master manipulátor ugyan olyan struktúrájú. Ennek a koncepciónak a kiterjesztése azt jelenti, hogy a master eszközzel vezérelt és a slave eszközzel végrehajtott távoli helyszínen történt manipulációt, egy emberi operátor irányítja a master szerkezeten keresztül. Ezt a kiterjesztett értelmezést használva, a master és a slave eszköz felépítése különbözhet, de az egész manipulációs folyamatot az emberi operátor irányítja, azaz a slave oldalnak külön nincs intelligenciája. A következő lépés az intelligencia kiterjesztése. A slave eszköz megtanulhatja az emberi operátor mozgásait és követheti a betanult mozgást azon folyamatoknál, amikor az utasítás késik például a nem megfelelő internetkapcsolat miatt [5]. Néhány szerző a teleoperáció szót a telemanipuláció kibővített értelmezésként, néhányan pedig ugyanazon jelentéssel említik.
Az emberi operátornak szüksége van az illúzióra, hogy közvetlen kontaktusban van a távolról irányított környezettel, így tud megfelelő minőségű munkát végezni. Ilyen például a távolról egy vezérelt összeszerelés (szétszerelés), egy finom mechanizmus (időzített bomba). Az emberi operátor öt különféle érzetet érzékel (látás, hallás, érintés, szaglás és ízlelés), de csak az első háromnak a kombinációját használja fel a manipulációnál. Azt a pszichológiai érzést, hogy ”jelen van” egy környezetben, a technológiailag megalkotott ”belemerült” környezetben alakítják ki, ez a Telepresence (Telejelenlét) [6,7] érzés, amivel a megfelelő érzet kialakulhat. A master eszköz megkaphatja a szükséges információkat visszacsatoltan a slave eszköztől, abból a természetes érzésből adódóan, hogy fizikailag úgy érezzük, a távoli helyen tartózkodunk. Telepresence rendszerek a teleoperátorok alosztálya. Az hang-vizuális visszacsatolás jól kifejlesztett és jól elérhető manapság. A legnagyobb kihívást a tapintás visszacsatolása jelenti, ami szükséges, hogy a környezet fizikailag érezhető legyen. Ez az erővisszacsatolás kiterjesztése. Az emberi operátornak különböző érzékelő receptorai vannak, amivel különböző kontakterőket tud érzékelni. A tapintáson alapuló (bőr) visszacsatolást a mechanoreceptorok érzékelik, amik a csupasz bőrfelületen (főleg az ujjbegyeken) találhatóak. 50 – 350 Hz [8] –es sávszélességel képesek jelet átvinni. Így nagy részletességű információ is közölhető, mint például a felületnek minősége. Az erő (kinesztetikus) visszacsatolásnak kisebb jelátviteli sávszélessége van (10 Hz-ig), amit az izomban lévő receptorok és a csontrendszer biztosít. Ez például testtartással kapcsolatos információkat közöl. Az erővisszacsatolás nem csak növeli a hatékonyságot, de ki is szűri az operátor pontatlanságait.
Egy tipikus telejelenlétben származó információ szükséges az irányított oldalról, hogy az emberi operátor el tudja végezni a feladatot. Így úgy érzékelheti, hogy fizikálisan jelen van a feladat elvégzésénél. Eszerint a teleoperátornak teljes átlátszóságot (transparency) kell biztosítania, ami azt jelneti, hogy a master-ből elküldött pozíció, sebesség és erő értékek a slave-en megjelentekkel egyenlőnek kell lenniük. Egy példa az egyszerű, távoli eszközre a távoli megfogó, amivel egy atomerőműben mozgattak tárgyakat [5]. Ha ez a megfogó merev, és könnyű mozgatni, akkor az operátor egyszerűen el tudja végezni a feladatot. Az ideális master – slave kapcsolat ábráját az 5-3. ábra mutatja forgó mozgás (a) és lineáris mozgás (b) esetén. Ha az operátor forgatja (mozgatja) a master rudat qm-mel (xm), akkor a slave rúdnak is qm-mel kell mozognia (qm= qs vagy xm= xs), és az operátornak érzékelnie kell a környezet reakcióerejét is (Fo=- Fe) ideális esetben. Ebből a példából látszik, hogy a teleoperátor megkívánt dinamikai viselkedése közel áll a merev rúdéhoz, aminek a mechanikai tulajdonságai a nagy merevség és kicsi inercia. A master és a slave kar csatlakozásának végtelen merevségűnek és 0 tömegűnek kéne lennie.
Habár a valóságban, még ha feltételezzük is, hogy a master és a slave fizikailag egyenlő, meg fog jelenni az időkésleltetés. Az ideális időkéslelteséses Telemanipulációs válaszok azért ismertek:
A teleoperátornak stabilnak kell maradnia.
Az emberi operátor által a masterre kifejtett erő egyenlő a környezetből visszaküldött erővel egyensúlyi állapotban. Ez segíti az operátorokat, hogy érzékeljék a visszaküldött erőhatást.
A master pozíciója megegyezik a slave pozíciójával egyensúlyi állapotban.
A Master Rész és a Slave Rész három fő rétegre bontható (5-4. ábra). A rétegek vertikálisan a helyi rétegekkel tudnak kommunikálni, horizontálisan pedig a távoli rétegekkel interneten keresztül. A Szenzor Réteg (Sensor Layer) tartalmazza a szükséges szenzorokat, amivel a Távoli Környezetet (Remote Environment) és a Távoli Munkateret (Remote Workplace) figyeli meg. Általában ezek a szenzorok kontaktmentes szenzorok. A Manipulációs Réteg (Manipulation Layer) végzi effektív a munkát a Távoli Munkatéren. Ez a réteg tipikusan magába foglalja a Slave Eszközt és tartalmazhat kontakt szenzorokat. A Szállító Réteg (Transporter Layer) tartalmazza a Szállítót (Transporter – mobile unit), ami a slave eszközt hordozza. A Megfigyelő Réteg (Monitor Layer) a Master Részen megmutatja a Szenzor Réteg feldolgozott adatait. Ezek a megfigyelők általában érintkezésmentes kijelzők vagy indikátorok. A Manipulációs Rétegnek valós kontaktusban van az Operátorral és tipikusan magába foglalja a Master Eszközt. Ez a réteg, beleértve Master Eszközt is, tartalmazhat kontakt szenzorokat és kontakt aktuátorokat is. A kontakt aktuátorok közvetítik a Manipulációs Réteg kontakt szenzorai által érzékelt adatokat. A Szállítást Irányító Réteg (Transport Control Layer) irányítja a Szállítót a Slave Részen. Ez a réteg olyan szolgáltatásokat tartalmazhat, amik segítenek a Szállító Réteg navigációjában a Slave Részen.
A Szenzor Réteg konfigurációját az 5-5. ábra mutatja. A Slave oldali érintkezésmentes szenzorok a Távoli Környezetet figyelik meg. Az Intelligens Adatfeldolgozó (Intelligent Sensed Data Computing System) preprocesszálja az érzékelt adatokat Slave Részen. Ennek a berendezésnek a szerepe a szűrés, korrekció és a tömörítés. A tömörített audió és videó formátumokat elterjedten használják a neten, hogy csökkentsék az adatmennyiséget. A Feldolgozó Rendszer tartalmazhat alakfelismerő modult a Slave Rész hatásfokának és az intelligenciájának növelése érdekében. A Master oldali Intelligens Adatfeldolgozó szerepe az, hogy a tömörített adatokat kibontsa és helyreállítsa az elveszett információkat.
A telemanipulációnak van egy másik megközelítése is. A telemanipulációs folyamat két összefüggő alfolyamatra bontható. Az egyik alfolyamat a Lokális Környezetben fut (Local Environment), ez a Lokális Folyamat (Local Process). A másik a Távoli Környezetben fut (Remote Environment), ezt Távoli Folyamatnak (Remote Process) nevezik. A Lokális Folyamat az Operátor és a Master közötti, a Távoli Folyamat a Slave és a Távoli Környezet közötti folyamatos információáramlás. Ha a telemanipuláció ideális, a két folyamat ugyan az. Az ideális telemanipuláció esetén a Master Eszköz képviseli a Távoli Munkateret a Lokális Környezetben és a Slave Eszköz képviseli az Operátort a Távoli Környezetben. A Kommunikációs Csatorna (Communication Channel) az összekötő elem a két alfolyamat között. A Kommunikációs Csatorna fő feladata, hogy biztosítsa a teljes átlátszóságot ideális telemanipuláció esetén.
A Manipulációs Réteg konfigurációja az 5-6. ábrán látható. Jellemzően ebben a rétegben van a Slave és a Master eszköz is, ahogy fent említettük. Ennek a rétegnek a fő célja a pozícióirányítás és az erő visszacsatolás. Az erővisszacsatolás jelenti az információáramlást a rétegek és a Master-Slave Részek között. Az erővisszacsatolás egy tipikus hatás – ellenhatás folyamat. Az erővisszacsatolás egzakt megvalósítása függ a specifikációtól. A Master Eszköz konfigurációja nem egyenlő a Slave Eszköz konfigurációjával általános esetben. Az Intelligens Pályatervező (Intelligent Path Planning) jelenti a kapcsolatot pozícióban és erőben a master és a slave között.
A Szállító Réteg konfigurációja az 5-7. ábrán található. A Slave oldali Szállító Réteg konfigurációja nagyon hasonló a Manipulációs Réteg egyik oldalához. A Szállító Réteg kapcsolatban áll a Távoli Környezettel, hordozza a Slave Eszközt és a szükséges szenzorokat.
A Feladatorientált Pályatervező Rendszer (Task Oriented Path Planning System) vezérli a szállítót a Slave Részen. Ez az eszköz használhat fejlett szolgáltatásokat, mint például GPS (Global Positioning System), GIS (Geographic Information System) és ITS (Intelligent Transport System).
Telemanipuláció virtuális valóságban előnyös lehet, amikor az operátor betanulja a veszélyes vagy nehéz feladatok elvégzését, mint például radioaktív anyagok kezelése vagy robbanó tárgyak szétszerelése; repülőgép, helikopter vagy tengeralattjáró irányítása valós idejű szimulációs környezetben. Sőt a repülőgép és más jármű szimulátorok nagyon elterjedtek a szórakoztatóiparban is. Mind szakmai, mind kereskedelmi szempontból vonzó terület lehet. A telemanipuláció virtuális valóságban való alkalmazását mutatja az 5-8. ábra. Az operátor egy fejre szerelhető szerkezetet visel, ami a vizuális visszacsatolást végzi. A kar és a kesztyű típusú master eszköz biztosítja a tapintás érzését. Az operátor vizuálisan látja a tárgyat, amit meg tud érinteni és mozgatni is tudja [10].
A mikró- és nanotechnológia megnyitott egy relatív új, felemelkedő telemaipulációs területet. A makró világból áttérve a mikró/nano világba, a legnagyobb különbség a tárgyak méretének a csökkenésében van, ahol a hossz változás hatását scaling-ként definiálták. Egyértelmű, hogy az erőt és a pozíciót szükséges átméretezni (5-9. ábra). A másik probléma az úgy nevezett sávszélesség hatás, ami azt jelenti, hogy a master eszköz (beleértve az emberi operátort) reakciójának a sávszélessége és a slave eszköz, nano/ mikró környezetének a sávszélessége különböző. A mikró/nano aktuátornak kisebb az időállandója mint a makró erővisszacsatoló eszköznek. Tehát egy impedancia átméretezés szükséges, hogy elkerüljük az instabilitást és a megbízhatatlan erő érzetét. Egyfajta időskálázásként is felfogható ez az állítás. Másképp megfogalmazva, a mikró/nano jelenség túl gyors lehet az emberi érzékeléshez, ezért le kell lassítani virtuálisan csatolt impedanciával.
Az operátorok feladataikat főleg kézzel végzik, ezért a master eszközöknek illeszkedniük kell a kezükhöz. A telemanipuláció területén sok tapintó eszközt fejlesztettek ki. Ezeket az eszközöket sok különböző területen alkalmazzák, mint például az orvostechnika területein, az atomenergiával kapcsolatos munkálatokban vagy a szórakoztatóiparban. A következőkben négy fontos master eszköz koncepciója kerül bemutatásra.
Az erő visszacsatolással rendelkező joystickot a telemanipuláció fejlődésének korai szakaszában fejlesztették ki. Napjainkban már számos erő visszacsatolással rendelkező joystick kapható a kereskedelemben. Ez az eszköz optimális alacsony minőségi követelményekkel rendelkező telemanipulációs alkalmazásokhoz, például úgynevezett “pick and place” műveletekhez, ezen kívül rendkívül népszerű a videójátékok rendszereiben. Szintén fontos felhasználási terület a különböző járművek, például repülőgépek, helikopterek vagy tengeralattjárók, valós idejű szimulátorai. A legnagyobb probléma ezekkel az eszközökkel a dinamikus változások kezelése ("on the fly"), ugyanis egy további eszköz használata szükséges a joystick dinamikai egyensúlyának megtartásához, ami rendkívül fontos funkció a különböző precíziós műveletek elvégzésénél. Az eszköz másik hátránya, hogy csupán két szabadsági fokkal rendelkezik.
A mutató típusú master eszköz úgy működik mint egy hat szabadsági fokú manipulator, az operátor célozni tud vele egy távolihelyen. A “Phantom” [12] egy ilyen típusú eszköz (lásd: 5-10. ábra) ami direkt hajtást alkalmaz és híres a nagy felbontásáról, azonban csupán az ujjbegyekre terjed ki. Az operátor ezzel az eszközzel úgynevezett “tip type slave” eszközöket tud kezelni. Ezeket az eszközöket a felszíni manipulációkhoz használják széles körben, mint például a nano térben történő telemaipulációhoz. [11]
A kar típusú master eszköz (lásd 5-11. ábra) lefedi az emberi kart a válltól a csuklóig és hat szabadságfokkal rendelkezik. Az ilyen eszközök hasznosak lehetnek olyan alkalmazásoknál amikor az operátornak használnia kell a karját, hogy elvégezzen valamilyen feladatot egy távoli helyen, tipikus felhasználási terület például a bányászat. Néhány alkalmazásban előfordul, hogy az ilyen kar típusú master eszközök valamilyen komplex eszköz alrendszerét alkotják.
A kesztyű típusú master eszköz teszi lehetővé használója számára a legösszetettebb és legkifinomultabb manipulációt [13]. Az emberi kéz a legszélesebb körben használt végtagunk, így a végső cél egy olyan rendszer kifejlesztése, amely segítségével a kezelője úgy érezheti, hogy az eszköz funkciói a teljes kezére kiterjednek. A telemanipuláció különböző típusai nem végezhetőek el erő visszacsatolás nélkül,a következőkben egy húsz szabadságfokú, szenzorokkal felszerelt, erő visszacsatolásos, kesztyű típusú eszköz bemutatása következik. (lásd: 5-12. ábra)
A.1 Mechanikai felépítés
A kezelő csuklójának helyzetét induktív érzékelő méri. A szenzorokkal ellátott kesztyű erő visszacsatolással van ellátva minden egyes ponton, ahol az ujjakhoz csatlakozik, így kezelője úgy érezheti, hogy jelen van a távoli környezetben. Az ujjak modelljének mechanikai felépítése az 513. ábran látható. A készüléket úgy tervezték, hogy kellő hely álljon rendelkezésre az érzékelők és működtetők számára és a kézhez szalagokkal legyen rögzíthető. A kesztyű összes mozgása egy fix bázishoz képest történik, amely egy, a tenyéren elhelyezett fém lemez. A fém lemezhez öt rotációs meghajtó van csatlakoztatva, amiken három billenő meghajtót helyeztek el.
Az 514. ábra az eszköz egy szabadságfokának struktúráját mutatja. Az ujj ízületeinek nyomatékát nyúlásmérő bélyegekkel mérhetjük. A motorokban elhelyezkedő fordulat jeladókat az ízületek elfordulási szögeinek mérésére használják. Ideális esetben a motorok közvetlenül az ízületekkel együtt mozognak, azonban a gyakorlatban nem áll rendelkezésre olyan motor ami elegendően kicsi és könnyű ahhoz, hogy a kézhez lehessen csatolni. A csigák és a csövekben található vezetékek szolgálnak arra, hogy az erőket a motorhoz továbbítsák. Egyetlen motor képes különállóan kezelni mind a húsz ízületet amely az emberi kézben található. Egy ízület megfeleltethető az eszköz két szegmensének. A legfőbb probléma a súrlódás, ugyanis az így fellépő erő miatt a kezelő nem tudja érzékelni, hogy melyik erő alakul ki a távoli környezetben. A súrlódási erő kompenzálásának lehetőségeiről szól a IV. fejezet.
A vizuális visszajelzés célja, hogy valósan reprezentálja az operátor kezét és a program lehetőséget nyújtson a felhasználó számára, hogy a teljes három dimenziós térben vándoroltathassa azt.
A programot úgy tervezték, hogy teljes szimulációs üzemmódban futhasson helyileg vagy TCP/IP csatlakozáson keresztül, mint az internet vagy a helyi hálózat. Szimulációs üzemmódban a program segítségével reprezentálni lehet az emberi kéz minden mozgását. Annak érdekében, hogy ez végrehajtható legyen mind anatómiai, mind matematikai modelleket fel kellett építeni, amelyek programnyelve az OpenGL. A matematikai levezetés a Denavit-Hartenberg jelöléseket használja, ugyanis ezek jól kezelhetők mind manuális megoldásnál, mind az Open GL rendszerben.
A model számos alapvető feltevést használ, ezek a következők:
A bázis koordináta rendszer minden ujj esetében azonos, annak érdekében, hogy az ujjbegyek koordinátáit általánosan közös koordináta rendszerben lehessen számolni
Ez a közös koordináta rendszer mint egy nulladik csatlakozás van figyelembe véve. Ez azért szükséges, hogy a későbbiekben a modell könnyen kiterjeszthető legyen ha szükséges
Egy ujj három csatlakozást tartalmaz, az elsőnek két szabadsági foka van, a másik kettőnek pedig egy-egy, ami síkbeli forgatásnak felel meg. Az első csatlakozás pozíciója az l0 változó segítségével írható le, ami megfelel a közös koordináta rendszer és az első csatlakozás távolságának.
Egy ujj mentén di értéke nulla, ami azt jelenti, hogy a közös normális vonala ugyanabba a vonalba esik mint az ujj.
Egy ujj mentén az ai változó az adott szegmens hosszát jelöli.
A csavarási szög csak a bázis koordináta rendszert és az első csatlakozást veszi figyelembe, ugyanis az ujj oldalirányú mozgását is figyelembe kell venni.
Fontos, hogy a nullának vett koordináta rendszer azonos az összes ujj esetében és ez közös referenciaként szolgál az egész kezet illetően. Az egyes i szögek és l0 változók egyértelműen meghatározzák a következő csatlakozás koordináta rendszerének pozícióját és orientációját minden ujj esetében. Két koordináta rendszer között a di változó megegyezik az l0 szegmens hosszával. A 0 csatlakozástól kezdve a q0 megadja a i kapcsolatot két csatlakozás között.
(5.1) |
Az (5.1) egyenletben A01 a 44 méretű homogén transzformációs mátrix a két szomszédos izület között és Xs vektorok a helyzetvektorok az adott koordináta rendszerben.
(5.2) |
(5.3) |
Ahogy azt már korábban említettük, ebben az esetben nagysága 0º, azaz koszinuszának értéke 1, szinuszának értéke pedig nulla. Két ízület esetében d értékét nullának kell venni, az értéke pedig megegyezik a szegmens hosszával. Behelyettesítve ezeket az értékeket a fenti egyenlet leegyszerűsödik és a lent látható format veszi fel. (5.4).
(5.4) |
Ekkor az első ízületnél található koordináta rendszer pozíciója és orientációja ismert és további transzformációk végezhetőek.
A további transzformációkkal egy általános formula kapható, amivel kiszámítható az ujjbegyek pozíciója a közös koordináta rendszerben. Ezt az összefüggést mutatja az (5.3) jelölésű egyenlet, ami nagyon hasonló az (5.1) egyenlethez. A T mátrix tartalmazza az ujjbegy pozícióját és orientációját a bázis koordináta rendszerben.
(5.5) |
Hasznos megállapítani, hogy a kettes csatlakozásnak két transzformációs mátrixa és koordináta rendszere van a két lehetséges rotációs tengely miatt.
(5.6) |
ahol X15 az ujjbegy helyvektora a lokális koordináta rendszerben.
Mind az öt ujjbegy pozíciója és orientációja a bázis koordináta rendszerben (azaz a csuklóhoz rögzített koordináta rendszerben) megadható az (5.7) összefüggés segítségével, a csatlakozási szögek függvényében.
(5.7) |
Az 516. ábra az ujjbegy, a kontakt pont és az objektum koordináta rendszerei közötti transzformációt illusztrálja [10]. Definiáljuk a homogén transzformációs mátrixokat: Ui R4x4 és Vi R4x4, ahol Ui az ujjbegy koordináta rendszerből (Ti R4x4 ) a kontakt koordináta rendszerbe (Ci R4x4 ) történő transzformációt és Vi R4x4 a kontakt koordináta rendszerből az objektum koordináta rendszerbe ( Bi R4x4 ) történő transzformációját jelenti. A kontakt koordináta rendszer (Ci) x és y tengelye tangense, míg a z tengely perpendicularisa az objektum felületének (5-17. ábra). A következő transzformációs mátrixokat: i R6x6 és i R6x6 definiáljuk úgy, hogy i R6x6 jelenti az ujjbegy rendszerében keletkező erőknek (Tifi) a kontakt koordináta rendszerben lévő erőkbe (Cifi) történő tarnszformációját és i jeletni ezeknek az erőknek az objektum referencia koordináta rendszerében (B) lévő erőkbe (Bfi) történő transzformációját.
A koordináta rendszerek közötti transzformációkat a következőképpen írhatjuk le:
Ci= Ti Ui B= Ci Vi= Ti Ui Vi Cifi =i Tifi Bfi=i Cifi=i i Tifi | (5.8) |
ahol Ui, Vi a homogén transzformációk és i , i az erők transzformációi [10].
A szenzorokkal elllátott kesztyű két típusú szenzor kimenettel rendelkezhet, nyomatékokkal amelyeket a kezelő hoz létre R5x4 és az ujjak találkozásainál keletkező szögeltérésekkel: R5x4. Ti értékét az előző kinematikai egyenletekből fejezhetjük ki értékét felhasználva.
Ahogy azt az 52. ábra bemutatja, egy telemanipulációs rendszerben a kommunikáció két irányban történik. Az olyan vezérlőt, amely két különböző irányba ad ki vezérlési parancsokat bilateriális, azaz kétoldalú vezérlőnek nevezzük. Mielőtt kifejlesztették az elektromos master-slave rendszereket, az erőhatások realizálására 1952 óta a bilateriális vezérlő master-slave rendszereket alkalmazták. (lásd: 518. ábra) [1] A következő ábra (519. ábra) egy másik hagyományos megközelítést mutat a master-slave rendszer vezérlésének megvalósítására, amit 1954-ben vezettek be [2]. A bilateriális vezérlők kontrollálják mind a master mind pedig a slave pozíciókat.
Ezeket az alapfelépítéseket gyakran használják új vezérlők tervezése során kiindulási pontként. Három fő probléma és néhány lehetséges megoldás tárgyalása olvasható a továbbiakban.
Nem lineáris skálázás (Virtuális csatlakozó impedanciák)
Az internet alapú telemanipuláció idő késleltetésének kompenzációja
A master eszközben fellépő súrlódási erők kompenzációja
Alapvetően két esetet különböztetünk meg: lineáris és nem lineáris skálázást. A lineáris skálázás esetében egy megfelelő állandót használnak a slave erő/pozíció és a master erő/pozíció értékek között:
(5.9) |
ahol xsΦ és FsΦ skálázott értékek, p és f pedig az erő és a pozíció skálázására használt konstansok.
A nem lineáris skálázás esetében, amit nevezünk impedancia skálázásnak is [14], az erőket egymástól függetlenül az erőviszonyaikat a hosszukkal tekintetbe véve skálázzuk, a következőképpen:
(5.10) |
Itt MV a virtuális tömeg, DV a virtuális viszkozitás és KV a virtuális merevség. Fontos megjegyezni, hogy a skálázási folyamat hasonló a virtuális impedaancia számításához, amit a robot manipulátorokkal foglalkozó területeken alkalmaznak. Az impedanciás skálázás javítja a teljesítményt, különösen amikor a master és a slave méretei vagy szerkezetük különbözőek. A mechanikai méretek összefüggésben állnak a sávszélességgel. Vannak olyan frekvencia és amplitudó tartományok, amik szükségesek a kényelmes manipuláció elvégzésének érdekében. A reakcióerőt ebbe a tartományba kell transzformálni a virtuális impedancia csatolást alkalmazva. Például a micro/nano manipuláció területén a micro/nano aktuátorok reakcióideje valamint a micro/nano környezet túlságosan gyorsak lehetnek az emberi tapintó receptorok számára. A reakcióerőt le kell lassítani, azaz a magas frekvencia komponenseket el kell tolni alacsonyabb frekvencia tartományba a virtuális impedancia csatolást alkalmazva. Látható, hogy az impedanciacsatolás tulajdonképpen úgy viselkedik, mint egy aluláteresztő szűrő: elnyomja a magas frekvencia komponenseket, ami idő késleltetéssel destabilizálja a rendszert. Ezzel szemben viszont ez ellent mond az ideális megjelenés és átláthatóság követelményének. Általában az impedanciás skálázás segíthet elkerülni a instabilitás és a megbízhatatlan erők felmerülésének érzését, viszont ezért a megjelenés és az átláthatóság fokának romlásával kell fizetni.
Az internet alapú telemanipuláció idő késleltetésének kompenzációja
A telemanipuláció hatékonysága sokat fejlődött az elmúlt néhány évben, az Internet alkalmazása pedig új lehetőségeket biztosít a kutatók számára [15]. Az Internet az adatkommunkiáció legfőbb eszköze (51. ábra). Lehetővé teszi, hogy elektronikusan csatlakoztassunk olyan helyeket, amelyek több ezer mérföld távolságban helyezkednek el egymástól. A hálózati technológiát a mobil robotok képességeivel kombinálva az Internet felhasználói felfedezhetnek és fizikailag is kölcsönhatásba kerülhetnek olyan helyekkel amik messze találhatóak tőlük, megteremtve ezzel a lehetőséget az erőforrások megosztására, a távoli kísérletezésre vagy éppen tanulásra. Burgard és munkatársai [16] kifejlesztettek egy interaktív múzeumot, ahol egy robot végzi az idegenvezetést. Simmons [17] bemutatott egy önálló idegenvezető robotot a Carnegie Mellon Egyetemen. Ezek az idegenvezető robotok képesek az akadályok kikerülésére, ön-ellenőrzésre és útvonaltervezésre. A web felhasználók egy böngésző felületen keresztül, mint a Netscape vagy a Microsoft Internet Explorer, irányíthatják a robotot, és az egérrel kiválaszthatják egy térképen a látogatás állomásait. Farzin és Goldberg [18] egy olyan interaktív online kamerarendszert fejlesztett ki, amivel a felhasználók rögzített képekre tudják irányítani a kamera képét. Stein [19] egy olyan robot kart biztosított a felhasználóknak, amellyel egy Java™-alapú felhasználói felületet használva képeket festhettek. Kosuge és társai [20] megalkották a VISIT rendszert, ami predektív stratégiát alkalmaz. Hirukawa and Hara [21] egy olyan robot kart építettek, amellyel műtétekhez lehet asszisztálni távolról, tehát úgynevezett teleoperációt lehet végezni.
A legnagyobb probléma az internet alapú telemanipulációval a változó időbeli késleltetés. TCP/IP (Transport Control Protocol/Internet Protocol) főként interneten keresztüli azonnali adattovábbításra használt, gyakorlatilag egy csomagkapcsolt protokoll. Ez azt jelenti, hogy a feladó csomagokra osztja az adatokat és különállóan küldi el ezeket a csomagokat. A fogadó megpróbálja összegyűjteni az összes csomagot és újraépíteni az eredeti adatot belőlük. Minden esetben keletkezik idő késleltetés amikor a jel A pontból B pontba terjed. Továbbá a változó időkésleltetés immanens karakterisztikája a csomagkapcsolt hálózatoknak. A változó időkésleltetésnek két fő oka lehet: egyrészt a csomagok által megtett út különböző lehet a hálón, másrészt néhány csomag elveszhet. Ebben az esetben a fogadó az elveszett csomagokat újra és újra kéri a feladótól. Az ilyen típpusú késleltetés destabilizálható kétoldalú teleoperátor rendszer használatával. Az időkésleltetésből származó stabilitási problémákat Ferrell fedezte fel, már 1965-ben. Azóta különböző módszerek jelentek meg a szakirodalomban a probléma kezelésére [23], mint például késleltetett modellező és ellenőrző rendszer [24], predektív kijelzők és fejlesztett kezelői felületek [25], közös ellenőrzés [26], impedancia szabályozás [27], vagy például felügyeleti szabályozás [28] kialakítása. Itt egy, az időkésleltetés megszüntetésére kifejlesztett megoldás, név szerint a pozícionálási hibák korrekciójával kiegészített virtuális impedanciacsatolás folyamata [29] került részletes kifejtésre. Ez a típusú szabályozási megközelítés az elenőrzése annak amelyet Otsuka és társai dolgoztak ki [30]. A virtuális impedanciacsatolást mind a kezelői, mind a távoli oldalon alkalmazzák. Egy további pozíció-korrigáló hurkot is alkalmaznak a két távoli hely szinkronizálására. Ez a szabályozási megközelítés, amit a változó időkésleltetés hatásának kompenzálására használniak, szintén megjelenik a csomagkapcsolt számítógépes hálózatoknál, mint a TCP/IP.
A Smith Predictor egy klasszikus konfiguráció az időkésleltetés kompenzálására [31]. Legyen a P(s) az elsőrendű szűrő Td időállandóval. A P0(s) a P(s) egy olyan modellje, amelyben az időkésleltetés kiesik
, | (5.11) |
A lenti ábrán (5-20. ábra) két hurok látható: a belső hurokban a kompenzáló jel v(t) tartalmaz egy y(t) prediktort. C0(s) egy PID szabályozó.
A zárt hurok átviteli függvénye a következő
(5.12) |
Fontos megjegyezni, hogy a transzcendentális kifejezés eltűnik a zárt hurok átviteli függvényének karakterisztikus egyenletében. A gyakorlatban, a tökéletes model, P(s) nem ismert, tehát az időkésleltetés hatása teljes mértékben nem szüntethető meg, de a Smih Predictor redukálja annak hatását.
Ez a megközelítés a passzivitási elméleten alapul [32], ami közeli kapcsolatban álla a Ljapunov-stabilitással. A passzivitási formula az erőnek és az energiának, mint intuitív fizikai fogalmaknak matematikai leírását reprezentálja. A passzivitás mögötti alapötlet az, hogy limitáljuk a bemenő energiaáramot úgy, hogy ne haladja meg a kimenőt. Ha az energiaveszteség nulla, a rendszert veszteségmentesnek nevezzük. Egy egyszerűsített telemanipulációs esetben, a kezelő mozgatja a master eszközt, és annak vm sebessége átadódik a slave eszközre, ami ezáltal arra kényszerül, hogy kövesse a master eszköz mozgását, ideális esetben azzal megegyező, vs= vm sebességgel. A slave eszköz kapcsolódik a távoli környezethez és a reakcióerő Fs visszaadódik a kezelőhöz, aki azzal megegyező Fm=Fs reakcióerőt érzékel. Az 521. ábra egy egyszerű telemanipulációs folyamatot mutat be állandó Td időkésleltetéssel a kommunikációs csatornában, ahol
vs(t)=vm(t-Td) Fm(t)=Fs(t-Td) | (5.13) |
Annak érdekében, hogy az időkésleltetés által okozott stabilitási probléma kezelhető legyen, egy kétirányú kommunikációs csatornára van szükség, vagyis a következő jeleket továbbító vezetékre: nyomás típusú hullám wV(t), áramlási sebesség típusú hullám wI(t) és teljesítmény P(x,t)= wV(x,t)wI(x,t), ahol x azt jelöli, hogy a hullámváltozókat azonos helyen kell mérni. A stabil működés érdekében a jelvezetéknek passzívnak kell lennie, a disszipációs energia pedig nem lehet negatív.
(5.14) |
ahol Pdiss a disszipációs teljesítmény.
A hullámváltozók triviális megválasztása (wI= vm és wV= Fs) nem elégíti ki azt a feltételt, hogy a vezeték passzív legyen, így kiemeli az eredeti probléma forrását. Ha a master eszköz sebesség jelét elküldjük és a slave eszközön fellépő erő jelet visszakapjuk Interneten keresztül, az időkésleltetés destabilizálhatja a telemanipulációs rendszer működését. Annak érdekében, hogy passzív, azaz stabil rendszerhez jussunk, el kell érnünk, hogy a jelvezeték csillapítása és szivárgása növekedjen. Ennek eléréséhez a következő normalizált hullámtranszformáció ajánlott [33]:
, | (5.15) |
a jelvezeték passzívvá és veszteségmentessé válik, ami azt jelenti, hogy a disszipációs energia értéke zérus.
A sebesség és erő jeleket hullámváltozókká kell alakítani a küldés előtt és érkezés után vissza kell őket transzformálni (lásd: 522. ábra). A hullámtranszformációk elvégzésének egy lehetséges módja, hogy a master oldalon a sebsséget közvetlenül visszacsatoljuk az erőhöz, a slave oldalon pedig az erő értékét csatoljuk vissza a sebességhez.
A mechanikai impedance meghatározható frekvenciatartományban:
(5.16) |
A [36] hivatkozásnak megfelelően, tökéletes átláthatóságot tökéletes impedanciaillesztés esetén érhetünk el. Ezt úgy értelmezhetjük, hogy a visszavert hullám rontja az átláthatóságot. A jelvezeték végső impedanciája tartalmazza a távoli környezet karakterisztikáját. Ideális átláthatóság eléréséhez a távoli környezet frekvennciaválaszát ismerni kell és a jelvezetéket a teljes frekvenciatartományban módosítani kell. Tulajdoképpen ideális megoldás nem létezik, de számos tanulmány és publikáció tesz javaslatot az optimális megoldás megtalálására.
Az interneten keresztüli kézfogás a telemanipuláció egy érdekes típusa. [29]. A feladat a világ két távoli pontján lévő ember közti kézfogás megvalósítása. Az egyik a kezelő, a másik pedig a távoli környezet, amely visszahat a kezelő kézmozgására. A master eszköz egy kézformájú eszköz lesz a kezelő kezében, a slave eszköz ezzel megegyező. Amikor a kezelő megfogja a master eszközt (5-23. ábra a és b), az továbbítja ezt a slave eszköz felé mozgás és erő formájában. A slave eszköz átadja ezt a mozgást a távoli környezetnek (a másik személy keze). Ez a személy pedig reakcióerőt működtet a slave eszközre. Ez az információ továbbítódik a kezelő számára a master eszközön keresztül. A kézfogás két, egymástól távoli ember közt fog megvalósulni. A fő kihívás az idő-késleltetés kompenzálása.
A virtuális impedancia pozíció hiba korrekcióval (Virtual Impedance with Position Error Correction, VIPEC) az impedancia szabályzás alapján működik. Két fő részből áll: egy virtuális impedancia modellből (VI) és egy pozíció hiba korrekciós részből. A virtuális impedancia modell a bemeneti erők és dinamikák alapján generál egy mozgástrajektóriát a manipulátor számára. Az ehhez hozzáadott pozíció hiba korrekciós rész csökkenti a master és a slave pozíciókülönbségét.
Egy egy szabadságfokú lineáris mozgású manipulátor esetén feltesszük, hogy egy virtuális tömeg (Mv) rögzítve van a manipulátor karhoz. Ez a virtuális tömeg egy virtuális csillapításhoz (Dv) és egy virtuális rugóhoz (Kv) kapcsolódik. A VI felépítése a következő ábrán látható (524. ábra):
Amikor egy erőt működtetünk a virtuális tömegre, annak pozíciója a VI dinamikája szerint fog változni. A VI mozgásegyenlete a következő alakú:
(5.17) |
ahol F(t) a virtuális tömegre ható erő, x(t) a virtuális tömeg elmozdulása. A VI átviteli függvénye egy másodrendű aluláteresztő szűrőként viselkedik az erő elmozdulássá alakítása folyamán. Ennek következtében az elmozdulás mindig sima, még akkor is, ha az erő tartalmaz magas frekvenciás összetevőket.
Egy VIPEC-et felhasználó idő késleltetéses teleoperátor felépítését ábrázolja az 5-25. ábra. A PEC résszel (szürkére színezett területek) van kiegészítve az eredeti rendszer [30] annak érdekében, hogy a master és slave pozíciók közti hiba csökkentésével javítsa a teleoperátor válaszát.
A fenti ábrán (lásd 525. ábra) Fo jelzi a kezelő által a master karra kifejtett erőt, Fe a reakcióerőt, amikor a slave kar érintkezik a környezettel. xm és xmr jelöli a master kar pozícióját és referencia pozícióját. xs és xsr pedig a slave kar ugyanezen paramétereit. Td fejezi ki a késleltetést az adatátvitelben a két oldal között. Af egy skalár mennyiség, amely a slave és master méretarányainak megfelelően változtatható. Mindegyik VI generálja a referencia mozgás trajektóriát mindegyik manipulátor karhoz a következő két erő, a saját oldali erő és a másik oldalról kapott érték összege alapján. Az adatátvitel az egyik oldaltól a másikig Td -vel késik. A referencia mozgás trajektória a VI-ból a szervó vezérlőbe jut, hogy az szabályozza a manipulátor kar pozícióját.
Az irányítási megközelítés eltérő méretű master és slave kar esetén is használható Af és a VI paraméterek megfelelő megválasztásával. Például ha a slave eszköz egy mikro robot, ami kisebb, mint a master.
A VI kezelő oldali mozgásegyenlete:
(5.18) |
A távoli oldalon pedig:
(5.19) |
Af =1 és a két VI paraméterei megegyeznek. Ha a VI paramétereinek meghatározása megfelelő, a rendszer stabil marad. Állandósult állapotban Fo megközelítőleg Fe -vel egyenlő, ha Kv alacsony értékre van állítva, valamint a master és slave pozíciók azonosak. Viszont ha idő késleltetés van a teleoperátorban, a VI PEC rész nélkül pozíció hibát okoz a master és a slave közt, mivel nem történik meg a két pozíció összehasonlítása. Ezen pozícióhiba csökkentésére adják hozzá a PEC részt annak érdekében, hogy zárt hurkú irányítási rendszer alakuljon ki. Így a pozíció hiba csökkenthető. A slave pozíció Td -vel késleltetve jut el a master oldalra, majd a master pozícióval összehasonlítjuk. A két pozíció különbsége áthalad a PEC erősítésen, majd módosítja a master kar referencia mozgás trajektóriáját.
Az 526. ábra a VIPEC megközelítéssel ellátott tele-kézfogó berendezésben lévő master-slave rendszer irányítási blokkvázlatát mutatja. Mindkét motor forgórészének induktivitását (La) elhanyagoljuk. A master és slave blokk ként jelzett két lineáris motor átviteli egyszerű DC-motorokként modellezhető az alábbi átviteli függvénnyel:
(5.20) |
ahol X és Ea a motor tengely elmozdulás és az armatúra feszültség Laplace-transzformáltjai, Km a motor erősítési állandója, Tm a motor időállandója, a Kp konstans pedig a szögelfordulást konvertálja elmozdulássá.
A szervo szabályzója egy arányos szabályzó G erősítéssel. A manipulátor kar és a szabályzó zárt hurkó átviteli függvénye
(5.21) |
P a PEC erősítést jelenti. Az egyszerűség kedvéért a környezet egy Ke rugómerevségű rugóval van modellezve. A rugó és a slave kar kölcsönhatásának dinamikája a következőképp modellezhető:
Fe (t) = Ke xs(t), | (5.22) |
ahol xs a rugó elmozdulása. A kezelő dinamikájának közelítése, beleszámítva a kezelő és a master kar kölcsönhatását:
(5.23) |
ahol Fop a kezelő izmai által kifejtett erő. Mop, Bop and Kop jelzi a kezelő és a master kar tömegét, csillapításét és rugómerevségét. Az (5.22)-hoz hasonlóan a kezelő elmozdulása (5.23)-ben xm, mivel feltételezzük, hogy a kezelő erősen fogja a master kart és nem engedi el a művelet idejére.
A tele-kézfogó berendezés használatával két kezelő ember, az A és B kezelők kezet fognak. Amikor az A kezelő próbálja rázni B kezét a kar mozgatásával, az A kar mozgatásával, a slave karnak ugyanúgy kell mozognia, mint ahogyan a master karnak. Ha slave kar érintkezik a B kezelő tenyerével, a kezelő érzi az A kezelő fogási erejét. A B kezelő hasonló módon szintén meg tudja szorítani az A kezelő virtuális kezét. A két kezelő sikeresen kezet fogott és erőt érzett a tele-kézfogó berendezésen kereszül. Az egyszerű VI és a VIPEC módszerek kísérleti eredményeinek összehasonlítása látható a két ábrán (5-27. ábra, 5-28. ábra), az idő késleltetés elhanyagolható. A két módszer közti eltérés nem jelentős. Mindkét esetben megközelítőleg azonos a master és slave eszközök pozíciója. Az 5-28. ábra kísérleti eredményeket mutat400ms-os késleltetés esetén. Mindkét esetben stabil a rendszer, és a kezelők érzik a szorító erőt. Azonban a VIPEC módszer esetén a master és slave eszköz közti pozíció különbség kisebb.
Az internet alapú telemanipuláció egy viszonylag új és előnyös kutatási terület. Lehetőséget nyújt új és kifinomult irányítási módszerek alkalmazására, melyeknek célja az időkésleltetés és a nemlineáris súrlódási erő kiküszöbölése, ami az egyik fő kihívás ezen a téren. Természetesen a teljes kiküszöbölés lehetetlen, de stabil működést el lehet érni. A tanulmányban bemutattunk egy ígéretes módszert (virtuális impedancia pozíció hiba korrekcióval). A módszer hatékonysága a tele-kézfogó ezköz mérési eredményei által bizonyított.
Ebben a részben a tele-mikromanipulációs rendszer bemutatását láthatjuk (529. ábra). Mikromanipuláció esetén a mikrokörnyezet képi információinak visszacsatolása általában mikroszkóppal történik. 2D képi információk alapján bonyolult a mikro-objektum manipulálása, ezért slave eszköz 3D animációja (529. ábra bal oldala) nyújt segítséget a kezelő számára. Ebben a rendszerben a master bemeneti eszközt, amelyet a kezelő működtet “haptic interfész”-nek hívják, amely egy 6 szabadságfokú joystick típusú master eszköz (530. ábra). A slave manipulátorokat közvetlenül a manipulációs feladatok elvégzésére használják (531. ábra). A slave manipulátor és a master eszköz rendszerek Ethernet segítségével vannak összekötve, és hálózaton keresztül végzik a teleoperációt.
A master és a slave eszköz felépítésének meg kell egyeznie. A párhuzamos szegmensű felépítés munkatere kicsi, ami nem kényelmes a kezelő számára. Ezért a nagy munkatér eléréséhez egy soros szegmensű struktúrát alkalmazunk annak ellenére, hogy ezáltal csökken a pontosság és a merevség. A master egység 3 lineáris szervo motorja 3 tengely (X, Y, Z) irányú párhuzamos mozgást tesz lehetővé, 3 AC szervo motor pedig a tengelyek körüli (, , ) elfordulást valósít meg (530. ábra). Ez a slave eszköz mind a 6 szabadságfokát biztosítja. A kezelő kezében tartja a master-rudat, amit mozgatni és forgatni tud. A munkatér 340mmx340mmx340mm a lineáris mozgás tekintetében, a forgatás pedig +/- 15 fokos szögben lehetséges minden tengely mentén. Minden szabadságfok erő visszajelzéssel rendelkezik.
Slave eszközként egy párhuzamos szegmensű, 6 szabadságfokú manipulátort [13, 14, 15] fejlesztettek ki (531. ábra). Általában a párhuzamos szegmensű felépítés kedvező tulajdonságai a precizitás és a merevség, azonban kis munkatérrel rendelkezik. Ez a struktúra megfelelő a precíz manipulációhoz. 3 szabadságfoka van az X, Y, Z lineáris mozgás megvalósításához, valamint 3 a tengelyek körüli forgatáshoz. A munkatere majdnem 30mmx30mmx30mm, +/- 15 fok forgatási lehetőséggel. A pozícionálási pontosság 10m. Különbözik a jól ismert Stewart Platform struktúrától [15], újfajta felépítése van: Hat szegmense van, amelyek függőlegesen indulnak az alapból, amely tágulásra és összehúzódásra képes. Minden két szegmens a hat közül egy alszegmenssel eggyé kapcsolódik össze. Végül a végberendezés lemez 3 ponton van felfogatva (részletek: [13]). A manipulátort egy PC irányítja (dual Pentium III 500MHz). Az operációs rendszer Real Time Linux (RT-Linux), hogy 2.5kHz-es mintavételezésű szabályzás legyen megvalósítható. A motor ki- és bemenete, az enkóder, az erőmérő szenzor AD, DA, számláló, valamint DIO kártyákkal van csatlakoztatva egy kiterjesztett buszhoz. Az aktuátor 6 AC szervo motorral van megoldva, amelyek 1mm menetemelkedésű golyósorsókhoz csatlakoznak. Ennek a struktúrának a fő hátránya a komplex kinematika és dinamika szinguláris pontokkal, amint az [13]-ban is olvasható.
Amikor meg szeretnénk vizsgálni az aktuális eredményeket és teóriákat, érdemes visszatekinteni a múltba és megvizsgálni, hogy elődeink hogyan értelmezték ugyanazt a problémát. Alább egy rövid összefoglalót adunk, összpontosítva csak a súrlódási modell fejlődésére a XX. század közepétől.
Érdekes, de talán nem meglepő, hogy az első súrlódási modell Leonardo Da Vinci-től (1452-1519) származik. Leonardo megmérte az erőket az objektumok között, mind horizontális, mind elhajló felület esetén, ezáltal felismerte a különbséget a csúszó és gördülő súrlódás között, valamint a kenés jótékony hatását. Ahogy a 6.1.ábra mutatja, Leonardo kíváncsi volt a látható területeken okozott hatásokra. Ezt írta a jegyzetébe: „A súrlódás azonos súly esetén egyenlő ellenállást okoz a mozgás kezdetén, habár a kapcsolat különböző szélességeken és hosszúságokon keresztül történik.” A fenti megfigyelés teljes összhangban van a súrlódás első kettő törvényével. Leonardo bevezette az első együtthatót a súrlódási erő és a szabályos terhelés arányaként, azonban feltételezte, hogy minden súrlódó testnek van súrlódási ellenállása, amely a súly negyedével egyenlő.
Robert Hook-ot a híres Steven's szekere - ez egy hajóféle, amely kerekeken mozgott, vitorlával és megfelelő kötélzettel volt ellátva – inspirálta. Próbálta megfejteni a gördülő súrlódást, és felismert két dolgot: "Az első és legfontosabb a hajlékonyság, a kerekek súlya, amelyek gördülnek és nyomnak, és a második ezek részeinek a tapadása, ragadása a kerékhez;…". A jövőben különbséget tett a maradó, és a nem maradó alakváltozás szerepe között, és megfejtette az akadozás és tapadás kérdéseit.
Guillaume Amontons (1673-1705) is részt vett számos súrlódással foglalkozó tudományos munkában. Kísérletei eredménye és azok értelemzései megjelentek a „Royal Academia”-ban 1699-ben. A készülék, amelyet Amontons használt a kísérleteiben a 6.2 ábrán látható. A tesztpéldányok, amelyeket AA és BB-vel jelöltünk, különböző rugókkal együtt voltak megterhelve, ezt jelzi a CCC, amíg az erőhatás le nem győzi a súrlódó erőt és el nem indítja a csúszást, amelyet a rugón (D) mérhetünk.
Az egymáshoz képest elmozduló anyag részecskéi között fellépő mozgásgátló hatást súrlódásnak nevezzük. Ebből következik, hogy a súrlódási erő ellentétes értelmű az elmozdulással.
Általánosságban két fő csoportra bontható a súrlódás jelensége:
külső súrlódás, ez a szilárd testek érintkező felületein lép fel;
belső súrlódás, mely az anyag belső részecskéinek relatív elmozdulásakor keletkezik.
Külső súrlódáskor három esetet különböztethetünk meg, attól függően, hogy milyen az elmozdulás jellege:
Csúszó súrlódás: amikor az egyik test egyik irányban csúszik a másik test felületén.
Forgási súrlódás: ilyenkor az egymással érintkező felületek egy körpályát írnak le, egy adott forgástengely körül. Ekkor az elmozdulással (forgással) szembeni ellenállás nyomatékként adható meg,
T= F | (6.1) |
ahol F a két forgó testet terhelő erő, r pedig az elmozduló felületek sugara.
Gördülő súrlódás: az egymáson legördülő forgástest mozgását egy erő nyomatéka okozza. A gördülő ellenállási tényező a csúszási súrlódási együtthatónak csak kis százaléka.
A fenti összefüggésből következik, hogy a súrlódási erő vagy nyomaték nem csak a felületre normális erőtől, tehát a terheléstől függ, hanem a súrlódási tényezőtől is. A súrlódási tényezőt viszont számtalan hatás befolyásolja:
Anyagminőség: az anyag belső szerkezete, az anyag hővezetése, a súrlódó felületek rugalmassága ill. merevsége tartozik ide.
Felületi minőség: ezt jellemzi a felület érdessége, a súrlódó felületek állapota (Beilby, oxidációs, adszorpciós réteg).
Igénybevételi körülmények: ezen a csúszási sebességet, a terhelés nagyságát, az üzemi hőmérsékletet, és a súrlódó pár illesztését értjük.
A belső súrlódásra vonatkozó törvényszerűségek bonyolultabbak, de a súrlódási tényezőt itt is a Coulomb-féle összefüggéssel adjuk meg.
Az egymással érintkező felületek között többféle súrlódási állapotot szokás megkülönböztetni:
száraz vagy statikus súrlódás;
határréteg-súrlódás;
vegyes súrlódás;
folyadéksúrlódás;
az előző esetek kombinációja.
A következőkben ezeket az állapotokat tárgyaljuk részletesebben.
Ha szilárd testek egymáson kenőanyag nélkül mozognak, akkor száraz súrlódásról beszélünk. Valóságban száraz súrlódás nincs, mert mindig valami kevés kenőanyag marad a felületre tapadva. Elegendő, ha a felületre néhány molekulányi vastag levegő vagy gázréteg tapad, ez is csökkenti a súrlódási ellenállást. Az egymáson elmozduló felületek részben rugalmas, részben képlékeny alakváltozást szenvednek, a kiálló részek letöredezhetnek, vagy összehegedhetnek. A súrlódási tényező 0,3..1,3 között változik. Azért mégsem tárgyalhatjuk ezt a jelenséget olyan egyszerűen, mivel itt egy komplexebb folyamatról van szó.
Amikor két felület találkozik, és rajtuk erőt fejtünk ki, de nem történik csúszás, akkor a kapcsolódás durvasága, mint egyik fontos tulajdonság kerül előtérbe. A két test érintkezési felülete elasztikusan deformálódik, létrejön egy kezdeti csúszási elmozdulás, és mindkét felület határrétege képlékenyen deformálódik, kialakul a száraz vagy statikus súrlódás. Ahogy a mechanikából ismert, a kapcsolódások ilyenkor mindkét, tangenciális és normál irányban is deformálódhatnak. Amikor a tangenciális erőt először alkalmazzuk, akkor a tömeg egy kis elmozdulása figyelhető meg tangenciális irányban. Ez az elmozdulás 10-4…5 10-3 mm -es tartományban van, ami megszűnik, ha az anyagnak nincs csúszási hajlama. Az utóbbi esetben a test még kúszni fog a felületen, eleinte még meglehetősen kis sebességgel (kb. 105 mm/sec), ami ezután pedig lecsökken. Nagyon puha anyagoknál, mint pl. az indiumnál és a grafitnál ez a szakasz lassú és állandó csúszási sebesség alakul ki kb. 10-5 – 10-7 mm/sec tartományban.
Tanulmányozva a golyóscsapágyak forgását, Dahl észrevette, hogy az elmozdulás arányos az alkalmazott erővel, amíg el nem érjük a kritikus erőt, ahol az elszakadás történik. A tangenciális terhelés alatt a felületi réteg rugalmasan deformálódik, majd visszaáll eredeti helyzetébe, ha a terhelő erőt megszüntetjük. Dahl modellezte ezt a jelenséget, kis rugókkal helyettesítve a kapcsolódásokat a két megfelelő felület között. Amikor tangenciális erőt alkalmazunk, a rugók deformálódnak, és elmozdulás történik. A vonzási egyenlet a következő összefüggéssel adható meg :
Ft(x) = -ktx | (6.2) |
Ahol az Ft a tangenciális erő, a kt a kapcsolódás keménysége, az x pedig az egyensúlyi helyzettől való kitérés. A kt, ami a tangenciális keménység, pedig a felületi réteg geometriájának, - más szóval a durvaság geometriája -, az anyag rugalmasságának és az alkalmazott normális erőnek a függvénye. Első közelítésben nézzük az elszakadási elmozdulást, ami konstans, ennélfogva a keménység megadható a következő egyenlettel :
(6.3) |
ahol az Fb az elszakadáshoz tartozó erő, és az x a felületi réteg maximális deformációja az elszakadás előtt. Ha a normális erő változó és a súrlódási együttható konstanssá válik, akkor a normális erő arányos lesz kt-vel.A kezdeti csúszási elmozdulást a mechanikai szakcikkekben "micro-slip"-nek is nevezik. Az átmenet a kezdeti csúszási elmozdulásból a csúszásba meglehetősen komplex. Nincs hirtelen átmenet a csúszásba, a csúszás először a kapcsolódás határán történik, majd tovább terjeszkedik a középpont irányába.
Kiterjedt vizsgálatokat végeztek, hogy különböző vegyi hatások hogyan csökkentik le a felület súrlódási tényezőjét. Ez a csökkenés különösen nagy volt grafit és molibdén-diszulfid felületen való alkalmazása esetén, mivel ezeknek az anyagoknak az a sajátossága, hogy kiegyenlítik az egyenlőtlenségeket, és tükörsima felületet hoznak létre.
Ez a súrlódás akkor lép fel, amikor a súrlódó felületeken kb. 1…2 molekulányi vékonyságú folyadékréteg tapad meg, és ez bizonyos kenőhatást fejt ki. A súrlódási tényező értéke 0,1…0,3 között mozog.
A határkenés - így is nevezik - fő jellemzője még a nagyon kis sebesség, ennélfogva a folyadéksúrlódás nem is kap szerepet, ahogyan a sebesség is túl kicsi, hogy kialakuljon a folyadéksúrlódási réteg. Ebben az állapotban a határréteg biztosítja a kenést. Ennek folytonosnak és szilárdnak kell lennie, hogy fennmaradjon ez az állapot a kapcsolódási feszültség alatt is, és kis nyírófeszültségek ébredjenek a súrlódásnál.
Azt gondolhatjuk, a nyíróerőnek köszönhető, hogy két szilárd felület közötti határkenésnél a súrlódás nagyobb, mint a részleges vagy teljes folyadékkenésnél. Azonban ez nem mindig igaz. Nem feltétlenül szükséges, hogy a nyíróerő nagyobb legyen, mint a folyadék viszkózus ereje, gondoljunk például az üvegre. Nagyon sok anyagnál kisebb lesz a nyíróerő, mint a viszkózus áramlás ereje a folyadékban. Bizonyos határkenési állapotnál a súrlódási szint alatta marad a Coulomb súrlódásnál tapasztaltnak, és teljesen kiküszöböli a stick-slip-et (akadozó csúszást). Elméletileg a kenőanyag viszkozitásának nincs hatása ebben az esetben a súrlódásra. Csapágyakban a kenés kimaradása esetén előálló helyzet az, amikor ez a fajta, azaz határréteg súrlódás alakul ki, de mindig jelentkezik egy bizonyos mértékű hidrodinamikai hatás is.
Ha az egymáson elmozduló felületek között kenőanyag is van, de nem annyi, hogy a felületek egymástól teljesen elváljanak, akkor vegyes vagy részleges súrlódás jön létre. Ez a súrlódási állapot lényegében a határréteg súrlódásból és a tiszta folyadéksúrlódásból tevődik össze. A kenést ekkor a felületre tapadó, igen vékony felületi kenőanyagréteg biztosítja, amely még a csúcsokon is csökkenti a súrlódást. A súrlódási tényező értéke attól függően változik, hogy milyen arányban vesz részt a kenésben a határréteg súrlódás és a teljes folyadéksúrlódás
= 0,05…0,1. Ebben a súrlódási állapotban igen könnyen bekövetkezhet a csúcsok berágódása, vagy összehegedése, mert aránylag kis csapágyhőmérsékletnél is több száz keletkezhet.
Részleges folyadékkenés tehát akkor alakul ki, amikor a folyadék az érintkezési zónákba kerül a mozgás miatt, csúszásnál vagy éppen forgásnál. A terhelés ráadásakor a nyomás keletkezésénél néha előfordul kis kenőanyag kiáramlás, de ezt a viszkozitás megakadályozza, mégpedig a vékony folyadékréteg formálásával. Ez persze függ a mozgás sebességétől, a kapcsolódás geometriájától, és a kenőanyag viszkozitásától. Amikor ez a vékony réteg nem vastagabb, mint a felületi érdességmagasság, akkor beszélünk részleges folyadékkenésről, ilyenkor szilárd rész találkozik szilárd résszel. Amikor a filmréteg elég vastag, és az elválás tökéletes, akkor a terhelést teljes egészében a folyadék veszi fel. A részleges folyadékkenést talán könnyebb megértenünk, ha a vízisíelő analógiájára gondolunk. Nulla sebességnél a síelő úszva maradhat csak fenn a vízen. A kritikus sebesség fölött a síelőt a síléc mozgása tartja fönt a vízen. Az álló és mozgó helyzet között van a hidrodinamikus tartomány.
Ezek a sebességek jelentik az analógiát a részleges folyadékkenésre. Azonban ez az analógia nem teljesen tökéletes, mivel az úszásnál nem szilárd-szilárd a kapcsolat, mozgásnál pedig a síelő a folyadék tehetelenségének és nem a viszkozitásnak köszönheti a támaszt, mint a folyadékkenés esetében. Amikor a síelő növelte sebességét, és elemelkedett, akkor a vele szemben fennálló ellenállások lecsökkentek, így engedve számára a még gyorsabb haladást. Ahogy a részleges folyadékkenésnél a sebességet növeljük, a szilárd-szilárd kapcsolat csökken, a súrlódás kisebb lesz, és növekedik a mozgó részek gyorsasága.
A határkenés nagyon fontos szerepet kap a stick-slip jelenségében. A határkenési állapot tényleges megfejtése a megfelelő molekulák felfedezése, amelyek korrodálás nélkül összekötik a nagy szilárdságú acélfelületeket. Több feltételt kellene, hogy kielégítsenek: elegendő szilárdságúak legyenek, ellenálljanak a csúszóerőknek, és kis nyíróerőhöz kis súrlódás tartozzon. Az ilyen molekulák növelik a kenőanyag terjedelmét (gépolaj vagy zsír) és jellemzően az összes molekula kevesebb, mint 2 %-át alkotják. A kenőanyag adalékok három általános osztályba sorolhatók: síkosító hatóanyagok, magas nyomású hatóanyagok, és kopás ellenes hatóanyagok. Száraz kenőanyagok, olyan mint a Teflon, a mechanizmusok számos variációiban működik. A legfontosabb feltétel az ilyen hatóanyagoknál a csillapítás, amelyek révén kialakulhat a teljes folyadékkenés. A részleges folyadékkenés modellje a tribológia tudományának egyik legnehezebb része. Manapság észrevehetjük, hogy a felületek érdességeinek, méreteinek és orientációjának részletessége egyre komplikáltabbá teszi a kapcsolódó felületek egymás közötti kölcsönhatásának analízisét.
Az egymáson elmozduló felületek között bizonyos körülmények között összefüggő olajhártya alakul ki, és ebben elegendően nagy a nyomás, amely a terhelés ellenére a két felületet szétválasztja egymástól, megszüntetve a fémes érintkezést. Mivel ilyenkor a két felület nem találkozik egymással, kopás sem jön létre. A súrlódási tényezőt ilyenkor a kenőanyag belső súrlódása határozza meg, amit folyadéksúrlódásnak nevezünk. Ebben az állapotban a súrlódási tényező értéke a kenőanyagban kialakult nyomástól, és a kenőanyag viszkozitásától függ, megközelítőleg = 0,001…0,01. A belső súrlódási ellenállás meghatározható, ha feltételezzük, hogy a kenőanyag áramlása lamináris, vagyis réteges (ld. 6.3. ábra).
Áramlástani ismereteink szerint a csúszó felületek közötti csúsztató feszültség arányos a sebesség y tengelymenti változásával, a sebességgradienssel, azaz
(6.4) |
Az egyenletben az [Pa] egy arányossági tényező, amely a kenőanyag belső súrlódására jellemző, ezt a kenőanyag dinamikai viszkozitásának nevezzük. Ha ismerjük a két lap közötti sebességeloszlást, akkor meghatározható a felső síklap állandó mozgatásához szükséges erő, mely a következő összefüggéssel határozható meg,
(6.5) |
ahol dA a síklap elemi felülete és A a síklap felülete.
Az eddig tárgyalt esetek, súrlódási állapotfajták a valóságban mindig csak együttesen fordulnak elő, és határozzák meg a test súrlódási állapotát.
A következőkben az egyik legnagyobb problémát okozó jelenségről szeretnénk néhány szót szólni, amely általában egyenes vonalú mozgásnál, egymáson elcsúszó felületek elcsúszásakor következik be, főleg megmunkáló gépek ágyvezetékeinél, szánok mozgásainál. Ezt a jelenséget a szakirodalomban akadozó csúszásnak (stick-slip) nevezik.
Kis csúszási sebességnél a mozgás egyenlőtlen, ugrásszerűen változik, úgy is mondhatjuk, hogy oszcillál. Ez az ugrásszerű sebességváltozás olyan nagy mértékű is lehet, hogy egy-egy ilyen periódus alatt a sebesség zérusra csökkenhet. Ilyenkor a mozgás akadozóvá válik. Az akadozó csúszást az okozza, hogy a test rugalmas alakváltozást szenved, másrészt a nyugvásbeli és mozgásbeli súrlódási tényezők értéke különböző. Ezenkívül a mozgásbeli súrlódási tényező értéke és a sebesség között nem lineáris a kapcsolat. A mozgásbeli súrlódási tényező értéke mindig nagyobb, mint a nyugvásbeli súrlódási tényező értéke.
Az akadozó csúszás megértéséhez érdemes egy fizikai modellt elképzelnünk, ami két testből áll, ezek egymáson csúsznak, a felsőt pedig egy rugalmas elemmel, például egy rugóval hajtjuk. Amikor a felső elmozduló test az alsóra tapad, akkor a v sebesség zérusra csökken. Ekkor a rugalmas hajtóelem összenyomódik, így a rugóerő hirtelen nőni kezd, míg el nem éri és nagyobb nem lesz, mint a nyugvásbeli súrlódó erő. A test hirtelen megindul, a sebessége v, és a mozgásbeli súrlódó erő (F) pedig kisebb, mint a nyugvásbeli (F), a lengés megindul. A tapadás és csúszás periódikusan ismétlődik. Azt a sebességet, ahol nincs letapadás, kritikusnak vagy határsebességnek nevezzük.
A súrlódásról általánosságban beszélve, öt pontban összefoglalhatjuk a jól ismert tulajdonságokat [111]-nek megfelelően.
1. Bármelyik helyzetben, ahol a tangenciális erők eredője kisebb, mint az adott helyzethez tartozó specifikus erőparaméter, a súrlódási erő egyenlő értékű, és ellentétes irányú lesz az alkalmazott erők eredőjével, és tangenciális mozgás nem lép fel.
2. Amikor tangenciális mozgás következik be, akkor a súrlódási erő a felület relatív sebességének ellentétes irányában hat.
3. A súrlódási erő F arányos a normál F erővel. Ez a reláció segít abban, hogy definiáljuk a súrlódási állandót, :
F = F | (6.6) |
Másképpen ez a törvény kifejezhető a konstans válaszszöggel, vagy súrlódási szöggel, , definíció szerint:
tan = | (6.7) |
Talán érthetőbb a következő definíció: annak a lejtőnek a szöge, amire bármilyen tárgyat helyezve az ott nyugalomban marad, de ha ezt a szöget csak egy kicsivel is megnövelem, a tárgy le fog csúszni a lejtőről.
4. A súrlódás független az Aa látszólagos kapcsolati felülettől. Különböző méretű tárgyaknak ugyanaz a súrlódási tényezőjük.
5. A súrlódási erő független a v csúszási sebességtől. Ez azt mutatja, hogy a csúszás elkezdéséhez szükséges erő megegyezik a csúszás fenntartásához szükséges erővel, bármely megadott sebességnél.
Ezek a súrlódási tulajdonságok széles körben használtak a mindennapi életben, és a mérnöki gyakorlatban. Sajnos azonban, ennek ellenére tudjuk, hogy ezek egyszerű, és általában jó közelítések. A súrlódás kutatása még folyamatban van, és a tribológia még sok fel nem fedezett területet tartalmaz. Amiről már teljesen biztosak vagyunk, az az, hogy a valódi kép sokkal bonyolultabb, és többször meglepően különbözik a fent említett szabályoktól.
Az alább részletezett modell a XVIII. században keletkezett, Coulomb és Amontons tudományos eredményei óta még ma is sűrűn használják. A XX. század technológiai fejlődésének köszönhetően sok új eszköz és eljárás született a tribológiai kutatások segítésére, és segített a súrlódás újragondolásában.
A Coulomb típusú modell két hatalmas hibát hordoz. Egyfelől az egész modell alapjában a érdességi elméletre támaszkodik, és azt állítja, hogy a súrlódás csak a felszín érdességétől függ. Ennek oka viszonylag egyszerű. Akkoriban még hiányoztak azok a speciális felszerelések, és a kiegészítő tudás, hogy észrevegyék a súrlódás és az összetartó erő kapcsolatát. Másrészről, ez a modell nem szolgál meggyőző érvekkel a súrlódás disszipatív jellegére. De ezek az elképzelések azért jó irányba mutattak [140], és az igazi áttörés 1943-ban, a második világháború alatt következett be. Ausztráliában Bowden, és Tabor [24] kísérletsorozatai bizonyítékul szolgáltak a korábbi tapadási elméletre, és ez lehetőséget teremtett a súrlódási veszteségek magyarázatára.
Kísérleteik hasonló eredményekre vezettek más anyagpárok esetén is. A kísérletek eredményét kibővítve, két tulajdonságot adtak a súrlódáshoz [24], [25]. Rabinowicz későbbi munkái újabb két tulajdonságot mutattak ki. [111].
A súrlódás négy okra vezethető vissza:
A két felület közötti összetartó (adhéziós) erő.
A két felület egymásba vágódása.
A felület érdessége.
Elektromos összetevők.
Az előző fejezetben áttekintettük a súrlódás keletkezését, okait és megjelenési formáit. Ebben a fejezetben megpróbáljuk összefoglalni a súrlódás modellezésére használt különféle eljárásokat.
A statikus modellek leginkább egyszerű matematikai leírásai a súrlódás viselkedésének. Nem a súrlódás egészét, hanem csak egy részét, mint pl. a súrlódó erő nyugalomban, a súrlódás, mint az állandósult-állapot sebességfüggvénye stb. írjuk le.
A legegyszerűbb és talán a leginkább ismert modell az úgynevezett Coulomb súrlódási modell. A modellben használt nagyfokú egyszerűsítések és elhanyagolások ellenére nagymértékben használja a mérnöki társadalom, amikor a dinamikus hatások elhanyagolhatóak. Mindazonáltal, a Coulomb modell az összes továbbfejlesztett modellnek alkotóeleme. A Coulomb súrlódó erő Fc állandó nagyságú erő, mely a mozgással ellentétes irányban hat:
Amikor
(6.8) |
| (6.9) |
Ahol FN a felületeket összeszorító erő és a súrlódási tényező. A meghatározható különböző feltételekkel végzett mérésekből. A legnagyobb probléma a Coulomb modellel, hogy nem képes a nulla körüli sebességtartomány kezelésére. Ahhoz, hogy ezt a modellt alkalmazni tudjuk ezekre az esetekre, bevezetjük a 0 tényezőt. A mozgás kezdetekor felcseréli -t a (6.9) egyenletben, egészen addig, amíg el nem kezdődik a folyamat állandósult állapota. A és 0 értéke megtalálható a fontosabb fizika, vagy mérnöki táblázatokban, különböző anyagpárokra, száraz és síkosított esetekre.
Az első ilyen jellegű táblázat a XVIII. század elején készült. Megjegyzendő, hogy ez a legegyszerűbb és leggyorsabb módja a súrlódás számításának, de ez a módszer akár 20%-os pontatlansággal is járhat.
A viszkózus súrlódási elem modellezi a súrlódási erőt az elmozdulás sebességével arányosan.
Amikor
(2.10) | (6.10) |
A statikus súrlódás erőkényszer.
Ha
(6.11) |
ahol Fs a statikus súrlódó erő, egy további terhelés az Fc -n a Coulomb súrlódási erőn.
A csúszás előtti elmozdulást először Dahl tanulmányozta és modellezte [40]. A 2.2 képlet alapján:
(6.12) |
(2.12)
ahol Ff(x) a súrlódási erő a csúszás előtti elmozdulás függvénye, kt az anyag merevsége, és x az elmozdulás. kt anyagtulajdonság, de a (6.12) egyenletből számítható, ha x 1-50 [m] között van.
Többféle modell áll rendelkezésre a jelenség leírásához. Kato elméleti modellje [85] a következő:
(6.13) |
ahol a végső statikus súrlódás, vagyis a statikus súrlódás nagysága nagyon hosszú idő után, nyugalomban, FC a Coulomb súrlódás a beragadás pillanatában, és m pedig tapasztalati paraméterek 0.04 és 0.64, illetve 0.36 és 0.67 között. Kis hosszú ébredési időt jelent. A nem-konformális kapcsolatot megvizsgálva Amstrong-Hélouvry a = 1.66 és m = 0.65 [6] –t állapította meg.
Egy másik modell, amelyet Amstrong-Hélouvry [6] dolgozott ki, megszünteti FC használatát a statikus súrlódás ébredésének pillanatában. Ennek a modellnek kevesebb a paramétere, mint a 2.13 egyenletének.
(6.14) |
ahol a statikus súrlódás szintje a csúszás n-dik ciklusának kezdete, a statikus súrlódás szintjének a vége az előző csúszásciklus végén, a végső statikus súrlódás, a kísérleti paraméter. Jegyezzük meg, különbözik a (6.13) egyenletben közölt mértékegységtől.
A súrlódási memória egyszerűen időkéséssel modellezhető:
(6.15) |
ahol Ff(t) az azonnali súrlódási erő, Fvel() a súrlódás az állandósult-állapotbeli sebesség függvényében, és t a késleltető paraméter. A súrlódás időkésését mérve Hess és Soom [75] ezt 3 és 9 ms közöttinek találta a terheléstől és kenéstől függően. Ők szintén rámutattak, hogy a késés növekszik a kenőanyag viszkozitásának növekedésével, és a kapcsolati terhelés növekedésével. De úgy tűnik, hogy független az oszcillációs frekvenciától.
A komplex modelleket leggyakrabban egyszerű modellelemekből építik fel, hozzáadott tulajdonságokkal, amik kezelik a dinamikus viselkedést. Ma a tribológia tudománya még távol van attól, hogy kész képet adjon a súrlódás működéséről minden tekintetben, ezért ezek a modellek sokkal inkább tapasztalati kísérletekre építkeznek, mint mély tudományos háttérre.
A Stribeck görbe a súrlódás egy összetettebb modellje, a súrlódás a sebesség függvénye. Azonban csak állandósult állapotban érvényes, tartalmazza a Coulomb és a viszkózus súrlódási modellt, mint beépített elemeket. Az alábbi modellt Hess és Soom [75] alkalmazta.
(6.16) |
ahol a Coulomb, viszkózus és statikus súrldást az FC, Fv és Fs jelöli. A vs a Stribeck görbe karakterisztikus sebessége. Hess és Soom rendszeres függőséget mutatott ki Fv és vs –en, mint kenő és terhelési paramétereken.
Egy másik megközelítés a Stribeck hatás modellezésére a linearizált exponenciáls kifejezés, amit Bo és Pavelescu alkalmazott [21]. A viszkózus súrlódás kifejezést Armstrong-Hélouvry [9] alkotta meg.
(6.17) |
ahol egy hozzáadott tapasztalati paraméter. Az irodalomban Bo és Pavelescu [21] -ra 0.5 –től 1-ig tartó értékeket adott meg. Armstrong-Hélouvry [6], [8] = 2, Fuller [57] javasolt = nagyon nagyot arra a rendszerre, ahol hatásos határkenés van. A = 2 értékre az exponenciális modell (6.17) egyenlete Gauss-i modellé alakul, ami közel egyenlő a Lorentz-i modellel az (6.16) egyenletben.
A Stribeck görbe másik egyszerű reprezentációja a Tustin modell [144]. A modell az alapvető súrlódási jelenségekből építkezik, és egyszerűen egymásra helyezi őket. A három tulajdonság, a Coulomb súrlódás FC, a statikus súrlódás Fs és a viszkózus súrlódás Fv.
(6.18) |
A Tustin modellt linearizálva a következőket kapjuk:
(6.19) |
Ez a linearizált modell azonban csak 85 %-os pontossággal alkalmazható abban a tartományban, ahol a sebesség a négyzetgyökével összehasonlítható. Egyéb esetekben, amikor a rendszersebesség nem ilyen lassú, más modellt kell használni.
Népszerű elképzelés, hogy „fésüljük” össze a már létező modelleket. Így működik a hét-paraméteres modell. A hét paraméterből mindegyik egy-egy súrlódási jelenséget ír le, ami a 6.2 táblázatban látható. Az értékük általában a mechanikai és kenési feltételektől függ, de tipikus értékeket a következő munkák alapján javasolok [6], [27], [57], [75], [85], [105].
A súrlódás adott.
Nincs csúszás (előcsúszási elmozdulás).
(6.20) |
Csúszás (Coulomb + viszkózus + Stribeck görbe súrlódás súrlódási memóriával)
(6.21) |
Ébredő statikus súrlódás:
(6.22) |
Ahol:
Ff() | azonnali súrlódási erő |
FC | (Φ) a Coulomb súrlódási erő |
Fv | (Φ) a viszkózus súrlódási erő |
Fs | a Stribeck súrlódás nagysága Stribeck súrlódás (a súrlódási erő elszakadásánál FC+Fs) |
Fsa | az előző csúszási periódus végén a Stribeck súrlódás nagysága |
Fs | (Φ) a Stribeck súrlódás nagysága hosszú idő után nyugalomban (az erő lassú alkalmazásával) |
kt | (Φ) a statikus kapcsolat tangenciális keménysége |
vs | (Φ) a Stribeck súrlódás karakterisztikus sebessége |
L | (Φ) a súrlódási memória időkonstansa |
(Φ) átmeneti paraméter | |
t2 | az ébredési erő zérus sebesség mellett |
(Φ) | A jelölt paraméterek súrlódási modell paraméterek, az egyéb változók pedig állapotváltozók. |
Paraméter tartomány | A paraméterek függenek | |
FC | 0.001 0.1FN | a kenőanyag viszkozitásától, kapcsolati geometriától, terheléstől |
Fv | 0 very large | a kenőanyag viszkozitásától, kapcsolati geometriától, terheléstől |
Fs | 0 0.1FN | a határkenéstől, FC |
kt | 1/x(FC+Fs) x1 50 [m] | az anyagtulajdonságoktól, a felület megmunkálásától |
vs | 0.00001 0.1 [m/s] | a kapcsolati geometriától és terheléstől |
L | 1 50 [ms] | a kenőanyag viszkozitásától, kapcsolati geometriától, terheléstől |
0 200 [s] | a határkenéstől |
Súrlódási modell | Becsült/megfigyelt működés |
Viszkózus | Stabilitás minden sebességnél és sebesség irányváltásnál. |
Coulomb | Nincs akadozó csúszás PD szabályozással. Nincsenek határciklusok PD szabályozással. |
Statikus + Coulomb + Viszkózus | Megjósolja az akadozó csúszást bizonyos kezdeti feltételekkel, PD szabályozás esetén. Megjósolja a határciklusokat PID szabályozás használatakor. |
Stribeck | Szükséges, hogy megjósoljuk a kezdeti feltételek, amelyek akadozó csúszáshoz vezetnek. |
Ébredő statikus súrlódás | Szükséges, hogy pontosan megjósoljuk a sebesség és az akadozó csúszás amplitúdójának kapcsolatát. |
Súrlódási memória | Szükséges, hogy pontosan megjósoljuk a merevség és az akadozó csúszás amplitúdója közötti kapcsolatot. |
Előcsúszási elmozdulás | Szükséges, hogy a beragadás alatt pontosan megjósoljuk a kis elmozdulásokat (beleértve a sebesség irányváltásait is). |
Paraméter-azonosítás. A paraméterek, amelyek nemlineáris kapcsolatban vannak a súrlódó erővel, nem azonosíthatóak lineáris eljárással. Kim javasolt egy lehetséges, nem-lineáris azonosítási eljárást a hét-paraméteres modellre, az „Accelerated Evolutionary Programming (AEP)”-t [88] és megadja a leírását, amit alább részletezünk. Az AEP is egy sztohasztikus optimalizácós eljárás, tetszőleges függvény szélsőértékének keresésére. Az egyszerű optimalizációs eljárás a következő: határozza meg az n paraméteres rendezett halmaz értékeit.
(6.23) |
amelyek minimalizálják/maximalizálják a költségfüggvényt f(z). Az AEP egy genetikus algoritmus típusú eljárás, szülő/gyerek típusú kapcsolatot használnak a legpontosabb megoldás eléréséhez. Két változtatható operátort használ. Az egyik, az irányoperátor meghatározza az irányt a megoldás jóságának megfelelően. A másik egy zéró értékű Gauss-i operátor, a hozzáadott zavarásnál használják, így készül a leszármazott. Az AEP szintén használ egy további “kor” változót, hogy növelje a keresés változatosságát, és kiküszöbölje az egyének lokális minimumon való elhelyezkedését. A Gaussi operátor be van építve az irányoperátorba, és a változó „kor”-ba. Nem úgy, mint más generikus eljárások, az AEP csak egy gyereket készít a szülőktől. Az új szülők pedig egy egyenes versenyben választódnak ki a szülők és gyermekei közül. Egy leszármazott akkor kerül kiválasztásra, ha a gyermek megnyeri a szüleivel folytatott versenyt. Az AEP az evolúció irányát és a „kor”t egy vektorban helyezi el, ezzel növeli a konvergencia sebességét a változatosság elvesztése nélkül. Ezáltal az (6.23) kifejezés a következő formát veszi fel
(6.24) |
ahol az i-dik vektor, az evolúciós iránya a j-dik paraméternek, és agei jelöli az élettartamát egy egész típusú i-dik vektorban. A következő két szabályt a szülő zavarására alkalmazzuk, így készülnek a leszármazottak.
1-es szabály
Ha ,
akkor ,
különben ,
(6.25) |
2-es szabály
Ha ,
akkor ,
különben ,
,
(6.26) |
ahol jelöli a j-dik paramétert az i-dik vektorban a Np vektorok között a k-dik generációban, jelöli az evolúciós irányt a . A egy Gauss eloszlású véletlenszerű változó, ami a irányba mutat, és i, i = 1, 2 pozitív konstansok. Ha az 1-es szabály jelzi, hogy az újonnan létrejött gyermek tulajdonságai jobbak, akkor a keresés folytatódik az ígéretes irányba, beállítva az irány értékét, és egy véletlen számot generálva a hozzátartozó pozitív vagy negatív régióban. Egyébként a szülőt tartjuk meg, ekkor a „kor” változót eggyel növeljük. Amikor a 2-es szabály „különben” része érvényesül, a második esetben a Gauss eloszlású véletlen változó eltérése minden lépésnél egyre nagyobb lesz, mert a „kor” is benn van a végtermékben. Ezáltal sokkal valószínűbb, hogy az algoritmus nem ragad be a lokális minimumban, hanem talál egy globálisat.
Az AEP eljárás alkalmazása a következőképpen zajlik:
1. Inicializáció. A kezdeti populáció generálása az Np próbamegoldással, a megadott területen belüli egyenlő eloszlással, a különálló vektorokkal
(6.27) |
ahol és , véletlenszerűen inicializáltak, és az agei értéke 1.
2. Kiértékelés. A szülők kiértékelése a megadott költségfüggvény f(zi) szerint.
3. Mutáció. Minden Np szülő zi, létrehoz egy gyermeket az 1-es és 2-es szabály használatával.
4. Kiértékelés. Az új leszármazottak kiértékelése.
5. Egy az egyben típusú összehasonlítás. Ha az újonnan létrehozott gyermek jobb, mint a szülő, akkor a gyermeket választjuk ki, és elvetjük a szülőt, és fordítva. Az új Np szülők a tulajdonságaik alapján sorbarendezésre kerülnek.
0 tól 0-ig: | t2 t2 + Ts |
0 tól 1-ig: | compute Fs,b |
1 től 0-ig: | Fs,a and t2 0 |
1 től 1-ig: | Nincs működés (2.29) |
6. Végrehajtási ellenőrzés. Egészen addig folytatja a harmadik lépésig, amíg a végrehajtási idő le nem járt, vagy egy elfogadható megoldást nem találunk.
A legjobb út a paraméterazonosításhoz a kísérlet és az AEP párhuzamos futtatása, ugyanazokkal a bemeneti paraméterekkel. A paraméterek akkor tekinthetőek azonosítottnak, ha a valós és a számított értékek közötti eltérés megszűnik, vagy egy előre meghatározott érték alá süllyed. A használt szenzortól függően a bemeneti paraméter lehet elmozdulás vagy sebesség.
A hét-paraméteres modellhez először tudnunk kell a bemeneti v, vagy (dx/dt) és a t2 és Fs,a. állapotváltozókat. Ehhez definiáljuk az új állapotváltozót s-t, ami megmutatja, hogy a rendszer akad vagy csúszik.
| (6.28) |
ahol vcritical a sebesség/pozíció szenzor felbontása, ami a valós rendszerbe van beépítve. Az s, t2 és Fs,a változásaitól függően a következők érvényesek.
Amikor s változik:
ahol Ts a mintavételezési idő.
Jelölje a z vektor az (6.21) egyenlet ismeretlen paramétereit.
(6.29) |
ahol az összes paraméter pozitív. A hiba a berendezés és az identifikációs kimenet között a következő:
, i = 1, 2, …, Ns | (6.30) |
ahol jelöli a becsült értéket, z x(z,ti) a berendezés elmozdulása, x(,ti) az indentifikációs modell elmozdulása a ti, mintavételezési időben és Ns az összes mintaadat. A költségfüggvény négyzetes hibáját is figyelembe véve:
(6.31) |
Akkor a paraméter identifikációs problémát optimalizációs problémaként kezelhetjük:
(6.32) |
A geofizikusok által a kövek határkenésénél végzett kutatások alapján megszületett az állapotváltozós súrlódási modell. [6], [16]. A konstans normál feszültség esetén, az általános forma magában foglal n db állapotváltozót i a következőképpen néz ki:
Ebből az ábrázolásból következik, hogy a sebesség hirtelen változása nem okoz hirtelen változást -ban, de annak deriváltjában már igen. Egy állapotváltozó esetén Ruina javasolja a következő súrlódási törvényt [16]:
(6.35) |
(6.36) |
Ahol a skaláris állapotváltozó, L a karakterisztikus csúszási hossz. A (v0/f0) pár megfelel bármilyen szabadon választott pontnak, az állandósult állapotbeli súrlódás-sebesség görbén. Az állandósult állapotbeli görbét a következő kifejezés adja meg:
| (6.37) |
és az állandósult állapotbeli állapotváltozók összefüggenek az anyagjellemzőkkel.
Korlátok. Sajnos a modellstruktúra önmagában hordozza a korlátot az állapotváltozós modell használatakor. Teljes nyugalomban v/v0 értéke a (6.38) egyenletben zérussá válik, ami végtelen súrlódási erőt ad a logaritmus függvény használata miatt (ln 0 = ). Szimulációkban ez normális esetben problémát okoz az integrátor használatakor. Ezt elkerülendő egy kapcsolót alkalmazunk, ami nulla sebesség esetén is véges súrlódási erőt ad. De ha , ez azt jelenti, hogy a nagyon kis sebességek esetén a logaritmus függvény értéke, és ezzel együtt a súrlódási erő igen gyorsan változik, ez pedig a kiválasztott környezet méretétől függő hibát eredményez, emiatt ezt a modellt nem alkalmazzák alacsony sebességekre, mert nem ad kielégítő eredményt.
Paraméter-azonosítás. Dupont megadja a kísérleteihez használt mérőberendezések részletes leírását [49]. Persze egyéb más rendszert is lehet használni, és mi most nem ismertetjük részleteiben az eredeti elrendezést. Az első lépés az, hogy azonosítsuk az (6.36) és (6.37) paramétereit, majd felrajzoljuk a megadott rendszerre az állandósult állapotbeli sebesség-súrlódás görbét (vagy Stribeck görbét ). A sebesség változása a rendszer változásával is jár. Ezt fel lehet használni arra, hogy A és B értékeit kiszámítsuk. A rendszerválasz a t0 pillanatbeli sebességugrás által adott, ahol a pár (v1, f1) a kezdeti állandósult állapotnak megfelelő, a pár (v2, f2) az ugrásfüggvényre adott válasz után leírja az elért állandósult állapotot, amíg fmax jelöli a maximális súrlódási erőt a tranziens alatt. A paraméter A és B kiszámítható a következőképpen:
Az exponenciális csökkenése a állapotváltozónak, a sebességugrást követően a következő
(6.40) |
A 2.3-as táblázat mutatja az állapotváltozó modell paramétereit, amiket Dupont számított ki. A használt sikosítóanyag a következő volt. Paraffinolaj, maximális Saybolt viszkozitás 158, és a kereskedelemben kapható paszta. A tesztanyag hőkezelt, olajban edzett szerszámacél, 59 HRC keménységgel.
Paraméterek | Száraz | Paraffin olaj | Határkenés |
A 103 | 2.8 0.5 | 0.0Φ | 1.1 0.1 |
B 103 | 9.4 1.1 | 11.1 2.5 | 4.0 0.4 |
L [m] | 64.7 14.3 | 22.4 4.3 | 19.2 1.4 |
The magnitude was less then the noise level of the measurement
.
Néhány modellben a súrlódás nem folytonos függvénye az állandósult állapotbeli sebességnek. Ezekben az esetekben nem folytonos általános függvények integrálása problémákat okozhat, de a beágyazott kapcsolófüggvényekkel ez a probléma még kezelhető. De ehhez még hozzáadódik az, hogy az integrátornak meg kell tudni keresnie a nem folytonos pontokat a megadott intervallumban. Változtatható lépésközű, változtatható rendű (fokszámú) eljárásokra van ehhez szükség, melyek beépített elemek az összes kereskedelmileg elérhető szimulációs szoftverben. Azonban az esetek többségében nekünk fix lépésközű megoldásokat kell használnunk, mert a mintavételezési idő állandó.
A Karnopp [84] modell megoldja ezt problémát, a pseudo sebesség, és a nulla sebesség kis szomszédainak bevezetésével. DV amiben a sebesség zérusra van állítva. A pseudo sebesség, p(t), ahol az eredeti anyag momentumként van feltüntetve, a megszokott módon történő integrálása a következő:
(6.41) |
ahol Fa a rendszerre ható erő, Fm pedig a modellezett súrlódóerő. A rendszer sebességét a (2.43)-nak megfelelően állítják be, ahol M a rendszer tömege.
| (6.42) |
(2.43)
A súrlódási törvény a következő:
| (6.43) |
Ez magában foglalja a Coulomb, a statikus, és a viszkózus típusú erőket (FC, Fs, Fv ), de kiegészíthető egyéb alkalmas surlódás típussal (pl. Stribeck görbe).
Nem úgy, mint a hét-paraméteres modell, a LuGre modell egy integrált, dinamikus súrlódási modell. Néhány forrás így is hivatkozik rá, „integrált dinamikus modell”. A név egy rövidítés, két egyetem, a Lund technológiai egyetem, és az INPG Grenoble egyetem nevéből ered, ami vendégül látta az együttműködő kutatókat. A LuGre modell a kapcsolat rugalmasságán alapul [33].
A z(t) változó a súrlódási állapotot jeleníti meg, és a két csúszó felület kapcsolódó pontjainak átlagos elhajlását jelenti. A pillanatnyi súrlódás Ff a következő:
(6.44) |
ahol 0 leírja a merevséget rugószerű viselkedés esetén, kis elmozdulásokra, és 1 megadja a negatív viszkózus súrlódás kifejezését. Az állapotváltozó kiegészíthető a következőképpen:
(6.45) |
ahol
(6.46) |
Az Fc, Fs és Fv a Coulomb, Stribeck, és statikus súrlódás. Bizonyos speciális esetekre, egy további kiegészítő elem, Fg adódik hozzá a kifejezéshez a gravitáció hatását kifejezendő (azokban az esetekben, ahol vertikális a megmunkálás tengelye), vagy mint erősítő offset. Az állandósult állapot a következő:
(6.47) |
Ennek a modellnek az előnye amellett, hogy mind lineáris, mind polárkoordináták esetén érvényes, az, hogy leírja a jelenséget mind lapos felületekre, mind forgó csapágyelemekre.
Paraméter-azonosítás. Az azonosítási eljárást a [2]-ben leírtak alapján végzik, az általános eljárást követve lineáris dinamikai rendszerek esetére. Megjegyzendő, hogy az eljárás magában foglalja Fg –t az (6.45)-(6.47) egyenleteknek megfelelően. A paraméterek Fs és 0 könnyen leolvashatóak a Dahl görbéről.
A feltételezés magával vonja, hogy Fs = F. Továbbá, ha , akkor és . Az (6.47) egyenlettel ezt összetéve, a következőket kapjuk:
(6.48) |
Euler közelítését használva az idő szerinti deriváltakra, a lineáris regresszió eredménye:
(6.49) |
Az [1] cikk szerzője állítja, hogy az algoritmus érzékeny a pozíció mérési zajára, és javasolja az interferometria használatát az induktív szenzorok helyett, hogy kiiktassuk az eltérést-n.
Az eredeti Dahl modell [40], [20] előrejelzi a súrlódási késést a sebesség irányváltások között, és hiszterézis hurkokra vezet. Azonban nem tartalmazza a Stribeck effektust. Ennek korrigálására Canudas javasolta, hogy transzformálják át a Dahl modellt egy másodrendű lineáris állapot invariáns modellé, amelyik emulálja a Stribeck effektust, a súrlódási erő válaszának túllövésével. Ezzel együtt azonban eltűnt az elsőrendű modell disszipatív jellege is. A Canudas által módosított Dahl modell az első olyan modell, amelybe az állapotváltozók számának növekedése nélkül belekerült a Stribeck jelenség.
A súrlódási erő Ff leírva a következőkkel:
ahol az időállandó arányos az 1/vmint-vel az eredeti Dahl modellhez hasonlóan, z egy állapotváltozó, amit úgy kell értelmezni, mint egy belső súrlódási állapotjelzőt, vs a Stribeck görbe karakterisztikus sebessége, míg 1, 2 és 3 a pozitív konstansok, a Coulomb, Stribeck, valamint a viszkózus súrlódást fejezik ki.
Az állandósult állapotban a súrlódást a következő kifejezés adja:
(6.53) |
Az M2 modellt ugyanaz a kutatócsoport fejlesztette ki, mint a módosított Dahl modellt. Most még nincs ismertebb neve, az eredeti irodalomban is egyszerűen csak M2 modellnek hívják [33]. A modell két paraméterből áll, az Fs csúszósúrlódásból, és az Fd dinamikus súrlódásból. A két állapotot egy dinamikus s súlyozófaktor köti össze, ami a relatív sebességtől függ. Az Ff teljes súrlódás megadható a következő kifejezéssel
(6.54) |
Az s súlyozófaktor az alábbi egyenlet megoldásából kapható:
(6.55) |
ahol s az időállandó, ami a súrlódási időkésést is magában foglalja. Az s = 1 a csúszást jelenti, míg s = 0 a megakadást. Emiatt s úgy is értelmezhető, mint a „csúszás” mértéke [33].
Az úgynevezett Dahl effektus modellezi a csúszósúrlódás viselkedését, egy merev rugó alkalmazásával, a ds.csillapítással együtt. A csúszósúrlódás azonban korlátozott az elszakadási erő miatt, és a telítési függvény is megjelenik a következő formában:
(6.56) |
A telítést leirhatjuk a következő módon:
(6.57) |
ahol
(6.58) |
A változó egy belső változó, ami leírja a relatív elmozdulás kapcsolatát attól a ponttól, ahol az akadozó súrlódás megjelent. A második kifejezés értékét nullázza, ha a csúszás megkezdődik.
(6.59) |
A dinamikus súrlódás Fd a Coulomb és a viszkózus súrlódás kifejezésének kombinációja, 0 és 2.-vel jelölve.
ahol:
(6.62) |
A 6.5 táblázat az összes beépített elem tulajdonságainak összehasonlítását mutatja.
Hét-paraméteres | Állapot-változós | Karnopp | LuGre | Módosított Dahl | M2 | |
Előcsúszási elmozdulás | igen | nem | nem | igen | igen | igen |
Coulomb súrlódás | igen | igen | igen | igen | igen | igen |
Viszkózus súrlódás | igen | igen | igen | igen | igen | igen |
Negatív viszkózus súrlódás | igen | ha A < B | nem | igen | igen | igen |
Ébredő statikus súrlódás | igen | nem | igen | igen | igen | igen |
Dwell Time | igen | nem | nem | igen | igen | igen |
Súrlódási memória | igen | igen | nem | igen | igen | igen |
A 6.6 táblázat leírja az egyes modellek bemeneti/kimeneti paramétereit.
Hét-paraméteres | Állapot-változós | Karnopp | LuGre | Módosított Dahl | M2 | |
Bemeneti paraméter | v | v | F | v | v | v |
Kimeneti paraméter | Ff | Ff | Ff | Ff | Ff | Ff |
Állapot-változós | z(t) | z(t) | s | |||
Modell paraméterek | táblázat | A, B, L, f0, v0 | FC, Fs, Fv, Dv, m | FC, Fs, Fv, vs, 0, 1 | 0, 1, 2, v0, | 0, 1, 2, s, r, v0, ks, ds |
Azonosítás meg-valósítható | igen | igen | nem szükséges | Igen | nem | nem |
2.5.4 Szimulációk bemutatása
Hogy egy teljesebb, áttekintést kapjuk az előzőekben felsorolt modellekről, egy sor szimulációt végeztünk el, hogy megvizsgáljuk a különböző dinamikus modellek viselkedését. A szimulációkat a MATLAB szoftvercsomag segítségével hajtottuk végre, és leginkább az előcsúszási elmozdulást, nulla sebesség átlépést, sebesség irányváltást, és az akadozó csúszást vizsgáltuk. Más szóval az alacsony sebességű zónákra koncentráltunk. Ezért az állapotváltozós modellt most nem vizsgáltuk.
Azért, hogy összehasonlítható eredményeket kapjunk, az összes modellváltozók, és szimulációs paraméterek ugyanarra az értékre lettek beállítva. A 6-4. ábra mutatja az állandósult állapotbeli súrlódási görbét, vagy más néven a Stribeck görbét, amit a szimulációhoz használtunk, kivéve a Karnopp modellt. Itt az FC, Fv és Fs értékeit az állandósult állapotbeli görbe értékeihez hasonlóra állítottuk be.
Egy rúgó által húzott egységnyi tömeg súrlódással, ez volt az akadozó csúszás szimulációjának kiindulási modellje. A rugó szabad vége konstans sebességgel mozgott. Mind a rendszer merevsége, mind a sebesség olyan módon volt megválasztva, hogy akadozó-csúszás keletkezzék. (vrugó = 0.02 m/s, krugó = 0.1 N/m). Ezek az értékek ugyanazok voltak a különböző modellek esetében.
A 6-5.-től 6-10-ig sorszámú ábrák mutatják a szimulációs eredményeket. A felső görbe az erő, az alsó pedig az elmozdulás az idő függvényében.
Mind a hét-paraméteres modell, mind a Karnopp, mind a LuGre modell esetében sima görbét kapunk. A Karnopp modell nem tartalmazza az időkésést, és a rendszer válasza bármilyen változásra azonnali. Ez az oka annak, hogy az erő értéke negatívvá válik a mozgás kezdetekor. Mind a módosított Dahl, mind az M2 modellek meg nem engedhető oszcillációt mutatnak, ami a súrlódási erőre szuperponálódik rá, amikor a tömeg beragad. De meg kell jegyeznünk, hogy az M2 modell esetében az eredeti forrás [33] sima görbét mutat. Valószínűleg ez speciális paraméterezéssel el is érhető.
Az előzővel egyező rendszert állítottunk be a sebesség irányváltásainak szimulációjához. A rugó szabad vége Asin(t) szinuszosan változó sebességel lett rángatva, ahol A = 1 m/s volt. A szimulációval kapott súrlódási erő, sebesség, elmozdulás, és rugóerő időfüggvényeket 6.10-től 6-29-ig sorszámú ábrákon tekinthetjük meg. A vékony szaggatott vonal mutatja a sebességet, kivéve az elmozdulásnál, mert ott a szabad vég felöli elmozdulást ábrázoltuk.
Egy szimulációsorozatot végeztünk, hogy megmutassuk a hiszterézis jelenségét a sebesség függvényében, iránytól független mozgás esetén. A sebességet 0.06 + 0.04sin(t)-re állítottuk be, és két különböző t értékre végeztük el a szimulációt (0.1 és 1 Hz). Az 6-30-től 6-33-ig terjedő sorszámú ábrák mutatják az eredményt. Nagyobb értékek nagyobb hiszterézisgörbét mutatnak. Az átmeneti vonalak az állandósult állapotban nem lettek eltávolítva. A hiszterézis effektust minden esetben megfigyelhető, kivéve a Karnopp modellt. Ezért a görbe még sok ismétlés után is nyitott, habár t = 1 Hz esetén némi konvergenciát mutat. Ez a Karnopp modell nem dissszipatív jellege miatt van így.
A zérus sebességnél javallott, hogy a modellek nem lineáris rugókarakterisztika jelleget mutassanak. Hogy ezt szimuláljuk, csak egy egészen kis erőt - kisebbet mint az elszakadási erő szintje - alkalmaztunk, minden esetben ugyanakkora nagysággal (F = 0.5 N). A fel- és leterhelési ciklusokat a szinusz függvény biztosította a megadott amplitúdóval, egységnyi tömegen. Az eredmény előcsúszási elmozdulás görbéket az 6.34-től 6.37-ig terjedő sorszámú ábrákon ábrázoltuk. Jegyezzük meg, hogy a Karnopp súrlódási modell nem tartalmazza ezt a tulajdonságot, nem úgy, mint a többi modell. A hét-paraméteres modell nem mutat hiszterézis jelenséget. Ennek az az oka, hogy a hét-paraméteres modell lineáris rugóelemet alkalmaz a Dahl effektus modellezésére. Érdekes lehet megjegyezni, hogy az M2 modell már az első ciklus után eléri az állandosult állapotát.
Az 6.38-től 6.42-ig terjedő sorszámú ábrák mutatják a különböző rendszerek átmeneti függvényeit, a válasz az
egység-sebességugrás bemenetre készült, kivéve a Karnopp modell esetében, ahol az ugrásfüggvény egységnyi erő volt.
Hat dinamikus súrlódási modellt mutattunk be részleteiben, ötöt vizsgáltunk meg különböző szimulációkban. Tulajdonságaik az alábbi táblázatban láthatóak. A Karnopp modellt eredetileg valós idejű használatra tervezték. A nulla körüli kis környezetben használva könnyen megoldható az integrálás véges mintavételezési ideje. Mindazonáltal ez a modell az 1980-as években lett kifejlesztve a mai fejlettebb szoftver-csomagok és a javított mintavételezési idő lehetővé teszi a bonyolultabb modellek valós-idejű használatát. A Karnopp modell szintén nem tartalmazza a disszipatív modellezést sem.
A hét-paraméteres modell a Karnopp modellel együtt korai, de sikeres próbálkozásai voltak a súrlódás modellezésének. Bár a hét-paraméteres modell tartalmazza az összes kívánt tulajdonságot a súrlódás pontos modellezéséhez, de annyira összetett, hogy nagyon nehéz ezt a modellt felhasználva működő szabályozási rendszert készíteni. Idáig a hét-paraméteres modell paramétereinek a kiszámítása is kihívás volt, talán ma már léteznek olyan új azonosító eljárások, mint például az AEP [88], amik remélhetőleg sikeresen használhatóak. A LuGre modell talán a legígéretesebb modell, ami nem csak tapasztalatilag, hanem elméletileg is alá van támasztva. Emellett sima súrlódási görbét ad, nem úgy, mint bizonyos esetekben az M2 modell, és sok esetben a módosított Dahl modell. Az állapottér modell a tudomány két területének összefogásából született: a geofizika, valamint a gépészet és a gépelemek. Végül nem maradt más kérdés, csak annak eldöntése, hogy melyik modellt kell használni. Alapjában ez a környezettől, a megengedhető hibától, a hibatűréstől, és a számítási teljesítményektől függ. A modellek számítási igény szerinti sorrendje a következő: Karnopp, módosított Dahl, állapottér modell, LuGre, hét-paraméteres, M2 modell.
Hét-paraméteres | Állapot-változós | Karnopp | LuGre | Módosított Dahl | M2 | |
Zero sebességen való átmenet | igen | nem | igen | igen | igen | igen |
Nagyon lassú sebességek | igen | nem | igen | igen | igen | igen |
Lassú sebességek | igen | igen | igen | igen | igen | igen |
Gyors sebességek | igen | igen | igen | igen | igen | igen |
Akadozó csúszás | igen | nem | igen | igen | igen | igen |
Disszipáció | igen | nem | igen | igen | igen |
Először a mozgásszabályozás területén a kilencvenes években leggyakrabban alkalmazott „inverz modellen alapuló zavaró-jel becslés” elvét ismertetjük [10], [11], [12], [13], [14], [15], [16] kiemelve a gyakorlati alkalmazáskor felmerülő legnagyobb problémákat. Elsősorban ezek a problémák motiválták egy alapvetően módszer keresését.
A 6-43. ábra egy nagyon egyszerű zavaró-jel becslő (disturbance observer) elvi működését mutatja be. 6-43. ábra/a felső része egy J tehetetlenségű motor egyszerűsített vázlata, míg az alsó rész a zavaró-jel becslő, amely a motor modelljének inverze. J és Jn a motor valós és névleges tehetetlenségi nyomatékai, z a bemeneten jelentkező zavaró-jel. Látható, hogy a becsült zavaró-jel, (az ábrán jelölve) nem csupán a valós zavaró-jel értékét tartalmazza, hanem a J paraméter eltéréséről is hordoz információt. A z zavaró-jel hatását a becsült zavaró-jel visszacsatolásával kompenzálhatjuk (ld. 6-43. ábra/b).
6-43. ábra A zavaró-jel becslők elvi vázlata
Egyszerű számítások után adódik, hogy az új, v bemenettől az y kimenő jelig az átviteli függvény 1/Jns, a zavaró-jeltől pedig nem függ az y. A gyakorlatban egy tiszta differenciáló tag komoly gondot okozhat, hiszen kiemeli a zajokat. Ennek kiküszöbölésére kerül a visszacsatoló ágba a Q aluláteresztő szűrő, ahogy azt a 6-43. ábra/c is mutatja. Q vágási frekvenciáját jóval nagyobbra kell választani, mint a szakasz meghatározó időállandójának reciproka (hogy a hasznos jelet nehogy kiszűrjük), ugyanakkor elegendően kicsire kell választani ahhoz, hogy a zajokat kellően elnyomja. Természetesen Q alul áteresztő szűrő összevonható a szakasz inverzével (ld. 6-43. ábra/d), a kettőt együtt célszerű realizálni. A zavaró-jel átvitelének értéke így , amely megfelelő tervezéssel elegendően kicsi lehet az alacsonyabb frekvenciás tartományban.
Ez a módszer általánosítható, de ekkor is megmarad az a probléma, hogy a legtöbb szabályozott szakasz integráló jellegű, ezért az inverze deriváló jellegű lesz. Az esetleges időkésleltetések további problémát jelentenek. A kilencvenes években cikkek sokasága foglalkozott azzal, hogy miként lehet egy olyan Q szűrőt megtervezni, amely széles tartományban gondoskodik az optimális működésről. Összefoglalásként megállapíthatjuk, hogy ennél a módszernél az a legnagyobb gond, hogy az inverz modellre alapul.
A továbbiakban ismét egy nagyon egyszerű estet vizsgálunk, ahol a szabályozott szakasz egy egyszerű arányos tag egy ismeretlen, de korlátos paraméter bizonytalansággal . Megjegyezzük, hogy ennek hatását tekintjük belső zavaró-jelnek.
Az alapelv nagyon egyszerű, az ideális és a perturbált szakasz kimenő jeleinek különbségét egy kellően nagy erősítéssel vissza csatoljuk a perturbált szakaszhoz. Ha K kellően nagy, akkor a két jel különbségnek kicsinek kell lennie, hogy visszacsatolt jel ne legyen túlzottan nagy, ez viszont azt jelenti, hogy a visszacsatolt jel információt tartalmaz a paraméter bizonytalanságról.
A 6-44. ábra/b-n az átalakított szabályozókör látható, melynek alapján már könnyen felírható a teljes átviteli függvény a bemenettől a kimenetig. Vizsgáljuk meg azt az esetet, amikor a K arányos tag értéke a végtelenbe tart.
6-44. ábra/b-nak megfelelően a bemenet és a kimenet között az erősítés, a l’Hospital szabály alkalmazásával:
(6.66) |
A 6-43. ábra-hoz hasonlóan adjunk z(t) korlátos zajt a perturbált szakasz bementére (lásd. 6-45. ábra). Az z(t) zaj hatása a kimenetre:
(6.67) |
Ez úgy értelmezhető, hogy a visszacsatolt jel információt hordoz mind a paraméter bizonytalanságról, mind a korlátos bemeneti zajról.
A módszer általánosítható akár több bemenetű, több kimenetű rendszerekre is, mint az a következő fejezetben láthatni fogjuk. A tervezés szempontjából az egyik legfontosabb kérdés, hogy mekkorára kell választani K értékét.
Reguláris állapotegyenlet alakjában adott egy perturbált LTI rendszer (6.68). Tegyük fel, hogy (6.68) kielégíti az ún. Drazenovic feltételt, más szavakkal csak azok az állapotváltozók perturbátak, amelyekre közvetlenül hat az u beavatkozó jel.
, | (6.68) |
ahol és jelölik a rendszer mátrixokat, és a megfelelő korlátos paraméter-bizonytalanság, továbbá z(t) egy ismeretlen, de ugyancsak korlátos zavaró-jel, korlátos elsőrendű időbeni deriválttal. A ¯ jel a névleges, illetve más megközelítésben az előírt ideális értékeket jelöli. Az állapotváltozókat két csoportra osztjuk, x1-re, amelyre az u beavatkozó jel nem hat közvetlenül és x2-re, amelyre az u beavatkozó jel közvetlenül hat. Jelöljük a x2 perturbált állapotváltozók becsült értékét -vel, és tervezzünk egy részleges, nem folytonos megfigyelőt a következőképpen:
(6.69) |
A megfigyelőt elegendőt a perurbált állapotváltozóra megtervezni, mert ha megegyezik -vel, akkor ebből következik, hogy is megegyezik -gyel. A tag szerepe a (6.69) részleges megfigyelőben az, hogy képviselje, illetve elnyomja a paraméter-bizonytalanság és a zavaró-jel hatását. Egy szokásos Luenberger megfigyelő esetén
(6.70) |
Ismeretes, hogy L tervezése visszavezethető bármely állapot-visszacsatolás módszerre, általánosítva akár egy nem folytonos állapot visszacsatolásra is. Az ötlet az, hogy tervezünk egy nem folytonos jelet a (6.69) részleges megfigyelőhöz a csúszómód szabályozás elméletére alapozva. Továbbiakban a 2.3 pontban leírt lépéseket követve tervezzük meg a csúszómódban működő megfigyelőt.
A csúszómód szempontjából válasszuk állapotváltozónak az eredeti (6.68) rendszerben perturbált tényleges és megfigyelt állapotváltozóit.
(6.71) |
Ennek megfelelően a differenciálegyetrendszer a következő alakú lesz
(6.72) |
A célunk az, hogy legyen
. | (6.73) |
Az m elemű vektor meghatározásához m feltételre, más szavakkal m darab a Hiba! A hivatkozási forrás nem található. hasonló skalár változóra, van szükség, amelyeket egy vektorba rendezhetünk. (6.73)-nak megfelelően legyen az m darab skalár változó a következő alakú
, | (6.74) |
ahol egységmátrix. A 2.5 pontban láttuk, hogy több bemenetű több kimenetű rendszerek esetén alapvetően kétféle szemléletet követve juthatunk el a csúszómódhoz. Itt kövessük a lokális szemléletet, amikor a vektor minden elemére a többitől független alkalmazunk egy relés megfigyelőtörvényt.
ahol (i=1,2...m), | (6.75) |
ahol i index az adott vektor i. elemét jelöli. A megfigyelőtörvény mellett szükségünk van egy szabályozási törvényre is. (6.68) második sorát összevetve (6.69)-tel észre vehetjük, hogy csúszómódban, amikor (6.73) teljesül, akkor információt tartalmaz a paraméter bizonytalanságról és külső zavaró-jelről, és ezt az információt ezek kompenzálására is felhasználhatjuk. Legyen az ideális rendszer számára előírt beavatkozó jel és válasszuk a következő szabályozási törvényt:
. | (6.76) |
A következőkben azt kell belátnunk, hogy a (6.75) megfigyelőtörvény tényleg elvezet-e a csúszómód kialakulásához, továbbá tényleg tartalmaz-e információt a paraméter bizonytalanságról és külső zavaró-jelről. (6.72) és (6.76) alapján
. | (6.77) |
(6.77)-ben nem folytonos. Visszatérve a 2.3-ban leírtakhoz, a csúszófelület mentén az ekvivalens vektor Hiba! A hivatkozási forrás nem található. alapján számítható ki.
. | (6.78) |
Látható, hogy Hiba! A hivatkozási forrás nem található., illetve (6.78) úgy elégíthető ki, ha a nemfolytonos megfigyelőjel egy olyan ekvivalens megfigyelőjellel helyettesítjük, amelyet a következőképp kapunk meg
. | (6.79) |
(6.79)-et behelyettesítve (6.77)-be és figyelembe véve, hogy
, | (6.80) |
a következőt kapjuk
. | (6.81) |
(6.81) úgy értelmezhető, hogy a (6.68) differenciálegyenlettel leírt eredeti rendszerre egy új, részlegesen megváltoztatott és zavaró-jeltől mentes dinamikát kényszerítünk a ekvivalens megfigyelőjel segítségével. Ekkor az eredeti állapotváltozókat a következő differenciálegyenlet írja le:
. | (6.82) |
Mint később látni fogjuk bizonyos esetekben nem jelenet megkötést, hogy csak , és értéke választható meg tetszőlegesen.
A következő kérdés, hogy ekvivalens megfigyelőjel miként állítható elő, és meg kell vizsgálnunk, hogy teljesül-e a csúszómód kialakulásának feltétele. Hiba! A hivatkozási forrás nem található. feltételt alkalmazásához szükség van a -re.
(6.83) |
Tegyük fel, hogy a (6.75) megfigyelő törvényt alkalmazzuk.
(6.84) |
Hiba! A hivatkozási forrás nem található. feltétel teljesüléséhez az kell, hogy (6.84) minden sora ellenkező előjelű legyen, mint adott sora. (6.75)-ból következik, hogy minden sora megegyezik megfelelő sorainak előjelével. (6.84)-ben negatív előjellel szerepel, ezért Hiba! A hivatkozási forrás nem található. feltétel teljesítésének elégséges feltétele (6.84) és (6.79) alapján:
(6.85) |
Ez könnyen értelmezhető. A ekvivalens megfigyelőjel a végtelenül nagy frekvenciával kapcsolgatott középértéke. Ez egyben egy módszert is kínál arra vonatkozóan, hogy ekvivalens megfigyelőjel miként állítható elő. Ennek megfelelően ekvivalens megfigyelőjel előállítható átlagolásával pl. egy aluláteresztő szűrő (AÁSZ) segítségével.
Összegezésül tekintsük a 6-46. ábra-t. A fentiekben beláttuk, hogy egy olyan rendszerre, amely (6.68) alakú differenciálegyenlettel írható le, egy új, részlegesen megváltoztatott valamint zavaró-jeltől mentes dinamikát kényszeríthetünk (ld. (6.81)) egy végtelenül nagy frekvenciával kapcsolgatott (6.75) típusú relés megfigyelőjel segítségével, ha a (6.85) feltétel teljesül.
Napjainkban a szabályozók többségét digitálisan valósítják meg. Két egymásnak ellentmondó elvárásunk van. Egyfelől (6.85) értelmében abszolút értékének kellően nagynak kell lennie, másfelől ha abszolút értéke nagy, akkor két mintavétel között a beavatkozás integrált hatása is nagy. Bekövetkezhet az, hogy minden mintavétel után előjelet vált, így a közép értéke nulla, annak ellenére, hogy a kompenzálandó jel nem nulla. Erre mutat példát a 6-47. ábra.Tételezzük fel, hogy a Tk mintavételi időpontok egyenletes eloszlásúak, látható, hogy az s alternál a nulla érték körül, annak ellenére, hogy a középértéke nem nulla. Ilyen esetben is alternál, ha a (6.75)-at alkalmazzuk.
Mindenképp a (6.75) megfigyelő törvényen kell javítani. Az egyik lehetséges megoldás, ha abból indulunk ki, hogy a ekvivalens megfigyelőjel csak lassan változik. Ha feltételezzük, hogy ismerjük értékét egy k. időpillanatban, akkor a következő k+1. mintavételezési időpillanatban csak a változást kell megbecsülni, mintavételezési időpont sorszámát felső indexben jelöljük.
(6.86) |
Ebben az esetben abszolút értéke jelentősen lecsökkenthető. jelet továbbra is szűréssel állítjuk elő. Feltételezve, hogy folytonos és deriválható, abszolút értékét (6.85) helyett két mintavételi pont közötti maximális változása korlátozza
(6.87) |
ahol a két mintavétel között eltelt idő. A kísérleti berendezésünk tervezésénél (6.86)-et és (6.87)-öt alkalmaztuk.
A telemanipulációs alkalmazásoknál egy kicsit más szabályozási törvényt követtünk.
A csúszómód szabályozóknál a csattogás elkerülésének egyik módja a Ljapunov stabilitási kritériumon alapszik. Legyen egy pozitív definit Ljapunov függvény jelölt, amelyet a következő mádon választunk:
(6.88) |
A megfigyelő visszacsatolását úgy kell megválasztani, hogy Ljapunov függvény deriváltja kielégítse a következő feltételt:
(6.89) |
A fenti feltétel kielégíthető, ha sikerül egy olyan pozitív definit mátrixot találni, amelyre igaz a következő:
(6.90) |
Ekkor
(6.91) |
(6.72), (6.74) és (6.76) egyenletnek megfelelően:
(6.92) |
(6.93) |
A (6.93) megfigyelő törvény első tagja gondoskodik a csúszófelület csattogás mentes eléréséről, vagyis biztosítja a rendszer aszimptotikus stabilitását. De ez a tag nullává válik, amint a rendszer eléri a csúszófelületet. A (6.93) megfigyelési törvényben γeq tag nem ismert, ezt becsülnünk kell. Abból indulhatunk ki, hogy γeq csak lassan változik γeq értékét a k. mintavételi pontban γeq előző értékéből számíthatjuk.
(6.94) |
(6.94)-at behelyettesítve (6.93) diszkrét idejű alakjába kapjuk a következő diszkrétidejű szabályozási törvényt.
, | (6.95) |
ahol és .
Tekintsük a 3.4 pontban bevezetett és az előző fejezetben is vizsgált szervorendszert. Látható, hogy kielégíti az ún. Drazenovic feltételt
, | (6.96) |
ahol
(6.97) |
Továbbá a súrlódás nem lineáris összetevőit képviseli. A kompenzáció célja az, hogy a rendszerre egy és paraméterű referencia modell dinamikáját kényszerítsünk. A megfigyelő egyenlete
, | (6.98) |
A csúszómód szempontjából válasszuk állapotváltozónak a következőt.
(6.99) |
Legyen a csúszófelület
(6.100) |
Legyen a rendszer bemenő jele
(6.101) |
ahol az ideális rendszer bemenőjele. Alkalmazzunk egy relés megfigyelőtörvényt.
ahol | (6.102) |
Ennek megfelelően
Az s() vektorfüggvénynek az vektortérre vonatkozó irány menti deriváltja az S felület két oldalán, ahol a a csúszómódra vonatkozó állapotváltozókat jelöli.
Ellenőriznünk kell a csúszómód kialakulásának feltételét
(6.107) |
(6.105), (6.106) és (6.107) összevetéséből következik, hogy a csúszómód kialakulásának feltétele
(6.108) |
Ha (6.108) teljesül, akkor a S felület pontjaiban a Hiba! A hivatkozási forrás nem található. definíció értelmében a trajektória változását leíró ekvivalens vektor a Hiba! A hivatkozási forrás nem található.-hoz hasonlóan a következő alakú
(6.109) |
Hiba! A hivatkozási forrás nem található., (6.105) és (6.106) alapján
(6.110) |
(6.110)-at (6.109)-be helyettesítve belátható, hogy a (6.86) rendszer dinamikai tulajdonságai megváltoztathatók a (6.101) szabályozási és (6.102) megfigyelő törvény segítségével a (6.108) feltétel teljesülése mellett
(6.111) |
A szabályozó hatásvázlatát a 6-48. ábra-n foglaltuk össze. Az ábrán a Megfigyelő nevű doboz egyben referencia modellnek is felfogható.
Ismét a pozíciószabályozás a cél. A zavarkompenzáció feladata az, hogy a nem lineáris súrlódást kompenzálva egy általunk meghatározott ideális dinamika követésére kényszerítse a tényleges rendszerünket. A kompenzálás képességeinek bemutatása érdekében egy olyan pozíciószabályozót választottunk, amely esetén kompenzáció nélkül az ideáli és a valós rendszer válasza szembetűnően eltér. Tekintsük a 6-49. ábra-t. A választásunk a PD szabályozóra esett, amely elvileg pozíciószabályozásnál súrlódás mentes esetben tudná kompenzálni az állandósult hibát, mivel ideális esetben a motoron belül van egy integráló hatás. Az arányos tagot és a referencia jelet is szándékosan nagyon kicsire választottuk P=15. (A referencia jel nagyságának is csak nem lineáris rendszereknél van jelentősége.) A PD szabályozó esetén, ahogy a motorra jutó feszültség a kritikus 1.2 V érték alá csökken, a motor beragad. A t=5sec időpillanatban szoftveresen egy terhelésrádobást hajtottunk végre, olyan módon, hogy a motor számára kiadott feszültség jelből levontunk 7 V-ot. A terhelés rádobás után a valós rendszer válasza még előjelben is különbözik az ideális rendszer válaszától. A 6-49. ábra-ból egyértelműen kitűnik, hogy kompenzáció nélkül ez a PD szabályozó nem tud megbirkózni a feladattal. Hangsúlyozzuk, hogy egy lényegesen nagyobb arányos taggal, különösen nagyobb referencia jelnél sokat lehetne javítani a szabályozás minőségén, de az a célunk, hogy a javasolt kompenzáció hatékonyságát mutassuk be. Ha ugyan ezt a kifejezetten rosszul megválasztott és kifejezetten rosszul behangolt PD szabályozót kiegészítjük a javasolt kompenzációval, akkor egy teljesen elfogadható működést érhetünk el. A terhelés rádobás előtti állandósult hiba 40%-ról lecsökkent 0.15 %-ra. A terhelés rádobás után ennél is nagyobb arányú a javulás, ekkor az állandósult hiba 205%-ról 0.4%-ra csökken. Összehasonlításul, megvizsgáltuk, hogy a (P és D értékeket változatlanul hagyva) milyen javulás érhető el egy olyan integráló tag hozzáadásával, amely a motoron kívül van. Lineáris rendszer és konstans alapjel esetén az integráló típusú szabályozások állandósult hibája nulla, de a súrlódás miatt a rendszerünk nem tekinthető lineárisnak; jól látható az ún. stick-slip jelenség. Terhelés rádobás előtt a váltakozó előjelű hiba 3.7% volt terhelés rádobás után 4.6%. A 6-50. ábra a kompenzáló jel időfüggvényét mutatja, az ábrán szaggatott vonallal jelöltük a külső terheléshez szükséges kompenzációt. Jól látható, hogy a terhelés rádobás előtt kialakult egy konstans kompenzáló jel, ez az a mozgás közben jelentkező Coulomb súrlódást kompenzálja, és ezért nem ragad be a rendszer a referencia jel elérése előtt, mint a kompenzáció nélküli PD szabályozásnál. A 6-49. ábra és 6-50. ábra összevetéséből az is látszik, hogy a kompenzáló jel gyorsabb változásokra képes, mint a pozíciójel, ez a használhatóság egyik fontos élőkövetelménye.
Az Érzékelő Kesztyű a Tokió Egyetemen készült, és képes lefedni az emberi kéz szabadsági fokait csuklótól lefelé. Minden ujjhoz 4 szabadsági fok tartozik, amivel igen bonyolult és precíz mozgásokat is lehet a távoli környezet felé közvetíteni. Az érzékelő kesztyű fotója a 6-51. ábra-n látható. Ez a kép csak azokat a részeket mutatja, amelyek közvetlenül az emberi kézhez kapcsolódnak. Az izületeket állandó mágnessel gerjesztett egyenáramú motorok mozgatják. A motorokat nem szereltük fel a kesztyűre, mivel jelentősen megnövelte volna a kesztyű tömegét, és ez fárasztó lenne az operátor számára. A motorokat egy külön állványon kaptak helyet. A motorok Bowdenen keresztül hajtják az izületeket. A kesztyűn erőmérő cellákat is elhelyeztünk, hogy közvetlenül mérni tudjuk az operátor által kifejtett erőt.
A 6-52. ábra-n látható egy ujj mechanikai kialakítása. Az ábra az egy ujjra (finger) felszerelt egységet mutatja a két véghelyzetben. A véghelyzetek meghatározásánál ideális esetet feltételeztünk: minden ujjperc maximálisan 90 fokos elfordulásra képes. Minden ujjpercet egy csuklós mechanizmus fed le
Az operátor szemszögéből az Érzékelő Kesztyű mozgatásához szükséges mindenfajta erő (beleértve a súrlódás legyőzéséhez és a mechanika mozgatásához, gyorsításához felhasznált erők) zavarásnak tekinthető. Nyilvánvaló, hogy az Érzékelő Kesztyű teljes dinamikáját csak végtelenül nagy teljesítménnyel lehetne kikompenzálni, ezért szükségszerű, hogy az operátor valamilyen minimális erőt érzékeljen az Érzékelő Kesztyű felöl, annak mozgatása érdekében, de lehetőség szerint ennek az erőnek olyan csekélynek kell lennie, amit az operátor már gyakorlatilag nem érzékel. A másik megközelítés az, hogy az érzékelő kesztyű számára előírunk valamilyen mesterséges dinamikát, csekély súrlódással. Például olyan dinamikát programozunk az operátornak, hogy azt az érzetet keltsük, mintha áramló folyadékban dolgozna. Az Érzékelő Kesztyű számára egy olyan modell követését kell előírni, amely egy megfelelően kis értékű erővel mozgatható és a szabályozó kör referencia jele a távoli környezetből közvetített nyomaték jel. Először japán hallgatók egyszerű PID szabályozást próbáltak ki, de nem nyújtott kielégítő eredményt. Egyik látogatásom során javasoltam, hogy próbálják ki, a tézisben szereplő csúszómód alapú modell referenciás szabályozást. A 6-53. ábra-n egy izületre vonatkozó szabályozás hatásvázlata látható. Az ábrán a Megfigyelő nevű doboz egyben referencia modellnek is felfogható. A csúszómód szabályozó célja, hogy a referencia modell követésére kényszerítse a rendszert. Ez a referencia modell független attól, hogy milyen egyéb szabályozási kör van körülötte. A nyomatékszabályozó PID típusú szabályozási kör, már csak a referencia modellt látja, mint szabályozott szakaszt. Ha a referencia modell lineáris, akkor a nyomaték szabályozás szamszőgéből egy egyszerű lineáris szabályozásról beszélhetünk.
A referencia modell behangolását egyetlen izület pozíció szabályozása segítségével végezzük el a kísérletben leírt pozíciószabályozáshoz hasonlóan. Első lépésként a kompenzáló eljárást kellett behangolni. Kompenzáció szempontjából nincs jelentősége, hogy az operátor milyen feladatot hajt végre, ezért a behangolásnál az operátort egy pozíciószabályozó hurok helyettesítette.
Szabad mozgáskor az a feladat, hogy az operátor minél kevesebbet érezzen a kesztyű dinamikájából, vagyis hogy az előre definiált szabad mozgás esetében érvényes virtuális impedanciát érezze. A nyomaték referencia jel nulla. A 6-54. ábra-n a szabad mozgás mérési eredményei láthatóak.
A legfelső sorban a szögelfordulás (angle) látható fok (deg) egységben. A mérést úgy végeztük, hogy a mutatóujj és a tenyér csatlakozásánál található csukló, tenyérre merőleges elmozdulását mértük vízszintes és derékszög között. A második sorban a mechanikában elhelyezett nyomaték mérő cella által mért nyomaték (torque) van. A harmadik sorban a motor bemenetére kapcsolt feszültséget (voltage) lehet látni, Volt [V] egységben. A bal oldali oszlop a tisztán PID szabályozással működik, zavarkompenzáció nélkül, míg a jobb oszlopban PID szabályozás van zavarkompenzációval. Ezért a jobb oszlopban az utolsó ábra a becsült zavaró-jelet mutatja.
Látható, hogy a referencia modell alkalmazása esetében a nyomaték jellege egyenletes és csak a nulla egy környezetében mozog. Egy nyomaték csúcs látható akkor, mikor az operátor az ujját az alsó véghelyzetből a felső alaphelyzetbe viszi vissza. Csak PID típusú szabályozás esetén egy állandó nyomaték hiba van. Ez azért van, mert a PID szabályozók csak viszonylag szűk tartományban képesek helyesen kompenzálni. Amikor az operátor ezen tartományon kívül dolgozik, akkor a szabályozás már nem képes megfelelően ellátni a feladatát.
A probléma teljesen hasonló volt mint az érzékelő kesztyűnél. A japán hallgatók nem tudtak megbirkózni a 6-55. ábra-n látható erő visszacsatolásos mikromanipulátor mestereszközének súrlódás kompenzációjával. A probléma elsősorban a lineáris mozgásoknál jelentkezett, így csak ezzel foglalkoztunk. Egy rugós erőmérővel megmérve a mester kar mozgatásához kompenzáció nélkül akár 30 N erőre is szükség volt, ez semmiképp sem megfelelő precíziós mozgatási feladatok elvégzésére.
Referencia modellnek a következőt választottuk
(6.112) |
Figyelem, itt s a Laplas operátort jelöli, a referencia modell sebessége a referencia modellre ható erő. Ez a modell azt jelenti, hogy 0.1N erővel meglehetősen nagy, v=2.5 m/s sebesség érhető el, szemben azzal, hogy kompenzáció nélkül 10 N erővel meg sem tudjuk mozdítani a mester kart. Ebben az esetben mód nyílt arra is, hogy a csúszómód alapú modell referenciás szabályozást összevessük egy klasszikus modell referenciás adaptív szabályozással, ahol következő szabályozási törvényt alkalmaztuk
(6.113) |
ahol mesterkarra ható erő, p modell bemenőjelének erősítési tényezője és q sebesség jel visszacsatolásának erősítési tényezője. A két adaptációs törvény
| (6.114) |
Ahol és az ún. tanulási paraméter. A klasszikus modell referenciás adaptív szabályozás hatásvázlata a 6-56. ábra-n látható.
A modell követés behangolásához ismét a pozíciószabályozást használtuk a mérési eredményeket a 6-57. ábra és 6-58. ábra-n foglaltuk össze. Az X tengely mentén lehetett a legkönnyebben mozgatni a mesterkart, és az Y tengely mentén a legnehezebben. Az eredményeket táblázatosan is összefoglaltuk. Itt csak a japán hallgatók méréseire tudunk hagyatkozni, állításuk szerint a legjobban behangolt klasszikus modellreferenciás adaptív szabályozásnál a tézisben javasolt csúszómód alapú modell referenciás szabályozás jobb eredményt ad. Ha esetleg ez az állítás nem lenne igaz, akkor az mindenképp elmondható, hogy a tézisben javasolt módszer egyszerűbben megvalósítható és egyszerűbben behangolható.
Mérési eredmények táblázatos összehasonlítása
Szabályozó \ tengely | X | Y | Z |
Sszabályozás nélkül | 10 [N] | 32 [N] | 14 [N] |
Klasszikus modell referenciás adaptív szabályozás | 0.05 [N] | 0.07 [N] | 0.05 [N] |
Csúszómód alapú modell referenciás szabályozás | 0.001 [N] | 0.002 [N] | 0.005 [N] |
A fő cél megtanítani egy kezelő közlekedési viselkedését (az akadály elkerülés módját) egy távirányítású mobil robotnak. A robot követni tudja a megtanult közlekedési stílust addig, amíg a parancs késik az internetes kommunikáció késleltetéséből adódóan. Először az alapvető közlekedési stílusok, majd a modellezés és a matematikai leírások tárgyalására kerül sor. Végül egy szimulációs eredményt mutatunk be.
A közlekedési stílus lényege az akadályoknak megfelelő mozgási irány meghatározása [26]. Képzeljünk el két szélsőséges stílust. Ha egy illető veszélyes anyagot visz, célja az akadályoktól “a lehető legnagyobb távolság” tartása (659. ábra/a). Észrevétlennek maradni egy bűnöző keresése közben ellenkező magatartáshoz vezet, azaz “az akadályokhoz a lehető legközelebb” kell maradni (659. ábra/b). Ezek egyszerű kombinációjával leírható egy közlekedési rendszer alapszabálya: “közel maradni a job vagy bal oldalhoz”.
A közlekedési viselkedésmódok leírásának egyik legnépszerűbb módszere a potenciális tér alapú (potential field based, PFB) modell [27]. A robot érzékeli a pásztázott területen elhelyezkető tárgyakat (660. ábra). A pásztázott terület n pásztázott vonalra van osztva, amelyek (vektorok, ahol z=1...n) irányokba mutatnak. A potenciális tér alapú modell alapgondolata, hogy taszítsa a robotot az akadályoktól (vagy vonzza az akadályokhoz). Az objektumok és a célpont képzeletbeli erőket működtet a robotra. Az útvonalat a taszító erők összege határozza meg. A taszító erők nagysága, F, különböző irányokban a potenciális mezővel írhatók le (661. ábra), amelyek általában fordítottan arányosak a robot és az akadályok közti távolsággal, de bármilyen nemlineáris függvénnyel leírhatók. Ez a potenciális mező információt tartalmaz a közlekedési viselkedéről (akadály elkerülési módról). Számos alkalmazás esetén ugyanazt a képletet használják minden irányban, ami szimmetrikus potenciális teret eredményez (662. ábra/a), ahol “a lehető legnagyobb távolság” tartása valósul meg. A “közel a bal oldalhoz” stílus esetén (662. ábra/b), a taszító erőnek nagyobbnak kell lennie a mozgó objektum jobb oldalán, mint bal oldalon. Vonzó erő alkalmazható a bal oldalon az akadályhoz való közeledés érdekében, ha az objektum távol van tőle.
Az előnyök ellenére a potenciális tér alapú modell alkalmazhatósága behatárolt. Például ha a cél egy akadály mögött helyezkedik el, a robot beragad egy pozícióba, mert a cél vonzza, az akadály pedig taszítja. (663. ábra). A PFB modell nem alkalmas olyan irányító vektor létrehozására, ami szükséges az ilyen jellegű akadály kikerüléséhez.
a) ”A lehető legnagyobb távolság” módhoz tartozó potenciális tér | b) “Az akadályokhoz a lehető legközelebb”módhoz tartozó potenciális tér |
A PFB modell kiterjeszthető vektor tér modellé (Vector field based, VFB) [26]. A VFB modell alkalmas arra, hogy a pásztázott vonalon mért távolság minden értékéhez tetszőleges irányok legyenek definiálva (664. ábra). Ezért ez a modell képes olyan kimeneti vektorokat generálni, amelyek párhuzamosak egy, a vonal mellett lévő hosszú fallal. A különbség megértéséhez feltételezzük, hogy egy robot észlel adott irányban egy akadályt. A PFB modell esetében csak egy taszító/vonzó erő generálódik ebben az irányban. VFB modell esetén a taszító/vonzó erő bármely más irányban létrejöhet. Ezért a robot az akadály körül el tud haladni, ha a cél az mögött van.
Szimuláció eredmény
A számítás összetettségének csökkentése érdekében Ruspini-típusú felosztásban definiált egyszerűsített háromszög alakú fuzzy készleteket használnak. Minden bemeneti iránynál 7 készlet van, amely magába foglalja a nyers approximációt, azonban a kezelő és a “tanuló” robot vezetési jellegét tekintve nincs jelentős különbség. Néhány robotot kezelő irányít különböző, már említett közlekedési módokon. A betanítás eredményeként a “tanuló” robotok potenciális tere a vezetési jellegnek megfelelően aszimmetrikus annak ellenére, hogy előzőleg szimmetrikus volt. Az eredmények közül három szélsőséges esetet mutatunk be (6-65. ábra). A manuális vezérlés alapvető vezetési módjai a következők voltak: 1) maradj bal oldalon. 2) maradj jobb oldalon. 3) tarts a lehető legnagyobb távolságot. A képen (6-65. ábra) a három “tanuló” robot útvonala látható új akadályok közt. Azt a következtetést vontuk le, hogy a robot képes elsajátítani a fő emberi közlekedési módokat.
Az internet alapú telemanipuláció egy viszonylag új és előnyös kutatási terület. Lehetőséget nyújt új és kifinomult irányítási módszerek alkalmazására, melyeknek célja az időkésleltetés kiküszöbölése, ami az egyik fő kihívás ezen a téren. Természetesen a teljes kiküszöbölés lehetetlen, de stabil működést el lehet érni. A tanulmányban bemutattunk egy ígéretes módszert (virtuális impedancia pozíció hiba korrekcióval). A módszer hatékonysága a tele-kézfogó ezköz mérési eredményei által bizonyított.
Egy másik érdekes kihívás az intelligencia elosztása. A potenciális tér alapú modell egy kiterjesztése került bemutatásra, amely az eredeti módszer behatároltságát némileg javítja. Egy egyszerűsített neuro-fuzzy algoritmust is bemutattunk a VFB modell közelítésére. A tanulási algoritmus is adott a bamutatott modellhez. Egy példa kapcsán bemutattuk, hogy a robot képes megtanulni bizonyos emberi viselkedésmódokat.
Abstract –Ezen dokumentum egy általános neurális hálózattal ellátott ügyes kéz gyakorlati alkalmazását tartalmazza, amely Forma-Memória ötvözetel kerül mozgatásra (Shape Memory Alloy-SMA). Mivel az SMA karakterisztikája nagyon nem lineáris és a paramlterei a környezettől függenek (főként a hőmérséklettől), ezért a robotkéz egy általános neurális hálózat segíségével működtethető, amely képes arra, hogy megtanulja a robotkéz éppen aktuális nem lineáris karakterisztikáját. A kísérleti berendezés egy 20 szabadságfokú kézből áll, melyet egy SMA húr mozgat, mint mesterséges izom. A csatlakozások pozíciójának detektálására videokamerát használunk. A helyzetet ezután interneten keresztül elküldjük a kijelző számítógépnek, mely OpenGL segítségével megjeleníti a 3D-s kezet.
Az emberek hat érzékkel képesek érzékelni a közvetlen környezetüket, de ezek közül csupán néhányat használnak telemanipuláció közben.
A telemanipuláció az emberi manipuláció kiterjesztése egy távoli helyre. Megfelelő visszajelzések segítségével a telemanipuláció jól megvalósítható veszélyes, vagy egyéb úton elérhetetlen területeken. Az emberek a feladataikat főképp kézzel végzik, ezért a master és slave eszközöknek illeszkednie kell a műveletet végző személy kezéhez. A telemanipuláció területén rengeteg HAPTIC eszköz lett kifejlesztve.
A kesztyű típusú master eszköz lehetővé teszi a legkomplexebb és ügyesebb manipulációt is. Az emberi kéz a legszélesebb körben alkalmazott szerszám. A végső cél, hogy egy olyan készüléket hozzunk létre, melynek segítségével az operátor úgy érzi, mintha csak hosszabb lenne a keze. A piacon jelenleg is rengeteg olyan érzékelős kesztyű kapható, mely nem képes a felhasználó számára “erő visszajelzést” adni.. A [7]-es dokumentum bemutat egy érzékelő kesztyűt, mely erő visszajelzéssel rendelkezik az operátor kezének mind a 20 kapcsolódására. Amennyiben az emberi kéz egy ilyen “kereskedelmi” kesztyűt használ többféle bonyolult feladat is elvégezhető az irányított területen, de a kereskedelmi kéz típusú slave eszközök nem elérhetőek. Ez a dokumentum bemutat egy kereskedelmi kéz típusú slave eszközt a precíz telemanipuláció végrehajtásához. Eddig még nem volt a rendszerbe az erő visszajelézés funkció implementálva, annak ellenére, hogy a berendezés jelentősen egyszerűbb, mint a 91. ábra –n lévő . A rendszer felhasználás a 92. ábra-n látható.
A kéz elsősorban negyon finom mozgást igénylő műveletek elvégzésére szolgál a kéz és ujjpozíciók széles kombinációjának felhasználásával. Következésképpen, kölcsönhatás van a csuklóizületek pozíciója és az ujjmozdulatok hatékonysága között. A kézfej rengeteg stabil és mobil területtel rendelkezik, melyekhez nagyon komplex izom és “csukló-joint” mozdulatok tartoznak.
A robotkéz teljesen hasonló felépítésű az emberi kézhez, elméletileg az emberi kéz mozgásának mind a 20 szabadságfokával rendelkezik, de ebben az esetben csak 8-at használunk belőle.Nem szeretnénk külön irányítani a legfelső ujjperc mozgását, mert ezt az emberi kéz sem tudja jól irányítani. Mi csak a kis ujjpercet húzzuk és az magávalhúzza a középső ujjpercet is. A kéz felépítése a 93. ábra-n látható.
A kéz mozgatására általános neurális hálózatot használunk: A különbség a klasszikus és az általános neuron között, hogy a klasszikus neuron súlyát valós számokkal írjuk le, míg az általános neuron súlyát ebben az esetben “fuzzy” függvények adják. Egy egyszerű neuront mutat a 910. ábra és a többrétegű általános neurális hálózat in 97. ábra-n kerül kifejtésre.
A neuron minden egyes bemenetére van egy B set, melyet egy előző A set bocsát ki. Minden egyes előző set megfeleltehető egy következetes B set-nek , mely esetünkben egy egyedülálló set, ahogy azt a 94. ábra is mutatja. Ha az X0 bemenet eléri a rendszer X bemenetét ,akkor az kivág kettő vagy több előzményt is ( az előzmény függvény típusától függően, esetünkben háromszög set-eket feltételeztünk).Az előzményekhez tartozó B értékek súlyozva vannak és a tömegpontok a 94. ábra-n látható módon kerülnek kiszámításra:
A súlypont értéke a neuron összegző részébe kerül (lásd: 910. ábra). A rendszer a következmény set-ek változtatásával tanítható (azaz B értékei).
Ha felrajzoljuk az előzmény A és következmény B értékeket egy koordinátarendszer két tengelyére, láthatóvá válik, hogy mi is történik: A legtöbb függvény (melyek a mérnöki gyakorlatban érdekeltek) közelíthető fuzzy függvényekkel. Az előzmény set-ek pozícióji meghatározzák a közelítendő függvény mintavételi pontjait. A B értékek mintavételezett értékek. Az előzmény tagsági függvény alakja meghatározza az interpolációs karakterisztikát a mintavételezett pontok között. Háromszög típusú előzmény függvényt használva a közelítő függvény szakaszonként lineáris lesz mint ahogy azt a 95. ábra mutatja.
Szóval míg a normál neurális hálózat esetében minden esetre ugyanaz a nem lineáris függvény áll fenn, addig az általánosított neurális hálózat esetében minden bemenetre más és más nem lineáris függvényt kapunk. Még B értékének megváltoztatásával is könnyedén módosíthatjuk ezeket a nem lineáris függvényeket. Matematikai szemszögből vizsgálva: az eredeti neuron egy nem lineáris függvénnyal válaszol a bemenetre adott lineáris kombinációkra. Az általánosított neuron megadja a lineáris kombinációit a bemenetre adott nem lineáris függvénynek. A neuronok előzményei háromszög függvények, mert ezekhez szükséges a legkisebb számítási kapacitás. Az előzmények Ruspini-felbontást formálnak, ami azt jelenti, hogy a tagok összege bármely X helyen egyenlő 1-el. Ez a felbontás a 96. ábra –n látható.
t1+t2 = 1 bármely X-re.
Az általános neurális hálózat a 97. ábra-n látható. A97. ábra jelöléseit felhasználva a neurális hálózat kimenetei a következőképpen számíthatóak:
(9.1) |
ahol Xi az i neuron kimenete az első szinten/rétegen, a t-dik előzménye az i-dik bemenetnek a második szinten. Minden előzmény set összhangban van az összes neuronnal. a következmény set-je az által kibocsátott j-dik neuronnak.
(9.2) |
Ahol k a bemenetek száma, t az előzmények száma, Pk pedig a k-dik bemenet.
A kérdés, hogy hogyan módosítjuk a Bk,i,t súlyát, ha a hiba h?
(9.3) |
A hiba nem deriválható egyszerűen Bk,i,t miatt, ezért a láncszabályt kell alkalmazni , mint a Hátsó Terjedési Algoritmusban. A h hiba az Y kimenet szerint deriválható., a kimenet az X bemenet szerint deriválható, és végül pedig a bemenet a keresett B szerint deriválható. Így a következőt kapjuk:
h2 számítható, mint:
Általánosságban, ha a hiba az n-dik szinten történt h(n)j, akkor a hiba az n-1-dik szinten a következő módon számítható:
(9.9) |
A súlyok a következőképpen módosulnak:
(9.10) |
A kéz mozgásának szabályozásádra Pulzusszélesség Modulációt alkalmazunk (PWM). Két különböző kitöltési tényezőt használunk, egyet a kéz különböző részeinek mozgatására, a másikat pedig az egyes pozíciókban való tartásához. (lásd 98. ábra és 99. ábra). Amikor az operátor megváltoztatja a referencia pozícióját, a neurális hálózat kiszámítja , hogy mennyi ideig kell a vezetékre feszültséget kapcsolni, ahhoz hogy a kéz a kívánt pozícióba álljon (Lásd: 98. ábra és 99. ábra). Mivel a környezeti jellemzők (főként a hőmérséklet) jelentős hatást gyakorolnak az SMA vezetékek karakterisztikájára, a neurális hálózatot folyamatosan újra kell hangolni.
Egyike a legnagyobb problémáknak, amikor fuzzy vagy neurális technikákat alkalmazunk a számítások komplexitása. A mérnökök gyakran szembesülnek ezzel a problémával különösen komplex feladatok esetén, valamint az információ visszakeresés területén, ahol teljes könyvtárak óriási információs térképeit vagy az internetet kell feldolgozni, minden egyes felhasználói kérésre. Ezek az alkalmazások használják az általánosított típusú neurális hálózatot. Engedjék meg a komplexitás tétel eredményeinek egy rövid bevezetését.
Lemma 1. A számítás összetettsége arányosan növekszik a neuronok párhuzamos szintjeinek számával.
Elhanyagolva a plusz műveletek számítási erőfeszítéseit, de figyelembe véve az eszköz működését, a számítási szükségletek a következőképpen realizálhatóak:
, | (9.11) |
ahol jelenti tagsági függvények számítását:
, | (9.12) |
ahol s jelenti egy előzmény set egy tagsági értékének számítását.
Ezen rész legfőbb feladata, hogy javaslatot tegyen egy olyan algoritmusra, mely képes kiszűrni a közös lineáris kombinációkat és csökkenteni képes az előzmény set-ek számát a súlyozó függvény transzformálására alapozva. A javasolt eljárás egyik legnagyobb előnye, hogy az egyszerűsítés hatékonysága a megadott hibaküszöb segítségével kerül irányításra.
Tétel 2.: Egyenlet (9.4) mindig átalakítható a következő alakra:
, | (9.13) |
ahol “r” jelöl “csökkentett”, továbbá és .
A egyszerűsített alak úgy jelenik meg, mint a neurális hálózat a 912. ábra-n. A technika további bizonyítékai a [9,10]-es pontban kerülnek további kifejtésre.
Ahhoz, hogy a számítógéppel megtalálhassuk a kamera képén a csomópontokat, vörösre festettük őket. Azért ezt a színt választottuk, mert a három fő szín közül (Vörös, Zöld, Kék) ez a szín a legjellemzőbb.
Sajnos a kéz rézből készült, melynek szintén magas a vörös szín tartalma, ezért a kezet zöldre kellett festeni. A zöldet azéret választottuk, mert ez szintén egy alapszín és a filmtechinkában is használatos (annak ellenére, hogy a technikát “bluebox”-nak nevezik a kék színt csak tíz évvel ezelőttig hazsnálták, mikor is megváltoztatták zöldre, mert ez kedvezőbb hatással van a kamerák érzékenységére). Ezután észrevettük, hogy rengeteg vörös tárgy van a laboratóriumban, ezért létrehoztunk egy teljes green box-ot a kéz körül. Egy Sony Handicam-et használunk egy Genius Video Wonder II TV-kártyával. A számítógép egy Pentium-166 with 40 Mbyte RAM Windows 98 operációs rendszerrel. Azért ezt a konfigurációt választottuk, mert a TV-kártya programozása igen egyszerű Windows környezetben, a gyártó rendelkezésünkre bocsájt drivereket és nekünk csak az általuk előírt folyamatokat kell elvégeznünk. A program Borland Delphi 4-ben íródott. A video rögzítő program (eac401) az internetről került letöltésre (“Delphi Superpage”), és lett módosítva, hogy megfeleljen a mi elvárásainknak.
A kép méretét 160X120-ra választottuk, mivel ez a legkisebb standard méret.
Még ebben az esetben is rendkívül magas lehet a szükséges számítási kapacitás. A programban különböző kamera-tulajdonságok állíthatóak be, például fényerősség, kontraszt vagy telítettség. Ezen tulajdonságok állításával jobb képminőséget tudunk elérni. A képek javításának fázisai a 9-15. ábra-9-18. ábra- kon láthatóak.
A szoftver arra lett kifejlesztve, hogy egy képi visszajelzést adjon a kézről a telemanipuláció során. A vizuális visszajelzés célja, hogy egy megfelelően realisztikus képet szolgáltasson a környezetről és annak ellenére, hogy ez a környezet még messze van a teljestől, a program lehetőséget nyújt a felhasználónak, hogy teljes 3 dimenziós térben barangoljon.
A program úgy lett létrehozva, hogy helyileg teljes szimulációs módban fusson, vagy TCP/IP kapcsolaton keresztül, mint például Internet vagy Local Area Network. Szimulációs módban, a program lehetőséget ad, hogy az emberi kéz minden mozdulatát szimulálhassuk. Hogy ezt elérjük, mind az anatómiai és matematikai modelleket fel kellett építeni, mely modellek OpenGL-ben kerültek implementálásra. A matematikai levezetés a Denavit-Hartenberg jelzésrendszert használja, mert ez jól használható mindkét esetben és az OpenGL-ben is. A model sok alapfeltételezéssel él, melyek a következőek:
Az alap koordináta keret minden ujj esetében azonos. Ez azért került alkalmazásra, hogy egy teljesen általános esetet kapjunk, ahol az ujjbegyek koordinátái egy közös ponthoz képest kerülnek kiszámításra, mint például a csukló. Ezt a közös keret tekinthetjük a § pontnak. Ez a pont szolgál arra, hogy a rendszer a későbbiekben lehetőséget nyújtson arra, hogy a rendszert kiterjeszthessük, amennyiben ez szükségeltetik.
Egy ujj 3 pontot tartalmaz, az első két szabadságfokú, a másik kettőnek csak egy a szabadséágfoka, mely síkbeli forgást tesz lehetővé. Az első pont pozíciója l0 változó által kerül meghatározásra, mely a távolság az első pont és a közös koordinátarendszer középpontja között.
Egy ujj mentén a di értéke 0, ami azt jelenti, hogy a közös normálisok egy vonalba esnek.
Egy uj mentén ai érétke megegyezik a kapcsolat hosszávcal.
Az elfordulás szöge csak a bázis koordinátarendszerben van figyelembe véve, és az első “joint”-nál, mivel az ujjak oldalirányú mozgását is figyelembe kell venni.
Fontos, hogy a § koordináta minden ujjnál azonos lehgyen, és ez legyen az egész kéz közös referenciája is. A különböző i szögek és l0 változók meghatározzák a pontos pozícióját és orientációját a következő csuklópontban elhelyezkedő keretnek, minden ujj esetén. Két keret között a di értéke megegyezik a kapcsolat hosszával, l0. (Since joint 0 is of the revolute type, q0 is 1 the relationship between the two joints is xx.)
Ez a dokumentum egy ügyes kezet mutatott be, mely a telemanipuláció “slave” eszközeként szolgál. Forma memória ötvözeteket (SMA) felhasználva, mint „mesterséges izom” hatékonyan növeltük a robotmechanizmus szabadságfokainak számát, mely nagyobb rugalmasságot nyújtott , mint a széles körben alkalmazott pneumatikusan, vagy elektromos aktuátorokkal vezérelt kezek esetében. Az SMA vezetékek súlya és mérete jóval kisebb, mint az általában használatos aktuátoroké. A konstrukció sokkal egyszerűbb; és az ára sem magasabb az általánosabb eseteknél. Viszont SMA technológiát alkalmazva egy nagyon bonyolult irányítási problémához jutunk, mivel az SMA szolgáltatása erősen nem lineáris. Ez a dokumentum megmutatta, hogy az általánosított neurális hálózatok egyfajta megoldásul szolgálhatnak az SMA használatánál kialakuló irányítási problémára.
Az ipar folyamatosan fejlődik. A gyártósorok egyre újabb, jobb, és gyorsabb gépekkel rendelkeznek. A korábbi eszközöket általában leselejtezik, vagy eladják. Az elavult, vagy elromlott gépek nagyrészt csak elektronikailag nem megfelelőek. Javításukat nem végzik el, mert elavultak, vagy nem kapni hozzájuk alkatrészt. A robotok a mechanikai konstrukció terén a technika fejlődéséből adódóan nem sokat változtak. Az elektronika fejlődése, viszont nagy léptekkel haladt az elmúlt évtizedekben. A leselejtezett robotok mechanikailag általában jó állapotban vannak. Egy robotnál a költségeket nagyrészt a mechanika adja. A motorok, pontosan legyártott fém alkatrészek, csapágyazások, csatlakozók, hajtóművek stb. Az elavult, tönkrement vezérlők cseréjével a robotok mechanikája újra felhasználható. Egy-egy vezérlő kifejlesztése mérnökcsoportok hónapokon keresztül tartó költséges munkájába kerül, ennél fogva nem éri meg a régi gépek új vezérlővel való felszerelése, amennyiben típusonként új rendszer kell kifejleszteni.
Egy univerzális robotvezérlő (9-19. ábra) létrehozása nagyobb munkát és energia befektetést igényel, mint egy-egy gép specifikus rendszer, viszont hosszútávon egy működő koncepció, sokkal jobb megoldást jelent az egyre több újra cserélt robot problémájára. A robotok többsége csak néhány alapvető dologban tér el egymástól. Ezek a geometria, a változók mérése, a motorok mérete, fajtája. Lehetnek zárt láncúak, nyílt láncúak, vagy akár a kettő kombinációja is. Nyílt láncú robotoknál az egyes szabadságfokok egymást követik, pozíciójuk és orientációjuk egymás függvényei. A zárt láncú robotok esetében az egyes csuklók egymástól függetlenek lehetnek, de mind hatással vannak a TCP pozíciójára, orientációjára. A vezérlőt modulárisan kell felépíteni, hogy az minden robothoz könnyen és gyorsan illeszthető legyen. Az interpolátor PC-n fut, így a robot geometriája, paraméterei megadhatók szoftveresen. A rendszer folytonos pályairányításra képes. Kisebb robotokban régebben kefés DC motorokat használtak. Mára mindenhol a PMSM és a BLDC motorok terjedtek el. A sebesség, pozíció és nyomaték referenciákat fogadó többféle teljesítményű végfokokkal a legtöbb robot minden szabadságfoka meghajtható. A végállás kapcsolók, enkóderek, homing szenzorok és egyéb specifikus perifériákhoz kell egyedi elektronikát tervezni. A rendszer AD, DA, és digit IO modulokkal kiegészítve szinte bármilyen géphez illeszthető. Az EMC2 köré terveztük a rendszert, ami egy univerzális robotvezérlő platform, létradiagram szerkesztővel és PLC funkcióval, így a vezérlő a robot mellett egyszerűbb perifériákat, szerszámtárat, futószalagot is kezelhet. A realtime Linux alatt futó EMC2-höz szükség van a PC mellett egyéb hardver kiegészítésre a jelek fizikai megjelenítése miatt. Erre a feladatra a legmegfelelőbb a PCI express bus és ebből következően egy PCI kártya. (2-2. ábra)
A Scara (Selective Compliant Assembly Robot Arm) robot nyílt láncú 4 szabadságfokú RRTR rendszerű. (9-21. ábra) Kefés DC motorokkal és harmonic drive áttétellel szerelt. A motorok visszacsatolása inkrementális szögjeladóval (enkóder) történik. A végállás kapcsolók sorba kötöttek. A homing szenzorok optokapukból állnak. Az enkóderek index jellel is rendelkeznek. Végberendezésként megfogó, eltolt szerszámközéppontú ceruza illetve maró is felszerelhető.
x, y, zTCP Descartes koordinátái
TCP Descartes koordináta rendszer szerinti elfordulása
,az első és második kar hossza
,az első és második kar tömege
a szerszám tömege
az első kar tömegközéppontja és az első szabadságfok közti távolsága
a második kar tömegközéppontja és a második szabadságfok közti távolság
,,,az egyes szabadságfokok pozíciója
a robot Jacobi mátrixa
az első két kar nyomaték mátrixa
Taz első két kar éskinetikus energiája
,az egyes és kettes kar tehetetlensége
A robot első két szabadságfoka a tömegek és tehetetlenségek miatt hatással van egymásra a robot mozgatása során. A rendszer robosztus mozgásszabályozásában az inverz kinematikai egyenletekre támaszkodunk, és nem vesszük figyelembe a tömegek egymásra hatását. Ezt az irányítási módszert decentrálisnak nevezzük. Egyes gépeknél (pl. TTT elrendezésű CNC maró) a szabadságfokok nincsenek hatással egymásra. Ezekben az esetekben a rendszer tökéletesen hangolható és irányítható dinamikai egyenletek nélkül. A Norvégiában használt Scara esetében a kis tömegek és tehetetlenségek miatt a robot szépen mozgott decentrálisan is, de egy nagyobb gépnél elengedhetetlen a centrális szabályozás. A rendszer képes volt centrális szabályozásra, de annak élesztésére és behangolására nem maradt idő. A decentrális szabályozás során sebesség vagy pozíció referenciát adunk. Az EMC2 inverz kinematikai modulját módosítottuk a mi paramétereink és csuklóelrendezésünk szerint. A robotvezérlő folytonos pályairányításra volt képes. (Pont-pont irányítás esetén a robothajtások számára csak a következő pont (pozíció, szöghelyzet) adott, és nincs előírva a robot végberendezésének pályája a start és célpozíció között. Folytonos pályairányítás esetén a pályát tervező irányítórendszer már folytonos interpolációt végez a közbenső pályapontok meghatározása érdekében.) (3-3. ábra)
A TCP Descartes koordinátái a következő egyenletekkel fejezhetők ki (10.1),(10.2),(10.3):
(10.1) |
(10.2) |
(10.3) |
A hatékony számításhoz bevezetjük az ang() függvényt (10.5).
jelenti az a és b közötti szöget az a,b,c háromszögben.
A cosinus szabályt (10.4) alkalmazva, kifejezhető (10.5) szerint.
(10.4) |
(10.5) |
(10.6) |
és kifejezhető háromszögből, mint (10.7),(10.9)
(10.7) |
(10.8) |
(10.9) |
(10.10) |
(10.11) |
(10.12) |
A centrális szabályozás során figyelembe vesszük a robot dinamikai egyenleteit, a tömegeket és tehetetlenségeket. Fontos a szabályozás során az egyes csuklók és tömegek egymásra hatása. Ebben az esetben nyomatékkal kell beavatkozni, ehhez pedig áram szabályozásra van szükség. A nyomaték referenciákat a számított nyomatékok módszere adja.
A robot dinamikájának leírása fontos a szabályozó tervezéséhez. Az egyenletek segítségével kapjuk meg a nyomaték referenciákat, melyekhez hangolni kell a rendszert.
Q3 lineáris , mozgást végez és a független a többi szabadságfoktól, Q4 pedig elhanyagolható a szabályozó tervezésének szempontjából. A dinamika egy síkbeli manipulátorra egyszerűsíthető két csuklóval és a (10.19) egyenlettel írható le.
(10.19) |
ahol a nyomaték mátrix, amely a rendszer konfigurációtól függő változó, és nemlieáris Coriolis és centrifugális erőt leíró kifejezés.
Tehetetlenségi mátrix:
(10.20) |
(10.21) |
ahol T a kinetikus energia.
T az első szabadságfok, a második szabadságfok, és a szállított tömeg kinetikus energiájának összege. T a (10.22) egyenlettel írható le.
(10.22) |
ahol:
(10.23) |
(10.24) |
(10.25) |
(10.23),(10.24), és (10.25) egyenleteket behelyettesítve a (10.21) egyenletbe, a következőt kapjuk.
(10.26) |
(10.26) egyenletet egyenlet szerint deriválva az M matrix elemei kifejezhetők a következő egyenletekkel.
(10.27) |
(10.28) |
(10.29) |
Nemlineáris összefüggések:
(10.30) |
A rendszer hardveresen képes volt a centrális irányításra. A projekt ezen részét sajnos idő hiányában nem tudtuk befejezni.
A vezérlőt egy Lian Li gépházba szereltük. Itt kapott helyet a rendszer összes eleme kivéve a PLC funkció egységeit.
A legfelső szint az Enchanched Maschine Controller 2 ( továbbiakban EMC2), amely egy opensource robotvezérlő program Linuxra fejlesztve. A program nyílt forráskódjából adódóan folyamatosan fejlesztés alatt áll. Az EMC2 (3-5. ábra), (3-6. ábra), (3-7. ábra), (3-8. ábra) rendelkezik gép konfigurációkkal, de mi magunk is megírhatjuk bármely gép kinematikáját és belefordíthatjuk. A konfigurálás során egyszerűen megadhatjuk grafikus felületen, vagy .ini és .hal fájlokban a kimeneteket, bemeneteket, változókat, a gép paramétereit, maximális gyorsulás, sebesség értékeket, a TCP-re és a tengelyekre egyaránt, valamint a tengelyek homingolásának sorrendjét, limitjeit, 0 helyzetét.
A PC-be egy micro ATX alaplapot, egy 2 GHz-es processzort, 4 Gb memóriát tettünk. Az operációs rendszer és a robotvezérlő egy pendriveon fut. Az EMC2-nek nincs nagy gépigénye, viszont a számítások valósidejű futása nagyon fontos, hogy a PC megfelelő pillanatban tudjon referenciát adni, ezért a konfiguráció összeállítása során arra törekedtünk, hogy a gép realtime latency tesztje minél jobb legyen.
A vezérlő moduláris felépítése mellett RT-middleware (Robotics Technology Middleware) kompatibilis. Az RT-middleware egy „közös” robotirányítási platform, aminek segítségével különböző robotok könnyen hálózatba köthetők a közös munka érdekében. Az MTA Sztaki-ban megírták az EMC2 RT-Middleware kiegészítő komponensét.
Az EMC2-höz fejlesztett PCI kártyát mutatja a 9-29. ábra és 9-30. ábra. A kártya a PCI buszon keresztül megkapja az összes referenciát és továbbadja a megfelelő moduloknak. A PCI busz és a kártyán lévő FPGA között a kommunikációt egy PLX (PCI express kompatibilis IC) végzi el. Ez egy 32 bites párhuzamos kommunikáció. Az FPGA (field-programmable gate array, a felhasználás helyén programozható logikai kapumátrix) olyan félvezető eszköz, amelyik "logikai blokk"-oknak nevezett programozható logikai (programmable logic) komponenseket és programozható összeköttetéseket tartalmaz. Az első kártya adhatott analóg referenciát, STEP/DIR rendszerű referenciát (jobbra, balra lépés és lépés irányjelet egyaránt), és SPI kommunikációt. Az analóg és az SPI kommunikációs referenciák lehetnek sebesség, pozíció és nyomaték jelek egyaránt. A kártya egyszerre 6 tengelyt tud kezelni. Az EMC2 két PIC kártyát támogat és 9 tengelyt, így akár egy 9 szabadságfokú gépet is megmozgathatunk interpoláltan. Centrális mozgás szabályozás esetén a pozíció referencia jeleket át kell számolni nyomaték értékekre. Az FPGA forráskódjába (a kapu nagy száma miatt) felépíthetünk akár egy Texas DSP-t is, hogy az elvégezze a számított nyomatékok módszerének egyenleteit. Ennek tesztelésére és hangolására már nem maradt idő. A kártyán van továbbá 8x4=32 szabadon konfigurálható láb IO modulok számára, valamint 24 gép specifikus jeleknek. A 32 IO lábra 4 modul köthető modulonként 8 jellel. Ide kötöttem a bemeneti modult, a kimeneti modult, és a tanítópult jeleit. A 24 gép számára fenntartott pinre kerültek a végállás, homing szenzorok jelei és az E-stop. Minden jelet optoleválasztottunk. A PCI kártyán ötféle táp és kétféle föld található, a 208 lábú FPGA, a 176 lábú PLX IC és az egyéb periféria áramkörök mellett.
A DC szervo teljesítmény elektronikát mutatja a 9-32. ábra és 9-33. ábra. DIN sínre szerelhető dobozba tervezte. A modul 80 voltos busz feszültségig, 300 watt teljesítményig használható kefés DC motorokhoz. A végfokban teljes H hídba (9-31. ábra) kötött FET-ek vannak áraméréssel kiegészítve. Az áramot a sönt ellenálláson eső feszültségből határozzuk meg, így a végfok áramszabályozásra is képet. Az alsó oldalon találhatók a digitális jelek csatlakozói. Ezek az enkóder csatlakozó, a referencia és az USB port. A végfokhoz tartozik egy PC oldali hangoló program, amelyen a beállásokat, referenciát, követési hibát, áramjelet és egyéb információkat láthatunk a PID szabályozó tagjainak súlya mellett. A modul felső oldalán találhatóak a teljesítmény elektronika csatlakozói. Ezek a DC busz, a digitális táp, és a motor kivezetése. A végfokon minden digitális referencia és egyéb jel optoleválasztott.
A rendszerhez terveztünk optoleválasztott bementi és relés kimeneti modult. Ezeket is DIN sínre szerelhető rendszerben raktuk össze. A relé modulon keresztül vezettem az E-stop jelet, így szoftveres probléma esetén az EMC2 is leállíthatja a rendszer teljesítmény elektronikáját. A vezérlő PLC funkciói, az EMC2 létradiagram szerkesztője és a ki-be menetek is kihasználtak. A munkám során kötöttem a modulokhoz egy 3 fázisú futószalagot. Ehhez szereltem három fénysorompót és egy kiegészítő elektronikát, amivel a futószalag enable és irány jeleket kap az EMC2-től, illetve digitális jeleket ad a tárgyak elhaladásáról. A vezérlő moduláris felépítésének köszönhetően így két gép dolgozhat közös irányítás alatt.
A robot tanítópultját egy 800x600 pixel felbontású VGA érintő képernyő köré terveztem. Az LCD kijelző mellett el kellett, hogy férjen a PC üzemi kapcsolója, egy E-stop kapcsoló, egy kétirányú kapcsoló a Z koordináta tengely szerinti joggoláshoz, valamint egy joystick a többi irány számára. A joystick tengelye mozog X-Y irányba, elfordul a saját tengelye körül (negyedik szabadságfok), valamint rendelkezik egy nyomógombbal a végberendezés ki-be kapcsolására. A tanítópultból digitális jelek jönnek. Z irányba, és az elforduláshoz 2-2, a végberendezéshez 1, X-Y irányokhoz, pedig 4-4 a robot lassú és gyors mozgatásához a vízszintes síkon. A komparátorok referencia feszültségét trimmerekkel állítottam be, hogy a tanítópult könnyen hangolható és ergonomikus legyen. Az elő és hátlapok kivágása után egy keretet hajlítottam a tanpult köré, ami végül egy állványon kapott helyet a gép mellett. (ld. 9-34. ábra és 9-35. ábra)
A rendszerben (9-37. ábra) alapvetően két külön táp van. A PC tápja és a teljesítmény táp. A teljesítmény táp nincs feszültség alatt, ha a PC-t nem kapcsoltuk be. A megfelelő feszültségértékeket toroid transzformátorokkal és teljes Graetz hidakkal állítottam elő. A transzformátorok előtt és után volt primer illetve szekunder oldali biztosíték. A teljesítmény tápok közül van 2x80 volt DC a két nagyobb motor, 2x60 volt DC a két kisebb motor számára, és 16 volt az enkóderek, homing szenzorok tápellátása, jelek szétosztása és a DC végfokok digitális tápellátása miatt. Az összes DC táp pufferelt. A nagy pufferek különösen fontosak voltak a motorok tápellátása esetében, hogy az 50 Hz-es frekvencia sehol ne jelenjen meg a szabályozás során zavarként. Az E-stop kapcsolók megszakítják a végfokok teljesítmény tápját, de a digitálist nem. A robotvezérlő (9-36. ábra) és a teljesítmény elektronika összeállításánál fontos volt az egyes blokkok megfelelő távolsága, szigeteltsége az elektromágneses zavarok miatt.
A robot összes jele és perifériája egy 51 eres kábelen érkezett be a vezérlőbe. Ezeket a jeleket ki kellet mérni, biztosítani a megfelelő tápellátásokat, leválasztásokat, szűréseket és szétosztani a megfelelő modulok között. Ide tartozott a négy enkóder A, B csatornája illetve Index jele, a négy homing szenzor és a sorba kötött végállás kapcsolók. (9-38. ábra)
A megfeszített munka végeztével hazautazásunk előtt ismét munkába álhatott a Scara. A centrális mozgás hangolására sajnos nem maradt időnk, de a robot a kis tömegei miatt decentrálisan nagyon szépen mozgott. Martunk, rajzoltunk G-kód alapján, interpoláltunk egyenes mentén, pont körül, beállítottuk a joggolást, mértünk beállásokat. (9-39. ábra), (9-40. ábra)
A Seiko D-TRAN TT 4000SC (11-1. ábra) szintén scara típusú robot, de az Adept-tel ellentétben TRRR elrendezésű. A motorok mérete többszöröse az Adeptnek és a névleges feszültségük is 100 volt. A robot mérete, súlya szintén nagyban eltér, a sebessége viszont lassabb.
Az első prototípusnál sok probléma volt a gépház elrendezésével, fizikai méretével, alkatrészsűrűség, melegedés, és elsősorban szerelhetőség miatt. A Seiko méretéből adódóan nagyobb teljesítményelektronikai alkatrészekre, többféle tápra, több modulra van szükség. Az új rendszert egy rack szekrénybe (11-2. ábra) építettem. A legfelső szinten helyezkedik el a PC, a PCI kártya, és a gép specifikus jeleket elosztó eletronika, egy rack dobozban. Az alatta lévő fiók a DC végfokok, IO, AD és DA modulok helye. A legalsó fiókban pedig a trafók, pufferek, biztosítékok, kismegszakítók, fék ellenállások, relék kerültek beépítésre. A robot csatlakozói közül mindegyik a neki megfelelő fiók hátsó lapján került beépítésre. Az összes kábel a szekrény hátuljában húzódik végig és a szekrény alján hagyott résen fut a robot felé. A felső fiókból csatlakoznak a PC (11-3. ábra) és a PCI kábelei (táp, LCD táp, VGA, USB, CAN, RS485, homing és végállás jelek), a második fiókból az enkóderek és a TCP jelei, a harmadik fiókból a motorok táp kábele, és az AC teljesítmény táp. A gépház ajtaja zárható plexi. Az oldala leszerelhető, a fiókok pedig kihúzhatóak. A rendszer gyakorlatilag szétszedés nélkül javítható, hangolható és fejleszthető.
A teljesítmény elektronika változott a legnagyobb mértékben az első verzióhoz képest. Az AC teljesítmény táp átmegy egy fojtó tekercsen, majd továbbhalad biztosítékokon keresztül a trafók felé. A rendszerben van 12 volt DC feszültség a végfokok digitális táp ellátására, 24 volt DC a periféria áramkörökhöz, IO, AD és DA modulokhoz, valamint 100 volt DC a motorok számára és 200 volt AC a fő reléhez, illetve ventillátorokhoz. A rendszer fő reléje egy alapértelmezett nyitott kontaktuson keresztül kapcsolja a DC buszt. A relé előtt 6800 uF puffer utána pedig 1000 uF puffer van. Alapértelmezett zárt kontaktusok pedig a relé előtti és relé utáni kondenzátorokra kapcsolják a nagy teljesítményű ellenállásokat, hogy kisüssék azokat. Egy diódákkal leosztott referencia feszültség pedig bekapcsol egy IGBT-n keresztül egy fék ellenállást, ha a DC busz feszültsége 110 volt felé emelkedik. A három legnagyobb motorhoz tartozik egy-egy kismegszakító is állítható leoldással. A kismegszakítók alapértelmezett zárt kontaktusain pedig sorba kötve áthalad az E-stop, így a túl nagy áramfelvétel (zárlat, ütközés) is okozhat leállást. A különböző feszültségszintek előállítása trafókkal, teljes grates hidakkal és puffer kondenzátorokkal történik. (11-4. ábra)
A tanítópultot elsősorban méretében és súlyában szeretném csökkenteni. A második verzióba keret nélküli LCD kerül, valamint lecseréltem a Z irányú kapcsolót rugós változatra. A digitális jelek pedig RS485-ön fognak a PCI kártyához csatlakozni. Az EMC2-nek több kezelőfelülete is van, ezek közül a touchy érintő képernyőhöz íródott, így az LCD felületen megoldható a gép betanítása, programozása, tesztelése.
A PCI kártya 1.1-es verziója rengetek kiegészítést kapott az előző változathoz képest. A legfontosabb, hogy a második változat rendelkezik CAN-bus, és RS485 kommunikációval. A CAN szabványos ipari kommunikációs. CAN-en visszajelzést is kaphatunk a végfokoktól hibáról, pozícióról, hőmérsékletről stb. A kártya alapvetően STEP/DIR rendszerű, analóg és CAN-es végfokokat szolgál ki referenciával. A régi robotok esetében sokszor csak a vezérlő elektronika megy tönkre és a nagyobb költségű teljesítmény elektronika működőképes maradt, viszont csak analóg referenciát fogad. A PIC kártya ezt is ki tudja szolgálni, ebben az esetben a mozgásszabályozást az EMC2 végzi a kártyára bejött enkóder jelek alapján. Az RS485-re köthetőek az új IO modulok, AD és DA átalakítók. Ezekből összesen 64 darab fűzhető fel. Megmaradt az előző kártya pinenként konfigurálható 4x8 IO portja is, valamint a gép specifikus jelek 26 pólusú csatlakozója. Egy kiegészítő kártya segítségével, pedig elérhető lesz a jövőben CANopen, DeviceNet és ProfiBus protokol is. (11-5. ábra)
Az előző verzió IO moduljai mellett fejlesztésre került az RS485-ön kommunikáló kimeneti, bemeneti, analóg-digitális és digitális-analóg konverter is. DIN sínes dobozban tervezve, ahogy a rendszer többi modulja is.
Az új DC végok is Géza munkája. Az eddigi SPI referencia helyett a végfok STEP/DIR jelet és CAN-bust fogad. A másik fontos változtatás, hogy a teljesítmény elektronika és a vezérlő elektronika külön nyomtatott áramkörön kap helyet a FET-ek kapcsolásakor történő zavarok, a processzor resetelése, a nagy áramfelvételek és a sönt ellenállások melegedése miatt. A rendszer lelke egy 8bit-es Atxmega16 mikrokontroller. A hangoló programon láthatjuk a referenciát, a pozíciót, a hibát és az áram jelet. Beállíthatjuk a monitorok tengelyeinek skálázását, a pozíció és áram szabályozás tagjainak súlyát, az enkóder osztását és a referencia jel tulajdonságait. (ld. 11-6. ábra és 11-7. ábra)
A szinkron motornál a rotor gerjesztését a permanens mágnes adja, melyet a tengelyre szerelnek fel. A szinkron motornál az erő és a mágneses mező egyetlen forrása az állórész fázis feszültsége. A DC motorral ellentétben a fluxus és a nyomaték egymás függvénye. A FOC (Field Oriented Control) célja, hogy a szinkron és aszinkron motoroknál külön tudjuk szabályozni a nyomatékot szolgáltató és a mágneses fluxus elemeit. A FOC lehetővé teszi számunkra ezek függetlenítését. A felbontott mágneses és nyomaték fluxusokkal független nyomatékszabályozást hozhatunk létre. A felbontáshoz szükséges matematikai műveleteket a mikrokontroller végzi el. Az elektromágneses törvény szerint a szinkron gép forgatónyomatéka megegyezik a mágneses terek vektoriális szorzatával.
(5.1) |
Ez a kifejezés azt mutatja, hogy a nyomaték akkor maximális, ha az állórész és a forgórész mágneses tere egymásra merőleges. Ha ezt a feltételt folyamatosan fenn tudjuk tartani a fluxus megfelelő orientációjával, akkor csökkenthetjük a nyomaték lüktetését. Ehhez ismernünk kell a forgórész pozícióját.
A FOC során az állórész áramát egy vektorral reprezentáljuk. Ehhez a háromfázisú idő és sebesség függő rendszert egy két-koordinátájú (d, és q) idő független rendszerré kell transzformálnunk. A FOC szabályozott motoroknak két referenciára van szüksége: a nyomaték referencia (q-val reprezentálva), és a fluxus referencia (d-vel reprezentálva). Az AC motorok fázisai, áramai és fluxusai komplex térvektorokkal elemezhetők.
Az áramot tekintve a térvektor az egyes fázisok áramának összege a következő egyenlet szerint:
(5.2) |
ahol , (5.3)
A következő ábra mutatja a komplex áram vektort. (5-1. ábra)
Ez egy háromfázisú szinuszos rendszer. Tovább kell alakítani kétkoordinátás idő független rendszerré. (5-2. ábra) Ehhez két lépésre van szükség:
Clarke transzformáció (a,b,c – α,β) – időfüggő rendszer
Park transzformáció (α,β – d,q) – idő független rendszer
Clarke transzformációnál egy másik referencia keretet veszünk fel két egymásra merőleges α,β tengellyel. α és a iránya megegyező. A vektorokat és koordináta rendszereket az alábbi ábra mutatja.
A transzformáció a következő egyenletekkel írható le:
(5.4) |
(5.5) |
Park transzformáció során a merőleges α,β koordináta rendszert d,q forgó koordináta rendszerbe alakítjuk. Ha figyelembe vesszük, hogy a rotor fluxus egybe esik a d tengellyel akkor a következő ábra mutatja a pillanatnyi áram vektort. (5-3. ábra)
Az áram fluxus és nyomaték komponensei a következő egyenletekkel írhatók le.
a fluxus komponens(5.6)
a nyomaték komponens(5.7)
Ezek az egyenletek az α,β áramvektoroktól és a rotor fluxus pozíciójától függnek. Ha tudjuk a rotor pontos pozícióját d,q komponensek konstansok.
A következő ábra összegzi a AC motorok FOC nyomaték szabályozását. (5-4. ábra)
A rotor pozíció a FOC szabályozáshoz elengedhetetlen információ. Az áram, feszültség és rotor fluxus ábrázolható a d,q forgó keretben. (5-5. ábra)
Szinkron gépeknél a rotor sebessége megegyezik a rotor fluxus sebességével és a rotor pozíciója is megegyezik a fluxus pozíciójával. Aszinkron gépeknél a rotor sebessége nem egyezik meg a rotor fluxus sebességével, így a rotor pozíció sem azonos a rotor fluxus pozícióval. Aszinkron gépek esetében általában az áramok méréséből kapott értékekkel számítjuk ki a rotor pozícióját. Ez jóval pontatlanabb érték, mint a szinkron gépeknél. A szinkron gépek pozícióját mérhetjük enkóderrel. A pozíció méréssel megvalósított szabályozó kör az alábbi ábrán látható. (5-6. ábra)
A háromfázisú végfok fejlesztése az én feladatom. A fejlesztő környezet háromfázisú (BLDC, AC, PMSM) motorokhoz készült 1,5 kW teljesítményig, 330 volt DC busz feszültséggel. A készlet fejlesztőkörnyezet révén nem stabil, és ipari környezetben egyáltalán nem használható, de rendelkezik a mezőorientált szabályozáshoz szükséges összes modullal. Hardveresen képes sebesség, nyomaték, és pozíciószabályozásra is. Egy háromfázisú végfok alapvetően rendelkezik egy egyenirányítóval a DC busz előállításához (egy vagy háromfázisú egyenirányító), egy háromfázisú inverterrel, az AC és PMSM motorok szinusz illetve a BLDC motorok trapéz feszültségének előállításához különböző frekvenciákon, és egy mikrokontrollerrel a mezőorientált számítások elvégzése miatt. Visszacsatolásként mérhetjük az áramot, a fázisok feszültségértékeit, a sebességet, pozíciót. A fejlesztő környezet tanulmányozása során rengeteg lehetséges hibát találtam. A legfőbb probléma az volt, hogy az elektromos zavarok miatt a processzor resetelte magát, egy nagyobb áramfelvétel, vagy feszültségingadozás esetén. A reset után, mivel a debugger a panelre volt kötve a processzor nem bootolt, így lábait lebegve hagyta. Ha véletlenszerűen egy félhíd alsó és felső PWM bemenete egyaránt magas jelet kapott az IGBT modul elégett a panelen, ami nagyon megnehezítette a mérést is, így fejlesztésre nem volt lehetőség. A hosszas tesztelés, alkatrészcsere és biztosítékok elégése után a panellal sikerült elérni a PMSM motor sebesség szabályozását. (5-7. ábra), (5-8. ábra), (5-9. ábra)
A Texas körenyezetben használt IGBT modul félhíd driverei high illetve low side PWM jelet kaptak, melyek egymásnak invertáltjai. A saját tervezésű végfok első verzióját kisebb (1 kW) teljesítményre méreteztem FET-ekkel és félhidanként in/sd bemenetű FET driverekkel, melyek egy PWM bemenetet és egy engedélyező jelet kapnak. Ezzel a konstrukcióval hardveresen kiküszöböltem a félhidak rövidre zárásának lehetőségét. További probléma volt a processzor és az IGBT modul közös földje, amely tönkretette a mikrokontroller tápellátását és majdnem a magát a kontrollert is. A prototípuson a vezérlő elektronika és a teljesítmény elektronika összes jelét leválasztottam optocsatolókkal. (Az analóg jeleket is.) További fontos kiegészítés a Texas modulhoz képest, hogy a rendszer rendelkezik fék ellenállással, amely a motor generátoros üzeme esetén visszatöltött energiát képes elnyelni, hogy a DC busz feszültsége ne emelkedhessen 350 volt fölé. A modul tervezése során fontos volt a félhidaknál az alsó és felső FET-ek kapcsolási idejének hangolása, az optoleválasztások pontossága, sebessége, a sönt ellenállások, a FET-ek, drivere, a fék ellenállás, az egyenirányító, a DC tápok, biztosíték méretezése, és a számítási kapacitás optimális megválasztása. A feladatra a Texas által ajánlott 32 bites 60 MHz-es TMS320F28035 processzort (5-10. ábra) választottam. A gyártó kiadta az opensource mezőorientált motor control könyvtárát. Ezeket szabadon felhasználhatom a munkám során. A forráskódok egyedül pozíciószabályozással nem rendelkeznek, de ennek felépítése a sebesség szabályozó kör felé már nem nagy feladat. A kapcsolási rajz hosszas tervezése után a nyomtatott áramkör routolása még nagyobb figyelmet igényelt a teljesítmények, zavarvédettség, földek tápok és a nagyfrekvenciás analóg illetve digitális jelek miatt. A rendszerben 7 féle táp és 4 féle föld található.
A vezérlő elektronika és a teljesítmény elektronika külön nyomtatott áramkörön kapott helyet. A vezérlő elektronikán van a Texas DSP, a DSP tápellátása, debugger ledek, processzor specifikus konfiguráló jumperek, Jtag csatlakozó, és az oscillátor. A DSP megmaradt lábait kivezettem a kártya csatlakozóira. A processzor analóg modulja kaphat alsó és felső mérési referenciát kívülről, illetve a nyomtatott áramkörről analóg földet és 3,3 V-os tápot szintén referenciaként. Ennek beállítására további jumperekkel van lehetőség. A proceszor alatt közvetlenül földfólia helyezkedik el. A nyomtatott áramkör másik odalán, pedig ugyanott tápfólia található. A két fólia közt minden táplábnál elhelyeztem egy-egy 100 nF-os hidegítő kondenzátort. (5-11. ábra), (5-12. ábra), (5-13. ábra)
A teljesítmény elektronika nyomtatott áramkörén helyezkedik el a vezérlő elektronika csatlakozóinak párja. A vezérlő elektronika tápját 24 V DC-ből stabilizálom. Ez látja el táppal az USB-Uart átalakítót, a CAN kommunikációt, a control kártyát, és az optoleválasztások vezérlő elektronikai oldalát. A végfok fogad enkóder és hall jeleket. Méri a DC busz és a fázisok feszültségét, valamint áramát. A rendszer teljesítmény tápja 230 V AC egy biztosíték után fojtótekercsen, valamint egyenirányítón halad át. A FET driverek és egyéb periféria áramkörök tápellátását egy kisméretű transzformátor biztosítja, így a rendszernek csak 24 V DC és 230 V AC tápot kell adni. Található a rendszerben még fék ellenállás, a hozzá tartozó analóg komparátoros áramkör és ventilátor. A teljesítmény elektronika nyomtatott áramkörének tervezése során figyelni kellett az egyes részegységek izolálására. A nyomtatott áramkör egyik végén kapott helyen a DC-busz és a többi teljesítmény táp, illetve teljesítmény elektronikai elem. Középen helyezkedik el a háromfázisú inverter. A másik végén található a vezérlő elektronika. A dolgozat hosszából adódóan a működés további részleteire nem térek ki. (5-14. ábra), (5-15. ábra), (5-16. ábra), (5-17. ábra)
Munkánk során RT-Middleware kompatibilis komponenseket is fejlesztettünk. A rendszer összeállítása és a teljesítmény elektronika, illetve a jelek szétosztása itt is az én feladatom volt. A modulokba került egy toroid transzformátor, egy egyenirányító a teljesítmény táphoz, egy DC tápegység, DC végfok, és egy FPGA fejlesztő környezet, melyen Linux fut és etherneten kaphat utasításokat, hogy továbbadhassa a referenciát a végfok vagy végfokok felé. Egy DC motor pozíció, sebesség, vagy nyomaték szabályozására képes a világ bármely pontjáról interneten keresztül. (6-1. ábra), (5-2. ábra)
A közeljövőben szeretnénk kifejleszteni termék szinten egy olyan univerzális robotvezérlőt, amely gyorsan és könnyen illeszthető minden géphez és robothoz 9 tengelyig, BLDC, AC, PMSM és DC motorral szerelve. Az eddigi eredményekkel elégedettek vagyunk. Már az első prototípus is az elvártak szerint működött. Rengeteg munka és fejlesztés áll még előttünk. A jövőben az általunk fejlesztett vezérlővel szeretnénk megépíteni a saját delta típusú ipari robotunkat is.
[1]Kovács Bence: „Development of motion controllers: Control units design for CNC milling maschines, and industrial robots”, Diplomamunka, 2011
[2]Szayer Géza: „Decelopment of motion controllers: Hardware development, design and implementing motion control algorithms”, Dimplomamunka, 2011
[3]Bilal Akin, Manish Bhardwaj: „Sensored FOC of PMSM”, Texas Instruments útmutató, 2010
[4]Texas Instruments: „TMS320F28035 user’s guide”, Texas Instruments adatlap, 2010
[5]Texas Instruments: „HVMotorCTRL+PFC_HWGuide”, Motor control útmutató, 2010
A szokványostól eltérő kognitív info-kommunikációs csatornákat felhasználva a robotok programozásának és betanításának egy új paradigmáját fejlesszük ki. Mindezzel egy új dimenziót nyissunk a robotizációban, nevezetesen a kis és a közepes vállalatok számára is elérhetővé tegyük a robotos alkalmazásokat. A robotot egy erős, a jól definiált feladatot precízen megoldó, korlátozott intelligenciával rendelkező, de ugyanakkor több tekintetben fogyatékos betanított munkásnak tekintjük. Ezért speciális törődést igényel. Ha megtanuljuk, hogy miként adhatunk ki feladatot, és hogyan kell felügyelni azok végrehajtását, akkor egy nagyon hasznos új „kollégát” nyerhetünk. A távlati cél az, hogy a műhelyfőnök úgy adhasson ki feladatokat a robotoknak is, mint ahogy a betanított munkásoknak szokott. Pl. átadja a munkadarab dokumentációit (CAD rajzát), majd elmondja vagy megmutatja, hogy mi a feladat, közben ellenőrzi, hogy a robot jól értelmezte-e a feladatot (lásd 1. ábra )
A robotizáció terjedését elsősorban a következő problémák gátolják a kis és közepes vállalatok körében.
A robotok szokványos programozása speciális tudást igényel.
A robotok szokványos programozása általában 400-szor annyi időt igényel, mint az adott feladat elvégzése, így csak nagy ismétlési gyakoriságú feladatokat érdemes robotizálni.
A nagy vállalatokkal szemben a KKV-k nem teljes gépsorokat vásárolnak, hanem apránként fejlesztik a gépparkjukat, esetenként más és más gyártótól vásárolva, így nehézséget jelent a meglévő gépek integrálás.
A munkafolyamatok 100%-os automatizálása nagyon drága, de általában az utolsó 10% okozza aránytalanul a legnagyobb nehézségeket. Optimális megoldást jelenthet egy 90%-os automatizálás.
Ha a robotot manipulátorként használjuk, akkor a robot és munkadarab között ébredő erők pontos fizikai visszacsatolásához (amely sok esetben fontos lehet a szerszámtörések elkerülésében), bonyolult és drága eszközökre van szükség.
Mindezekre a problémákra adhat megoldást a kognitív info-kommunikációs csatornák alkalmazása.
Koncepció
Kognitív infokommunikációs csatornák koncepciója
Az operátor és a telemanipulációs robot között a mechanikai kapcsolat helyett - mai szemmel már természetesnek vehetően - informatikai kapcsolat van, de ennél is fontosabb az, hogy az anatómiai kapcsolatot az agy plasztikusságát kihasználva kognitív jellegű kapcsolatokká alakítjuk. Ez tuljadonképen új kognitív alapú kommunikációt jelent, melynek lényege az, hogy más és más érzeteket nem a megszokott, hanem újabb vagy más csatornákon jelzünk. Ezeket az agy képes megfelelő keretek között feldolgozni ld. 2 ábra.
Vegyük például azt az esetet, amikor az irányító erővisszacsatolás révén érezni szeretné a kezelő a robot által megfogott tárgy súlyát vagy puhaságát. Ehhez alkalmazható egy bonyolult szerkezetekkel ellátott mechatronikai kesztyű ld. 3. kép. De sokkal olcsóbban és feladattól függően elfogadhatóan jól lehet ezeket az információkat mély hangokkal vagy egyszerű kézre szerelt virbrátorokkal is visszaadni. Rövid gyakorlat után az emberek jól tudják ezt használni. A természetes példája az agy plasztikusságának, amikor a vakok az ujjukkal „látnak” vagy olvasnak.
A rendszerintegráció koncepciója
Egy munkás be és ki tud kapcsolni gépeket. Ha azt akarjuk, hogy a robot is kezelni tudja a munkafolyamathoz szükséges egyéb eszközöket, akkor azokat valamilyen módon össze kell kapcsolni. A gépek egyedi összekapcsolása helyett minden géphez egy egységesített interface felületet (middlewaret) alakítunk ki (ld. 4. ábra). Az alkalmazott middleware technológiát Japánban fejlesztették ki hatalmas állami támogatással, és ennek a japánok által kifejlesztett technológiának ez a projekt lenne az első európai alkalmazása, haszonélvezője. A japán fejlesztőkkel állandó és szoros kapcsolatban állunk.
A felügyeleti rendszer koncepciója
Tradicionálisan a csiszoló munkás megnézi a munkadarabot, eldönti, hogy mit kell csinálnia, majd végrehatja a feladatot. A munkás szeme helyettesíthető egy kamerával, de pusztán képfeldolgozással 100% biztonsággal eldönteni, hogy mit kell csiszolni, ma még aránytalanul drága. Ezért szükség van az operátor beavatkozására. Az operátor a kamera képén felismeri és bejelöli, hogy hol kell csiszolni, a robot a képet összeveti a munkadarab CAD rajzával és automatikusan megtervezi a csiszolófej mozgását (ld. 5. ábra). Ez lehetővé teszi, hogy mozgáskorlátozottak is nehéz fizikai munkát végezhessenek.
A betanítás koncepciója
Ennek alapja a mozgáskövetés és kiterjesztett valóság. Hagyományosan a robotot szokás végigvezetni azon a pályán, amelyet a munkafolyamat során követnie kell. A javasolt módszerhez egy erővisszacsatolás nélküli adatkesztyű elegendő (ez lényegesen olcsóbb az erővisszacsatolásos kesztyűnél). Az operátor vagy a tényleges munkadarabon, vagy annak 3D modelljén egy kiterjesztett valóságot felhasználva mutatja meg az elvégzendő feladatot.
6. ábra Mozgáskövetésen alapuló betanítás koncepciója
A tervezett részfeladatok az alapkutatás, ipari (alkalmazott) kutatás és kísérleti fejlesztés indoklása, egymásra épülése. A feladatok szakmai és tudományos tartalma, lépései, időbeni megvalósítása és várható eredménye. A tervezett feladatokat az 1. táblázatnak megfelelő módon összesítse. Gantt-táblázaton is mutassa be a projekt megvalósítási folyamatát! (2. táblázat) A Gantt-táblázaton minden feladatot egy időtartamával arányos hosszúságú sáv jelöl, a köztük fennálló logikai kapcsolatokat pedig nyilakkal szokás ábrázolni. (Az alábbi mintatáblázaton található A, B, C betűzés helyett a részfeladat sorszámát használja!)
Az eredmények terjesztésére szolgáló tájékoztatási terv. A terv tartalmazza (ipari kutatás keretében) a projekt eredményeinek széles körben történő terjesztését technikai és tudományos konferenciák keretében, és/vagy tudományos és műszaki szaklapokban, és/vagy szabadon hozzáférhető adattárakban, és/vagy nyílt és szabad felhasználású szoftvereken keresztül. A terv elkészítése kötelező, és a következőket kell tartalmaznia:
1. a projekt céljának rövid, közérthető leírását,
2. a tájékoztatási terv célját, célcsoportját, valamint
3. az alkalmazandó eszközöket, tevékenységet,
4. ütemezést
5. költségtervet.
Hasznosítási terv. A várható gazdasági eredmények, a projekt egyéb várható közvetlen és közvetett hatásainak részletes bemutatása. A fejlesztési eredmények felhasználásával nyert termék, eljárás vagy szolgáltatás piacra kerülésének várható eredményei nemzetközi és hazai szinten (példányszám, életciklus időtartama, a bekerülést meghaladó gazdasági eredmény, stb.). Készítsen szakszerű üzleti tervet a projekt végrehatására vonatkozóan, valamint a projekt eredményeire vonatkozó hasznosítási tervet.
A hasznosítási tervben az alábbi pontokat fejtse ki:
1. A projekt eredményeként létrejövő termék marketingje (piacelemzés, termékpozicionálás és a „value proposition” meghatározása, versenytársak bemutatása és a verseny elemzése, értékesítési csatornák, reklám)
2. Kockázatelemzés
(a fontosabb kockázatok és mérséklésük lehetőségei)
3. A projekt időtartalmán túli tőkeigény
(a fejlesztésekhez szükséges tőke mennyisége, időbeni eloszlása, a befektetők biztosítékai, kiszállási stratégiák)
4. Projekt eredményeinek hasznosítását bemutató pénzügyi terv (bevételi-kiadási terv, költségszerkezet bemutatása, eredményterv)
Internet alapú Telemanipuláció
A telemanipuláció az ember (operátor) érzékelési és cselekvési képességének kiterjesztése egy távoli helyre, ahol valamilyen oknál fogva nem lehet jelen, de ahol valamilyen manipulatív feladatot kell elvégeznie. A telemanipulációs folyamatot és ezzel együtt a telemanipulációt megvalósító berendezést alapvetően három részre oszthatjuk. Tekintsük a 15-1. ábrat
Az ember és a gép közötti kapcsolatot a mester eszköz teremti meg, amely fogadja az operátor parancsait, és egyben közvetíti a távoli környezet reakcióit az operátor felé.
A távoli környezetben az operátor utasításait a szolga egység hajtja végre, és egyben érzékeli a környezet reakcióját.
Külön egységként kell kezelni a mester és a szolga egység közötti információ közvetítő csatornát, amely napjainkban egy számítógépes hálózat vagy akár az Internet is lehet. Az Internet alapú telemaniuláció napjainkban az egyik legvonzóbb kutatási irány a hallgatók számára.
E megközelítés a passzivitás elméleten alapszik, amelyik közeli rokonságban van a Lyapunov stabilitás elmélettel. A passzivitás egy olyan elvont matematikai leírási mód, amelynek a teljesítmény és energiaáramlás fizikai leírásához hasonlítható. Passzív rendszerekben a betáplált teljesítmény nem haladhatja meg a kimeneten kinyert teljesítményt, ha a kettő megegyezik, akkor beszélhetünk veszteségmentes rendszerről. A telemanipuláció esetén (15-2. ábra) az operátor mozgatja a mester eszközt és a sebesség vm információt közvetítjük a szolga eszközhöz, amely a mester eszközt próbálja követni, ideális esetben vs= vm. A szolga eszköz kapcsolatba kerül a környezettel, amely visszahat egy Fs erővel és ezt kell visszajuttatni az operátorhoz a mester eszközön keresztül ideális esetben Fm=Fs. Időkésleltetés esetén vs(t)=vm(t-Td), Fm(t)=Fs(t-Td).
Az időkésleltetés okozta stabilitási problémák kezelésére e rendszert egy távvezeték hálózatnak tekinthetjük, ahol egy wV(t) feszültség, illetve wI(t) áram típusú változót vezetünk be, így a teljesítmény tér és időbeni eloszlása felírható: P(x,t)= wV(x,t)wI(x,t), ahol x távolságot jelöli. Egy stabil teleamipulációnak passzívnak kell lennie. , ahol Pdiss a teljesítmény disszipáció.
A hullám egy triviális választása (wI= vm és wV= Fs) nem vezet passzív rendszerhez, mindez megerősíti azt a tapasztalatunkat, hogy az időkésleltetési rendszernél stabilitási problémák jelentkeznek. Egy stabil rendszer eléréséhez a távvezeték modellünkbe szivárgást kell beépítenünk. Vezessük be a következő transzformációt: , ekkor az átvitel passzív veszteség mentessé válik.
A hullám impedanciához hasonló fogalmat is bevezethetünk. Ideális telemanipulációról akkor beszélhetünk, ha nincs visszaverődő hullám, ehhez a „lezáró impedanciának” a hullámimpedanciával kellene megegyeznie minden frekvencián. Ilyen illesztés természetesen nem létezik, de bizonyos frekvencia tartományban „átláthatóvá” tehető a telemanipulációs eszköz.
Nemlineáris karakterisztikájú súrlódással terhelt mester eszközök szabályozása, (zavarkompenzációja)
Az időkésleltetéstől eltekintve sem lehet a teleoperátor rendszer teljesen átlátható, az operátor szemszögéből a teleoperátor rendszer mozgatásához szükséges mindenfajta erő (beleértve a súrlódás legyőzéséhez és a mechanika mozgatásához, gyorsításához felhasznált erők) zavarásnak tekinthető. Nyilvánvaló, hogy a teleoperátor teljes dinamikáját csak végtelenül nagy teljesítménnyel lehetne kikompenzálni, ezért szükségszerű, hogy az operátor valamilyen minimális addicionális erőt érzékeljen a teleoperátor felöl, annak mozgatása érdekében, de lehetőség szerint ennek az erőnek olyan csekélynek kell lennie, amelyet az operátor már gyakorlatilag nem érzékel. E problémára korábbi kutatásainkban egy csúszómód alapú kompenzálási eljárást javasoltunk (ld. 15-4. ábra). A matematikai részletek mellőzésével: egy csúszómód alapú zavarbecslő eljárással előállítjuk az eq jelet, amely információt tartalmaz a rendszer paramétereinek bizonytalanságáról és a külső zavarásról, ezért visszacsatolva felhasználható azok kompenzálására, így a valós rendszer a modellként előírt ideális rendszerrel megegyezően viselkedik, vagyis ilyen módón (szabályozással, motorok mozgató erejének felhasználásával) meg tudjuk változtatni a telemanipulációs rendszerünk dinamikáját (bizonyos korlátok között). Ezt az eljárást egy érzékelő kesztyű (ld. 15-5. ábra) súrlódás kompenzációjára használtuk.
Kivonat
Olyan körülhatárol teret (szobát, utcát, épületet vagy nyílt terepet) tekintünk intelligensnek, amely a tér állapotát folyamatosan megfigyelő érzékelők célirányosan kiépített rendszerével van ellátva. Az érzékelőktől nyert információ feldolgozását követően egy mesterséges intelligencia alapú vezérlő algoritmus érzékelni tudja a térben zajló eseményeket, azokat bizonyos szempontok alapján egy megelőző tanulási folyamatot követően értelmezni, értékelni tudja, valamint az adott szituációnak leginkább megfelelő önálló döntést képes hozni.
A cikk áttekintést ad a világban folyó intelligens terekkel kapcsolatos kutatásokról és részletesen bemutatja az Intelligens Integrált Rendszerek Japán Magyar Közös Laboratórium e területen elért eredményeit. A cikk befejző fejezete gondolatébreztőnek felsorol néhány lehetséges alkalmazási területet.
Az írói képzelet szüleményei gyakran szolgálnak a mérnöki munkák kiindulópontjául. Pl. Verne korában elképzelhetetlennek tűnő – az akkori tudományos fantasztikus művekben felbukkanó – rendszerek a technológia fejlődésének köszönhetően napjainkban a mindennapos életünk szerves részévé váltak, mint például a telefon, televizó és a repülőgép. Természetesen ezek a rendszerek nem akkor és nem úgy jelentek meg, ahogy azt az írók megálmodták. Túl jutottunk 1984-en, de szerencsére a Nagy Testvér még nem figyel meg minket. Később, ahogy közeledtünk 2001-hez, Hideki Hashimoto professzort a Tokió Egyetemen egyre inkább az foglalkoztatta, hogy 2001-re megalkosson valami olyasmit, amelyet 2001. Űrodüsszeia című könyvben Arthur C. Clarke álmodott meg, nevezetesen a HAL nevű számítógéprendszert, amely képes az emberek mozgását és cselekedeteit kamerák segítségével követni, és az űrhajó eletronikus rendszereit vezérelni. Hashimoto professzor kutatásai nyomán az ’Intelligens tér’ kifejezés és az első ilyen megvalósított rendszer iSpace márkaneve 1996-ban robbant be a köztudatba [1,2]. Jelenleg ez az egyik legfontosabb kutatási területe az Intelligens Integrált Rendszerek Japán Magyar Közös Laboratóriumnak.
A kezdetekben az intelligens tér csupán két kamerából, számítógépből, és egy ‘házi’ készítésű feldolgozó szoftverből állt. A szofvert C-ben és tcl/tk nyelven íródott a mindenki által ingyenesen letölthető Real-Time Linux operációs rendszer környezetben. Később egy nagyméretű kivetítőt (254x192 cm) is csatoltak az Intelligens térhez, amelyen a rendszer immár válaszokat is adhatott. Ezek után a rendszer mobil robotokkal bővült, amelyek már ténylegesen az emberek segítségére lehettek. Kamerák száma tíz fölé növekedett (ld. 1. ábra). A kutatás az intelligens ember-gép rendszerekre fókuszál.
Napjainkban Japán szerte Hashimoto professzornak több tucat követője akadt. Ezek közül néhányat emelünk ki [3]. Elsőként kell megemlíteni az ugyan csak a Tokió Egyetemen berendezett Intelligens Robot Szobát, amely abban az értelemben több egy egyszerű robotokkal betelepített szobánál, hogy a padló, székek, a polcok és általában a bútorok stb. tele vannak érzékelőkkel (leginkább nyomásérzékelőkkel), így nyomon követhető, hogy a személy merre jár, hol ül le, mennyi ideig marad egy helyen, mikor melyik szekrényt nyitja ki, mit vesz ki onnan stb. Mindezekből a szoba megpróbálja megtanulni a szobában lakó személy viselkedési szokásait. Pl. ha este fáradtan megérkezik, akkor az első útja a bárpulthoz vagy a könyvespolchoz vezet-e.
Több egyetemen foglalkoznak kézmozdulatokkal vezérelt önjáró robotokkal [4], illetve villamos autókkal [5]. A tér folyamatosan figyeli az ember kezét, amely sokszor véletlenszerű, illetve más tevékenységgel kapcsolatos mozgásokat végez. A térnek először azt kell eldöntenie, hogy az adott mozgássor az intelligens térnek szóló parancs-e vagy egyéb tevékenység. Ehhez a térnek meg kell tanulnia bizonyos jellemzőket (kéz helyzete, a mozgás sebessége, stb.), amelyek alapján felismeri a neki szóló parancsokat. A Tokyo Metropolitan Institute of Technology egyetemen az intelligens térrel kiegészített parkolóban az ember kinézi, hogy hova szeretne parkolni, rá mutat egy üres parkolóhelyre, és az elektromos autó az intelligens tér segítségével automatikusan beáll a kijelölt helyre (a [6] japán nyelvű honlapról rövid videók letölthetők a kézmozdulatokkal vezérelt vezetőnélküli elektromos autóról).
Gifu közelében létrehoztak egy „Sweet Valley”-re átnevezett és így a „Silicon Valley”-re alliteráló helyen egy kutató intézetet. Gifu vezetése nem kisebb célt tűzött maga elé, mint hogy a túlnépesedett Tokióból áthelyezze az ország fővárosát az ország geometriai közepére, vagyis Gifuba. A japán gondolkodásmódra jellemzően ennek egy fontos lépéseként egy szellemi központot hoztak létre. E központ egyik büszkesége a COSMOS, a 3D virtuális szoba.
A névválasztást a következő angol kifejezés rövidítésével szokták magyarázni: COsmic Scale Multimedia Of Six-faces), de ez inkább szójáték. A COSMOS valójában egy 3mx3m-es szoba, amelynek mind a hat oldalára vetítővásznat lehet kihúzni, és azokon hat darab speciális kivetítő segítségével hat darab sztereóképet lehet megjeleníteni [7,8] (ld. 2. ábrát). A sztereókép a két szemünkkel látott két kép egyidejű megjelenítését jelenti, ha ezt szabad szemmel nézzük, akkor egy szellemképes vásznat látunk. Ezzel szemben, ha ezeket a sztereóképeket egy speciális szemüveggel nézzük, amelyik a két szemünk számára szétválasztja a két képet, akkor egy csodálatos 3D világ tárul elénk. Egyszerű sztereónézőket már sok évtizede készítenek, a COSMOS annyival több ezeknél, hogy a szemüvegen van egy pozícióérzékelő is. Ha elmozdítjuk a fejünket, akkor ezt a COSMOS érzékeli, és valós időben kiszámítja az új fejpozíciónak megfelelő sztereóképet, mind a hat irányban. Ha elérkezünk egy virtuális falhoz, akkor nyugodtan átléphetünk azon, és a COSMOS máris azt vetíti elénk, ami a falon belül látható. Ismeretes, hogy a grafikai számítások nagyon erőforrás igényesek, így a COSMOS működését is több nagyteljesítményű számítógép segíti.
Talán a fenti példákból érzékelhető, hogy a japán egyetemi kutatás szemléletében egy kicsit eltér az európaitól [9]. Úgy tartják, hogy az egyetemeknek 10-15 évvel a legfejlettebb technológiát képviselő ipar előtt kell járniuk, mert ha egy hallgató a jelen technológiai szintjét, a jelen iparában alkalmazható műszaki megoldásokat ismerné meg az egyetemen, akkor az iparba kikerülve azonnal visszahúzó erővé válna, ezzel szemben, ha olyan dogokat tanul meg, amelyek csak 10-15 év múlva válhatnak iparilag alkalmazhatóvá, akkor tudat alatt hosszú évekig az újdonságokat részesíti előnyben a döntéseiben és a fejlesztésekben. Mindannyian nosztalgiával szoktunk az egyetemi évekre gondolni, de ez az érzelmi kötődés kiterjed az első önállóan megoldott feladatokra, a feladat kapcsán elsajátított és sikerrel alkalmazott műszaki megoldásokra, matematikai eszközökre is. Az új műszaki megoldások alkalmazását sokszor csak az akadályozza, hogy először nehéz megbecsülni a fejlesztéshez szükséges időt. A szűkre szabott határidők miatt mindenki azt az utat részesíti előnyben, amelyet egyszer már végigjárt. A japán ipar nem csak az új munkaerőt, hanem az általa hozott új ismereteket is igényli, mindezt azzal is kifejezi, hogy anyagilag is értékeli a tudományos fokozatot. A posztgraduális képzésből kikerülő magasan képzett hallgatók többsége az iparban is talál tudományos felkészültséget igénylő feladatokat. Még egy szemléletbeli különbség, a Japán kormány az ezredfordulót megelőzően kialakult ázsiai válság hatására kétszeresére növelte az egyetemek és a kutatások központi támogatását, hogy pótolják a válság miatt kiesett ipari forrásokat, mivel a kormány a kutatókra komolyan számított, amikor a válságból kivezető utat kereste. Feltételezhetően ez a szemlélet is valamilyen mértékben hozzájárult ahhoz, amit japán csodának neveznek
Az intelligens tér kutatásának egy másik ágát az Óceán másik oldalán a „Mindenütt Jelenlévő Számítástechnika (Ubiquitous Computing)” névvel szokták illetni. [10], és ez a számítástechnika harmadik paradigmáját jelöli. Az első paradigma a kötegelt feldolgozás volt, amikor egy számítógépet sok ember használt lyukkártyákkal sorban állva. Aztán jött a személyi számítógépek kora, vagyis egy ember, egy gép. Most jutottunk el oda, amikor a számítástechnikai eszközök mindent behálóznak, mindenütt jelen vannak és egy emberre több számítástechnikai eszköz is jut, hisz ide tartoznak már a mobiltelefonok, PDA-ak, elektronikus naptárak stb. A Mindenütt Jelenlévő Számítástechnika segítségével lehet a teret intelligenssé tenni, de Mindenütt Jelenlévő Számítástechnika kutatások sokkal inkább magukra az eszközökre és az eszközök integrálhatóságára, vagyis az Intelligens Tér alapjául szolgáló technikai környezet megteremtésére, és nem annyira a teljes tér intelligenciájára irányulnak. Erre tipikus példa az MIT-n folyó „Intelligens Oxigén” Projekt
Az elnevezés onnan származik [11], hogy a számítástechnika úgy vesz körül minket, mint az oxigén, amelyet minden pillanatban ösztönösen és tudattalanul belélegzünk, és csak akkor veszünk tudomást a létezéséről, ha valamiért eltűnik. A számítástechnika is minden pillanatban jelen van a környezetünkben, de ahhoz hogy az oxigénhez hasonlóan tudomást se vegyünk róla, és csak ösztönösen használjuk, az ember-gép kapcsolatnak egyszerűnek és az ember számára természetesnek kell lenni. E kutatásnak a középpontjában a természetes emberi kommunikáció (beszéd, mozdulatok, gesztusok) megértése áll (ld. 3. ábra), hogy észre se vegyük, amikor egy géppel társalgunk, vagy amikor egy gép teljesíti kívánságainkat.
Az Intelligens Virtuális Iroda [12] azért készült, hogy modern technológiákkal segítse az emberek munkáját: így sokkal odaadóbban és hatékonyabban végezhetik mindennapos teendőiket. Ez azon a feltevésen alapul, hogy a hagyományos irodákban dolgozó emberek napjuk nagy részét kommunikációval töltik. Életük telefonok, faxok, e-mailek között zajlik. Manapság a kommunikációnak ez a módja bárhonnan elérhető, akár otthonról is. Ez a projekt az emberek munkáját hivatott segíteni – bárhonnan, bármikor – anélkül, hogy feladnánk a hagyományos otthon kényelmét. Ez különösen fontos lehet a fogyatékkal élők számára, mert egy virtuális irodában egyenrangú munkaerővé válhatnak. Az Intelligens Iroda az Egyesült Államok területén működik, oda bárki bejelentkezhet, és azon keresztül bonyolíthatja az ügyeit (faxokat, telefonokat, levelezéseit). Mód van videó konferencia lebonyolítására is, de természetesen időnként elengedhetetlen a személyes találkozó vagy személyes jelenlét az értekezleteken. Az ilyen eseményekre valóságos termet lehet igényelni a virtuális iroda fenntartójától, de az ilyen termekért nem kell folyamatosan fizetni, elegendő a tényleges megbeszélések idejére kibérelni.
Ada [13] egy szórakoztató rendszer, amely egyszerre több emberrel is kapcsolatba tud lépni fények és hangok segítségével. 5 hónap alatt 553,700 látogató találkozott vele a 2002-es Swiss Expon.
Ada felfogható egy mesterséges élőlénynek, aki játszik a látogatókkal. Audio-vizuális és egyéb érzékelőkkel tartja a kapcsolatot a külvilággal, például: nyomásérzékeny járólapokkal szerez tudomást arról, hogy hol és merre járnak nagyobb csoportok. Irányérzékelő mikrofonokkal határozza meg a hozzá beszélő látogatók helyztetét, térfigyelő kamerák segítségével felismer bizinyos mozdulatokat, gesztusokat. Válaszként egy kivetítőn valósidejű animációkat jelenít meg, amelyekbe élő képeket is belekever, a padló alatt színes fényeket villogtat, fénycsóvákkal pásztáz és mesterségesen előállított zenével szórakoztatja csodálóit. A hagyományos számítógépekkel ellentétben, amelyek szabály alapúak, az Ada egy neurális hálózat, amely megpróbálja utánozni az agyunk működését: tud tanulni és „megjósolhatatlan” lépéseket tud tenni. Az Ada reakciói mindig az aktuális lelkiállapotától függenek. A emberekhez vagy az állatokhoz hasonlóan az Ada a célirányos viselkedésével fejezi ki saját magát, amelyet a saját akarata vezérel. Ada-t úgy tervezték, hogy látogatói egy újszerű szintetikus lényként ismerjék meg. Találkozás az Ada-val egy kísérlet, amely ahhoz hasonlítható, mint amikor egy másik lénnyel találkozunk: ösztöneinktől vezérelve megpróbáljuk felfedezni a másikat, hogy önállóságot és biztonságot szerezzünk maguknak.
Az Intelligens terünket a Mindenütt Jelenlévő Számítástechnikára alapoztuk. A 4. ábra a számitástechnika harmadik paradigmájának megjelenését mutatja be a robottechnika területén. Korábban az egy robot-egy számítógép jegyében a roboton lévő saját intelligenciát próbálták növelni. A mindenütt jelenlévő számítástechnika korában a robot érzékelői és intelligenciája elosztható a térben. Ez, azzal a könnyen belátható előnnyel jár, hogy a robot olyan helyekről is információt kaphat, amelyek előtte takarásban vannak, illetve olyan eseményekről is értesülhet, amelyek tőle időben és térben távol történtek. De ez egy másik típusú problémát vet fel. Ugyanis sokkal nagyobb mennyiségű információt tudunk mikrofonokkal és kamerákkal begyűjteni, mint amennyit a leggyorsabb hálózaton keresztül továbbítani tudunk. E problémának a megoldása az, ha nem csak az érzékelőket osztjuk el a térben, hanem az intelligenciát és ezzel együtt az adatfeldolgozást.
Az intelligens tér koncepcióját az 5. ábra szemlélteti. Az intelligens tér egyik legfontosabb alkotóeleme a DIND (Distributed Intelligent Network Device, Elosztott Intelligenciájú Hálózati Eszköz). A DIND egységekhez érzékelők és beavatkozó eszközök csatlakoznak. Az érzékelőktől származó, sokszor redundáns (esetleg egymásnak ellentmondó) információkból lokális (DIND szintű) és az egész teret átfogó intelligens algoritmusokat felhasználva rekonstruáljuk a teret, vagyis egy olyan virtuális teret alkotunk, amely nem csak passzív elszenvedője a manipulációinknak, hanem az intelligens tér megpróbálja megérteni, hogy mi zajlik benne és esetleg a tér aktívan beavatkozok a térben lezajló eseményekbe. A különböző intelligens érzékelő DIND eszközök önállóan és egymással együttműködve alkotják a teljes tér intelligenciáját. Az Intelligens Térben mozgó minden intelligens egység intelligens érzékelőkkel rendelkezik. Ezeknek a mozgó intelligens egységeknek akkor is működniük kell, amikor a külső környezet megváltozik, ilyenkor a térben betöltött szerepüket önálló döntéssel meg kell változtatniuk. A mozgó egység mindig tudja a térben betöltött szerepét, és segíteni tudja a térben tartózkodó embert. Minden egyes mozgó egység egyidejűleg több csatornán keresztül kapja az érzékelők (kamerák, mikrofonok érzékelő kesztyűk) információit, továbbá a többi mozgó egység megerősítő információit is megkapja. Ezekből a sokszor redundáns (esetleg egymásnak ellentmondó) információkból a mozgó egységek egy virtuális tétként rekonstruálják az őket körülvevő teret. Ezen túlmenően a mozgó egységek a térben tartózkodó emberekkel is közlik az általuk rekonstruált virtuális teret. A kijelzés attól válik intelligensé, hogy alkalmazkodni tud az őt használó egyén kívánalmaihoz. Így az intelligens térben az emberek és a mozgó egységek együtt tudnak működni.
Az Intelligens Tér leggyengébb láncszeme az információs csatorna sebessége (sávszélessége). A jelenleg hozzáférhető leggyorsabb hálózatokon is az érzékelőkkel szerzett információ mennyiségnek csak egy töredéke vihető át, ezért nagyon fontos az információ lokális előfeldolgozása, illetve más megközelítésben az intelligencia elosztás a térben. Az egyes DIND egységek egy hierarchikus rendszerben kapcsolódnak egymáshoz, kialakítva az információ áramlás különböző szintjeit (lásd. 6. ábra). Minden DIND egységnek három alapfunkciója van: érzékelés, feldolgozás és kommunikáció más szintekkel A 6.b ábrán csak érzékeltetni akartuk a hierarchikus felépítést, részletesebb leírás a [1,2] irodalomban található. Napjainkban egyre többen foglalkoznak az épületen belüli lokalizációval. Kint a szabadban GPS segítségével a pozíció meghatározása megoldottnak tekinthető, de épületen belül ez még mindig komoly problémát jelenthet. A DIND elnevezés kifejezetten a Hashimoto laboratóriumhoz tartozik, de Japánban és szerte a világban sokan foglkoznak olyan egységek kifejlesztésével, amelyet DIND-nek tekinthetünk. Jelenleg fejlesztés alatt áll egy olyan egység, amely egy CMOS kamerából és három nagy teljesítményű digitális jelprocesszorból (DSP-ből) áll. Várhatóan néhány éven belül piacra kerülhet. A DIND kutatás egy másik ága az úgy nevezett middleware technológiához vezetett. Ennek lényege, hogy olyan szoftver felületetet kell kialakítani, amelyen keresztül a legkülönbözőbb egységek egymáshoz csatlakoztathatók legyenek egy grafikus interfészen keresz segítségével. Az egyes szoftver és hadver elemekket elegendő grafikusan összekötni, és a rendszer működésre képes (ld. 7. ábra). A kamera, pontosabban a kamerától származó videojel folyam összeköthető egy megjelenítő ablakkal, vagy egy élkereső ablakkal és csak ezt követően egy megjelenítő ablakkal. A különbség látható az ábrán. Egy másik példa a DIND-re a siketek kézjeleinek felismerése (ld. 8. ábra).. Ez az egység a teljes képi információ helyett csak az egyes ujj izületek elfordulási szögét, illetve a felismert betű jelét küldi tovább. A képen a kéz az U betű jelét mutatja. A baloldalon az eredeti videokép, a jobboldalon a kéz animált megjelenítése látható.
A virtuális 3D laboratórium kialakítása tudományos szempontból nem jelent kihívást, de segít abban, hogy az eredményeink látványosabban jelenjenek meg (Lásd 9. ábra). Ebbe a munkába könnyen bevonhatjuk a legfiatalabb hallgatókat is, így egyrészt az eredményeinket a hallgatók szélesebb köréhez tudjuk eljuttatni, másrészt segít a nagy teherbírású elszánt hallgatók kiválasztásában. A 3D laboratórium is Real-time Linux környezetben készült, ugyancsak ingyenesen letölthető Coin/Open Inventor valamint Open GL könyvtárak segítségével. Mindez talán bizonyítéka lehet annak, hogy bonyolult grafikai és valósidejű rendszereket is lehet nyitott forráskódú, ingyenes szoftverekre építeni. Természetesen a Real-time Linux operációs rendszernek meg vannak a maga korlátjai, de hazánkban messze nem terjedt el annyira, mint amennyire használható lenne.
Ez egy olyan önjáró robot, amelyre egy mozgatható (pan-tilt) kamerát, mikrofont, számítógép monitort és haptikus (erő, fizikai kontaktus) érzékelőt szereltünk fel ld. 10. ábra. A robotok vezérlésére és megjelenítésére az ún. „Plalyer” nyílt forráskódú, ugyancsak ingyen letölthető hálózati szoftver környezetet használtuk [14].
Az első lépésben az emberek körvonalát határozzuk meg és emeljük ki a háttérből [1,2] (lásd. 11. ábra). A második lépés a fej és a kéz helyének meghatározása (lásd. 12. ábra). Nagyon egyszerű, de kellően megbízható algoritmusok léteznek, amelyek segítségével fel lehet ismerni az emberi bőrszínt, és ennek segítségével a fej és a kéz helyzetét, amelyek általában nincsenek elfedve ruhadarabokkal. Ennek fontos szerepe lehet később bizonyos abnormális viselkedések felismerésében, pl. ha mindenkinek a keze a feje fölé emelkedik, vagy a földre kerül.
Sztereó kamera párokat alkalmazva az ember (pontosabban a fej) 3D pozíciója meghatározható (lásd. 13. ábra). Több kamera pár figyeli a teljes területet és ezek által belátható tartományok átfedik egymást.
Az intelligens tér figyeli és tárolja a sétáló ember mozgását (lásd. 14. ábra). Erre alapozva utasíthat egy robotot, hogy kövesse az embert úgy, mintha egy láthatatlan rugó lenne az ember és a robot között. Ha az ember hirtelen sietni kezd, akkor a robot kicsit lemarad, ha hirtelen leáll, akkor egy kicsit közelebb szalad a robot. A virtuális rugó rugalmasságát és csillapítását változtatni tudjuk.
Terjedelmi okok miatt csak az alapötlet ismertjük, részletek [8] irodalomban találhatók. A 15. ábra egy nagyon egyszerű példán keresztül szemlélteti, hogy miért lehet fontos a közlekedési szokások ismerete. Tegyük fel, hogy egy amerikai (ide írhatnánk magyart is) és egy japán ember rohan egymással szemben egy szűk folyosón. Az amerikaiban a jobboldali közlekedés miatt az van berögződve, hogy jobbra térjen ki, viszont tudjuk, hogy Japánban baloldali közlekedés van, és a japán ezért balra akar kitérni, így könnyen összeütközhetnek. Tegyük fel, hogy az előző eset egyik szereplője nem személy, hanem az Intelligens Tér által irányított robot. A 16. ábrán példaként két különböző közlekedési szokást mutatunk be. Az egyiket úgy jellemezhetjük, hogy minden akadálytól olyan távol, amennyire csak lehet. A másik egy rejtőzködő, az akadályok mögött megbúvó stílus. Hasonlóan definiálhatjuk a jobb, illetve baloldali közlekedési szokásokat. A különböző közlekedési szokások leírásának alapelvét a 17. ábrán mutatjuk be. A személy (robot) körül meghatározzuk az akadályokat. Ezek az akadályok taszítják (az akadály elkerülésére serkentik) vagy vonzzák (az akadály megközelítésére ösztönzik) a közlekedőt. A különböző irányok vonzó és taszító erőit összegezve határozhatjuk meg a tényleges haladási irányt. Ezek az erők a különböző irányokban különbözők lehetnek (pl. jobboldali közlekedésnél az út jobboldala vonz, a baloldal taszít), függenek az akadály távolságától, a személy (robot) sebességétől, az akadályok sűrűségétől, de még az egyén kedélyállapotától is, ezért a kognitív tudomány eredményeit is fel kívánjuk használni.
A legegyszerűbb esetben egy potenciál térrel is le lehet írni pl. egy „jobbra-hajts” közlekedési szabályt (ld. 18. ábra), de bonyolultabb esetben ez nem megfelelő, mert .pl. nem tartalmaz információt arra vonatkozólag, hogy egy akadályt miként lehet megkerülni. Ha az akadályok túl sűrűen vannak elhelyezkedve, akkor az ember sokkal közelebb megy az akadályokhoz. Pl. ha egy kisebb turistacsoport lazán áll valahol, akkor az ember az egész csoportot megkerüli, ezzel szemben, ha egy hatalmas tüntetés áll útjában, akkor kénytelen akár a testi kontaktust is vállalva átfurakodni magát a tömegen.
Ismeretes, a kamerák, számítástechnikai eszközök ára rohamosan csökken. Egyre több térfigyelő rendszert telepítenek és egyre több emberre lenne szükség, akik a képernyőt figyelve beavatkoznak, ha valamilyen szokatlan eseményt tapasztalnak, de szemben számítástechnikai eszközök árával, a biztonsági személyzet fizetése nem csökken, hanem inkább nő, ezért egyre nagyobb jelentősége lehet egy olyan intelligens térnek, amely bizonyos egyszerű kritériumok alapján meg tudja tanulni a térben zajló normális eseményeket, és azokat meg tudja különböztetni a szokatlantól. Egy könnyen érthető alkalmazási példa, egy bekamerázott bankfiók, ahol a felvett képeket feldolgozó szoftver felismeri, ha rendkívüli helyzet áll elő. Kérdés azonban, hogy milyen jelek alapján ismerhető fel a rendkívüli esemény? A bankrablás kétségkívül ilyen. A tenyerek fejmagasság fölé emelkednek („kezeket fel!”), vagy a fejek, kezek a padló szintjére kerülnek, ha a támadó az ügyfeleket, alkalmazottakat hasra fekteti (ld. 19. ábra). A képeken megjelenhetnek olyan személyek, akiknek az arca nem látható. Fel kell tehát ismerni a fejeket és a kezeket, ami a bőrszín alapján történhet meg. A digitalizált felvételeken meg kell keresni az emberi bőr színére jellemző kódokat. A következő lépés a helyzet meghatározása. Ugyanazt a fejet, kezet (pontosabban annak leképezését) meg kell keresni két különböző kamera képén. Ha tudjuk a kamerák helyzetét, akkor előbb-utóbb kiszámítható, meghatározható a személyek helyzete is. És rekonstruálhatóak a támadás fontos részletei. További szorosan vagy lazán kapcsolódó kutatási témákat találhatunk a [9] irodalomban.
Egy teljesen más jellegű alkalmazás lehet a vakvezető robot. Tokióban van egy pályaudvar, ahol több metró és vasúti vonal csatlakozik, és ahol naponta 2 millió ember fordul meg. Ez az állomás egy olyan többszintes föld alatti labirintus, ahol még a tősgyökeres japánok is gyakran eltévednek. A vakok számára az aluljáró a legnehezebb típusú terep, és a japánok eddig is nagyon sokat fordítotattak a vakok segítésére. Pl. a lépcsők korlátain brile írással tájékoztaják őket, hogy merre járnak, továbbá gyakorlatilag mindenütt az utcán és az aluljárókban bottal vagy cipőtalpon keresztül kitapintható sávokat helyeznek el, de ennél is nagyobb segítség lehet számukra egy vakvezető robot (ld. 20. ábra), amely egy ilyen labirintusban elkalauzolja őket, kiválasztja a legkevésbé zsúfolt utat. Ugyanez a robot sok ember életét mentheti meg, ha egy földrengés vagy tűz miatt pánikba esett embereket megfelelően tudja terelni. Ha a robotot az egész állomást behálózó intelligens tér informálni tudja az optimális menekülési utakról, akkor megakadályozhatja, hogy az emberek a vesztükbe rohanjanak.
Egy nagy kiterjedésű és összetett felügyeleti rendszer hatalmas területeket - városokat vagy akár egész országokat is lefedhet. Az érzékelők száma több ezerre vagy tízezerre is rúghat attól függően, hogy milyen jellegű információkra van szükségünk. Az általános intelligens felügyeleti rendszer fejlesztése kivitelezhető a ma hozzáférhető eszközökkel. A fenti általános felügyeleti rendszer egyik alkalmazása az intelligens-Épület, amely különböző intelligens -Szobák kombinációi egy egységes rendszerben (ld. 21. ábra). Az események (szokatlan viselkedésformák, behatolók jelenléte) érzékelhetők és a különböző forrásokból szerzett információ összegyűjthető. Például a rendszer egy birtokháborítót érzékel (és azonosít) a szobák egyikében. Ha az azonosított személy a későbbiekben egy másik szobába megy át, a mozgása a felügyeleti rendszer segítségével követhető az egész épületen belül. A megfigyelt területen - ezen információk alapján - a megfelelő lépések kezdeményezhetők. A kritikus események megjeleníthetők a grafikus kezelői felületen, az operátorok azonosíthatják az események forrását, illetve ők is közvetlenül beavatkozhatnak.
E cikket Orwell „1984” című könyvének említésével kezdtük és a záró mondatokkal is erre a műre kell utalnunk. Az intelligens tér olyan távlatot nyithat előttünk, amely sok tekintetben kényelmesebbé teheti az életünket, de egészen biztos, hogy azoknak, akik olvasták Orwell kiváló könyvét, a Nagy Testvér jut eszébe az intelligens tér hallatán. A szerző nagyon reméli, hogy létezik a fejlődésnek olyan iránya, amelyben az Intelligens Tér az embereket szolgálni, és nem megnyomorítani fogja.
Hivatkozások:
[1] http://dfs.iis.u-tokyo.ac.jp/Research/smc/index.html
[2] Peter Korondi, Hideki Hashimoto, ”INTELLIGENT SPACE, AS AN INTEGRATED INTELLIGENT SYSTEM”, Keynote paper of International Conference on Electrical Drives and Power Electronics, Proceedings pp. 24-31. 2003.
[3] http://www.ics.t.u-tokyo.ac.jp/ipa/ipa2001/publication/satomori/rr2.html
http://www.mech.chuou.ac.jp/made/index_e.htm
[5] http://www.fml.ec.tmit.ac.jp/
[6] Eri Sato, Toru Yamaguchi,”HUMAN TO ROBOTS COMMUNICATION USING ONTOLOGICAL NETWORK SYSTEM”, International Journal of Innovative Computing, Information and Control ICIC International c°2006 ISSN 1349-4198, Volume 2, Number 1, February 2006
http://www.stp.pref.gifu.jp/htmlstpc/cosmos.htm
[8] S. Mizik, P. Baranyi, P. Korondi, and M. Sugiyama „Virtual Training of Vector Function based Guiding Styles”, Transactions on AUTOMATIC CONTROL and COMPUTER SCIENCE, ISSN 1224/600X vol. 46(60) No.1 pp. 81-86. 2001.
[9] P. Korondi “Gondolatok a Tokió Egyetemen folyó mérnökképzésről”, I-II. Rész Electrotechnika, vol. 91. no. 5 pp.204-207, and no.6. pp.253-256. 1998.
[10] http://www.cc.gatech.edu/classes/cs6751_97_fall/projects/say-cheese/marcia/mfinal.html
[11] http://oxygen.lcs.mit.edu/Overview.html
[12] http://www.theintelligentoffice.com
Ez a jegyzet instrukciókat és technikai információkat ad a General Mechatronics mozgásszabályozó rendszer rendszerbe állításához. A rendszer sok szervo alkalmazáshoz használható, mint robotokhoz, CNC gépekhez, zárakhoz, plazmavágókhoz, stb. Könnyen beilleszthető egy LinuxCNC-be egy teljes gépvezérlő megoldáshoz.
A PCI mozgásszabályozó kártya egy FPGA-n és egy PCI híd felületű ASIC-on alapszik. A kártya egész szélén csatlakozók vannak, hogy a leggyakoribb rendszerelemekhez csatlakoztatható legyen, amelyek egy automatizált robotelemben megtalálhatók.
A kártya belső felén hat darab RJ50 moduláris AXIS csatlakozó található a differenciálműhöz vagy a klasszikus analóg szervokhoz. Négy darab kisméretű DIN sínre szerelt AXIS modullal lehetséges a hat különböző szervo konfiguráció beállítása költséghatékony módokhoz. Az interfész a megfelelő AXIS modulok pontos kombinációival adható meg az aktuális szervo konfigurációkhoz.
Jobb oldalról nézve a felső sarokban egy CAN busz interfész látható (RJ12 moduláris csatlakozó): ez a modern digitális szervo rendszerekhez van, amelyek CAN buszon kommunikálnak.
Középen 4-szer 8 db általános célú I/O pin van elhelyezve egy szabványos lapos fővezetéken. Ezek a használatlan I/O pinek a LinuxCNC-ben szinte bármilyen célra bekonfigurálhatók. A legtöbb esetben optikai leválasztás javasolt a PCI kártya és a PC megvédésére a zavarok és a veszélyes feszültség tranziensek ellen, amelyek a gyári környezetből jöhetnek.
A bal felső sarokba egy RS485 buszt terveztek a kompakt DIN sínre szerelhető modulbővítések beszereléséhez. Jelenleg egy 8-csatornás digitális bemenet, egy 8-csatornás relés kimenet és egy analóg I/O (4x 10 Voltos kimenet and 8x 5 Voltos bemenet) modul használható. Maximálisan 16 modul csatlakoztatható a buszhoz egyidejűleg.
Végül pedig az alján egy 26 pin-es lapos fővezeték található 20 optikailag leválasztott bemeneti pinnel. 6-szor 3 db a két álláspontú kapcsoló közvetlen kapcsolatához és egy önvezérlésű szenzor minden egyes tengelyhez. Továbbá itt még két optikailag leválasztott E-stop bemenet is található.
Ezekkel a funkciókkal kisméretű automatizált gyártási elem sikeresen vezérelhető, egy rövid idejű rendszerbe állítási procedúrával. A következő ábra a szabályozó rendszerhez kapcsolódó általános eszközkapcsolókat demonstrálja:
Ez a fejezet a PCI kártya csatlakozóit, pin-jeit és elektromos karakterisztikáit írja le.
Minden pin átkonfigurálható digitális bemenetnek vagy kimentnek.
Pin-kivezetés (Pinout)
Bemenő (input) elektromos karakterisztikák
Ezek egyszerű nem leválasztott (non-isolated) I/O portok általános célú használatra. Minden feszültségszint a PC földjéhez van viszonyítva. Nem ajánlott azon jelek közvetlen bekötése, melyek átléphetik az abszolút maximális értékeket.
Abszolút maximális értékek
Maximális bemenő feszültség:
Minimális bemenő feszültség: 0Volt
4x8 kimenet (output) maximális árama:100mA
Logikai szintek
Minimális high-level (logikai magas) bemenő feszültség:
Maximális low-level (logikai alacsony) bemenő feszültség:
Kimenő elektromos karakterisztikák
A totem pole kimenetek kis áramkörök, melyeket sorosan kapcsolt ellenállás véd, lsd. az ábrán:
Kimenő logikai szintek (terheletlen)
Minimális high-level kimenő feszültség:
Maximális low-level kimenő feszültség:
Minden feszültségszint az Axis csatlakozón a PC földjéhez van viszonyítva. Ajánlott az Axis modulok használata, amikor a szervoerősítő modulokat a PCI kártyához csatlakoztatjuk.Lásd: 3. fejezet
Encoder bemenő karakterisztikák
Abszolút maximális értékek
Maximális bemenő feszültség:
Minimális bemenő feszültség:
Logikai szintek
Minimális high-level bemenő feszültség:
Maximális low-level bemenő feszültség:
Hiba (Fault) bemenetek
Logikai szintek
Minimális high-level bemenő feszültség:
Maximális low-level bemenő feszültség:
Enabled (engedélyező) kimenetek
Az engedélyező (enable) kimenete minden Axis-nak közös.
Maximális kimenő forrás áram:
Step, Direction és DAC serial line kimeneti karakterisztikái
A totem pole kimenetek kis áramkörök, melyeket sorosan kapcsolt ellenállás véd, lásd az ábrán:
A kimenő pin-ek egyenértékű áramköre (Step, Direction, és DAC serial line) az Axis csatlakozón.
Kimenő logikai szintek (terheletlen állapot)
Minimális high-level kimenő feszültség:
Maximális low-level kimenő feszültség:
Pinout
Bemenő elektromos karakterisztikák
Mechanikus kapcsolót vagy nyitott kollektoros kimenetet lehet csatlakoztatni a bemeneti pin-ek és a külső föld (GND) közé.
A logikai szintek a és Bemenő pin-ek közötti feszültségesésre és az áramfogyasztásra vonatkoznak
Minimális high-level feszültségesés:
Maximális javasolt high-level feszültségesés:
Maximális low-level feszültségesés:
Abszolút maximális értékek
Forward feszültségesés és Bemenő pin-ek között:
Forward áram és Bemenő pin-ek mentén:
Reverse feszültségesés és Bemenő pin-ek között:
CAN
Szín: Narancssárga
Villog, adatkommunikáció esetén
On, ha bármelyik buffer betelt – kommunikációs hiba
Off, ha nincs adatkommunikáció
RS485
Szín: Narancssárga
Villog, amíg a modulok inicializálása folyik a bus-on
On, ha az adatkommunikáció minden inicializált modul között fennáll
Off, ha bármelyik inicializált modul valamilyen hiba miatt kiesik
EMC
Szín: Fehér
Villog, ha a LinuxCNC fut
Egyébként off.
Boot
Szín: Zöld
On, ha a rendszer sikeresen boot-olt
Egyébként off.
Hiba
Szín: Piros
Off, ha nincs hiba a rendszerben
Villog, PCI kommunikációs hiba esetén
On, ha a watchdog timer túlcsordul
Minden méret mm-ben van megadva. A nem jelölt méretek megfelelnek a PCI specifikációnak és szabványnak.
Ez a fejezet leírja, hogyan csatlakoztassunk szervo modulokat a PCI mozgásszabályozó kártyához egy gép vezérlése céljából.
Kisméretű DIN sínre szerelt interész modulokkal könnyen csatlakoztathatunk különböző típusú szervo modulokat az Axis (tengely) csatlakozókhoz. Ebben a fejezetben először 7 különböző rendszerkonfigurációt mutatunk be, amelyekkel tipikus alkalmazások értékelhetőek. Bemutatjuk a 4 elérhető interfész modul részletes leírását.
A következő blokkdiagrammoknak megfelelően kell csatlakoznia a moduloknak, hogy a megfelelő szervohajtás kiértékelhető legyen. Minden moduláris kábel (RJ50 és RJ45) legyen „straight wired” (UTP- vagy telefonkábel).
Analóg rendszer encoder visszacsatolással
Ez a kialakítás használható azon konvencionális analóg szervo modulok illesztésére, amelyek feszültségszint referenciajel bemenettel rendelkeznek.
Inkrementális digitális rendszer encoder visszacsatolással és differenciális kimenettel
Ez a kialakítás használható háromtípusú inkrementális szervo modul illesztésére a következő differenciális referencia bemenetekkel: (Lépés/Irány) Step/Direction, Clockwise/Counter clockwise (óra járásval megyegyező/ellentétes) és Kvandráns A/B. Lehetséges a szervo pozíció olvasása PC-n az encoderes visszacsatolásra csatlakozva.
Inkrementális digitális rendszer encoder visszacsatolással és TTL kimenettel
Ez a kialakítás használható háromtípusú inkrementális szervo modul illesztésére a következő TTL-szint referencia bemenetekkel: Step/Direction, Clockwise/Counter clockwise és Kvandráns A/B. Lehetséges a szervo pozíció olvasása PC-n az encoderes visszacsatolásra csatlakozva.
Inkrementális digitális rendszer differenciális kimenettel
A 3.1.1.2.-vel megyező konfiguráció, de elszigetelés és encoderes evisszacsatolás nélkül. Ez a kialakítás akkor javasolt, ha a szervo modul optikai leválasztású bemenetekkel rendelkezik.
Inkrementális digitális rendszer TTL kimenettel
A 3.1.1.3.-vel megyező konfiguráció, de elszigetelés és encoderes visszacsatolás nélkül.
Abszolut digitális (CAN alapú) rendszer
A szervo modulok a CAN bus interfészen keresztül csatlakoznak.
Abszolut digitális (CAN alapú) rendszer konvencionális (A/B/I) encoder visszacsatolással
A szervo modulok a CAN bus interfészen kersztül csatlakoznak. Ezt bővíti ki egy konvencionális encoder visszacsatolás egy optikai leválasztón keresztül a RJ50 Axis csatlakozón.
Ez a modul az összes PC földre vontatkoztatott jel leválasztására, valamint TTL vagy differenciális kimeneti encoderek illesztésre használható. A modul csatlakozó oldala a PCI kártya Axis konnektorához csatlakozatható. A gépoldali referencia kimenet az AXIS – Csatlakozó modulhoz, az AXIS – Differenciális meghajtó modulhoz, vagy közvetlenül (hard wire) a szervo szabályozó TTL bemeneteihez csatlakoztatható.
Pinout – Vezérlő oldal (Controller side)
Pinout – Gépi oldal (Machine side)
Elektromos karakterisztikák
A pin-ek kimeneti karakterisztikái referencia kimeneti (RJ50) csatlakozón:
Minden kimenő pin TTL kompatibilis.
Maximális kimenő high-level feszültség:terhelés nélkül
Minimális kimenő high-level feszültség:
Maximális kimenő low-level feszültség:
Hibajel bemenet
Hiba bemeneti pin-ek karakterisztikái referencia kimeneti (gépi oldal iRJ50) csatlakozón:
Minimális bemenő high-level feszültség:
Maximális bemenő low-level feszültség:
Abszolút Maximális bemenő feszültség:
A pin-ek bemeneti karakterisztikái az encoder bemeneti (RJ45) csatlakozón:
DC karakterisztikák a differenciális kimeneti encoderen:
Minimális high-level bemenő feszültségkülönbség:
Minimális low-level bemenő feszültségkülönbség:
Maximális differencális bemenő feszültség:
DC karakterisztikák a TTL kimeneti encoderre: A negatív differenciális bemeneteket nyitott áramkörként kell hagyni. A kimeneteket a pozitív bemenetekre kell kötni.
Minimális bemenő high-level feszültség:
Maximális bemenő low-level feszültség:
Maximális frekvencia szimmetrikus négyszögjelnél:
Az encoder táp maximális terhelési árama:
A pin-ek bemeneti DC karakterisztikái a PCI kártya – RJ50 (vezérlő oldali) csatlakozón:
Minimális bemenő high-level feszültség:
Maximális bemenő low-level feszültség:
Abszolút Maximális bemenő feszültség:
Hiba kimeneti pin-ek kimenő DC karakterisztikái a PCI kártya – RJ50 (vezérlő oldali) csatlakozón:
Maximális kimenő high-level feszültség:terhelés nélkül
Minimális kimenő high-level feszültség:
Maximális kimenő low-level feszültség:
Hiba kimenet egyenértékű áramkör
Supply feszültség:
Ajánlott tápfeszültség:
Abszolút Maximális tápfeszültség:
Abszolút Minimális tápfeszültség:
Maximális áramfogyasztás encoder nélkül:
Maximális áramfogyasztás encoderrel:
Ez a modul a PCI kártya digitális jelét konvertálja analóg kimenetté, hogy meghajtson egy sebesség vagy áram módú szervo erősítőt. Ezen modul használatakor a legtöbb esetben leválasztó modul alaklamazása ajánlott, lásd 3.1.1.1. fejezet “ Analóg rendszer encoder visszacsatolással”.
Ezen modul vezérlő oldali RJ50 csatlakozóját egy AXIS – Optika leválasztó gépi oldalához vagy közvetlenül a PCI kártyához (ha a szervo erősítő leválasztott) kell csatlakoztatni. A gépi oldal terminál kimenet egy analóg típusó szervo erősítőhöz csatlakoztatható.
Vezérlő oldal pinout
Gépi oldal pinout
Elektromos karakterisztikák
Vezérlő oldali RJ50 csatlakozó:
Soros port (UART) egyirányú soros kapcsolatban – csak serial line+ csatlakozásakor (legtöbb esetben):
Serial line+ Minimális high-level bemenő feszültség:
Serial line+ Maximális low-level bemenő feszültség:
Soros port differenciális kapcsolatban:
Minimális high-level bemenő feszültségkülönbség:
Maximális low-level bemenő feszültségkülönbség:
Hibajel – nyitott emitteres kimenőjel:
Maximális high-level kimenő feszültség:
Enabled bemenő jel:
Minimális high-level bemenő feszültség:
Maximális low-level bemenő feszültség:t
Gépi oldal terminál csatlakozó:
DAC kimenet:
Maximális kimenő feszültség:
Minimális kimenő feszültség:
Kimenő feszültségszint-pontosság:
24V kimenet:
Maximális kimenő load áram:
Enabled kimenőjel:
Kollektor-emitter letörési feszültség:
Emitter-kollektor letörési feszültség:
Maximális kollektor sötétáram:
További információért tekintse meg a Toshiba TLP281 optocsatoló adatlapját.
Hiba bemenő jel - LED:
LED forward feszültség:
További információért tekintse meg a Toshiba TLP281 optocsatoló adatlapját.
Működési feltételek
A következő feltételeknek kell teljesülnie az analóg feszültségszintre és az engedélyező (enabled) jelre vonatkozóan a kimenten, hogy meghajtsa az analóg szervo modult:
Külső 24 Volt DC táp csatlakoztatva van és a digitális részre 5 Volt van kapcsolva a leválasztóról vagy a PCI kártyáról
Nincs watchdog hiba
Nincs DAC feszültségszint hiba
Az érvényes digitális referenciajel UART-on érkezik a PC-ből
Nincs szervo hiba – A hibajel a szervo modulból LOW
Hajtás (Drive) engedélyezve – Enabled (engedélyező) jel a PC-ből HIGH
Hibafeltételek
A következő folyamatábra írja le az AXIS DAC modul hibakezelését:
Watchdog reset következett be:
- LED folyamatosan illog
- A szervo modulból érkező hibajel HIGH-ra van felülírva
- A szervo modulból érkező engedélyezett jel (Enabled) LOW-ra van felülírva
- Az analóg kimenet megyegyezik 0 V-tal
- Visszavonás: ha az engedélyező jel a PC-ből ki- majd bekapcsol, vagy power reset történik.
DAC kimenő feszültségszint nem egyezik meg a meghatározott feszültséggel (DAC error):
- LED másodpercenként egyszer felvillan
- A szervo modulból érkező hibajel HIGH-ra van felülírva
- A szervo modulból érkező engedélyezett jel (Enabled) LOW-ra van felülírva
- Az analóg kimenet megyegyezik 0 V-tal
- Visszavonás: power reset esetén. Ha a hiba továbbra is fennáll, cserélje ki a DAC modult.
Nincs digitális bemenet vagy az UART keret (frame) hibás:
- LED másodpercenként kétszer felvillan
- A szervo modulból érkező hibajel HIGH-ra van felülírva
- A szervo modulból érkező engedélyezett jel (Enabled) LOW-ra van felülírva
- Az analóg kimenet megyegyezik 0 V-tal
- Visszavonás: ha ismét érvényes a digitális bemenő jel az UART vonalon.
Hibajel a szervo modulból HIGH:
- LED másodpercenként háromszor felvillan
- Az analóg kimenet megyegyezik 0 V-tal
- Visszavonás: ha a hibajel újra LOW értékű.
Enabled (engedélyezett) jel a PC-ből LOW:
- LED kikapcsolva.
- Az analóg kimenet megyegyezik 0 V-tal
- Visszavonás: ha az engedélyezett jel újra HIGH értékű
Ez a modul olyan szervo modulok illesztésére használható, melyek differenciális referencia bemenettel rendelkeznek.
A vezérlő oldal közvetlenül a PCI kártya axis konnektorához csatlakoztatható, ha a kontrollernek nincs szüksége optikai leválasztásra vagy encoderes visszacsatolásra. Minden más esetben a vezérlő oldal egy an AXIS – Optikai Leválasztó modul gépi oldalának RJ50-es konnektorához kell csatlakoztatni.
Vezérlő oldal pin-kivezetés
Gépi oldal pin-kivezetés
Elektromos karakterisztikák
Vezérlő oldal RJ50 csatlakozó:
TTL bemenetek (pin-ek: 6, 7, 8, 10):
Minimális high-level bemenő feszültség:
Maximális low-level bemenő feszültség:
További információért tekintse meg az AM26LS31 differenciális vonalmeghajtó adatlapját.
Gépi oldal terminál csatlakozó:
Differenciális kimenetek:
Maximális low-level kimenő áram:20mA
Maximális high-level kimenő áram:-20mA
További információért tekintse meg a M26LS31 differenciális vonalmeghajtó adatlapját.
Engedélyező (Enabled) kimenőjel:
Kollektor-emitter letörési feszültség:
Emitter-kollektor letörési feszültség:
Maximális kollektor sötétáram:
További információért tekintse meg a Toshiba TLP281 optocsatoló adatlapját.
Hiba (Fault) bemenőjel- LED:
LED forward feszültség:
További információért tekintse meg a Toshiba TLP281 optocsatoló adatlapját.
Ez a modul a referencia kimenetek vagy az encoder bemenetek moduláris kapcsolatainak egy terminál csatlakozóra történő kiírására. Encoder esetén hasznos lehet a jelek szétválasztása a szervo modul és a PC-be menő encoderes visszacsatolás között.
Csatlakozók
Vezérlő oldal RJ50 & RJ45 moduláris csatlakozók
A 10-pin-es RJ50 konnektor be tud fogadni 8-pin-es RJ45 csatlakozót is. Encoder jelek szétválasztása esetén két RJ45 encoder kábel használható.
Vezérlő oldal RJ50 – Referencia vagy Encoder pinout:
Vezérlő oldal RJ45 – Encoder pin kivezetés:
Az encoder tápellátása nincs csatlakoztatva a másodlagos (RJ45) konnektoron, biztosítva azt, hogy az encoder szenzor csak egy forrásból kap ellátó feszültséget.
Gépi oldal SK10P - Terminál csatlakozó pin kivezetései:
Ebben a fejezetben minden a rendszerhez lényeges hall beállítás megtalálható, kivéve az RS485 buszon lévő moduloké.Azokhoz a modulokhoz a következő fejezetben találhatóak.
Az összes pin és ezen fejezet paraméterei kiegészülnek a következő két fügvénnyel:
gm.<nr. of card>.read
gm.<nr. of card>.write
A legtöbb alkalmazásnál mindkettőt hozzá kell adni a szervo thread-hez (szál) adott sorrendben (először olvasás, utána írás).
A mozgásszabályozó kártyának hat encoder modulja van. Mindegyiknek három csatornája van:
A-csatorna
B-csatorna
I(index)-csatorna.
Képes négyszög encoder jelek és Step/Dir számolására.Mindegyik encoder modul a megfelelő RJ50 csatlakozóhoz van csatlakoztatva.
Minden encoder pin és paraméter neve a következővel kezdődik:
gm.<nr. of card>.encoder.<nr of axis>,ahol <nr of axis> 0-tól 5-ig van.
Például: gm.0.encoder.0.position►az encoder modul 0-s tengelyének helyzetére utal.
A PCI kártya a LinuxCNC-től függetlenül számolja az encoder jeleket.A hal pinek a gm.<nr of card>.read függvénnyel frissíthetőek.
.reset(bit, In)► Ha Igaz állapotban van, újraindítja a számlálót és a pozíciót 0-ra.
.rawcounts(s32, Out)► A raw count a számlálóban, de érzéketlen a resetre vagy az index impulzusra.
.counts(s32, Out)► Pozíció az encoder számlálóban.
.position(float, Out)► Pozíció léptékezett egységekben (mértékegységben) (=.counts/.position-scale).
.index-enabled(bit, IO) ►Ha Igaz, a számlálót és a pozíciót kerekíti, vagy visszaállítja 0-ra (az index-módtól függ) az I-csatorna következő felfutó élére.Ha a index állította vissza az értéket,akkor az index-enabled pin is 0 lesz, mindaddig amíg a kapcsolt hal pin el nem állítja azt.
.velocity(float, Out) ► Sebesség léptékezett egységek per másodpercben.A GM encoder magas frekvenciás hardware számlálót használ az encoder impulzusok között, hogy kiszámítsa a sebességet a mért időből.Ez nagyban lecsökkenti a kvantálási zajt az egyszerűen differenciált pozíció kimenethez képest.Ha a mért sebesség a min-velocity-estimate alatt van, akkor a sebesség kimenete 0.
.counter-mode(bit, R/W)► Ha Igaz, a számláló számolja az A-csatorna bemenetének minden egyes felfutó élét a B-csatorna által meghatározott irány alapján.Ez hasznos az egycsatornás (nem kvadratikus) vagy az impulzus jelszenzor kimenetének számolására.Ha hamis, akkor kvadratikus módban számol.
.index-mode(bit, R/W)► Ha Igaz és az .index-enabled is igaz, akkor a .counts és a .position kerekítve lesz(.counts-per-rev-től függ) az I-csatorna felfutó élénél. Ez hasznos néhány impulzus hiba kijavítására, amit a zaj okoz.Round módban elengedhetetlen a.counts-per-rev paraméter korrekt beállítása.Ha az .index-mode Hamis és az .index-enabled igaz, akkor a .counts és a .position törlődik az I-csatorna impulzusánál.
.counts-per-rev(u32, R/W)► Meghatározza, hogy mennyi számolás (impulzus) van két index impulzus között. Csak kerekítéses módban használják, tehát ha mind az .index-enabledés.index-mode paraméterek Igazak. A GM encoder az encoder jelét 4x módban dolgozza fel, tehát például egy 500 CPR encodernél 2000-re kell állítani. Ez a paraméter könnyen mérhető az .index-enabled Igazra és az .index-mode Hamisra állításával (vagyis a .counts törlődik az I-csatorna impulzusára), így a tengely kézzel elmozdítható és látható a .counts pin maximuma a halmeter-en.
.index-invert(bit, R/W)► Ha Igaz, az I-csatornás esemény (törlés vagy kerekítés) az I-csatorna jelének lefutó élére történik, külöben pedig a felfutó élre.
.min-speed-estimate(float, R/W)► Meghatározza azt a minimális sebesség értéket, amelynél a .velocitynem nullára lesz állítva. Ezt a paramétert túl alacsonyra állítva hosszú időbe telhet, mire a sebesség nulla lesz az encoder impulzusok megállása után.
.position-scale(float, R/W)►A skálázás számolás (impulzus) per hosszúság értékben. .position=.counts/.position-scale.Például ha a position-scale 2000, akkor 1000 encoder számlálás 0.5-ös pozíció egységeket fog alkotni.
Állítsuk a 0-ás encoder modult hogy 500 CPR kvadratikus jelet fogadjunk. Használjuk a reset-et a pozíció kerekítéséhez:
setp gm.0.encoder.0.counter-mode 0# 0: quad, 1: Step/Dir
setp gm.0.encoder.0.index-mode 1# 0: törli a pozíciót az indexnél, 1:kerekíti a pozíciót az indexnél
setp gm.0.encoder.0.counts-per-rev 2000# GM encoder 4x módban, 4x500=2000
setp gm.0.encoder.0.index-invert 0
setp gm.0.encoder.0.min-speed-estimate 0.1#pozícióegység/s-ben
setp gm.0.encoder.0.position-scale 20000#10 encoder fordulat esetén a gép egy pozícióegységet mozog (10x2000)
Az encoder pozícióját a LinuxCNC pozíciójának visszacsatolásához csatlakoztatja:
net Xpos-fb gm.0.encoder.0.position => axis.0.motor-pos-fb
A mozgásszabályozó kártyának hat stepgen modulja van,egy minden tengelyhez. Mindegyiknek két kimeneti jele van. Step/Direction, Up/Down vagy Kvadratikus (A/B) impulzusok előállítására képes. Mindegyik stepgen modul a megfelelő RJ50 csatlakozó pinjeihez van kapcsolva.
Az összes stepgen pin és paraméter neve a következővel kezdődik:
gm.<nr. of card>.stepgen.<nr of axis>,ahol a tengely nr-je 0-tól 5-ig lehet.
Például: gm.0.stepgen.0.position-cmd►a 0. kártya 0. tengelyén lévő stepgen moduljának a pozíció parancsára utal.
A PCI kártya step impulzusokat generál LinuxCNC-től függetlenül. A hal pinek agm.<nr of card>.write függvénnyel írhatók felül.
.enable(bit, In)► A stepgen csak akkor ad impulzusokat, ha ez a pin igaz.
.count-fb(s32, Out)► Pozíció visszacsatolás számítási egységekben.
.position-fb(float, Out)► Pozíció visszacsatolás pozíció egységekben.
.position-cmd(float, In)► Elvárt pozíció pozíció egységekben. Csak pozíció módban használható.
.velocity-cmd(float, In)► Elvárt sebesség pozícióegység/másodpercben.Csak sebesség módban használható.
.step-type(u32, R/W)►Ha 0, a modul Step/Dir jelet produkál. Ha 1, Up/Down ugrás jeleket produkál. És ha 2, kvadratikus kimenő jeleket produkál.
.control-type(bit, R/W)►Ha Igaz, a .velocity-cmd-t referenciaként használják és a sebesség vezérlő a kimenet frekvenciáját megfelelően állítja. Ha Hamis, a.position-cmd-t használják referenciaként és a pozíció vezérlő számolja a kimenet frekvenciáját.
.invert-step1(bit, R/W)►Invertálja az 1-es csatorna kimenetét (Ugrás jel StepDir módban)
.invert-step2(bit, R/W)►Invertálja az 2-es csatorna kimenetét (Dir jel StepDir módban)
.maxvel(float, R/W)► Maximális sebesség pozícióegység/másodperc-ben. Ha 0.0-ra van állítva, akkor a.maxvel paraméter nincs figyelembe véve.
.maxaccel(float, R/W)►Maximális gyorsulás pozíció/másodperc2-ben. Ha 0.0-ra van állítva, akkor a .maxaccel paraméter nincs figyelembe véve.
.position-scale(float, R/W)►Skálázás lépés/hosszúságegység-ben.
.position-fb=.count-fb/.position-scale.Például ha a position-scale 1000, akkor 1 pozícióegység vezérlés 1000 lépés impulzust eredményez.
.steplen(u32, R/W)►A lépés impulzus hossza nano-szekundumokban.
.stepspace(u32, R/W)►Minimális idő két impulzusugrás között nano-szekundumokban.
.dirdelay(u32, R/W)►Minimális idő impulzusugrás és irányváltás között nano-szekundumokban.
A megfelő értékek beállításához segítséget nyújt az alábbi időzítési diagramok:
Állítsuk a 0-ás stepgen modult, hogy 1000 lépés impulzust generáljon pozícióegységenként:
setp gm.0.stepgen.0.step-type 0# 0:stepDir,1:UpDown,2:Quad
setp gm.0.stepgen.0.control-type 0# 0:Pozíció vezérlés,1:Sebesség vezérlés
setp gm.0.stepgen.0.invert-step1 0
setp gm.0.stepgen.0.invert-step2 0
setp gm.0.stepgen.0.maxvel 0# ne állítsa be a maximumvelocity-t a stepgenhez, hagyja, hogy az interpolátor vezérelje.
setp gm.0.stepgen.0.maxaccel 0# ne állítsa be a maximális gyorsulást a stepgenhez, hagyja, hogy az interpolátor vezérelje.
setp gm.0.stepgen.0.position-scale 1000# 1000 lépés/pozícióegység
setp gm.0.stepgen.0.steplen 1000# 1000 ns = 1 us
setp gm.0.stepgen.0.stepspace1000# 1000 ns = 1 us
setp gm.0.stepgen.0.dirdelay 2000# 2000 ns = 2 us
Csatlakoztassa a stepgent a 0-s tengely pozíció referenciához és engedélyezze a pineket:
net Xpos-cmd axis.0.motor-pos-cmd => gm.0.stepgen.0.position-cmd
net Xen axis.0.amp-enable-out => gm.0.stepgen.0.enable
A mozgásszabályozó kártyának hat soros AXIS DAC driver modulja van, egy minden tengelyhez. Mindegyik modul a megfelelő RJ50 csatlakozó pinjéhez van kapcsolva.
Minden axis DAC pin and paraméter neve a következővel kezdődik:
gm.<nr. of card>.dac.<nr of axis>,ahol a tengely nr-je 0-tól 5-ig lehet.
Például:gm.0.dac.0.value►a 0-s tengely DAC moduljának kimeneti feszültségére utal
A hal pinek agm.<nr of card>.write függvénnyel írhatók felül.
.enable(bit, In)►Engedélyezi a DAC kimenetét. Ha false-on van, akkor a DAC kimenete 0.0 V.
.value(float, In)► A DAC kimenet értéke Voltban.
.offset(float, R/W)►Offset hozzáadódik az értékhez, mielőtt a hardware frissül
.high-limit(float, R/W)►Maximális kimenő feszültsége a hardware-nek voltban.
.low-limit(float, R/W)►Minimális kimenő feszültsége a hardware-nek voltban.
.invert-serial(float, R/W)►A PCI kártya a DAC hardware-rel gyors soros kommunikációs protokollal kommunikál, hogy csökkentse az időkésést a PWM-hez képest. A DAC modulokat ajánlott elkülöníteni, ha negálják a soros kommunikációs vonalat.Elszigeteléskor hagyjuk ezt a paramétert alapértelmezetten (0), míg ha nincsen elszigetelés, állítsuk 1-re.
A PCI mozgásszabályozó kártyának egy engedélyező kimenetű és egy hiba bemenetű HAL pinje van, melyek minden RJ50 AXIS csatlakozón és CAN csatlakozón megtalálható.
A HAL pinek agm.<nr of card>.read függvénnyel frissíthetőek.
gm.<nr of card>.power-enable(bit, In)►Ha ez a pin Igaz,
és a Watch Dog Timer nem járt le
és nincs táp ellátás hiba
Akkor az adott tengely és CAN csatlakozók power enable pinjei magasra vannak állítva, különben alacsonyra.
gm.<nr of card>.power-fault(bit, Out)►táp hiba bemenet
A watchdog timer agm.<nr of card>.read függvénnyel indítható újra.
gm.<nr of card>.watchdog-expired(bit, Out)►Jelzi, ha a watchdog timer lejárt.
A watchdog timer túlfutása a power-enable alacsonyra állítását eredményezi a hardware-ben.
gm.<nr of card>.watchdog-enable(bit, R/W)►Engedélyezi a watchdog timert.
Erősen ajánlott a watchdog timer engedélyezése, mivel egy PC hiba esetén lekapcsolhatja az összes szervo erősítőt az engedélyező jelek lehúzásával.
gm.<nr of card>.watchdog-timeout-ns(u32, R/W)►Ezen időintervallumon belül kell a gm.<nr of card>.read függvényt végrehajtani. Agm.<nr of card>.read általában hozzá van adva a servo-thread-hez, így a watch időtúllépése általában a szervo periódus 3-szorosára van állítva.
A mozgásszabályozó kártyának van egy CAN modulja, hogy vezérelje a CAN servo erősítőket. Magasabb szintű protokollok megvalósítása, mint a CANopen, a további fejlesztés része. Mostanában a GM által készített teljesítmény erősítőknek magasabb szintű vezérlője van, amely exportálja a pineket és a paramétereket a HAL-nak.Amik a CAN buson keresztül kapják meg a pozíció referenciát és oldják meg az encoder visszacsatolást.
Minden CAN pin és paraméter neve a következővel kezdődik:
gm.<nr. of card>.can-gm.<nr of axis>,ahol <nr of axis>0-tól 5-ig lehet.
Pédául:gm.0.can-gm.0.position►a 0-s tengely kimenetének pozíciójának pozícióegységekben való megadására utal.
A HAL pinek agm.<nr of card>.write függvénnyel írhatók felül.
.enable(bit, In)►Engedélyezi a pozíció referenciák küldését
.position-cmd(float, In)►Vezérelt pozíció pozícióegységekben.
.position-fb(float, Out)►Visszacsatolt pozíció pozícióegységekben.
.position-scale(float, R/W)►Skálázás per unit-ban (hosszegység)
.position-fb=.encoder-counts/.position-scale
Például, ha a position-scale 1000, akkor 2000 encoder impulzus a GM teljesítményerősítőn 2-t eredményez a position-fb pinen.
A PCI mozgásszabályozónak két limit- és egy homing kapcsoló bemenete van minden tengelyhez. Az összes pin neve a következővel kezdődik:
gm.<nr. of card>.axis.<nr of axis>,ahol a tengely nr-je 0-tól 5-ig lehet.
Például:gm.0.axis.0.home-sw-ina 0-s tengely home kapcsolójának állapotát jelzi.
A HAL-pinek agm.<nr of card>.read függvénnyel frissíthetőek.
.home-sw-in(bit, Out)► Home kapcsoló bemenete
.home-sw-in-not(bit, Out)► Negált home kapcsoló bemenete
.neg-lim-sw-in(bit, Out)► Negatív limit kapcsoló bemenete
.neg-lim-sw-in-not(bit, Out)►Negált negatív limit kapcsoló bemenete
.pos-lim-sw-in(bit, Out)► Pozitív limit kapcsoló bemenete
.pos-lim-sw-in-not(bit, Out)►Negált pozitív limit kapcsoló bemenete
A home és limit kapcsolókon túl még két vészmegállító (E-Stop) bemenet van, amely érzékeli, hogy az E-Stop gomb be van-e nyomva.
gm.0.estop.0.in-0(bit, Out)► Estop 0 bemenet
gm.0.estop.0.in-not-0(bit, Out)► Negált Estop 0 bemenet
gm.0.estop.0.in-1(bit, Out)► Estop 1 bemenet
gm.0.estop.0.in-not-1(bit, Out)► Negált Estop 1 bemenet
A hattengelyű GM mozgásszabályozó kártyának 4 általános célú I/O (GPIO) csatlakozója van, nyolc állítható I/O-val mindegyiken.
Minden GPIO pin és paraméter neve a következővel kezdődik:
gm.<nr. of card>.gpio.<nr of gpio con>,ahol<nr of gpio con> 0-tól 3-ig lehet.
Például:gm.0.gpio.0.in-0a PCI kártyán lévő első GPIO csatlakozó első pinjének állapotát jelzi.
A HAL-pinek agm.<nr of card>.read függvénnyel frissíthetőek.
.in-<0-7>(bit, Out)►Bemenet pin
.in-not-<0-7>(bit, Out)►Negált bemenet pin
.out-<0-7>(bit, In)►Kimenet pin. Csak akkor használható, ha a GPIO kimenetre van állítva.
.is-out-<0-7>(bit, R/W)►Ha Igaz, akkor a megfelelő GPIO-t totem-pole kimenetre állítja, máskülönben magas impedenciás bemenetre állítja.
.invert-out-<0-7>(bit, R/W)►Ha Igaz, a pin értéke invertálva lesz. Akkor használható, ha a pin kimenetre van állítva.
Ezekat a modulakt azért fejlesztették ki, hogy kibővítsék a ki- és bemeneti lehetőségeket és növeljék a funkciók számát az RS485 vonal PCI mozgásvezérlő kártyához való csatlakoztatásával.
8-csatornás relés kimenti (output) modul
A relés kimenetű modul 8 db NO-NC relés kimenetet ad egy 3 polusú csatlakozó terminálon minden egyes csatornához.
8-csatornás digitális bementi (input) modul
A digitális input modul nyolc optikailag leválasztott digitális bemeneti pin-t ad.
8-csatornás ADC és 4-csatornás DAC modul
Az ADC és DAC modul négy digitálisból analóggá átalakító (D/A) kimenetet és nyolc analógból digitálissá átalakító (A/D) bemenetet ad. Ez a modul is optikailag el van választva a PCI kártyától.
Teach Pendant modul
A teach pendant modul 8 digitális bemeneti csatornát biztosít nyomógombok számára, 6 ADC bemenő csatornát joystick vagy potenciométerek számára és 1 encoder bemenetet kézi beállító kerék számára.
Minden egyes a buszhoz csatlakozott csomópontot (node) a PCI kártya autómatikusan felismer. A LinuxCNC indításakor a driver automatikusan exportál minden pint és paramétert az összes elérhető modulról.
Ha egy modul nem válaszol rendszeresen, akkor a PCI kártya lekapcsolja azt a modult.
Ha egy kimenettel rendelkező modul nem kap rendszeresen adatot megfelelő CRC-vel, akkor a modul átkapcsol hiba állapotba (a zöld LED villogni kezd), és minden kimenet hiba állapotra állít.
Minden egyes modul elektronikusan leválasztott, ezért megkülönböztetünk busz felőli (bus powered side) és környezet felőli (field powered side) táplálású villamos oldalt.
A moduloknak soros topológia szerint kell kapcsolódniuk a busra, a végén lezáró ellenállásokkal. A PCI kártya az első a topológiában és a végén az utolsó modul van.
Minden csomópontnak 4 bites egyedi kódolású címe van, ami a piros DIP kapcsolóval állítható.
A zöld LED a modul állapotait jelzi:
Villog, amikor a modul már be van kapcsolva, de még nincs azonosítva, vagy amikor a modul lekapcsol (hiba miatt).
Nem világít (OFF) az azonosítás alatt (computer be van kapcsolva, de a LinuxCNC még nem indult el)
Világít (ON), amikor folyamatosan kommunikál.
Power:
Bus feszültség:
Maximális bus energia felhasználás:
Környezeti feszültség:
Maximális környezeti energia felhasználás (minden relé bekapcsolva):
Szigetelés:
Optikai leválasztás áthúzási feszültsége:
Relé karakterisztikák:
Maximális kapcsoló áram:
Maximális kapcsoló AC feszültség:
Maximális kapcsoló DC feszültség:
Dielektromos áthúzási feszültség:
Ha hiba történik a buson, a modul hiba állapotra vált (a zöld LED villog). Minden kimeneti relét lekapcsol.
Minden pin és paraméter az alábbi függvénnyel frissíthető:
gm.<nr. of card>.rs485
A CPU túlterhelését megelőzendően javasolt a szervó körhöz vagy nagyobb periódusidejű ciklushoz hozzáadni.
Minden RS485 modul pin és paraméter neve a következő képpen kezdődik:
gm.<nr. of card>.rs485.<modul ID> ,ahol <modul ID> 00-tól 15-ig lehetséges.
Pin:
.relay-<0-7>(bit, Out)--A relé kimeneti pin
Paraméter:
.invert-relay-<0-7>(bit, R/W)--A negatív logikájú kimeneti relé pin
Például:
gm.0.rs485.0.relay-0– A csomópont első reléjére.
gm.0– Az első PCI mozgató kártyát jelenti (PCI kártya név=0)
.rs485.0– Csomópont kiválasztása a 0 címmel az R
.relay-0– Az első relé kiválasztása
Power:
Bus feszültség:
Bus energia felhasználás:
Szigetelés:
Optikai leválasztás áthúzási feszültsége:
Bemeneti karakterisztikák:
Legnagyobb megengedhető értékek:
Maximális bemenő feszültség:
Minimális bemenő feszültség:
Maximális bemenő áram
Logikai szintek
Minimális magas bemeneti jelszint feszültsége:
Maximális alacsony bemeneti jelszint feszültsége:
További információkért olvasd el a Toshiba TLP281 optocsatolókról szóló adatlapját.
Minden pin-t és paramétert az alábbi módon frissíthetünk:
gm.<nr. of card>.rs485
A CPU túlterhelését megelőzendően javasolt a szervó körhöz vagy nagyobb periódusidejű ciklushoz hozzáadni.
Minden RS485 modul pin és paraméter neve a következő képpen kezdődik:
gm.<nr. of card>.rs485.<modul ID> ,ahol <modul ID> 00-tól 15-ig lehetséges.
Pin:
.in-<0-7>(bit, Out)--Bemenet
.in-not-<0-7>(bit, Out)--Negált bemenet
Például:
gm.0.rs485.0.relay-0– A csomópont első bemenete
gm.0– Az első PCI mozgató kártyát jelenti (PCI kártya név=0)
.rs485.0– Az RS485 buszon kiválasztott csomópont 0 címmel.
.in-0– Az első digitális input kiválasztása
Power:
Bus feszültség:
Bus energia felhasználás:
Környezeti feszültség:
Maximális környezeti energia felhasználás:
Szigetelés:
Optikai leválasztás áthúzási feszültsége:
AD converter:
Bemenő feszültség tartománya:
Bemenő ellenállás:
Bemenő kapacitás:
DA converter:
Kimenő feszültség tartománya:
Maximális kimenő áram:
Minden pint és parmétert az itt látható módon frissíthetünk:
gm.<nr. of card>.rs485
A CPU túlterhelését megelőzendően javasolt a szervó körhöz vagy nagyobb periódusidejű ciklushoz hozzáadni.
Minden RS485 modul pin és paraméter neve a következő képpen kezdődik:
gm.<nr. of card>.rs485.<modul ID> ,ahol <modul ID> 00-tól 15-ig lehetséges.
Pin:
.adc-<0-7>(float, Out) | -- ADC bemenet értéke Voltban. |
.dac-enable-<0-3>(bit. IN) | -- Engedélyezett DAC kimenet. Amikor a DAC enable értéke hamis, akkor a kimenet 0.0 V. |
.dac-<0-3>(float, In | --DAC kimenet értéke Voltban |
Paraméter:
.adc-scale-<0-7> | (float, R/W) | --A bemeneti feszültséget beszorozzuk a skála léptékével, mielőtt megjelenne az ADC kimeneti pin-jén | |
.adc-offset-<0-7> | (float, R/W) | --Az offset-et kivonjuk a hardver bemeneti feszültségéből, miután a skála szorzást elvégeztük | |
.dac-offset-<0-3> | (float, R/W) | --Hardverfrissítés (update-elés) előtt hozzáadjuk az offset-et | |
.dac-high-limit-<0-3> | (float, R/W) | --Maximális hardware kimeneti feszültség Voltban. | |
.dac-low-limit-<0-3> | (float, R/W) | --Minimális hardware kimeneti feszültség Voltban. |
Például:
gm.0.rs485.0.adc-0 – A csomópont első analóg csatornája.
gm.0– Az első PCI mozgató kártyát jelenti (PCI kártya név=0)
.rs485.0– A 0 címzésű csomópont kiválasztása az RS485 buszon.
.adc-0– Az első analóg bemenet kiválasztása a modulon.
Power:
Bus feszültség:
Bus energia felhasználás:
Maximális terhelés 5 V-os kimenetnél:
AD converter:
Bemeneti feszültség skála:
Bemeneti szivárgási áram:
Analóg bemenet ellenállása:
Bemenő pin karakterisztikák (Digitális és encoder bemenetek):
Ezek általános célra felhasználható, előre meg nem határozott I/O portok. Minden feszültségi szint a PC földhöz van viszonyítva.
Abszolut Minimális bemeneti feszültség:
Abszolut Maximális bemeneti feszültség:
Maximális alacsony szintű bemeti feszültség:
Minimális magas szintű bementi feszültség:
Bemenő szivárgási áram:
Minden pin-t és paramétert az itt látható módon frissíthetünk:
gm.<nr. of card>.rs485
A CPU túlterhelését megelőzendően javasolt a szervó körhöz vagy nagyobb periódusidejű ciklushoz hozzáadni.
Minden RS485 modul pin és paraméter neve a következő képpen kezdődik:
gm.<nr. of card>.rs485.<modul ID> ,ahol <modul ID> 00-tól 15-ig lehetséges.
Pinek:
.adc-<0-7> | -- ADC bemenet értéke Voltban. |
.dac-enable-<0-3> | --DAC kimenet elérhető. Amikor a DAC enable értéke hamis, akkor a kimenet 0.0 V. |
.dac-<0-3> | --DAC kimenet értéke Voltban |
Paraméter:
.adc-scale-<0-7> | (float, R/W) | --A bemeneti feszültséget beszorozzuk a skála léptékével, mielőtt megjelenne az ADC kimeneti pin-én | |
.adc-offset-<0-7> | (float, R/W) | --Az offset-et kivonjuk a hardver bemeneti feszültségéből, miután a skála szorzást elvégeztük. | |
.dac-offset-<0-3> | (float, R/W) | --Hardver frissítés/update-elés előtt hozzáadjuk az offset-et | |
.dac-high-limit-<0-3> | (float, R/W) | --Maximális hardware kimeneti feszültség Voltban. | |
.dac-low-limit-<0-3> | (float, R/W) | --Minimális hardware kimeneti feszültség Voltban. |
Például:
gm.0.rs485.0.adc-0 – A csomópont első anaóg csatornájának kiválasztása.
gm.0– Az első PCI mozgató kártyát jelenti (PCI kártya név=0)
.rs485.0– A 0 címzésű csomópont kiválasztása az RS485 buszon.
.adc-0– Az első analóg bemenet kiválasztása a modulon.
Minden modul hossza:
Relés kimenetű modul:
Bemeneti modul:
ADC & DAC modul:
Digitális szervohajtások (BMEGEMIMM25)
Házi feladat kiírás
A feladat során válasszanak egy ipari szerszámgépet (pl.: CNC gép, CNC eszterga, ipari robot). Készítsenek rövid irodalomkutatást a választott géppel kapcsolatban (használati útmutató, gépkönyv, stb.). Készítsék el a választott gép vezérlésének blokkvázlatát (vészleállító kör, teljesítmény táp, szenzorok, aktuátorok, központi vezérlés stb.) és a blokkvázlat rövid működési leírását. A feladat beadható, amennyiben nem tartalmaz a működést befolyásoló elvi hibát.Egy feladatot 2 vagy 3 hallgató dolgozhat ki. A létszám a feladat nehézségének függvénye. 3 fő esetén a végberendezésen kívül minimum egy kiegészítést tartalmazzon a gép (pl.: szerszámtár, hűtőkör, automata ajtó, stb.).
(Ettől eltérő egyéni feladat esetén egyeztessen az oktatóval.)
Aláírás: 7. oktatási hét konzultáció, Beadási határidő: 14. oktatási hét konzultáció
A feladatot átvette:
Olvasható név | Neptun kód | Aláírás | |
1. | |||
2. | |||
3. |
Választott feladat:
Gép típusa (pl.: SCARA robotkar) | Gyártó (pl.: SEIKO) | Típusszám (pl.: D-TRAN TT 4000 SC) | Szabadságfokok száma (pl.: 4) | Végberendezés (pl.: megfogó) |
Feladatleírás (csak egyéni feladat esetén):
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
A feladatot (oktató tölti ki)
Kiadta: Név: ………………………………..... Dátum: .……………………...
Aláírta: Név: ………………………………..... Dátum: ………………………
Elfogadta: Név: ……………………………… Dátum: ………………………
Osztályzat: …………..
Baranyai Zsolt GLQGOA
Simó Andor Szabolcs E38HQK
Egy szabadon választott ipari robot, cnc berendezés vezérlésének megismerése. A vezérlés átgondolása és áttervezése, majd megjelenítése blokkdiagramon. Konkrét elemek kiválasztása és a megvalósítás huzaláozásszintű dokumentálása.
Az általunk választott berendezés tulajdonképpen a „robotika állatorvosi lova”. A robot 6 szabadságfokú, 6 darab rotációs csuklóval rendelkezik, ahol az utolsó 3 speciálisan kézcsukló. A csuklókat egyenáramú motorok aktuálják. A pozíciót inkrementális enkóderek mérik csuklónként, melyek indexjellel is rendelkeznek. Az abszolút érték inicializálását abszolút pozíciót mérő potencióméterekkel végzi.
A robot végberendezéseként egy univerzális megfogó manipulátort választottunk, melyet open és close logikai értékekkel lehet aktuálni. A robot brake funckiójáról sem feledkeztünk meg, mely aktív alacsony logikájával bármilyen zavar esetén fékezi a robotot. Ezt az E-Stop kör kialakításánál is figyelembe vettük.
A berendezés eredeti összeállításából megtartottuk az aktuátorokat, a szenzorokat, a teljesítményerősítőket tengelyenként. Továbbá az analóg szervot, ami miatt a PC által adott referenciajelünk nyomaték kell, hogy legyen.
A kommunikációt a robot által használt TTL határozza meg a robot oldalon. A vezérlés oldalon a modulok adta komminukációs lehetőségekkel éltünk.
Elképzelésünk szerint a robot közvetlen közelébe egy vezérlőszekrénybe helyeznénk el az összes elemet, beleértve a PC-t is. Emiatt egyetlen közös földelést (GND) alkalmazunk.
Az általunk felépített vezérlés elemeit és a felépített blokkdiagramot lásd a mellékletben. A break és túlmelegedés fault eseményeket, illetve azok bekötését külön kirészleteztük egy sematikus kapcsolási rajzon.
A PUMA 560 alap eredeti szabályozási köre a 20-23. ábrán látható, melyből a bekeretezett részt tartottuk meg.
20-23. ábra A PUMA 560 eredeti vezérlése a megtartott rész bekeretezésével |
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.815Letöltve: 2013. november 2. Nuno Moreira et al [1996]: First Steps Towards an Open Control Architecture for a PUMA 560 |
Blokkdiagram a vezérlésről
Breakout és DAC modulok bekötése kirészletezve
Táblázat a robot és vezérlés oldali összekötésekről
Az enkóder breakout és DAC modul bekötései egy tengelyre részletezve. A pontos bekötés a mellékelt táblázatban található.
Breakout és DAC modulok bekötése kirészletezve
Robot csatlakozók | ||||||
J5 |
| Bekötés helye |
| |||
Pin | Név | Modul | Pin | Név | Megjegyzés | |
1 | POT_J1 |
| RS485 ADC/DAC | 10 | ADC-0 |
|
2 | POT_J2 |
| RS485 ADC/DAC | 11 | ADC-1 |
|
3 | POT_J3 |
| RS485 ADC/DAC | 12 | ADC-2 |
|
4 | POT_J4 |
| RS485 ADC/DAC | 13 | ADC-3 |
|
5 | POT_J5 |
| RS485 ADC/DAC | 14 | ADC-4 |
|
6 | POT_J6 |
| RS485 ADC/DAC | 15 | ADC-5 |
|
7 | POT_J7 |
|
| NC |
|
|
8 | POT_J8 |
|
| NC |
|
|
9 | ADGND |
|
| GND | GND |
|
10 | AD+5V |
|
| Field 5V | Field 5V |
|
11 | NC |
|
| NC |
|
|
12 | NC |
|
| NC |
|
|
13 | +12V |
| RS485 ADC/DAC | 4 | +12V |
|
14 | +12V |
| RS485 ADC/DAC | 4 | +12V |
|
15 | DAGND |
|
| GND |
|
|
16 | DAGND |
|
| GND |
|
|
17 | -12V |
| RS485 ADC/DAC | 3 | -12V |
|
18 | -12V |
| RS485 ADC/DAC | 3 | -12V |
|
19 | DAC+J1 |
| UART/DAC 0 | 2 | Analog out |
|
20 | DAC-J1 |
|
| GND | GND |
|
21 | DAC+J2 |
| UART/DAC 1 | 2 | Analog out |
|
22 | DAC-J2 |
|
| GND | GND |
|
23 | DAC+J3 |
| UART/DAC 2 | 2 | Analog out |
|
24 | DAC-J3 |
|
| GND | GND |
|
25 | DAC+J4 |
| UART/DAC 3 | 2 | Analog out |
|
26 | DAC-J4 |
|
| GND | GND |
|
27 | DAC+J5 |
| UART/DAC 4 | 2 | Analog out |
|
28 | DAC-J5 |
|
| GND | GND |
|
29 | DAC+J6 |
| UART/DAC 5 | 2 | Analog out |
|
30 | DAC-J6 |
|
| GND | GND |
|
31 | DAC+J7 |
|
| GND | GND |
|
32 | DAC-J7 |
|
| GND | GND |
|
33 | DAC+J8 |
|
| GND | GND |
|
34 | DAC-J8 |
|
| GND | GND |
|
|
|
|
|
|
|
|
J6 |
|
|
|
|
| |
1 | ENCA1 |
| Breakout 0 | 9 | Encoder A+ |
|
2 | ENCB1 |
| Breakout 0 | 7 | Encoder B+ |
|
3 | ENCI1 |
| Breakout 0 | 6 | Encoder I+ |
|
4 | ENCA2 |
| Breakout 1 | 9 | Encoder A+ |
|
5 | ENCB2 |
| Breakout 1 | 7 | Encoder B+ |
|
6 | ENCI2 |
| Breakout 1 | 6 | Encoder I+ |
|
7 | ENCA3 |
| Breakout 2 | 9 | Encoder A+ |
|
8 | ENCB3 |
| Breakout 2 | 7 | Encoder B+ |
|
9 | ENCI3 |
| Breakout 2 | 6 | Encoder I+ |
|
10 | ENCA4 |
| Breakout 3 | 9 | Encoder A+ |
|
11 | ENCB4 |
| Breakout 3 | 7 | Encoder B+ |
|
12 | ENCI4 |
| Breakout 3 | 6 | Encoder I+ |
|
13 | ENCA5 |
| Breakout 4 | 9 | Encoder A+ |
|
14 | ENCB5 |
| Breakout 4 | 7 | Encoder B+ |
|
15 | ENCI5 |
| Breakout 4 | 6 | Encoder I+ |
|
16 | ENCA6 |
| Breakout 5 | 9 | Encoder A+ |
|
17 | ENCB6 |
| Breakout 5 | 7 | Encoder B+ |
|
18 | ENCI6 |
| Breakout 5 | 6 | Encoder I+ |
|
19 | GND |
|
| GND | GND |
|
20 | GND |
|
| GND | GND |
|
21 | Vcc |
|
| Field 5V | Field 5V |
|
22 | Vcc |
|
| Field 5V | Field 5V |
|
23 | NC |
|
| NC | NC |
|
24 | NC |
|
| NC | NC |
|
25 | NC |
|
| NC | NC |
|
26 | /STOP |
|
| NC | NC | Van helyette saját E-Stop gombunk |
27 | THERM1 |
| UART/DAC 0 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
28 | THERM2 |
| UART/DAC 1 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
29 | THERM3 |
| UART/DAC 2 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
30 | THERM4 |
| UART/DAC 3 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
31 | THERM5 |
| UART/DAC 4 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
32 | THERM6 |
| UART/DAC 5 | 10 | Fault Anode | 1kOhm ellenállson keresztül |
33 | NC |
|
| NC | NC |
|
34 | NC |
|
| NC | NC |
|
35 | /BRAKE |
| E-Stop Relé | 2 | E-Stop Relé | NO |
36 | HANDO |
| RS-485 Relay | 1 | 0-NO |
|
37 | HANDC |
| RS-485 Relay | 4 | 1-NO |
|
38 | UTIL4 |
|
| NC | NC |
|
39 | UTIL5 |
|
| NC | NC |
|
40 | UTIL6 |
|
| NC | NC |
|
Pin | Signal | Backplane | Pin | Signal | Backplane | |
# | Name | Location | # | Name | Location | |
1 | POT_J1 | J56A-F1 | 18 | -12V | TB5-4 | |
2 | POT_J2 | J56A-N1 | 19 | DAC+J1 | J103-11 | |
3 | POT_J3 | J56A-V1 | 20 | DAC-J1 | J103-12 | |
4 | POT_J4 | J56B-F1 | 21 | DAC+J2 | J103-13 | |
5 | POT_J5 | J56B-N1 | 22 | DAC-J2 | J103-14 | |
6 | POT_J6 | J56B-V1 | 23 | DAC+J3 | J103-15 | |
7 | POT_J7 | J56B-H2 | 24 | DAC-J3 | J103-16 | |
8 | POT_J8 | J56A-R2 | 25 | DAC+J4 | J103-17 | |
9 | ADGND | J56A-E2 | 26 | DAC-J4 | J103-18 | |
10 | AD+5V | J56A-F2 | 27 | DAC+J5 | J103-19 | |
11 | NC | 28 | DAC-J5 | J103-20 | ||
12 | NC | 29 | DAC+J6 | J103-21 | ||
13 | +12V | TB5-3 | 30 | DAC-J6 | J103-22 | |
14 | +12V | TB5-3 | 31 | DAC+J7 | J103-23 | |
15 | DAGND | TB5-2 | 32 | DAC-J7 | J103-24 | |
16 | DAGND | TB5-2 | 33 | DAC+J8 | J103-25 | |
17 | -12V | TB5-4 | 34 | DAC-J8 | J103-26 | |
1 | ENCA1 | J56A-A1 | 21 | Vcc | TB5-1 | |
2 | ENCB1 | J56A-C1 | 22 | Vcc | TB5-1 | |
3 | ENCI1 | J56A-E1 | 23 | NC | ||
4 | ENCA2 | J56A-H1 | 24 | NC | ||
5 | ENCB2 | J56A-K1 | 25 | NC | ||
6 | ENCI2 | J56A-M1 | 26 | /STOP | J69-12c | |
7 | ENCA3 | J56A-P1 | 27 | THERM1 | J56A-B1 | |
8 | ENCB3 | J56A-S1 | 28 | THERM2 | J56A-J1 | |
9 | ENCI3 | J56A-U1 | 29 | THERM3 | J56A-R1 | |
10 | ENCA4 | J56B-A1 | 30 | THERM4 | J56B-B1 | |
11 | ENCB4 | J56B-C1 | 31 | THERM5 | J56B-J1 | |
12 | ENCI4 | J56B-E1 | 32 | THERM6 | J56B-R1 | |
13 | ENCA5 | J56B-H1 | 33 | NC | ||
14 | ENCB5 | J56B-K1 | 34 | NC | ||
15 | ENCI5 | J56B-M1 | 35 | UTIL1 | J103-5 | /BRAKE |
16 | ENCA6 | J56B-P1 | 36 | UTIL2 | J44A-M2 | HANDO |
17 | ENCB6 | J56B-S1 | 37 | UTIL3 | J44A-L2 | HANDC |
18 | ENCI6 | J56B-U1 | 38 | UTIL4 | SPARE1 | |
19 | GND | TB5-2 | 39 | UTIL5 | SPARE2 | |
20 | GND | TB5-2 | 40 | UTIL6 | SPARE3 |
[1] Az OpnRDK robot fejlesztői API, rendszer hivatalos információs oldala.
[2] Intelligent Robots and Systems, 2008. IROS 2008. IEEE/RSJ International Conference on. . OpenRDK: a modular framework for robotic software development. 2008.
[3] YARP robot middleware hivatalos honlapja.
[4] OpenRTM-aist robot middleware hivatalos weboladal.
[5] Intelligent Robots and Systems, 2005.(IROS 2005). 2005 IEEE/RSJ International Conference on. . RT-middleware: distributed component middleware for RT (robot technology). 2005. Intelligent Robots and Systems, 2005.(IROS 2005). 2005 IEEE/RSJ International Conference on.
[6] Springer. Simulation, Modeling, and Programming for Autonomous Robots. . A software platform for component based rt-system development: Openrtm-aist. 2008.
[7] Software deployment infrastructure for component based rt-systems. 3. 2011. Journal of Robotics and Mechatronics.
[8] ROS (robor operációs rendszer) hiovatalos információs oldala.
[9] ICRA workshop on open source software. . ROS: an open-source Robot Operating System. 2009.
[10] Disturbance observer-based motion control of dlrect drive motors. 3. 553-559. 1991. IEEE Transactions on Energy Conversion.
[11] Disturbance-observer-based nonlinear friction compensation in table drive system . 1. 3-8. 1999. IEEE/ASME Transactions on Mechatronics.
[12] Vibration Suppression Using Single Neuron-Based PI Fuzzy Controller and Fractional. 1. 117 – 126. 2007. Order Disturbance IEEE Transactions on Industrial Electronics.
[13] New sensorless control for brushless DC motors using disturbance observers and adaptive velocity estimations. 2. 274 - 282. 1998. IEEE Transactions on Industrial Electronics.
[14] American Control Conference June 2006 Page(s):6, 14. . A survey of state and disturbance observers for practitioners . 2006.
[15] Modeling of Force Sensing and Validation of Disturbance Observer for Force Control . 1. 530 – 538. 2007. IEEE Transactions on Industrial Electronics.
[16] Application of a sliding-mode observer for position and speed estimation in switched reluctance motor drives.;. 1. 51 – 58. 2001. IEEE Transactions on Industry Applications.
[17] (METI). http://www.meti.go.jp/press/20100423003/20100423003-2.pdf. 2035nen ni muketa robotto sangyou no shourai shijou yosoku (Market forecast of robot industry in 2035). 2010.
[18] 35th International Symposium on Robotics. . Intuitive Robot Programming. 2004.