Projet 3 : Capteur de Suivi de Ligne

1. Description
Le capteur de suivi est en fait un capteur infrarouge. Le composant utilisé ici est le tube infrarouge TCRT5000. Son principe de fonctionnement est d’utiliser la réflectivité différente de la lumière infrarouge selon les couleurs, puis de convertir la puissance du signal réfléchi en un signal courant.
Lors du processus de détection, le noir est actif au niveau HAUT tandis que le blanc est actif au niveau BAS. La hauteur de détection est de 0 à 3 cm.
Le module de suivi de ligne 3 canaux Keyestudio intègre 3 ensembles de tubes infrarouges TCRT5000 sur une carte, ce qui est plus pratique pour le câblage et le contrôle.
En tournant le potentiomètre réglable sur le capteur, on peut ajuster la sensibilité de détection du capteur.
2. Spécifications
Tension de fonctionnement : 3,3-5V (DC)
Interface : 5PIN
Signal de sortie : Signal numérique
Hauteur de détection : 0-3 cm

Remarque : Avant le test, tournez le potentiomètre sur le capteur pour ajuster la sensibilité de détection. La sensibilité est optimale lorsque la LED est réglée à un seuil entre ON et OFF.
3. Composants
Carte de développement *1 |
Driver moteur 8833 *1 |
Module LED rouge *1 |
Capteur de suivi de ligne *1 |
|---|---|---|---|
|
|
|
|
Fil Dupont 5P *1 |
Câble USB *1 |
Fil Dupont 3P *1 |
|
|
|
|
4. Schéma de câblage

G, V, S1, S2 et S3 du capteur de suivi de ligne sont connectés respectivement à G (GND), V (VCC), D11, D7 et D8 de la carte d’extension du capteur.
5. Code de test
//****************************************************************************
/*
keyestudio 4wd BT Car
lesson 3.1
Line Track sensor
http://www.keyestudio.com
*/
int L_pin = 11; //broches du capteur de suivi de ligne gauche
int M_pin = 7; //broches du capteur de suivi de ligne milieu
int R_pin = 8; //broches du capteur de suivi de ligne droite
int val_L,val_R,val_M;// définir la variable valeur des trois capteurs
void setup()
{
Serial.begin(9600); // initialiser la communication série à 9600 bits par seconde
pinMode(L_pin,INPUT); // définir L_pin comme entrée
pinMode(M_pin,INPUT); // définir M_pin comme entrée
pinMode(R_pin,INPUT); // définir R_pin comme entrée
}
void loop()
{
val_L = digitalRead(L_pin);//lire L_pin :
val_R = digitalRead(R_pin);//lire R_pin :
val_M = digitalRead(M_pin);//lire M_pin :
Serial.print("left:");
Serial.print(val_L);
Serial.print(" middle:");
Serial.print(val_M);
Serial.print(" right:");
Serial.println(val_R);
delay(500);// délai entre les lectures pour la stabilité
}
//****************************************************************************
6. Résultat du test
Après avoir téléchargé avec succès le code sur la carte V4.0, connectez les fils selon le schéma de câblage, et utilisez un câble USB pour connecter l’ordinateur afin d’alimenter la carte.
Après la mise sous tension, ouvrez le moniteur série et vous verrez l’état des trois capteurs de suivi de ligne. Lorsqu’aucun signal n’est reçu, la valeur est 1. Si l’on couvre le capteur avec un papier blanc, la valeur sera 0.


7. Explication du code
Serial.begin(9600) - Initialise le port série, définit la vitesse de transmission à 9600 bauds
pinMode - Définit la broche en mode entrée ou sortie
digitalRead - Lit l’état de la broche, généralement niveau HAUT ou BAS
8. Pratique d’extension
Après avoir compris son principe de fonctionnement, vous pouvez connecter une LED à D9 afin de contrôler la LED avec ce capteur.

/*
keyestudio 4wd BT Car
lesson 3.2
Line Track Sensor LED
http://www.keyestudio.com
*/
int L_pin = 11; //broches du capteur de suivi de ligne gauche
int M_pin = 7; //broches du capteur de suivi de ligne central
int R_pin = 8; //broches du capteur de suivi de ligne droit
int val_L,val_R,val_M;// définir les variables des trois capteurs
void setup()
{
Serial.begin(9600); // initialiser la communication série à 9600 bits par seconde
pinMode(L_pin,INPUT); // configurer L_pin en entrée
pinMode(M_pin,INPUT); // configurer M_pin en entrée
pinMode(R_pin,INPUT); // configurer R_pin en entrée
pinMode(9, OUTPUT);
}
void loop()
{
val_L = digitalRead(L_pin);//lire L_pin :
val_R = digitalRead(R_pin);//lire R_pin :
val_M = digitalRead(M_pin);//lire M_pin :
Serial.print("left:");
Serial.print(val_L);
Serial.print(" middle:");
Serial.print(val_M);
Serial.print(" right:");
Serial.println(val_R);
delay(500);// délai entre les lectures pour la stabilité
if ((val_L == LOW) || (val_M == LOW) || (val_R == LOW))// si un des capteurs de suivi de ligne détecte un signal
{
Serial.println("HIGH");
digitalWrite(9, HIGH);//LED est allumée
}
else// si aucun capteur de suivi de ligne ne détecte de signal
{
Serial.println("LOW");
digitalWrite(9, LOW);//LED est éteinte
}
}
//****************************************************************************
Après avoir téléchargé avec succès le code sur la carte V4.0, connectez les câblages selon le schéma de câblage, puis utilisez un câble USB pour connecter l’ordinateur et alimenter la carte.
Après la mise sous tension, approchez un papier du capteur, vous verrez alors la LED s’allumer lorsque le capteur de suivi de ligne est couvert.






