Absztrakt A mobil robotok kialakításánál fontos szempont a moduláris felépítés, valamint szabványos kommunikációs protokollok, csatlakozási felületek használata. Amennyiben ezen irányelveket figyelmen kívül hagyjuk a fejlesztési idő megnő és a roboton történő esetleges változások kihatással lehetnek a robot teljesen más funkciót végző egységeire is. Cikkemben egy mobil robot főbb moduljait tekintem át, javaslatot teszek a modulok kialakítására, a modulok közötti kommunikáció megvalósítására. Szabványok követése lehetőséget teremt már meglévő kereskedelemben kapható egységek rendszerbe történő integrálására, így például a mobil robot központi számítógépe lehet egy PC alapú beágyazott számítógép Linux operációs rendszerrel. A vezeték nélküli kommunikáció a robot és a kezelőszemélyzet között történhet szabványos WLAN vagy BlueTooth eszközök segítségével. A robot fedélzetén lévő belső buszrendszernek választható valamely ipari buszrendszer, így az arra épülő már meglévő szenzorok, vezérlők könnyen a rendszerbe integrálhatók. Az itt felsorolt irányelvek figyelembevételével gyors és hatékony mobil robot fejlesztés valósítható meg. Modular construction, standard communication protocols and the usage of standard connection surfaces are important aspects of the construction of mobile robots. If we do not pay attention to these principles, the development time increases and the possible changes on the robot can influence some other units with completely different functions. In my article, I am going to give a review of the main modules of a mobile robot, and propose some module developments and the achievement of communication among modules. Observing of standards enables integration of the units that already exist on the market into a system, for example the central computer of a mobile robot can be a PC based embedded computer with Linux operation system. The wireless communication between the robot and the operator stuff can go through standard WLAN or BlueTooth protocols. An industrial bus system can be chosen for an inner bus system which is on the board of the robot, and in this way the already existing sensors and controllers that are based on these industrial bus systems can easily be integrated. With the observance of the principles enumerated here, a quick and efficient robot development can be achieved. Kulcsszavak : Autonóm, Mobil Robot, Moduláris, Ipari Buszrendszerek, Szabványos kommunikáció, UGV, Modbus Napjainkban különböző kialakítású mobil robotok, a technológia fejlettségének köszönhetően, már képesek sok olyan feladat ellátására, amelyekre emberi erő alkalmazása veszélyes, vagy gazdaságtalan lenne. Mobil robotok alkalmazhatók légi felderítésre, csapásmérésre (UAV1), vagy földi megfigyelésre, területőrzésre, robbanóanyag hatástalanításra (UGV2). A robotok által ellátható feladatok sokrétűsége indokolttá teszi moduláris felépítésű robotok alkalmazását, így az adott feladathoz a teljes robot áttervezése nélkül, egy alapplatform alkalmazásával csatolhatunk olyan egységeket, amelyek a célspecifikus szenzorokat, beavatkozó szerveket tartalmazzák. Az alapplatformnak tartalmaznia kell a robotot mozgató motorokat, a beágyazott számítógépet, valamint a kommunikációs eszközöket. Ha a robot például gépkocsik aljára erősített robbanóanyag felderítésére van kialakítva, ezen szenzorokon felül tartalmaznia kell egy nagy felbontású kamerát és robbanóanyag felderítésére szolgáló szenzorokat. Egy manipulátor karral felszerelt robotnak nem csupán a meghajtó és kormányozó motorokat, hanem a manipulátort mozgató motorokat és vezérlő elektronikákat is tartalmaznia kell. A cikkemben egy alapplatform kialakítási lehetőségeit vizsgálom, sorra veszem a szükséges alapegységeket, megoldási lehetőségeket. Vizsgálom a rendszer flexibilitását, átkonfigurálhatóságát. A moduláris felépítésű robot alkalmazása alapként szolgálhat egy nagyobb méretű komplex rendszer kialakításában. 1. Kommunikáció a robot és az operátor között A kommunikációs eszközök megválasztásánál az első és legfontosabb szempont a robot bevetési rádiuszának vizsgálata. Kis távolságokon, például a bevezetőben említett robbanóanyag kereső robotoknál elegendő valamely informatikában használt vezeték nélküli adatátviteli eszköz használata. A kereskedelemben kapható WLAN3 hálózati eszközök között már nem ritka a 108Mbps átviteli sebességre képes illesztő eszköz, mellyel már jó felbontású valós idejű kép is továbbítható. Egy konkrét példát véve alapul, az ASUS WL-330G vezeték nélküli Access Point4 (AP) (1. ábra) 2.4GHz-es sávban maximálisan 54Mbps átviteli sebességre képes, belső térben 40 méteres, szabadtérben pedig 455 méteres hatósugárban. Az átviteli sebesség függ a környezeti zavaroktól, a rálátástól és a távolságtól. Az eszköz mobil robotikai alkalmazásra különösen alkalmas kis mérete (85 x 61 x 18 mm) [9], alacsony fogyasztása (4V, 1A), szabványos Ethernet hálózati csatolófelülete miatt. Szintén nem elhanyagolható szempont a készülék alacsony ára. 1. ábra: ASUS WL-330G WLAN adapter A 2.4 GHz-es sávban szintén elterjedt a Bluetooth5 vezeték nélküli technológia. Ez a technológia eredetileg számítógépekhez kapcsolt perifériaeszközök vezeték nélküli csatlakoztatására szolgált, ily módon csak kis működési rádiusszal rendelkezik (~10 m). A Bluetooth-nak azonban létezik ipari változata is, amely üzemekben, ipari környezetben, nagyobb távolságokra is képes kapcsolat létesítésére. Példaként említhető a Phoenix Contact FL BLUETOOTH AP nevű terméke (2. ábra). Az eszköz alacsonyabb átviteli sebességgel bír (400 Kbps), de ipari kiképzése miatt alkalmazható szélsőségesebb körülmények között is maximum 100 méteres távolságban.
Közepes távolságú vezeték nélküli adatátvitel szintén létrehozható szabványos WLAN eszközökkel, irányított antennák segítségével. A nagy távolságú mikrohullámú kommunikáció hátránya, hogy az adó és vevő között elhelyezkedő tereptárgyak csillapítják vivőjelet. Erre jelent megoldást, műholdas átjátszók alkalmazása. Cikkemben a nagy távolságú vezeték nélküli átvitellel nem foglakozom részletesen. 2. Fedélzeti számítógépes rendszerek A fedélzeti számítógépes rendszerre a robot bizonyos fokú autonómiájának megteremtése érdekében van szükség. Nagy értékű robot esetében még távvezérelt robot esetében is érdemes bizonyos biztonsági funkciókat a robot fedélzetén lévő intelligens eszközre bízni. A robottal való kommunikáció megszakadása esetén például a robot képessé tehető egy előre definiált helyre történő visszatérésre. Szélsőséges körülmények között a robotnak észlelni kell a rá veszélyt jelentő környezeti behatásokat (például túl meredek lejtő esetén a robot nem kockáztatja az esetleges zuhanást, hanem jelez a kezelőnek és új útvonalat kér). A fedélzeti intelligens eszköz megválasztására a legkézenfekvőbb megoldás egy hagyományos PC alapú számítógép. A processzor megválasztásánál fontos mérlegelni az autonómia fokát, valamint a méret és fogyasztási lehetőségeket. Egy akkumulátorral táplált kis méretű robotra nem ajánlott egy nagy fogyasztású Pentium 4-es laptop telepítése Windows XP- operációs rendszerrel. Kis méretű robotok esetében optimális megoldást jelenthet egy beágyazott kisebb teljesítményű és méretű Pentium I. vagy Intel 5x86 alapú alaplap, célspecifikus Linux operációs rendszerrel. Példaként említeném az általam alkalmazott Advantech PCM5820 AMD GEODE processzorral szerelt ipari alaplapját (3. ábra). A PCM5820 233MHz-es Intel 5x86 kompatibilis processzorral maximum 128MB memóriával, 2db konfigurálható RS232/422/485 porttal, 100Mbps átviteli sebességű Ethernet csatolóval rendelkezik. Az alaplaphoz nem szükséges billentyűzet és monitor csatolása. Nagy mennyiségű adat tárolása Compact Flash6 (CF) kártyán történik, így a beágyazott számítógép nem tartalmaz mozgó rezgésre, rázkódásra érzékeny alkatrészeket. Mivel a rendszeradatok Flash alapú adathordozón vannak eltárolva, hagyományos operációs rendszerek alkalmazása nem megengedett. Egy korszerű Windows alapú operációs rendszer a rendszeradatokat folyamatosan frissíti az adattárolón, és mivel Flash alapú memóriák csak adott mennyiségű írási műveletre képesek, ez a memória kártya károsodásához, adatvesztéshez vezet. Az alkalmazott operációs rendszerrel szemben támasztott követelmények a következők:
A fent említett követelményeknek sok nyitott forráskódú speciálisan beágyazott rendszerekre tervezett LINUX operációs rendszer eleget tesz. Az én választásom előnyös paraméterei miatt az uVex LINUX - nevű kiadásra esett. A rendszer adathordózón elfoglalt mérete 128Mbyte alá csökkenthető, ebben a kiépítésben tartalmazza a rendszer működéséhez szükséges programokat, fejlesztéshez szükséges fordító és programeditáló programokat, valamint rendelkezik a következő tulajdonságokkal:
3. ábra: Advantech PCM5820 ipari beágyazott alaplap. 3. Fedélzeti adatátviteli hálózatok A rendszer flexibilitását leginkább meghatározó komponens a robot fedélzetén található belső hálózat. A hálózatok topológia alapján a következő csoportokba sorolhatók:
A kommunikáció iránya szerint, lehet egyirányú (simplex), kétirányú (duplex), vagy változó irányú (half duplex). Egy általános hálózati kommunikáció a 4. ábra szerint épül fel. Az ábrán látható, hogy a hálózati kommunikáció az átvivő közegre, más néven a fizikai rétegre épül. A fizikai réteg meghatározza az átvitelhez használt hordozó típusát (koax kábel, sodort érpár, optikai kábel, rádiós kommunikáció.), meghatározza az alkalmazott jelszinteket és az azokhoz tatozó logikai értékeket. 4. ábra: Hálózati rétegek Mobil robotikai alkalmazásokra, motorok vezérlésére, szenzorok lekérdezésére a lehető legegyszerűbb megoldásként a következő szabványos átviteli módok kínálkoznak (1. táblázat).
1. táblázat Az RS 232 szabvány széles körben alkalmazott a számítástechnika világában. Legnagyobb hátránya, hogy csupán két eszköz között képes kis távolságú összeköttetés létrehozására. Ennek ellenére a mobil robotikai alkalmazása nem kizárt, mivel a kereskedelemben sok olyan szenzor kapható, ami eleve RS232-es szabványhoz illeszkedik (pl. GPS-OEM7 modulok). Az iparban legelterjedtebben használt átviteli mód, az RS485 átviteli szabványhoz illeszkedik. Számos ipari Bus-rendszer az RS485-ös szabványra épül, mint például PROFIBUS, MODBUS, InterBus, LonWorks. A fizikai réteg bus-ismétlők (repeaterek) nélkül 32 adó és 32 vevőegység csatlakoztatását teszi lehetővé. Alkalmazható kétvezetékes Half-Duplex8 és négyvezetékes Full-Duplex9 módban is. A négyvezetékes fizikai megvalósításra látható egy példa a 6. ábrán a Maxim félvezetőgyár MAX491-es integrált áramkörével [7]. 5. ábra: Négyvezetékes RS485 fizikai réteg kialakítás MAX491-es integrált áramkörrel. Az 5. ábrán látható kapcsoláson látható, hogy a bus-on kialakuló reflexiók elkerülésére a bus-t a végein illesztetten kell lezárni, külső ellenállások segítségével. A bus-on található egységek közül csupán egy adhat egy időben, a többi magas impedanciás állapotban várakozik. Egy általam megvalósított hálózati elrendezés látható a 6. ábrán. A már korábban említett elemekből építkezve az Advantech PCM-5820-as alaplapja közvetlenül csatlakoztatható az Ethernet hálózatra. E hálózaton történő adatszétosztás csak intelligens hálózati eszközökkel történhet (rooter, switch), így ha az Etherenet belső hálózatra kettőnél több egységet kívánunk felfűzni, a megfelelő hálózati adatszétosztó eszközök beépítése is szükségessé válik, mely teljesítményigény növekedéssel jár. A 6. ábrán, alapkiépítésben csak az alaplap és a vezeték nélküli csatoló van összekötve, minden egyéb egység az alaplapon keresztül RS485-ös fizikai réteget használva kommunikál (ennek lehetőségei a használt alaplapon már ki vannak alakítva). A bus-ra csatlakozó egységek két nagy csoportra oszthatók:
A moduláris rendszerű mobil robotok fejlesztésénél már csak a fent említett egységekhez tartozó csatolómodulokat kell kifejleszteni és ezeket, mint építőkockákat a bus-ra fűzni. Ez a felépítés nagyban hasonlít az iparban széles körben alkalmazott, PLC10 és folyamatirányító rendszerek felépítésére, ezért érdemes megvizsgálni egy, ezekhez a rendszerekhez optimalizált kommunikációs protokollt. Egy egyszerű ipari protokollt véve példaként, a továbbiakban részletesen a MODBUS protokoll kerül ismertetésre. 6. ábra: Egy konkrét mobil robot fedélzeti elrendezés MODBUS- protokoll A soros MODBUS protokoll az RS485 valamint az RS232-es fizikai rétegekre épülő Master-Slave11 protokoll. Az ISO/OSI12 modell szerinti hálózati struktúrában a MODBUS a fizikai, adatkapcsolati, valamint a felhasználói protokollt definiálja (7.ábra). A hálózatban egy Master állomás található, mely képes a rendszerben található egy vagy több Slave állomás lekérdezésére, vezérlésére. A Slave állomások nem kezdeményezhetnek adást anélkül, hogy erre a Master állomás utasította volna őket. 7. ábra: A MODBUS protokoll ISO/OSI modellben implementált rétegei A MODBUS Master kétféle üzenetet küldhet a Slave állomások felé:
Mivel a funkció kódok az ipari PLC-s rendszerek igényeinek kielégítésére lettek kialakítva, így beágyazott speciális alkalmazások esetén érdemes a felhasználó által definiált funkció kódokat alkalmazni, melyek a 65-72 és a 100-110-es tartományba esnek. Például egy inkrementális jeladóval felszerelt DC-motor MODBUS-os PWM13 vezérlőjének kitöltési tényezőjét a 65-ös funkció kóddal állíthatjuk, az inkrementális jeladó számlálóját pedig a 100-as funkció kóddal kérdezhetjük le.
Egy PDU maximum 252 byte nagyságú lehet. Az üzenetet egy 2 byte hosszú hibajavító kód zárja, melyet az adó generál. A Master által kiadott utasítás miután eljut a címzett állomáshoz, az azonos funkció kóddal egy válaszüzenetben visszajelez a Master felé. A válaszüzenet lekérdezés esetén tartalmazza a Master álltal igényelt adatokat, utasítás esetén pedig egy visszaigazolást, melyben a Slave tudatja, hogy vette az üzenetet. 9. ábra: Hibamentes MODBUS kommunikáció A soros átvitel szempontjából két átviteli módot különböztetünk meg:
Minden MODBUS kliensnek képesnek kell lenni az RTU mód fogadására, így itt az RTU mód kerül részletes kifejtésre. Az RTU módban az átvitel során A 8 bit bináris adat átvitelét egy start bit kiküldésével kezdjük, az adatbitek után egy paritásbit, majd egy stopbit következik. Paritás bit nélküli átvitel esetén az adatot két stop bit követi. 10. ábra: Bit sorrend RTU módban paritás bit alkalmazásával. Az RTU módban küldött üzenetek (PDU-k) között legalább 3,5 karakternyi szünetnek kell lenni, és az üzeneteket folytonosan kell továbbítani. Így biztosítható a helyes üzenet kezdet és vég detektálás. (Az ASCII módban az üzenetek kezdetét és végét speciális karaktersorozat jelzi.) A leírtakból látható, hogy MODBUS protokoll használata esetén a következő hibák detektálhatók:
Eddigiekben ismertetésre került néhány kommunikációs megoldás, a fedélzeti intelligens eszközök kialakítási lehetőségei, valamint a belső buszrendszer. A következő lépés a buszrendszerre csatlakoztatható elemek áttekintése. DC motor szabályzó MODBUS modul A mobil robotok fedélzetén a telepes táplálás miatt általában szénkefés vagy szénkefe nélküli (brushless) motorokat alkalmaznak. Szénkefe nélküli motorok jobb hatásfok és súly-teljesítmény arányával párosul rendkívül magas áruk és valamivel bonyolultabb szabályzó felépítésük ezért a továbbiakban az olcsóbb és elterjedtebb szénkefés motorok szabályzására alkalmas modul kerül ismertetésre (11. ábra). 11. ábra: Szénkefés DC motor szabályzó MODBUS modul. A szabályzó modul a következő feladatok végrehajtására képes:
Két a 11. ábrán látható szabályzó modul és két motor segítségével felépíthető alap mobil robot platform a 6. ábrán látható rendszerbe rendezve már meglepően sok képességgel rendelkező mobil robotot alkot. Két külön hajtott kerékkel, valamint egy támasztókerékkel felépített mobil robot struktúra esetén a fent említett rendszerrel már megvalósítható egy olyan robot, amely képes a kerékelfordulásból saját pozíciójának folyamatos kiszámítására az [1.1-1.5] képletek segítségével [1]. 12. ábra: Egyszerű mobil robot struktúra esetén az elmozdulás kiszámítása [1.0] [1.1] [1.2] [1.3] [1.4] [1.5] Ezen a roboton található egyetlen szenzor a kerekekre erősített optikai jeladó. A robot képességei nagymértékben javíthatók további szenzorok rendszerbe való integrálásával. Szabványos buszrendszer alkalmazása esetén nem szükséges a már meglévő modulok változtatása, csupán csatlakoztatni kell az új modult a belső rendszerbuszra és természetesen kiegészíteni a központi programot az új képesség kiaknázására. Egyéb általános célú MODBUS modulok A mobil robotikában jól alkalmazhatók egyéb ipari célokra kifejlesztett távolságmérő, szín és alakfelismerő szenzorok is. Az iparban szabványosított analóg jelszint a 0-10V és a 4-20mA. Érdemes tehát olyan csatoló kialakítása is, amely ezeket az eszközöket a rendszerünkhöz csatolják. A kereskedelemben kaphatók ilyen konverterek, hátrányuk a viszonylag magas 24V-os tápfeszültség igény és a nagy méret, ezért érdemes egy ilyen képességű modul kifejlesztése is. Egy konkrét példát véve alapul, feladatom egy Turck T30UIPB típusú ultrahangos távolságmérő rendszerbe való integrálása (13. ábra). 13. ábra: Turck T30UIPB ultrahangos távolságmérő [5] A szenzor 30-200 cm-es érzékelési tartománnyal rendelkezik, így alkalmas egy kísérleti célú mobil robot közepes távolságú akadályfelismerő érzékelőjének. Az ultrahangos távolságmérő 4-20mA-es analóg kimenettel rendelkezik. A MODBUS csatoló áramkör egy Micochip PIC mikrokontroller segítségével épül fel, a már említett MAX491-es RS485-ös csatoló alkalmazásával. A jövőbeli bővítési lehetőségeket figyelembe véve, a modul kifejlesztése 4 darab analóg bemenettel történik. ÖSSZEFOGLALÁS Moduláris rendszerű robot fejlesztése esetén a robot speciális feladatokhoz történő kialakítása nagymértékben egyszerűsíthető és gyorsítható. Általános célú modulok kialakítása esetén a szabványos csatolófelülettel rendelkező ipari szenzorok hardware módosítások nélkül integrálhatók a rendszerbe. Cikkemben példaként a WLAN- vezeték nélküli kommunikációt és az RS485 fizikai rétegre épülő MODBUS protokollt említettem. Sorra vettem az alkalmazható eszközöket, összekapcsolásuk lehetőségeit. Szabványos eszközök, protokollok használata esetén a hardware fejlesztési idő lecsökken, így időt és pénzt lehet megtakarítani. A rendszer részben már gyakorlatban is megvalósult, célom a fedélzeti rendszer megfelelő hordozón történő elhelyezése és gyakorlatban történő tesztelése. További célom különböző egyéb ipari protokollok (CanOpen, Profibus, MODBUS-TCP/IP) megismerése és a rendszerem megfelelő csatolófelülettel történő ellátása. A gyakorlati megvalósítás igen fontos új ötletek, tapasztalatok megszerzéséhez, ez azonban csak egy része a mobil robotikai kutatásaimnak. A robot viselkedését leíró matematikai rendszer, az útkereső, akadályfelismerő algoritmusok egy magasabb szintjét jelentik a mobil robotikai kutatásoknak. Ezen algoritmusok tesztelése valós környezetben azonban szintén igényel egy működő platformot.
FELHASZNÁLT IRODALOM [1] R.Siegwart, I.R. Nourbahsh "Introduction to Autonomous Mobile Robots" The MIT Press Massachutsetts institute of Technology Cambridge 2004 [2] MODBUS over serial line specification and implementation guide V1.01 http://www.modbus.org/ 2006.11.04 [3] MODBUS Applicatin Protocol Specificaton V1.1a http://www.modbus.org/ 2006.11.04 [4] http://www.interfacebus.com/Design_Connector_Field_Buses.html [5] http://pdb.turck.de/media/_en/Anlagen/Datei_EDB/edb_3055980_gbr_en.pdf 2006.11.04 [6] RS-422 and RS-485 Application Note http://www.bb-elec.com 2006.11.04 [7] MAX491 Datasheet http://datasheets.maxim-ic.com/en/ds/MAX1487-MAX491.pdf 2006.11.04 [8] http://eshop.phoenixcontact.com/ 2006.11.04 [9] http://www.sg.hu/printer.php?cid=33516 2006.11.04 1 Unmanned Air Vehicle - Légi robotrepülőgép 2 Unmanned Ground Vehicle - Szárazföldi robotjármű 3 Wireless Local Array Network - Vezeték nélküli helyi hálózat 4 Vezeték nélküli hozzáférési pont 5 2.4GHz-es sávban működő vezetéknélüli szabvány 6 Félvezető alapú memória, amely tartalmát kikapcsolás után is megőrzi. A memória írási ciklusainak száma limitált. 7 Global Posing System ( Original Equipment Manufacturer) - Globális helymeghatározó rendszer (eredeti kellékanyag gyártó) 8 Egy időben vagy csak adás, vagy csak vétel üzemmódú átvitel 9 Egyszerre vételi és adás üzemmódban működni képes átvitel 10 PLC: Programmable Logic Controller 11 Master - Slave - Olyan hálózati architectúra, amelyben a csatorna felügyeletét a felek dedikált módon látják el. A csatorna felett a Master gyakorolja a kizárólagos ellenörzést, aki gondoskodik a Slave állomások csatornához történő hozzáférésének irányításáról. 12 ISO-(International Standards Organization -Nemzetközi Szabványügyi Szervezet), OSI (Open System Interconnection) ajánlás. azt mondja meg, hogy milyen rétegekre kell osztani egy hálózatot és ezen rétegeknek mi legyen a feladatuk. 13 Pulse Width Modulation - A teljesítmény változtatása a tápláló feszültség adott kitöltési tényezőjű négyszögjellel történő kapcsolásával történik. |
© ZMNE BJKMK 2006.