robotolj te is! - cloud7h.edupage.org

60
1 Robotolj te is! Oktatási anyag a NextWork Robotépítő Verseny dokumentációi alapján általános iskolai szakkörhöz

Upload: others

Post on 23-Nov-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

1

Robotolj te is!

Oktatási anyag a NextWork Robotépítő Verseny

dokumentációi alapján általános iskolai szakkörhöz

2

Tartalom Robotolj te is! ...........................................................................................................................................1 Tartalom...................................................................................................................................................2 Robotika rövid története, bevezetőként .....................................................................................................3

Mit tartunk robotnak? ...........................................................................................................................3 LEGO robotépítő készletek.......................................................................................................................6

RCX .....................................................................................................................................................6 NXT .....................................................................................................................................................6

A robotok programozási lehetőségei .......................................................................................................12 NXT-G, azaz LEGO Mindstorms NXT Graphics Code.......................................................................12 RoboLAB és LabVIEW......................................................................................................................13 Programozás nyelvi elemei .................................................................................................................14 Kommunikáció eszközök között .........................................................................................................20

Optimalizálás..........................................................................................................................................22 Ötletek robotokra....................................................................................................................................24

Radar ..................................................................................................................................................24 Rajzgép ..............................................................................................................................................24 Joystick ..............................................................................................................................................25 Kormányzás fényérzékelővel ..............................................................................................................25 Robotirányítás parancsszavakkal.........................................................................................................25 Elektromos gitár .................................................................................................................................26

Robotépítés alapjai .................................................................................................................................28 Tervleíró programok...........................................................................................................................28 Mozgatás ............................................................................................................................................29 Fogás robottal.....................................................................................................................................37

Robotversenyek ......................................................................................................................................39 FLL, First LEGO League....................................................................................................................39 Robotszumó........................................................................................................................................40 RoboCup ............................................................................................................................................44

NEXTWORK Verseny robotjai ..............................................................................................................46 Butterbeans - Szent István Gimnázium...............................................................................................46 MÓCÁRT – Árpád Gimnázium ..........................................................................................................46 Macsfeeder – Homo Robotikusz Team Mechatronikai Szakközépiskola .............................................48 Mat-Robi - Velkey Géza, Váli Tamás, Mikus Ádám, Molnár Dávid Szabó Lőrinc Tagiskola, Balassagyarmat...................................................................................................................................49 Roboteki - BJG Juniors Batsányi János Gimnázium, Csongrád ...........................................................50 e. d. – Extreme Digital ........................................................................................................................52 T’ROBOT – Palonai Magyar Bálint Általános Iskola, Fonyód ............................................................53 Kombi – Transformers, Kodolányi János Általános Iskola, Szakiskola és Óvoda, Vajszló ..................54 Árucikk válogató targonca – Rendszerurak, Mikszáth Kálmán Gimnázium, Pásztó.............................56 Tan-Robi – LEGÓvatosabb, Börzsönyvidéki Bölcsőde, Óvoda, Iskola, EGYMI Kemencei Általános Tagiskola és Alapfokú Művészetoktatási Intézmény, Kemence...........................................................57 RAJZOBOT – Hematolit, Illyés Gyula Gimnázium, Budaörs .............................................................58 TÜCSÖK – Kocka Team, Medgyasszay István SZIGK, Veszprém .....................................................60

3

Robotika rövid története, bevezetőként

Mit tartunk robotnak? Karel Capek 1921-ben megjelent drámájában szereplő robot a hétköznapi életbe mélyen bevésődött képet alapozott meg. A robot a hétköznapi szemlélet szerint emberhez hasonlító, emberi fizikai vagy szellemi tevékenységeket, munkát végző szerkezet. Ez a kép persze így nem pontos. Annak eldöntésében, hogy egy szerkezetet nevezhetünk-e robotnak, annak megjelenése helyett sokkal inkább azzal kell foglalkoznunk, hogy milyen képességekkel rendelkezik, tud-e például reagálni a környezet ingereire. Egy autó nem tekinthető önmagában robotnak, de ha a cél megadása után már önállóan képes megtervezni az útvonalat, majd emberi beavatkozás nélkül oda is talál, akkor ez a berendezés már tekinthető robotnak. Ugyan a robot fogalmát sok módon megadhatják, de pár elem a meghatározásokban közös:

A szerkezet képes legyen hely- vagy helyzetváltoztatásra. Mozgása során rendelkezzen szabadsági fokokkal.

Tevékenységét képes legyen részben vagy teljesen önállóan irányítani megadott program alapján. Ez utóbbi követelmény persze nem jelenti azt, hogy a szerkezet valódi mesterséges intelligenciával kell, hogy rendelkezzen. Van egy általános érvényű robot definíció is a műszaki terület művelői között: A robot egy olyan gép, amely szállítási és manipulációs feladatok automatikus végrehajtására szolgál, és melynek működése programozható.

Robotgenerációk Az első generációs robotokat az 1960-as években, főleg anyagmozgatásra fejlesztették ki. A kezdetben kötött pályán mozgó berendezések nem rendelkeztek jellemzően érzékelőkkel, és főleg a futószalagok kiszolgálására voltak alkalmasak. Később az ember számára monoton vagy egészségére veszélyes környezetben végzett munkákra is fejlesztettek ki ipari robotokat. A második generációs robotok ugyancsak az iparban jelentek meg, de a fő alkalmazási terület már a mikroelektronika lett. Az 1970-es években a robotok már érzékelőkkel vizsgálják környezetüket, tevékenységüket ezek hatására képesek megváltoztatni. Korunkra már a harmadik generációs robotok a jellemzőek, ezek kutatása folyik jelenleg is. Már a jelfeldolgozás, információ kiválasztása, kombinálása a feladatuk. Megjelentek az első önálló viselkedési algoritmusok és döntési rendszerek, amely révén emberi gondolkodáshoz hasonlíthatóak lettek a szerkezeteket irányító programok.

Osztályozások Fizikai megjelenésük és képességeik szerint a robotokat több szempont szerint több csoportba sorolhatjuk. Lehet például osztályozási szempont az intelligenciaszint, egy másik szempont lehet a külső megjelenés, azaz például vagy egy robotkar csak, vagy mobil a robot. Harmadik szempont lehet a pályavezérlés típusa, egy negyedik az alkalmazási területek szerinti besorolás.

Pathfinder űrjármű.

4

(1) (H) Milyen jellemzőkkel rendelkezhet ez a robot? Nézz utána az interneten!

Javasolt kiindulási oldal a Wikipédia http://hu.wikipedia.org/wiki/Mars_Pathfinder lapja.

A mobil robotok további csoportokba sorolhatóak.

ASIMO a Honda bérelhető, már sorozatban is gyártott androidja.

Az androidok, animatok, ember nélküli járművek, szórakoztatórobotok, általános autonóm robotok egy-egy alcsoportja lehet. A statikus, azaz az önálló helyzetváltoztatásra nem képes robotok is hasznosak, ezek alcsoportja a háztartási és ipari robotok, robotkarok. A hagyományos robotszemléletet nagyon megváltoztatta a nanorobotok megjelenése. A fizika és a kémia határterületén megszületett „gépek” nem csak méretükben, hanem működésükben is jelentősen eltérnek a hétköznapi szemléletben kialakult robotképtől.

Robotok besorolása felépítési és működési bonyolultságuk szerint.

A robotok, alkalmazásuk szerint is több csoportba sorolhatók. Az iparban használt robotok: technológiai feladatot ellátó robotok anyagmozgató robotok – szerelőrobotok

A kutatásban használt robotok: általános mobil robotok: ide soroljuk a kerekes, lépegető, önállóan tájékozódni tudó robotokat,

de a telerobotok ide tartoznak, amelyek például a mikrosebészetben alkalmaznak animatok, azaz az állatokhoz hasonlító robotok, leginkább a mozgásuk leutánzása jelenti a fő

kihívást. androidok

5

A speciális feladatok megoldására alkalmazott robotok lehetnek: mikrorobotok, nanorobotok gyógyászatban alkalmazott robotok

Háztartási robotok Automatikusan és intelligensen működő háztartási gépek A lakás egyes egységeit irányító rendszer, amely reagálni képes a környezeti változásokra. Számítógépes vagy egyéb hálózaton keresztül kapcsolatot tartó berendezések, például

vagyonbiztonsági rendszerek. A szórakoztató robotok állnak talán legközelebb hozzánk. A síró csecsemőtől, ami egy androidkicsinynek is tekinthető, a robotkutya AIBO-n át, a csapatban focizó ASIMO-ig sok változata létezik.

AIBO, harmadik generációs változata.

(2) (K) Milyen más, hasonló képességű játékrobot kapható hazánkban is?

Robotokhoz kapcsolódó kiindulási oldal lehet a http://www.robotplaza.hu/ lap.

Cyborgok A részben ember – illetve értelmes lény -, részben gép képződmények már nem tartoznak a robotokhoz, de nehéz eldönteni, hogy milyen arányú keverékek, mi az ami „még ember” vagy „már robot”. Az orvostudomány képes ma már sérült idegpályákat újra működővé tenni, emberi és mesterséges testrészek működését összehangolni. A legjelentősebb eredményeket a művégtagok területén érték el. Létezik már például neurális hálóval a szervezethez kapcsolt művégtag, melyet tulajdonosa képes mozgatni és az idegekhez kötött neurális háló tanulja a mozgatást. Várhatóan 2020-2030-ra a fejlett országokban valószínűleg általánosan elérhetők lesznek a művégtagok.

Teljes kar pótlása művégtaggal.

A másik érdekes terület az agyba ültetett mikrochipek, azaz az agy és a mesterséges tároló és információ feldolgozó eszközök előnyeit próbálják ötvözni. Az állatkísérletek ugyan eddig nem túl bíztatóak, ennek ellenére több elszánt kutató saját magán végez emberkísérletet. Hasznos alapismeretek találhatóak Roska Tamás előadásában a http://www.mindentudas.hu/mindentudasegyeteme/roska/20040607roska17.html címen. (3) (H) A Mindentudás Egyetemének honlapján nézz utána, hogy milyen más előadások foglalkoztak még a robotika témájával!

A Mindentudás Egyetemének honlapján a Műszaki tudományok lap felkeresését javasoljuk elsőként a http://www.mindentudas.hu/magazin2/20050218muszaki.html címen.

6

LEGO robotépítő készletek A robotika hazánkban is elérhető eszközei közül a legnépszerűbb és talán a legsokoldalúbban is használható a LEGO cég alapvetően oktatási, később játék célokra kifejlesztett egységei. A kilencvenese években kisebb válságba került LEGO cég az MIT-n dolgozó Seymour Papert kutatóhoz fordult segítségért, aki az informatika oktatás meghatározó egyénisége. Papert hetvenes években használt Irving nevű padlóteknőcét keltették szabadabban alakítható formában újra életre.

Seymour Papert Irvinggel, a programozható teknőccel, amely a tollával képes rajzolni is.

A LEGO cég több csomagot is kifejlesztett, ezek közül az oktatásban leginkább hasznosíthatóakat mutatjuk be röviden.

RCX A 3804-es jelzésű, hazánkban játékboltokban is kapható készlet közel 700 alkatrészt tartalmaz, a robotépítés szempontjából lényeges elemeket a lenti kép mutatja be.

Az RCX robot

Az RCX téglához egyszerre 3 motor és 3 érzékelő csatlakoztatható alaphelyzetben. A nyomás-, fényérzékelő a készlet része, míg beszerezhető forgás – 15 fokos pontosságú - hő- és időérzékelő is. Ezen nagyszámú érzékelője miatt a fizikai kísérletek és vizsgálatokban is jól használható a készlet. A 9 V-os motorok igen fürgék, viszonylag nagy nyomatékúak. Az alapkészlet csak kettő motort tartalmaz, amihez beszerezhető több típusban is további motor, mint a képen is látható.

NXT Az NXT készletekről nagyon jó anyagot találunk a Szabó Richárd által 2007-ben elkészített www.freeweb.hu/jataka/rics/lego/index.html oldalon.

7

NXT alapú robot elemek A robot több kiszerelésben is kapható, sajnos hazánkban elég körülményes a beszerzése jelen pillanatban. A 8527-es jelzésű készlet alkalmas az egyéni munkára. A 9797-es jelzésű készlet már kimondottan iskolai munkára lett kialakítva, az FLL verseny elvárásainak megfelelően. Ez a készlet a 9648-as jelzésűvel kiegészítve már igazi oktatási készletet jelent. A korábbi RCX készlethez használható érzékelőink is használhatóak, ha vagy a 9797-es készletet választjuk, vagy külön megvesszük azokat az átalakító kábeleket, amelyekkel csatolhatjuk az új aljzatba a régebbi csatlakozójúakat.

Tápellátás A robotok igen fontos eleme az energiát biztosító rész. A mindkét robot használható 6 db 1,5 V-os egyszer használatos elemekkel és újratölthetőekkel is, az első esetben viszont az összesen 9 V-os feszültség miatt a robot motorjai lényegesen gyorsabbak lesznek. Az NXT-t alapértelmezetten újratölthető elemek által leadott 7,4 V-os feszültségre tervezték, ez az összfeszültség az AA vagy AAA jelzésű újratölthető ceruzaakkumulátorokból nyerhető ki, vagy a tölthető saját Litium-ion akkumulátorból. Ez utóbbi tervezhető teljesítményű: 1400 mAh.

NXT saját akkumulátora

Készletek Jelen pillanatban több lehetőség van az alkatrészek beszerzésére. Az NXT tégla, a motorok és a különböző típusú érzékelők a LEGO honlapjáról vagy nagyobb webáruházakból, mint a LUGNET, elemenként is megrendelhetőek, de kifizetődőbb, ha készletben vásárolunk.

8

8527-es játékbolti csomag, ez kapható több nyelvi verzióban is, de a magyar kereskedelemben csak a

kézikönyvet kapjuk meg lefordítva. Az 8527-es jelzésű készlet - amely idén a NextWork verseny alapcsomagja is volt -, igazából a játékboltok számára, otthoni használatra szánt, összeállított készlet. A LEGO cég azonnal piacra dobta az 9797-es jelzésű oktatási verziót is. Ez az USÁ-ban és már világszerte is igen népszerű FLL verseny szabályainak megfelelően tartalmazza az érzékelőket, és a csomag része a tölthető akkumulátor is, valamint az RCX-hez kifejlesztett érzékelők csatlakoztatásához szükséges átalakító kábeleket is.

A 9797-es jelzésű NXT oktató csomag.

A műanyag tartódobozos csomagolás nagyban megkönnyíti az oktatásban való használatot. A csomag 2 nyomásérzékelőt tartalmaz az 8527-es egy érzékelőjéhez képest.

A 9648-as jelzésű készlet, amely a hasznos kiegészítőket tartalmaz a tanórai alkalmazáshoz is. A

kiegészítő csomag ugyancsak jól alkalmazható rekeszekbe került.

9

Átalakító kábel RCX érzékelők és az NXT tégla között.

A kapható készletek és kiegészítők pontos elem-összeállításáról, az oktatásban legkedvezőbben elérhető árairól a www.lugnet.com webhelyen található naprakész információ. Ezt a webhelyet mindenkinek bátran ajánljuk. (4) (K) Nézd meg a Lugnet honlapon az egyes termékek pontos alkatrészlistáját, valamint árát is!

Az oldal a LEGO kedvelők hivatalos honlapja, de nem hivatalos LEGO honlap. Az itt látható árakra egyéb költségek is rakódhatnak, attól függően, hogy honnan rendelünk, és milyen pénznemben kívánunk fizetni.

(5) (H) Hazánkban hogyan lehet megrendelni a neten vagy megvásárolni ezeket a készleteket?

A http://www.legoaruhaz.hu kereskedés mellett a http://www.malug.hu webhely lehet jó kiindulási pont. Itt a tagoktól beszerzési ötleteket is kaphatunk a különböző eszközökre, valamint hasznos tippeket a fejlesztésekhez, építésekhez.

Demó a LEGO honlapján Ha szeretnénk a készlet nélkül megismerkedni az elemekkel és azok működésével, akkor látogassunk el a http://shop.lego.com/Product/AssetPopup.aspx?p=8527&AssetType=46 weblapra.

Az egyes elemeket külön-külön is bemutató webhely a LEGO Shopban.

Tesztpálya Minden alapkészlet tartalmaz egy tesztpályát, amin egyrészt kalibrálhatjuk a robotunkat, másrészt egyszerű feladatokat is megoldhatunk. Sajnos a lap hamar koszolódik, ha vegyes használattal dolgozunk, azaz a tesztlapon és a földön is. A koszfoltok óvatos radírozással eltüntethetők.

10

Érzékelők A NXT készlet látszólag 4 különböző típusú érzékelőt tartalmaz, valójában ötöt, mivel a motor egyben forgásérzékelő is. Így nem csak négy, hanem hét jelérzékelő is használható egy időben. Tekintsük át röviden az érzékelőket!

Nyomásérzékelő Az állapotában történő változásoknál lehet figyelni a benyomását, az elengedését, illetve hogy klikkelés történt-e. Ez gyakorlatilag benyomás 1, elengedés 0, klikkelés egy 0-1 váltás. Már 33 grammnyi tömeg benyomja, azaz 0,33 N erő kell a jeladáshoz, de erőkar használatával ez csökkenthető. Fontos, hogy a végállásig kell nyomni, csak akkor jelez.

Fényérzékelő és lámpa A vörös fényű lámpa kikapcsolható, ekkor csak a környezeti fényt méri. A saját lámpa fényének hullámhossza olyan, hogy többségében pontosabb mérést tesz lehetővé, ezért célszerű bekapcsolva használni. A mért érték 0 és 100 közötti.

Hangerősség érzékelő Az érzékelő hangfrekvenciát nem mér, csak erősséget 0 és 100 között. Ne felejtsük el, hogy a mérhető erősség igencsak függ a hangforrás távolságától is. Használata előtt célszerű a háttérzaj szintjét kimérni, és a fölött megadni a jelszintet.

11

Távolság érzékelő Az érzékelő inch-ben vagy cm-ben mér, 0 cm – valójában 5 cm – és 255 cm közötti tartományban nagyjából 2-3 % pontossággal. Sajnos a távolság megállapítása akkor helyes csak, ha kellő mennyiségű jel verődik vissza a felületről, így igen sok esetben nem érzékel pontosan. A weben méréseket is találunk a hatékonyságáról.

Forgás érzékelő A motorokba beépített forgásérzékelő van, amely 1 fok pontossággal képes mérni az elfordulást.

Az alapcsomagban is megtalálható érzékelők mellett továbbiak is vásárolhatók.

Színérzékelő A külön beszerezhető érzékelő, pontosabb színfelismerésre is alkalmas.

Giroszkóp Az extra érzékelő a robot térbeli mozgását képes érzékelni, bármely irányba való elmozdulást tud jelezni. Érzékenysége fok szintű.

Iránytű A külsőre hasonló megjelenésű érzékelő a mágneses teret érzékeli, így például elengedhetetlen eszköz a robotfoci versenyeken, ahol például a támadás irányát tudják vele azonosítani a robot számára. Érzékenysége fok szintű.

12

A robotok programozási lehetőségei Az NXT tégla több programozási nyelven is vezérelhető. Az összes nyelvet nem is tudnánk bemutatni, mert a lelkes robotprogramozóknak köszönhetően szinte naponta születnek újabb és újabb NXT kezelő rendszerek. A főbb és elterjedtebb nyelveket röviden bemutatjuk az alábbiakban. A robotkészlethez tartozékként kapható környezet, az NXT-G futtatható Windows és MacOS környezetben is, LINUX alatt tégla csak a C-re épülő NXC-n keresztül érhető el.

NXT-G, azaz LEGO Mindstorms NXT Graphics Code

A csomagban található CD tartalmazza az NXT-G rövidítéssel emlegetett grafikus felületű, egyszerűen kezelhető programozási környezetet. Ez a vezérlést lehetővé tevő környezet inkább a programozásban kevésbé jártas felhasználók számára készült, sőt a programozási ismeretekkel rendelkezőknek kicsit talán nehezebb is megtanulni a nyelv természetes gondolkodáshoz közelebb álló szabályait. A programtéglákból gyorsan fel lehet egyszerű programokat építeni, emiatt szinte azonnal sikerélményt nyújt a használata. Másrészt ezen a felületen keresztül sajnos nem, vagy igen bonyolultan érhető el az NXT összes vezérlési lehetősége, az összetettebb programozási feladatok bonyolultan oldhatóak meg, a jellemzők nehézkesen állíthatók be, a körülményesen mozgatható és nem átméretezhető grafikus megjelenítés miatt a nagyobb programok már nem átláthatóak, igencsak nagy monitor kell a több egyszerű egymásba ágyazott elágazásokat tartalmazó programok egyszerre történő áttekintéséhez is. Maga a tárolt program óriási méretű lesz, a lefordított kód is nagy helyet foglal a tégla memóriájában. Mindezek ellenére a robotprogramozók nagy része ezt a környezetet választja, mivel ezt külön nem kell telepíteni, hozzáállítani a téglához.

Az NXT-G LEGO honlapja

Az NTX-G honlapja a http://mindstorms.lego.com/Overview/NXT_Software.aspx címen érhető el. A http://www.ortop.org/NXT_Tutorial/html/essentials.html címről hasznos tudnivalókat tölthetünk le. A NXT-G használatához nem kell tudnunk programozni, mégis pillanatok alatt készíthetünk például egy olyan programot, amely alkalmas vonalkövetésre.

13

Egyszerű vonalkövetésre alkalmas program.

(6) (H) Készítsük el a programot! A dobozok paramétereit „olvassuk le” az ábráról!

A mo/vonalkovetes.rbt az ábra egy lehetséges értelmezést mutat be.

A http://www.teamhassenplug.org/NXT/ webhelyen számos nagyon jól használható kiegészítést, segédanyagot találhatunk.

Team Hasselplug honlapja. Érdemes időnként meglátogatni az újdonságok követése érdekében.

RoboLAB és LabVIEW

National Instruments termékei ezek is, mint az NXT-G környezet, a RoboLAB robotprogramozási környezet az igen komplex és professzionális LabVIEW vezérlési rendszerére épül. A program 2.9.3-as verziója már képes mindkét téglát vezérelni, és az FLL versenyen is használható fejlesztési környezet.

14

Az NI NXT honlapja

A http://www.ni.com/academic/mindstorms/ címen, a National Instruments honlapján külön rész foglalkozik az NXT programozásával, ahol sok hasznos és érdekes anyagot találhatunk. (7) (H) Látogass el a fenti honlapra! Milyen újdonságokat találhatsz itt?

Látogass el! Az oldal tartalma, ha nem is naponta, de rendszeresen módosul, bővül.

Programozás nyelvi elemei A programkészítés egyes konkrét elemeit az NXT-G, a NXC (Bricx CC) illetve RobotC nyelven adott példákkal mutatjuk be.

Kijelző használata Az NXT kijelzőjén szöveges és grafikus elemek is megjelenhetnek. Az NXT kijelzőjére mindhárom programmal lehet szöveget kiírni.

Betűk kiírása A kijelzőre 8 sorba írhatunk, soronként 16 karakterre.

Szöveg kiírása panel NXT-G-vel

Képek a kijelzőn Az NXT LCD Image Editor nevű programmal képeket konvertálhatunk, amiket áttölthetünk már az NXT-G-vel is az NXT kijelzőjére. A programot a http://thenxtstep.blogspot.com/2006/11/nxt-display-tools.html vagy a http://www.legoengineering.com/ weblapról ingyen tölthetjük le.

Változók használata NXT-G-ben csak globális változókat lehet létrehozni. Emellett ebben a nyelvben nagyon nehézkes a változók kezelése. NXC-ben és RobotC-ben használható lokális változóval könnyebben lehet

15

objektumorientált programot készíteni. A három nyelv közül csak a RobotC támogatja a lebegőpontos változókat.

Változó használata NXT-G-ben

(8) (H) Mit csinálhat a fenti program, mi a változók szerepe? A választ a program elkészítésével és az egyes változók kiíratásával ellenőrizzük!

Az A és B változó összegét számolja ki C-be. Az adott nevű változókat ne felejtsük el elsőként létrehozni menüből. A változók értékének a kijelzőre való kiíratására a következő példákban mutatunk be egy lehetőséget. A program mo/valtozo.rbt néven található meg.

Műveletek változókkal A változókkal az alapműveleteken kívül más számítás is elvégezhető. Letölthető olyan bővítmény az NXT-G-hez, amely trigonometriai függvényeket is tartalmaz.

NXT-G szögfüggvényei.

(9) (H) A fentiek közül mely függvények használhatóak?

Bővítmények telepítése nélkül csak a négy alapművelet végezhető el az NXT-G-ben.

A motorok használata A motor egyben forgásérzékelő is, emiatt mind kimenet, mind bemenet funkciója is van. A motor alapvetően két fajta üzemmódban működhet, szabályozás nélkül és szabályozottan. Az első esetben a terheléstől függően lassabb is lehet, utóbbi esetben a terheléshez képes igazodni. Elsőként egyetlen motor meghajtására szolgáló parancsokat nézzük át!

Motor, mint meghajtás

NXT-G motor 75%-os szabályozatlan teljesítménnyel.

Ugyanezt a parancsot terheléshez igazodóan is kiadhatjuk. Ekkor az NXT-G esetében elegendő egy kapcsoló beállítása.

Motor erő szabályozása az NXT-G-ben.

16

(10) (K) Próbáld ki a különböző motorbeállításokat egy egyenes pályán körülbelül 5 másodpercig haladó alaprobottal!

A próbapálya hossza legalább 2 méter legyen, lehetőleg sima felület.

Az előre haladás megvalósításához többnyire két motort együttesen szokás alkalmazni. Az egyenes előre haladáshoz a két motor munkáját össze kell hangolni. Az NXT motorjai a beépített forgásérzékelőknek köszönhetően alkalmasak erre a feladatra. A Motor blokk helyett a Move blokk használata kell ekkor.

Két motor szinkronizált forgású a terheléstől függetlenül.

A szinkronizálási feladat természetesen megoldható NXC esetében is. Az alábbi program az összehangolás parancsait mutatja be. A helyben fordulás is szabályozható itt, ha 100 a fenti érték, akkor a robot a két motor közötti felezőpont körül, ha 0, akkor az egyik kerék körül fordul el.

helyben fordulás, kerék körüli fordulás (11) (K) Készíts olyan robotot, amely a fenti fordulási módokra képes! Figyeld meg a robot motorjainak helyzetét a rajzon!

A motorok elhelyezésénél figyeljünk arra, hogy a fordulási középpont a két motor közötti felezőpont lesz, de csak akkor, ha a harmadik támaszpont valóban szabadon való fordulást tesz lehetővé. Sajnos még ekkor is egy kis korlátozást jelent, tehát a fordulási ív nem a középpont, hanem egy elmozduló középpont körül valósul meg.

Motor, mint forgásérzékelő A motorok foknyi pontossággal képesek érzékelni az elfordulásukat.

A fordulatszámláló szenzor beállító blokkja NXT-G-ben

Motor valódi elfordulásának átadása a motor vezérléséhez.

17

A motorok fordulat érzékelőinek használatakor a számláló nullázása is lehetséges, így adott értéket – azaz motor pozíciót - konkrétan is figyelhetünk.

Érintés érzékelő használata A szenzor csak bináris értéket ad ki - be van nyomva / nincs benyomva -, legtöbbször csak ütközésdetektálásra szolgál, vagy egy olyan kapcsolónak használhatjuk, amely a nyomás megszűnése után tesz lehetővé váltást.

NXT-G elágazás, nyomásérzékelésre.

(12) (K) Mit csinál az alaprobot a fenti program hatására? Milyen célra használható ez a program?

A fenti program kipróbálásra mo/erintes.rbt néven található meg. Próbáljuk ki úgy, hogy indításkor benyomva vagy elengedve tartjuk a nyomásérzékelőt! A program ezek alapján tehát választásra alkalmazható, azaz a két ágban elhelyezett programból programváltás nélkül is kiválaszthatunk egyet.

Fényérzékelő Furcsának tűnhet, de a fényérzékelő a legsokoldalúbban alkalmazható érzékelő. Használható nyomógomb helyett, távolságmérésre, sőt még forgásérzékelőnek is. A széles alkalmazhatóság persze a hozzá épített elemeknek is köszönhető.

Elágazás mért fény értéke szerint NXT-G-ben.

(13) (K) Fogalmazzuk meg röviden, hogy mit csinál az alaprobot a program hatására!

A robot megfelelő szintű fény esetén folyamatosan mozog előre, de amint a fény a szint alá csökken, megáll. A programot ki is próbálhatjuk az mo/fenyhatas.rbt program feltöltésével.

A kommentáló feliratokat használjuk a saját programjainkon is!

A fényérzékelő, mint fényforrás A fényérzékelő egyben egy lámpát is tartalmaz, amely külön is kezelhető. Ezt kihasználva például az elemek töltöttségét a lámpa bekapcsolásával jelző programrészletet is készíthetünk már az NXT-G blokkjainak felhasználásával is.

18

Elem töltöttségének jelzése NXT-G nyelven megvalósítva.

(14) (H) Készítsük el a fenti programot, és adjuk meg a blokkok paramétereit! Feliratozzuk (kommentezzük) a programot!

A program az alapértelmezetten telepített programblokk elemekkel nem valósítható meg, ehhez a bővítményeket is használni kell, ami innen tölthető le http://www.nxtasy.org/repository/nxt-g-blocks/. A program kisebb módosításokkal letölthető mo/elem.rbt néven. Az elem töltöttsége mV-ban értendő, ezért lesz a határ 7500 mV a relációs blokkban. A program, ha az elemek töltöttsége a megadott szint alá csökken, kikapcsolja a lámpát, addig viszont az világít.

Mikrofon A mikrofon hangszínt nem, csak erősséget képes mérni. Éppen ezért látszólag szűk felhasználási lehetőségekkel rendelkezik, jóllehet némi ötlettel ezt az érzékelőt is felhasználhatjuk számos dologra.

Robot megállítása erős hangra NXT-G-ben.

Távolság érzékelő A 0 és 255 cm közötti távolságot nagyjából 2,54 cm-kénti ugrásokkal mérni tudó eszköz sajnos nem teljesen megbízható mérést, és egyáltalán érzékelést tesz lehetővé.

Távolság figyelése NXT-G-ben

19

(15) Mit csinál a program a mért értékkel az mo/tavolsag.rbt néven tárolt program? Figyeljük meg, hogy a mért értéket a kiírás előtt szöveggé kell alakítani.

A mért értéket kiírja az NXT kijelzőjére.

Egyéb érzékelők kezelése Az alapkészletben nem szereplő, speciális versenyeken felhasználható iránytű, giroszkóp és egyéb érzékelők kezeléséhez, működésük és programozásuk megtanulásához célszerű a http://www.hitechnic.com/ címen a Products elemek weblapjait felkeresni.

Gombok programozása Az NXT tégla gombjait is programozhatjuk, állapotukat figyelhetjük.

NXT-G program a bal és jobb nyíl valamint az Enter használatára.

(16) (K) Készítsük el a fenti programot és nézzük meg, mit eredményeznek az egyes gombok lenyomása!

A program mo/gombok.rbt néven található meg.

A gombokat felhasználva azonnal adódik az ötlet, hogy játékgépként is használhatjuk a téglát. Erre példákat és ötleteket a http://www.br-eng.info/words/index.php/category/moc/nxt/ lapon találunk.

Zene A robotot beszédre bírni összetett és igen sok memóriát igénylő programmal lehetne, éppen ezért inkább érzelmek kifejezésére alkalmas jeleket adunk inkább ki, mint ahogy azt tette a Csillagok háborújának R2D2-ja is.

NXT-G dallamkészítési lehetősége

20

A távolság érzékelő által vett jelet összeköthetjük a hangszóróval közvetlenül is. Ezt mutatja be az alábbi egyszerű kis NXT-G program.

Távolság jelzése hanggal.

(17) (H) Mi lehet a szerepe a szorzó blokknak?

A szorzó blokk növeli meg a hallható tartományba a mért távolságértéket.

(18) (H) Hogyan függ a mért távolságtól a hang magassága? Az elkészített program alapján ellenőrizd a választ!

Az elkészített program mo/hangtav.rbt néven található meg. A közeli akadály esetén mély, míg a távoli akadály esetén magasabb hangot hallunk.

Kommunikáció eszközök között Az NXT és a számítógép, és másik NXT vagy mobiltelefon között alapvetően két kapcsolat alakulhat ki: vezetékes összeköttetés USB kábellel vagy vezeték nélküli Bluetooth kapcsolat. Az alapértelmezett NXT-G program az USB kábellel összekötött robotot azonnal érzékeli, míg a Bluetooth használatát a téglán engedélyezni kell, nem ismerheti fel program anélkül. Több tégla együttes használata esetén célszerű különböző és jól azonosítható nevet is adni a tégláknak.

NXT Window ablaka kapcsolat nélkül

NXT Window ablaka a kapcsolat kiépülése után.

21

Távirányítás Jól hasznosítható lehetőség, hogy bizonyos Java applikációkat támogató mobiltelefonokra feltölthetünk olyan appletet, amely segítségével azután bluetooth-os kapcsolat révén akár manuálisan is navigálhatjuk a robotunkat.

NXT vezérlése mobiltelefonról. A kommunikációra képes mobiltípusokat és a szükséges appletet a

http://mindstorms.lego.com/overview/Mobile%20Application.aspx honlapon találhatjuk meg.

NXT-vel kommunikálni tudó mobilok honlapja. Számos hasznos kiegészítés tölthető le az oldalról.

22

Optimalizálás A környezetre való reagálás, illetve a robot mozgási sebessége is javítható, ha hatékonyabb programot készítünk. Az is előfordulhat, hogy egy összetettebb és így nagyobb méretű program esetleg már nem fér el a téglán, ezért a program méretét is figyelnünk kell. A következőkben a helynyerésre és a futási sebesség növelésére mutatunk be példákat.

Memória felszabadítása Az NXT memóriája nem nagy, 64 kB. Éppen ezért nem lényegtelen, hogy az elkészített programunk mennyi helyet foglal, egyáltalán az sem mindegy, hogy mennyi szabad hely áll rendelkezésre alaphelyzetben.

Firmware frissítése után visszatöltődnek a demóprogramok és a hangok.

Töröljük a Demo és Try- kezdetű programokat! Törölhetjük a használaton kívüli hangfájlokat is, ami például a bejelentkezési hang, gombok hangja stb.

Blokkok kiválasztása Az egyes blokkok értelmezéséhez a blokk gépi kódú programját is át kell tölteni, már egyetlen használat esetében is. Így például a látszólag egyforma Motor és Move értelmező kódja viszonylag sok memóriát fogyaszt már külön-külön is, együtt kétszer annyit, tehát programban, ha tehetjük, csak az egyiket használjuk. Abban a kérdésben, hogy melyiket használjuk, segíthet dönteni, hogy a Move blokk szinkronizálja két motor mozgását, a Motor viszont csak egy motort képest meghajtani. De: a Motor blokknál beállítható, hogy ellenállástól függetlenül, a motor mindig ugyanazon sebességgel mozogjon, így lehetővé válik nagyon alacsony sebességű mozgás is. (19) (H) Készítsük el azt a programot, amely két Motor blokkal oldja meg a Move blokkot!

A feladatot a legegyszerűbben egy negyedfordulatnyi elmozdulás megvalósításához a mo/2motor.rbt fájlban találjuk meg. A két motor ebben a megvalósításban nem párhuzamosan, hanem sorosan működik!

NXT-G-hez is folyamatosan jelennek meg újabbnál újabb komponensek (blokkok), amikkel optimalizálhatjuk programjainkat. Akár a fent említett főbb blokkjainkat is lecserélhetjük!

A Mini Blocks csomag elemeire lecserélhetjük az alapértelmezett blokkokat.

A blokkokról a http://www.nxtasy.org/repository/nxt-g-blocks/ lapon további információkat találunk.

Hang előállítása Próbáljunk meg minél rövidebb hangmintákat használni, ugyanis a hangok sok helyet foglalnak az NXT memóriájából. Egy WAV alapú RSO fájl a hanghullám folyamatos mintáját tartalmazza. Így a 8 kHz mintavételű, 10 másodperces hang 80 kB helyet foglal az NXT memóriájában. Ezért inkább próbáljunk meg Melody fájlokban (MIDI) tárolt zenéket letölteni az NXT-re. Ezek RMD kiterjesztésűek. A MIDI fájlokban adott szólamok hangzási ideje van letárolva, így egy szólamnak 10 másodperces hangzása csupán 4 byte helyet foglal: 2 byte frekvencia, 2 byte hangzási hossz elosztásban.

23

Programrészletek újrahasznosítása Általánosságban érvényes a forráskódok optimalizálására a makrók használata. A szöveges programnyelvekben ugrási utasításokkal, vagy függvénybe foglalva, többször is futtathatjuk a program ugyanazon részét. Ezt az NXT-G-ben egy blokkba összefoglalva valósíthatjuk meg a My Block használatával.

Saját blokk készítése.

Ne felejtsük el a leírás rész kitöltését, mert későbbi értelmezéshez és esetleges átalakítás elvégzéséhez igen hasznos lehet. (20) (P) Figyeljük meg a saját készítésű blokk bemenő paraméterének létrehozási módját!

Igen! Figyeljük meg!

SOS sípjel programja saját blokk felhasználásával.

24

Ötletek robotokra Ebben a részben olyan egyszerű robotokat mutatunk be, amelyek jól illusztrálják az NXT fantasztikusan rugalmas alkalmazási lehetőségeit. A robotokat megépíthetjük, és működtető programjukat is elkészíthetjük a leírás alapján. Számos további ötletet a http://www.nxtprograms.com/ lapon lelhetünk.

Radar Az alábbi egyszerű robot fel tudja térképezni a környezetébe eső tárgyak távolságát.

(21) (P) Építsük meg a robotot, és készítsük el azt a programot is, amely a kijelzőjére kiírja a mindenkori mért távolságot!

A robotot működtető program alapját például mo/tavolsag.rbt néven megtaláljuk. A plusz feladat a radart körbe forgató eljárás elkészítése lehet, ami egyszerűen egy külső ciklust jelent csak a radart tartó motor léptetésével. Az építési és programozási útmutatót csak a saját megvalósítás után nézzük meg!

Az építési és programozási útmutató a http://www.nxtprograms.com/radar/index.html lapon található meg.

Rajzgép (22) (P) A két motortengelyen elhelyezett szürke fogaskerék mozgatásával rajzoljunk az NXT kijelzőjére!

A szerkezet megépítése nem okozhat gondot, mivel egyszerűen csak a két motort forgásérzékelőként kell egy-egy fogaskerék segítségével forgatnunk. Az igazi feladat a program elkészítése, bár ez sem nagy kihívás, ha a kirajzolandó pont x és y koordinátáját a két forgásérzékelő helyzetétől tesszük függővé.

A motor érzékelőként való használatára jó példa ez az egyszerű felépítésű robot. Ha nem boldogulunk egyből a precíz rajzolással, első lépésként egyszerű pontrajzolást és áthelyezést végezzünk.

25

Joystick (23) (P) Építsünk botkormányt!

A szerkezet megépítését a leírás alapján végezzük, mert nem egyszerű. A program önálló elkészítésére már bátran tehetünk kísérletet a rajzológép elkészítése után.

Az NXT téglák egymással képesek Bluetooth kapcsolatot létrehozni és kommunikálni egymással. A motor beépített elfordulás érzékelőjének köszönhetően a kar két irányba történő elmozdulását mérhetjük, és parancsokat rendelhetünk a tégla nyomógombjaihoz is, vagy a nyomásérzékelőhöz. A jeleket ezután már csak át kell küldeni a másik téglának végrehajtásra. A botkormány építési és programozási leírását a http://www.philohome.com/nxtjoystick/joystick.htm lapon találhatjuk meg.

Kormányzás fényérzékelővel A vezérlés alapötlete az, hogy a fényérzékelő felett mozgatott háromszínű panel különböző színű sávjainak más-más fényérték felel meg, így a robot más parancsokra kaphat utasítást.

A http://www.nxtprograms.com/game_control_car/ lapon pontos leírást is találunk a robot megépítéséhez.

Robotirányítás parancsszavakkal Az utasítás kiejtésének időbeli lefolyását (erősségét) vizsgálva különbséget tudunk tenni egyszerű parancsszavak között.

Három parancs hangintenzitásának időbeli lefolyása

26

A fenti eltéréseket kihasználva vezérelhetjük szavakkal a robotot! Természetesen egyszerűbb szintfigyeléssel is megoldható a feladat, csak akkor a robot és a beszélő távolsága is befolyásolja a mért értéket, míg itt a lefutás alapján tudunk inkább dönteni.

A parancsszavakra hallgató robot.

(24) (P) Készítsük el a fenti robotot! A parancsszavas vezérlést egyszerűbben is megoldhatjuk intenzitás szintek figyelésével.

A szerkezet megépítése a kép alapján sem nehéz. A vezérlő program esetében fogadjuk a tanácsot: például tapsokra működjön a robot. Egy közepesen erős tapsra balra, két egymás utánira jobbra forduljon, különben a robot haladjon előre. Ha erős hangot észlel, álljon meg, újabb erős tapsra induljon el, azaz egy erősebb tapssal hol elindul, hol éppen megáll. A programelkészítése során figyeljünk arra, hogy milyen sorrendbe kell a hangerősség figyelést elhelyezni.

Elektromos gitár A távolság érzékelőt felhasználva gitárt készíthetünk a készletből. A gitár szárán mozgatott fal szenzorra való merőlegessége miatt megbízható mérést tesz lehetővé. A hangokat ez egyes távolságokhoz rendelve, azokat távolságváltozásig megszólaltatva játszhatunk a gitáron. A pengetést a fényérzékelővel szimulálhatjuk.

Elektromos gitár

(25) (H) Készítsük el a robotot és a hangképzést vezérlő programot!

A programhoz használjuk fel a mo/tavolsag.rbt programot. A feladat csupán az lehet, hogy a szorzó beállítása mellett egy alapszintet is hozzáadjunk a távolságból számított frekvenciához. A szerkezet megépítése során a nyak formájára figyeljünk különösen, hisz a visszaverő fal akadálymentes csúszását kell biztosítanunk.

Fénykapu A szokásos vonalkövetési feladatok mellett optikai szál használatával – ez is része például a korábbi RCX LEGO készletnek – fénykaput készíthetünk, amely a kapcsolat megszakadását is képes érzékelni.

27

Fénykapu

(26) (H) Készítsük el a képen látható kaput, és programozzuk be úgy, hogy megszakításra adjon hangjelzést!

Az mo/fenykapu.rbt program annyival többet is tud, hogy a kijelzőn is visszajelez.

28

Robotépítés alapjai Ebben a fejezetben a LEGO készletből álló robotok építéséhez adunk segítséget.

Tervleíró programok A megépített szerkezet számos olyan ötletet, megoldást tartalmazhat, amit később már nehéz reprodukálni, a beépített elemeket azonosítani a kész robotban. A megismételhetőség miatt hasznos, ha használjuk azokat a tervező programokat, amelyek LEGO elemekből engednek építkezni, illetve az elkészített robotterv alapján annak építési útmutatóját is automatikusan elkészítik.

LEGO Digital Designer A LEGO hivatalos honlapjáról tölthetjük le legmegbízhatóbban a telepítő anyagát, a http://ldd.lego.com lapról. Figyeljünk arra, hogy csak az új verzió ismeri az NXT készlet elemeit, a Mindstroms készlet név alatt.

LDD egy robot építési tervével.

A felület kezelése hamar megtanulható, az angol változat mellett németül is elérhető. (27) (H) Töltsd le és telepítsd a programot a saját gépedre!

A LEGO cég honlapjáról a mindenkori legfrissebb verziót tölthetjük le.

Az alkatrész ablak

A készletben található elemeket külön csoportokba osztva találjuk meg. Az elemek mellett látható szám a még fel nem használt, azaz a valódi készletben is még rendelkezésre álló elemek számát mutatja meg.

29

Építési útmutató párbeszéd ablaka A tervező ablakának jobb felső részében válthatunk át tervezésről építési nézetre. Az ezután megjelenő ablakban az egyszerre beépítésre kerülő elemek számának megadása után – ez alapértelmezetten 3 darab – elindíthatjuk az építési lépéssor vetítését. Ez nem lesz azonos azzal, ahogy mi raktuk ki az elemeket, hanem egy feszegetés és hajlítgatás nélküli összerakási sorrendet állít elő. A lejátszás gombbal elindítva a vetítés folyamatos lesz. Az építési útmutató weblapként is tárolható, valamint nyomtatható is. Érdemes figyelni arra, és nem automatikusan hagyni beállítódni, hogy a kész leírás milyen méretű képeket tartalmazzon, mert nagyon sok legenerált útmutató alig értelmezhetően kicsiny képeket tartalmazott.

LeoCAD Az egyik ingyenes, és igen jól használható program a LeoCAD, ami a http://www.leocad.org/win.htm címen érhető el, az NXT alkatrészeket is tartalmazó kiegészítése pedig a http://www.philohome.com/nxtleocad/updatnxt.zip címről tölthető le.

LeoCAD

A program telepítése az NXT kiegészítés letöltése után a File menü Pieces Library Manager… pontját válasszuk ki, majd a megjelenő ablak File menüjében a Load Update... pontot. Ha az NXT bővítményt a program mappájába már kicsomagoltuk, akkor meg fog jelenni az UPDATNXT.LUP fájl, amit válasszunk is ki. Nem fogunk azonnal változást észlelni, a programból kilépve és újra elindítva jelennek meg csak az Electric ágban az NXT elemek. Ez a program is alkalmas építési útmutató generálására. Amíg a LDD ragaszkodik a valódi 8527-es készletben lévő elemszámokhoz, itt szabadon állíthatunk össze szerkezetet.

Mozgatás A robotok egy része képes helyváltoztatásra, illetve helyzetváltoztatásra. Mindkettőhöz szükséges legalább egy mozgató szerkezet, azaz egy motor.

Motor Ha a robot helyváltoztatásához legalább egy motorra szükségünk van.

30

LEGO NXT motorjának belső szerkezete A motor tartalmaz egy biztonsági elemet is, így nem éghet le, ha nem forog, illetve egy 1 fok érzékenységű fordulatszámlálót is beépítettek. A motor szerkezetének része még az áttételeket adó fogaskeréksor. Motorok sebességét külső áttételekkel lehet megváltoztatni a ráadott feszültség mellett. Minél jobban felgyorsítjuk a forgási sebességet, annál kisebb lesz a kapott forgatónyomaték, azaz egyszerűen megfogalmazva erőtlenebb a motor. A motor a legnagyobb erőt 9 V esetében adja le 7,2-7,4 V-os tápegység használatakor – Litium-ion akkumulátor vagy tölthető elemek esetében ennyi a feszültségszint – már kb. csak 20-30%-át.

A motorok érdekessége, hogy ha mi forgatjuk, akkor áramot termel, azaz generátorként is képesek működni. (28) (K) Kössünk össze két motort egy kábellel közvetlenül egymással! Az egyik motor forgatásakor a másik is forogni fog!

A jelenség oka egyszerű: a villanymotorok egyben generátorok is, azaz ha a külső áramforrás helyett a motortengelyt mozgatjuk, akkor az áramot indukál a forgató tekercsekben. Ez az áram hajtja meg a másik motort.

Egy- és kétkerekűek A cirkuszi bohócokat megszégyenítő egyensúlyozó robot is készíthető. Ehhez célszerű, ha a talajjal érintkező keréknek egy szögletesebbet és merevebbet választunk, vagy a motort két kerékkel fogjuk közre. (29) (P) Készítsünk olyan konstrukciót, amely egy keréken egyensúlyozik! A tervkészítés során gondoljunk arra, hogy minél magasabb a robot, könnyebb – annál több időnk van egyensúlyi állapotába visszahozni.

A robot egyszerű felépítésű, de a program elkészítése a rövid reakcióidő miatt valódi kivívás, szégyen nélkül puskázzunk a megadott honlapon.

31

Robot egyensúlyozó két keréken. A fényérzékelő nem támasz!

Forrás: http://www.philohome.com/nxtway/nxtway.htm Két motorral készíthetünk fordulni is jól tudó robotot, ha lánctalp meghajtást választunk.

Lánctalpas robot: a két motorral megoldható a kanyarodás is! Az alapkészletből igazi kihívás a

lánctalpmeghajtás elkészítése. (30) (H) Készítsük el a képen látható robot meghajtási részét!

A robot lánctalpának megépítéséhez használjuk fel az RCX készlet elemeit, ami ha színben nem is, de elemként biztos megfelelőek lesznek. Az igazi kihívás a felsőtest elfordulását lehetővé tévő szerkezet megépítése lehet.

Háromkerekűek A talajjal három ponton érintkező robotok közül az első csoport, amikor ténylegesen csak két hajtott kerék van, a harmadik érintkezési pont meghajtás nélküli, esetleg nem is kerék.

A golyó szabadon forog, a súrlódása és kotyogása miatt viszont robot precízen nem irányítható.

32

Legalább három kerék kell ahhoz, hogy stabilnak tekinthető járművet kapjunk. A hagyományos motorok mellett a háromkerekűek már ezt biztosítják.

Motor: az első kerék kormányzását az első kerék villájának forgatásával oldják meg.

A megszokott járművek mellett építhető olyan háromkerekű, amely szinte tetszőleges terepen is boldogul.

12-12 kis kerék alkotja a 3 nagy kereket.

Ugyan meglepő lehet, de a sebességek megfelelő megválasztásával a robot előre is tud haladni!

Négykerekűek A szokásos járműveink négykerekűek, amelyből egy pár hajtott, egy pár kormányzott.

33

Nagy négykerekű autó: a mozgása igen gyors lesz, de könnyűnek is kell lennie, mivel a nagy kerék

mellett kicsi lesz a nyomaték.

Meghajtás 3 motorral: a sebességet a két hátsó motor biztosítja, a harmadik motor pedig a kormányzást

oldja meg. (31) (H) Fordulni szeretnénk két keréken álló robottal, a harmadik kerék bolygó. Mennyit kell a 90 fokos elforduláshoz elmozdulni az egyes kerekekkel, ha a két kerék tengelyének közepe körül akarunk elfordulni, és mennyit, ha az egyik hajtott kerék körül?

Szívesen megadnánk a számszerű választ is, de mint már korábban írtuk, a fordulás szöge függ a harmadik támaszkerék által kifejtett ellenállástól.

Kétlábú robotok Az egyik legismertebb kétlábú NXT-robot a 8527-es készlet Alpha Rex nevű alaprobotja. A megépítése sem túl egyszerű, és ha kicsit pontatlanok vagyunk, nem minden elem illeszkedik pontosan, akkor a robot igencsak lassan és döcögve halad. Arról nem is beszélve, hogy igencsak nagy energiát emészt fel a mozgás.

34

Alpha Rex a súlypontjának áthelyezésével tehermentesíti az egyik lábát, így azt előre tudja lendíteni.

(32) (H) Építsd meg a készlet leírása alapján a fenti robotot!

A robot megépítése során különösen ügyeljünk a pontos és precíz illesztésekre. Sajnos a legkisebb pontatlanság esetén is a robot csak cammogni képes.

Rooster, a gépcsibe Sokkal hatékonyabb működésű a http://www.kclague.net/rooster/index.htm oldalon megtalálható robot működése. A láb lényegesen jobb kiképzésével a mozgás is egyszerűbb.

Rooster a súlypontáthelyezését fordulással és törzsdöntéssel oldja meg. Ez a robot már kisebb

akadályokon is képes áthaladni.

Rooster programja egyszerű oldja meg a lépkedéshez szükséges két részfeladatot.

35

(33) (H) Készítsd el, és add meg magyarul feliratozva a programot!

A program igen egyszerű, a feliratokat elegendő lefordítani is csak akár, ezért nem adjuk meg megoldásként. Talán azért annyit segítünk, hogy nem érdemes hosszú időt megadni egy motormozgatásra.

A súlypontáthelyezés két fázisa. A tehermentesített lábat lehet lendíteni előre.

Sajnos a járás külön problémája a kanyarodás. Ez ASIMO, a Honda humanoidja számára is jelentős kihívás volt, nem beszélve a lépcsőn való fel- és lemenetelről. A fejlesztők 15 évi munkája van ASIMO stabil járásában. A kétlábú annál stabilabb, minél alacsonyabbra helyezzük el a súlypontját, illetve annál könnyebben és biztosabban halad, minél nagyobb a talpa.

Egy stabil kivitelezésű biped (kétlábú)

Soklábú robotok A Jansen-féle mozgásszerkezet a rovarok mozgásához hasonló elmozdulást mutat be. A http://www.videos-star.com/watch.php?video=CufN43By79s címen található videón megtekinthetjük és érthetjük meg a mozgás elvét. A http://nxtasy.org/2008/01/11/theo-jnr/ lapon a robot megépítéséhez is találunk adalékokat.

Jansen-féle szerkezet megvalósítása.

36

(34) (H) Merre mozdul el a szerkezet?

Oldalra, azaz szemből nézve balra vagy jobbra fog mozogni.

A Jansen-féle szerkezet egy lábeleme. Az itt leírt robotok alaphelyzetben csak előre tudnak mozogni. Ahhoz, hogy fordulni is tudjanak, a két oldal lábait különböző sebességgel, vagy egyszerűen csak ellentétes irányban kell mozgatnunk, amihez viszont még egy motor kell.

Lépkedés algoritmusa A hatlábú robot mozgási algoritmusa megfigyelhető a Spike alaproboton. Ha három láb mozog, akkor egy lépéselem két fázisból áll elő.

3 láb együttes mozgásával való haladás fázisai Ha egyszerre csak két lábat emelünk fel, akkor egy lépéselem három fázisból áll elő.

2 láb együttes mozgásával való haladás fázisai

Lépegető robot A rovarok mozgásának modellezésére egy nagyon szép példa a Sorosy dot com honlapjáról letölthető lépegető megvalósítása. Kár, hogy az oldal magyar készítői csak angolul tartották fontosnak, hogy közzétegyék remek fejlesztéseiket.

37

A lépegető robot leírása a http://www.sorosy.com/lego/spider1/dls/spider1_instructions.pdf fájlból ismerhető meg, a programja is itt található. (35) (H) Készítsük el a leírás alapján a robotot!

Az elkészítés során különösen figyelünk arra, hogy az egyes lábakat mozgató fogaskerekeknek hogyan kell alaphelyzetben állniuk, mert különben igencsak rendezetlen lesz a mozgás.

(36) (K) Készítsük el a fenti robothoz az itt látható programot!

A fenti blokkbeállítási képek alapján nem lesz nehéz feladat.

Fogás robottal Az alaprobotok között találhatunk egy darujellegűt is. A fogókar alakját a megfogandó tárgytól függően alakítjuk ki.

NXT fogó alaprobotja Ha törékeny tárgyat akarunk megfogni, akkor célszerű fogaskerekes mozgatás helyett ékszíjas hajtást alkalmazni. Emellett nyomás- vagy fényérzékelővel célszerű a megfogás indítását, illetve a szorítás befejezését szabályozni. Az emberi kéz utánozása sok ízülete és szabadsági foka miatt igen körülményes, ezért egyszerűbb karmos vagy pár ujjas „kezeket” célszerű készíteni.

38

Merev tárgy fogására alkalmas fogószerkezet.

(37) (H) A kép alapján készítsük el a golyó megfogására alkalmas karmot!

A képen azt figyeljük meg igen pontosan, hogy hogyan rögzíthető a motortengelybe kapcsolódó másik fogaskerékpárt tartó tengely a motorhoz.

Az emberi kéz építésére példát a http://openprosthetics.org/myoelectric címen találunk.

Egyéb érdekes szerkezetek A helyzetváltoztatáshoz nem kell láb, sem kerék! A hernyózó mozgás révén is haladhatunk előre!

A http://mindstorms.lego.com/nxtlog/ProjectDisplay.aspx?id=f26f36fe-d103-4596-993a-d9ff18a30f92 oldalon bemutatott robotok között hernyózó és kígyózó robotokat és programjaikat is megtalálhatjuk. Ezek mellett mindenképpen nézzük meg a http://www.way2muchcaffeine.blogspot.com/ oldalon található robotokat, mivel igen ötletes szerkezeteket láthatunk működés közben is.

39

Robotversenyek Az 1998-ban megjelent RCX, majd az NXT számos robotépítő verseny alapja lett, korábban már létező versenyek szabályzatát is átalakították erre a speciális építési környezetre. A számos verseny közül hazánkban az általános és középiskolások körében már elterjedt három versenyt mutatunk be röviden.

FLL, First LEGO League A világon valószínűleg a leginkább elterjedt robotversennyé nőtte ki magát az eredetileg csak az USÁ-ban meghirdetett verseny.

A 2007-es tribergi középdöntő egyik versenypályája.

A hazánkban 10-16 éves korúak számára kiírt verseny komoly csapatmunkát igényel, 5-10 diák együtt egy közös projekten dolgozik. A csapatok szabadon szerveződhetnek, nem kell iskolához, sőt egy településhez sem kötődniük. A csapat vezetője egy 18. életévét betöltött személy lehet, aki viszont nem tagja a szó hagyományos értelmében a csapatnak, csak a vezetési feladatokat kell ellátnia. Érdekesség, hogy például a 2007-es budapesti győztes egy amerikai diákokból álló csapat volt, egy lelkész vezetésével. A verseny adott évi témaköre már márciusban ismert, az utóbbi években főleg a környezetvédelem és az energiagazdálkodás egyes területeit érintette. A tanulóknak kutatási munkát kell végezniük megadott szempontok szerint, eredményeiket, a megismert problémákra kitalált megoldási javaslataikat 5 percben a versenyen be is kell mutatniuk. A szerezhető pontszám negyedét ez a munka adja. Minden év szeptember elején válik ismertté ez a szempontrendszer és az a LEGO alkatrészekből megépíthető pálya felépítése, valamint a robotfeladat pontos leírása, amely szerint a pályán a meghirdetett témához kapcsolódóan tucat körüli feladatot kell megoldania 2,5 perc alatt a csapat által egyedileg megépített robotnak, lehetőleg minél többet hibátlanul. A versenyen két pálya egymással összefordítva áll, mivel közös feladatot is adnak évek óta. Az feladattól függően az ezt gyorsabban megoldó szerezheti csak meg a maximális pontot, vagy éppen akkor kaphatnak csak mindketten pontot, ha együttműködnek. A verseny honlapjáról letölthető csapatvezetői kézikönyv pontosan tartalmazza a pálya elhelyezésére és megvilágítására vonatkozó előírásokat. A magyar hivatalos FLL honlap címe http://sagv.gyakg.u-szeged.hu/fll/. A régió, így a magyarországi verseny felügyeletét a német HoT látja el. A cég http://www.hands-on-technology.de/ című honlapjáról a korábbi évek feladatai letölthetőek, továbbá hasznos tudnivalók érhetőek el mind német, mind angol nyelven is.

40

FLL európai honlapja

A honlap azért is érdekes, mert a jobb felső sarkában lehet a csapatokat regisztrálni, a csapattagoknak belépni. A megnyitott FLL menüben lehet tájékozódni a versenyről, a jelentkezők számáról, a versenyhelyszínekről. A korábbi évek feladatairól az FLL Archiv link alatt találunk anyagot. (38) (K) Nézd meg a korábbi évek feladatait!

A 2004-től a szegedi FLL honlapon magyarul is megtalálhatóak a feladatok leírásai.

A robot számára felállított pálya teljesítése adja a csapat összpontszámának újabb negyedét. A robot programja és technikai megoldásai egy újabb negyedet képez. A teljes pontszám utolsó alkotóeleme a csapatmunka értékelése.

LEGO kupák a világdöntőn 2006-ban A versenyen kategóriánként és összesítve is osztanak díjakat. Az egyes regionális helyszínek legjobbjai jutnak tovább a december eleji Kelet-Európai Döntőbe, és onnan a legjobbak vagy az ázsiai vagy az atlantai világdöntőbe. Ezek a versenyek általában április közepén kerülnek megrendezésre.

Robotszumó A robotépítő versenyek között hazánkban viszonylag új az egyik amerikai verseny szabályait átvevő Első Magyar LEGO Szumó Verseny. A verseny hivatalos honlapja http://sagv.gyakg.u-szeged.hu/szumo/ címen érhető el. Itt már képeket és videókat is találunk a 2008-as versenyről.

41

A szabályok

Küzdőtér A szumó küzdőtér, a dohjo egy olyan összesen 122 cm (4 láb) átmérőjű, matt feketére festett korong, amelyet 5 cm széles körkörös fehér gyűrű határol le. A küzdőtér felszíne sima furnérlemez, és néhány pár centivel a talaj fölött áll, hogy a bíróknak könnyebb legyen eldönteni, hogy melyik robot hagyta el elsőként a küzdőteret. A robot akkor tekinthető a küzdőtérről kiesettnek, ha valamely része megérinti a talajt.

A küzdőtér pontos adatai inchben megadva

Hogyan játszák a szumót? A szumó robotok indításkor a szumó küzdőtérre egymástól 30 cm-re helyezik el, egyenlő távolságra a küzdőtér központjától (kb. 15-15 cm-re a központtól). A robotok egy egyenes mentén helyezkednek el, és mindegyik a másikkal ellentétes irányba indulhat el. Így a robotoknak aktívan kutatniuk kell az ellenfél után, és nem lehet lehengerelni az ellenfelet egyből. A verseny több körből áll. Mindegyik kör maximum három perc. Ha nincs nyertes a három perc végén, akkor a kör döntetlen. Az időtől függetlenül a kör nyertese az a robot, amelyik több érvényes rohamot nyer. Egy roham nem lehet hosszabb, mint egy perc. Egy kör nyertese két pontot kap, a vesztes nullát. Ha az eredmény döntetlen, akkor mindegyik robot egy-egy pontot kap. Ha egy roham alatt a robotok összeakadnak, vagy láthatóan nem tudnak döntésre jutni, mindkét versenyző elfogadhatja a roham újraindítását. A robotok többször is újraindíthatóak, de összesen három percig tarthat ekkor is a kör. (Más szóval a három perces korlát fennáll mindig, és a kör eredményét a befejezett rohamok eredményei határozzák meg akkor is, ha három befejeződött roham nem valósult meg ez alatt az idő alatt). Egy roham kezdetén a robotok gazdái, a játékosok meghajolnak egymás előtt. Majd a játékvezető beszámol: „három, két, egy, GO!” A játékosok aktiválják a robotjaikat, és a térfelüket elhagyják, helyet foglalnak a kijelölt területükön. A robotoknak három másodpercet várniuk kell, mielőtt bármilyen elmozdulást kezdenének (ez alól kivétel tehát, hogy az alakja változik, például kinyúlik vagy behúzódik egy kar vagy másik része). Az első elmozdulásnak a küzdőtér középpontjától távolodónak kell lennie. Ha nem egyértelmű a robot elülső része, akkor az első mozgás iránya fogja meghatározni a robot az elülső részét a továbbiakban is. A robotnak mindaddig kell előre, a középponttól sugár irányban távolodva mozognia, amíg el nem hagyja teljes terjedelmében a kezdő területet, amit a robot számára nem érzékelhetően, de a bírók számára jól láthatóan jelölnek a pályán. Ezután bármilyen mozgást szabadon végezhet. Ha a robot a másik robotot az első alkalommal támadni akarja, akkor azt háttal nem teheti meg. Azaz a robot nem teheti meg azt, hogy elhagyja a kezdőpozíciót, majd egyből hátramenetbe kapcsol, és úgy támad neki az ellenfélnek. A támadáshoz arccal felé kell fordulnia először. Ha a robot első alkalommal szabálytalanul támad, a rohamot elveszti. Ha egy robotot már ért támadás, vagy végrehajtott egy támadást, utána bármely irányban haladva támadhatja az ellenfelét. A robotnak egy roham kezdését követő tíz másodpercen belül el kell kezdenie előre mozogni. A robotok küzdelme, azaz egy roham addig tart, amíg az egyik egység mozgásképtelen nem lesz vagy elhagyja a küzdőteret. Egy robotról úgy válik egyértelművé, hogy elhagyta a küzdőteret, ha bármely része

42

megérinti a padlót, vagy a gazdája hozzáér a küzdőtéren. Ha egy robot teste lebeg a küzdőtér élén, és nem érinti meg a talajt, akkor 10 másodperc után lesz csak vesztes, ha addig a másik robot nem hagyja el a küzdőteret. Ha a másik ezalatt talajt fog, akkor ez első, fennakadt robot nyer. Az a robot, amelyik kilöki a küzdőtérről az ellenséget vagy megbénítja, győz, és ha egy robot öngyilkos lesz, akkor a másik robot győz. Mindkét tény megállapításában a bírók ítélete a döntő.

A szumórobotnak el kell férnie egy 1×1 láb méretű téglalapban, és nem lehet nehezebb elemekkel együtt

2 fontnál.

A szumó robotokról Minden szumó robotot úgy kell megépíteni, hogy 100 százalékban szétbontható legyen, és eredeti LEGO alkatrészekből állítják elő. (Ragasztást, szétvágást, olvasztást vagy bármilyen más módosítást az alapszabályok nem engednek meg). Ez a szabály az érzékelőkre és motorokra szintén vonatkoznak. A robotnak el kell férnie egy 1×1 lábnyi négyzetbe, bárhogy is áll benne, akár átlósan is. (1 láb =30,48 cm) Magasság határ nincs. A robot alapjának egy LEGO MINDSTORMS téglának (NXT vagy RCX) kell lennie. A robot súlya nem lehet több kettő fontnál elemekkel együtt. (2 font = 0,909 kg) Robotoknak elegendő állóképességgel kell rendelkeznie ahhoz, hogy potenciálisan 12-36 percet versenyezzen újratöltés nélkül. Egy mérkőzés alatt nem lehet megváltoztatni a robot szerkezetét vagy a programozását. A robotnak teljesen autonómnak kell lennie, de a korábban betáplált programok között lehet váltani a körök előtt, de kör közben már nem.

Kategóriák A verseny 3 kategóriában kerül kiírásra. A szumó küzdelemre a robotoknak kötelező nevezni, a többi kategóriába csak ezután nevezhetnek be. A három kategória:

Legjobb szumórobot Legjobb program Legjobb robotterv

A versenyzők számára verseny előtt 2 hónap áll rendelkezésre a verseny honlapján való regisztrálásra, nevezésre a kategóriákba. A Legjobb program és a Legjobb robotterv kategóriában indulóknak a verseny napja előtt 1 héttel a robot programozását illetve építési leírását el kell juttatniuk a zsűrinek, akik a technikai díjakat ezek alapján a versenyen hirdetik ki. Egy játékos több robottal is nevezhet. Lehet nevezni olyan robottal is, ami egy korábbi Szumó versenyen már szerepelt, de ekkor a jelentkezésnél ezt közölni kell, és meg kell nevezni a felhasznált robot eredeti építőjét. Értelemszerűen ekkor csak a szumó kategóriában indulhat a robot. Minden dokumentációt elektronikusan el kell küldeni a versenyszervezőknek. A videofájloknak letöltési címét elegendő megadni.

43

Követelmények a Legjobb szumórobot kategóriához Minden szumórobotot 100 százalékban eredeti LEGO alkatrészekből kell megépíteni, azok

módosítása nélkül. Nincs korlátozás a LEGO elemekre, MINDSTORMS érzékelők, motorok, programozható téglák, HiTechnic érzékelők, vagy Bluetooth vagy infra kommunikáció szabadon használható a roboton belül.

Minden robotnak bele kell illeszkednie egy 1×1 láb méretű négyzetes keretbe. Magassági határ nincs. A robot csak LEGO MINDSTORMS RCX vagy NXT téglát tartalmazhat. A robot tömege nem lehet több 2 fontnál. Képek - tiszta, jól megvilágított, nem homályos - a robotról, legalább egy-egy a 3 fő irányból. Videó - ez opcionális, készülhet a játékosról, a robotjáról, annak építéséről, felkészüléséről,

edzéseiről.

Követelmények a Legjobb program kategóriához A robotot irányító program leadása legkésőbb a verseny napja előtt 1 héttel nevezési feltétel a

kategóriában. A robotot működtető program minden utasításának megcímkézettnek kell lennie. A játékosnak a versenyen meg kell tudnia magyaráznia a bíróknak, hogy a robotja hogyan

működik.

Követelmények a Legjobb robotterv kategóriához A robotot építési leírásának leadása legkésőbb a verseny napja előtt 1 héttel nevezési feltétel a

kategóriában. Leírás - teljes és pontos - annak az írott magyarázata, hogy a robotot hogyan tervezték, milyen

főbb elemekből áll. LEGO Digital Designer File (LDD) leírás vagy építési útmutató PDF fájlban - nem kötelező

dinamikus építési útmutatónak lennie, azaz lehet statikus PDF is - e fájlnak dokumentálnia kell a robot elkészítésének valamennyi fontos lépését.

(39) (K) Nézd meg a robotszumó verseny honlapját!

A honlap tartalma évente változik meg gyökeresen, mivel egy évben csak egy nagy országos verseny van, de ennek ellenére a tavaszi szünet előtti és utáni 2-3 hónapban is érdemes ellátogatni a honlapra a http://sagv.gyakg.u-szeged.hu/szumo/ címre.

(40) (H) Rendezzetek szumó háziversenyt! A pályának egy 122 cm átmérőjű kartonlapból elkészített terület is megfelel.

Amennyiben mód van rá, akkor hivatalosan hitelesített pálya is rendelhető, olyan, amit a versenyen is használnak. A dohjo megrendelése a verseny honlapján keresztül oldható meg a legegyszerűbben.

44

2008-as magyar szumó bajnok – KJG, Kecskemét

A kecskeméti KJG tanulói által tervezett szumóharcos.

A robot ismertetése Az építők, Szabó Ádám és Pálkovács László sok ötlet és gondolkozás után ezen robot mellett döntöttek. Felmerült ötletként automataváltós, lánctalpas, óriáskerekű robot is, de végül ez az ötlet bizonyult a legjobbnak. Egy délután alatt megtervezték LDD-vel, és megírták rá a programot, másnap már össze is rakták és tesztelték. Először a téglához nehezen lehetett hozzáférni, és az akkumulátor cserénél sem fért el a kezük, ezért megfordították a téglát, és feljebb emelték a robot testét. Az áttételen is változtattak. A robot tömege 890 gramm, elemekkel együtt. A 80 mm × 49 mm (átmérő × szélesség) méretű kerék szinte teljes szélességében érintkezik a talajjal, ebből kifolyólag óriási a robot tapadása. A tolólap nagyon széles és stabil, rajta helyezkedik el a fény- és az ultrahang szenzor. A tolólap szöge is olyan, hogy ha a másik robot nyomást gyakorol a tolólapra, akkor a kerekeknél is plusz nyomóerő jelenik meg, tehát nő a tapadás. A tégla fejjel lefelé van fordítva, mert egyébként nehéz lenne kezelni, mivel a motorok közvetlenül kapcsolódnak hozzá.

A robot terve megtalálható a mellékletben a /szumo/sumo.lxf néven A legjobb program a kategóriában is indult a robot egyszerűségének köszönhetően hatékony is volt. A programot elsősorban Pálkovács László írta, és a tesztelések folyamán közösen fejlesztették.

A robot programja a mellékletben megtalálható /szumo/sumo.rbt néven.

RoboCup A nem csak LEGO robotokra épülő versenyek közül talán a RoboCup a legismertebb. A verseny honlapján, a http://www.robocup.org/ címen találunk információt a korábbi évekről az ez évi versenyről is. A RoboCup verseny hivatalos honlapja A fiataloknak szóló változatáról annak hivatalos honlapjáról szerezhetünk be naprakész információt a http://rcj.sci.brooklyn.cuny.edu/ címen.

RoboCup Junior honlapja

45

A honlapról a különböző versenyszámok szabályait, illetve a korábbi évek feladatait is megismerhetjük. (41) (K) Nézzétek meg a robotfoci, a robottánc és a vonalkövetési verseny feladatait!

A honlapon évente jelenik meg lényegesen új információ.

(42) (H) Rendezzetek háziversenyt, vagy egyszerűen csak bemutatót a verseny szabályainak megfelelően!

A pontos szabályértelmezés végett célszerű a versenyen már indult csapatok tagjait megkeresni levélben. A kapcsolatteremtéshez használható az FLL vagy a szumóverseny honlapján működő fórum is.

46

NEXTWORK Verseny robotjai

Butterbeans - Szent István Gimnázium Nehézségi fok: kezdő

Alapötlet A csapat egy egyszerű, vakvezetőnek használható robotot épített. Ez alatt azt értsük, hogy adott egy kis terület, amelyen például dobozok találhatóak. A robot nem megy ezekhez közel, és ha fordul, egy figyelmeztető hangot hallhatunk. A robot segítségével játszhatunk is: nekünk bekötött szemmel kell követni a robotot egy rá kötött madzag segítségével. Ha valamilyen okból kifolyólag a pályán egy pillanatra meg szeretnénk állni, akkor a madzagot erősebben meghúzva robotunk megáll, mivel az egy nyomásérzékelőre van kötve.

Mechanika A robot mechanikai felépítése elég egyszerű, a készlet leírásában található TriBot-ra hasonlít. A felépítést nem kell feltétlenül szorosan követni, attól eltérhetünk úgy, hogy stabil maradjon a robot. A kábelek a robot háta mögött nagy helyet elfoglalnak, ennek hatékony csökkentésére az építők nem találtak módot, viszont a kábeleket összefogták egy egyszerű megoldással, ezzel legalább nem olyan széles a kábelrengeteg. A nagy kilógás hátránya, hogy néhány tárgy beleakadhat, ami vagy a tárgy lerántásával jár, vagy a tárgy megfogja a robotot.

Építési útmutató Megépítés ideje a leírást követve max. 1 óra, de ha egy kicsit jártasabbak vagyunk a LEGO világában, ez ennél kevesebb is lehet. A robot viszonylag gyorsan elkészíthető, és egyszerű a hozzátartozó program. LDD-ben nem sikerült megcsinálniuk a hátsó támasztást. Az ugyanaz, ami a TriBot építési leírásában is megtalálható. Az elemcsere könnyen megoldható a kockát tartó két fehér elem kiszedésével (éppen ezért különböző színű).

Lásd a mellékletben (szent_i_g/butterbeans.lxf)

Programozás A robot programját a készlethez kapott szoftverrel írták. A program elég egyszerű: a robot tapsra elindul, majd egyenletesen jobbra tart. Ha 35 cm-nél közelebb kerül a robot valamihez, lejátszik egy hangot, majd elfordul balra, és ez ismétlődik. Az ultrahang a harmadik motorra van kötve, ami jobbra fordul 100 fokot, majd 0,2 másodperc múlva vissza fordul. Így folyamatosan forog az érzékelő jobbra-balra, növelve a látóteret. A nyomásérzékelőt benyomva a robot haladása szünetel, addig, amíg az érzékelő be van nyomva. Ha a robot elér egy fehér jelzést, akkor megáll, és befejeződik a program futása. Ez a program kb. 9 kB-ot foglal a kocka memóriájából.

Mellékelt program nincs, de a szöveges leírás alapján elkészíthető.

Tesztelési eredmények A megépített robot nem nevezhető túlságosan stabilnak. Továbbá például szőnyegen előfordulhat, hogy a hátsó támasztókerék nem tud rendesen forogni, és így felborul a robot. A robot 10-ből 7-szer nem megy neki semminek, a többi esetnél pedig a robot „szűklátókörűsége” a probléma. Azaz csak egy ultrahang szenzor van, ami 90 fokot forog oda-vissza. Ezért előfordul, hogy pont rossz ívben érkezés esetén nekimegy valaminek. A fényérzékelő, a nyomásérzékelő és a hangérzékelő mindig hiba nélkül működött.

MÓCÁRT – Árpád Gimnázium Nehézségi fok: mechanika kezdő, program haladó

47

Alapötlet A robot üvegpoharakon zenél, példaként lejátssza a Bociboci tarka dallamát. A poharakat vízzel előre fel kell hangolni. A robot működése közben megtekinthető a http://www.youtube.com/watch?v=c8DjNuLDPpQ címen is.

A működés főbb lépései: 1. lépés: a lerántás Robot egy sötét lepel lerántásával kel életre. A lepel lerántásakor az ügyességet jutalmazza a robot, egyrészt elég gyorsnak kell lenni a lerántáskor, másrészt, úgy kell a lerántást végrehajtani, hogy ne rántsa magával a lepel a robotot is. 2. lépés: a robot zenél Ha a lepel lerántása sikerrel megtörtént, a robot a poharak ütögetésével muzsikálni kezd. Az éppen lejátszásra kerülő hangot, a kijelzőn folyamatosan olvasni lehet. 3. lépés: a taps Mócártnak érzékeny művészlelke van, ezért a zeneszám lejátszása után meg kell őt tapsolni. Amennyiben nem hall tapsot, vagy egyéb zajt, a zenék lejátszását befejezi. A hallott tapsot a kijelzőn értékeli is (borzalmas taps, gyenge taps, közepes taps stb.), majd belekezd a következő zeneszám lejátszásába.

Mechanika A robot viszonylag egyszerű mechanikai felépítésű, a három motor mindegyike egy-egy ütőt mozgat, a dallamnak megfelelő számsor alapján.

Építési útmutató Nincs mellékelve.

Programozás A lejátszott fájl szerkezete a pentaton hangsor számozásán alapul: dó = 1, ré = 2, mi = 3, szó = 4, lá = 5, szünet = 0 Ritmust a szünetek alkalmazásával lehet megoldani. A tá ritmus egy hang és egy szünet együttese. A fájlokat szöveges editorban, formázás nélkül, folyamatosan kell beírni. Például a Bociboci tarka fájl így kezdődik: 13134040. Program C-ben készült, sajnos nincs mellékelve, csak a szolgáltatásai kerültek leírásra.

Mellékelve a program (arpad_g/program.txt)

Tesztelési eredmények A tapasztalat szerint a robot megbízhatóan működik, a leleplezéses indítás talán egy kicsit bonyolulttá teszi a használatát, egyszerűbb azonnal lepel nélkül indítani.

48

Lehetséges továbbfejlesztések, ötletek Extra elemek is kerültek a programba. 1. funkció A nyomógomb megnyomására a robot a következő zeneszám lejátszására ugrik. 2. funkció „Ne nyúlj a csokimhoz!” Ha a robot csokijához nyúlunk, a robot zavarba jön, abbahagyja a dallam lejátszását, és megbízhatatlan működésbe kezd, illetve pittyegő hangot hallat. Hiába, nagyon félti a csokiját.

Macsfeeder – Homo Robotikusz Team Mechatronikai Szakközépiskola Nehézségi fok: haladó

Alapötlet A robot feladatára már a nevéből is lehet következtetni. A feladata nem más, mint a macska megetetése. A tálakat egy padlóra ragasztott vonal mentén keresi meg. Ehhez beállítható, hogy mikor szeretnénk etetni házi kedvencünket, majd feltöltjük a két csápot macskaeledellel, és hagyjuk a vonalon. Az idő lejárta után a robot útra kel, feltölti a tálakat és visszatér a helyére. A pálya kialakításánál figyelni kell arra, hogy túl éles kanyarokat ne tartalmazzon, illetve a tálak első elhagyása után egy hurkot kell kialakítani, hogy vissza tudjon térni.

Mechanika, építési útmutató A robot megépítése kb. 3-4 óra, az összetett mechanika miatt, nagy precizitást igényel. A tégla elhelyezése miatt az elemcsere egyszerű.

Lásd a mellékletben (mechatron/macsfeeder.lxf)

Programozás A program a mellékelt grafikus környezetben készült, 3 fő részre tagolható. Vonalkövetés Ebben a részben, a fényszenzor figyeli a pályát, ha rámegy a vonalra, akkor rögtön letér róla, és amint letér, rögtön visszatér rá. E közben folyamatos hajtásról gondoskodik, így egy folyamatos cikk-cakkmozgással halad a vonalon. Amint az ultrahangos szenzor tálat érzékel, megáll. Váltás A több funkció érdekében egy váltómű került a robot hátsó részébe, ennek behangolása a legnehezebb. Nullpont használata a motorok holtjátéka, pontatlansága miatt fontos. A megoldás a következő: Minden váltás előtt tegyük vissza a normál hajtásfokozatba, ami egy szélső állás, így innen pontosan tud odamenni a motor, ahova kell. Borítás Az eledel tálba öntése, elsődleges a váltó pontossága, a pontos borításhoz.

A program a mellékletben (mechatron/program/main.rbt) A programhoz készültek saját blokkok, azok a Blocks mappában találhatók.

Tesztelési eredmények A szenzorok mintavételezési sebességét érdemes lelassítani, mert az ultrahangos szenzor nagyon leterheli a téglát, ezért a vonalkövetés funkció elveszhet. A mozgó alkatrészek miatt a kábelekre nagyon oda kell figyelni, illetve a váltómű beállítása a legfontosabb. A szíjhajtás erőátvitelénél figyeljünk a gumi feszességére. A fényérzékelő szenzorra érdemes földig érő „szoknyát” rakni, hogy a külső fényviszonyok ne befolyásolják a működését. A robotot működés közben megnézhetjük a http://www.youtube.com/watch?v=uRMFRrTvmTE címen.

49

Mat-Robi - Velkey Géza, Váli Tamás, Mikus Ádám, Molnár Dávid Szabó Lőrinc Tagiskola, Balassagyarmat Nehézségi fok: haladó

Alapötlet A csapat olyan robot megépítését határozta el, amely egy pályán végighaladva a labdát megragadja, majd azt kimentve egy biztos helyre elteszi. A labda jelképezi azt a valamit/valakit, amit ki kell menteni a veszélyes útszakaszról. A labda által szimbolizált terhet MAT–ROZI névre keresztelték. A robothoz tartozó pályát is megépítették.

A robot működésközben is megtekinthető a mellékelt videón.

Videó a mellékletben (szabol/matrobi.wmv)

Mechanika A robot a színkövetésre van beprogramozva, de korrekció közben az ultrahangos szenzor is működik, ezért a pálya végén betettek egy fehér csíkot, ami miatt korrekciókat hajt végre, és így „látja” a falat. A programban a labda biztos lyukba ejtése érdekében beállították, hogy mennyire álljon meg a faltól.

Építési útmutató A szerkezet a Spike és a Tribot robot alapjaira épült színkövető mentőrobot. Az építési ideje körülbelül 1 óra és 45 perc.

Építési útmutató a mellékletben (szabol/matrobi.lxf)

Programozás A robot tapsra indul. Felveszi a labdát (terhet), és végigviszi a fekete csíkon (alagúton). A pálya végén egy fal jelzi, hogy a robotnak hol kell megállni. Az előtte található vészkijáraton (lyukon) engedi le a kimentett MAT-ROZI-t. Az algoritmus fő lépései:

A robot köszön: „hello”. Vár a taps (hang) jelzésre és elindul a pálya bejáratától. Kinyitja a csápját 25°-os szögbe és addig megy, míg nem ér az érzékelőjéhez valami. Becsukja a csápját. Elkezdődik a vonalkövetés a veszélyes ismeretlen útszakaszon A kijáraton keresztül kiviszi a „terhet”.

Program a mellékletben (szabol/matrobi.rbt)

Tesztelési eredmények Az első teszteken tapasztalt mozgási-, fordulásirányi hiányosságok kijavítása után a program és a robot megbízhatónak bizonyult. A külső fényviszonyok alig befolyásolják a nyomkövetési képességét.

50

Lehetséges továbbfejlesztések, ötletek A robot a pályán kereshetné is a tárgyat, érdekesebb lenne, mint egyszerűen neki menni a megadott helyen. (43) (H) Készítsünk algoritmustervet egy adott útszakasz tetszőleges helyén lévő tárgy megkeresésére! Használjuk ki a nyomás és a távolságérzékelő lehetőségeit is a kereséshez!

Az algoritmus alapja egy véletlenszerű bolyongást megvalósító alprogram is lehet, ami például a fordulások szögét adja meg tetszőlegesen megválasztott tartományban egy bizonyos esemény bekövetkezésekor. A sok különböző irányban mozgó robot egyre nagyobb valószínűséggel ütközik össze a céltárggyal.

Roboteki - BJG Juniors Batsányi János Gimnázium, Csongrád Nehézségi fok: kezdő

Alapötlet A csapat minden tagja ötödik osztályos, korábban az Imagine-ben LOGO nyelven programozták a képernyőteknőcöt. Az ötletük megépíteni Robotekit, amely a képernyőteknőc utasításait a valóságban is végrehajtja, azaz egy filctoll segítségével nyomot hagy a papíron.

A csapat tagjai

Építési útmutató A robothoz sajnos részletes építési leírást nem mellékelt a csapat, de a fénykép alapján egyszerűnek látszik hasonlót elkészíteni. Az építés idejét a csapat nagyjából két órára becsülte.

Roboteki A plusz eszköz, a toll gyakorlatilag bármilyen felépítésű, 2 kerék meghajtású robotba beépíthető, csak néhány szempontot kell figyelembe venni az egyedi kivitelezés során.

Célszerű 3 kerekes járművet építeni: az első két kerék legyen a meghajtott, és egy hátsó, gumiköpeny nélküli bolygó-kerék, ami a stabil forduláshoz kell.

A toll méretéhez kell igazítani az íróeszköz foglalatát, hogy az szoros legyen, se ki ne csúszhasson, és be se nyomódhasson.

a tok a robotban függőleges helyzetű legyen.

51

a tok pontosan a két meghajtott kerék között középen legyen, mert csak így marad egyhelyben forduláskor.

+ ha a tollatfel és tollatle parancsokat is használni akarjuk, akkor a mozgató mechanikához kell a harmadik motor és például fogaskerekes emelés-süllyesztés.

Programozás A robot programtöredékét készítette el a csapat, amit a LEGO Mindstroms NXT-G szoftverében írta, mert itt a programot grafikus elemekből tudták összerakni, és könnyű volt a paramétereket beállítani. A rajzoláshoz szükséges, LOGO-ból már megismert eljárásokat kell elkészíteni. Ezek az előre 1, hátra 1, ahol az egy keréknyi fordulás lett az egység, és jobbra 90, balra 90, amit fokban kell értenünk. A továbbfejlesztett változatban szerepelne a tollatfel és tollatle parancs. A megvalósított parancsokat saját blokként készítették el. Ebből az egyszerű utasításkészletből is érdekes ábrákat lehet összerakni! A helyben fordulás alatt a toll nem mozdulhat el, ezért fontos, hogy pontosan a két kerék között legyen. Az alapkészletben lévő kereket használva azt kapták, hogy a 90 fokos helyben fordulat úgy oldható meg, hogy az egyik kerék előre, a másiknak ugyannyival hátra kell fordulnia. A motorokra beállított helyes fordulási szög 165 fok lett, próbálgatások eredményeként. Programozási nehézség volt, hogy a gyári move blokk két motort kezel egyszerre, és csak köríven képes fordulni, mert motornyomatékkal dolgozik, a pont körüli forduláshoz saját megoldást kellett fejleszteni. A másik gond, hogy túl nagy lendülettel nem szabad fordulni, mert a tervezetten túllendül a jármű. Éppen ezért a motornyomatékot kb. 20 %-ra kellett beállítani a forduláshoz, és 30 % körülire az előre haladáshoz.

jobbra 90

balra 90

52

előre Az itt megadott utasításokkal már rajzolhatunk is:

(44) (K) Mi lesz a rajzolás eredménye?

Egy négyzet.

Tesztelési eredmények A robot csak tökéletesen sima felületen tud az előírások szerint haladni. Elvileg ugyanazokat a rajzokat el tudja készíteni, mint rokona a képernyőteknőc, csak Roboteki kicsit lomhább lesz.

Lehetséges továbbfejlesztések, ötletek Tetszőleges léptékű paraméterezést kifejleszteni. Ki/be kapcsoló gombként nyomásérzékelőt lehet hozzáilleszteni. Ha a rajzterületet szélesebb fekete vonallal határoljuk, akkor egy fényérzékelő tudja figyelni, hogy

ki ne fusson a robot. Ultrahangos távolságérzékelővel tereptárgyakat is érzékelhet, és ekkor megáll a rajzolással. Hangvezérléssel működjön.

e. d. – Extreme Digital Nehézségi fok: haladó

Alapötlet

e.d. Robotuk feladatába nem csak a humort, hanem a kreativitást is szerették volna belevinni. Az első ötlet, aminek megvalósításába belekezdtek az a „Zenész” robot volt. Az ütögetés finomságát viszont nem tudták oly mértékben befolyásolni, hogy számonként ne kelljen egy új készletre beruházni.

53

Kössék össze egy digitális fényképezőgéppel vagy egy kamerával? Megpróbálták. Sajnos ez a feladat már meghaladta a képességeiket, és újra elolvasva a kiszabott feladatot, ezt nem is tehették volna meg, mert önállóan nem tud képeket készíteni. Viszont képet alkotni nem csak fényképezőgéppel lehet. A rajz lesz az, amire a robotot megtanítják! Így a robot sorsa egyértelmű lett: a Marketing csoport új tagjaként, mindenhol otthagyja kézjegyét, ezzel is népszerűsítve munkaadóját az Extreme Digital-t.

Mechanika A készletben található három motort kihasználva a robot első kerekeit és a filctoll irányításához szükséges meghajtást oldották meg. Az alakzatok, amiket létre szerettek volna hozni, megkövetelték a dinamikus fordulást, így a kétmotoros megoldás mellett döntöttek. A harmadik motor a filctoll mozgatásáról gondoskodik. Amikor a robot „helyezkedik” a kijelölt pontig a filctollat felemelve tartja, míg rajzoláskor a filctollat leengedi.

Építési útmutató Építési útmutató nincs, de a robotról készült fényképek segítenek a munkában (ed/tervek.zip)

Program A lehetőségek közül a csomag részeként kapott Lego Mindstorms NXT-G programot választották. Egyikük sem rendelkezett programozói tapasztalattal, így a választásuk adott volt. Az ismeretlen lehetőségek feltérképezése volt az, ami az idejüket leginkább vitte. Képet alkotni végül „pixelekből” képzelték el, utalva a digitális képalkotásra. E szerint e.d. sávokban haladva a megadott pontnál leengedett filctollal húzza a vonalat. A pálya végére érve a sok-sok vonal adja ki a képet, ami az Extreme Digital logója.

Lásd a mellékletben, a több részprogramot egyetlen tömörített fájlba helyeztük el (ed/program.zip)

Tesztelési eredmények Mire kitapasztalták a legszűkebb és legpontosabb fordulást a pixelhatású képükhöz, addigra derült ki az is, hogy a filctoll és a robot együtt nem képesek szép és pontos vonalak húzni. Kénytelenek voltak leegyszerűsíteni az elképzelést, és azt papírra vetni. A második alakzatként robotjuk nevét „ED”-et szerették volna megjeleníteni, de az előbb említett probléma miatt annak bemutatását inkább a minőség megőrzése érdekében elvetették.

T’ROBOT – Palonai Magyar Bálint Általános Iskola, Fonyód Nehézségi fok: kezdő

Alapötlet

A csapat hosszas gondolkozás után határozta el, hogy egy tűzoltó robotot készít. A robot neve: T’ROBOT, vagyis Tűzoltó Robot.

54

A kis méret persze behatárolja a robot hatékonyságát, de úgy gondolták, hogy egy ilyen kis robotnak is lehet esélye a kezdő tüzekkel szemben, hiszen, mint azt mindenki tudja, a kistüzekből lesznek a nagy pusztító tüzek.

Mechanika T’ROBOT megépítési ideje rutin nélkül 2 óra. Készítői megépítését nem tartják nehéznek, de aprólékos, ám egy kezdő szintnél több ismeretre van szükség. Nem árt, ha valaki nem kezdő a LEGO-építésben, és például tudja, hogyan épül fel egy számítógépes program. A LOGO nyelv ismerete előny lehet. Egyéb építési tanácsok: Az alap LEGO-készleten kívül szükség lesz a szikracsapóhoz egy kis 60x60 mm-es bőrdarabkára is (lehet műbőr is). A rögzítéshez a LEGO készletből vették az elemeket.

Összeszerelés Az építési útmutató (trobot/trobot.lxf)

Programozás Mivel a csapat tagjai még csak általános iskolások, ezért összetett, számukra bonyolult programot nem tudtak írni, de mint azt utólag látható is, nem is akartak. Azt tűzték ki célul, hogy egyszerű, más, akár 12-14 éves tanulók által elkészíthető programot írnak, és ezzel „hajtják” meg a T’ROBOT-ot. A programozás nyelve: LEGO Mindstorms NXT Software. Az algoritmus fontosabb lépései a következők. Elsőként a robot hangjelzésre vár. Ez a valóságban lehet egy vészjelző csengő, sziréna, vagy egy egyszerű kolomp, vagy egy vasdarab is, amit tűzjelzésre használnak. Erre a jelre mozgásba lendül, egyenes vonalon haladva megkeresi a tüzet, vagyis a fényt. Akadályba ütközve leáll, majd megkezdi oltani a tüzet az úgynevezett szikracsapójával. Amíg „látja” a tüzet, vagyis a fényt, addig csapkod. Ahogy eloltotta a tüzet, vagyis elalszik a fényforrás, abbahagyja a csapkodást, és hátra tolat. „Stop” szóra megáll.

A program letölthető mellékletként (trobot/trobot.rbt)

Tesztelési eredmények A tesztelés során több problémába ütköztek, ami annak volt betudható, hogy a robotjuk programja nem túl fejlett, saját beismerésük szerint sem. Ekkor jöttek rá, hogy mennyire behatárolt ez a LEGO készlettel kapott programozási nyelv a LEGO Mindstorms NXT Software. A T’ROBOT stabilan halad a célja felé, fényt keresve. Ha neki ütközik valaminek, akkor elkezdi csapkodni a tüzet, de ha nem talál (pl. téves riasztásnál), akkor hátratolat, majd leáll. A gondok ott kezdődtek a fénynél, hogy milyen fényintenzitásra állítsák be a fényérzékelőt. A végén a tüzet egy LED-es biciklilámpa jelképezi, mivel valódi tűzön nem akarták tesztelni. A hangnál már nem volt ilyen gond. Éles, fémes hangra van beállítva, ekkor kell életre a robot. Az ütközés kötelező, vagyis valaminek neki kell menni. Ez betudható a programozás tudomány hiányának, de egy biztos, ezt hamarosan pótolják. (45) (H) Keressünk a weben olyan robottervet, amely gyertyát is képes elfújni! Az oltáshoz ventilátor inkább a jó megoldás!

Jó ötleteket találunk például a www.youtube.com/watch?v=o1KZEgFWu8o címen. A Google-ban a „lego robot candle” kereső kifejezés számos további robot ötletét adja ki.

Kombi – Transformers, Kodolányi János Általános Iskola, Szakiskola és Óvoda, Vajszló Nehézségi fok: kezdő Az iskolában a csapat első alkalommal foglalkozott robotépítéssel és robotvezérléssel. A csapat tagjai korábban Turbo Pascal programnyelvvel ismerkedtek az informatika órákon. Amikor tudomást szereztek a pályázati lehetőségről, örömmel jelentkeztek, bár tapasztalatuk csak annyi volt, amennyit a kisgyermekkori LEGO-zásból szereztek. Amikor megkapták a robotépítéshez szükséges dobozt, először is végigtanulmányozták a hozzákapott füzetet, és megépítették a dokumentáció alapján az abban leírt gépet, majd a LEGO Mindstorm NXT-G

55

programot tanulmányozták. Ezek után született meg az elhatározás, hogy járművet építenek. Munka közben módosítottuk az eredeti tervet, és a járműből mezőgazdasági gép lett.

Alapötlet A Kombi robot egy kombájn stilizált modellje. Megépítéséhez az eredeti dokumentáció járművekhez adott építési útmutatóját használták, majd kiegészítették az elejére szerelt forgó vágóalkatrészeket helyettesítő fogaskerekekkel, a hátulját pedig „szártépővel”. Az első két kerékhez kötöttek egy-egy motort, és az elejére egyet a „vágóalkatrész” emelésére. A szenzorokból a hang- és távolságérzékelőt használták fel.

Mechanika A robot „Good Morning” köszöntéssel kezdi a munkát, majd leteszi a „kaszát”. Megvizsgálja, hogy 15 cm távolságon belül van-e akadály. Ha van, fordul 90-ot és halad 1 másodpercig előre, ha nincs, egy másodpercig halad előre. Ezután fordul 90°-ot teljes kapacitással, majd ellenkező irányban is ugyanakkora szöggel fordul, de csak fél kapacitással. Így körülbelül fél nyomtávnyi szélességgel kerül arrébb.

Építési útmutató A robot megépítése körülbelül 1,5-2 órát vesz igénybe. Megépítésnél vigyázni kell, hogy a vezetékeket úgy helyezzük el, nehogy felcsavarodjanak menet közben a kerekekre.

Lásd a mellékletben található, több részletben, ezért egy állományba tömörítettük: (kombi/epit.zip)

Programozás A programozáshoz a Mindstorms NXT-G programot használták, mert ez volt számukra a legkönnyebben érthető. Problémát jelentett, hogy a programozás során hamar elfogyott a robot memóriája, így csak egy egyszerű műveletsort tudtak vele végeztetni. A munka során nagyon sok apró programot írtak a robot kipróbálására, végül az alábbinál maradtak.

Lásd a mellékletben (kombi/program.rbt)

Tesztelési eredmények Sok gondot okozott a távolságérzékelő szenzor működtetése. A kitűzött feladatát a robot többnyire elvégzi. Az egyik motor többször leállt, vagy nem indult. A kábel újracsatlakoztatásával sikerült csak a kapcsolatot visszaállítani. Sajnos az idő kevés volt. Hetente csak kevés időt tudtak együttdolgozni, ha hosszabb idő állt volna rendelkezésünkre, talán „okosabb” robotot is sikerült volna összehozniuk.

56

Árucikk válogató targonca – Rendszerurak, Mikszáth Kálmán Gimnázium, Pásztó Nehézségi fok: haladó

Alapötlet

A Rendszerurak csapat által készített robot egy „árucikk válogató targonca”. Az eszköz a tribothoz hasonló mozgást használ (hátsó kerék meghajtás, egy forgó első kerékkel), amellyel képes megközelíteni a megemelendő terhet, egyenes vonalú mozgás közben. A villájára szerelt ultrahangos szenzor segítségével érzékeli és megemeli a terhet, ha az elég közel kerül hozzá. A terhet a könnyebb mozgathatóság érdekében egy kosárba helyezi. A robot fényérzékelő szenzor segítségével tud különbséget tenni az objektum „minőségében”. A csapat alapvetően a készlethez adott kétféle labda megkülönböztetését tűztük ki célul, amely alapján azokat színüknek megfelelően valamelyik irányba helyezi (a piros labdát jobbra, a kéket pedig balra). Fordulás után a robot leteszi a kosarat, majd hátrafelé visszatér az „eredeti pozíciója környékére”. A targonca minden mozgási fázis (előre menet, emelés, fordulás) végrehajtásakor hangutasítása vár (bármilyen erősebb hang - taps, „rajt!”, fütty, stb. megfelel).

Mechanika Megépítési idő: 1 óra. Nehézségi osztályzat: a robot viszonylag egyszerű szerkezetű, mozgását két motor, három kerékkel biztosítja. Az emelés - a készlet alkatrészeiből adódóan - nem függőleges, hanem körvonal mentén történő forgatáson alapul. Az értékelők a targoncavillákra kerültek. Egyéb építési tanács: az első (egyensúlyozási célt szolgáló „forgó”) kerék viszonylag nagy terhelést kap, így a tengely rúdja kissé meghajlik. Ezért javasolt, hogy tároláskor a robotot fektessék le, vagy az első kereket a tengellyel együtt húzzák ki (kék nyíl irányában az ábrán). Ugyanezen ok miatt kanyarodáskor az első kerék nem mindig fordul el, ez viszont a működést nem befolyásolja (a kerék „csúszik” a talajon), csak abban az esetben, ha a talaj túlságosan tapad (pl. szőnyeg). Megfigyelések szerint azonban a túl síkos padló sem kedvező, mert a forduló gumikerekek is megcsúszhatnak. A kosárról nem készült külön összeszereléséi útmutató. Az egy viszonylag egyszerű, téglalap alapú hasáb alakú tartó, amely elég széles ahhoz, hogy a villák belülről közé férjenek, és egy kereszttartóban megakadjanak, és a labdát is meg tudja tartani, hogy az ne essen ki emeléskor. Az elemcsere viszonylag egyszerű. Az ábrán piros körrel jelölt rudat a két oldalon óvatosan szét kell húzni úgy, hogy a rögzítő csapok engedjenek, majd a központi egységet a felemelve (a piros nyíl mentén fordul) elvégezhető a csere. A központ egység alatt levő kis tartók (cross axle, extension m/3 ribs) a kábelek elvezetésére használhatók, amelyek így kevésbé akadályozzák a működést.

Építési útmutató A mellékelt összeszerelési útmutató Lego Digital Designer segítségével készült. A robot alján található két „gumi-összekötőt” (damper 2m) az LDD-vel nem tudták a felső két kis rúdra „akasztani”, így ezt a lépést az útmutató nem tartalmazza. A robot egyébként az előbb említett „két kis rúd” helyett egy hosszú keresztösszekötő rudat tartalmaz, amit az LDD-ben szintén nem tudtak a helyére illeszteni (valamilyen,

57

kb. tized milliméteres összeállítási hiba lehet a LDD-beli modellben). Az itt említett problémának kizárólag az egyszerűbb elemcsere esetén van szerepe.

Lásd a mellékletben (mkg/epit.pdf)

Programozás A látszólag egyszerűen megalkotott algoritmus lényege, hogy a robot vezényszóra előre elindulva érzékeli a villája közé került tárgyat és megáll. Hangutasításra megemeli, majd ismételt utasításra annak fényintenzitásától függően jobbra vagy balra fordul, leteszi, majd „hátravonul”. Ezután visszafordul kiindulási állapotába. A program az NXT-hez adott fejlesztői környezetben készült.

Lásd a mellékletben (mkg/program.rbt)

Tesztelési eredmények A viszonylag nagy súly miatt az első kerék nem mindig követi jól a fordulást, ami normál esetben a kerék csúszása miatt nem okoz problémát. A „nem normál eseten” azt értjük, ha a robot érdes felületen mozog (pl. szőnyeg - az első kerék akad, a robot fel is borulhat), valamint ha a talaj csúszós, pl. lakkozott padló - forduláskor a hátsó gumikerekek csúsznak. Ez utóbbi esetben azért a tevékenység látható, csak a csúszás mértékétől függően a fordulás szöge eltér az eredetitől. Az első kerék fordulékonysági problémája miatt indítás előtt azt állítsuk egyesbe. A kosarat a robot egyenes vonalú mozgással közelíti, így annak a robot előtt kell lennie (kb. 10-20 cm „ráfutás” bőven elég). Az ellenkező irányú forduláshoz elég a kosárban levő labdát kicserélni (piros ill. kék) és természetesen újra a robot elé helyezni. A programot minden nekifutás előtt el kell indítani. Bár a program úgy lett elkészítve, hogy a robot ugyanannyit forduljon a kosárral, mint amennyit utána visszafordul (2 rotations), úgy vették észre, hogy a visszafordulás jóval nagyobb mértékű (azaz a robot nem az eredeti irányba áll vissza). A jelenség körülményeire, a pontos okok felderítésére illetve korrigálására időhiány miatt nem volt lehetőségük. A fényszenzor által érzékelt fényintenzitás mértékre a tapasztalataik szerint jelentősen függ a környezet fényviszonyaitól. (46) (H) A robot átalakításával próbáljuk meg javítani a fordulási pontatlanságon!

Az ok ismét a bolygókeréknél keresendő. Ennek irányba fordulása miatt nem lesz soha sem pontos a szerkezet. Ha ezt lecseréljük például egy gömbtámaszra, máris jóval pontosabb lesz a mozgás!

Tan-Robi – LEGÓvatosabb, Börzsönyvidéki Bölcsőde, Óvoda, Iskola, EGYMI Kemencei Általános Tagiskola és Alapfokú Művészetoktatási Intézmény, Kemence Nehézségi fok: kezdő Csapattagok: Beini Aida, Fidel Máté, Kosza Barbara, Mészáros Bálint 7. osztályos tanulók, csapatvezető tanár: Gulyás Gertrúd. A robot összeállításában és a mellékelt képek, illetve a videó elkészítésében segített Lőrincz Szabolcs 6. osztályos és Tóth Dalma 7. osztályos tanuló. A LEGÓvatosabb csapat tagjai egy Tan-Robit készített, amely az első olyan robot, amelyet ők állítottak össze. Csak most ismerkedtek meg a robotkészítés rejtelmeivel. A robot segített a diákoknak a dolgaikat hozni-vinni, bár még csak egy prototípus volt.

58

Alapötlet

Tan-Robi Tan-Robi segít megtalálni a diákok elhagyott dolgait, így keresgélés helyett több időt tölthetünk tanulással. A robot érzékeli az útjában lévő tárgyakat, megfogja őket és megállapítja a színüket (jelen állapotban még csak kék és piros labdákat képes megfogni és megkülönböztetni).

A robot működését videó mutatja be (kemence/tanrobi.avi).

Mechanika A Tan-Robi a csapat által becsült megépítési ideje körülbelül 2 óra - ha nem számítjuk bele a próbálkozásokat és az átalakításokat, azaz kész terv alapján készítjük el. Az ötlet az Alpha-Rex építési lépései alapján jutott eszükbe, amit összeraktak, majd tetszésük szerint átalakítottak. Ennek a megépítése nem volt túl nehéz, nem tartalmazott bonyolult, hosszadalmas lépéseket. A kialakításkor figyeltek arra is, hogy a kábeleknek legyen elég helyük. A robot külön erénye, hogy az elemek cseréje az NXT kiemelése nélkül történik, csak a hátoldalát kell levenni. Összeállítási segédletként az Alpha-Rex megépítésének lépéseit használhatjuk.

Építési útmutató Nincs mellékelt építési útmutató az említett robotépítési terven kívül.

Programozás A program nyelve a LEGO NXT-G lett. A robot tapsra elindul, amikor érzékeli az útjába eső tárgyat hangtájékoztatást ad, tapsra megfogja és megállapítja, hogy kék vagy piros színű a tárgy. Újabb tapsra hátrafelé mozog, tapsra elejti a tárgyat, és tapsra megáll, és köszönni is tud.

Nincs mellékelt program.

Tesztelési eredmények A robot általában teljesíti a feladatát, időnként azonban előfordul, hogy még a tapsjelzés előtt elejti a labdát. A labda tartószerkezetét rögzíteni kell, különben Tan-Robi feldönti. A robot programja kezdő szintű, de még a készítői is azok a robotkészítésben és programozásban.

RAJZOBOT – Hematolit, Illyés Gyula Gimnázium, Budaörs Nehézségi fok: haladó

Alapötlet Elsősorban a kisebb korosztályt célozták meg a rajzoló robottal, amely vetélytárs lehet a rajzolásban. A kisebb gyerekek szeretnek rajzolni, illetve szeretik azt nézni, hogy kinek a műve készül el hamarabb, az Emberé vagy a RAJZOBOT-é?

59

A robot telefonnal irányítható, a végleges szoftveren még dolgozni kell. De így is izgalmas a háziverseny ember-robot között. Ezt a robotot a precizitás és a gyorsaság is jellemzi, hiába a „Lassan, de biztosan!” mondás. Azok az alakzatok, amiket készít teljesen szabályosak, alig lehet bennük hibát észrevenni, és azok is a toll nem jó fogása miatt lépnek fel.

Mechanika Mivel a kisebb gyerekek számára tervezték a RAJZOBOT-ot, ezért az összerakás kifejezetten egyszerű, a megépítési idő fél óra körüli. A LEGO Mindstorm alapkészlet 1-2 elem kivételével tartalmaz minden fontos építőelemet. Összerakási tanács: a megépítésnél célszerű a tollat a legvégén beletenni a tartó tokba, nehogy összetintázzon mindent. Szerencsére a toll betét végére precízen rá illik egy LEGO-elem. A kábelek elvezetése szintén adja magát. A robotra két szenzor került a biztonság érdekében, nehogy lemenjen a lapról.

Építési útmutató A csapat tagjai már majdnem ott jártak, hogy feladják, ám valahogy erőt merítettek, és mégis csak megtanulták az LDD használatát.

Lásd a mellékletben (rajzobot/rajzobot.lxf)

Programozás Sajnos a robot programján még van mit finomítani, de azért így is látszik némi eredmény. A robot programját NXT-G-ben készítették. A hangoknak nem bírtak ellenállni, ezért sok memóriát foglalnak.

A program mellékelve (rajzobot/rajzobot.rbt)

Tesztelési eredmények Eddig még csak nagy Gabonaköröket készítettek a RAJZOBOT-tal, de ezt az akadályt teljesen jól vette.

60

Hosszú gondolkodás és tesztelés után rájöttek, hogy nagy hely kell neki! A kicsik úgyis nagyban szeretnek rajzolni, és a RAJZOBOT rajzát még poszterként is lehet használni a szobafalon, vagy akár tapétaként. Egy újabb hosszú gondolkodás volt, hogy mire rajzoljon a RAJZOBOT. Egy vásárlás során találták meg azt a csomagoló papírt, aminek a hátoldala teljesen fehér volt, és ettől kezdve ezt használták.

TÜCSÖK – Kocka Team, Medgyasszay István SZIGK, Veszprém Nehézségi fok: haladó

Alapötlet

A Kocka Team csapata eredetileg nagy fába vágta a fejszét, amit sajnos nem tudtak megvalósítani. Alapötletük egy olyan robot elkészítése volt, amely a Hanoi-torony játékot játssza 2-3-4 koronggal. Sajnos a programozás része kifogott csapaton. Ezért a Team úgy döntött, hogy egy önjáró fűnyírót fog építeni, ami végül is egy tücsökre kezdett hasonlítani, így elnevezték TÜCSÖK-nek. TÜCSÖK kikerüli az akadályokat, és zöld szín észlelése esetén beindítja a fűnyíró részét, majd ciripelve vágja a füvet.

Mechanika A szerkezet váza nem bonyolult. A kezek, melyek labdát ölelik át a könnyű fordulás miatt, megépítése a legnehezebb és időigényesebb. Nehézséget okozhat a fűnyíró rész elhelyezése, illetve a vezetékek eldugása. Elemcsere kissé bonyolult lett, mivel ketté kell bontani a gépezetet, de nem lehetetlen.

Építési útmutató A robot megépítése körülbelül 2 órát vesz igénybe. Az összeszerelési útmutatót képekben készítették el. Igyekeztek több képet is készíteni a nehezebben összeépíthető egységekről.

Lásd a mellékletben (tucsok/epit.zip)

Programozás A program NXT-G nyelven készült. A robot teljesíti a feladatot, de a zöld szín kiválasztásánál a helyi fényviszonyokat erőteljesen figyelembe kell venni. Tapsra leáll a program futása.

Lásd a mellékletben (tucsok/tucsok.rbt és a hang.zip)

Tesztelési eredmények A robot jól bejárta a 2*2 méteres pályát, melyet akadályokkal tarkítottak: fa, kerítésrész, elhagyott kerti szerszámok. A zöld színt többször is eltévesztette sajnos. A zöldhöz tartozó értéket 35 és 43 közé vették.