Cómo conectar un Buzzer activo a Raspberry Pi

En este pequeño tutorial veremos cómo conectar un buzzer activo a una tarjeta Raspberry Pi, también encontrarás un código de programación para tus primeras pruebas.

Un buzzer activo es un dispositivo que tiene la capacidad de generar una señal de audio al ser alimentado, se le conoce como activo porque cuenta con componentes internos que generen la señal eléctrica con frecuencias audibles, por lo que la señal con la que es controlado puede ser digital.

De esta manera un buzzer activo es un componente digital de salida, es decir, su funcionamiento consiste en generar una onda audible al ser alimentado. En este ejemplo conectaremos el pin de señal de nuestro buzzer pasivo al GPIO #18 de la tarjeta.

Componentes necesarios

  • Buzzer pasivo
  • Raspberry Pi
  • Protoboard Chica
  • Transistor BC548
  • Resistor 220 ohms
  • Cables de conexión H-M y M-M

Diagrama de conexiones

La imagen tiene un atributo ALT vacío; su nombre de archivo es RPi_buzzer_pasivo_bb.png
Raspberry Pi – Protoboard Chica – Buzzer pasivo – BC548

Código de Python3

Copiamos el siguiente código ejemplo a un script de Python, lo ejecutamos con Python3 y escuchamos como el buzzer emite sonido durante un segundo y permanece sin emitir sonido 4 segundos, de manera cíclica.


import time           
import RPi.GPIO as GPIO  #Importamos el paquete RPi.GPIO y en el código nos refiriremos a el como GPIO

pin_buzz = 18  #Variable que contiene el pin(GPIO.BCM) al cual conectamos la señal del LED

GPIO.setmode(GPIO.BCM)   #Establecemos el modo según el cual nos refiriremos a los GPIO de nuestra RPi            
GPIO.setup(pin_buzz, GPIO.OUT) #Configuramos el GPIO18 como salida


#Contenemos el código principal en una estructura try para limpiar los GPIO al terminar o presentarse un error
try:
    while 1:   #Implementamos un loop infinito
        GPIO.output( pin_buzz , GPIO.HIGH ) #Ponemos en alto el pin del buzzer
	time.sleep(1)                       #Esperamos un segundo antes de ejecutar la siguiente línea
        GPIO.output( pin_buzz , GPIO.LOW ) #Ponemos en alto el pin del buzzer
	time.sleep(4)                       #Esperamos cuatro segundos antes de ejecutar la siguiente línea
except KeyboardInterrupt: 
    # CTRL+C
    print("\nInterrupcion por teclado")
except:
    print("Otra interrupcion")
finally:
    GPIO.cleanup()
    print("GPIO.cleanup() ejecutado")


¡Sigue explorando!