Ultrazvučni senzor

Ultrazvučni senzor je elektronički modul za mjerenje udaljenosti robota od nekog drugog objekta (prepreke).

Može detektirati prepreke na udaljenosti od 3 do 400 cm (pod kutom od 30′).

Povezuje se na port sa žutom oznakom.

Naredbe za ultrazvučni senzor

Naredba za ultrazvučni senzor nalazi se u mBlock programu pod kategorijom Sensing.

Naredba

Objašnjenje

Naredba koja u programu javlja vrijednost udaljenosti (cm) ultrazvučnog senzora od predmeta koji se nalazi ispred njega.

Primjeri programa za ultrazvučni senzor

Savjet: Prilikom programiranja ultrazvučnog senzora provjerite na kojem ulazu (portu) je spojen senzor na upravljačkoj pločici te u skladu s time izradite program.

Provjera vrijednosti ultrazvučnog senzora

Nakon povezivanja mBota na računalo opcijom Connect, potrebno je odabrati Live način rada u izborniku mBlocka te ažurirati firmware na mBotu prije korištenja senzora. Ažuriranje se radi odabirom opcije Setting  – Update Firmware – Updates. Nakon ažuriranja firmware-a potrebno je ponovno povezati mBot s računalom opcijom Connect.

U kategoriji Sensing kvačicom označite naredbu ultrasonic sensor port3 distance(cm).

U ovom primjeru robot detektira prepreku na udaljenosti manjoj od 15 cm. Svjetleće diode svijelte zeleno sve dok ultrazvučni senzor ne detektira prepreku ispred sebe kada mijenjaju boju u crveno.

Pomičite prepreku na različite udaljenosti ispred robota te u lijevom prozoru makeBlock programa pratite koju vrijednost udaljenosti senzor očitava te kako se na robotu mijenjaju boje svjetlećih dioda.

Detektiranje prepreke

Robot slobodno vozi dok ne naiđe na prepreku ispred sebe na udaljenosti manjoj od 15 sentimetara te se tada zaustavlja. Kad se prepreka odmake od njega, ponovno kreće s vožnjom.

Ultrazvučni senzor je osjetljiv na broj očitanja u vremenu koji se vrši nad njim.

U ovom programu koristi se timer kako bi se izbjegao velik broj očitanja senzora i kako ne bi došlo do nestabilnih mjerenja. Timer počinje brojati vrijeme svaki put kod pokretanja robota. U ovom primjeru očitavanja se izvršavaju 10 puta u sekundi.

Kako bi se mjerenje ultrazvučnog senzora izvršavalo 10 puta u jednoj sekundi, na početku programa, u forever petlji, postavljena je if then naredba u kojoj se provjerava stanje timera. Ako je provjerom utvrđeno da je timer veći od 0.1 sekunde, timer se resetira (reset timer).

Nakon resetiranja timera, slijedi blok naredbi kojim se izvršava očitanje ultrazvučnog senzora. Novim if then else blokom postavljena je provjera udaljenosti ultrazvučnog senzora od prepreke (if ultrasonic sensor port3 distance (cm) > 15). Ako se provjera pokaže točnom, robot svijetli zeleno, inače (else) svijetli crveno.