Tečaj programiranja robota EV3 v okolju Lego Mindstorms EV3. Robotika knjižnih polic Tečaj programiranja robotov lego mindstorms ev3

L.J. Ovsjanitskaya, D.N. Ovsjanitsky, A.D. Ovsjanicki

Tečaj programiranja robotov EV3

v okolju Lego Mindstorms EV3

Druga izdaja, popravljena in razširjena

UDK 004.42+004.896

Ovsjanitskaya, L.Yu. Tečaj programiranja robotov Lego

Mindstorms EV3 v okolju EV3: ur. drugič, revidirano in dodatno /

L.J. Ovsjanitskaya, D.N. Ovsjanitsky, A.D. Ovsjanicki. – M.:

“Pero”, 2016. – 296 str.

ISBN 978-5-906862-76-1

Knjiga je posvečena programiranju robota EV3 v okolju Lego Mindstorms EV3. Delo je rezultat dolgoletnih izkušenj avtorjevega neposrednega sodelovanja na regionalnih, vseruskih in mednarodnih tekmovanjih v robotiki in pedagoških dejavnostih, namenjenih usposabljanju učiteljev, predavateljev in trenerjev na to temo.

Knjiga bo uporabna učiteljem osnovnih, srednjih, višjih in dodatno izobraževanje, dijaki, dijaki in vsi, ki jih zanima problematika robotike.

Recenzent:

Doktor fizikalnih in matematičnih znanosti, profesor A.F. Šorikov.

ISBN 978-5-906862-76-1 © L.Yu. Ovsjanitskaya, D.N. Ovsjanitsky, A.D. Ovsyanitsky, 2016 Vsebina Uvod

Poglavje 1. Značilnosti robota.

Nastanek in zagon prvega projekta 7

1.1. kratek opis robotske platforme. Pregled programskega okolja Lego Mindstorms EV3

1.2. Načini povezave robota z računalnikom. Posodobitev vdelane programske opreme EV3 Brick. Nalaganje programov v EV3 Brick



Poglavje 2. Programiranje robota

2.1. Motorji. Programiranje gibanja po različnih trajektorijah

2.2. Delo z osvetlitvijo ozadja, zaslonom in zvokom

2.2.1. Delo z zaslonom

2.2.2. Delo z osvetljenimi gumbi na EV3 Brick

2.2.3. Delo z zvokom

2.3. Programske strukture

2.3.1. Pričakovanje strukture

2.3.2. Struktura cikla

2.3.3. Struktura stikala

2.4. Delo s podatki

2.4.1. Vrste podatkov. Dirigenti

2.4.2. Spremenljivke in konstante

2.4.3. Matematične operacije s podatki

2.4.5. Delo z nizi

2.4.6. Logično delovanje s podatki

2.5. Delo s senzorji

2.5.1. Senzor na dotik

2.5.2. Barvni senzor

2.5.3 Žiroskopski senzor

2.5.4. Ultrazvočni senzor

2.5.5. Infrardeči senzor in svetilnik

2.5.6. Senzor vrtenja motorja (določanje kota/števila vrtljajev in moči motorja)

2.5.7. Gumbi za upravljanje modula

2.6. Delo z datotekami

Tečaj programiranja robotov Lego Mindstorms EV3 v okolju EV3

2.7. Sodelovanje več robotov

2.7.1. Povezovanje robotov z USB kablom

2.7.2. Komunikacija robota prek povezave Bluetooth................................. 207

2.8. Uporabni bloki in orodja

2.8.1. Blokiraj »Ostani aktiven«

2.8.2. Blokiraj "Ustavi program"

2.8.3. Ustvarjanje rutin

2.8.4. Snemanje komentarjev

2.8.5. Uporaba žičnih vhodnih vrat

Poglavje 3. Glavne vrste tekmovanj in elementi nalog.

3.1. Sumo tekmovanje

3.2. Kegelring

3.3. Slalom (izogibanje oviram)

3.4. Programiranje gibanja črte

3.4.1. Algoritem za premikanje po cik-cak liniji z eno in dvobarvnimi senzorji

3.4.2. Algoritem "Wave"

3.4.3. Algoritem za samodejno kalibracijo barvnega senzorja..... 258

3.5. Proporcionalni linearni nadzor

3.5.1. Gibanje črte na podlagi proporcionalnega krmiljenja

3.5.2. Iskanje in štetje križišč s proporcionalnim nadzorom črt

3.5.3. Potovalna inverzija

3.5.4. Gibanje robota po steni

3.6. Iskanje cilja v labirintu

Poglavje 4: Posodabljanje vdelane programske opreme in ponovni zagon EV3 Brick.

286 Poglavje 5. Uporaba senzorjev drugih proizvajalcev

5.1. Delo s HiTech barvnim senzorjem

5.2. Uporaba drugih senzorjev

Zaključek

Seznam projektov Projekt »Faithful Dog« 90 Projekt »Sports Scoreboard« 98 Projekt »Auto Finish« 102 Projekt »60 Seconds« 109 Projekt »Snemanje in branje barvne črtne kode« 120 Projekt »Razvrščanje niza z uporabo metode mehurčkov« 123 Projekt » Pametna hiša» 153 Projekt »Trmasti robot« 160 Projekt »Robot z daljinec» 182 Projekt Animirana igra na zaslonu bloka EV3 “Ujemi snežno kepo” 191 Projekt “Izdelava 3D zemljevida površja” 197 Projekt “EV3 - glasbeni sintetizator” 203 Tečaj programiranja robota Lego Mindstorms EV3 v okolju EV3 slika tuljavo (slika 1.1.11b). Blok bo postal aktiven (svetel) (slika 1.1.11c).

–  –  –

Slika 1.1.

12. Vzporedni programi Za skaliranje slik (slika 1.1.13 a, b) se uporabljajo standardne kombinacije MSWindows Tipke Ctrl in kolesca miške ali ikone v zgornjem desnem kotu okna:. Skaliranje se uporablja pri krmarjenju po velikih programih, kopiranju določenih blokov in še veliko več.

Tečaj programiranja robotov Lego Mindstorms EV3 v okolju EV3 Bloka Large motor in Medium motor Prvi blok palete se imenuje Medium motor, drugi pa Large motor. Bloki se uporabljajo za krmiljenje enega motorja in imajo enako funkcionalnost.

Razmislimo o strukturi blokov na primeru velikega motornega bloka (slika 2.1.4).

–  –  –

Slika 2.1.

4. Krmilna enota velikega motorja Najprej kliknite na črko, ki predstavlja ime vrat, in izberite ime vrat, na katera je priključen motor.

Oglejmo si podrobneje vsak kontrolni element.

1. Izberite način delovanja:

a) vklopite (slika 2.1.5);

–  –  –

Slika 2.4.

3.4. Program za izvedbo projekta “60 sekund”.

Naredi sam dejavnosti Dodajte sliko številčnice ure na zaslon.

Po analogiji dodajte minutni in urni kazalec.

2.4.4. Drugi bloki za obdelavo podatkov

–  –  –

Preden začnete delati z nizi, jih morate inicializirati, tj. določite vrsto (numerično ali logično) in dodelite ime.

Podatke lahko v polje vnašamo ročno oz avtomatski način(branje odčitkov s senzorjev). Če želite ustvariti matriko, morate uporabiti blok spremenljivk.

Ustvarjanje matrike. Zapis matrike v spremenljivko

Če želite ustvariti in zapolniti matriko, morate:

(a) premaknite blok spremenljivke v delovni prostor in določite njegov način (Write) in vrsto (numerično ali logično polje);

Formacija Formacija številskega niza logičnega niza

–  –  –

Slika 2.5.

3.3. Načini delovanja žiroskopskega senzorja Pomembno!

Včasih (precej pogosto!) Pri delu z žiroskopskim senzorjem lahko opazite naslednje: ko tekoči program robot miruje in vrednost kota nenehno narašča (drift), stopnja povečanja je lahko več kot 1 stopinjo na sekundo!

Povečanje vrednosti senzorja Poglavje 2. Programiranje robota 177 Če je svetilnik zelo daleč (več kot 1 m), bo vrednost meritve 100, če je zelo blizu (najmanj 1 cm) - 0. Vmesni rezultati tudi ne ustrezajo na centimetre.

V primeru, da se svetilnik nahaja neposredno pred senzorjem, bo relativni rezultat merjenja kota enak 0, največja lokacija svetilnika na levi, v nasprotni smeri urinega kazalca -25 (največji zaznavni kot odstopanja je približno 100 stopinj), na desni, v smeri urinega kazalca 25 (slika 2.5. 5.5).

Slika 2.5.

5.5. Položaj IR svetilnika glede na IR senzor Oglejmo si primere programov. Postavite svetilnik pred robota, ga vklopite in usmerite proti robotu.

LED indikator se bo vklopil in svetil. Svetilnik bo neprekinjeno oddajal signal. Na enoto infrardečega senzorja namestite isti kanal, kot je bil nameščen na svetilniku. Senzor bo zaznal samo svetilnik na kanalu, ki ga določite v svojem programu.

Svetilnik se izklopi, če ga ne uporabljate eno uro.

Na sl. 2.5.5.6 prikazuje izbiro načina delovanja s svetilnikom.

Tečaj programiranja robotov Lego Mindstorms EV3 v okolju EV3 z uporabo MS Excel.

Robot se vrti in v vsakem trenutku beleži vrednost kota vrtenja in razdaljo do površine.

rešitev:

1. Ponastavite vrednosti senzorja žiroskopa.

Vstavimo cikel 01, zaključni pogoj je čas (3 sekunde).

2. Med ciklom se robot vrti in bere informacije iz ultrazvočnih in žiroskopskih senzorjev. Odčitki so združeni v programskem bloku Text, ločeni z vejico.

3. Rezultat meritve v vsakem koraku cikla se zapiše v datoteko Map.

4. Nastavite premor na 0,25 sekunde. Po koncu cikla zaprite datoteko.

Pozor! Pri uporabi žiroskopskega senzorja bodite pozorni na prisotnost odmika odčitavanja, ko ga vklopite (glejte.

razdelek 2.5.3 za odstranitev zanašanja).

Poglavje 2. Programiranje robota 213 premikanje in ustavitev, podajanje vsake prikolice zaporedno.

2. “Vokalno instrumentalna zasedba”

Naloga je izvesti glasbeno skladbo z ansamblom. Prvi robot EV3 je dirigent, ki prek Bluetootha daje ukaze drugim robotom glasbenikom in robotom pevcem, kdaj naj igrajo svoje glasbene vloge. Robot dirigent je lahko opremljen z dirigentsko palico, ki se premika gor in dol ter se obrača proti robotu, ki začne igrati. Robotski dirigent lahko na primer občasno nastopa kot solist.

3. "Plesni ansambel"

Naloga je ustvariti robotski ansambel. Prvi robot, ki izdaja ukaze prek Bluetootha, je solist. Ostali roboti sledijo ukazom. Programirajte različne vrste plesov - ples robotov ("Lokomotiva"), počasne in hitre plese.

4. “Jutranja telovadba”

Naloga je sočasno izvajanje gimnastičnih vaj na ukaz prvega robota.

2.8. Uporabni bloki in orodja 2.8.1. Blokiraj »Ostani aktiven«

Po preteku določenega časa in v primeru, ko robota ne kontaktiramo in robot ne izvaja nobenih operacij, se izklopi (v smislu EV3 gre v način mirovanja). To povzroča nevšečnosti pri delu s programi, ki so zasnovani tako, da dolgo čakajo na nekatere procese. Direktno na bloku lahko nastavimo čas preklopa v način mirovanja (možna je nastavitev časa pred izklopom: 2 minuti, tečaj programiranja robota Lego Mindstorms EV3 v okolju EV3, ustvariti več programskih možnosti in izbrati taktiko boja. Za na primer, če imamo močnega, a počasnega robota, lahko zaženemo program, v katerem bo naš robot napadel nasprotnika hitro in s strani; če se nasprotnikov robot v iskanju našega robota vedno obrne v desno, moramo zagnati program, ki hodi okoli in ga napada z leve.

Robot ima lahko enega ali dva ultrazvočna senzorja za določanje položaja sovražnika brez nepotrebnih obratov. Posebej zanimive so runde, v katerih tekmujejo roboti približno enake moči oziroma hitrosti, v tem primeru o izidu odločajo milimetri in sekunde!

Zmagovalec je udeleženec, ki je lahko sestavil močno in zanesljivo strukturo, napisal kompetenten program (ali programe) in izbral pravo strategijo. Kombinacija teh dejavnikov naredi proces priprave na tekmovanja vznemirljiv, tekmovanja sama pa zelo zabavna in razburljiva!

Navedimo primer programskega algoritma za robota sumo borca.

Ustavitev robota.

2. Robot se obrača, dokler ne zagleda nasprotnikovega robota z ultrazvočnim senzorjem (dokler vrednost senzorja ne postane manjša od 100 cm), kar ustreza kotu vrtenja 120-180 stopinj. Ustavitev robota.

3. Ustvarite cikel z zaključnim pogojem 01, – Neomejeno.

4. V cikel 01 vstavimo cikel 02, katerega končni pogoj je logična vrednost: cikel se bo izvajal, dokler se na vhod Termination Condition ne poda vrednost True.

Poglavje 3. Glavne vrste tekmovanj in elementi nalog 245 100 25 + 18 =.

Poiščimo hitrost levega kolesa: V1=58.

Za izvedbo algoritma namestite ultrazvočni senzor pred robotom v sredini in ga povežite z vrati 4.

Usmerite barvni senzor navzdol, ga postavite levo od črte in ga povežite z vrati 2. Na sl. 3.3.3 predstavlja program za izogibanje oviram. Upoštevajte, da se robot po zaznavi ovire ustavi in ​​ostro zavije v desno, da se premakne s črte, ki je pravokotna na oviro, in obkroži predmet po danem radiju.

Naloge za samostojno delo

Programirajte poti:

a) izogibanje več oviram z enakim radijem;

b) izogibanje oviram z različnimi radiji;

c) vožnja v osmerici.

Poglavje 3. Glavne vrste tekmovanj in elementi nalog 275 Slika 3.

5.3.2. Program za vožnjo po inverzni trajektoriji gibanja Poglavje 3. Glavne vrste tekmovanj in elementi nalog 285 Slika 3.6.5. Program za iskanje cilja v labirintu Tečaj programiranja robota Lego Mindstorms EV3 v okolju EV3.

POGLAVJE 5. UPORABA TRETJIH OSEB

SENZORJI

Poleg senzorjev, vključenih v domače ali izobraževalne komplete Lego Mindstorms EV3, je možno dodatna pridobitev Lego senzorji in Lego certificirani senzorji podjetja HiTechnic.

HiTechnic proizvaja veliko število senzorjev za LEGO Mindstorms, večina jih ima certifikat LEGO, kar potrjuje popolno združljivost, visoko kakovost in varnostne standarde.

Pomemben dejavnik, ki omogoča uporabo teh senzorjev pri delu z otroki, je tudi prisotnost certifikata RoHS (omejitev nevarnih snovi), ki potrjuje odsotnost uporabe snovi v električni in elektronski opremi: svinec, živo srebro, kadmij, kositer, šestvalentni krom in nekatere bromidne spojine. Za trenutni seznam senzorjev s certifikatom Lego obiščite www.hitechnic.com/sensors.

Trenutno na voljo: senzor kota vrtenja;

sila, ki deluje prečno na os; kompas; merilnik pospeška;

žiroskop; detektor magnetnega polja; infrardeči senzor;

infrardeči senzor gibanja, ki vam omogoča ugotavljanje prisotnosti ljudi ali živali v prostoru, podobno kot senzorji, ki se uporabljajo v varnostnih sistemih; barometer, ki določa atmosferski tlak in temperaturo;

elektrooptični senzor razdalje, ki natančno zazna majhne predmete in majhne spremembe v razdalji do njih, vendar na razdalji največ ~20 cm; barvni senzor

V drugi lekciji se bomo podrobneje seznanili s programskim okoljem in podrobno preučili ukaze, ki določajo gibanje našega robotskega vozička, sestavljenega v prvi lekciji. Torej, zaženimo programsko okolje Lego mindstorms EV3, naložimo naš prej ustvarjen projekt lessons.ev3 in ga dodamo projektu nov program- lekcija-2-1. Program lahko dodate na dva načina:

  • Izberite ekipo "Datoteka" - "Dodaj program" (Ctrl+N).
  • Kliknite "+" na zavihku programi.

riž. 1

2.1. Programiranje palet in programskih blokov

Zdaj pa usmerimo pozornost na spodnji del programskega okolja. Iz materiala prve lekcije že vemo, da so tukaj ukazi za programiranje robota. Razvijalci so uporabili izvirno tehniko in po združevanju programskih blokov vsaki skupini dodelili lastno barvo, skupine pa so poimenovali palete.

Zelena paleta se imenuje: "akcija":

riž. 2

Ta paleta vsebuje programske bloke za krmiljenje motorjev, zaslonski blok in kontrolni blok za indikator statusa modula. Zdaj bomo začeli preučevati te programske bloke.

2.2. Zelena paleta - akcijski bloki

Prvi programski blok zelene palete je namenjen krmiljenju srednjega motorja, drugi blok pa krmiljenju velikega motorja. Ker so parametri teh blokov enaki, razmislimo o nastavitvi na primeru bloka - velikega motorja.

riž. 3

Za pravilne nastavitve krmilno enoto za velik motor moramo:

  1. Izberite vrata, na katera je priključen motor (A, B, C ali D) (slika 3, točka 1)
  2. Izberite način delovanja motorja (slika 3, točka 2)
  3. Konfigurirajte parametre izbranega načina (slika 3, točka 3)

Kako se načini razlikujejo? način: "Vklopiti" vklopi motor z danim parametrom "Moč" nato pa se nadzor prenese na naslednji programski blok programa. Motor se bo še naprej vrtel, dokler ga ne ustavi naslednji blok "Veliki motor" z režimom "Ugasnite" ali naslednji blok "Veliki motor" ne bo vseboval drugih izvedbenih parametrov. Način "Omogoči za število sekund" vklopi velik motor z nastavljeno močjo za določeno število sekund in šele po preteku časa se motor ustavi in ​​krmiljenje v programu preide na naslednji programski blok. Motor se bo v načinih obnašal podobno "Vklopi po številu stopinj" in "Omogoči glede na število vrtljajev": šele po končanem nastavljenem vrtenju se motor ustavi in ​​krmiljenje v programu se premakne na naslednji blok.

Parameter moči (na sliki 3 je moč nastavljena na 75) lahko zavzame vrednosti od -100 do 100. Pozitivne vrednosti moči nastavijo vrtenje motorja v smeri urinega kazalca, negativne vrednosti nastavijo vrtenje motorja v nasprotni smeri urinega kazalca. Pri vrednosti moči 0 se motor ne bo vrtel; "višja" kot je vrednost moči, hitreje se motor vrti.

Parameter moči je naveden samo v celih vrednostih, parametri: sekunde, stopinje, vrtljaji pa lahko zavzamejo vrednosti z decimalnim ulomkom. Vendar ne pozabite, da je najmanjši korak vrtenja motorja ena stopinja.

Posebej je treba omeniti parameter "Zavora na koncu". Ta parameter, če je nastavljen na "Zavoriti" povzroči upočasnitev motorja po izvedbi ukaza in če je nastavljeno na "Prekoračitev", potem se bo motor vrtel po vztrajnosti, dokler se ne ustavi.

Naslednja dva programska bloka "krmiljenje" in izvajati krmiljenje para velikih motorjev. Privzeto je levi veliki motor priključen na vrata "V", in desno - do pristanišča "Z". Lahko pa spremenite priključna vrata v nastavitvah enote v skladu z zahtevami vaše zasnove ( riž. 4 poz. 1).

riž. 4

Parameter "krmiljenje" (riž. 4 poz. 2) lahko zavzame vrednosti od -100 do 100. Negativne vrednosti parametra povzročijo, da robot zavije levo, vrednost 0 povzroči, da se robot premakne naravnost, pozitivne vrednosti pa povzročijo, da robot zavije desno. Puščica nad numeričnim parametrom spreminja svojo orientacijo glede na vrednost in s tem označuje smer gibanja robota ( riž. 5).

riž. 5

Programski blok "Neodvisno krmiljenje motorja" izgleda kot programski blok "krmiljenje". Upravlja tudi dva velika motorja, a namesto "krmiljenje" postane mogoče neodvisno nadzorovati moč vsakega motorja. Z enako vrednostjo parametra "Moč" pri levem in desnem motorju se bo robot premikal v ravni črti. Če enemu motorju dodelite negativno vrednost moči (na primer -50), drugemu pa pozitivno vrednost (na primer 50), se bo robot obrnil na mestu ( riž. 6).

riž. 6

Načini delovanja teh enot so torej podobni tistim pri enojni krmilni enoti motorja dodatni opis ne zahtevaj...

2.3. Premočrtno gibanje, obrati, obračanje in ustavljanje

Torej, zdaj lahko napišemo program za robota, da se premika po kateri koli poti.

Naloga 1: Vozite naravnost za 4 vrtljaje motorja. Obrni se. Vozi 720 stopinj.

rešitev ( riž. 7):

  1. S pomočjo programskega bloka "Krmiljenje" peljite naprej 4 zavoje.
  2. S programskim blokom "Neodvisni nadzor motorja" se obrnite na mestu (vrednost stopinje bo treba izbrati eksperimentalno).
  3. S pomočjo programskega bloka "Krmiljenje" zapeljite naprej za 720 stopinj.

Opomba: Zakaj sem moral izbrati vrednost stopnje pri struženju? blok 2?. Ni 360 stopinj - želena vrednost? Ne, če nastavimo vrednost parametra "Stopnje" enaka 360 , potem bomo s tem prisilili gredi levega in desnega motorja našega robota, da se zavrtita za zahtevano količino. Kot, pod katerim se robot obrne okoli svoje osi, je odvisen od velikosti (premera) koles in razdalje med njimi. Vklopljeno riž. 7 vrednost parametra "Stopnje" enako 385 . Ta vrednost omogoča sestavljanje robota v skladu z navodili majhen robot 45544 obrniti okoli svoje osi. Če imate drugega robota, boste morali izbrati drugo vrednost. Ali je to vrednost mogoče najti matematično? Možno je, a o tem bomo govorili kasneje.


riž. 7

Naloga 2: Na ravno površino postavite oviro (pločevinko, kocko, majhno škatlo) in označite začetno točko za vašega robota. V projektu ustvarite nov program: lekcija-2-2, ki omogoča robotu, da zapelje okoli ovire in se vrne na začetno točko.

Koliko programskih blokov ste uporabili? Delite svoj uspeh v komentarjih k lekciji ...

2.4. Indikator stanja zaslona, ​​zvoka, modula

Programski blok "Zaslon" omogoča prikaz besedila oz grafične informacije na LCD zaslonu EV3 Brick. Kaj bi to lahko pomenilo? praktično uporabo? Prvič, na stopnji programiranja in odpravljanja napak v programu lahko prikažete trenutne odčitke senzorjev, medtem ko robot deluje. Drugič, lahko prikažete ime vmesnih stopenj izvajanja programa. No, tretjič, s pomočjo grafičnih slik lahko "oživite" robotov zaslon, na primer z animacijo.

riž. 8

Programski blok "Zaslon" ima štiri načine delovanja: način "Besedilo" omogoča prikaz besedilnega niza na zaslonu, način "Oblike" omogoča prikaz ene od štirih geometrijskih oblik na zaslonu (ravna črta, krog, pravokotnik, točka), način "Slika" lahko prikaže eno sliko na zaslonu. Izberete lahko sliko iz bogate zbirke slik ali narišete svojo s pomočjo urejevalnika slik. Način "Ponastavi okno z nastavitvami" Ponastavi zaslon EV3 Brick na standardni informacijski zaslon, prikazan med izvajanjem programa.

riž. 9

Poglejmo parametre programskega bloka "Zaslon" v načinu "Besedilo" (Sl. 9 točka 1). V posebno polje se vnese niz, ki naj bi se prikazal na zaslonu (Sl. 9 točka 2). Na žalost lahko v polje za vnos besedila vnesete samo latinične črke, številke in ločila. Če način "Počisti zaslon" nastavite na vrednost "Prav", bo zaslon počiščen pred prikazom informacij. Zato, če morate združiti trenutni izhod z informacijami, ki so že na zaslonu, nastavite ta način na "laž". Načini "X" in "Y" določite točko na zaslonu, od katere se začne izpis informacij. Zaslon EV3 Brick je širok 178 slikovnih pik (pik) in visok 128 slikovnih pik. Način "X" lahko sprejme vrednosti od 0 do 177, način "Y" lahko sprejme vrednosti od 0 do 127. Zgornja leva točka ima koordinate (0, 0), spodnja desna (177, 127)

riž. 10

Med nastavljanjem programskega bloka "Zaslon" lahko vklopite način predogled (Sl. 9 točka 3) in vizualno ocenite rezultat nastavitev izhoda informacij.

V načinu "Oblike" (slika 11, točka 1) nastavitve programskega bloka se razlikujejo glede na vrsto figure. Torej, ko prikažete krog, boste morali določiti koordinate "X" in "Y" središče kroga, kot tudi vrednost "Radius". Parameter "Izpolni" (slika 11, točka 2) je odgovoren za to, da se bo prikazal obris figure ali pa bo notranje območje figure zapolnjeno z barvo, določeno v parametru "Barva" (slika 11, točka 3).

riž. enajst

Če želite prikazati ravno črto, morate določiti koordinate dveh skrajnih točk, med katerimi se nahaja ravna črta.

riž. 12

Če želite prikazati pravokotnik, morate določiti koordinate "X" in "Y" zgornji levi kot pravokotnika, kot tudi njegov "Premer" in "Višina".

riž. 13

Prikaz točke je najlažji način! Samo navedite njegove koordinate "X" in "Y".

Način "Slika", verjetno najbolj zanimiv in najpogosteje uporabljen način. Omogoča prikaz slik na zaslonu. Programsko okolje vsebuje ogromno knjižnico slik, razvrščenih po kategorijah. Poleg obstoječih slik lahko vedno ustvarite svojo risbo in jo tako, da jo vstavite v projekt, prikažete na ekranu. ("Glavni meni programskega okolja" - "Orodja" - "Urejevalnik slik"). Pri ustvarjanju svoje slike lahko prikažete tudi znake ruske abecede.

riž. 14

Kot lahko vidite, programsko okolje pripisuje velik pomen prikazu informacij na zaslonu glavne kocke EV3. Oglejmo si naslednji pomemben programski blok "zvok". S tem blokom lahko na vgrajeni zvočnik bloka EV3 oddajamo zvočne datoteke, tone poljubnega trajanja in frekvence ter glasbene note. Oglejmo si nastavitve programskega bloka v načinu "Predvajaj ton" (slika 15). V tem načinu morate nastaviti "Frekvenca" tone (Sl. 15 točka 1), "Trajanje" zvok v nekaj sekundah (Sl. 15 točka 2), kot tudi glasnost zvoka (Sl. 15 točka 3).

riž. 15

V načinu "Predvajaj noto" namesto frekvence tona morate izbrati noto na virtualna tipkovnica ter nastavite tudi trajanje in glasnost zvoka (slika 16).

riž. 16

V načinu "Predvajaj datoteko" lahko izberete eno od zvočnih datotek iz knjižnice (Sl. 17 točka 1) ali tako, da povežete mikrofon z računalnikom z urejevalnikom zvoka ("Glavni meni programskega okolja" - "Orodja" - "Urejevalnik zvoka") posnemite lastno zvočno datoteko in jo vključite v projekt.

riž. 17

Oglejmo si parameter ločeno "Vrsta predvajanja" (slika 17, točka 2), skupno vsem načinom programskega bloka "zvok". če ta parameter nastavite na vrednost "Počakaj na dokončanje", bo nadzor prenesen na naslednji programski blok šele, ko bo zvok ali zvočna datoteka v celoti predvajana. Če nastavite eno od naslednjih dveh vrednosti, se bo zvok začel predvajati in nadzor v programu se bo premaknil na naslednji programski blok, samo zvok ali zvočna datoteka bo predvajana enkrat ali pa se bo ponavljala, dokler je ne ustavi drug programski blok "zvok".

Seznaniti se moramo le z zadnjim programskim blokom zelene palete - blokom. Okoli gumbov za upravljanje modula EV3 je nameščen barvni indikator, ki lahko sveti v eni od treh barv: zelena, oranžna oz rdeča. Ustrezen način je odgovoren za vklop in izklop barvne indikacije (Sl. 18 točka 1). Parameter "barva" nastavi barvno zasnovo indikacije (Sl. 18 točka 2). Parameter "impulz" odgovoren za vklop/izklop načina utripanja barvne indikacije (Sl. 18 točka 3). Kako lahko uporabite barvno indikacijo? Na primer, med različnimi načini delovanja robota lahko uporabljate različne barvne signale. To nam bo pomagalo razumeti, ali se program izvaja, kot smo načrtovali.

riž. 18

Uporabimo to znanje v praksi in malo pobarvajmo naš program iz 1. naloge.

Naloga 3:

  1. Predvajaj signal "Začni"
  2. Omogoči zeleno neutripajočo barvno indikacijo
  3. "Naprej"
  4. Vozite naravnost za 4 vrtljaje motorja.
  5. Omogoči oranžno utripajočo barvno indikacijo
  6. Obrni se
  7. Omogoči zeleno utripajočo barvno indikacijo
  8. Prikaz slike na zaslonu "Nazaj"
  9. Vozi 720 stopinj
  10. Predvajaj signal "Stop"

Poskusite sami rešiti nalogo 3, ne da bi pogledali rešitev! Vso srečo!

Programski bloki plošče »Dejanja« so bili obravnavani v prejšnjih delih pregleda, v tem članku pa bom govoril o blokih na zavihku »Upravljanje operaterja«.

Te bloke lahko predstavljamo kot "regulatorje" programa: ukazali bodo ustaviti in nadaljevati gibanje programa, se premakniti na naslednjo vejo ali iti v krogu.

V primerjavi z NXT sta bila dodana 2 nova bloka:

  • Začetek - v NXT je bil začetek programa enoten in nastavljen takoj ob odprtju programa.
  • Prekinitev cikla - v NXT preprosto ni bilo takega bloka. Če je bilo potrebno implementirati podobno funkcionalnost, smo morali uporabiti spremenljivke.
Splošni seznam upravljalnih enot je videti takole:
  • Začetek
  • Pričakovanje
  • Stikalo
  • Prekinitev cikla


Blokiraj "Začni"

Morda ste opazili, da je prvi blok vseh programov EV3 blok z zeleno puščico. Ta blok je "Start". Noben program ne more brez njega - tukaj se začne izvajanje ukaza. Če ne postavite "Start" pred zaporedje blokov, se tak program ne bo izvedel.
Na primer, v skladu s spodaj predstavljenim programom se bo robot vrtel okoli osi (izvedeno bo zgornje zaporedje dejanj), vendar ne bo predvajal zvočnih datotek in osvetlil gumbov (spodnje zaporedje brez bloka »Start« je ni aktivno):

EV3 podpira večopravilnost, tj. program lahko vsebuje več kot eno zaporedje ukazov. Poleg tega imajo lahko ta zaporedja svoj blok »Start« ali izhajajo iz enega »Start«:


Vsa taka zaporedja bodo izvedena hkrati.

Upoštevajte, da zelena puščica na bloku ni okrasni element. Če je enota povezana z računalnikom (ne glede na to, kako: prek usb, wi-fi ali bluetooth), potem s klikom na puščico zaženete to zaporedje v izvedbo.

Blokiraj "Čakanje"

Ta blok je tudi eden najbolj uporabljanih. Program na njem "zamrzne" - nadaljnji bloki programa se ne izvajajo - in čaka določen čas ali določeno vrednost senzorja.
"Čakanje" ima veliko število načinov, ki so lahko strašljivi:


Toda v resnici je vse precej preprosto. Vse načine lahko razdelimo v kategorije:
  • po času - blok čaka določeno število sekund, preden začne izvajati naslednje bloke
  • glede na senzor:
    • primerjava - blok pričakuje določen odčitek senzorja, določen v bloku
    • sprememba - blok čaka, da se odčitek senzorja spremeni za določeno količino v primerjavi z začetno vrednostjo. Poleg tega lahko izberete ne samo velikost vrednosti, ampak tudi njeno smer - zmanjševanje vrednosti, povečanje ali v katero koli smer.
Oglejmo si primere programov z vsakim blokovnim načinom.
V prvem programu se spremeni osvetlitev ozadja gumbov. Osvetlitev ozadja bo zelena za eno sekundo, nato rdeča za 1 sekundo in nato preklopi v standardni način - utripa zeleno:

Drugi program je začetek klasične rešitve v tekmovanju Kegelring: robot se vrti okoli svoje osi, dokler pred seboj ne zagleda pločevinke:

Naslednji program vklopi motor A in ga po 5 vrtljajih izklopi:

Delovanje te enote z bluetoothom se ne razlikuje od dela s katerim koli senzorjem. Naslednji program na primer počaka na sporočilo "HI", nato osvetli ozadje zeleno in predvaja zvočno datoteko:

Blokiraj "Cikel"

To je poseben blok - vanj lahko vstavite druge bloke. Bloki v notranjosti se bodo ponovili. Načini bloka zanke določajo metodo, ki določa, kdaj naj se zanka konča. Večino teh načinov že poznamo iz prejšnjega čakalnega bloka, vendar je bilo dodanih več novih:

  • Neomejeno - ta zanka se bo izvajala, dokler se program ne prisili prekiniti
  • Štetje - zanka se bo ponovila določeno število krat
  • Logična vrednost - zanka se bo ponavljala, dokler podana vrednost ni resnična
  • Čas - cikel se bo ponavljal določen čas
  • Branje senzorja:
    • primerjava - cikel se bo ponavljal, dokler senzor ne sprejme podane vrednosti
    • sprememba - cikel se bo ponavljal, dokler se odčitek senzorja ne spremeni za določeno količino v primerjavi z začetno vrednostjo.
Nad blokom je zapisano ime zanke - 01, 02, .... To ime lahko uporabimo v bloku prekinitve zanke, ki bo opisan kasneje.
Poglejmo si primere. Po tem programu bo robot vozil naravnost in obračal, dokler se program ne ustavi (uporablja se neskončna zanka):

Naslednji program uporablja senzor za dotik. Dokler ga ne pritisnete, robot vrti srednji motor, najprej v smeri urinega kazalca, nato v nasprotni smeri urinega kazalca. Po pritisku na senzor se motor ustavi:

Številčna zanka vam omogoča, da noto zaigrate 10-krat:

Z načinom logičnih vrednosti boste morali uporabiti še neraziskane bloke anketiranja senzorjev. Ta program prisili robota, da se premakne naprej, dokler ne zagleda predmeta na razdalji manj kot 20 cm (prvi blok cikla) ​​ali zadene ovire s senzorjem za dotik (drugi blok cikla). Rezultat logično delovanje"ALI" daje tretji blok zanke:


Blok "Switch".

V NXT je podoben blok; omogoča, odvisno od vrednosti spremenljivke ali odčitka senzorja, izvedbo različne sekvence dejanja.
Po zaključku tega zaporedja dejanj program izvede bloke, ki sledijo "Switch".
Način tega bloka določa, kateri senzor ali spremenljivka bo uporabljena. Vsi enaki načini se uporabljajo kot blok "Cikel": uporabite lahko poljuben senzor (barvni, giroskopski, infrardeči, ultrazvočni, rotacijski motor in drugi), numerični ali vrednost besedila, bluetooth sporočilo.
Na primer, po tem programu se bo robot najprej vrtel okoli svoje osi za 5 vrtljajev motorja, nato pa se bo glede na odčitke senzorja žiroskopa premaknil naprej ali nazaj. Če je kot, ki ga zazna žiroskop, manjši od 90 stopinj, se bo robot premaknil naprej. Če je kot manjši od 90 stopinj, bo robot šel nazaj.

Naslednji program je izvedba preprostega relejnega krmilnika za vožnjo po črni črti:

V obeh prejšnjih primerih je blok "Switch" vseboval samo 2 možnosti za razvoj dogodkov. Toda v resnici ima lahko ta blok več možnosti. Na primer, če robot določi barvo predmeta, lahko izbira med veliko večjim številom možnosti:


V tem programu robot zazna rdečo, modro, zeleno in nobene barve. Poimenoval bo barve in vključil tudi osvetlitev gumbov za rdečo in zeleno barvo ter se premikal naprej v modri barvi. Preostale barve, ki jih lahko senzor zazna - črno, rumeno, belo, rjavo - lahko dodate z majhnim gumbom "+", ki se nahaja na zgornji možnosti (obkrožen z rdečo).
Z velikim številom možnosti (kot v zgornjem primeru) postane blok »Switch« precej okoren in nepriročen za delo. V tem primeru lahko blok preklopite v "ravno stanje":

Gumb za preklapljanje med ravnim/podrobnim načinom je obkrožen z rdečo.

Blokiraj "Prekinitev cikla"

Ta blok je nov, podobnega bloka v NXT ni bilo. Omogoča vam izhod iz zanke - preostali bloki zanke se ne bodo izvedli in program se bo premaknil na bloke po zanki. "Glava" bloka določa ime cikla, ki ga je treba dokončati.
Na primer, cikel v programu je treba ponoviti 5-krat, če pa razdalja do predmeta postane večja od 50 centimetrov, se bo cikel predčasno končal in robot bo predvajal zvočni ton:

Posebnost tega bloka je, da ni nujno, da se nahaja znotraj prekinljive zanke. Naslednji program na primer natisne, kolikokrat se bo zanka ponovila, dokler je svetlost odbite svetlobe večja od 50. Toda če med izvajanjem programa pritisnete senzor za dotik, se bo zanka ustavila in program se bo ustavil:

Zdravo. V svojih člankih vas želim seznaniti z osnovami programiranja mikroračunalnika LEGO NXT Mindstorms 2.0. Za razvoj aplikacij bom uporabil Microsoftove platforme Robotics Developer Studio 4 (MRDS 4) in National Instruments LabVIEW (NI LabVIEW). Obravnavane in izvajane bodo naloge avtomatskega in avtomatiziranega vodenja mobilnih robotov. Prehajali bomo od enostavnega k zapletenemu.

Pričakujem nekaj vprašanj in komentarjev bralcev.

Zakaj NXT Mindstorms 2.0? Ker za svoje projekte ta komplet Se mi je zdel najprimernejši, saj Mikroračunalnik NXT je popolnoma kompatibilen s platformama MRDS 4 in NI LabVIEW, ta komplet pa je tudi zelo prilagodljiv glede sestavljanja različnih konfiguracij robota – za sestavljanje robota se porabi minimalno časa.

Zakaj platformi MRDS 4 in NI LabVIEW? Tako se je zgodovinsko zgodilo. Med študijem v višjih letnikih na univerzi je bila naloga razvijati se tečaji uporabo teh platform. Poleg tega so platforme precej enostavne za učenje in funkcionalne; z njihovo pomočjo lahko neposredno napišete program za nadzor robota, razvijete uporabniški vmesnik in izvedete testiranje v virtualnem okolju (v primeru MRDS 4).

Kdo sploh potrebuje te tvoje lekcije, robotskih projektov je na internetu že ogromno! Izobraževalnih člankov, ki bi uporabljali to kombinacijo (NXT+MRDS 4/NI LabVIEW), praktično ni, večinoma se uporablja nativno programsko okolje, v njem pa je vse povsem trivialno. Vsem, ki jih zanima robotika, programiranje in imate NXT set (in teh je kar nekaj), vseh starosti.

Grafični programski jeziki so zlo in tisti, ki programirajo v njih, so krivoverci! Grafični programski jeziki, ki sta MRDS 4 in NI LabVIEW, imajo nedvomno svoje pomanjkljivosti, na primer osredotočenost na ozke naloge, vendar kljub temu po funkcionalnosti niso veliko slabši od besedilnih jezikov, še posebej, ker je bil NI LabVIEW prvotno razvit kot lahek jezik pri obvladovanju za reševanje znanstvenih in inženirskih problemov, za to vsebuje veliko potrebnih knjižnic in orodij. Zato so ti grafični jeziki najprimernejši za reševanje naših problemov. In za to nas ni treba zažgati na grmadi.

Vse to izgleda otročje in sploh neresno! Kadar je naloga implementacija algoritmov, poučevanje osnov in principov programiranja, robotike, sistemov v realnem času brez poglabljanja v vezje in protokole, potem je to zelo primerno orodje, čeprav ni poceni (glede na nabor NXT). Čeprav za iste namene, kompleti za Temelji na Arduinu, vendar ta krmilnik skoraj ni združljiv z MRDS 4 in NI LabVIEW, ti platformi pa imata svoje čare.

Tehnologije, ki se uporabljajo so produkt propadajočih kapitalističnih držav, avtor pa sovražnik ljudstva in sostorilec zahodnih zarotnikov! Na žalost je večina tehnologij na področju elektronike in računalniška tehnologija Prihajam z Zahoda, zelo bom vesel, če me bodo opozorili na podobne tehnologije izvirne domače proizvodnje. Medtem bomo uporabili, kar imamo. In tega ni treba prijaviti posebnim službam in se mi zameriti.

Kratek pregled platform MRDS 4 in NI LabVIEW.

Naj pojasnim nekaj terminologije. Pod platformo v tem primeru mislimo na nabor različnih orodij, na primer jezik VPL v MRDS, pa tudi okolje za izvajanje aplikacije, tj. Ni neposrednega prevajanja aplikacij v izvedljive (*.exe) datoteke.

Leta 2006 je Microsoft napovedal ustvarjanje platforme Microsoftov studio za razvijalce robotike(več podrobnosti v članku Wikipedije). MRDS je okolje za razvoj aplikacij za robotiko in simulacijo, ki temelji na sistemu Windows. Trenutno relevantno je Microsoftova različica Robotics Developer Studio 4. Funkcije vključujejo: grafični programski jezik VPL, vmesnike na osnovi spleta in Windows, simulacijsko okolje VSE, poenostavljen dostop do senzorjev, mikrokrmilnikov in robotskih aktuatorjev, podporo za programski jezik C#, knjižnice za večnitno programiranje in distribuirano izvajanje CCR aplikacij in DSS, podpora številnim robotskim platformam (Eddie, Boe - Bot, CoroBot, iRobot, LEGO NXT itd.).

LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) je razvojno okolje in platforma za izvajanje programov, ustvarjenih v grafičnem programskem jeziku “G” podjetja National Instruments (za več podrobnosti si oglejte članek na Wikipediji). LabVIEW se uporablja v sistemih za zajemanje in obdelavo podatkov ter za upravljanje tehničnih objektov in tehnoloških procesov. Idejno je LabVIEW zelo blizu sistemom SCADA, vendar je za razliko od njih bolj usmerjen v reševanje problemov ne toliko na področju avtomatiziranih sistemov za vodenje procesov (avtomatizirani nadzorni sistemi). tehnološki proces), koliko v regiji ASNI ( avtomatizirani sistemi znanstvena raziskava). Grafični programski jezik "G", ki se uporablja v LabVIEW, temelji na arhitekturi pretoka podatkov. Zaporedje izvajanja operaterjev v takih jezikih ni določeno z vrstnim redom, v katerem se pojavljajo (kot v imperativnih programskih jezikih), temveč s prisotnostjo podatkov na vhodih teh operaterjev. Operatorji, ki niso povezani s podatki, se izvajajo vzporedno v naključnem vrstnem redu. Program LabVIEW se imenuje in je virtualni instrument (angleško: Virtual Instrument) in je sestavljen iz dveh delov:

  • blokovni diagram, ki opisuje logiko virtualnega instrumenta;
  • sprednja plošča, ki opisuje uporabniški vmesnik virtualnega instrumenta.

Hiter pogled na komplet LEGO NXT Mindstorms 2.0.

Komplet NXT je sestavljen iz krmilne enote, štirih senzorjev in treh servomotorjev. Nadzorni blok vsebuje:
  • 32-bitni AVR mikrokrmilnik 7 s pomnilnikom FLASH 256 KB in pomnilnikom RAM 64 KB;
  • 8-bitni AVR mikrokrmilnik s 4 KB FLASH pomnilnika in 512 bajtov RAM pomnilnika;
  • radijski modul Bluetooth V 2.0;
  • vrata USB;
  • 3 konektorji za priklop servomotorjev;
  • 4 konektorji za priključitev senzorjev;
  • LCD zaslon z ločljivostjo 99x63 slikovnih pik;
  • zvočnik;
  • priključek za 6 AA baterij.
Senzorji (različni sklopi senzorjev na voljo v različnih konfiguracijah):
  • ultrazvočni senzor;
  • dva taktilna senzorja (senzorji na dotik);
  • senzor za zaznavanje barv.


Slika 1 - Mikroračunalnik NXT s povezanimi senzorji in aktuatorji

In seveda komplet vsebuje različne LEGO dele v obliki faktorja LEGO Technic, iz katerih bodo sestavljeni aktuatorji in podporna struktura.


Slika 2 – Deli v obliki LEGO Technic

Pišemo prvo prijavo.

Napišemo prvo prijavo. Naj klasično, to aplikacijo prikaže besedilo "Hello, World!". Implementacija bo potekala izmenično v MRDS 4 in NI LabVIEW, pri tem pa bomo upoštevali specifike posamezne platforme.

Najprej namestimo platformi MRDS 4 in NI LabVIEW, v primeru MRDS 4 je treba namestitev izvesti v mapo, katere pot ni sestavljena iz cirilice (ruskih črk), račun tudi uporabniško ime mora biti sestavljeno samo iz latiničnih črk.

1. Platforma MRDS 4.
Zaženite okolje VPL (meni Start - Vsi programi - Microsoft Robotics Developer Studio 4 - Visual Programming Language). To okolje vam omogoča razvoj aplikacij v jeziku VPL in izvajanje testiranja v virtualnem okolju VSE. Program VPL je diagram, sestavljen iz med seboj povezanih blokov. V oknu, ki se odpre, je poleg standardne ukazne vrstice in menija še 5 glavnih oken:
  1. Osnovne dejavnosti – vsebuje osnovne bloke, ki izvajajo operatorje, kot so konstanta, spremenljivka, pogoj itd.;
  2. Storitve – vsebuje bloke, ki omogočajo dostop do funkcionalnosti platforme MRDS, na primer bloke za interakcijo s katero koli strojno komponento robota ali bloke za klic pogovornega okna;
  3. Projekt – združuje diagrame, vključene v projekt, kot tudi različne konfiguracijske datoteke;
  4. Lastnosti – vsebuje lastnosti izbranega bloka;
  5. Okno z diagrami – vsebuje neposredno diagram ( vir) aplikacije.

Slika 3 - Programsko okolje VPL

Izvedemo naslednje zaporedje dejanj:

2. Platforma NI LabVIEW.
Na tej platformi je vse implementirano skoraj enako. Zaženimo okolje LabVIEW. Pred nami se prikažeta dve okni, prvo je sprednja plošča, namenjena implementaciji uporabniškega vmesnika ( videz navidezna naprava), drugi je blokovni diagram za implementacijo programske logike.


Slika 8 - Okna okolja LabVIEW

Uporabili bomo okno Block Diagram. Izvedimo naslednje korake:

Povzetek

  • Naredili smo pregled programske platforme za razvoj mikroračunalniških aplikacij NXT.
  • Ogledali smo si osnovne principe razvoja aplikacij v platformah MRDS 4 in NI LabVIEW.
  • Seznanili smo se z vmesnikom okolja.
V naslednjih člankih se bomo neposredno ukvarjali s programiranjem NXT. Na spletu je veliko izobraževalnih gradiv za okolje LabVIEW, veliko manj pa za VPL. Toplo priporočam, da preučite referenčni priročnik obeh platform (potrebno je znanje angleščine), v teh priročnikih je veliko primerov, ki jih je mogoče implementirati, ne da bi imeli NXT, pa tudi naslednje knjige:
  • Programiranje mikroračunalnika NXT v LabVIEW - Lidiya Beliovskaya, Alexander Beliovsky,
  • Microsoftov studio za razvijalce robotike. Programiranje algoritmov za krmiljenje robotov - Vasily Gai.
V svojih člankih bom opisal samo svoje projekte, ker... Ne vidim smisla v prepisovanju informacij iz enega vira v drugega. Sprejel bom vsako konstruktivno kritiko in odgovoril na vsa vprašanja v zvezi s pregledanimi platformami. Hvala v naprej!

Vrhunec ustvarjanja Lega je bila izdaja programabilnih gradbenih kompletov LEGO Mindstorms Ev3. Igrača je namenjena otrokom starejšim od deset let.

Zdaj lahko mindstorms ev3 brez težav kupite v posebnih trgovinah ali na internetu. Z lahkoto jih programiramo za izvajanje določenih dejanj.

Postavitev programskega okolja

Preden začnete pisati ukaze za robota, morate namestiti programsko opremo.

Sistemske zahteve osebnega računalnika za delo z lego mindstorms ev3:

  • OS Windows XP, 7, 8 ali MacOs (10.6-10.8);
  • 2 GB RAM-a in 750 MB prostora na disku.

Pri nameščanju okolja prek USB-ja izberite različico učitelja ali učenca.

Po namestitvi izdelamo projekt, ki se prikaže kot mapa. V nadzorni plošči izberemo, kaj želimo ustvariti, programirati ali izvesti eksperiment. Priporočljivo je, da ustvarite poskus za preučevanje delovanja senzorjev.

Krmilni program robota je sestavljen iz blokov, zaporednih operacij, ki jih izvaja, vsak posamezen blok ima svoj način. Na primer, način krmilne enote motorja je zmožnost zaustavitve. Podrobno preučite vse simbole, ki so natisnjeni na zaslonu.

Na zaslonu je meni, ki vključuje zavihke:

  • ukrepanje;
  • upravljanje operaterja;
  • senzor;
  • podatkovne operacije;
  • moji bloki itd.

S tem menijem lahko programirate robota za izvajanje različnih dejanj. Na primer, na zavihku, ki je odgovoren za delovanje različnih mehanizmov, lahko nastavite način motorja za premikanje, ustavitev ali zagon. Tam lahko nastavite čas, količino in kot vrtenja.

V bloku "zvok" lahko programirate robota za predvajanje zvočne signale. Te signale je mogoče naložiti ali posneti z mikrofonom. Pomemben element programskega upravljanja je del menija, ki upravlja operaterje. V njem lahko nadzirate delovanje samega programa.

Tukaj lahko programu podate naslednje ukaze:

  • začeti pričakovati;
  • ponavljanje cikla;
  • preklapljanje med bloki;
  • zaključite cikel.

Lego mindstorms ev3 je večopravilna in omogoča več zaporedij ukazov. V program lahko programirate ne samo svoja dejanja, ampak tudi zaporedje njihovega izvajanja.

S kombiniranjem vseh možnih ukazov ustreznega menija lahko ustvarite zapletene trajektorije in vrste obnašanja konstruktorja.

LEGO Izobraževanje Mindstorms EV3: Programiranje Robohanda (Robohand H25):