[RISOLTO] da angolo attuale ad un angolo target

AldoZ1
Ciao ancora ragazzi;
Allora nel mio progetto (robot quadrupede autonomo) ho (grazie all'aiuto di onlyreferee) una pseudo bussola.
Conosco in tempo reale l'angolo di rotta del mio robot, da 0 a 359 gradi.
Stavo scrivendo del codice con il quale posso dare un angolo target che il mio robot dovra' puntare dal suo angolo attuale.

In poche parole se l'angolo attuale nel quale il robot e' puntato e' 150° e io setto come target 220°, il robot iniziera' a roteare per puntare la nuova rotta.

Angolo_attuale = 150°
Angolo_target = 220°
SE Angolo_target > Angolo_attuale -----> robot rotea a sinistra
SE Angolo_target < Angolo_attuale -----> robot rotea a destra

il robot rotea a sinistra per raggiungere l' Angolo_target (esegue il percorso piu' corto per raggiungere il targer!)

Angolo_attuale = 150°
Angolo_target = 140°
SE Angolo_target > Angolo_attuale -----> robot rotea a sinistra
SE Angolo_target < Angolo_attuale -----> robot rotea a destra

il robot rotea a destra per raggiungere l' Angolo_target (esegue il percorso piu' corto per raggiungere il targer!)


Tutto ok.. tranne in una situazione del genere:
Angolo_attuale = 1°
Angolo_target = 359°
SE Angolo_target > Angolo_attuale -----> robot rotea a sinistra
SE Angolo_target < Angolo_attuale -----> robot rotea a destra

il robot girera' a sinistra e percorrera' quasi 360 gradi per raggiungere i 359°...
basterebbe invece una piccola rotazione a destra e si raggiungerebbe subito il target..
quindi in questo caso il robot esegue il percorso piu' lungo e faticoso.

Avete qualche idea di come fare in modo che il robot esegua sempre la rotazione piu' corta verso l'angolo_target?
mi sto un po perdendo...
grazie in anticipo e AUGURI DI BUON 2015!

Risposte
AldoZ1
risolto!

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.