Kezdjük tanulmányozni az infravörös érzékelő lego mindstorms ev3-at
Az infravörös érzékelő tartalmazza a Lego mindstorms EV3 otthoni változatát. Ez az egyetlen olyan érzékelő, amely mind önállóan, mind infravörös beaconral párosítva is használható, szintén otthoni készlet része. A következő két leckét a két eszköz tanulmányozására, valamint az egymással való kölcsönhatásra irányítják.
8.1. Infravörös érzékelőt és infravörös jelzőt vizsgálunk
8.2. Infravörös érzékelő. Mód "megközelítés"
Az infravörös érzékelő működési módja hasonló az ultrahangos érzékelő távolságmérési módjához. A különbség a fényhullámok jellegében rejlik: ha a legtöbb anyagból gyakorlatilag nem csillapodik a hanghullám, akkor a fényhullámok visszaverődését nem csak az anyagok, hanem a felület színének is befolyásolja. A sötét színek - a fényesektől eltérően - erőteljesebben felszívják a fényáramot, ami befolyásolja az infravörös érzékelő működését. Az infravörös érzékelő működési tartománya is különbözik az ultrahangos érzékelőtől - az érzékelő 0-tól (nagyon közelről) 100-ig terjedő értékeket mutat (az objektum messze van, vagy nincs érzékelve). Ismét hangsúlyozzuk: az infravörös érzékelő nem használható az objektum pontos távolságának meghatározására, mivel az "közelítés" módban lévő színét a vizsgált objektum felületének színe befolyásolja. Ez a tulajdonság pedig arra használható, hogy megkülönböztesse a robottól azonos távolságra elhelyezkedő fény és sötét tárgyakat. Az akadály megakadályozása önmagát megelőzően az infravörös érzékelő nagyon sikeres.
Megoldunk egy olyan gyakorlati problémát, amely hasonlít a 7. lecke problémájához. De annak érdekében, hogy ne ismételjünk, további feltételeket fogunk bonyolítani.
17. feladat: írjon egy egyenes vonalú mozgó robotot, amely megáll egy fal vagy akadály előtt, kissé hátrafelé elmozdulva, 90 fokos fordulattal, és tovább mozog a következő akadályra.
A robot a kis robot-31313 utasításával összegyűjtött. Az infravörös érzékelő az upstream irányban van felszerelve. Csatlakoztassa egy kábellel az EV3 modul "3" portjához, és folytassa a program létrehozását.
Vegye figyelembe a narancssárga paletta "Várakozás" programblokkot átkapcsolás módba: "Infravörös érzékelő" - "Összehasonlítás" - "Hozzávetés" (3. Ebben a módban a "Várakozás" programblokknak két bemeneti paramétere van: "összehasonlító típus" és "küszöbérték". Már tudjuk, hogyan kell ezeket a paramétereket módosítani.
- Indulj egyenesen előre
- Várja meg, amíg az infravörös érzékelő küszöbértéke 20-nál kevesebb lesz
- Állj meg előre
- Menj vissza a motorok egy forradalmára
- Forgassa jobbra 90 fokot (a 3. lecke ismeretében, számítsa ki a motorok szükséges forgásszögét)
- Folytassa az 1-5. Lépéseket egy végtelen hurokban.
Próbáld meg megoldani a 17-es problémát, anélkül, hogy belenézel a megoldásba.
A 17. feladat megoldása
8.3. A robot távirányítása infravörös világítótorony segítségével
Az infravörös világítótorony, amely a tervező Lego mindstorms EV3 otthoni változatában található, párosítva egy infravörös érzékelővel, lehetővé teszi a robot távvezérlését. Ismerkedjünk közelebb a világítótoronyhoz:
- Az infravörös jeladó használatával irányítsa a jeladót (5. ábra 1. pozíció) a robot felé. A jeladó és a robot között nincs akadály! Nagylátószögű látószögnek köszönhetően az infravörös érzékelő biztosan fogadja a jeleket, még akkor is, ha a jeladó a robot mögött van!
- A beacon testen 5 szürke gomb van (5. Ábra, 2. tétel). amelynek sajtója felismeri az infravörös érzékelőt, és továbbítja a push kódokat a robotot vezérlő programnak.
- Egy speciális piros kapcsoló segítségével (5. Ábra, 3. tétel) kiválaszthatja a jelzőfény és az érzékelő közötti kommunikáció négy csatornájának egyikét. Ez úgy történik, hogy több robot is ellenőrizhető a közvetlen környezetben.
18. feladat: írjon programot egy robot távirányítására egy infravörös világítótorony segítségével.
Már tudjuk, hogy a futóblokkok kiválasztásának lehetősége érdekében szükség van az Orange Blender "Switch" szoftverének használatára. Állítsa be a "Switch" blokk működési módját az "Infravörös érzékelő" - "Mérés" - "Távvezérlés" (6. ábra).
Az infravörös érzékelő és a jeladó közötti kapcsolat aktiválásához a "Csatorna" paraméter (7. ábra 1. tétel) megfelelő értékét a világítótoronyban lévő kiválasztott csatorna szerint kell beállítani! A "Switch" blokk minden egyes szoftveres tárolóját hozzá kell kapcsolni a szürke gombok (7. ábra 2. tétele) megnyomásának egyik lehetséges opciójához. Megjegyzés: Egyes opciók két gomb egyidejű megnyomását is tartalmazzák (a megnyomott gombok piros színnel jelennek meg). A "Switch" programblokkban ebben a módban összesen legfeljebb 12 különböző feltétel feldolgozható (az egyik feltétele az alapértelmezett állapotnak kell lennie). Add hozzá a szoftvercsomagokat a "Switch" blokkhoz a "+" gombra kattintva (7.
Javasoljuk a következő robotvezérlő algoritmus megvalósítását:
- A bal felső gomb megnyomása elfordítja a bal oldali motor forgását, a robot jobbra fordul (7. ábra 2. tétel értéke: 1)
- A jobb felső gomb megnyomása elforgatja a jobb motor forgását, a robot balra fordul (7. ábra 2. tétel értéke: 3)
- A bal felső és jobb oldali gombok egyidejű megnyomása aktiválja a bal és a jobb oldali motorok egyidejű forgatását, a robot egyenes vonalban mozog (7. ábra 2. tétel értéke: 5)
- Az alsó bal és jobb oldali gombok egyidejű megnyomása bekapcsolja a bal és jobb oldali motorok egyidejű forgatását, a robot egyenesen elhalad (7. ábra 2. tétel értéke: 8)
- Ha nincs beacon gomb, akkor a robot leáll (a 7. ábra 2. tétele: 0).
Amikor távvezérlési algoritmust fejleszt ki, akkor tudnia kell a következőket: ha a szürke gombok egyikének kombinációját megnyomják - az infravörös beacon folyamatosan elküldi a megfelelő jelet, ha a gombok ki vannak engedve, akkor a jelzés megszakad. A kivétel egy külön vízszintes szürke gomb (7. Ez a gomb két állapotot tartalmaz: "BE" - "KI". Ha a jelzőfény bekapcsolt állapotban van, akkor a jelző továbbra is jelet küld, még akkor is, ha a zöld LED világítani kezd, és ezzel kikapcsolja a jelet - nyomja meg újra a vízszintes szürke gombot.
Indítsuk el a programot:
Távvezérlő algoritmusunk 5 viselkedési változatot kínál, ennek megfelelően a "Switch" programblokk öt szoftveres tárolóból áll. Tegyük meg, hogy beállítjuk őket.
- Alapértelmezés szerint opciót rendelünk hozzá, ha nincs megnyomva gomb (7. ábra, 2. tétel: 0). Szerelje be a "Független motorvezérlés" programblokkot a tartályban. "B" és "C" motort.
- A bal felső gomb megnyomásának változatában (7. ábra 2. tétel értéke: 1) állítsa be a "Big Motor" programblokkot. beleértve a "B" motort.
- A jobb felső nyomógomb megnyomására szolgáló változat tartályában (7. ábra 2. tétel értéke: 3) állítsa be a "Big Motor" programblokkot. beleértve a "C" motort.
- A bal felső és jobb oldali gombok egyidejű megnyomásának lehetőségével (7. ábra 2. tétel 2-es értéke: 5) a tartályban állítsa be a "Független motorvezérlés" programblokkot. Ide tartozik a "B" és "C" motor elforgatása is.
- A bal alsó és jobb oldali gombok egyidejű sajtolásának változatában (7. ábra 2. tétel 2-es értéke: 8) a "Független motorvezérlés" programblokkot telepítjük. beleértve a "B" és "C" motorok forgását is.
- Helyezzük el testreszabott "Switch" programblokkot a "Cycle" szoftverblokkon belül.
A javasolt rendszer szerint próbáld meg magad létrehozni a programot, anélkül, hogy belenézel a megoldásba!
A 18. feladat megoldása
Nagyon köszönöm! A csodálatos óráknak köszönhetően minden működik! Megpróbáljuk az összes feladatot, és végül a gyerek egyetlen hibát követett el önállóan! És ami a legfontosabb, világosan megértettem az összes cselekvést!