Idi - stani
Cilj
Cilj je vježbe ukratko pokazati kako povezati očitavanje senzora s odlukom o načinu pokretanja motora, konceptu koji će nam kasnije jako zatrebati.
Senzor i efektor
void RobotLine::loop() {
if (front() < 100)
stop();
else
go(50, 50);
}
Cilj lijevog programa je pomicati robota prema naprijed, dok ne dođe do prepreke, ispred koje treba stati.
Cilj ćemo ostvariti dvjema poznatim naredbama i jednom novom.
Umjesto da stanemo pred preprekom, mogli smo krenuti robotom unatrag. Negativna brzina je suprotan smjer rotacije kotača. Znači, umjesto "stop();" smo mogli upisati "go(-50, -50);".
Video
Kratki video pokazuje robota koji izvršava gornji program.
Zadatak: okretanje pred preprekom.
Napišite program koji će voditi robota ravno naprijed, dok ne naiđe na prepreku. Kad naiđe, robot se treba okretati oko svoje vertikalne osi, sve dok prepreka na nestane. Nakon toga treba opet nastaviti ići ravno.
Rješenje
void RobotLine::loop() {
if (front() < 100)
go(-50, 50);
else
go(50, 50);
}
Primjedbe
Projekt "Uvod u robotiku" sufinanciran je iz Europskog socijalnog fonda, poziv "Jačanje kapaciteta organizacija civilnoga društva za popularizaciju STEM-a".
Relevantne stranice:
Sadržaj vježbe za virtualne radionice isključiva je odgovornost Hrvatskog društva za robotiku.