Robot Scooba
Le robot domestique nettoyeur de sol Scooba doit remplir les fonctions de service :
FS1 : nettoyer le sol de façon autonome ;
FS2 : éliminer les saletés et les tâches ;
FS3 : laver avec une solution nettoyante ;
FS4 : être autonome en énergie ;
FS5 : se déplacer en tenant compte des obstacles.
Dans l'idéal, le robot doit pouvoir se déplacer de manière aléatoire dans son espace de travail de telle sorte qu'au bout d'un certain temps, toute la surface ait été nettoyée.
Cependant, différents aléas peuvent conduire à une réduction importante de la surface nettoyée. Il convient donc de contrôler la rotation des moteurs. Pour cela, le constructeur a placé un codeur à l'arrière de chaque moteur.
Le codeur possède sept ailettes qui coupent une barrière infrarouge. La carte électronique reçoit sept impulsions par tour de moteur.
Question
Q1 : En utilisant les informations fournies à la figure 1 , calculer le nombre d'impulsions Ntour reçu par la carte électronique du robot Scooba pour un tour de roue.
Indice
Il faut utiliser la résolution du codeur (7 impulsions/tour) et le rapport de réduction du réducteur (1/57).
Solution
1 tour de roue => 57 tours du moteur => Ntour = 57 x 7 = 399 impulsions
Question
Un programme, utilisant les informations issues des codeurs (droit et gauche), a été écrit pour corriger le comportement du robot Scooba. On s'intéressera uniquement au déplacement en ligne droite.
On se place dans le cas :
d'une consigne de déplacement en ligne droite de 50 cm ;
d'un écart d'avance toléré entre les deux roues motrices Δroue = ± 5 mm.
Le programme permet de contrôler les deux roues motrices. Dans le principe, il contrôle l'écart d'avance entre les deux roues motrices et corrige cet écart en réduisant la vitesse de la roue trop rapide. Pour simplifier l'étude, la roue trop rapide sera stoppée. Ci-dessous, le tableau des actions sur les roues :
Question
Q3 : Convertir l'écart toléré entre les deux roues motrices Δroue en nombre d'impulsions NΔroue.
Solution
NΔroue = Δroue / Précision = 5 / 0,338 = 14,79 => 14 ou 15 (nombre entier)
Dans l'algorithme à compléter, il a été choisi de prendre NΔroue = 15
Question
Q4 : Compléter l'algorithme ci-contre, qui illustre le principe de contrôle de la trajectoire rectiligne du robot Scooba (pour la consigne : avancer en ligne droite sur 50 cm). Les phrases suivant # en italiques sont des commentaires.