RGB senzor za praćenje crte

RGB senzor za praćenje linije sadrži 4 RGB diode i 4 fotoosjetljive diode u pripadajućim cijevima.

S prednje se strane nalazi gumb za učenje i LED indikator. Gumb za učenje služi za određivanje boje pozadine i boje linije za praćenje na stazi. Ovim senzorom se mogu pratiti svijetle linije na tamnoj podlozi i tamne linije na svijetloj podlozi. RGB senzor za praćenje linije mora gumbom za učenje „naučiti“ izgled staze kako bi se mogao prilagoditi vanjskim faktorima. Gumb za učenje prepoznaje i pamti boju pozadine i linije.

Senzor se za mBot pločicu može povezati na bilo koji port RJ25 kabelom.

RGB senzor za praćenje linije sadrži 4 LED indikatora koji služe za davanje povratne informacije o praćenju linije te za učenje novog okruženja.

Senzor osvjetljava stazu crvenom, zelenom ili plavom bojom. Pritiskom i držanjem gumba za učenje, može se birati jedna od tih boja koja najbolje odgovara stazi.

Prema materijalu staze i svjetlosnim uvjetima preporuka je da se RBG senzor za praćenje linije postavi na visini od 5 do 15 mm.

Na slici prikazan je raspored fotoosjetljivih dioda na senzoru.

Kada fotoosjetljive diode prijeđu preko različitih boja, one će pretvoriti te različite optičke informacije u elektroničke signale i određene izlazne vrijednosti. Softver će tada upotrijebiti analogne vrijednosti tih četiriju dioda za stvaranje zadanog algoritma za praćenje linije. Na kraju će dobiti vrijednost odmaka (offset vrijednost) senzora koja upućuje na odstupanje od položaja linije za praćenje na stazi. Korisnici mogu upotrijebiti vrijednost odmaka za kontrolu brzine rotacije lijevog i desnog motora i tako ostvariti praćenje linije.

Da bi se mBot mogao na ispravan način kretati po stazi praćenjem linije, potrebno je da upozna i „nauči“ boju linije i pozadine.

Proces učenja:

Podesite boju svjetla senzora koje će osvjetljavati stazu: Dugim pritiskom na gumb za učenje mijenjaju se boje svjetla (crvena, zelena i plava). Odaberite onu koja najbolje odgovara vašoj stazi.

Učenje i prepoznavanje boje pozadine: Postavite RBG senzor za praćenje linije na robota tako da sa sve 4 ledice (svjetla) obasjavaju pozadinu staze. Pritisnite na gumb za učenje. Kada indikatori počnu sporo treperiti, to znači da je proces učenja boje pozadine ispravan. Nakon 2 do 3 sekunde indikatori će prestati treperiti te to označava kraj procesa učenja boje pozadine.

Učenje i prepoznavanje boje linije: Postavite RBG senzor za praćenje linije na robota tako da sa sve 4 ledice (svjetla) obasjava pozadinu linije koju mora pratiti. Dva puta pritisnite na gumb za učenje. Kada indikatori počnu brzo treperiti, to znači da je proces učenja boje linije ispravan. Nakon 2 do 3 sekunde indikatori će prestati treperiti te to označava kraj procesa učenja boje linije.

Testiranje naučenog: Nakon što su procesi učenja boje pozadine i linije gotovi, testirajte ponaša li se senzor na ispravan način kada se prijemne cijevi postave na površinu staze. Kada senzor detektira pozadinu, pale se LED indikatori uz cijev koja je iznad pozadine, a gase se oni uz cijev koja je iznad linije. Ako cijeli senzor obasjava površinu pozadine, sva 4 LED indikatora svijetle. A ako je senzor sa sva 4 svjetla iznad linije za praćenje, LED indikatori su ugašeni.

Novo učenje: Ako se dogodi bilo kakva promjena (okruženje, staza, pozicija RGB senzora za praćenje linije), preporuka je da se ponovi proces učenja.

Dodavanje naredbi za programiranje RGB senzora

Nakon što ste u mBlock programu odabrali mBot kao uređaj za koji izrađujete programski kôd, potrebno je dodati set naredbi za RGB senzor za praćenje crte.

Ispod kategorija naredbi, odaberite opciju exstension.

Otvorit će se prozor (Extension center) u kojem možete odabrati set naredbi za dodatne senzore za mBot.

Pronađite kategoriju RGB Line Follower i pritisnite na Add. Tako ste preuzeli set naredbi za RGB senzor za praćenje linije.

U popisu kategorija naredbi na posljednjem mjestu naći ćete RGB Line Follower kategoriju.

Naredbe za RGB senzor

Naredba

Objašnjenje

Inicijalizira RGB senzor za praćenje linije u programu.

Određuje osjetljivost (Kp) senzora. Što je veća vrijednost, veća je osjetljivost te senzor brže reagira.

Dobivanje diferencijalne brzine.

Odmak prema RGB4 vraća pozitivnu vrijednost.

Odmak prema RGB1 vraća negativnu vrijednost.

Provjerava status senzora (0 ili 1).

0 – senzor je na liniji.

1 – senzor je na pozadini.

(Redoslijed ide od RGB4 do RGB1.)

Provjerava detektira li senzor pozadinu.

Određuje boju kojom senzor osvjetljava površinu staze.

Vraća vrijednost boje koju senzor očitava.

Primjeri programa za RGB senzor

Prilikom programiranja senzora za praćenje crte provjerite na kojem ulazu (portu) je spojen senzor na upravljačkoj pločici te u skladu s time izradite program.

Određivanje boje za osvjetljenje staze

Na početku programa inicijalizira se RGB senzor za praćenje linije i njegovu osjetljivost. Senzor je u ovom primjeru spojen na port 3, a osjetljivost je postavljena na maksimalnu vrijednost.

Pritiskom na tipke A, B i C daljinskoga upravljača mijenja se boja kojom senzor osvjetljava stazu.

Pritiskom na tipku A senzor stazu osvjetljava crvenom bojom.

Pritiskom na tipku B senzor stazu osvjetljava zelenom bojom.

Pritiskom na tipku C senzor stazu osvjetljava plavom bojom.

Testiranje prepoznavanja linije i podloge staze

Nakon što ste senzor naučili kakve su pozadina i linija na stazi, možete provjeriti prepoznaje li ih senzor na ispravan način. Kao dodatnu pomoć upotrijebite led matrix zaslon koji će ispisivati stanje na stazi koje senzor prepoznaje.

Na početku programa inicijalizira se RGB senzor za praćenje linije i njegovu osjetljivost. Senzor je u ovom primjeru spojen na port 3, a osjetljivost je postavljena na maksimalnu vrijednost. Led matrix zaslon spojen je na port 4.

Ako je senzor u cijelosti na liniji koju mora pratiti, na led matrixu će se ispisati 0, a na senzoru će svi LED indikatori biti ugašeni.

Ako je senzor za praćenje linije u cijelosti postavljen na podlogu staze, na led matrixu će se ispisati 1111, a na senzoru će svi LED indikatori svijetliti plavo.

U slučaju da je senzor postavljen na stazi tako da su RGB1 i RGB4 na podlozi, a RGB2 i RGB3 na liniji, tada se na led matrix zaslonu ispisuje broj 1001. LED indikatori na RGB1 i RGB 4 svijetle, a na RGB2 i RGB3 su ugašeni.

Testiranje offseta (vrijednost odmaka od linije za praćenje)

Da biste bolje razumjeli kako funkcionira praćenje linije pomoću ovog senzora, testirajte vrijednost  odmaka od linije (offset) za praćenje na stazi. Tom vrijednošću regulira se način i brzina kretanja robota na stazi.

Za vrijeme kretanja robota na stazi, on će naići na dio linije koji nije u potpunosti ravan, već skreće u lijevo ili u desno. To skretanje linije predstavlja odmak senzora od nje. Kada je senzor s unutarnjim senzorima (RGB2 i RGB3) na liniji za praćenje, a s vanjskim (RGB1 i RGB4) na pozadini staze, tada nema odmaka od linije i njegova vrijednost je 0. Robot tada prati liniju vozeći ravno po njoj. No, robot će na stazi naići na zavoje i pritom će se RGB senzor odmaknuti od pozicije u kojem je s unutarnjim senzorima na liniji, a s vanjskim na pozadini. Ako linija ide u lijevu stranu, odmak senzora od nje ide prema RGB1 te je njegova vrijednost negativna. Ako linija ide u desnu stranu, odmak senzora ide od nje prema RGB4 te ima pozitivnu vrijednost.

Na početku programa inicijalizira se RGB senzor za praćenje linije i njegovu osjetljivost. Senzor je u ovom primjeru spojen na port 3, a osjetljivost je postavljena na maksimalnu vrijednost. Led matrix zaslon spojen je na port 4.

Postavite robota na stazu tako da je s unutarnjim senzorima na liniji, a s vanjskim na pozadini. U tom slučaju nema odmaka i na zaslonu će se ispisati vrijednost 0.

Ako postavite robota na poziciju lijevog zavoja, vrijednost odmaka će biti negativna. U slučaju desnog zavoja, vrijednost odmaka će biti pozitivna. Što je zavoj oštriji, to je apsolutna vrijednost odmaka veća.

Pomoću vrijednosti odmaka regulira se brzina lijevog i desnog motora kako bi na ispravan način pratili liniju.

Za izradu ovog materijala korišteni su izvori dostupni na stranici MakeX Support.

Ovaj je dokument izrađen uz financijsku podršku Zaklade “Hrvatska za djecu”. Sadržaj ovog dokumenta u isključivoj je odgovornosti Instituta za razvoj i inovativnost mladih i ni pod kojim uvjetima ne može se smatrati kao odraz stajališta Zaklade “Hrvatska za djecu.”