Salut.
J'ai un GY271 (compas) qui me tourne une valeur de 0 à 359° en fonction de son orientation .
Il sera monté sur mon proto de Rover.Le but est de fixer un cap et d'asservir le robot pour qu'il le suive . Je cherche une parade "mathématique" pour le passage de 360 à 0 ou l'inverse.
Un exemple , je demande à mon robot d'aller tout droit, je prend le cap actuel comme référence (prenons 345°). Et ensuite je le compare avec le cap pris en cours de mouvement : si c'est positif il va trop à droite , si c'est négatif c'est trop sur la gauche.
Si le robot se trouve décaler de 20° sur la droite avec mon cap de consigne à 345° le cap sera alors de 5° et j'aurai une comparaison négative et donc mon robot va interprêter de la mauvaise façon : il va croire être trop a gauche ..
J'ai bien pensé faire un "changement de repère" en utilisant map() mais je bloque ..