Vožnja u krug

Robot se može vrtjeti u krug oko svoje osi. Prije rješavanja zadatka, proučite primjere zakretanja oko centralne osi robota. Uočit ćete da su smjerovi zakretanja motora suprotni, a brzine jednake.

Vožnja u krug oko svoje osi (smjer – udesno)

Robot se zakreće udesno po centralnoj osi 5 sekundi.

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

U naredbama za kretanje, lijevi motor je označen argumentom left, smjer kretanja je Forward (unaprijed). Desni motor je označen argumentom right, smjer kretanja je Backward (unazad). Brzina na oba motora je postavljena na 150.

Broj 150 označava brzinu kojom se kotači na robotu okreću. Što je taj broj veći, to se kotač brže okreće. Najveća brzina kojom se kotač može kretati je 255, a ako je brzina 0, kotač miruje. Robot skreće u smjeru onog kotača koji ide unazad.

Vožnja u krug oko svoje osi (smjer – ulijevo)

Robot se zakreće ulijevo po centralnoj osi 5 sekundi.

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

U naredbama za kretanje, desni motor je označen argumentom right, smjer kretanja je Forward (unaprijed). Lijevi motor je označen argumentom left, smjer kretanja je Backward (unazad). Brzina na oba motora je postavljena na 150.

Broj 150 označava brzinu kojom se kotači na robotu okreću. Što je taj broj veći, to se kotač brže okreće. Najveća brzina kojom se kotač može kretati je 255, a ako je brzina 0, kotač miruje. Robot skreće u smjeru onog kotača koji ide unazad.

Zadatak

Izradite program kojim će se robot okretati oko sebe (u lijevu stranu) nakon što 2 sekunde vozi ravno. Zakretanje oko svoje osi neka također traje 2 sekunde. Nakon zakretanja robot se mora kratko zaustaviti.

Neka takav slijed naredbi ponavlja beskonačno mnogo puta.

Rješenje

Objašnjenje

Iz kategorije Maqueen uzmite naredbu motor left move Forward at speed 0 i stavite je unutar forever petlje. Umjesto left odaberite all te umjesto 0 upišite 100. Nakon toga dodajte pauzu od 2 sekunde. Sada se robot vozi ravno 2 sekunde brzinom 100.

Za zakretanje oko svoje osi u lijevu stranu, lijevi motor robota se mora kretati unazad, a desni unaprijed, oba jednakom brzinom. Stoga, dvaput duplicirajte naredbu motor all move Forward at speed 100 te u jednoj all promijenite u left, a u drugoj u right. Kod naredbe za lijevi motor, Forward promijenite u Backward. Nakon toga dodajte pauzu od 2 sekunde.

Za kraj dodajte naredbe motor all stop i pause (ms) 100 kako bi se robot zaustavio na 100 milisekundi nakon zakretanja udesno.