Robotika
mBotRGB 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.
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 za praćenje crte u programu mBlock 5
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 plus (+).
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 odaberite Add.
Zatvorite prozor Extension center i u popisu kategorija naredbi na posljednjem mjestu naći ćete RGB Line Follower kategoriju.
Naredbe za RGB senzor za praćenje crte
Primjeri programa za RGB senzor za praćenje crte
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.
Praćenje linije RGB senzorom
Ovaj program predstavlja primjer praćenja linije RGB senzorom.
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.
Za kretanje unaprijed lijevi motor (DC motor port1) se vrti u smjeru suprotnom od kazaljke na satu, a desni motor (DC motor port2) u smjeru kazaljke na satu. Kada nema odmaka, brzina kretanja je 30%.
Vrijednost odmaka se na vrijednost brzine lijevog kotača dodaje, a od vrijednosti brzine desnog kotača se oduzima. Time se postiže da kod lijevog skretanja (kada je odmak negativan), desni kotač ima veću brzinu i da robot skrene lijevo, a kod desnog skretanja (kada je odmak pozitivan), lijevi kotač ima veću brzinu i robot tada skreće desno.
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.”