Ultrazvučni senzor

Micro:Maqueen Plus ima ultrazvučni senzor HC-SR04 kojim može detektirati predmet ispred sebe na udaljenosti od 2 do 400 cm. Odašiljač šalje ultrazvučni val koji se nakon udarca u predmet vraća prema senzoru i detektira ga prijemnik. Ultrazvučni senzor nije fiksan i može se maknuti s prednje strane robota.

Naredbe za ultrazvučni senzor

Naredba za ultrazvučni senzor nalazi se u Mind+ programu pod kategorijom Expansion board.

Naredba

Objašnjenje

Naredba koja u programu javlja vrijednost udaljenosti (cm) ultrazvučnog senzora od predmeta koji se nalazi ispred njega. Na robotu je ultrazvučni senzor povezan na izvodima P13 (TRIG) i P14 (ECHO).

Primjeri programa za ultrazvučni senzor

Detektiranje prepreke

U primjeru robot uključuje crvena svjetla kad ultrazvučnim senzorom detektira prepreku na udaljenosti manjoj od 15 centimetara, a inače svijetli zelenom bojom.

Robot pomoću if then else petlje unutar forever bloka cijelo vrijeme provjerava udaljenost prepreke od ultrazvučnog senzora. U uvjetu se operatorom manje od (<) provjerava je li vrijednost koju očitava ultrazvučni senzor (set ultrasonic sensor TRIG pin P13 ECHO pin P14 read data company:cm) manja od 15. Na izvodu P13 spojem je odašiljač koji izbacuje ultrazvučni val, a na izvodu P14 prijemnik koji prima njegov povratak te se na taj način detektira udaljenost od predmeta.

Ako je uvjet u zadovoljen, udaljenost robota od predmeta je manja od 15 cm te će se izvršiti naredbe u then dijelu. Robot će uključiti crvena svjetla.

Ako uvjet u petlji nije zadovoljen, udaljenost robota od predmeta je veća od 15 cm pa će se izvršiti naredbe u else dijelu. Robot će uključiti zelena svjetla.

Usporavanje i zaustavljanje ispred prepreke

Robot vozi određenom brzinom sve dok ne detektira prepreku na udaljenosti manjoj od 50 cm. U tom slučaju usporava, a kad se skroz približi prepreci (na udaljenosti manjoj od 10 cm), zaustavlja se. Kad nema prepreku u blizini svijetli zelenom bojom, prilikom usporavanja plavom, a zaustavljen svijtli crvenom bojom.

Dok uvjet A button pressed? nije ispunjen, odnosno pritisnuta tipka A, program stoji.

Petljom repeat until iz Control kategorije provjerava se je li vrijednost ultrazvučnog senzora (set ultrasonic sensor TRIG pin P13 ECHO pin P14 read data company:cm) manja od 10. Unutar repeat until petlje nalazi se if then else petlja koja provjerava dva uvjeta. Prvim uvjetom provjerava se je li udaljenost koju detektira UZV senzor veća od 10 (set ultrasonic sensor TRIG pin P13 ECHO pin P14 read data company:cm > 10), a drugim uvjetom je li udaljenost koju detektira UZV senzor manja od 10 (set ultrasonic sensor TRIG pin P13 ECHO pin P14 read data company:cm < 50).

Ako je ispunjen uvjet if petlje, robot usporava i svijetli plavo (set all motor direction rotate forward speed 50, pin P15 RGB 0 to 4 show color).

Ako uvjet nije ispunjen, izvršava se else dio i robot vozi normalnom brzinom i svijetli zeleno (set all motor direction rotate forward speed 255, pin P15 RGB 0 to 4 show color).

Nakon što se ispuni uvjet repeat until petlje robot treba stati i zasvijetliti crveno. Naredbe za zaustavljanje set all motor stop i za uključivanje RGB svjetlećih dioda u crveno pin P15 RGB 0 to 4 show color nalaze se van svih petlji, na samom kraju programa.