Toți senzorii ev3 au numele corect. Conectarea a două sau mai multe cărămizi EV3

În mod tradițional, roboții construiți pe o platformă Lego Mindstorms EV3, sunt programate folosind mediul grafic LabVIEW. În acest caz, programele rulează pe controlerul EV3, iar robotul funcționează autonom. Aici voi vorbi despre o modalitate alternativă de a controla robotul - folosind platforma .NET care rulează pe un computer.

Dar înainte de a intra în programare, să ne uităm la câteva cazuri în care acest lucru ar putea fi util:

  • Necesită controlul de la distanță a robotului de pe un laptop (de exemplu, prin apăsarea butoanelor)
  • Este necesar să colectați date de la controlerul EV3 și să le procesați pe un sistem extern (de exemplu, pentru sistemele IoT)
  • Orice alte situații în care doriți să scrieți un algoritm de control în .NET și să îl rulați de pe un computer conectat la controlerul EV3

API-ul LEGO MINDSTORMS EV3 pentru .NET

Controlerul EV3 este controlat de la un sistem extern prin trimiterea de comenzi către portul serial. Formatul de comandă în sine este descris în kitul pentru dezvoltatori de comunicare.

Dar implementarea manuală a acestui protocol este plictisitoare. Prin urmare, puteți utiliza învelișul .NET gata făcut, pe care Brian Peek l-a scris cu atenție. Codul sursă pentru această bibliotecă este găzduit pe Github, iar pachetul gata de utilizare poate fi găsit pe Nuget.

Conectarea la un controler EV3

Clasa Brick este folosită pentru a comunica cu controlerul EV3. Când creați acest obiect, trebuie să transmiteți o implementare a interfeței ICommunication constructorului - un obiect care descrie cum să vă conectați la controlerul EV3. Sunt disponibile implementări de Comunicare Usb, Comunicare Bluetooth și Comunicare în rețea (conexiune WiFi).

Cea mai populară metodă de conectare este prin Bluetooth. Să aruncăm o privire mai atentă la această metodă de conectare.

Înainte de a ne putea conecta programatic la controler prin Bluetooth, controlerul trebuie să fie conectat la computer utilizând setările sistemului de operare.

După ce controlerul este conectat, accesați setările Bluetooth și selectați fila porturi COM. Ne găsim controlerul, avem nevoie de ieșire port. O vom specifica la crearea obiectului BluetoothCommunication.

Codul de conectare la controler va arăta astfel:

Public async Task Connect(comunicare ICommunication) ( var communication = new BluetoothCommunication("COM9"); var brick = _brick = new Brick(comunicare); await _brick.ConnectAsync(); )

Opțional, puteți specifica un timeout de conexiune la controler:

Așteptați _brick.ConnectAsync(TimeSpan.FromSeconds(5));

Conectarea la unitate prin USB sau WiFi se realizează în același mod, cu excepția faptului că sunt utilizate obiectele UsbCommunication și NetworkCommunication.

Toate acțiunile ulterioare efectuate asupra controlerului sunt efectuate prin obiectul Brick.

Hai să învârtim motoarele

Pentru a executa comenzi pe controlerul EV3, accesăm proprietatea DirectCommand a obiectului Brick. Mai întâi, să încercăm să pornim motoarele.

Să presupunem că motorul nostru este conectat la portul A al controlerului, apoi rularea acestui motor la 50% putere va arăta astfel:

Așteptați _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50);

Există și alte metode de a controla motorul. De exemplu, puteți roti un motor la un unghi specificat folosind metodele StepMotorAtPowerAsync() și StepMotorAtSpeedAsync(). Există mai multe metode disponibile, care sunt variații ale modurilor de pornire a motoarelor - în funcție de timp, viteză, putere etc.

Oprirea forțată se efectuează folosind metoda StopMotorAsync():

Așteptați _brick.DirectCommand.StopMotorAsync(OutputPort.A, true);

Al doilea parametru indică utilizarea frânei. Dacă îl setați la fals, motorul se va opri.

Citirea valorilor de la senzori

Controlerul EV3 are patru porturi pentru conectarea senzorilor. Pe lângă aceasta, motoarele au și codificatoare încorporate, ceea ce le permite să fie folosite ca senzori. Ca rezultat, avem 8 porturi din care pot fi citite valori.

Porturile pentru citirea valorilor pot fi accesate prin proprietatea Ports a obiectului Brick. Ports este o colecție de porturi disponibile pe controler. Prin urmare, pentru a lucra cu un anumit port, trebuie să-l selectați. InputPort.One ... InputPort.Four sunt porturile senzorilor, iar InputPort.A ... InputPort.D sunt codificatoarele motorului.

Var port1 = _brick.Ports;

Senzorii din EV3 pot funcționa în diferite moduri. De exemplu, Senzorul de culoare EV3 poate fi utilizat pentru a măsura lumina ambientală, pentru a măsura lumina reflectată sau pentru a detecta culoarea. Prin urmare, pentru a „spune” senzorului exact cum vrem să-l folosim, trebuie să-i setăm modul:

Brick.Ports.SetMode(ColorMode.Reflective);

Acum că senzorul este conectat și modul său de funcționare este setat, puteți citi datele din acesta. Puteți obține date „brute”, valoare procesată și valoare procentuală.

Float si = _brick.Ports.SIValue; int raw = _brick.Ports.RawValue; octet procent = _brick.Ports.PercentValue;

Proprietatea SIValue returnează datele procesate. Totul depinde de ce senzor este utilizat și în ce mod. De exemplu, la măsurarea luminii reflectate, vom obține valori de la 0 la 100 în funcție de intensitatea luminii reflectate (negru/alb).

Proprietatea RawValue returnează valoarea brută obținută de la ADC. Uneori este mai convenabil să îl utilizați pentru prelucrarea și utilizarea ulterioară. Apropo, în mediul de dezvoltare EV3 este posibil să obțineți și valori „brute” - pentru aceasta trebuie să utilizați blocul din panoul albastru.

Dacă senzorul pe care îl utilizați se așteaptă să primească valori în procente, atunci puteți utiliza și proprietatea PercentValue.

Executarea comenzilor în loturi

Să presupunem că avem un cărucior robot cu două roți și vrem să-l implementăm pe loc. În acest caz, cele două roți trebuie să se rotească în sens opus. Dacă folosim DirectCommand și trimitem două comenzi secvențial către controler, poate trece ceva timp între execuția lor:

Așteptați _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50); așteaptă _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.B, -50);

În acest exemplu, trimitem o comandă de rotire a motorului A la o viteză de 50, după ce a trimis această comandă cu succes, repetăm ​​același lucru cu motorul conectat la portul B. Problema este că trimiterea comenzilor nu are loc instantaneu, deci motoarele poate începe să se rotească în momente diferite - în timp ce comanda este transmisă pentru portul B, motorul A deja va începe să se învârtească.

Dacă este esențial pentru noi să facem motoarele să se rotească în același timp, putem trimite comenzi către controler într-un „pachet”. În acest caz, ar trebui să utilizați proprietatea BatchCommand în loc de DirectCommand:

Brick.BatchCommand.TurnMotorAtPower(OutputPort.A, 50); _brick.BatchCommand.TurnMotorAtPower(OutputPort.B, -50); așteaptă _brick.BatchCommand.SendCommandAsync();

Acum sunt pregătite două comenzi simultan, după care sunt trimise controlorului într-un singur pachet. Controlerul, după ce a primit aceste comenzi, va începe să rotească motoarele simultan.

Ce altceva poti face

Pe lângă motoare rotative și citirea valorilor senzorului, puteți efectua o serie de alte acțiuni asupra controlerului EV3. Nu voi intra în detaliu despre fiecare dintre ele, voi enumera doar o listă cu ceea ce se poate face:

  • CleanUIAsync(), DrawTextAsync(), DrawLineAsync(), etc. - manipularea ecranului încorporat al controlerului EV3
  • PlayToneAsync() și PlaySoundAsync() - utilizați difuzorul încorporat pentru a reda sunete
  • WriteFileAsync() , CopyFileAsync() , DeleteFileAsync() (din SystemCommand) - lucrul cu fișiere

Concluzie

Utilizarea .NET pentru a controla roboții Mindstorms EV3 demonstrează bine modul în care tehnologiile din „lumi diferite” pot lucra împreună. Ca urmare a cercetării API-ului EV3 pentru .NET, a fost creată o mică aplicație care vă permite să controlați robotul EV3 de pe un computer. Din păcate, există aplicații similare pentru NXT, dar EV3 le-a ocolit. În același timp, sunt utile în competițiile controlate de roboți, precum fotbalul robot.

Aplicația poate fi descărcată și instalată de la acest link:

Dacă îți lipsesc, ca și noi, capacitățile senzorilor EV3 standard, 4 porturi pentru senzori din roboții tăi nu sunt suficiente sau vrei să conectezi niște periferice exotice la robotul tău - acest articol este pentru tine. Crede-mă, un senzor de casă pentru EV3 este mai ușor decât pare. Un „buton de volum” de la un radio vechi sau câteva cuie înfipte în pământ într-un ghiveci de flori ca senzor de umiditate a solului sunt perfecte pentru experiment.

În mod surprinzător, fiecare port pentru senzor EV3 ascunde o serie de protocoale diferite, în principal pentru compatibilitatea cu senzorii NXT și terți. Să vedem cum funcționează cablul EV3


Este ciudat, dar firul roșu este împământat (GND), firul verde este plusul sursei de alimentare de 4,3 V. Firul albastru este atât SDA pentru magistrala I2C, cât și TX pentru protocolul UART. În plus, firul albastru este intrarea convertorului analog-digital pentru EV3. Firul galben este atât SCL pentru magistrala I2C, cât și RX pentru protocolul UART. Firul alb este intrarea convertorului analog-digital pentru senzorii NXT. Negru - intrare digitală, pentru senzori compatibili cu NXT - dublează GND. Nu este ușor, nu-i așa? Să mergem în ordine.

Intrare analogică EV3

Fiecare port de senzor are un canal convertor analog-digital. Este utilizat pentru senzori precum Senzorul tactil (buton), Senzorul de lumină NXT și Senzorul de culoare în modul de lumină reflectată și lumină ambientală, Senzorul de sunet NXT și Termometrul NXT.

O rezistență de 910 Ohmi, conectată conform diagramei, îi spune controlerului că acest port trebuie să fie comutat în modul de intrare analogică. În acest mod, puteți conecta orice senzor analogic la EV3, de exemplu de la Arduino. Cursul de schimb cu un astfel de senzor poate ajunge la câteva mii de sondaje pe secundă; acesta este cel mai rapid tip de senzor.

Senzor de lumina

Termometru

Senzor de umiditate a solului

De asemenea, puteți conecta: un microfon, un buton, un telemetru IR și mulți alți senzori obișnuiți. Dacă puterea de 4,3 V nu este suficientă pentru senzor, îl puteți alimenta cu 5 V de la portul USB situat pe partea laterală a controlerului EV3.

„Butonul de volum” menționat mai sus (cunoscut și ca rezistor variabil sau potențiometru) este un exemplu excelent de senzor analogic - poate fi conectat astfel:

Pentru a citi valorile de la un astfel de senzor în mediul de programare LEGO standard, trebuie să utilizați blocul RAW albastru

Protocolul I2C

Acesta este un protocol digital; de exemplu, senzorul cu ultrasunete NXT și mulți senzori Hitechnic, cum ar fi IR Seeker sau Color Sensor V2, funcționează la el. Pentru alte platforme, de exemplu pentru Arduino, există o mulțime de senzori i2c, îi puteți și conecta. Schema este următoarea:

O rezistență de 82 ohmi este recomandată de LEGO Group, dar diverse surse menționează 43 ohmi sau mai puțin. De fapt, am încercat să renunțăm cu totul la aceste rezistențe și totul funcționează, cel puțin „pe masă”. Într-un robot real care funcționează în condiții de diferite tipuri de interferență, liniile SCL și SDA ar trebui în continuare conectate la sursa de alimentare prin rezistențe, așa cum este indicat în diagrama de mai sus. Viteza de operare i2c în EV3 este destul de scăzută, aproximativ 10.000 kbps, motiv pentru care Senzorul de culoare Hitechnic V2 preferat al tuturor este atât de lent :)

Din păcate, pentru EV3-G standard de la LEGO nu există un bloc cu drepturi depline pentru comunicarea în două sensuri cu un senzor i2c, dar folosind medii de programare de la terți, cum ar fi RobotC, LeJOS sau EV3 Basic, puteți interacționa cu aproape orice senzor i2c. .

Capacitatea EV3 de a funcționa folosind protocolul i2c deschide o posibilitate interesantă pentru conectarea mai multor senzori la un singur port. Protocolul I2C vă permite să conectați până la 127 de dispozitive slave la o singură magistrală. Iti poti imagina? 127 de senzori pentru fiecare port EV3 :) Mai mult decât atât, adesea o grămadă de senzori i2c sunt combinați într-un singur dispozitiv, de exemplu în fotografia de mai jos există un senzor 10 în 1 (conține o busolă, giroscop, accelerometru, barometru etc.)

UART

Aproape toți senzorii standard non-EV3, cu excepția senzorului tactil, funcționează folosind protocolul UART și de aceea nu sunt compatibili cu controlerul NXT, care, deși are aceiași conectori, nu are UART implementat pe senzorul său. porturi. Uitați-vă la diagramă, este puțin mai simplă decât în ​​cazurile anterioare:

Senzorii UART potrivesc automat viteza de funcționare cu EV3. Conectându-se inițial la o viteză de 2400 kbit/s, ei convin asupra modurilor de funcționare și ratelor de schimb, trecând apoi la o viteză crescută. Ratele de schimb tipice pentru diferiți senzori sunt 38400 și 115200 kbit/s.
LEGO a implementat un protocol destul de complicat în senzorii săi UART, așa că nu există senzori terți care nu au fost inițial destinați acestei platforme, dar care să fie compatibile cu aceasta. Cu toate acestea, acest protocol este foarte convenabil pentru conectarea „de casă”
senzori bazați pe microcontrolere.
Există o bibliotecă minunată pentru Arduino numită EV3UARTEmulation, scrisă de celebrul dezvoltator LeJOS Lawrie Griffiths, care permite acestei plăci să pretindă a fi un senzor compatibil UART-LEGO. Blogul său LeJOS News are o mulțime de exemple de conectare a senzorilor de gaz, a unui senzor IMU și a unei busolă digitală folosind această bibliotecă.

Mai jos în videoclip este un exemplu de utilizare a unui senzor de casă. Nu avem suficienți senzori de distanță LEGO originali, așa că folosim unul de casă pe robot:


Sarcina robotului este să înceapă de la celula verde, să găsească o cale de ieșire din labirint (celula roșie) și să se întoarcă la punctul de plecare pe calea cea mai scurtă, fără a intra în fundături.

Selectați modul ecran

Selectarea modului
Blocați câmpul de text
Intrări
Butonul de previzualizare

Selectați tipul de text sau grafică pe care doriți să le vedeți utilizând selectorul de mod. După selectarea modului, puteți selecta valorile de intrare. Intrările disponibile vor varia în funcție de mod. Modurile și intrările sunt descrise mai jos.

Puteți face clic pe butonul Previzualizare pentru a previzualiza ceea ce va afișa blocul de afișare pe ecranul EV3. Puteți lăsa vizualizarea deschisă în timp ce selectați valorile de intrare pentru bloc.

Coordonatele ecranului

Multe dintre modurile de blocare a ecranului folosesc coordonatele X și Y pentru a determina locația elementului. Coordonatele determină poziția pixelilor pe ecranul EV3 Brick. Poziția (0, 0) este în colțul din stânga sus al ecranului, așa cum se arată în imaginea de mai jos.

Dimensiuni ecran: 178 pixeli lățime și 128 pixeli înălțime. Intervalul valorilor coordonatelor X este de la 0 pe ecranul din stânga la 177 din dreapta. Intervalul valorilor coordonatelor Y este de la 0 în partea de sus până la 127 în partea de jos.

Sfaturi și trucuri

Puteți folosi butonul Previzualizare din colțul din stânga sus al blocului Ecran pentru a vă ajuta să găsiți coordonatele corecte ale ecranului.

Text - Pixeli

Text - Modul Pixeli vă permite să afișați text oriunde pe ecranul EV3 Brick.

Resetează fereastra

Modul Reset Window readuce ecranul EV3 Brick la ecranul cu informații standard afișat în timp ce programul rulează. Acest ecran arată numele programului și alte informații de feedback. Când rulați un program pe caramida EV3, acest ecran apare înainte ca primul bloc ecran al programului să ruleze.

Asigurarea vizibilității elementelor afișate

Când programul EV3 se încheie, ecranul EV3 Brick se șterge și revine la ecranul EV3 Brick Menu. Orice text sau grafică afișată de program va fi ștearsă. Dacă, de exemplu, programul dumneavoastră are un bloc „Ecran” și nimic altceva, atunci ecranul va fi șters atât de repede imediat după terminarea programului, încât nu veți vedea rezultatele blocului „Ecran”.

Dacă doriți ca ecranul să rămână vizibil după finalizarea programului, trebuie să adăugați un bloc la sfârșitul programului pentru a preveni încheierea imediată a programului, așa cum se arată în exemplele următoare.

Afișarea mai multor articole

Dacă doriți să afișați mai multe elemente text sau grafice pe ecran în același timp, este important să nu ștergeți ecranul EV3 Brick între elemente. Fiecare mod al blocului Ecran are o intrare Clear Screen. Dacă Clear Screen este adevărat, întregul ecran va fi șters înainte ca elementul să fie afișat. Aceasta înseamnă că pentru a afișa mai multe elemente, trebuie să setați Clear Screen la Fals pentru fiecare bloc de ecran, cu excepția primului.

Afișarea numerelor

Pentru a afișa o valoare numerică în programul dvs., conectați o magistrală de date la intrarea text a blocului de afișare text. Busul de date numerice va fi convertit automat în text utilizând conversia tipului magistralei de date (vezi secțiunea

Descrierea prezentării prin diapozitive individuale:

1 tobogan

Descrierea diapozitivei:

2 tobogan

Descrierea diapozitivei:

EV3 Brick Interfață EV3 Brick este centrul de control care alimentează roboții tăi. Cu ecranul, butoanele de control Brick și interfața EV3 Brick, care conține patru ferestre principale, aveți acces la o varietate uimitoare de caracteristici unice EV3 Brick. Acestea pot fi funcții simple, cum ar fi pornirea și oprirea unui program, sau complexe, cum ar fi scrierea programului în sine.

3 slide

Descrierea diapozitivei:

Interfață: Meniul EV3 are un meniu care constă din 4 părți: Programe recente Navigare fișiere Aplicații Brick Setări Brick

4 slide

Descrierea diapozitivei:

Programe recente Lansați programe descărcate recent de pe computerul dvs. desktop. Această fereastră va rămâne goală până când începeți să descărcați și să rulați programe. Această fereastră va afișa programele pe care le-ați lansat recent. Programul din partea de sus a listei, care este selectat implicit, este programul care a fost lansat ultimul.

5 slide

Descrierea diapozitivei:

File Manager Accesați și gestionați toate fișierele stocate în memoria microcomputerului, precum și pe cardul de memorie. Din această fereastră veți accesa și gestiona toate fișierele din EV3 Brick, inclusiv fișierele stocate pe cardul SD. Fișierele sunt organizate în foldere de proiect, care, pe lângă fișierele de program propriu-zise, ​​conțin și sunetele și imaginile utilizate în fiecare proiect. Fișierele pot fi mutate sau șterse folosind navigatorul de fișiere. Programele create folosind mediul de programare al modulelor și aplicațiile de înregistrare a datelor din modul sunt stocate separat în folderele BrkProg_SAVE și BrkDL_SAVE.

6 diapozitiv

Descrierea diapozitivei:

EV3 Control Box Applications are 4 aplicații preinstalate: A. Port View. B. Controlul motorului. B. Control IR. D. Mediul de programare al modulelor.

7 slide

Descrierea diapozitivei:

A. Port View În prima fereastră a aplicației Port View, puteți vedea rapid ce porturi au senzori sau motoare conectate la ele. Utilizați butoanele de control EV3 Brick pentru a naviga la unul dintre porturile ocupate și veți vedea citirile curente de la senzor sau motor. Instalați mai mulți senzori și motoare și experimentați cu diferite setări. Pentru a vizualiza sau modifica setările curente pentru motoarele și senzorii instalați, apăsați butonul central. Pentru a reveni la fereastra principală a aplicației a modulului, faceți clic pe butonul „Înapoi”.

8 slide

Descrierea diapozitivei:

B. Controlul motorului Controlați mișcarea înainte sau înapoi a oricărui motor conectat la unul dintre cele patru porturi de ieșire. Există două moduri diferite. Într-un singur mod, veți putea controla motoarele conectate la portul A (folosind butoanele Sus și Jos) și la portul D (folosind butoanele Stânga și Dreapta). În celălalt mod, controlați motoarele conectate la portul B (folosind butoanele Sus și Jos) și portul C (folosind butoanele Stânga și Dreapta). Comutarea între aceste două moduri se face folosind butonul central. Pentru a reveni la fereastra principală a aplicației a modulului, faceți clic pe butonul „Înapoi”.

Slide 9

Descrierea diapozitivei:

Control IR Controlați mișcarea înainte sau înapoi a oricărui motor conectat la unul dintre cele patru porturi de ieșire folosind farul infraroșu de la distanță ca telecomandă și senzorul infraroșu ca receptor (senzorul infraroșu trebuie să fie conectat la portul 4 de pe cărămida EV3) . Există două moduri diferite. Într-un mod veți folosi canalele 1 și 2 pe farul infraroșu de la distanță. Pe canalul 1, veți putea controla motoarele conectate la portul B (folosind butoanele 1 și 2 de pe farul IR de la distanță) și portul C (folosind butoanele 3 și 4 de pe farul IR de la distanță). Pe canalul 2 veți putea controla motoarele conectate la portul A (folosind butoanele 1 și 2) și la portul D (folosind butoanele 3 și 4). Într-un alt mod, puteți controla motoarele în același mod, folosind canalele 3 și 4 de pe farul infraroșu de la distanță. Comutarea între aceste două moduri se face folosind butonul central. Pentru a reveni la fereastra principală a aplicației a modulului, faceți clic pe butonul „Înapoi”.

10 diapozitive

Descrierea diapozitivei:

Mediu de programare Brick EV3 Brick vine cu software-ul instalat pe el. Aplicația este similară cu software-ul instalat pe computer. Aceste instrucțiuni conțin informațiile de bază de care aveți nevoie pentru a începe.

11 diapozitiv

Descrierea diapozitivei:

Setări EV3 Brick Această fereastră vă permite să vizualizați și să reglați diferite setări generale în EV3 Brick.

12 slide

Descrierea diapozitivei:

Reglarea volumului Puteți crește sau reduce volumul în fila Setări din EV3.

Slide 13

Conexiune USB

LEGO Mindstorms EV3 se poate conecta la un PC sau la alt EV3 printr-o conexiune USB. Viteza și stabilitatea conexiunii în acest caz sunt mai bune decât cu orice altă metodă, inclusiv Bluetooth.

LEGO Mindstorms EV3 are două porturi USB.

Comunicarea dintre LEGO EV3 și alte blocuri LEGO EV3 în modul daisy chain.

Modul Daisy Chain este folosit pentru a conecta două sau mai multe blocuri LEGO EV3.

Acest mod:

  • conceput pentru a conecta mai mult de un LEGO Mindstorms EV3;
  • servește la conectarea mai multor senzori, motoare și alte dispozitive;
  • permite comunicarea intre mai multe LEGO Mindstorms EV3 (pana la 4), ceea ce ne ofera pana la 16 porturi externe si acelasi numar de porturi interne;
  • face posibilă controlul întregului lanț din principalul LEGO Mindstorms EV3;
  • nu poate funcționa când Wi-Fi sau Bluetooth este activ.

Pentru a activa modul de conectare în lanț, accesați fereastra de setări ale proiectului și bifați caseta.

Când este selectat acest mod, atunci pentru orice motor putem selecta blocul EV3 care va fi utilizat și senzorii necesari.

Tabelul prezintă opțiunile de utilizare a blocurilor EV3:

Acțiune

Motor mediu

Motor mare

Direcție

Management independent

Giroscopic

Infraroşu

cu ultrasunete

Rotirea motorului

Temperaturile

Contor de energie

Sunet

Conexiune prin Bluetooth

Bluetooth permite LEGO Mindstorms EV3 să se conecteze la un PC, alte LEGO Mindstorms EV3, smartphone-uri și alte dispozitive Bluetooth. Raza de comunicare prin Bluetooth este de până la 25 m.

Puteți conecta până la 7 blocuri la un LEGO Mindstorms EV3. EV3 Master Brick vă permite să trimiteți și să primiți mesaje către fiecare Slave EV3. EV3 Slaves pot trimite mesaje doar către cărămida principală EV3, nu unul altuia.

Secvență de conectare EV3 prin Bluetooth

Pentru a conecta două sau mai multe blocuri EV3 unul la altul prin Bluetooth, trebuie să efectuați următorii pași:

1. Deschideți o filă Setări.

2. Selectați Bluetoothși apăsați butonul central.

3. Punem Caseta de bifat vizibilitate Bluetooth.

4. Verificați dacă semnul Bluetooth ("<") виден на верхней левой стороне.

5. Efectuați procedura de mai sus pentru numărul necesar de cărămizi EV3.

6. Accesați fila Conexiune:

7. Faceți clic pe butonul Căutare:

8. Selectați EV3 la care doriți să vă conectați (sau la care doriți să vă conectați) și apăsați butonul central.

9. Conectăm primul și al doilea bloc cu cheia de acces.

Dacă faceți totul corect, pictograma „ va apărea în colțul din stânga sus<>", conectați alte blocuri EV3 în același mod dacă sunt mai mult de două dintre ele.

Dacă opriți LEGO EV3, conexiunea se va pierde și va trebui să repetați toți pașii.

Important: fiecare bloc trebuie să aibă propriul program scris.

Exemplu de program:

Primul bloc: Când senzorul tactil este apăsat, primul bloc EV3 transmite textul celui de-al doilea bloc cu o întârziere de 3 secunde (bloc principal).

Exemplu de program pentru blocul 2:

Al doilea bloc așteaptă să primească textul din primul bloc, iar odată ce îl primește, va afișa un cuvânt (în exemplul nostru, cuvântul „Bună ziua”) timp de 10 secunde (blocul slave).

Conectați-vă prin Wi-Fi

Comunicarea pe o rază mai lungă este posibilă prin conectarea Dongle-ului Wi-Fi la portul USB de pe EV3.

Pentru a utiliza Wi-Fi, trebuie să instalați un modul special pe blocul EV3 folosind un conector USB (adaptor Wi-Fi (Adaptor wireless Netgear N150 (WNA1100)) sau puteți conecta un dongle Wi-Fi.