KY-010 Capteur à fourche optique

De SensorKit X40 Wiki

Aller à : navigation, rechercher

Photo

ky-010.jpg

Données techniques / Description sommaire

La connexion entre les deux broches d'entrée est interrompue si le rayon lumineuse est interrompu entre l'émetteur et le récepteur.

La sortie commute lorsque le rayon lumineux dans le capteur à fourche est coupé (avec une feuille de papier par exemple).

Brochage

3 S V G.png

Exemple de code pour Arduino

Voici un exemple de programme qui fait allumer une LED lorsqu'un signal est détecté au niveau du capteur. On peut utiliser les modules à Leds KY-011, KY-016 ou KY-029.

int Led = 13 ;// Déclaration de la broche de sortie LED
int Sensor = 10; // Déclaration de la broche d'entrée du capteur
int val; // Déclaration de la broche d'entrée du capteur
 
void setup ()
{
  pinMode (Led, OUTPUT) ; // Initialisation de la broche de sortie
  pinMode (Sensor, INPUT) ; // Initialisation de la broche du capteur
}
 
void loop ()
{
  val = digitalRead (Sensor) ; // Lecture de la valeur du signal
 
  if (val == HIGH) // Si un signal est détecté, la diode s'allume
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}

Affectation des broches Arduino:

LED + = [Pin 13]
LED - = [Pin GND]
Sensor Signal = [Pin 10]
Sensor +V = [Pin 5V]
Sensor - = [Pin GND]

Exemple de programme à télécharger

KY-010.zip

Exemple de code pour Raspberry Pi

Exemple de programmation en Python

#!/usr/bin/python
# coding=utf-8

# Les modules nécessaires sont importés et mis en place
import RPi.GPIO as GPIO
import time
  
GPIO.setmode(GPIO.BCM)
  
# La broche d'entrée du capteur est déclarée. En outre la résistance de Pull-up est activée.
GPIO_PIN = 24
GPIO.setup(GPIO_PIN, GPIO.IN, pull_up_down = GPIO.PUD_DOWN)
  
print "Sensor-Test [Appuyez sur Ctrl + C pour terminer le test]"
  
# Cette fonction de sortie est exécutée par détection du signal
def fonctionDeSortie(null):
        print("Signal détecté")
  
# Lors de la détection d'un signal (front montant du signal) de la fonction de sortie est déclenchée
GPIO.add_event_detect(GPIO_PIN, GPIO.RISING, callback=fonctionDeSortie, bouncetime=100) 
  
# Boucle de programme principale
try:
        while True:
                time.sleep(1)
  
# réinitialisation de tous les GPIO en entrée
except KeyboardInterrupt:
        GPIO.cleanup()

Brochage Raspberry Pi:

Signal = GPIO24 [Pin 18]
+V = 3,3V [Pin 1]
GND = Masse [Pin 6]

Exemple de programme à télécharger

SensorTest_RPi_inverted.zip

Commande pour lancer le programme:

sudo python SensorTest_RPi_inverted.py