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

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 61 : Ligne 61 :
  
 
=== Désactivé et remapper le senseur ===
 
=== Désactivé et remapper le senseur ===
Many applications do not require all six reflectance sensors, and you might want additional I/O lines for other things (e.g. obstacle detectors). In such cases, you can disable specific sensors and free up their associated I/O lines. The array PCB has six pairs of through holes, each of which corresponds to a different sensor. The order of the pairs matches the order of the sensors. When viewing the component side of the PCB, the right hole of each pair connects to an Arduino I/O line and the left hole connects to sensor. There is a single trace on the component side of the PCB between the two holes of each pair, and this trace can be cut to disable the sensor and free up the I/O line. The proper place to cut is marked on the silkscreen by carets.
+
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.
  
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-51.jpg|400px|couper la trace pour remapper}}
 
{{POLImage|Pololu-Zumo-Shield-Arduino-ajouter-detecteur-ligne-51.jpg|400px|couper la trace pour remapper}}
  
For example, if you want to use your Zumo for solving a line maze, you can likely get by with just four sensors: you can use the middle two sensors for tracking the line and the outer two sensors for detecting intersections. To free up the I/O lines associated with the other two sensors, you could make the following modification:
+
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:
  
 
{{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}}

Version du 9 avril 2017 à 13:31

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

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:

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

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.

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:

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

Remapper le senseur

Cliquer l'image pour l'agrandir

To configure the ZumoReflectanceSensorArray library to use this remapped configuration, call init with these arguments:

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

Or, if you are not using an I/O line to control the IR emitters:

byte pins[] = {4, A5, 11, A0, A2, 5};
reflectanceSensors.init(pins, 6, 2000, QTR_NO_EMITTER_PIN);  // 2000 = timeout after 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)