SZENZOROK HASZNÁLATA
leggyakrabban a három „alapszenzort” használjuk A szenzorok a tégla 1-4. sorszámozású portjaira csatlakoztathatók. - ütközésérzékelő (touch sensor) - színérzékelő/fényérzékelő (colour sensor/light sensor) - távolságérzékelő (ultrasonic sensor)
felfüggeszti a program további utasításainak végrehajtását, Az érzékelőket kétféle módon használhatjuk, ezért a legtöbb szenzorhoz két ikon áll a rendelkezésünkre. Wait-tel vezérelhető Flow Control kategóriában felfüggeszti a program további utasításainak végrehajtását, csak a szenzoron bekövetkezett valamilyen esemény, vagy az érzékelő által visszaadott megfelelő érték hatására folytatódik a programszál utasításainak végrehajtása. a Szenzor (Sensor) programcsoporton belül található ikonok Ennél a módnál nem áll meg a programszál utasításainak végrehajtása, csupán a program kiolvassa a szenzor által mért értéket és már lép is a következő utasításra.
a Wait ikon működése Első lépésben a használni kívánt „szenzort” válasszuk ki a listáról
A legtöbb listaelemnek két további eleme, működési módja van. Compare és Change Összehasonlítás és Változás Összehasonlításnál meg kell adnunk azt a határértéket és az ehhez kapcsolódó feltételt, amellyel folyamatosan összehasonlítja a futó program az eszköz által mért, észlelt értéket. A Változásnál azt a mértéket kell megadnunk, amellyel ha megváltozik az eszköz által folyamatosan mért, észlelt érték, akkor igaz értéket kapunk, és a következő utasításra léphetünk.
Szín- vagy fényérzékelő (Colour Sensor) A programozás megkezdése előtt érdemes megmérni a visszavert fény intenzitását a különböző felületeken, mivel ez a felület színétől, tükrözési sajátságaitól és a fényviszonyoktól is függ. Ezzel tájékozódhatunk a környezet aktuális fényviszonyairól. fényszenzorként (Light) Összehasonlító (Compare), mind a Változás (Change) üzemmódban három lehetőség a szenzor saját fényével (vörös színű) világíjuk meg a felületet a környezet fényét érzékeljük (saját fény nélkül) a második paraméternek beírhatjuk a határértéket Reflected Light Ambient Light Az elsővel a relációs jelet választhatjuk ki.
Írj programot, amelyet végrehajtva a robot egyenesen halad előre mindaddig, amíg a fényérzékelője az alapszíntől eltérő színt nem észlel, ekkor álljon meg! A program megírása előtt a képernyő View funkciójával a különböző színű felületekről visszavert fény intenzitását megmértük. Összehasonlítás módban:
Változás (Change) módban: Ebben az esetben nem határértéket állítunk be, hanem azt adjuk meg, hogy mekkora változás szükséges ahhoz, hogy tovább lépjen a program végrehajtása a következő utasításra. az elsőnél állíthatjuk be, hogy a változás milyen irányú legyen: növekvő (0), csökkenő (1) vagy bármilyen (2). A második paraméter a változás mértéke.
színszenzorként (Colour) Összehasonlító módban nem kell határértéket megadnunk, mert a választott színtől eltérő mért érték jelenti a továbblépés feltételét. Változás üzemmódban semmiféle értéket nem kell megadnunk, mert az induláskor mért színérték megváltozása fogja a tovább lépést eredményezni.
Saját fény nélküli üzemmód (Ambient Light) Írj programot, amelyet végrehajtva a robot forog, míg a fényérzékelőjére rá nem világítunk, ekkor megáll és tolat 2 mp-ig. A képernyő View/Ambient light funkciójával megmértük a fényérzékelő által elnyelt fényintenzitás értékét rávilágítás nélkül és egy zseblámpával történő rávilágítása esetén. a fényérzékelője előre, vagy felfelé nézzen a szenzorba épített vörös fényű led nem kapcsol be a környezet fényét méri
Írj programot, amelyet végrehajtva a robot egy fehér felületen egyenesen előre indul fekete csíkok fölött! A második fekete csík fölötti áthaladás után megáll. 4 db színváltás figyelése Összehasonlító (Compare) működési módban
Ütközésérzékelő (Touch sensor) Szintén a Wait blokkban tudjuk kiválasztani. Általában az Összehasonlító mód használata a célszerű. Az ütközésérzékelő három állapot megkülönböztetésére alkalmas.
Írj programot, amelyet végrehajtva a robot egyenesen addig tolat, amíg akadálynak nem ütközik, ekkor megáll! A folyamatos hátra mozgást a Steering Motor ikon biztosítja, On működési módban. A Wait blokkal megadott utasítás a programot addig várakoztatja, míg az ütközésérzékelő benyomott (Pressed) állapotba nem kerül. Ekkor tovább engedi a program futását, és a robot blokkolva megáll.
Ultrahangos távolságérzékelő (Ultrasonic sensor) Képes az előtte lévő tárgyak távolságát megmérni centiméterben vagy hüvelykben mérve, 5-250 cm tartományban. A Wait ikon ultrahangos távolságmérővel történő vezérlésének működési módjai és programozási módja megegyezik a fényszenzornál bemutatottal. Írj programot, amelyet végrehajtva a robot egyenesen halad mindaddig, amíg a távolságérzékelője 15 cm-nél kisebb távolságot nem mér! Ekkor álljon meg! Ha a robot távolságérzékelője túl magasra van szerelve, akkor előfordulhat, hogy a robot nem látja meg az akadályt. Ha az ultrahangos távolságérzékelő a robot elejéhez viszonyítva túlságosan hátra van szerelve, akkor a robot eleje előbb ütközik az akadálynak, mint ahogyan az a beállított távolságon belülre kerülne. Mindkét esetben az akadálynak ütközik a robot és megpróbál tovább haladni.
Igy lehet a robot adott szöggel történő elfordulását vezérelni. Giroszkóp (Gyro sensor) A giroszenzor képes a robot tényleges fordulását mérni fokokban. Tehát ha a programszálra beillesztjük a Sensor csoportban található Gyro Sensor blokkot és Reset módba kapcsoljuk, akkor lenullázzuk az elfordulás mérőt. . Viszonyítási pont: a szenzor Reset állapota. A Wait blokkot használva a programszál utasításai addig nem futnak tovább, amíg a beállított feltétel (Összehasonlítás vagy Változás mód) nem teljesül. Igy lehet a robot adott szöggel történő elfordulását vezérelni. Kétféle értéket használhatunk a vezérléshez: az elfordulási szöget: Angle (szög) egy elfordulási arányt: Rate
A Gyro Sensor módjánál a 90o-os változást figyeljük Írj programot, amelyet végrehajtva a robot 1 másodperces egyenes haladás után megáll és 90o-ot fordul az óramutató járásával megegyezően, majd ismét halad 1 másodpercig! Ezután megáll. Az 1 másodperces előre mozgás után lenullázzuk a giroszenzort. A Gyro Sensor módjánál a 90o-os változást figyeljük
A robot egyenesen előre megy egy fehér színtől eltérő sötét csíkig A robot egyenesen előre megy egy fehér színtől eltérő sötét csíkig. Ott megáll, majd a c motor irányában kb. 90 fokot fordul. Ezután egyenesen előre megy az akadályig, mely előtt 15 cm-rel megáll, majd a tengelye körül 180 fokot fordul és a fehér alapszíntől lényegesen sötétebb csíkig mozog. Ott a B motor irányában kb. 90 fokot fordul. Tolatva akadályig mozog, amelyet a nyomásérzékelővel érzékel, majd megáll.
Gyakorló feladatok Írj programot, amelyet végrehajtva a robot egyenesen előre halad a felülettől eltérő színű csík eléréséig, ekkor balra fordul kb. 90°-ot, majd tolat, amíg akadálynak nem ütközik! Írj programot, amelyet végrehajtva a robot egyenesen halad előre mindaddig, amíg a fényérzékelője az alapszíntől eltérő színt nem észlel! Ekkor forduljon 180°-t, és haladjon előre, amíg az ultrahangos távolságmérője 25 cm-nél kisebb távolságot nem mér! Írjunk programot, amelyet végrehajtva robot előre halad, amíg az ultrahangos távolságmérője 25 cm-nél kisebb távolságot nem mér! Ekkor álljon meg és várakozzon 3 mp-ig! Ezt követően forduljon balra 90°-ot, és haladjon előre a felület színétől eltérő csíkig!