KY-006 Module buzzer passif

De SensorKit X40 Wiki

Aller à : navigation, rechercher

Photo

ky-006.jpg

Données techniques / Description sommaire

Des tonalités différentes peuvent être générées avec le buzzer piézo passif grâce à l'envoi de différentes fréquences via un signal PWM.

Brochage

3 G NC S.png

Exemple de code pour Arduino

Voici un exemple de programme qui génère un signal d'alarme au moyen d'un signal carrée envoyé au buzzer.

int buzzer = 8 ; // Déclaration de la broche de sortie vers le buzzer

void setup ()
{
  pinMode (buzzer, OUTPUT) ;// Initialisation comme broche de sortie
}


void loop ()
{
  unsigned char i;
  while (1)
  {
    // Dans ce programme, le buzzer est alimenté en alternance avec deux fréquences différentes.
    // Le signal a la forme d'une tension rectangulaire.
    // Le buzzer émet un son qui correspond alternativement à chaque fréquance.
    
    //Fréquence 1
    for (i = 0; i <80; i++) 
    {
      digitalWrite (buzzer, HIGH) ;
      delay (1) ;
      digitalWrite (buzzer, LOW) ;
      delay (1) ;
    }
    //Fréquence 2
    for (i = 0; i <100; i++) 
    {
      digitalWrite (buzzer, HIGH) ;
      delay (2) ;
      digitalWrite (buzzer, LOW) ;
      delay (2) ;
    }
  }
}

Affectation des broches Arduino:

Sensor Signal = [Pin 8]
Sensor - = [Pin GND]

Exemple de programme à télécharger

KY-006.zip

Exemple de code pour Raspberry Pi

Exemple de programmation en Python

L'exemple de code utilise un module PWM pour appliquer une tension carrée avec une fréquence définissable à la broche de sortie.
Le son produit au buzzer correspond approximativement à la fréquence de la tension d'onde carrée.

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

# Les modules nécessaires sont importés et mis en place
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
 
 
# Déclaration de la broche de sortie raccordée au buzzer
GPIO_PIN = 24
GPIO.setup(GPIO_PIN, GPIO.OUT)
 
# Initialisation du module PWM - la fréquence de 500 Hz est prise comme valeur de départ
Frequence = 500 #In Hertz
pwm = GPIO.PWM(GPIO_PIN, Frequence)
pwm.start(50)
 
# Le programme attend l'entrée d'une nouvelle fréquence PWM par l'utilisateur.
# Jusque-là, le buzzer est alimenté par la tension de fréquence précédemment saisie (valeur initiale 500 Hz)
try:
    while(True):
        print "----------------------------------------"
        print "Fréquence actuelle: %d" % Frequence
        Frequence = input("Entrez une nouvelle fréquence (50-5000):")
        pwm.ChangeFrequency(Frequence)
         
# remise en place de tous les GPIO en entrées
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

KY-006_RPi_PWM.zip

Commande pour lancer le programme:

sudo python KY-006_RPI_PWM.py