L'angle d'un robot dépend du matériel spécifique, comme la taille de la roue, la taille du codeur et la largeur du véhicule. Peut-être que vous avez été chanceux avec le l'autre robot que le changement de diamètre de la roue et la roue à Empattement annulé les uns les autres de sorte que les équations sont les mêmes, mais normalement vous ne serez pas aussi chanceux
en supposant avoir un robot à deux roues les mêmes lectures sur deux configurations différentes peuvent donner des résultats différents. Dans ma simple illustration j'ai l'essieu d'un robot à deux roues les deux robots ont le même wheel_diameter
et utilisent les mêmes encodeurs rotatifs. Supposons que les deux robots maintiennent une roue immobile et que l'autre se déplace de 5 clics vers l'avant sur l'encodeur de roue (les deux bots utilisent le même encodeur et la même roue de taille). En utilisant l'équation simple pour la circonférence d'un demi-cercle, nous pouvons trouver la distance parcourue par les roues.
dist_trav = (pi * wheel_diameter) * (#ticks/total ticks on encoder)
Bien sûr, depuis une roue est immobile, le robot pivote en fait sur un autre demi-cercle. Nous pouvons calculer le nouvel angle à l'aide
circumference = 2*pi*dist_between_wheels
dist_between_wheels est le rayon de notre cercle
angle = % of circumference traveled * units = (dist_trav/circumference) * 360
nous utilisons 360 si l'angle est en degrés, mais vous pouvez utiliser radians si on le souhaite
vous verrez que même dans cet exemple où les robots sont identiques à l'exception de la distance entre les roues, le même nombre de tiques signifiera des angles très différents. Si r2=2*r1
nous pouvons voir que dist_trav
est le même pour les deux robots (puisque les roues sont le même diamètre) mais quand nous figurons les angles nous obtenons
bot noir
angle_black = (dist_traveled/2*pi*R1) * 360
rouge bot
angle_black = (dist_traveled/2*pi*2*R1) * 360
= (dist_traveled/4*pi *R1) * 360
donc pour le même mouvement des roues du robot rouge n'aura 1/2 l'angle change comme le bot noir l'a fait. Ceci est juste un exemple de jouet, mais vous pouvez facilement voir comment différents diamètres de roues et la distance entre eux peuvent faire une énorme différence.
Je ne dis pas que c'est offtopic, mais je pense que vous pourriez trouver un meilleur site StackExchange pour cette question. Tels que [Robotics SE] (http://robotics.stackexchange.com/help/on-topic). – Petr