Dans ce projet, nous allons interfacer le capteur de couleur TCS3200 avec Arduino UNO. TCS3200 est un capteur de couleur qui peut détecter n'importe quel nombre de couleurs avec une bonne programmation. TCS3200 contient des matrices RVB (rouge vert bleu). Comme le montre la figure au niveau microscopique, on peut voir les cases carrées à l'intérieur de l'œil sur le capteur. Ces boîtes carrées sont des tableaux de matrice RVB. Chacune de ces boîtes contient trois capteurs, un pour détecter l'intensité de la lumière ROUGE, un pour détecter l'intensité de la lumière VERTE et le dernier pour détecter l'intensité de la lumière BLEUE.
Chacun des réseaux de capteurs de ces trois réseaux est sélectionné séparément en fonction des besoins. Par conséquent, il est connu sous le nom de capteur programmable. Le module peut être présenté pour détecter la couleur particulière et laisser les autres. Il contient des filtres à cette fin de sélection. Il existe un quatrième mode qui n'est pas un mode de filtre. En l'absence de mode de filtre, le capteur détecte la lumière blanche.
Composants requis
Matériel: ARDUINO UNO, alimentation (5v), LED, JHD_162ALCD (16 * 2LCD), capteur de couleur TCS3200.
Logiciel: ARDUINO IDE (ARDUINO nightly).
Schéma de circuit et explication de fonctionnement
Dans l'écran LCD 16x2, il y a 16 broches sur tout s'il y a un rétro-éclairage, s'il n'y a pas de rétro-éclairage, il y aura 14 broches. On peut alimenter ou laisser les broches du rétroéclairage. Or, dans les 14 broches, il y a 8 broches de données (7-14 ou D0-D7), 2 broches d'alimentation en énergie (1 et 2 ou VSS et VDD ou GND et + 5v), 3 ème broches de la commande de contraste (VEE-contrôle l'épaisseur des caractères doivent être illustré) et 3 broches de commande (RS & RW & E)
Dans le circuit, vous pouvez observer que je n'ai pris que deux broches de contrôle. Le bit de contraste et READ / WRITE ne sont pas souvent utilisés afin qu'ils puissent être court-circuités à la masse. Cela met l'écran LCD en mode de contraste et de lecture le plus élevé. Nous avons juste besoin de contrôler les broches ENABLE et RS pour envoyer des caractères et des données en conséquence.
Les connexions effectuées pour l'écran LCD sont indiquées ci-dessous:
PIN1 ou VSS à la terre
Alimentation PIN2 ou VDD ou VCC à + 5v
PIN3 ou VEE à la masse (donne le meilleur contraste pour un débutant)
PIN4 ou RS (sélection de registre) à PIN8 d'ARDUINO UNO
PIN5 ou RW (lecture / écriture) à la terre (met l'écran LCD en mode lecture facilite la communication pour l'utilisateur)
PIN6 ou E (Activer) à PIN9 d'ARDUINO UNO
PIN11 ou D4 à PIN7 d'ARDUINO UNO
PIN12 ou D5 à PIN11 d'ARDUINO UNO
PIN13 ou D6 à PIN12 d'ARDUINO UNO
PIN14 ou D7 à PIN13 d'ARDUINO UNO
Les connexions effectuées pour le capteur de couleur sont données ci-dessous:
VDD à + 5V
GND à GROUND
OE (sortie activée) à GND
S0 à UNO broche 2
S1 à UNO broche 3
S2 à UNO broche 4
S3 à UNO broche 5
OUT vers UNO pin 10
La couleur qui doit être détectée par le capteur de couleur est sélectionnée par deux broches S2 et S3. Avec ces deux broches de commande logique, nous pouvons dire au capteur quelle intensité de lumière de couleur doit être mesurée.
Disons que nous devons sentir l'intensité de la couleur ROUGE dont nous avons besoin pour définir les deux broches sur BAS. Une fois que cela est fait, le capteur détecte l'intensité et envoie la valeur au système de contrôle à l'intérieur du module.
S2 |
S3 |
Type de photodiode |
L |
L |
rouge |
L |
H |
Bleu |
H |
L |
Effacer (sans filtre) |
H |
H |
vert |
Le système de contrôle à l'intérieur du module est illustré sur la figure. L'intensité lumineuse mesurée par le réseau est envoyée au convertisseur courant-fréquence. Ce qu'il fait, c'est qu'il émet une onde carrée dont la fréquence est en relation avec le courant envoyé par ARRAY.
Nous avons donc un système qui émet une onde carrée dont la fréquence dépend de l'intensité lumineuse de la couleur qui est sélectionnée par S2 et S3.
La fréquence du signal envoyé par le module peut être modulée en fonction de l'utilisation. Nous pouvons changer la bande passante de fréquence du signal de sortie.
S0 |
S1 |
Mise à l'échelle de la fréquence de sortie (f 0) |
L |
L |
Éteindre |
L |
H |
2% |
H |
L |
20% |
H |
H |
100% |
La mise à l'échelle de fréquence se fait par deux bits S0 et S1. Pour plus de commodité, nous allons limiter la mise à l'échelle de fréquence à 20%. Ceci est fait en réglant S0 sur haut et S1 sur LOW. Cette fonctionnalité est pratique lorsque nous utilisons le module sur un système avec une horloge basse.
La sensibilité de la matrice à la couleur est indiquée dans la figure ci-dessous.
Bien que différentes couleurs aient une sensibilité différente, cela ne fera pas beaucoup de différence pour une utilisation normale.
L'UNO envoie ici un signal au module pour détecter les couleurs et les données reçues par le module sont affichées sur l'écran LCD 16 * 2 qui lui est connecté.
L'UNO détecte trois intensités de couleur séparément et les affiche sur l'écran LCD.
L'Uno peut détecter la durée d'impulsion du signal par laquelle nous pouvons obtenir la fréquence de l'onde carrée envoyée par le module. Avec la fréquence à portée de main, nous pouvons la faire correspondre avec la couleur du capteur.
|
Comme dans la condition ci-dessus, l'UNO lit la durée de l'impulsion sur la 10 e broche de UNO et la stocke dans un entier «fréquence».
Nous allons faire cela pour les trois couleurs pour la reconnaissance des couleurs. Les trois intensités de couleur sont indiquées par des fréquences sur un écran LCD 16x2.