Enciklopedija zaštite od požara

Vožnja u redu s volanom u ev3. Praćenje linije s dva svjetlosna senzora. Primjer algoritma

U ovoj lekciji nastavit ćemo istraživati ​​korištenje senzora boja. Materijal prikazan u nastavku vrlo je važan za daljnje proučavanje tečaja robotike. Nakon što naučimo kako koristiti sve Lego mindstorms EV3 senzore u rješavanju mnogih praktičnih problema, nadogradit ćemo znanje stečeno u ovoj lekciji.

6.1. Senzor boja - način rada intenziteta reflektirane svjetlosti

Dakle, počinjemo proučavati sljedeći način rada senzora boja, koji se zove "Svjetlina reflektirane svjetlosti". U ovom načinu rada senzor boje usmjerava snop crvene svjetlosti na obližnji objekt ili površinu i mjeri količinu reflektirane svjetlosti. Tamniji objekti će apsorbirati svjetlost, pa će senzor očitati nižu vrijednost od svjetlijih površina. Raspon vrijednosti senzora se mjeri od 0 (vrlo mračno) to 100 (vrlo svijetlo). Ovaj način rada senzora u boji koristi se u mnogim zadacima u robotici, na primjer, za organiziranje kretanja robota duž zadane rute duž crne linije nacrtane na bijelom premazu. Kada koristite ovaj način rada, preporuča se postaviti senzor na takav način da je udaljenost od njega do površine koja se proučava približno 1 cm (slika 1).

Riža. 1

Prijeđimo na praktični trening: Senzor boja već je instaliran na našem robotu i usmjeren je prema površini pločnika po kojoj će naš robot hodati. Udaljenost između senzora i poda je preporučena. Senzor boje je već spojen na port "2" EV3 Brick. Učitajmo okruženje za programiranje, povežimo robota s okruženjem i upotrijebimo polje s prugama u boji koje smo napravili za dovršavanje zadataka u odjeljku 5.4 lekcije #5 za mjerenje. Postavite robota tako da se senzor boje nalazi iznad bijele površine. "Hardverska stranica" programska okruženja prebacuju u mod "Prikaz priključaka" (Sl. 2 poz. 1). U ovom načinu rada možemo promatrati sve veze koje smo napravili. Na Riža. 2 prikazani povezani priključci "B" I "C" dva velika motora, i do luke "2" - senzor boja.

Riža. 2

Za odabir opcije za prikaz očitanja senzora kliknite na sliku senzora i odaberite željeni način rada (slika 3)

Riža. 3

Na Riža. 2 poz. 2 možemo vidjeti da je vrijednost očitanja senzora boje iznad bijele površine 84 . U vašem slučaju možete dobiti drugačiju vrijednost, jer ovisi o materijalu površine i rasvjeti unutar prostorije: dio svjetlosti, reflektiran od površine, udara u senzor i utječe na njegova očitanja. Instalirajući robota na takav način da se senzor boje nalazi iznad crne trake, popravljamo njegova očitanja (Sl. 4). Pokušajte sami izmjeriti vrijednosti reflektirane svjetlosti iznad preostalih traka boja. Koje ste vrijednosti dobili? Napišite svoj odgovor u komentarima na ovu lekciju.

Riža. 4

Idemo sada riješiti praktične probleme.

Zadatak broj 11: potrebno je napisati program za kretanje robota koji se zaustavlja kada dođe do crne linije.

Riješenje:

Eksperiment nam je pokazao da pri prelasku crne linije vrijednost senzora boje u modu "Svjetlina reflektirane svjetlosti" jednaki 6 . Dakle, kako bi ispunili Zadaci #11 naš bi se robot trebao kretati pravocrtno sve dok željena vrijednost senzora boje ne postane manja 7 . Iskoristimo programski blok koji nam je već poznat "Očekivanje" Narančasta paleta. Izaberimo način rada programskog bloka koji zahtijeva uvjet zadatka "Čekanje" (slika 5).

Riža. 5

Također morate konfigurirati parametre programskog bloka "Očekivanje". Parametar "Vrsta usporedbe" (Sl. 6 poz. 1) može uzeti sljedeće vrijednosti: "Jednako"=0, "Nejednak"=1, "Više"=2, "Više ili jednako"=3, "Manje"=4, "Manje ili jednako"=5. U našem slučaju, postavili smo "Vrsta usporedbe" u smisao "Manje". Parametar "Prag" postaviti jednako 7 (Sl.6 poz. 2).

Riža. 6

Čim se vrijednost senzora boje postavi na manje od 7 , što se događa kada je senzor boje iznad crne linije, morat ćemo isključiti motore, zaustavljajući robota. Problem riješen (Sl. 7).

Riža. 7

Kako bismo nastavili proučavati, morat ćemo napraviti novo polje, koje je crni krug promjera oko 1 metar, apliciran na bijelo polje. Debljina kružne linije je 2 - 2,5 cm Za podlogu polja možete uzeti jedan list papira dimenzija A0 (841x1189 mm), zalijepiti dva lista papira dimenzija A1 (594x841 mm). Na ovom polju označite liniju kruga i obojite je crnom tintom. Također možete preuzeti izgled polja, izrađen u formatu Adobe Illustrator, a zatim naručiti njegov ispis na banner tkanini u tiskari. Tlocrtna veličina je 1250x1250 mm. (Izgled preuzet u nastavku možete pogledati otvaranjem u programu Adobe Acrobat Reader)

Ovo polje će nam koristiti za rješavanje nekoliko klasičnih zadataka kolegija robotike.

Zadatak broj 12: potrebno je napisati program za kretanje robota unutar kruga omeđenog crnim krugom prema sljedećem pravilu:

  • robot se kreće naprijed u ravnoj liniji;
  • dostizanjem crne linije, robot se zaustavlja;
  • robot se pomiče dva okretaja motora unatrag;
  • robot se okreće udesno za 90 stupnjeva;
  • kretanje robota se ponavlja.

Znanje stečeno u prethodnim lekcijama pomoći će vam da sami napravite program, odlučujući zadatak №12.

Rješenje zadatka br.12

  1. Počnite ravno naprijed (Slika 8 poz. 1);
  2. Pričekajte da senzor boje prijeđe crnu liniju (Slika 8 poz. 2);
  3. Pomaknite se 2 kruga unazad (Sl. 8 poz. 3);
  4. Skrenite desno za 90 stupnjeva (Sl. 8 poz. 4); vrijednost kuta rotacije izračunava se za robota sastavljenog prema uputama small-robot-45544 (Sl. 8 poz. 5);
  5. Ponovite naredbe 1 - 4 u beskonačnoj petlji (Sl. 8 poz. 6).

Riža. 8

Na rad senzora boje u načinu rada "Svjetlina reflektirane svjetlosti" vratit ćemo se mnogo puta kada budemo razmatrali algoritme za kretanje po crnoj liniji. U međuvremenu, analizirajmo treći način rada senzora boja.

6.2. Senzor boje - način rada intenziteta ambijentalnog svjetla

Način rada senzora boje "Svjetlina ambijentalnog svjetla" vrlo sličan načinu rada "Svjetlina reflektirane svjetlosti", samo u ovom slučaju senzor ne emitira svjetlost, već mjeri prirodno svjetlo okoliš. Vizualno, ovaj način rada senzora može se odrediti slabo svijetlećom plavom LED diodom. Očitanja senzora variraju od 0 (nedostatak svjetla) to 100 (najjače svjetlo). Prilikom rješavanja praktičnih problema koji zahtijevaju mjerenje ambijentalnog osvjetljenja, preporuča se postaviti senzor tako da ostane što je moguće više otvoren i da ga ne ometaju drugi dijelovi i strukture.

Pričvrstimo senzor boje na našeg robota na isti način na koji smo pričvrstili senzor za dodir u lekciji #4 (Sl. 9). Spojite senzor boje kabelom na priključak "2" EV3 Brick. Prijeđimo na rješavanje praktičnih problema.

Riža. 9

Zadatak #13: potrebno je napisati program koji mijenja brzinu našeg robota ovisno o intenzitetu vanjske rasvjete.

Da bismo riješili ovaj problem, moramo naučiti kako dobiti trenutnu vrijednost senzora. I Žuta paleta programskih blokova, koja se zove "Senzori".

6.3. Žuta paleta - "Senzori"

Žuta paleta okruženja za programiranje Lego mindstorms EV3 sadrži blokove za programiranje koji vam omogućuju da dobijete trenutna očitanja senzora za daljnje procesiranje u programu. Za razliku od npr. programskog bloka "Očekivanje" Programski blokovi narančaste palete, žute palete odmah prenose kontrolu na sljedeće programske blokove.

Broj programskih blokova u Žutoj paleti razlikuje se u kućnoj i obrazovnoj verziji programskog okruženja. U kućnoj verziji programskog okruženja ne postoje programski blokovi za senzore koji nisu uključeni u kućnu verziju konstruktora. Ali, ako je potrebno, mogu se povezati neovisno.

Edukativna verzija programskog okruženja sadrži programske blokove za sve senzore koji se mogu koristiti s Lego mindstorms EV3 konstruktorom.

Vratimo se odluci. Zadaci #13 i pogledajte kako možete primiti i obraditi očitanja senzora boja. Kao što već znamo: raspon vrijednosti senzora boja u načinu rada "Svjetlina ambijentalnog svjetla" je unutar raspona od 0 prije 100 . Parametar koji regulira snagu motora ima isti raspon. Pokušajmo podesiti snagu motora u programskom bloku očitavanjem senzora boje "Upravljanja".

Riješenje:


Riža. 10

Učitajmo dobiveni program u robota i pokrenimo ga na izvršenje. Je li se robot kretao sporo? Uključite LED svjetiljku i pokušajte je dovesti do uključenog senzora boje različita udaljenost. Što se događa s robotom? Zatvorimo senzor boje dlanom - što se dogodilo u ovom slučaju? Napišite odgovore na ova pitanja u komentarima lekcije.

Zadatak - bonus

Učitajte u robota i pokrenite zadatak prikazan na donjoj slici. Ponovite eksperimente s LED svjetiljkom. Podijelite svoje dojmove u komentarima na lekciju.

Ovako osoba vidi liniju:

Ovako to vidi robot:


Koristit ćemo ovu značajku pri dizajniranju i programiranju robota za natjecateljsku kategoriju "Putanja".

Postoji mnogo načina kako naučiti robota da vidi liniju i kreće se po njoj. Postoje složeni programi i vrlo jednostavni.

Želim govoriti o načinu programiranja koji će čak i djeca u 2.-3. U ovoj dobi puno im je lakše sastavljati konstrukcije prema uputama, a programiranje robota za njih je težak zadatak. Ali ova će metoda omogućiti djetetu da programira robota na bilo kojoj ruti staze za 15-30 minuta (uzimajući u obzir faznu provjeru i prilagodbu nekih značajki putanje).

Ova metoda testirana je na općinskim i regionalnim natjecanjima u robotici u regiji Surgut i Khanty-Mansi Autonomnom Okrug-Yugra i donijela je našoj školi prva mjesta. Tamo sam se uvjerio da je ova tema vrlo relevantna za mnoge timove.

Pa, počnimo.

Kod priprema za ovakvu vrstu natjecanja programiranje je samo dio rješenja problema. Morate početi s dizajniranjem robota za određenu stazu. U sljedećem članku ću vam pokazati kako to učiniti. Pa, budući da je kretanje po liniji vrlo uobičajeno, počet ću s programiranjem.

Razmotrite verziju robota s dva svjetlosna senzora, jer je razumljivija učenicima osnovnih škola.

Svjetlosni senzori spojeni su na priključke 2 i 3. Motori na priključke B i C.
Senzori su smješteni na rubovima linije (pokušajte eksperimentirati s postavljanjem senzora na različitim udaljenostima jedan od drugog i na različitim visinama).
Važna točka. Za bolji rad takva shema, poželjno je odabrati par senzora prema parametrima. Inače će biti potrebno uvesti blok za korekciju vrijednosti senzora.
Ugradnja senzora na šasiju prema klasičnoj shemi (trokut), približno kao na slici.

Program će se sastojati od malog broja blokova:


1. Dva bloka svjetlosnog senzora;
2. Četiri bloka "Matematika";
3. Dva bloka motora.

Robotom upravljaju dva motora. Snaga svake je 100 jedinica. Za našu shemu uzet ćemo prosječnu vrijednost snage motora jednaku 50. To jest, prosječna brzina pri kretanju u ravnoj liniji bit će jednaka 50 jedinica. Prilikom odstupanja od pravocrtno gibanje snaga motora će se povećavati ili smanjivati ​​proporcionalno, ovisno o kutu otklona.

Sada shvatimo kako povezati sve blokove, postaviti program i što će se dogoditi u njemu.
Izložimo dva svjetlosna senzora i dodijelimo im priključke 2 i 3.
Uzimamo blok matematike i odabiremo "Oduzimanje".
Spojimo senzore svjetla iz izlaza "Intenzitet" s gumama na matematički blok na ulaze "A" i "B".
Ako su senzori robota postavljeni simetrično od središta linije staze, tada će vrijednosti oba senzora biti jednake. Nakon oduzimanja dobivamo vrijednost - 0.
Sljedeći blok matematike koristit će se kao koeficijent iu njemu morate postaviti "Množenje".
Da biste izračunali koeficijent, trebate izmjeriti razinu "bijelog" i "crnog" pomoću jedinice NXT.
Pretpostavimo: bijelo -70, crno -50.
Zatim izračunavamo: 70-50=20 (razlika između bijelog i crnog), 50/20=2,5 (postavljamo prosječnu vrijednost snage pri kretanju ravnom linijom u blokovima matematike na 50. Ova vrijednost plus dodana snaga pri podešavanju pokreta treba biti jednaka 100)
Pokušajte postaviti vrijednost na 2,5 na ulazu "A", a zatim je pokupite točnije.
Povežite izlaz "Rezultat" prethodnog matematičkog bloka "Oduzimanje" s ulazom "B" matematičkog bloka "Množenje".
Slijedi par - blok matematike (zbrajanje) i motor B.
Postavljanje matematičkog bloka:
Ulaz "A" je postavljen na 50 (polovica snage motora).
Izlaz bloka "Rezultat" povezan je sabirnicom na ulaz "Snaga" motora B.
Nakon pare je matematički blok (Oduzimanje) i motor C.
Postavljanje matematičkog bloka:
Ulaz "A" postavljen je na 50.
Ulaz "B" je sabirnicom povezan s izlazom "Rezultat" bloka matematike "Množenje".
Izlaz bloka "Rezultat" je sabirnicom povezan sa ulazom "Snaga" motora C.

Kao rezultat svih ovih radnji dobit ćete sljedeći program:

Budući da će sve ovo raditi u ciklusu, dodajemo "Ciklus", odabiremo i sve to prenosimo u "Ciklus".

Sada pokušajmo shvatiti kako će program raditi i kako ga konfigurirati.


Dok se robot kreće pravocrtno, vrijednosti senzora su iste, što znači da će izlaz bloka "Oduzimanje" biti 0. Izlaz bloka "Množenje" također daje vrijednost 0. Ova vrijednost se dovodi paralelno na par za upravljanje motorom. Budući da je u ovim blokovima postavljena vrijednost 50, dodavanje ili oduzimanje 0 ne utječe na snagu motora. Oba motora rade istom snagom od 50 i robot se kotrlja u ravnoj liniji.

Pretpostavimo da staza skrene ili robot skrene s ravne linije. Što će se dogoditi?

Na slici se vidi da se osvjetljenje senzora spojenog na priključak 2 (u daljnjem tekstu senzori 2 i 3) povećava, budući da prelazi u bijelo polje, a osvjetljenje senzora 3 opada. Pretpostavimo da vrijednosti ovih senzora postanu: senzor 2 - 55 jedinica, a senzor 3 - 45 jedinica.
Blok "Oduzimanja" će odrediti razliku između vrijednosti dvaju senzora (10) i unijeti je u blok korekcije (množenje s faktorom (10 * 2,5 = 25)), a zatim u upravljačke blokove
motori.
U matematičkom bloku (Dodatak) kontrole motora B do prosječne vrijednosti brzine 50
Dodat će se 25 i vrijednost snage od 75 primijenit će se na motor B.
U matematičkom bloku (Oduzimanje) upravljanja motorom C, 25 će se oduzeti od prosječne vrijednosti brzine od 50 i vrijednost snage od 25 primijenit će se na motor C.
Tako će se ispraviti odstupanje od ravne linije.

Ako staza naglo skreće u stranu i senzor 2 je na bijelom, a senzor 3 na crnom. Vrijednosti osvjetljenja ovih senzora postaju: senzor 2 - 70 jedinica, a senzor 3 - 50 jedinica.
Blok "Oduzimanje" će odrediti razliku između vrijednosti dvaju senzora (20) i unijeti je u blok korekcije (20 * 2,5 = 50), a zatim u blokove za upravljanje motorom.
Sada u bloku matematike (Addition) koji upravlja motorom B, vrijednost snage 50 +50 =100 bit će primijenjena na motor B.
U matematičkom bloku (oduzimanje) kontrole motora C, vrijednost snage od 50 - 50 = 0 primijenit će se na motor C.
I robot će napraviti nagli zaokret.

Na bijelim i crnim poljima robot se mora kretati pravocrtno. Ako se to ne dogodi, pokušajte uskladiti senzore s istim vrijednostima.

Kreirajmo sada novi blok i upotrijebimo ga za pomicanje robota duž bilo koje staze.
Odaberite ciklus, zatim u izborniku "Uredi" odaberite naredbu "Kreiraj moj blok".

U dijaloškom okviru "Block Builder" dodijelite naziv našem bloku, na primjer "Idi", odaberite ikonu za blok i kliknite "GOTOVO".

Sada imamo blok koji se može koristiti u slučajevima kada se moramo kretati duž linije.

Ovaj zadatak je klasičan, ideološki jednostavan, može se riješiti više puta i svaki put ćete otkriti nešto novo.

Postoji mnogo pristupa za rješavanje problema sljedeće linije. Odabir jednog od njih ovisi o specifičnom dizajnu robota, o broju senzora, njihovom položaju u odnosu na kotače i međusobno.

U našem će se primjeru tri primjera robota rastaviti na temelju glavnog modela udžbenika Robot Educator.

Za početak skupljamo osnovni model obrazovni robot Robot Educator, za to možete koristiti upute u softver MINDSTORMS EV3.

Također, na primjer, potrebni su nam EV3 senzori svjetlosne boje. Ovi svjetlosni senzori, kao nijedan drugi, najbolji način prikladni za naš zadatak, kada radimo s njima, ne moramo brinuti o intenzitetu ambijentalnog svjetla. Za ovaj senzor, u programima ćemo koristiti način reflektirane svjetlosti, u kojem se procjenjuje količina reflektirane svjetlosti crvenog osvjetljenja senzora. Ograničenja očitanja senzora 0 - 100 jedinica, za "bez refleksije" i " potpuni odraz" odnosno.

Na primjer, analizirat ćemo 3 primjera programa za kretanje po crnoj stazi prikazanoj na ravnoj, svijetloj pozadini:

· Jedan senzor, s P regulatorom.

· Jedan senzor, s PK regulatorom.

· Dva senzora.

Primjer 1. Jedan senzor, s P regulatorom.

Oblikovati

Senzor svjetla je postavljen na gredu koja je prikladno smještena na modelu.


Algoritam

Rad algoritma temelji se na činjenici da, ovisno o stupnju preklapanja, snop osvjetljenja senzora s crnom linijom, očitanja koja vraća senzor variraju u gradijentu. Robot sprema položaj svjetlosnog senzora na rubu crna linija. Konvertiranjem ulaznih podataka sa svjetlosnog senzora, upravljački sustav generira vrijednost brzine okretanja robota.


Budući da na stvarnoj putanji senzor generira vrijednosti u svom cijelom radnom rasponu (0-100), vrijednost kojoj robot teži je 50. U ovom slučaju, vrijednosti koje se prenose na funkciju rotacije formiraju se u rasponu -50 - 50, ali ove vrijednosti nisu dovoljne za strmu rotaciju putanje. Stoga bi raspon trebao biti proširen jedan i pol puta na -75 - 75.

Konačno, u programu je funkcija kalkulatora jednostavan proporcionalni regulator. čija funkcija ( (a-50)*1.5 ) u radnom rasponu svjetlosnog senzora generira vrijednosti rotacije u skladu s grafikonom:

Primjer algoritma

Primjer 2. Jedan senzor, s PK kontrolerom.

Ovaj primjer je sastavljen na istom dizajnu.

Vjerojatno ste primijetili da se u prethodnom primjeru robot previše ljuljao, što mu nije dopuštalo da dovoljno ubrza. Sada ćemo pokušati malo popraviti ovu situaciju.

Našim proporcionalni regulator također dodajemo jednostavan kockasti kontroler koji će dodati malo zaokreta u funkciju kontrolera. To će smanjiti ljuljanje robota u blizini željene granice putanje, kao i napraviti jače trzaje na velikoj udaljenosti od nje.

Razmotrimo najjednostavniji algoritam za kretanje duž crne linije na senzoru jedne boje na EV3.

Ovaj algoritam je najsporiji, ali najstabilniji.

Robot se neće kretati strogo duž crne linije, već duž njezine granice, okrećući se lijevo ili desno i postupno se krećući naprijed.

Algoritam je vrlo jednostavan: ako senzor vidi crno, robot se okreće u jednom smjeru, ako je bijelo - u drugom.

Implementacija u okruženju Lego Mindstorms EV3

U oba bloka pokreta odaberite način "omogući". Prekidač je postavljen na senzor boje - mjerenje - boja. Na dnu ne zaboravite promijeniti "bez boje" u bijelu. Također, morate ispravno navesti sve priključke.

Ne zaboravite dodati petlju, robot nikamo neće ići bez nje.

Ček. Za postignuće najbolji rezultat pokušajte promijeniti postavke upravljanja i snage.

Kretanje s dva senzora:

Već znate algoritam za pomicanje robota duž crne linije pomoću jednog senzora. Danas ćemo razmotriti kretanje duž linije pomoću dva senzora boja.
Senzori moraju biti instalirani tako da crna linija prolazi između njih.


Algoritam će biti sljedeći:
Ako oba senzora vide bijela boja- ići naprijed;
Ako jedan od senzora vidi bijelo, a drugi crno, okrećemo se prema crnom;
Ako oba senzora vide crno, nalazimo se na raskrižju (na primjer, zaustavljanje).

Da bismo implementirali algoritam, moramo pratiti očitanja oba senzora, a tek nakon toga postaviti robota da se kreće. Da bismo to učinili, koristit ćemo prekidače ugniježđene u drugi prekidač. Dakle, prvo ćemo ispitati prvi senzor, a zatim ćemo, bez obzira na očitanja prvog, ispitati drugi senzor, nakon čega ćemo postaviti radnju.
Spojite lijevi senzor na priključak #1, desni senzor na priključak #4.

Program s komentarima:

Ne zaboravite da pokrećemo motore u načinu rada "Omogući" tako da rade koliko god je potrebno na temelju očitanja senzora. Također, često se zaboravlja potreba za petljom - bez nje će program odmah završiti.

http://studrobots.ru/

Isti program za NXT model:

Proučite program kretanja. Programirajte robota. Prenesite video test modela

Tekst rada je postavljen bez slika i formula.
Puna verzija Rad je dostupan u kartici "Datoteke rada" u PDF formatu

Lego Mindstorms EV3

Pripremna faza

Izrada i kalibracija programa

Zaključak

Književnost

1. Uvod.

Robotika je jedno od najvažnijih područja znanstvenog i tehnološkog napretka, u kojem se problemi mehanike i novih tehnologija susreću s problemima umjetne inteligencije.

Iza posljednjih godina napredak u robotici i automatizirani sustavi promijenio osobne i poslovne sfere naš život. Roboti se široko koriste u transportu, u istraživanju Zemlje i svemira, u kirurgiji, u vojnoj industriji, u izvođenju laboratorijska istraživanja, u području sigurnosti, u masovnoj proizvodnji industrijske robe i robe široke potrošnje. Robotima se mogu smatrati i mnogi uređaji koji donose odluke na temelju podataka dobivenih od senzora - poput, primjerice, dizala, bez kojih je naš život već nezamisliv.

Mindstorms EV3 konstruktor nas poziva da uđemo u fascinantan svijet robota, uronimo u složeno okruženje informacijske tehnologije.

Cilj: Naučiti kako programirati robota da se kreće pravocrtno.

    Upoznajte Mindstorms EV3 konstruktor i njegovo programsko okruženje.

    Napiši programe za pravocrtno kretanje robota za 30 cm, 1 m 30 cm i 2 m 17 cm.

    Mindstorms EV3 konstruktor.

Dizajnerski dijelovi - 601 kom., Servo motor - 3 kom., senzor boja, senzor pokreta, infracrveni senzor i senzor za dodir. mikroprocesorska jedinica EV3 je mozak LEGO konstruktor Mindstorms.

Za kretanje robota zadužen je veliki servo motor koji se spaja na EV3 Brick i tjera robota da se kreće: ide naprijed i nazad, okreće se i vozi zadanom putanjom. Ovaj servomotor ima ugrađen senzor rotacije, koji vam omogućuje vrlo preciznu kontrolu kretanja robota i njegove brzine.

Možete natjerati robota da izvede radnju s kompjuterski program EV3. Program se sastoji od različitih kontrolnih blokova. Radit ćemo s blokom pokreta.

Blok kretanja upravlja motorima robota, pali ga, isključuje, tjera ga da radi u skladu sa zadacima. Može se programirati za kretanje određena količina okretaja ili stupnjeva.

    Pripremna faza.

    Stvaranje tehničkog polja.

Označit ćemo polje rada robota, pomoću električne trake i ravnala napravit ćemo tri linije duljine 30 cm - zelena linija, 1 m 15 cm - crvena i 2 m 17 cm - crne linije.

    Potrebni izračuni:

Promjer kotača robota - 5 cm 7 mm = 5,7 cm.

Jedan okretaj kotača robota jednak je opsegu kruga promjera 5,7 cm. Opseg se nalazi prema formuli

Gdje je r radijus kotača, d je promjer, π = 3,14

l = 5,7 * 3,14 = 17,898 = 17,9.

Oni. Za jedan okret kotača robot prijeđe 17,9 cm.

Izračunajte broj okretaja potrebnih za prolaz:

N=30: 17,9=1,68.

    1m 30cm = 130cm

N=130: 17,9=7,26.

    2 m 17 cm = 217 cm.

N = 217 : 17,9 = 12,12.

    Izrada i kalibracija programa.

Izradit ćemo program prema sljedećem algoritmu:

Algoritam:

    Odaberite blok pokreta u softveru Mindstorms EV3.

    Uključite oba motora u zadanom smjeru.

    Pričekajte da se očitanje senzora rotacije jednog od motora promijeni na navedenu vrijednost.

    Isključite motore.

Gotov program se učitava u upravljačku jedinicu robota. Stavimo robota na teren i pritisnemo gumb za pokretanje. EV3 vozi preko polja i zaustavlja se na kraju zadane linije. Ali kako biste postigli točan završetak, morate izvršiti kalibraciju jer vanjski čimbenici utječu na pokret.

    Polje se ugrađuje na učeničke stolove, pa je moguć blagi ugib površine.

    Površina polja je glatka pa nije isključeno loše prianjanje kotača robota na polje.

    Pri računanju broja okretaja morali smo zaokružiti brojeve, pa smo mijenjanjem stotinki okretaja postigli traženi rezultat.

5. Zaključak.

Sposobnost programiranja robota da se kreće po ravnoj liniji bit će korisna za izradu složenijih programa. Sve dimenzije kretanja su u pravilu naznačene u projektnom zadatku za robotička natjecanja. Oni su neophodni kako program ne bi bio preopterećen logičkim uvjetima, petljama i drugim složenim kontrolnim blokovima.

Na sljedeći korak upoznavanje s robotom Lego Mindstorms EV3 morat će naučiti kako programirati okrete pod određenim kutom, kretanje u krugu, spirale.

Vrlo je zanimljivo raditi s dizajnerom. Naučivši više o njegovim mogućnostima, možete riješiti bilo koji tehnički zadaci. A u budućnosti, možda, napravite svoje zanimljive modele robota Lego Mindstorms EV3.

Književnost.

    Koposov D. G. "Prvi korak u robotiku za razrede 5-6." - M.: Binom. Laboratorij znanja, 2012. - 286 str.

    Filippov S. A. "Robotika za djecu i roditelje" - "Znanost" 2010

    Internet resursi

    http://lego. rkc-74.ru/

    http://www.9151394.ru/projects/lego/lego6/beliovskaya/

    http://www. lego lego. com/obrazovanje/

Slični postovi