Différences entre versions de « Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(2 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{Pololu-Zumo-Shield-Arduino-NAV}}
 
{{Pololu-Zumo-Shield-Arduino-NAV}}
  
{{traduction}}
 
 
== Présentation ==
 
== Présentation ==
 
Le réseau de capteur infrarouge Zumo (suiveur de ligne) {{polpl|1419}} permet d'ajouter facilement la fonctionnalité de suiveur de ligne ou détection de bordure sur le robot Zumo. Il est conçu pour faciliter le montage sur la zone d'extension à l'avant du Zumo Shield et inclus tout le nécessaire pour réaliser l'installation. Notez que le réseau de capteur infrarouge n'est pas inclus avec le Shield Zumo ou le kit Robot Zumo. Il est inclus avec le Robot Zumo mais vous pouvez utiliser votre Robot Zumo sans ce senseur. Pour plus d'information concernant les fonctionnalités du réseau de capteur infrarouge, son fonctionnement et schéma, vous pouvez consulter sa fiche produit {{polpl|1419}}. Cette section est  dévolue à l'assemblage du senseur et son utilisation sur le Shield Zumo.
 
Le réseau de capteur infrarouge Zumo (suiveur de ligne) {{polpl|1419}} permet d'ajouter facilement la fonctionnalité de suiveur de ligne ou détection de bordure sur le robot Zumo. Il est conçu pour faciliter le montage sur la zone d'extension à l'avant du Zumo Shield et inclus tout le nécessaire pour réaliser l'installation. Notez que le réseau de capteur infrarouge n'est pas inclus avec le Shield Zumo ou le kit Robot Zumo. Il est inclus avec le Robot Zumo mais vous pouvez utiliser votre Robot Zumo sans ce senseur. Pour plus d'information concernant les fonctionnalités du réseau de capteur infrarouge, son fonctionnement et schéma, vous pouvez consulter sa fiche produit {{polpl|1419}}. Cette section est  dévolue à l'assemblage du senseur et son utilisation sur le Shield Zumo.
Ligne 69 : Ligne 68 :
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-52.jpg|400px|couper la trace pour remapper}}
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-52.jpg|400px|couper la trace pour remapper}}
  
Now you effectively have a four-sensor array and analog pins A2 and A3 are available for general-purpose use. To configure the ZumoReflectanceSensorArray library to use this new configuration, call init with these arguments:
+
Voilà, vous avez maintenant un réseau de capteur infrarouge avec quatre-senseurs effectifs libérant les broches A2 et A3 sont disponibles pour d'autres utilisations. Pour configurer la bibliothèque ZumoReflectanceSensorArray avec cette nouvelle configuration, appelez la fonction {{fname|init}} avec les paramètres suivants:
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
Ligne 76 : Ligne 75 :
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Alternatively, you could make two ZumoReflectanceSensorArray objects, one for the two exterior sensors and another for the two interior sensors, which might allow for cleaner code, but the drawback is that you can no longer read all four sensors in parallel with this approach.
+
Aternativement, vous pouvez déclarer deux objets {{fname|ZumoReflectanceSensorArray}}, un des objets pour les deux senseurs extérieurs et un autre pour les deux senseurs intérieurs, cela permet de rédiger un code plus propre mais avec l'inconvénient qu'il n'est alors plus possible de lire les quatres senseur en parallèle.
  
If you later decide you want to re-enable those sensors, you can connect across the cut trace with a wire, or you can use a wire to remap the sensor to a different pin. The following example shows how you could re-enable the A2 sensor and remap the A3 sensor to pin A5 instead:
+
Si, plus tard, vous décidez de réactiver ces senseurs, vous pouvez connecter un fils pour remplacer la trace coupée -ou- remappée le senseur vers une broche différente. l'exemple suivant montre comment ré-activer le senseur A2 et remapper le senseur de A3 vers A5:
  
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-53.jpg|400px|Remapper le senseur}}
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-53.jpg|400px|Remapper le senseur}}
  
To configure the ZumoReflectanceSensorArray library to use this remapped configuration, call init with these arguments:
+
Pour configurer la bibliothèque ZumoReflectanceSensorArray avec ce nouveau mapping, appelez la fonction {{fname|init}} avec les arguments suivants:
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
Ligne 89 : Ligne 88 :
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Or, if you are not using an I/O line to control the IR emitters:
+
Ou, si vous ne désirez pas utiliser la ligne de contrôle des LEDs infrarouges:
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
byte pins[] = {4, A5, 11, A0, A2, 5};
 
byte pins[] = {4, A5, 11, A0, A2, 5};
reflectanceSensors.init(pins, 6, 2000, QTR_NO_EMITTER_PIN);  // 2000 = timeout after 2 ms
+
reflectanceSensors.init(pins, 6, 2000, QTR_NO_EMITTER_PIN);  // 2000 = timeout après 2 ms
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
{{Pololu-Zumo-Shield-Arduino-TRAILER}}
 
{{Pololu-Zumo-Shield-Arduino-TRAILER}}

Version actuelle datée du 9 avril 2017 à 13:55

Présentation

Le réseau de capteur infrarouge Zumo (suiveur de ligne) lien pololu permet d'ajouter facilement la fonctionnalité de suiveur de ligne ou détection de bordure sur le robot Zumo. Il est conçu pour faciliter le montage sur la zone d'extension à l'avant du Zumo Shield et inclus tout le nécessaire pour réaliser l'installation. Notez que le réseau de capteur infrarouge n'est pas inclus avec le Shield Zumo ou le kit Robot Zumo. Il est inclus avec le Robot Zumo mais vous pouvez utiliser votre Robot Zumo sans ce senseur. Pour plus d'information concernant les fonctionnalités du réseau de capteur infrarouge, son fonctionnement et schéma, vous pouvez consulter sa fiche produit lien pololu. Cette section est dévolue à l'assemblage du senseur et son utilisation sur le Shield Zumo.

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-10.jpg

Détecteur de ligne

Cliquer l'image pour l'agrandir

Assemblage du senseur

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-20.jpg

Détecteur de ligne - vue des éléments

Cliquer l'image pour l'agrandir

Le réseau de senseur infrarouge Zumo est livré avec tous les composants dont vous aurez besoin pour le connecter sur le shield Zumo:

  • La carte avec le réseau de senseur monté en surface
  • Connecteur mâle 2×12 - empattement de 2.54mm (sera soudé sur la carte de senseur)
  • Connecteur femelle 2×12 - empattement 2.54mm (sera soudé sur le shield Zumo)
  • Connecteur mâle/pinHeader 1×3 - empattement 2.54mm (optionnel, à souder sur la carte du senseur)
  • Connecteur mâle 1×3 angle droit - empattement 2.54mm (optionnel, à souder sur la carte du senseur)
  • Un cavalier bleu

Avant de souder le connecteur mâle principal, nous vous recommandons de souder l'un des deux connecteurs mâles 1×3 dans l'ensemble de 3 trous sur bord de la carte. Cette étape optionnelle est recommandée parce qu'elle permet un contrôle dynamique des LEDS infrarouges (et LEDs rouges). En contrôlant l'allumage/extinction de ces LEDs, vous pouvez économiser de l'énergie et rendre votre programme plus facile à déboguer. Si vous sautez cette étape, les émetteurs InfraRouge seront activer à chaque fois que le senseur sera branché sur le Zumo et que le Zumo est en marche. Nous recommandons l'usage d'un connecteur coudé monté comme indiqué sur l'image ci-dessous. Utiliser un connecteur mâle droit fonctionnera également si vous n'avez rien soudé sur l'avant du Shield Zumo (sur la zone d'extension à l'avant du shield). Si vous placez le connecteur droit, assurez-vous qu'il n'interférera pas avec les senseurs que vous placerez sur l'avant du shield Zumo (ex: en l'installant du mauvais côté ou en installant le connecteur angle-droit dans la mauvaise orientation)! Si vous comptez installer un connecteur 3 broches, il est plus facile de l'installer avec le grand connecteur 24-broches.

Pour activer le contrôle dynamique des émetteurs infrarouges, placez le connecteur 3 broches et utiliser le cavalier inclus pour connecter la broche LEDON sur la broche digitale appropriée. Si vous utilisez un Arduino Uno (ou plus ancien) alors vous devriez placer le cavalier pour connecter LEDON vers la broche digital 2 (la position contre le bord de la carte); si vous utilisez un Arduino Leonardo ou un A-Star 32U4 Prime, vous devriez placer le cavalier pour connecter la broche LEDON sur la broche analogique 4 (A4).

Pololu-Zumo-Shield-Arduino-assembler-shield-21.jpg

Détecteur de ligne - assemblé

Cliquer l'image pour l'agrandir

Le connecteur d'extension 2×12 mâle devrait être monté sur la carte du réseau de capteur (sur le côté opposé à celui des composants). Assurez-vous que la partie la plus courte des broches soient celui placé sur la carte d'extension (pas le côté le plus long!). Notez que seules 12 des 24 broches sont utilisées par le réseau des capteurs; ces broches sont identifiées par un cercle sur la sérigraphie sur le côté de la carte portant les composants CMS. Il est néanmoins recommandé de souder les 24 broches.

souder le connecter sur le Zumo Shield

Le connecteur femelle 2×12 inclus avec le réseau de capteur infrarouge devrait être souder sur la zone d'extension à l'avant du shield Zumo, centré sur la zone d'extension et prenant place contre le châssis zumo (les lignes 2 et 3). Même si nous recommandons de souder la totalité des 24 broches du shield, seules 12 broches sont nécessaires pour souder pour utiliser le senseur (voyez ci-dessous pour plus d'information sur les broches utilisée).

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-30.jpg

Soudez le connecteur 2x12 femelle sur le shield (vue par dessous) pour utiliser le détecteur de ligne sur le Zumo

Cliquer l'image pour l'agrandir

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-31.jpg

Connecteur femelle 2x12 soudé sur le Zumo Shield

Cliquer l'image pour l'agrandir

Avec le connecteur femelle en place, le réseau de senseur (assemblé) peut être branché directement sur le shield Zumo.

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-32.jpg

Placement du détecteur de ligne (sans lame sumo)

Cliquer l'image pour l'agrandir

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-33.jpg

Placement du détecteur de ligne (avec lame sumo)

Cliquer l'image pour l'agrandir

Broches du senseur

Le réseau de capteur infrarouge du Zumo utilise 12 broches du connecteur 2x12 pour obtenir l'alimentation et les connections I/O (entrée/sortie) nécessaires. Ces broches sont repérées sur la sérigraphique à l'aide d'un cercle:

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-40.jpg

Brochage du senseur

Cliquer l'image pour l'agrandir

Les entrées/sorties utilisés par défauts sur le réseau de senseur sont des broches qui ne sont pas utilisés par le shield Zumo. Le shield prévoit une broche digitale, une pour chaque senseur (5, A2, A0, 11, A3 et 4), et si vous utilisez le cavalier LEDON alors une entrée/sortie additionnelle est utilisée (soit A4 ou 2). Pour configurer la bibliothèque ZumoReflectanceSensorArray avec la configuration par défaut, appelez simplement la fonction init sans argument:

reflectanceSensors.init();

Lorsque vous souderez le connecteur mâle 2×12 sur le senseur, vous aurez uniquement besoin de souder ces broches entourées. Si vous soudez les 24 broches, le réseau de senseur sera connecté sur les broches additionnelles du shield Zumo (sur la zone d'extension à l'avant)... même si le réseau ne fait rien avec ces broches dans sa configuration par défaut:

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-50.jpg

Brochage du senseur

Cliquer l'image pour l'agrandir

Désactivé et remapper le senseur

De nombreuses applications ne requière pas l'utilisation des 6 capteurs infrarouges, ce qui vous permettrait de libérer des entrées/sorties pour votre projet (ex: détecteurs d'obstacle). Dans pareil cas,, vous pouvez désactiver la ligne du senseur et libérer la ligne d'entrée/sortie associée. La carte du réseau de senseur dispose de 6 paires de trous correspondant aux différents senseurs. L'ordre des paires correspond à l'ordre des senseurs. En regardant le côté de la carte avec les composants, le trou à droite de la paire est connecté vers Arduino et le trou gauche est connecté sur le senseur. Il y a une simple trace reliant les deux trous de chaque paire sur la face composant -ET- cette trace peut être coupée pour libérer la ligne d'entrée/sortie. L'emplacement correct pour sectionner la piste est indiqué à l'aide d'une croix sur la sérigraphie.

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-51.jpg

couper la trace pour remapper

Cliquer l'image pour l'agrandir

Par exemple, si vous désirez utiliser votre Zumo pour résoudre un labyrinthe à ligne (line maze), vous pouvez atteindre le résultat avec seulement 4 senseurs: vous pouvez utiliser les deux senseurs du milieu pour traquer la ligne et les deux senseurs extérieurs pour détecter les intersections. Cela permet de libérer les lignes des deux autres senseurs en faisant les modifications suivantes:

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-52.jpg

couper la trace pour remapper

Cliquer l'image pour l'agrandir

Voilà, vous avez maintenant un réseau de capteur infrarouge avec quatre-senseurs effectifs libérant les broches A2 et A3 sont disponibles pour d'autres utilisations. Pour configurer la bibliothèque ZumoReflectanceSensorArray avec cette nouvelle configuration, appelez la fonction init avec les paramètres suivants:

byte pins[] = {4, 11, A0, 5};
reflectanceSensors.init(pins, 4);

Aternativement, vous pouvez déclarer deux objets ZumoReflectanceSensorArray, un des objets pour les deux senseurs extérieurs et un autre pour les deux senseurs intérieurs, cela permet de rédiger un code plus propre mais avec l'inconvénient qu'il n'est alors plus possible de lire les quatres senseur en parallèle.

Si, plus tard, vous décidez de réactiver ces senseurs, vous pouvez connecter un fils pour remplacer la trace coupée -ou- remappée le senseur vers une broche différente. l'exemple suivant montre comment ré-activer le senseur A2 et remapper le senseur de A3 vers A5:

Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-53.jpg

Remapper le senseur

Cliquer l'image pour l'agrandir

Pour configurer la bibliothèque ZumoReflectanceSensorArray avec ce nouveau mapping, appelez la fonction init avec les arguments suivants:

byte pins[] = {4, A5, 11, A0, A2, 5};
reflectanceSensors.init(pins, 6);

Ou, si vous ne désirez pas utiliser la ligne de contrôle des LEDs infrarouges:

byte pins[] = {4, A5, 11, A0, A2, 5};
reflectanceSensors.init(pins, 6, 2000, QTR_NO_EMITTER_PIN);  // 2000 = timeout après 2 ms

Basé sur "Zumo Shield for Arduino" de Pololu (www.pololu.com/docs/0J57) - Traduit en Français par shop.mchobby.be CC-BY-SA pour la traduction
Toute copie doit contenir ce crédit, lien vers cette page et la section "crédit de traduction". Traduit avec l'autorisation expresse de Pololu (www.pololu.com)

Based on "Zumo Shield for Arduino" from Pololu (www.pololu.com/docs/0J57) - Translated to French by shop.mchobby.be CC-BY-SA for the translation
Copies must includes this credit, link to this page and the section "crédit de traduction" (translation credit). Translated with the Pololu's authorization (www.pololu.com)