KY-010 Capteur optique à fourche
Si la barrière lumineuse du module est interrompue, le signal provenant du module lui-même est également interrompu.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Ce module contient une cellule photoélectrique qui émet un signal tant que le faisceau lumineux n'est pas interrompu. Si quelque chose bloque le faisceau lumineux, le signal est également interrompu. Ce module est donc idéal pour les applications qui nécessitent la détection d'une interruption ou d'un mouvement.
La cellule photoélectrique fonctionne à une tension de fonctionnement de 3,3 V à 5 V, ce qui la rend compatible avec un grand nombre de microcontrôleurs et d'ordinateurs monocarte. De tels modules sont souvent utilisés dans des systèmes de sécurité, des compteurs ou des commandes automatisées pour détecter la présence ou le mouvement d'un objet.
Grâce à son fonctionnement simple et à la fiabilité de sa détection, ce module constitue une solution pratique pour de nombreux projets nécessitant la surveillance de passages ou de mouvements. Sa taille compacte et sa facilité d'intégration en font un composant utile pour un grand nombre d'applications.
Affectation des broches
Arduino | Capteur |
---|---|
Pin 10 | Signal |
5V | +V |
GND | GND |
Exemple de code
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 barrier = 10; // Déclaration de la broche d'entrée du capteur
int value; // Variable temporelle
void setup () {
pinMode(barrier, INPUT); // Initialisation de la broche du capteur
digitalWrite(barrier, HIGH); // Activation de la résistance pull-up interne
Serial.begin(9600); // Initialisation du moniteur sériel
Serial.println("KY-010 Test de la barrière lumineuse");
}
void loop () {
// Le signal de courant au niveau du capteur est lu.
value = digitalRead(barrier);
// Si un signal a pu être détecté, cela s'affiche sur le moniteur série.
if (value == HIGH) {
Serial.println("Signal détecté");
delay(100); // 100 ms de pause
}
}
Ce module contient une cellule photoélectrique qui émet un signal tant que le faisceau lumineux n'est pas interrompu. Si quelque chose bloque le faisceau lumineux, le signal est également interrompu. Ce module est donc idéal pour les applications qui nécessitent la détection d'une interruption ou d'un mouvement.
La cellule photoélectrique fonctionne à une tension de fonctionnement de 3,3 V à 5 V, ce qui la rend compatible avec un grand nombre de microcontrôleurs et d'ordinateurs monocarte. De tels modules sont souvent utilisés dans des systèmes de sécurité, des compteurs ou des commandes automatisées pour détecter la présence ou le mouvement d'un objet.
Grâce à son fonctionnement simple et à la fiabilité de sa détection, ce module constitue une solution pratique pour de nombreux projets nécessitant la surveillance de passages ou de mouvements. Sa taille compacte et sa facilité d'intégration en font un composant utile pour un grand nombre d'applications.
Affectation des broches
Raspberry Pi | Capteur |
---|---|
GPIO 24 [Pin 18] | Signal |
3,3V [Pin 1] | +V |
GND [Pin 6] | GND |
Exemple de code
Il s'agit d'un programme d'exemple similaire, à la différence qu'ici aucune LED n'est allumée mais que quelque chose est émis dans la console lorsqu'un signal est détecté.
from gpiozero import DigitalInputDevice
import time
# La broche d'entrée à laquelle le capteur est connecté est déclarée ici.
# En outre, la résistance PullUP à l'entrée est également désactivée.
sensor = DigitalInputDevice(24, pull_up=False)
print("Test du capteur [appuyez sur CTRL+C pour terminer le test]")
# Cette fonction de sortie est exécutée lorsqu'un signal est détecté.
def ausgabeFunktion():
print("Signal reconnu")
# Lorsqu'un signal est détecté (front montant du signal), la fonction de sortie est déclenchée.
sensor.when_activated = ausgabeFunktion
# Boucle du programme principal
try:
while True:
time.sleep(1)
# Nettoyer après la fin du programme
except KeyboardInterrupt:
print("Le programme a été interrompu par l'utilisateur")
Ce module contient une cellule photoélectrique qui émet un signal tant que le faisceau lumineux n'est pas interrompu. Si quelque chose bloque le faisceau lumineux, le signal est également interrompu. Ce module est donc idéal pour les applications qui nécessitent la détection d'une interruption ou d'un mouvement.
La cellule photoélectrique fonctionne à une tension de fonctionnement de 3,3 V à 5 V, ce qui la rend compatible avec un grand nombre de microcontrôleurs et d'ordinateurs monocarte. De tels modules sont souvent utilisés dans des systèmes de sécurité, des compteurs ou des commandes automatisées pour détecter la présence ou le mouvement d'un objet.
Grâce à son fonctionnement simple et à la fiabilité de sa détection, ce module constitue une solution pratique pour de nombreux projets nécessitant la surveillance de passages ou de mouvements. Sa taille compacte et sa facilité d'intégration en font un composant utile pour un grand nombre d'applications.
Affectation des broches
Micro:Bit | Capteur |
---|---|
Pin 1 | Signal |
3V | +V |
GND | GND |
Exemple de code
pins.setPull(DigitalPin.P1, PinPullMode.PullUp)
basic.forever(function () {
serial.writeLine("" + (pins.digitalReadPin(DigitalPin.P1)))
if (pins.digitalReadPin(DigitalPin.P1) == 1) {
serial.writeLine("!!! Light barrier interrupted !!!")
} else {
serial.writeLine("Light barrier is not interrupted")
}
serial.writeLine("______________________________________")
basic.pause(1000)
})
Téléchargement d'un exemple de programme
Ce module contient une cellule photoélectrique qui émet un signal tant que le faisceau lumineux n'est pas interrompu. Si quelque chose bloque le faisceau lumineux, le signal est également interrompu. Ce module est donc idéal pour les applications qui nécessitent la détection d'une interruption ou d'un mouvement.
La cellule photoélectrique fonctionne à une tension de fonctionnement de 3,3 V à 5 V, ce qui la rend compatible avec un grand nombre de microcontrôleurs et d'ordinateurs monocarte. De tels modules sont souvent utilisés dans des systèmes de sécurité, des compteurs ou des commandes automatisées pour détecter la présence ou le mouvement d'un objet.
Grâce à son fonctionnement simple et à la fiabilité de sa détection, ce module constitue une solution pratique pour de nombreux projets nécessitant la surveillance de passages ou de mouvements. Sa taille compacte et sa facilité d'intégration en font un composant utile pour un grand nombre d'applications.
Affectation des broches
Raspberry Pi Pico | Capteur |
---|---|
GPIO18 | Signal |
3.3V | +V |
GND | GND |
Exemple de code
Il s'agit d'un exemple de programme qui compte et sort un texte en série lorsqu'un signal est détecté par le capteur.
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.
# Charger des bibliothèques
from machine import Pin, Timer
# Initialisation de GPIO18 comme entrée
sensor = Pin(18, Pin.IN, Pin.PULL_DOWN)
# Créer une minuterie
timer = Timer()
# Mettre le compteur à 0
counter = 0
print("KY-010 Test de barrière lumineuse")
# Fonction pour compter le mouvement dans la barrière
def step(timer):
global counter
counter = counter + 1
print(counter)
# Fonction d'observation de la barrière lumineuse
def barrier(pin):
# Fonction anti-rebond : définir une minuterie
timer.init(mode=Timer.ONE_SHOT, period=100, callback=step)
# Initialisation de l'interruption
sensor.irq(trigger=Pin.IRQ_FALLING, handler=barrier)