Le capteur de couleur utilise la lumière réfléchie pour détecter la couleur, la valeur de teinte, la valeur d'échelle de gris, la luminosité et la proximité d'un objet.
Le capteur de couleur VEX IQ est inclus dans le Super Kit VEX IQ et peut également être acheté ici.
Vous utilisez un robot VEX IQ de 2e génération ? Voir un aperçu des capteurs de 2e génération ici, et des informations sur le capteur optique, la version de 2e génération du capteur de couleur.
Description du capteur de couleur
Le capteur de couleur VEX IQ dispose de plusieurs modes qui lui permettent de capturer différents types d'informations provenant de son environnement. Les informations qu'il collecte sont affectées par les conditions d'éclairage de son environnement ainsi que par la distance entre le capteur et l'objet ou la surface qu'il lit.
Comment fonctionne le capteur de couleur
Le capteur de couleur peut détecter à la fois la couleur et la proximité.
Détection des couleurs
En mode luminosité, le capteur de couleur est utilisé pour détecter l'intensité de toute la lumière dans l'environnement du robot. Plus la lumière atteint le capteur de couleur lorsqu'il est actif, plus la valeur en pourcentage envoyée au cerveau du robot est élevée.
Si le pourcentage de luminosité détecté est faible ou peu fiable, la lampe du capteur de couleur peut être allumée ou le pourcentage de luminosité de la lampe peut être augmenté en utilisant la lumière définie suivante pour bloquer :
Le capteur de couleur peut signaler la couleur qu'il voit soit sous forme de valeur de couleur, soit sous forme de valeur de teinte.
Valeurs de couleur.Il existe 14 couleurs répertoriées que le capteur de couleur peut détecter. Les couleurs manquantes sur l'image du bloc sont le rouge, le vert, le bleu, le blanc et le jaune.
Valeurs de teinte.Les valeurs de teinte sont comme les valeurs de couleur mais numériques. La valeur de teinte varie de 0 à 360, comme les degrés. Les valeurs de couleur répertoriées ci-dessus ont leurs propres plages de valeurs de teinte équivalentes.
Il est important lors de la détection des couleurs et des teintes que le capteur de couleur dispose de la quantité de lumière appropriée pour le faire. Assurez-vous de tester, également appelé calibrage, votre capteur de couleur dans différents niveaux de lumière et avec la lampe réglée à différents niveaux pour déterminer quel est le réglage le plus fiable pour le capteur de couleur de votre robot.
Détection de proximité
Le capteur de couleur comprend un capteur-émetteur infrarouge. L'émetteur infrarouge émet une lumière invisible puis détecte sa réflexion. Si la majeure partie de la lumière infrarouge rebondit vers le capteur, cela indique au cerveau du robot qu'un objet est proche.
Utilisations courantes du capteur de couleur
Les capteurs de couleur sont utilisés dans de nombreuses applications technologiques où il est important d'avoir des couleurs spécifiques sur les écrans ou les produits.
Certaines utilisations courantes dans la vie quotidienne comprennent :
- Les outils d'étalonnage des couleurs vérifient si un écran numérique affiche des couleurs précises, puis ajustent les paramètres d'affichage si nécessaire. Il est important pour les graphistes et tout designer travaillant avec la couleur sur un écran numérique de pouvoir voir exactement la bonne couleur affichée. Des malentendus et un gaspillage de ressources surviennent lorsque les couleurs ne sont pas exactes.
- Les appareils photo et caméscopes utilisent des capteurs de couleur pour ajuster les paramètres en fonction des conditions d'éclairage dans lesquels ils se trouvent, afin d'améliorer leurs photos et vidéos en maximisant les niveaux de lumière et en améliorant les couleurs autrement ternes. Ces capteurs permettent également à un photographe de se concentrer sur des couleurs spécifiques de ses photos.
- Les capteurs de couleur sont parfois utilisés dans la fabrication pour vérifier rapidement si un produit a la bonne couleur avant qu'il ne soit expédié à un client. Par exemple, les fruits et légumes qui changent de couleur lorsqu'ils sont mûrs ou prêts à être consommés peuvent être numérisés pour garantir qu'ils sont de la bonne couleur à envoyer sur le marché.
Certaines utilisations courantes d'un robot VEX IQ incluent :
- Ce capteur peut être utilisé pour détecter la couleur d'un objet. Regardez cette animation pour voir un robot avancer jusqu'à ce que le capteur de couleur détecte un cube vert.
- Ce capteur peut être utilisé pour détecter et/ou suivre une ligne. Regardez cette animation pour voir un robot utiliser le capteur de couleur pour se déplacer le long d'une ligne marquée.
- Ce capteur peut détecter si un objet est proche.
Capteurs de couleurs sur un robot de compétition
N'oubliez pas qu'il est important lors de la détection de couleurs et de teintes que le capteur de couleur dispose de la quantité de lumière appropriée pour le faire. Assurez-vous de tester, également appelé calibrage, votre capteur de couleur chaque fois que vous arrivez sur un nouveau site de compétition, car différents niveaux de lumière peuvent affecter les performances de votre capteur de couleur. Testez votre projet avec la lampe réglée à différents niveaux pour déterminer quel est le réglage le plus fiable pour le capteur de couleur de votre robot.
Les informations collectées par le capteur de couleur sont utiles pour programmer un robot compétitif afin qu'il réponde à diverses conditions. Le capteur de couleur peut améliorer un robot de compétition des manières suivantes :
- Il permet au robot de détecter la couleur d'un objet proche du capteur. Ceci est utile si vous souhaitez que le robot trie des objets de couleurs différentes, se dirige vers un objet spécifiquement coloré ou détecte la couleur des objets lorsqu'ils passent devant le capteur.
- Il permet au robot de détecter la quantité de lumière réfléchie par le capteur. Cela permet à votre robot de rouler jusqu'à atteindre une ligne sur une surface, voire de suivre une ligne.
- Il permet au robot de savoir si un objet ou une surface est proche. Ceci est utile pour déterminer si une couleur détectée est une lecture provenant d'un objet proche ou potentiellement une lecture anormale d'une surface ou d'une lumière distante.
Codage du capteur de couleur en blocs
Le bloc <Found an object> est un bloc rapporteur booléen qui signale une condition comme étant vraie ou fausse. Les blocs booléens, comme le bloc <Found an object> , s'insèrent dans des blocs avec des entrées hexagonales (à six côtés) pour d'autres blocs.
Le bloc booléen <Found an object> indique « vrai » si le « vrai » si le capteur de couleur détecte un objet, et « faux » si le capteur ne le fait pas. Pour en savoir plus sur les blocs booléens, visitez l'article Aide ou l'article Formes et signification des blocs.
Dans cet exemple, le bloc <Found an object> est utilisé pour détecter la proximité avec un bloc [Attendre jusqu'à], pour faire avancer le robot jusqu'à ce qu'un objet soit détecté.
Le bloc <Color detects> est également un bloc rapporteur booléen qui signale une condition comme étant vraie ou fausse. Le bloc <Color detects> indique « vrai » si le « vrai » si le capteur de couleur détecte la couleur sélectionnée et « faux » si le capteur détecte une autre couleur. Pour en savoir plus sur les blocs booléens, visitez l'article Aide ou l'article Formes et signification des blocs.
Dans cet exemple, le bloc <Color detects> est utilisé avec un bloc [Attendre jusqu'à] pour faire avancer le robot jusqu'à ce que le capteur de couleur détecte un objet vert. Le robot arrêtera alors de rouler. Ceci est illustré dans la première vidéo ci-dessus.
Le bloc (Luminosité de) indique la quantité de lumière détectée par le capteur de couleur. Il s'agit d'un bloc rapporteur utilisé à l'intérieur d'autres blocs avec des espaces circulaires.
Le bloc (Luminosité de) indique une plage de 0 % à 100 %.
Dans cet exemple, le bloc (Luminosité de) est utilisé pour que le robot détecte et suive une ligne, comme le montre la deuxième vidéo ci-dessus.
Le bloc (Teinte de) rapporte la teinte de la couleur détectée par le capteur de couleur. Il s'agit d'un bloc rapporteur utilisé à l'intérieur d'autres blocs avec des espaces circulaires.
Le bloc (Luminosité de) indique une plage de 0 à 360.
Dans cet exemple, le bloc (Teinte de) est utilisé pour que le robot vérifie une plage de valeurs de teinte qui correspondent à la couleur rouge et pour tourner à droite de 90 degrés si ces valeurs sont détectées par le capteur. Si d'autres valeurs de teinte sont détectées, le robot tournera à gauche de 90 degrés.
Le bloc (Teinte de) peut être utile lorsqu'il est nécessaire que le robot détecte certaines couleurs lorsque les conditions de lumière ambiante peuvent être incohérentes.
Codage du capteur de couleur en Python
Remarque :Pour coder un Bumper Switch VEX IQ (1ère génération) en Python, il doit être connecté à un Brain VEX IQ (2ème génération). Le cerveau VEX IQ (1ère génération) ne prend pas en charge Python.
color_3.is_near_object()
La commande color.is_near_object indique True lorsqu'un capteur de couleur détecte un objet ou une surface proche de l'avant du capteur et False lorsqu'un capteur de couleur ne détecte objet ou une surface proche de l'avant du capteur. capteur.
Remarque :Le nom du Capteur Couleur qui apparaît dans la commande correspond au nom qui lui est donné dans la configuration.
drivetrain.drive(FORWARD) |
| Dans cet exemple, une boucleWhile avec une condition et non est utilisée avec la commande color.is_near_object pour faire avancer le robot jusqu'à ce que le capteur de couleur détecte un objet proche de l'avant de le capteur. |
couleur_3.couleur()
La commande color.color indique la couleur actuellement détectée par le capteur couleurs.
drivetrain.drive(FORWARD) |
| Dans cet exemple, une boucleWhile avec une condition not est utilisée avec la commande color.color pour faire avancer le robot jusqu'à ce que le capteur de couleur détecte un objet vert. Le robot arrêtera alors de rouler. Ceci est illustré dans la première vidéo ci-dessus. |
couleur_3.luminosité()
La commande color.brightness indique la quantité de lumière détectée par le capteur de couleur. Il indique une plage de valeurs allant de 0 % à 100 %.
color_3.set_light(25, PERCENT) |
| Dans cet exemple, la commande color.brightness est utilisée pour que le robot détecte et suive une ligne, comme le montre la deuxième vidéo ci-dessus. |
couleur_3.hue()
La commande color.hue rapporte la teinte de la couleur détectée par le capteur de couleur. Il indique une plage de valeurs de teinte allant de 0 à
brain.screen.print(color_3.hue()) |
|
Dans cet exemple, la commande color.hue est utilisée pour que le robot vérifie une plage de valeurs de teinte qui correspondent à la couleur rouge et pour tourner à droite de 90 degrés si ces valeurs sont détectées par le capteur. Si d'autres valeurs de teinte sont détectées, le robot tournera à gauche de 90 degrés. La commande color.hue peut être utile lorsqu'il est nécessaire que le robot détecte certaines couleurs lorsque les conditions de lumière ambiante peuvent être incohérentes. |