Cours:MindstormEvitementObstacle

De troyesGEII
Révision datée du 3 octobre 2018 à 09:47 par Bjacquot (discussion | contributions) (Page créée avec « {{Rouge|'''Retour à la liste des Tps'''}} =Rotation à l'aide du gyroscope= On souhaite que le robot puisse faire des rotations d'un certain angle.... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher
Retour à la liste des Tps

Rotation à l'aide du gyroscope

On souhaite que le robot puisse faire des rotations d'un certain angle. Il est intéressant d'utiliser le gyroscope pour parvenir à ce résultat.

Principe

On souhaite tout simplement réaliser un programme qui fait tourner le robot d'un angle de 90°.

L'algorithme sera le suivant :

  • arrêter moteurs
  • attendre 10ms
  • lire gyroscope (valeur entre -180 et 180)
  • calculer l'angle souhaité (position du robot + 90° ... attention si ça dépasse 180°!!!)
  • faire tourner le robot sur lui même (roues en sens opposé)
  • répéter
    • lire gyroscope
    • attendre 2ms
  • tant que angleRobot != angleSouhaité
  • arrêter les moteurs

Question.jpg Ecrire un tel programme

création d'une fonction

Il peut être intéressant de faire tourner notre robot de 90° plusieurs fois dans un même programme.

Au lieu de faire un "copier coller", on va écrire une fonction qu'il suffira d'appeler chaque fois que l'on souhaite :

Exemple :
#include ....

void tourner90()
{
  // copier ici les instructions nécessaires à la rotation à 90°
  ...
}

int main()
{
   ....
   tourner90();
   ....
   do {
      ....
      tourner90();
      ....
   } while (conditionPourContinuer);
   ....
   return 0;
}