KY-032 Capteur d'obstacles IR
Ce capteur utilise la lumière infrarouge pour détecter les obstacles.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Ce détecteur d'obstacles utilise la lumière infrarouge pour détecter les obstacles. Lorsque la lumière infrarouge émise rencontre un obstacle, elle est réfléchie et détectée par une photodiode. La distance à laquelle les obstacles sont détectés peut être réglée à l'aide de deux régulateurs. Ce module est particulièrement utile dans les systèmes de contrôle, comme ceux utilisés par les robots pour s'arrêter de manière autonome devant des obstacles. Il permet une détection fiable et précise des objets, ce qui permet aux robots de naviguer en toute sécurité et d'éviter les collisions. La facilité de réglage de la sensibilité rend le capteur polyvalent pour différentes applications où la détection d'obstacles est importante.
État 1 : il n'y a pas d'obstacle devant le détecteur [LED du module : éteint] [Signal du capteur = numérique activé].
État 2 : le détecteur a détecté un obstacle [LED sur le module : allumée] [Signal du détecteur = numérique éteint].
Ce capteur possède une broche supplémentaire "Enable" qui permet d'activer ou de désactiver la détection d'obstacles au moyen d'un contrôleur. Par défaut, cette fonction est activée pour ce capteur, c'est-à-dire que la détection est effectuée en permanence - si vous ne voulez pas cela, parce que la programmation souhaitée ne le prévoit pas par exemple, vous devez enlever le cavalier (voir vert dans l'image) avec l'étiquette "EN" et activer un signal de commande sur la "Enable-Pin".
*Notez que le bouton de droite est responsable de la distance mesurable du capteur. Si on le tourne vers la droite, la distance mesurable augmente et si on le tourne vers la gauche, la distance mesurable diminue.
*Notez que le curseur de gauche est responsable de la sensibilité du capteur. Si on le tourne vers la droite, la sensibilité augmente et si on le tourne vers la gauche, la sensibilité du capteur diminue.
Affectation des broches
Arduino | Capteur |
---|---|
- | Enable |
5V | +V |
GND | GND |
Pin 10 | Signal |
Exemple de code
Le programme lit l'état actuel de la broche du capteur et indique dans la console série si le détecteur d'obstacles se trouve actuellement devant un obstacle ou non.
Pour charger l'exemple de code suivant sur votre Arduino, nous vous recommandons d'utiliser l'IDE Arduino. Dans l'IDE, vous pouvez choisir le port et la carte qui conviennent à votre appareil.
Copiez le code ci-dessous dans votre IDE. Pour télécharger le code sur votre Arduino, il vous suffit de cliquer sur le bouton " Upload ".
int obstacle_detector = 10; // Déclaration de la broche d'entrée du capteur
int value; // Variable temporelle
void setup () {
pinMode(obstacle_detector, INPUT); // Initialisation de la broche du capteur
digitalWrite(obstacle_detector, HIGH); // Activation de la résistance pull-up interne
Serial.begin(9600); // Initialisation du moniteur série
Serial.println("KY-032 Détection d'obstacles");
}
void loop () {
// Le signal de courant au niveau du capteur est lu.
value = digitalRead(obstacle_detector);
// Si un signal a pu être détecté, cela s'affiche sur le moniteur série.
if (value == LOW) {
Serial.println("Obstacle détecté");
delay(200); // 200 ms de pause
}
}
Ce détecteur d'obstacles utilise la lumière infrarouge pour détecter les obstacles. Lorsque la lumière infrarouge émise rencontre un obstacle, elle est réfléchie et détectée par une photodiode. La distance à laquelle les obstacles sont détectés peut être réglée à l'aide de deux régulateurs. Ce module est particulièrement utile dans les systèmes de contrôle, comme ceux utilisés par les robots pour s'arrêter de manière autonome devant des obstacles. Il permet une détection fiable et précise des objets, ce qui permet aux robots de naviguer en toute sécurité et d'éviter les collisions. La facilité de réglage de la sensibilité rend le capteur polyvalent pour différentes applications où la détection d'obstacles est importante.
État 1 : il n'y a pas d'obstacle devant le détecteur [LED du module : éteint] [Signal du capteur = numérique activé].
État 2 : le détecteur a détecté un obstacle [LED sur le module : allumée] [Signal du détecteur = numérique éteint].
Ce capteur possède une broche supplémentaire "Enable" qui permet d'activer ou de désactiver la détection d'obstacles au moyen d'un contrôleur. Par défaut, cette fonction est activée pour ce capteur, c'est-à-dire que la détection est effectuée en permanence - si vous ne voulez pas cela, parce que la programmation souhaitée ne le prévoit pas par exemple, vous devez enlever le cavalier (voir vert dans l'image) avec l'étiquette "EN" et activer un signal de commande sur la "Enable-Pin".
*Notez que le bouton de droite est responsable de la distance mesurable du capteur. Si on le tourne vers la droite, la distance mesurable augmente et si on le tourne vers la gauche, la distance mesurable diminue.
*Notez que le curseur de gauche est responsable de la sensibilité du capteur. Si on le tourne vers la droite, la sensibilité augmente et si on le tourne vers la gauche, la sensibilité du capteur diminue.
Affectation des broches
Raspberry Pi | Capteur |
---|---|
- | Enable |
3,3V [Pin 1] | +V |
GND [Pin 6] | GND |
GPIO 24 [Pin 18] | Signal |
Exemple de code
Le programme lit l'état actuel de la broche du capteur et indique sur la console série si le détecteur d'obstacles se trouve actuellement devant un obstacle ou non.
from gpiozero import DigitalInputDevice
import time
# Initialiser la broche d'entrée à laquelle le capteur est connecté
sensor = DigitalInputDevice(24, pull_up=True) # pull_up=True active la résistance pull-up interne
# La pause entre la sortie du résultat est définie (en secondes).
delayTime = 0.5
print("Test du capteur [appuyez sur CTRL+C pour terminer le test]")
# Boucle du programme principal
try:
while True:
if sensor.value: # Vrai si la broche est HAUTE (pas d'obstacle)
print("Obstacle reconnu")
else: # Faux si la broche est BASSE (obstacle détecté)
print("Pas d'obstacle")
print("---------------------------------------")
# Réinitialisation + délai
time.sleep(delayTime)
# Nettoyer les lieux après la fin du programme
except KeyboardInterrupt:
print("Le programme a été interrompu par l'utilisateur")
Ce détecteur d'obstacles utilise la lumière infrarouge pour détecter les obstacles. Lorsque la lumière infrarouge émise rencontre un obstacle, elle est réfléchie et détectée par une photodiode. La distance à laquelle les obstacles sont détectés peut être réglée à l'aide de deux régulateurs. Ce module est particulièrement utile dans les systèmes de contrôle, comme ceux utilisés par les robots pour s'arrêter de manière autonome devant des obstacles. Il permet une détection fiable et précise des objets, ce qui permet aux robots de naviguer en toute sécurité et d'éviter les collisions. La facilité de réglage de la sensibilité rend le capteur polyvalent pour différentes applications où la détection d'obstacles est importante.
État 1 : il n'y a pas d'obstacle devant le détecteur [LED du module : éteint] [Signal du capteur = numérique activé].
État 2 : le détecteur a détecté un obstacle [LED sur le module : allumée] [Signal du détecteur = numérique éteint].
Ce capteur possède une broche supplémentaire "Enable" qui permet d'activer ou de désactiver la détection d'obstacles au moyen d'un contrôleur. Par défaut, cette fonction est activée pour ce capteur, c'est-à-dire que la détection est effectuée en permanence - si vous ne voulez pas cela, parce que la programmation souhaitée ne le prévoit pas par exemple, vous devez enlever le cavalier (voir vert dans l'image) avec l'étiquette "EN" et activer un signal de commande sur la "Enable-Pin".
*Notez que le bouton de droite est responsable de la distance mesurable du capteur. Si on le tourne vers la droite, la distance mesurable augmente et si on le tourne vers la gauche, la distance mesurable diminue.
*Notez que le curseur de gauche est responsable de la sensibilité du capteur. Si on le tourne vers la droite, la sensibilité augmente et si on le tourne vers la gauche, la sensibilité du capteur diminue.
Affectation des broches
Micro:Bit | Capteur |
---|---|
Pin 1 | Signal |
3V | +V |
GND | GND |
Exemple de code
Ceci est un exemple MakeCode pour Micro:Bit qui fait essentiellement la même chose que les exemples pour les deux autres variantes. Cependant, cet exemple est plus proche de celui du Raspberry Pi que de celui de l'Arduino.
pins.setPull(DigitalPin.P1, PinPullMode.PullUp)
basic.forever(function () {
if (pins.digitalReadPin(DigitalPin.P1) == 1) {
serial.writeLine("No obstacle")
basic.pause(100)
} else {
serial.writeLine("Obstacle detected")
basic.pause(100)
}
})
Téléchargement d'un exemple de programme
Ce détecteur d'obstacles utilise la lumière infrarouge pour détecter les obstacles. Lorsque la lumière infrarouge émise rencontre un obstacle, elle est réfléchie et détectée par une photodiode. La distance à laquelle les obstacles sont détectés peut être réglée à l'aide de deux régulateurs. Ce module est particulièrement utile dans les systèmes de contrôle, comme ceux utilisés par les robots pour s'arrêter de manière autonome devant des obstacles. Il permet une détection fiable et précise des objets, ce qui permet aux robots de naviguer en toute sécurité et d'éviter les collisions. La facilité de réglage de la sensibilité rend le capteur polyvalent pour différentes applications où la détection d'obstacles est importante.
État 1 : il n'y a pas d'obstacle devant le détecteur [LED du module : éteint] [Signal du capteur = numérique activé].
État 2 : le détecteur a détecté un obstacle [LED sur le module : allumée] [Signal du détecteur = numérique éteint].
Ce capteur possède une broche supplémentaire "Enable" qui permet d'activer ou de désactiver la détection d'obstacles au moyen d'un contrôleur. Par défaut, cette fonction est activée pour ce capteur, c'est-à-dire que la détection est effectuée en permanence - si vous ne voulez pas cela, parce que la programmation souhaitée ne le prévoit pas par exemple, vous devez enlever le cavalier (voir vert dans l'image) avec l'étiquette "EN" et activer un signal de commande sur la "Enable-Pin".
*Notez que le bouton de droite est responsable de la distance mesurable du capteur. Si on le tourne vers la droite, la distance mesurable augmente et si on le tourne vers la gauche, la distance mesurable diminue.
*Notez que le curseur de gauche est responsable de la sensibilité du capteur. Si on le tourne vers la droite, la sensibilité augmente et si on le tourne vers la gauche, la sensibilité du capteur diminue.
Affectation des broches
Raspberry Pi Pico | Capteur |
---|---|
- | Activer |
3.3V | +V |
GND | GND |
GPIO18 | Signal |
Exemple de code
Le programme lit l'état actuel de la broche du capteur et indique sur la sortie série si le détecteur d'obstacles se trouve actuellement devant un obstacle.
Pour charger l'exemple de code suivant sur votre Pico, nous vous recommandons d'utiliser l'IDE Thonny. Il vous suffit de commencer par sélectionner Run > Configure interpreter ... > Interpreter > Which kind of interpreter should Thonny use for running your code? > MicroPython (Raspberry Pi Pico).
Copiez maintenant le code ci-dessous dans votre IDE et cliquez sur Run.
# Chargement des bibliothèques
from machine import Pin, Timer
from time import sleep
# Initialisation du GPIO en tant qu'entréec
sensor = Pin(18, Pin.IN, Pin.PULL_DOWN)
print("KY-032 Détection d'obstacles")
# Boucle continue pour une sortie série continue
while True:
if sensor.value() == 0:
print("Obstacle détecté")
else:
print("Aucun obstacle détecté")
print("------------------------------------------------------")
sleep(0.5)