Skretanje u zavojima

Prije rješavanja zadatka proučite primjere programa kojima robot skreće udesno i ulijevo i tako svladava zavoje na putu.

Skretanje udesno

Nakon pritiska na tipkalo A, robot skreće udesno 2 sekunde.

Oba motora se kreću u istom smjeru, različitom brzinom.

U naredbama za kretanje, desni motor je označen argumentom right, smjer kretanja je Forward (unaprijed) te je brzina postavljena na 70. Lijevi motor je označen argumentom left, smjer kretanja je Forward (unaprijed)te je brzina postavljena na 220.

Brojevi 70 i 220 označavaju brzinu kojom se kotači na robotu okreću. Što je razlika između tih brzina veća to će robot „oštrije“ skretati. Robot će skretati u onu stranu na kojoj je namještena manja brzina okretanja motora.

Skretanje ulijevo

Nakon pritiska na tipkalo A, robot skreće ulijevo 2 sekunde.

Oba motora se kreću u istom smjeru, različitom brzinom.

U naredbama za kretanje, lijevi motor je označen argumentom left, smjer kretanja je Forward (unaprijed) te je brzina postavljena na 70. Desni motor je označen argumentom right, smjer kretanja je Forward (unaprijed)te je brzina postavljena na 220.

Brojevi 70 i 220 označavaju brzinu kojom se kotači na robotu okreću. Što je razlika između tih brzina veća to će robot „oštrije“ skretati. Robot će skretati u onu stranu na kojoj je namještena manja brzina okretanja motora.

Zadatak

Temeljem prikazanih primjera napravite program kojim će robot pritiskom na tipkalo B voziti u krug oko zamišljene vanjske točke. Neka se njegovo kružno kretanje odvija 10 sekundi i neka bude u lijevu stranu.

Rješenje

Objašnjenje

Blok u koji ćete stavljati sve naredbe je micro:bit starts iz micro:bit kategorije. U kategoriji Control pronađite naredbu wait until. Kao uvjet postavite A button pressed? iz micro:bit kategorije te promijenite A u B. Dok taj uvjet nije ispunjen, program stoji.

Zatim stavite dvaput naredbu set left motor direction rotate forward 200 iz Expansion Board kategorije. U drugoj naredbi promijenite left u right. Kružno kretanje se treba odvijati u lijevu stranu pa brzina lijevog motora treba biti manja od brzine desnog motora. Postavite brzinu lijevog motora na 60, a desnog na 255. Nakon toga dodajte pauzu od 10 sekundi naredbom wait 10 seconds iz Control kategorije i zaustavite kretanje robota naredbom set all motor stop.