TCS3200 TCS230 Capteur de couleur

65,00 DH

Disponibilité:

104 en stock

UGS : 0176-A Catégories : ,

Description

Capteur de couleur TCS230 TCS3200

Le capteur de couleur TCS230/TCS3200 est un module de détection de couleur basé sur une matrice de photodiodes 8×8 avec des filtres rouges, verts, bleus et clairs, permettant de mesurer une gamme pratiquement illimitée de couleurs visibles. Le capteur convertit la lumière en une fréquence proportionnelle à l’intensité lumineuse, ce qui permet une détection précise des couleurs.

Caractéristiques en détails

  • Tension de fonctionnement : 2.7V à 5.5V
  • Interface : Digital TTL
  • Conversion haute résolution de l’intensité lumineuse en fréquence
  • Programmable pour différentes échelles de fréquence de sortie
  • Fonction de mise hors tension
  • Température de fonctionnement : -40°C à 85°C
  • Taille : 28.4 x 28.4 mm

Fonctionnement

Le TCS3200 utilise des photodiodes avec des filtres de couleurs pour détecter l’intensité des couleurs rouge, vert et bleu. En sélectionnant les photodiodes correspondantes via les broches S2 et S3, la fréquence de sortie proportionnelle à l’intensité lumineuse de chaque couleur peut être mesurée.

Applications

  • Robots de tri des couleurs
  • Lecture de bandes de test
  • Détection et correspondance des couleurs
  • Systèmes de calibrage de la lumière ambiante

Brochage

  • VCC : Alimentation (2.7V à 5.5V)
  • GND : Masse
  • S0, S1 : Sélection de l’échelle de fréquence de sortie
  • S2, S3 : Sélection du type de photodiode
  • OUT : Sortie de fréquence
  • OE : Activer la sortie (actif bas)

Comment l’utiliser

Le capteur TCS3200 est utilisé pour mesurer l’intensité des couleurs en utilisant les sorties de fréquence proportionnelle à la lumière incidente sur les photodiodes. En connectant les broches du capteur à un microcontrôleur, on peut lire les fréquences et déterminer les valeurs des couleurs.

Comment l’utiliser avec Arduino:

Code Arduino de base

#include <Wire.h>


// Définir les broches du capteur
#define S0 2
#define S1 3
#define S2 4
#define S3 5
#define sensorOut 6


void setup() {
  Serial.begin(9600); // Initialiser la communication série à 9600 bauds
  pinMode(S0, OUTPUT); // Définir S0 comme sortie
  pinMode(S1, OUTPUT); // Définir S1 comme sortie
  pinMode(S2, OUTPUT); // Définir S2 comme sortie
  pinMode(S3, OUTPUT); // Définir S3 comme sortie
  pinMode(sensorOut, INPUT); // Définir sensorOut comme entrée


  // Configurer l'échelle de fréquence à 20%
  digitalWrite(S0, HIGH);
  digitalWrite(S1, LOW);
}


void loop() {
  // Lire la valeur de la couleur rouge
  digitalWrite(S2, LOW); // Activer les photodiodes rouges
  digitalWrite(S3, LOW);
  int redFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le rouge
  Serial.print("Red: ");
  Serial.print(redFrequency);
  Serial.print("  ");


  // Lire la valeur de la couleur verte
  digitalWrite(S2, HIGH); // Activer les photodiodes vertes
  digitalWrite(S3, HIGH);
  int greenFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le vert
  Serial.print("Green: ");
  Serial.print(greenFrequency);
  Serial.print("  ");


  // Lire la valeur de la couleur bleue
  digitalWrite(S2, LOW); // Activer les photodiodes bleues
  digitalWrite(S3, HIGH);
  int blueFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le bleu
  Serial.print("Blue: ");
  Serial.println(blueFrequency);


  delay(500); // Attendre 500 ms avant la prochaine lecture
}
But du code

Ce code initialise le capteur TCS3200 et lit les valeurs de fréquence correspondant aux couleurs rouge, verte et bleue, affichant les résultats dans le Moniteur Série de l’Arduino.

Composants nécessaires pour le code de base
  • Arduino Uno
  • Capteur de couleur TCS3200
  • Fils de connexion
Explication détaillée du code
  1. Inclusion des bibliothèques : Ce code n’inclut pas de bibliothèques supplémentaires car il utilise des fonctions de base d’Arduino.
  2. Définition des broches : Les broches S0, S1, S2, S3 et sensorOut sont définies pour la communication avec le capteur.
  3. Initialisation dans setup() :
    • Serial.begin(9600); : Initialise la communication série à 9600 bauds.
    • pinMode(S0, OUTPUT); pinMode(S1, OUTPUT); pinMode(S2, OUTPUT); pinMode(S3, OUTPUT); : Configure les broches en sortie.
    • pinMode(sensorOut, INPUT); : Configure la broche de sortie du capteur en entrée.
    • digitalWrite(S0, HIGH); digitalWrite(S1, LOW); : Configure l’échelle de fréquence à 20%.
  4. Boucle principale loop() :
    • digitalWrite(S2, LOW); digitalWrite(S3, LOW); : Sélectionne les photodiodes rouges.
    • int redFrequency = pulseIn(sensorOut, LOW); : Lit la fréquence de sortie pour la couleur rouge.
    • Serial.print("Red: "); Serial.print(redFrequency); : Affiche la valeur rouge.
    • Répète le processus pour les couleurs verte et bleue.
Brochage détaillé
  • VCC : Connecté au +5V de l’Arduino
  • GND : Connecté à la masse (GND) de l’Arduino
  • S0 : Connecté à la broche 2 de l’Arduino
  • S1 : Connecté à la broche 3 de l’Arduino
  • S2 : Connecté à la broche 4 de l’Arduino
  • S3 : Connecté à la broche 5 de l’Arduino
  • OUT : Connecté à la broche 6 de l’Arduino

Code Arduino avancé

#include <Wire.h>
#include <LiquidCrystal_I2C.h>


// Définir les broches du capteur
#define S0 2
#define S1 3
#define S2 4
#define S3 5
#define sensorOut 6


// Initialiser l'écran LCD I2C à l'adresse 0x27 avec 16 colonnes et 2 lignes
LiquidCrystal_I2C lcd(0x27, 16, 2);


void setup() {
  Serial.begin(9600); // Initialiser la communication série
  lcd.begin(); // Initialiser l'écran LCD
  lcd.backlight(); // Activer le rétroéclairage de l'écran LCD


  pinMode(S0, OUTPUT); // Définir S0 comme sortie
  pinMode(S1, OUTPUT); // Définir S1 comme sortie
  pinMode(S2, OUTPUT); // Définir S2 comme sortie
  pinMode(S3, OUTPUT); // Définir S3 comme sortie
  pinMode(sensorOut, INPUT); // Définir sensorOut comme entrée


  // Configurer l'échelle de fréquence à 20%
  digitalWrite(S0, HIGH);
  digitalWrite(S1, LOW);
}


void loop() {
  // Lire la valeur de la couleur rouge
  digitalWrite(S2, LOW); // Activer les photodiodes rouges
  digitalWrite(S3, LOW);
  int redFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le rouge


  // Lire la valeur de la couleur verte
  digitalWrite(S2, HIGH); // Activer les photodiodes vertes
  digitalWrite(S3, HIGH);
  int greenFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le vert


  // Lire la valeur de la couleur bleue
  digitalWrite(S2, LOW); // Activer les photodiodes bleues
  digitalWrite(S3, HIGH);
  int blueFrequency = pulseIn(sensorOut, LOW); // Lire la fréquence de sortie pour le bleu


  // Afficher les valeurs sur l'écran LCD
  lcd.setCursor(0, 0);
  lcd.print("R:");
  lcd.print(redFrequency);
  lcd.print(" G:");
  lcd.print(greenFrequency);


  lcd.setCursor(0, 1);
  lcd.print("B:");
  lcd.print(blueFrequency);


  delay(500); // Attendre 500 ms avant la prochaine lecture
}
But du code

Ce code utilise le capteur TCS3200 pour lire les valeurs de fréquence des couleurs rouge, verte et bleue, et affiche les résultats sur un écran LCD I2C 1602.

Composants nécessaires pour le code avancé
  • Arduino Uno
  • Capteur de couleur TCS3200
  • Écran LCD I2C 1602
  • Fils de connexion
Explication détaillée du code
  1. Inclusion des bibliothèques :
    • #include <Wire.h> : Inclut la bibliothèque Wire pour la communication I2C.
    • #include <LiquidCrystal_I2C.h> : Inclut la bibliothèque LiquidCrystal_I2C pour contrôler l’écran LCD.
  2. Définition des broches : Les broches S0, S1, S2, S3 et sensorOut sont définies pour la communication avec le capteur.
  3. Initialisation dans setup() :
    • lcd.begin(); lcd.backlight(); : Initialise et active le rétroéclairage de l’écran LCD.
    • pinMode(S0, OUTPUT); pinMode(S1, OUTPUT); pinMode(S2, OUTPUT); pinMode(S3, OUTPUT); : Configure les broches en sortie.
    • pinMode(sensorOut, INPUT); : Configure la broche de sortie du capteur en entrée.
    • digitalWrite(S0, HIGH); digitalWrite(S1, LOW); : Configure l’échelle de fréquence à 20%.
  4. Boucle principale loop() :
    • Sélectionne les photodiodes pour les couleurs rouge, verte et bleue, lit les fréquences, puis affiche les valeurs sur l’écran LCD.
Brochage détaillé
  • VCC : Connecté au +5V de l’Arduino
  • GND : Connecté à la masse (GND) de l’Arduino
  • S0 : Connecté à la broche 2 de l’Arduino
  • S1 : Connecté à la broche 3 de l’Arduino
  • S2 : Connecté à la broche 4 de l’Arduino
  • S3 : Connecté à la broche 5 de l’Arduino
  • OUT : Connecté à la broche 6 de l’Arduino
  • LCD SDA : Connecté à la broche A4 de l’Arduino
  • LCD SCL : Connecté à la broche A5 de l’Arduino

Installation de bibliothèques

  1. Ouvrez l’IDE Arduino.
  2. Allez dans Sketch -> Include Library -> Manage Libraries…
  3. Recherchez “LiquidCrystal I2C” et installez la bibliothèque “LiquidCrystal I2C by Frank de Brabander”.

Mots clés: recognition, color, sensor, detector Capteur de lumière, BH1750, Arduino, I2C, Luminosité, Lux, Sensor, Light sensor.