Robotika. Alapok. Helfenbein Tamás htamas@chemium.hu



Hasonló dokumentumok
Infobionika ROBOTIKA. IX. Előadás. Robot manipulátorok I. Alapfogalmak. Készült a HEFOP P /1.0 projekt keretében

Quadkopter szimulációja LabVIEW környezetben Simulation of a Quadcopter with LabVIEW

Robotika. Kinematika. Magyar Attila

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

Denavit-Hartenberg konvenció alkalmazása térbeli 3DoF nyílt kinematikai láncú hengerkoordinátás és gömbi koordinátás robotra

Infobionika ROBOTIKA. XI. Előadás. Robot manipulátorok III. Differenciális kinematika. Készült a HEFOP P /1.0 projekt keretében

Robotok inverz geometriája

Beltéri autonóm négyrotoros helikopter szabályozó rendszerének kifejlesztése és hardware-in-the-loop tesztelése

2. E L Ő A D Á S D R. H U S I G É Z A

Számítógépes geometria (mester kurzus)

Pneumatika az ipari alkalmazásokban

Szenzorcsatolt robot: A szenzorcsatolás lépései:

Űrtechnológia október 24. Műholdfedélzeti energiaellátás / 2 Műholdfedélzeti szolgálati rendszerek Felügyeleti, telemetria és telekommand rendsz

Az ipari robotok definíciója

Merev testek mechanikája. Szécsi László

Mozgásmodellezés. Lukovszki Csaba. Navigációs és helyalapú szolgáltatások és alkalmazások (VITMMA07)

DFTH november

MISKOLCI EGYETEM GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR

IPARI ROBOTOK. Kinematikai strukturák, munkatértípusok. 2. előadás. Dr. Pintér József

Az ábrán a mechatronikát alkotó tudományos területek egymás közötti viszonya látható. A szenzorok és aktuátorok a mechanika és elektrotechnika szoros

Mester Gyula 2003 Intelligens robotok és rendszerek

A Hamilton-Jacobi-egyenlet


SZENZORFÚZIÓS ELJÁRÁSOK KIDOLGOZÁSA AUTONÓM JÁRMŰVEK PÁLYAKÖVETÉSÉRE ÉS IRÁNYÍTÁSÁRA

Tárgymutató. dinamika, 5 dinamikai rendszer, 4 végtelen sok állapotú, dinamikai törvény, 5 dinamikai törvények, 12 divergencia,

INTELLIGENS ROBOTOK ÉS RENDSZEREK

SCARA robot programozása

Fizika. Fizika. Nyitray Gergely (PhD) PTE PMMIK február 13.

MECHATRONIKA Mechatronika alapképzési szak (BSc) záróvizsga kérdései. (Javítás dátuma: )

Mérnöki alapok 2. előadás

6. Robotok és manipulátorok a rugalmas gyártórendszerekben. 6.1 Manipulátorok

MODELLEZÉS - SZIMULÁCIÓ

Gyakorlatok. VITMMA09 Okos város MSc mellékspecializáció

Intelligens hatlábú robot kinematikai vizsgálata

Mérési útmutató Robotkar inverz geometriája (és irányítása)

Mechanika, dinamika. p = m = F t vagy. m t

Robottechnika szakirány

MINTA Írásbeli Záróvizsga Mechatronikai mérnök MSc. Debrecen,

HELYI TANTERV. Mechanika

Mit nevezünk nehézségi erőnek?

Robotkar modellezés. Készítette: Dévényi Péter (2011) Simulink indítása: Matlab konzolban simulink parancs beírásával. A SimMechanics elérése:

Lendület. Lendület (impulzus): A test tömegének és sebességének szorzata. vektormennyiség: iránya a sebesség vektor iránya.

Robotika. A robotok története - bevezetés. Magyar Attila amagyar@almos.vein.hu

A mechanika alapjai. A pontszerű testek dinamikája

Az alábbi fogalmak és törvények jelentését/értelmezését/matematikai alakját (megfelelő mélységben) ismerni kell: Newtoni mechanika

670 milliszekundumos csomagolási ciklusidő

VTOL UAV. Inerciális mérőrendszer kiválasztása vezetőnélküli repülőeszközök számára. Árvai László, Doktorandusz, ZMNE

Az irányítástechnika alapfogalmai Irányítástechnika MI BSc 1

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

MECHANIKA I. rész: Szilárd testek mechanikája

Tömegpontok mozgása egyenes mentén, hajítások

1. Mozgás Magyar Attila

Robotmechanizmusok Dr. Szabó, Zsolt Budai, Csaba Dr. Kovács, László Dr. Lipovszki, György

- Kézzel írt jegyzet 1-3. oldala tartalmazza.

Járműinformatika A járműinformatikai fejlesztés

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

ROBOTTECHNIKA. Kinematikai strukturák, munkatértípusok. 2. előadás. Dr. Pintér József

A LEGO Mindstorms EV3 programozása

Megmunkáló központok munkadarab ellátása, robotos kiszolgálás

Rugalmas tengelykapcsoló mérése

Kommunikáció. 3. előadás

Robottechnika. 1. Bevezetés. Ballagi Áron Automatizálási Tanszék

FANUC Robottípusok, alkalmazások. Anyagmozgatás, szerelés, stb. Festés, lakkozás. Hegesztés

A végeselem módszer alapjai. 2. Alapvető elemtípusok

A mechanikai alaptörvények ismerete

Mechanika. Kinematika

Járműinformatika A jármű elektronikus rendszerei

Fordulatszám szabályozott egyenáramú szervohajtás vizsgálata

Járműinformatika Bevezetés

Az irányítástechnika alapfogalmai

Egy kinematikai feladat

MateFIZIKA: Pörgés, forgás, csavarodás (Vektorok és axiálvektorok a fizikában)

Robottechnika II. 1. Bevezetés, ismétlés. Ballagi Áron Automatizálási Tanszék

Számítógépvezérelt irányítás és szabályozás elmélete (Bevezetés a rendszer- és irányításelméletbe, Computer Controlled Systems) 7.

A brachistochron probléma megoldása

ÁLTALÁNOS JÁRMŰGÉPTAN

Elméleti kérdések 11. osztály érettségire el ı készít ı csoport

3D számítógépes geometria és alakzatrekonstrukció

4. Lokalizáció Magyar Attila

Magyarországi partner: S&T Consulting Hungary Kft.

Robotika. Relatív helymeghatározás Odometria

Fizika alapok. Az előadás témája

Négycsuklós mechanizmus modelljének. Adams. elkészítése, kinematikai vizsgálata,

Gépészeti rendszertechnika (NGB_KV002_1)

SZENZOROKRA ÉPÜLŐ ADAPTÍV RENDSZERMODELL


0. Teszt megoldás, matek, statika / kinematika

Soros felépítésű folytonos PID szabályozó

Operációs rendszerek. Az X Window rendszer

Robotok Irányítása - Bevezetı

Hajder Levente 2017/2018. II. félév

HELYSZÍN: RAMADA RESORT AQUAWORLD BUDAPEST IDÔPONT: OKTÓBER 27. REGISZTRÁCIÓ: HUNGARY.NI.COM/NIDAYS

Kovács Ernő 1, Füvesi Viktor 2

Előadó: Nagy István (A65) Gyakorlatvezető: Tolnai András

Mechatronika, Optika és Gépészeti Informatika Tanszék MOTOR - BOARD

KÖRMOZGÁS, REZGŐMOZGÁS, FORGÓMOZGÁS

Tartalom. Mi az, amit változtatunk? Hajder Levente 2018/2019. I. félév

Forgattyús mechanizmus modelljének. Adams. elkészítése, kinematikai vizsgálata,

1. Feladatok a dinamika tárgyköréből

Irányítástechnika 2. előadás

Átírás:

Robotika Alapok Helfenbein Tamás htamas@chemium.hu

Tartalom Bevezető Robotok felépítése Alkalmazási területek Szabadságfok Robotok típusai Robotok modelljei Robotok kinematikai modellje Robotok dinamikai modellje Robotok irányítása Csuklók szabályozása Szabályozás típusai Erőirányítási módszerek Pályatervezés Útvonaltervezés és navigáció Robot szoftverarchitektúrák és -platformok Szimulációs platformok

Bevezető Robot Robota Szláv eredetű szó Jelentése: szolgamunka, munka Irányított mechanizmus Képes feladatok végrehajtására Irányítás Emberi irányítás Autonóm robot

Bevezető Alkalmazási területek Ipari környezetben festés, rakodás, hegesztés Mezőgazdaság betakarítást végző autonóm robotok Bányászat - bányászrobotok Szállítás mobilrobotok Veszélyes környezet kockázatcsökkentés Felfedezés és felkutatás - kutatórobotok Egészségügy, ápolás, személyi kiszolgálás műtőrobotok Hadászat - drónok Szórakozás - robotfoci Életminőség javítás - exoszkeleton

Miből áll a robot? Irányított mechanizmus Előírható pályán mozog Előírható pálya mentén vagy annak pontjaiban meghatározott feladatokat lát el Elvi felépítés Szegmensek Csuklók kapcsolják össze ezeket (joint) Végberendezés (end effector) Csuklók típusai Rotációs Transzlációs

Miből áll a robot? /2 Mechanikai szerkezet Váz, összekapcsoló mechanika Tengelyek, szíjak, meghajtó motorok, stb. Érzékelők Belső és külső Belső: saját helyzet, állapot és annak változásának mérése Külső: környezet paraméterének mérése: tapintás, látás, stb. Aktivitás szerint Aktív: ultrahang, lézerscanner Passzív: kamera, enkóder Beavatkozók Pozícióváltozáshoz Elektromos, hidraulikus, pneumatikus motor Környezet megváltoztatása Végberendezés: Megfogó szerkezet, festékszóró, stb..

Szabadságfok Szabadságfok minden olyan irány, melyben a robot mozogni képes (DoF, Degree of Freedom) Merev, szabadon mozgó robot: 6 DoF = 3 pozíció + 3 orientáció (a) 6 DoF Stanford kar (b) 3 DoF mobil robot

Szabadságfok /2 Szabadságfokok lehetnek redundánsak Effektív szabadságfok: leírható vele az állapot Irányítható szabadságfok Az irányítható szabadságfok lehet kisebb, mint az effektív szabadságfok Holonomikus robot: a két érték megegyezik

Robotok típusai Helyváltoztatás Fix: helyváltoztatásra nem képes Mobil: helyváltoztatásra képes Elágazás Elágazás nélküli Pl. egyszerű robotkar Elágazással rendelkező Lánc zártsága Nyílt láncú Zárt láncú Merevség

Robotok modelljei Kinematikai modell Geometria A robot geometriai helyzetét, állapotát írja le Pozíció és orientáció Differenciális mozgás Sebességek, statikus erők Dinamikai modell Összefüggések: Tömeg és inercia paraméterek Erők és nyomatékok Mozgás

Robotkar kinematikája Nyílt láncú robotok esetén a szegmensek és csuklók számozhatók Kar (arm): 0,1,2,3 Csukló (wrist): 4, 5, 6 Kézfej (hand): végberendezés

Pozíció és orientáció Merev esetben Geometriai kényszerek adódnak Tekintsük minden helyzetet egy-egy keretnek (Descartes-féle derékszögű koordinátarendszernek) Geometriai transzformációkkal jellemezhető az i- edikből (i+1)-edik

Pozíció és orientáció /2 Pozíció Descartes-féle koordináták Orientáció megadása Euler-szögek forgatás: z, y, z RPY szögek Csavarás (roll), billentés (pitch), forgatás (yaw) forgatás: z, y, x Kvaterniók adott tengely körüli elforgatás: egyértelmű (0.. π) Forgatás 2α szöggel u tengely körül sinα + cosα u

Pozíció és orientáció /3 Transzformáció a szomszédos szegmensek közt Homogén koordináták Denavit-Hartenberg alak Csukló tengely iránya z irány E mentén Eltolás: d Forgatás: Végberendezés helyzete Transzformációk sorozata Transzformációs gráf

Kinematikai feladatok Direkt geometriai feladat Adott: csuklók állapota, robot kinematikai modellje Keresett: végberendezés helyzete (pozíció és orientáció) Megoldás Transzformációk alkalmazása

Kinematikai feladatok /2 Inverz geometriai feladat: a pályatervezés alapja Adott: végberendezés pozíciója és a robot kinematikai modellje Keresett: csuklókoordináták, azaz a csuklók pozíció alapjelei Megoldás Dekompozíció: speciális esetben Független egyenletek keresése Problémák Redundáns szabadságfokok Végtelen megoldás Reprezentáció miatt nincs jó megoldás bizonyos pozíciókban (kvaterniók jobbak)

Differenciális mozgás leírása Csuklókoordináták és világkoordináták lokális linearizálása Ez csuklókoordináta (munkapont) függő A dinamikai modellhez is elengedhetetlen Leírja a kapcsolatot a Csuklókoordináták hatására Világkoordinátában történő elváltozás

Differenciális mozgás leírása Jacobi mátrix A Jacobi mátrixszal leírható egy adott csuklópozícióban az adott csuklókoordináta változásának hatása a végberendezés helyzetére Munkapont függő! Számítható felhasználásával a TCP (tool center point): Sebességek, gyorsulások Külső erők hatása

Differenciális feladatok Direkt (differenciális) feladat A csuklókoordináták változásának, csuklósebességek, csuklógyorsulások hatására Elmozdulás, szögelfordulás számítása Sebesség, szögsebesség számítása Gyorsulás, szöggyorsulás számítása Megjegyzés: munkapont függő!

Differenciális feladatok /2 Inverz (differenciális) feladat A TCP világkoordinátákban mért elmozdulás, sebesség, gyorsulás segítségével Csuklókoordináták változásának számítása Csuklósebességek számítása Csuklógyorsulások számítása Megjegyzés: munkapont függő!

Külső erők hatása Számítás a Jacobi mátrix segítségével lehetséges Bemenet: munkapontban a Jacobi mátrix, külső erők eredője Erőmérés Kimenet: terhelés a csuklókon

Dinamikai modell Mozgó robot teljes leírása (nemlineáris rendszer) Csuklókra ható összes erő figyelembevétele Csukló meghajtó nyomaték Tehetetlenségi nyomaték Centrifugális erő Coriolis erő Gravitációs erő Meghajtás tehetetlensége, súrlódás Egyéb erők: rugók, stb. Módszerek Newton-Euler (Newton axiómák és perdület-tétel) Euler-Lagrange (kinetikus és potenciális energia) Appel egyenletek (gyorsulás-energia) Renaud módszer (fiktív test helyettesítés, momentumok, Newton- Euler módszer)

Dinamikai modell /2 Elemei Gyorsító nyomaték Rendszer inerciamátrix (H) i=j esetén motor gyorsító nyomatéka i<>j esetén a többi csukló gyorsításának hatása Centrifugális és Coriolis erők (h) j=k<i centrifugális erő j=k Coriolis erő Gravitációs erő (G) Külső erők

Robotok irányítása Mozgás irányítása Betanítás Pontok Folytonos pálya Fontos: pálya követése Pont-pont irányítás Fontos: pálya megtervezése, pálya követése Hogyan jutunk el A helyzetből B helyzetbe? Mit tudunk irányítani/vezérelni?

Robotok irányítása /2 Mit tudunk vezérelni? Motor, motorvezérlő adottságaitól is függ A motor képességeinek megfelelő vezérlési/szabályozási struktúra keresése Szabályozás Hogyan tudjuk eljuttatni A helyzetből B helyzetbe? Meg kell tervezni a pályát -> Pályatervezés

Csuklók szabályozása Tipikus szervóhajtás egy csuklón Elektromotor tengely hajtását végzi Szabályozási szintek Nyomaték szabályozás Sebesség szabályozás (fordulatszám) Pozíció szabályozás (szögelfordulás/helyzet) Lehetséges alapjelek Előírt nyomaték Előírt csuklósebesség Előírt csuklókoordináta

Csuklók szabályozása /2

Irányítási módszerek Végberendezés vagy csuklók? Irányítás előírt pálya mentén csuklókoordinátákban Csuklók paraméterei alapján ( nyomaték, sebesség, pozíció) nem elégítik ki az igényeket Irányítás végberendezés pozíciója alapján, világkoordinátákban Mérés Alapjel azonban azonos Ezért inverz feladatot kell megoldani

Irányítási módszerek /2 Minél magasabb szintű feladatokat lehet a motorvezérlők Decentralizáltság foka a motorvezérlő egységekben Pozíció szabályozás Fordulatszám szabályozás Nyomaték szabályozás Centralizált szabályozó A modellek további részeit futtatja Erő irányítás Adaptív irányítási módszerek

Decentralizált pozíciószabályozás A központi vezérlő pozíció alapjeleket küld Pozíció szabályozás a szervomotorokban Követelmények Jó követési tulajdonságok Külső erők kompenzálása (zavarjel)

Decentralizált pozíciószabályozás /2 Betanítás Pontok felvétele Interpoláció ún. pályatervezéssel Csuklókoordináták szerint Világkoordináták szerint

Decentralizált fordulatszám szabályozás Pozíció szabályozást a központi vezérlő végzi Világ vagy csuklókoordináták szerinti Fordulatszám alapjelet küld RMC: Resolved Motion Control Direkt geometriai feladat Munkapontfüggő Jacobi mátrix! Számolás világkoordinátákban Maximális áram korlátra figyelni kell

Decentralizált nyomaték szabályozás Hajtások nyomatékszabályozást végeznek Központi vezérlő közvetlen nyomaték alapjeleket adhat Típusok Csuklónként PID szabályozás Előre számolt nyomatékok módszere (CTC)

Decentralizált nyomaték szabályozás /2 Csuklónként PID szabályozás Nem veszi figyelembe a kölcsönhatásokat A szabályozó más munkapontban másképp viselkedhet

Decentralizált nyomaték szabályozás /3 Előreszámított nyomatékok módszere CTC: Computed Torque Control Dinamikai modellt használja, hibával kiegészítve Cél a teljes dinamikai hiba minimalizálása Alapjel képzése csuklókoordinátákban Pozíció Sebesség Gyorsulás

Decentralizált nyomaték szabályozás /4 (Előre)számított nyomatékok RMAC: resolved motion acceleration control Világkoordinátákban mért hibajelekkel dolgozik Gravitáció kompenzálás Csak a gravitációs komponensek kellenek a CTC-be

Erőirányítási módszerek Alapelvek Kontaktus erő hatására ellenerő keletkezik Továbbterjed a csuklókra Engedékenységi centrum számítása: kontaktus síkja, pozícióeltéréshez Osztályozás hibajel alapján Merevség irányítás Csillapítás irányítás Impedancia irányítás Implicit irányítások: merevség és impedancia Erőirányítás Hibrid pozíció és erőirányítás Operációs tér módszer

Erőirányítási módszerek /2 Merevség irányítás pozíció eltérés a hibajel Csillapítás irányítás sebesség eltérés a hibajel Impedancia irányítás sebesség és pozíció eltérés a hibajel Implicit irányítások: merevség és impedancia Nincs direkt erőmérés Pozíció szabályozással dolgozunk

Erőirányítási módszerek /3 Erőirányítás Hibrid pozíció és erő szabályozás erőkifejtés, előírt erő korlátok, nyomaték korlátok Erőkifejtés specifikált irányokban, tárgy síkjának számítása Általában Külön pozíció és erő szabályozási körök Egy irányban egy típusú szabályozás Pozíció vagy (S) Erő és nyomaték (I-S)

Erőirányítási módszerek /4 Hibrid pozíció és erő szabályozás

Erőirányítási módszerek /5 Operációs tér módszer Az operációs térben képzett jelek Operációs térbe transzformálás

Adaptív irányítás Pontatlan ismeretek Robot paraméterei Megemelt tömeg Típusok Modellreferenciás adaptív irányítás (MRAC) Referenciamodell szerinti szabály adaptáció Önhangoló adaptív irányítás Irányítási törvények online adaptációja

Pályatervezés A mozgás megtervezése Pont-pont munkavégzéshez Időben optimális odajutás Energia minimalizálás Legrövidebb út Kötött pályán mozgásnál Idő optimalizálása

Pályatervezés /2 Technikák: Interpolációs technikák Sebességek előírása adott pontban (sebességprofil) Nehézségek Megvalósítható-e a pálya? Pozíció elérhető? Pontok, köztes pozíciók nem ütköznek végállásba? Sebességek elérhetők? Sebességek simasága? Motorok túlterhelése? Ütközés? Biztonsági tartalékok?

Pályatervezés /3 Bemenet: cél koordináta (világ vagy csukló) Kimenet: Mit írhat elő a pályaterv? Interpolált pontok halmaza Ezekben vett Sebesség Gyorsulás Szögsebesség Szöggyorsulás

Pályatervezés /4 Egyváltozós eset Megállítással Sebesség zérus a végpontban Megállítás nélkül Nemfolytonos gyorsulás Folytonos gyorsulás: simább futás

Pályatervezés /5 Többváltozós eset Pályatervezés csuklókoordinátákban Sarokpontok Csuklókoordinátákban adottak vagy Világkoordinátákban átszámoljuk őket (inverz geometriai feladat) Interpoláció kritériumok szerint Maximális sebesség, gyorsulás figyelembevétele Lehetőleg folytonos gyorsulás Csuklókoordinátákban közel lineáris mozgás Világkoordinátákban nem feltétlen egyenes mozgás Mindig adott T időn belül hajtható végre az adott mozgás

Pályatervezés /6 Pályatervezés világkoordinátákban Sarokpontok világkoordinátákban adottak Alkalmazás kritikus esetekben Egyenes mozgás megvalósítható Sebesség, gyorsulás, szögsebesség, szöggyorsulás mennyiségek számítandók Nehezítő körülmények mindkét esetre Mozgó célpont (pl. futószalag, stb.) Változik a cél/sarokpont helyzete

Útvonaltervezés és navigáció Mobilrobotok esetén elengedhetetlen Ipari robotok esetében általában a pálya adott, a feladat határozza meg Azonban több esetben a pályatervezés bemenő sarokpontjait is meg kell határozni

Útvonaltervezés és navigáció /2 Osztályozás Szabad tér Foglalt tér Biztonsági tér Ismert és lehetséges akadályok is szűkíthetik a szabad teret Magasabb szintű réteg szükséges Módszerek Celladekompozíciós módszerek Szkeletonizációs módszerek Potenciáltér alapú módszerek

Robot szoftverarchitektúrák Sok a hardverfüggő architektúra Eltérő absztrakciós szintek Driver/OS Driverek (szenzor, aktuátor, kommunikáció, stb.) Hardver absztrakció (HAL) Operációs rendszer Platform Adatfeldolgozó Szenzorfúzió (pl. ütközés) Paraméterbecslő (pl. helyzet, kinematika) Algoritmus Pályatervező Mozgástervező Eseménykezelő (pl. ütközéselkerülés) Magas szint Feladatkezelő és ütemező Feladatértelmező és feldolgozó Felhasználói interfész

Robot szoftverarchitektúrák /2 Átviteli rendszer Topológia Elágazásos Hurkos Technológia Jelek, jelszintek Csatlakozási módok Átviteli módok Adatszerkezetek Jelentések Hibafelismerés Szinkronizáció Szemantika Ábrázolás és jelentés

Robot szoftverplatformok Példák ROS Player, YARP, Orocos, CARMEN, Orca, MOOS, Microsoft Robotics Studio.

Robot szoftverplatformok Microsoft Robotics Studio (MRS) Windows alapú,.net, REST (Representational State Transfer ) Távoli vezérlés megoldható LAN, WiFi, BT Elemei CCR - Concurrency and Coordination Runtime DSS - Decentralized Software Services VPL - Visual Programming Language VSE - Visual Simulation Environment

Robot szoftverplatformok MOOS (Mission Oriented Operating Suite) Cross-platform, C++ PubSub (Publish-Subscribe model) Elemei Core: kommunikáció és vezérlés Essential: processz kontroll, loggolás, stb Graphical: vizuális kezelés Matlab NavigationAndControl

Robot szoftverplatformok Ocra Open-source, komponens alapú Cross-platform, de alapvetőeen Linuxos PubSub alapok CARMEN (Carnegie Mellon Robot Navigation Toolkit) Mobilrobotokhoz Open-source Szenzorkezelés, lokalizáció, üzenetkezelés, logolás, IPC kommunikáció, processzkezelés C és Java támogatás

Robot szoftverplatformok YARP (Yet Another Robot Platform) C++ alapú Nyelv portabilitás: SWIG ( Java, Perl, Python, C#) Algoritmus és kommunikáció szeparálása: Observer tervezési minta Különböző hálózati protokollok (TCP, UDP) Driver, kommunikációs interfészek

Robot szoftverplatformok ORCOS (Open Robot Control Software) Orcos Toolchain Valósidőben konfigurálható komponensek Multiplatform, más rendszerekhez kapcsolható (pl. ROS) Szkriptelés Kinematics and Dynamics Library (KDL) itasc (instantaneous Task Specification using Constraints) Irányítás formalizálása Bayesian Filtering Library

Robot szoftverplatformok Player Cross-platform szerver robotvezérléshez, roboton fut Szenzorok, aktuátorok interfészei Nyelvek kliens oldalon: C++, Tcl, Java, Python ActivMedia Pioneer 2 Szimulátorok: Stage: 2D, mobilrobotokhoz Gazebo: önálló projekt lett

Robot szoftverplatformok ROS (Robot Operating System) Nem operációs rendszer Szoftver eszközök a robotfejlesztéshez Kommunikáció PubSub Távoli eljáráshívás Visszajátszás Elosztott paraméterkezelés Robot Üzenetek Leírás, geometria (URDF) Könyvtárak vezérléshez, pozícióbecsléshez, diagnosztikához, logoláshoz Vizualizáció (rviz)

Szimulációs környezetek Hasznosak az algoritmusok vizsgálatához, gyors prototípus fejlesztéshez Fizikai motorokat használnak ODE (Open Dynamics Engine) Gazebo, LpzRobots, Marilou, Webots PhysX Microsoft Robotics Studio Valós 3D vizualizáció 3D modellezővel tervezhető környezet Szkriptelési lehetőségek eltérőek C, C++, Perl, Python, Java, URBI, MATLAB

Szimulációs környezetek Gazebo

Szimulációs környezetek Stage

Szimulációs környezetek MS Robotics Studio

Szimulációs környezetek Webots (cyberbotics) Linux, Win, Mac

Köszönöm a figyelmet! Helfenbein Tamás htamas@chemium.hu

Irodalom Lantos Béla Robotok irányítása Scmidt István, Vincze Gyuláné, Veszprémi Károly - Villamos Szervo- és Robothajtások