Robotika

mBot

mBot – Svjetlosni senzor

Senzori se koriste za otkrivanje događaja ili promjena u okolišu i slanje informacija elektroničkim komponentama drugih elektroničkih uređaja. Svjetlosni senzor koji se nalazi na upravljačkoj pločici mBota detektira razinu svjetlosti prostora u kojem se mBot nalazi. Raspon vrijednosti svjetlosnog senzora kreće se od 0 do 1023. Što je veća svjetlina okoline u kojoj je mBot, to je veća vrijednost koju svjetlosni senzor očitava. Kada je mBot izložen na danjem svijetlu, vrijednost je veća od 500. U večernjem osvjetljenju (u mraku) vrijednost se kreće od 0 do 100, a ako se tada upali svijetlo, vrijednosti su između 100 i 500.

Zadatak

Izradite program za robot koji će pomoću svjetlosnog senzora detektirati da se robot nalazi u mračnijoj prostoriji te da tada počne svijetliti LED diodama slučajno odabranim svijetlom.

Rješenje

Objašnjenje

Unutar forever petlje postavljena je if then else naredba u kojoj je definirano kako da se robot ponaša kad je u mraku i  kad je na svjetlu.U if then dijelu petlje najprije se uspoređuje je li razina svijetlosti prostora manja od 200 (if light sensor light sensor on bord < 200). Ako je taj uvjet zadovoljen pale se LED diode na mBotu, inače su led diode ugašene(set led on bord all red 0 green 0 blue 0). Da bi LED diode svijetlile slučajno odabranom bojom, korištena je naredba pick random 1 to 10 koja je postavljena kao vrijednost crvene, zelene i plave.

Napomena: S obzirom na to da se LED diode nalaze u blizini svjetlosnog senzora na pločici, svjetlo LED dioda može trigerirati svjetlosni senzor ako je jačina svijetljenja LED dioda velika, tj, ako je mala razlika između vrijednosti koju očitava svjetlosni senzor i kojom svijetle LED diode. U tom slučaju bi LED diode blinkale jer bi se gasile nakon što bi obasjale svjetlosni senzor.