Praćenje linije do prepreke

Zadatak

Izradite program kojim će micro:Maqueen robot pratiti crnu liniju sve dok se ispred robota ne nalazi nikakva prepreka. U slučaju kada naiđe na prepreku, neka se zaustavi i zasvira ton pomoću zujalice.

Rješenje

Objašnjenje

Radi preglednosti programa, kreirajte funkciju za praćenje linije u kategoriji Functions. Unutar nje definirajte kako se robot treba kretati s obzirom na poziciju na crnoj liniji. Logika praćenja linije neka sljedeća:

  • Ako je lijevi senzor na bijeloj podlozi, a desni na crnoj liniji neka robot vozi ravno.
  • Ako su oba senzora na crnoj liniji, neka robot skrene lijevo.
  • Ako je lijevi senzor na crnoj liniji, a desni na bijeloj, neka robot skrene desno.
  • Ako su oba senzora na bijeloj podlozi, neka robot skrene desno.

Nakon kreiranja funkcije Pracenje linije kako je prikazano na slici u forever petlji postavite uvjet koji provjerava je li udaljenost robota od prepreka veća od 8 cm. Ako je, robot neka vozi praćenjem crne linije. Stoga u then dio if then else naredbe postavite naredbu Pracenje linije iz Functions kategorije. Ako uvjet nije zadovoljen, odnosno ako se robot približio prepreci na udaljenost manjoj od 8 cm, neka se zaustavi (motor all stop) i zasvira ton po želji.

Stazu za praćenje linije možete preuzeti ovdje ili je izraditi sami. Za prepreku iskoristite različite predmete poput kutijica, igračaka, ruke, čaše i sl.