Menü
Ingyenes
becsekkolás
a fő  /  ÁLTAL / Csatlakoztasson két vagy több EV3 blokkot. LEGO Mindstorms Ev3 - Designer Review

Két vagy több EV3 blokk csatlakoztatása. LEGO Mindstorms Ev3 - Designer Review

Az egyes diákok bemutatásának leírása:

1 csúszda

Slide Leírás:

2 csúszda

Slide Leírás:

EV3 Modul Interface Az EV3 modul egy vezérlőközpont, amely a robotokat hajtja. A képernyőn, a modulvezérlőgombok és az EV3 modul interfész, amely négy fő ablakot tartalmaz, hozzáférhet az EV3 modul egyedi funkcióinak lenyűgöző különböző funkcióihoz. Ezek lehetnek egyszerű funkciók, például a program indítása és leállítása, vagy összetett, mint maga a program írása.

3 csúszda

Slide Leírás:

Interfész: Az EV3 menüben van egy menü, amely 4 részből áll: Legutóbbi programok (Legutóbbi programok) Fájlkezelő (tégla alkalmazások) Vezérlőblokk beállításai (Téglabeállítások)

4 csúszda

Slide Leírás:

Legutóbbi programok indulnak a közelmúltban betöltve az asztali PC programból. Ez az ablak üres marad, amíg megkezdi a programok letöltését és futtatása. Ez az ablak megjeleníti a közelmúltban elkezdett programokat. Az alapértelmezés szerint kiválasztott lista tetején lévő program egy olyan program, amely elindította az utóbbit.

5 csúszda

Slide Leírás:

Fájlkezelő A mikroszámítógépen tárolt fájlok elérése és kezelése, valamint a memóriakártyán található fájlok. Ebből az ablakból az EV3 modul összes fájlja elérheti és kezelheti, beleértve az SD-kártyán tárolt fájlokat is. A fájlokat a projektmappák szervezik, amelyek valójában valójában szoftverfájlok Az egyes projektekben használt hangokat és képeket is tartalmaznak. A fájlok áthelyezhetők vagy törölhetők a navigátor használatával. A modul és az alkalmazás modul programozási környezetével létrehozott programok külön tárolódnak a BrkProg_save és a Brkdl_Save mappákban.

6 csúszda

Slide Leírás:

EV3 vezérlőegység alkalmazások 4 előre beállított alkalmazások: A. Port bemutatása. B. Motor menedzsment. V. IR menedzsment. Modul programozási környezet.

7 csúszda

Slide Leírás:

A. Port ábrázolása Az első portnézet ablakban gyorsan megtekintheti, érzékelők vagy motorok csatlakoztathatók a kikötőkhöz. Használja az EV3 modulvezérlőgombokat, hogy menjen az egyik forgalmas portra, és meglátja az érzékelőből vagy a motorról kapott aktuális leolvasásokat. Telepítsen több érzékelőt és motorokat, és kísérletezzen különböző beállításokkal. A telepített motorok és érzékelők aktuális beállításainak megjelenítéséhez vagy módosításához nyomja meg a Központ gombot. A modul alkalmazás főablakához való visszatéréshez kattintson a Vissza gombra.

8 csúszda

Slide Leírás:

B. A motorkezelés szabályozása A négy kimeneti porthoz csatlakoztatott motor közvetlen vagy hátrameneti mozgása. Kétféle mód van. Egy üzemmódban szabályozhatja az A porthoz csatlakoztatott motorokat (a fel és le gombokkal) és a D porthoz (a "bal" és a "jobb" gombokkal). Egy másik üzemmódban kezeli a B porthoz csatlakoztatott motorokat (a fel és le gombokkal) és a C port használatával (a "bal" és "jobb" gombokkal). A két mód közötti váltás történik központi gomb. A modul alkalmazás főablakához való visszatéréshez kattintson a Vissza gombra.

9 csúszda

Slide Leírás:

IR vezérlővezérlés A négy kimeneti porthoz csatlakoztatott motor közvetlen vagy hátrameneti mozgása távoli infravörös világítótorony segítségével távirányító és egy infravörös érzékelő, mint vevőkészülék (infravörös érzékelőt kell csatlakoztatni az EV3 modul 4-es portjához). Kétféle mód van. Egy módban az 1 és 2 csatornákat távoli infravörös jeladóra használhatja. Az 1. csatorna szabályozhatja a porthoz csatlakoztatott motorokat (a távoli infravörös jeladó 1 és 2 gombjaival) és a C porthoz (a távoli infravörös jeladó 3 és 4 gombjaival). A 2. csatornán ellenőrizheti az A porthoz csatlakoztatott motorokat (az 1. és 2. gombokkal) és a D port használatával (a 3 és 4 gombokkal). Egy másik módban ugyanúgy ellenőrizheti a motorokat, hanem a 3 és 4 csatornákat egy távoli infravörös jeladóra. A két üzemmód közötti váltás a központi gomb segítségével történik. A modul alkalmazás főablakához való visszatéréshez kattintson a Vissza gombra.

10 csúszda

Slide Leírás:

Modul programozási környezet Az EV3 modul a szoftverrel telepítve van. Az alkalmazás hasonló szoftvertelepítve van a számítógépre. Ezek az utasítások tartalmaznak alapvető információkat, amelyeket meg kell kezdeni a munkát.

11 csúszda

Slide Leírás:

EV3 modul beállításai Ez az ablak lehetővé teszi a különböző megtekintés és beállítás lehetőséget Általános beállítások Az EV3 modulban.

12 csúszda

Slide Leírás:

Hangerő beállítás A hangerő (térfogat) nagyíthatja és csökkentheti az EV3 Beállítások lapon.

13 csúszda

Ha Ön, valamint hiányzik a standard EV3 érzékelők jellemzői, nem elegendő 4-portos port a robotok érzékelői számára, vagy néhány egzotikus perifériát szeretne csatlakoztatni a robothoz - ez a cikk az Ön számára. Higgy nekem, az EV3 házi érzékelője egyszerűbb, mint amilyennek látszik. "Volume spin" egy régi rádióból vagy egy pár köröm ragadt a földön egy virágcserépként, mint a talaj nedvességérzékelő - tökéletesen alkalmas a kísérletre.

Meglepő módon az EV3 érzékelő mindegyik portja számos különböző protokollt elrejti önmagában, elsősorban az NXT érzékelőkkel és a harmadik féltől származó érzékelőkkel való kompatibilitásra kerül. Nézzük meg, hogy az EV3 kábel hogyan van elrendezve.


Furcsa, de a vörös huzal a föld (GND), zöld - plusz teljesítmény 4.3V. A kék vezeték egyidejűleg SDA az I2C és TX busz az UART protokoll számára. Ezenkívül a kék vezeték egy analóg digitális átalakító bemenete az EV3 számára. A sárga vezeték egyidejűleg SCL az I2C és az RX buszhoz az UART protokollhoz. A fehér vezeték egy analóg digitális átalakító bemenet az NXT érzékelők számára. Fekete - digitális bemenet, NXT kompatibilis érzékelők számára - Duplikálja a GND-t. Nem könnyű, ugye? Vegyük sor.

Analóg bemenet EV3.

Az érzékelő minden egyes portja analóg-digitális átalakító csatornával rendelkezik. Az érzékelők, például az érintőkérzékelő, az NXT fényérzékelő és a színérzékelő érzékelők tükröződő fény- és külső megvilágítási módban, NXT hangérzékelőben és NXT hőmérőben használják.

A 910 ohmos ellenállás, a rendszer szerint csatlakoztatva a vezérlőt, hogy ezt a portot át kell kapcsolni az analóg bemeneti üzemmódba. Ebben az üzemmódban bármely analóg érzékelő csatlakoztatható az EV3-hoz, például Arduino-ból. Az ilyen érzékelővel ellátott árfolyam több ezer szavazást érhet el másodpercenként, ez a legmagasabb sebességű érzékelő típus.

Fényérzékelő

Hőmérő

Talat nedvességérzékelő

Csatlakozhat: mikrofon, gomb, infravörös tartomány és sok más közös érzékelő. Ha az érzékelő nem elegendő a 4.3V-ig, akkor az EV3 vezérlő oldalán található USB portcsatlakozóból 5V-ot lehet kikapcsolni.

Fent említett "kötetes csavar" (ez változtatható ellenállás vagy a potenciométer) egy analóg érzékelő kiváló példája - ez így csatlakoztatható:

Az ilyen érzékelőből származó értékek olvasása a szabványos környezetben lego programozás. A kék nyersblokkot kell használnia

I2C. Protokoll

Ez egy digitális protokoll, például NXT ultrahangos érzékelőt, sok Hitechnikai érzékelőt, például IR-kereső vagy színérzékelőt v2. Más platformok esetében például Arduino esetében sok I2C érzékelő is csatlakoztathatja őket is. A rendszer a következő:

A LEGO Csoport 82 ohmos ellenállást javasol, azonban 43 ohmot említenek különböző forrásokban és kevesebb. Valójában megpróbáltuk elismerni ezeket az ellenállásokat, és minden működik, legalábbis "az asztalon". Egy különféle interferencián futó valódi robotban az SCL és az SDA vonalat továbbra is az ellenálláson keresztül kell bekapcsolni, amint azt a fenti séma jelzi. Az I2C sebessége EV3-ban meglehetősen kicsi, körülbelül 10 000 kbps, ezért mindenki kedvenc Hitechnic színérzékelője V2 egy ilyen fékezés :)

Sajnos, az EV3-G LEGO-tól, nincs teljes körű blokk az I2C érzékelővel, de a harmadik féltől származó programozási környezetet, például a Robotc-t, a Lejos vagy az EV3 alapot is kölcsönhatásba léphet az I2C-vel érzékelők.

EV3 Az I2C protokollon való munkavégzés érdekes lehetőséget kínál több érzékelő csatlakoztatására egy portra. Az I2C protokoll lehetővé teszi, hogy egy buszra 127 alárendelt eszközre váltson. Képzeld el? 127 Érzékelők az EV3 kikötők mindegyikéhez :) Ezenkívül gyakran egy csomó I2C érzékelőt kombinálunk egy eszközben, például az 1-es érzékelő alatti képen (iránytű, giroszkóp, gyorsulásmérő, barométer stb.)

Uart.

Majdnem minden szabványos EV3 érzékelő, kivéve az érintőkérzékelőt, az UART protokollon keresztül dolgozik, és ezért nem kompatibilis az NXT vezérlővel, amely még ugyanolyan csatlakozókkal rendelkezik, de az érzékelők érzékelői portjaiban nincsenek végrehajtva . Vessen egy pillantást a rendszerre, ez egy kicsit egyszerűbb, mint a korábbi esetekben:

Az UAR érzékelők automatikusan koordinálják a munkájának EV3 sebességével. Kezdetben 2400 kbps sebességgel csatlakozik, egyetértenek a működési módokban és az árfolyamon, majd továbbadva fokozott sebesség. Tipikus árfolyamok a különböző 38400 és 115200 Kbps különböző érzékelők számára.
A LEGO meglehetősen bonyolult protokollt hajtott végre az UAR érzékelőiben, így a harmadik féltől származó szenzorok kezdetben nem erre a platformra, de nem kompatibilisek vele. Ez a protokoll azonban nagyon kényelmes a "házi készítés" csatlakoztatásához
A mikrokontrollereken alapuló érzékelők.
Az Arduino esetében van egy csodálatos EV3Uartemulációs könyvtár, amelyet a híres Lejos-fejlesztő Lawrie Griffiths írta, amely lehetővé teszi, hogy ez a tábla az UART-LEGO-kompatibilis érzékelővel tegyen. A Blogjában a Lejos News sok példa van a gázérzékelők, az IMU érzékelő és a digitális iránytű csatlakoztatására a könyvtár segítségével.

Az alábbiakban a videó egy önálló érzékelő használata. Nincs elegendő számú eredeti LEGO távolsági érzékelő, így az egyik érzékelő a roboton, amit használunk házi készítésű:


A robot feladata zöldcellával kezdődik, találjon ki egy utat a labirintus (piros ketrec), és a legrövidebb módon térjen vissza a kezdő helyre, anélkül, hogy a halott vége lenne.

Ez a cikk beszélni fog új verzió Tervező - Lego Mindstorms oktatás EV3. De mielőtt az EV3-as újításokról beszélünk, ismerkedjünk meg a Lego Mindstorms konstruktor-sorozathoz közelebb.

A LEGO Mindstorms egy 10 éves gyermekek robotos tervezője. A LEGO Technis Részletek építési blokkokként használják - sok srác már ismeri őket a "Technológia és a fizika" tervezők, "pneumatika" ,. De építeni egy robotkeret, nem elég: szükséges "tanítani", hogy megkapja az információkat a környezetből, és válaszoljon rá. Ehhez speciális eszközöket használnak - érzékelők: lehetővé teszik, hogy meghatározzák a szín, megvilágítás, a távolság a legközelebbi elemek és még sok más. Reagáljon a "ingerekre" egy robotra A motorok segítségével motorok segítségével - akár valahol, vagy valamit kell hagyni - például harapja az elkövetőt az ujjnak. És a robot "agya" egy speciális programozható blokk, amelyhez minden motor és érzékelő csatlakozik.

Forduljunk a Lego Mindstorms EV3 készlet összetételéhez. Ez az, ami belép a készlet oktatási változata:

  • 1 programozható blokk
  • 3 motor:
    • 2 nagy motor
    • 1 közepes motor
  • 5 érzékelő:
    • 2 Érintő érzékelő
    • 1 Színérzékelő
    • 1 Ultrahangos távolsági érzékelő
    • 1 giroszkóp
  • Újratölthető akkumulátor a robothoz
  • 528 A LEGO Technic adatai

Érzékelők és motorok

Fontolja meg, mi változott az EV3-ban régi verzió NXT.

A készlet 3 motor lesz, de egyikük mind a méretben, mind a műszaki jellemzőkben különbözik.

A hangérzékelőt egy giroszkóp helyettesíti. A fennmaradó érzékelők azonos típusúak maradtak.

Egy másik funkció az érzékelők és motorok automatikus meghatározása, amikor a blokkhoz csatlakozik - erről a funkcióról, megmondom az EV3 új programozási környezetét leíró részben.

Az érzékelők és a motorok jellemzőit az alábbiakban mutatjuk be.

Nagyon hasonlít az előző verzió érzékelőjéhez. Meghatározza, hogy mikor nyomja meg a gombot, vagy felszabadul, ez egy vagy több megnyomásával is számolhat.

Színérzékelő

Az EV3 színérzékelő 7 színt különböztet meg, és meghatározhatja a szín hiányát. Mint az utolsó verzióban, könnyű érzékelőként működhet.

  • Az intézkedések tükrözik a piros fényt és a környező világítást
  • Képes meghatározni a fehér és a fekete vagy a színek közötti különbségeket: kék, zöld, sárga, piros, fehér és barna
  • A munka gyakorisága: 1 kHz

Giroszkóp

Az EV3 giroszkópikus érzékelő méri a robot forgási mozgását és a helyzetben lévő változásokat.

  • Használható a forgásirány meghatározásához
  • Pontosság: +/- 3 fok 90 fokos forgalom (dőlt mérési módban)
  • Meghatározhatja a maximum 440 fok / c (GYRO módban)
  • A munka gyakorisága: 1 kHz

Ultrahangos távoli érzékelő


Egy másik hozzáadott az ultrahangos érzékelő EV3 fő funkciójához - más ultrahang-érzékelők által kibocsátott ultrahang ingadozásokat is.

  • Mérheti a távolságot a 3 - 250 cm tartományban.
  • Mérési pontosság: +/- 1 cm
  • A mérési eredmény diszkrétsége: 0,1 cm.
  • Használható más aktív ultrahangos érzékelők keresésére (hallgatási mód)
  • Piros LED háttérvilágítás a "szem" körül

Nagy motor

Az EV3 nagy szervomotor nagyon hasonlít előző verzió NXT motor azonban a motorház egy kicsit több (gyakorlatilag 14x7x5 lyukat vesz igénybe a korábbi 14x6x5 ellen). Megváltoztatta a motorok és a típusuk rögzítésének helyét is.

  • Maximális forgalom - 160-170 fordulat / perc.
  • A megadott nyomaték - 40 n / cm
  • Valódi nyomaték - 20 n / cm.

Középső motor

Az EV3 átlagos szervo motor az azonos méretű tápfeszültségű motoron alapul. Egy további hely szükséges csak a forgási szög érzékelő és a csatlakozó port. Ez a motor tökéletes az alacsony terhelés és a nagy sebességű munkavégzéshez.

  • Maximális fordulatszám - 240-250 rpm.
  • A megadott nyomaték - 12 n / cm
  • Valódi nyomaték - 8 n / cm.
  • A motor beépített forgásszögérzékelője (jeladó) 1 fokos pontossággal

Az NXT érzékelők, a motorok és a kábelek kompatibilisek az EV3-val, így minden korábban épített robotot egy új egység vezérelhet.

Programozható blokk EV3.

Súlyos változások történtek az EV3 mikrokomputerrel. Az NXT-hez képest az EV3 blokk gyorsabb processzorral, több memóriával rendelkezik. Az EV3 blokk firmware egy szabadon elosztott Linux operációs rendszeren alapul, ami lehetővé teszi a firmware létrehozását a blokk számára. Csatlakoztasson egy robotot a számítógéphez, nemcsak USB és Bluetooth, hanem Wi-Fi is lehetséges. A robotok "kommunikálhatnak" az USB, Bluetooth és Wi-Fi-n.

Az alábbiakban az NXT és EV3 jellemzők összehasonlító táblázata:


Nxt. EV3.
processzor Atmel 32 bites kar at91sam7s256
48 MHz.
256 kb. Flashmemória
64 kb RAM memória
Arm9.
300 MHz.
16 MB flash memória
64 MB RAM memória
Processzor Atsal 8-bites kar AVR, Atmega48
8 MHz.
4 kB flash memória
512 byte RAM memória
hiányzó
Operációs rendszer Szabadalmazott Linux
Bemeneti portok (érzékelők esetén) 4 kikötők
Támogatja az analóg, a digitális érzékelőket
Adatátviteli sebesség: 9600 bit / s (I2C)
4 kikötők
Támogatja az analóg, a digitális érzékelőket

Adatátviteli sebesség: legfeljebb 460,8 kbps (UART)
Kimeneti kikötők (motorok) 3 kikötők
4 kikötők
USB adatátvitel Teljes sebességmód: 12 Mbps Használt nagysebességű mód: 480 Mbps
Kapcsolat USB eszközök Nincs lehetőség Lehetőség van akár 3 eszközre is, beleértve hálózati kártyák Wi-Fi és flash kártyák
Eszköz az SD kártyák olvasásához Hiányzó Támogatja a miniSD kártyákat, maximális mennyiség - 32 GB
Csatlakoztassa a K. mobil eszközök Csatlakozás az Android operációs rendszerekhez Csatlakozás az Android és az iOS OS (iPhone, iPad) készülékekhez
Képernyő LCD, monokróm
100 * 64 képpont
LCD, monokróm
178 * 128 képpont
Kölcsönhatás Bluetooth
USB 2.0
Bluetooth v2.1 der.
USB 2.0 (Ha számítógéphez csatlakozik)
USB 1.1 (több eszköz szekvenciális csatlakoztatásával)
Wi-Fi

Programozási környezet

Az EV3-val új grafikai fejlesztési környezetet tartalmazott a LabVIEW-en alapulva, hasonlóan az NXT-G-hez. Munka, mint NXT-G, Windows és Mac.

Az EV3 fejlesztési környezet jelentősen javult. Most minden anyag a robot: programok a robot, a dokumentáció, a kísérletek eredményei, a képek és a videó - tárolható a projektben. A zoom eszköz is hozzá lett adva, amely lehetővé teszi a program méretezését például a teljes program megtekintéséhez. Érdemes megjegyezni, hogy az NXT blokk programozható az új EV3 környezet használatával, de a régi blokk nem támogatja az új programozási nyelv összes funkcióját.

A programozási környezet fő újításait mutatjuk be EV3:

  • A programozási környezet bezárása blokkral:
    • Hozzáadott különleges oldal csatlakoztatott berendezéssel. Ez lehetővé teszi, hogy nyomon kövesse az EV3 blokk állapotát, és kapjon értékeket valós idejű érzékelőkből.
    • Az érzékelők és a motorok automatikusan csatlakoztatva vannak, az Auto-ID funkciónak köszönhetően. Ez lehetővé teszi, hogy ne adja meg, hogy egy ilyen érzékelő vagy motor csatlakozik egy ilyen porthoz.
  • Új hibakeresési mód:
    • A program üzemeltetése során a blokk kiemelve van. Ez lehetővé teszi, hogy pontosan megértse a program viselkedését.
    • A programblokkon világít speciális szimbólumHa egy másik érzékelő vagy motor csatlakozik ehhez a porthoz.
    • Hozzáadta az adatcsatornákon keresztül továbbított értékek megtekintését (adathuzalok).
  • A szoftverblokkok új funkciói:
    • A blokkok tengelykapcsolója egymással lehetővé tette a "Teljesítménysugár" elhagyását, amelyen a blokkok az NXT-G táptalajban voltak.
    • A blokkok nem rendelkeznek olyan koncepciónak, mint a telepítőpanel - a viselkedés közvetlenül a blokkon van konfigurálva, ami méretük növekedéséhez vezetett. A program most könnyebben olvasható - azonnal nézze meg, hogy az érzékelők és a motorok hogyan vannak konfigurálva.
    • Vannak "várakozáscsomagolás" blokkok, amelyek lehetővé teszik, hogy válaszoljon az érték megváltoztatására, és ne változtasson bizonyos értékre, mint az NXT-G-ben.
    • Az adatátvitel javítása a blokkba a blokkba lehetővé teszi, hogy egyszerűsítse a típusváltozást (nem kell manuálisan konvertálnia például a karakterlánc számát).
    • Hozzáadta a tömbökkel való munkát.
    • A ciklusból származó félelmetes kimenet lehetséges.

Az új programozási nyelv mellett az Android és az iPhone iPad programjai a robot megjelentek. Szintén alapul autodesk programok Az Invertor Publisher létrehozott egy programot a lépésenkénti 3D utasítások létrehozására és megtekintésére. Ebben a programban méretezheti és forgathatja a modellt az összeszerelés minden szakaszában, amely lehetővé teszi, hogy összetettebb robotokat építsen az utasításoknak megfelelően.

Alapvető robotok

Az oktatási készlet tartalmazza az 5 robot összeszerelésére vonatkozó utasításokat:

Színes sorter.
A klasszikus feladat az elemek rendezése (ebben az esetben a LEGO részek) színben.

Gyro fiú.
Robot Sigway egy giroszkóppal a kiegyenlítéshez.

Kölyökkutya
Robot kutya, amely stroke, takarmány. Aludni és megbirkózni, ő is tudja, hogy :) emlékezteti Tamagotchi-t.

Rubbo-kéz
Lehetővé teszi az elemek áthelyezését.

Az EV3-as készlet esetében a LEGO Mindstorms oktatás EV3 erőforrás-készlete készült, amely lehetővé tette, hogy más modelleket gyűjtsön új alkatrészekkel.

A cikk írásakor a nnxt.blogspot.com blogot használták.

USB kapcsolat

LEGO Mindstorms EV3 csatlakoztatható PC-hez vagy más EV3-hoz USB-kapcsolatokkal. A kapcsolat és a stabilitás sebessége ebben az esetben jobb, mint bármely más módon, beleértve a Bluetooth-t is.

Lego Mindstorms EV3 két USB portot tartalmaz.

A LEGO EV3 és más LEGO EV3 blokkok közötti kommunikáció a plume üzemmódban.

Csatlakozási mód A hurok két vagy több LEGO EV3 blokk csatlakoztatására szolgál.

Ez a mód:

  • Úgy tervezték, hogy egynél több LEGO Mindstorms EV3-ot csatlakoztasson;
  • csatlakozni több érzékelők, motorok és egyéb eszközök;
  • lehetővé teszi, hogy több LEGO Mindstorms EV3 (legfeljebb 4) kommunikáljon, amely legfeljebb 16 külső portot és azonos számú belső portot ad;
  • lehetővé teszi az egész lánc kezelését a fő Lego Mindstorms EV3-val;
  • nem működhet aktív csatlakoztassa a Wi-Fi-t vagy Bluetooth.

A csatlakozási mód engedélyezéséhez mozgassa a projektbeállítások ablakba, és tegyen egy kullancsot.

Ha ezt az üzemmódot választja, akkor bármilyen motorra kiválaszthatja az EV3 egységet, amely részt vesz, és a szükséges érzékelők.

A táblázat az EV3 blokkok használatának lehetőségét mutatja:

törvény

Középső motor

Nagy motor

Kormányozás

Független menedzsment

Giroszkópikus

Infravörös

Ultrahangos

Motorforgatás

Hőfok

Energiamérő

Hang

Kapcsolat Bluetooth-on keresztül

Bluetooth lehetővé teszi LEGO Mindstorms EV3 csatlakozni PC, más lego Mindstorms EV3, okostelefonok és más eszközök számára. Bluetooth csatorna kommunikációs tartomány - akár 25 m.

Legfeljebb 7 blokkot csatlakoztathat egy LEGO Mindstorms EV3-hoz. Az EV3 fő egység lehetővé teszi az egyes alárendelt EV3-os üzenetek küldését és fogadását. Az EV3 alárendelte csak üzeneteket küldhet az EV3 fő egységnek, de nem köztük.

EV3 csatlakozási sorrend Bluetooth-on keresztül

Annak érdekében, hogy két vagy több EV3 blokkot csatlakoztassa a Bluetooth-hoz, a következő műveleteket kell végrehajtania:

1. Nyissa meg a lapot Beállítás.

2. Válassza ki Bluetooth És nyomja meg a középső gombot.

3. Stavim Zászló láthatóság Bluetooth.

4. Ellenőrizze, hogy a Bluetooth jel ("<") виден на верхней левой стороне.

5. tegye meg a fent említett eljárást az EV3 blokkok kívánt számára.

6. Jelentkezzen be a kapcsolathoz: Csatlakozás:

7. Kattintson a Keresés gombra:

8. Válassza ki azt az EV3-t, amelyet csatlakozni szeretne (vagy amelyhez csatlakozni szeretne), és nyomja meg a középső gombot.

9. Csatlakoztassa egymás és a második blokkot a hozzáférési kulcsmal.

Ha mindent helyesen teszel, az ikon megjelenik a bal felső sarokban.<>"Hasonlóképpen, más EV3 blokkok összekapcsolása, ha több mint kettő van.

Ha kikapcsolta a LEGO EV3-ot, akkor a kapcsolat eltűnik, és minden elemnek meg kell ismételnie.

Fontos: Minden egyes blokk esetében a programot meg kell írni.

Minta program:

Az első egység: Ha megnyomja az érintőkérzékelőt, az első EV3 egység 3 másodpercig (főblokk) késleltetésével átadja a második blokkba.

Példa 2 blokkra:

A második blokk elvárja az első blokkból elfogadott szöveget, és amint megkapta, a szó megjeleníti (példánkban ez a "hello" szó) 10 másodpercig (alárendelt blokk).

Kapcsolat Wi-Fi-n keresztül

Hosszabb kommunikáció lehetséges, ha a Wi-Fi dongle csatlakozik az EV3 USB porthoz.

A Wi-Fi használatához egy speciális modult kell telepítenie az EV3 blokkon USB-csatlakozóval (Wi-Fi adapter (WN1100), és csatlakozhat Wi-Fi dongle-t is.

Hagyományosan a platformon épült robotok Lego Mindstorms EV3., A LabVIEW grafikus környezet használatával programozva. Ebben az esetben a programok az EV3 vezérlőn kezdődnek, és a robot önállóan működik. Itt megmondom neked egy alternatív módot a robot irányítására - a számítógépen futó platform használatával.

De mielőtt közvetlenül a programozáshoz vezetnénk, vegyük figyelembe az eseteket, ha hasznos lehet:

  • Robot távvezérlése laptoptal (például a gombok megnyomásával)
  • Az EV3 vezérlő adataira kell összegyűjteniük, és feldolgozni kell őket a külső rendszeren (például az iot rendszerekhez)
  • Bármilyen más helyzet, amikor egy vezérlő algoritmust szeretne írni a .NET-en, és futtatja az EV3 vezérlőhöz csatlakoztatott számítógépről

LEGO Mindstorms EV3 API a .NET-hez

Az EV3 vezérlő kezelése a külső rendszerből a soros portra történő parancsok küldésével történik. Maga a parancsformátumot a kommunikációs fejlesztő készlet tartalmazza.

De ennek a protokollnak a végrehajtása manuálisan van - az ügy unalmas. Ezért használhatja a kész .NET Wrapper-t, hogy Brian meggondolatlanul írta. A könyvtár forráskódjai a Githubon találhatók, és a használatra kész csomag a nugetben található.

Csatlakozzon az EV3 vezérlőhöz

Ha kapcsolatba lép az EV3 vezérlővel a téglaosztályt. Az objektum létrehozásakor a konstruktorban át kell adnia a Irányítási felület végrehajtását - egy objektumot, amely leírja az EV3 vezérlőhöz való csatlakozást. Az USBCommunikáció, a BlueToothcommunication és a NetworkKommunikációs implementációk elérhetőek (kapcsolat WiFi segítségével).

A legnépszerűbb módja a Bluetooth-on keresztül. Tekintsük részletesebben ezt a kapcsolódási módot.

Mielőtt programozhatnánk a vezérlőhöz Bluetooth-on keresztül, a vezérlőt az operációs rendszer beállításainak segítségével kell csatlakoztatni egy számítógéphez.

Miután a vezérlő csatlakoztatva van, megyünk a Bluetooth beállításokhoz, és válasszuk ki a COM port lapját. Megtaláljuk a vezérlőnket, szükségünk van kimenő kikötő. A Bluetoothcommunication objektum létrehozásakor meg kell adni.

A vezérlőhöz való csatlakozás kódja így fog kinézni:

Nyilvános Async Task Connect (VAR Communication \u003d Új Bluetoothcommunication ("COM9"); var tégla \u003d _bric \u003d új tégla (kommunikáció); várja _bick.connectasync (););

Opcionálisan megadhatja a vezérlő csatlakoztatási időtúllépését:

Várjon _bric.connectasync-t (időtartam.fromseconds (5));

A blokkhoz való csatlakozás USB vagy WiFi segítségével hasonlóan történik, kivéve, hogy az USBCommunication és a NetworkKommunikációs objektumokat használják.

A vezérlővel végrehajtott további műveleteket a téglaobjektumon keresztül végzik.

Twist Motors

Az EV3 vezérlőre vonatkozó parancsok végrehajtásához fordulunk a Tégla objektum DirectCommand tulajdonságához. Először próbáljuk megindítani a motorokat.

Tegyük fel, hogy a motorunk csatlakozik a porthoz A vezérlő, majd a motor kezdete 50% -os teljesítménye így fog kinézni:

Várjon _bick.directcommand.turnmotoratpowerasync (Opportport.a, 50);

Vannak más módszerek a motorvezérléshez. Például a motort a StepmotoratpowerAsync () és a Stepmotoratispeedasync () módszerek segítségével forgathatja a megadott szögnek. Összesen számos módszer áll rendelkezésre, amelyek változatok a motorok felvételének módjára - az idő, a sebesség, a hatalom stb.

A kényszerített megállást a stopmotorasync () módszer végzi:

Várjon _brick.directcommand.stopmotorasync (outputport.a, true);

A második paraméter jelzi a fék használatát. Ha hamisítod, a motor leállítja a "Rolling" -t.

Az érzékelők értékeinek olvasása

Az EV3 vezérlőnek négy portja van az érzékelők csatlakoztatásához. Ezenkívül a motorok beépített kódolók is vannak, amelyek lehetővé teszik számukra, hogy érzékelőként használják őket. Ennek eredményeként 8 portunk van, ahonnan elolvashatja az értékeket.

A kikötőkhez való hozzáférés az értékek olvasásához a Tégla Object Ports tulajdonságon keresztül érhető el. A kikötők a vezérlőn rendelkezésre álló portok gyűjteménye. Ezért, hogy dolgozzon egy adott kikötővel, meg kell választania. Inputport.one ... inputport.four az érzékelők portjai, és az inputport.a ... inputport.d motorjeladó.

Var Port1 \u003d _BRIC.Ports;

Az EV3-as érzékelők különböző módokon működhetnek. Például az EV3 színérzékelő használható külső világítás, visszavert fénymérések mérésére vagy a szín meghatározására. Ezért, hogy "tájékoztassa" az érzékelőt pontosan arról, hogy hogyan szeretnénk használni, megkérdeznie kell:

Tégla.ports.setMode (kolormode.reflektív);

Most, hogy az érzékelő csatlakoztatva van, és megadja az üzemmódot, az adatok megfontolhatók. A "RAW" adatokat, feldolgozást és értéket kaphat százalékban.

Float si \u003d _brick.ports.siverue; INT RAW \u003d _BRIC.PORTS.REWVALUE; byte százalék \u003d _bric.ports.percentValue;

A Sivalue ingatlan visszaadja a feldolgozott adatokat. Mindez attól függ, hogy milyen érzékelőt használnak és milyen módban. Például a visszavert fény mérésekor 0 és 100 közötti értéket kapunk, a visszavert fény intenzitásától függően (fekete / fehér).

A Rawvalue tulajdonság visszaadja az ADC "nyers" értékét. Néha kényelmes a későbbi feldolgozáshoz és használathoz. By the way, az EV3 fejlesztési környezetben is lehetőség nyílik a "RAW" értékek megszerzésére - Ehhez a blokkot a kék panelből kell használni.

Ha az alkalmazott érzékelő a százalékos értékek átvételét feltételezi, akkor a százalékos értékelést is használhatja.

A "Csomag" csapatainak végrehajtása

Tegyük fel, hogy rendelkezésére állunk egy robotkocsi két kerékkel, és telepítenénk a helyén. Ebben az esetben két keréknek az ellenkező irányba kell forgatnia. Ha a DirectCommand-ot használjuk, és következetesen két parancsot küldünk a vezérlőnek, akkor lehet egy kis idő a végrehajtásuk között:

Várjon _bick.directcommand.turnmotoratpowerasync (Opportport.a, 50); várja _brick.directcommand.turnmototpowersync (outputport.b, -50);

Ebben a példában egy parancsot küldünk, hogy az A-t 50-es sebességgel forgassa el, miután ez a parancs sikeres befejezése után meg kell ismételni, ismételje meg a B porthoz csatlakoztatott motorral. A probléma az, hogy a parancsok küldése nem azonnal , így a motorok különböző idő alatt elkezdhetik a fonást - míg a B parancs, a motor a már Indítsa el a fonást.

Ha kritikusan fontos számunkra, hogy a motorokat egyszerre kényszerítsük, parancsokat küldhet a "Pack" vezérlőre. Ebben az esetben a DirectCommand helyett a batchcommand tulajdonságot kell használnia:

Tégla.batchcommand.turnmotoratpower (outputport.a, 50); _Bric.batchcommand.turnmotratpower (outputport.b, -50); várjon _brick.batchcommand.sendcommandasync ();

Most két csapatot készítünk egyszerre, majd egy csomaggal mennek a vezérlőbe. A vezérlő, miután megkapta ezeket a parancsokat, kezdje el a motorok forgatását egyidejűleg.

Mi mást tudnál tenni

A forgó motorok és az olvasó érzékelő értékek mellett számos műveletet végezhet az EV3 vezérlőn. Nem fogom részletesen részletesen a KAT-ról, csak listát fogok felsorolni, hogy mit lehet tenni:

  • CleanuiaSync (), DrawTextasync (), DrawLineSync () és más - manipuláció a beépített képernyővezérlő EV3
  • Playtoneasync () és PlaySoundasync () - A beépített hangszóró használata hangok lejátszásához
  • WriteFileasync (), copyfileasync (), deleteFileasync () (a Systemcommandból) - Fájlok működése

Következtetés

A .NET használata a robotok kezeléséhez Mindstorms EV3 Jól bizonyítja, hogy "a különböző világokból származó" technológiák együtt dolgozhatnak. A vizsgálat eredményeként az EV3 API for.net létrehozott egy kis alkalmazást, amely lehetővé teszi az EV3 robot kezelését a számítógépről. Sajnos hasonló alkalmazások léteznek az NXT-hez, és EV3 pedig megkerülik a pártot. Ugyanakkor hasznosak a kezelt robotok újjáélesztésében, például a labdarúgó-robotokban.

Az alkalmazás letölthető és telepíthető ezen a linken: