Algunas partes de este sitio web aún no están disponibles en su idioma. Estamos trabajando para solucionar esto y nos disculpamos por cualquier inconveniente.
Tutorial ESP32 14/55 - Reproduciendo notas musicales personalizadas utilizando el kit de aprendizaje IoT SunFounder ESP32
En este tutorial, aprenderemos a utilizar el microcontrolador ESP32 de SunFounder para reproducir notas musicales utilizando un zumbador pasivo y un transistor. El proyecto tiene como objetivo demostrar cómo generar sonidos con frecuencias específicas controlando el zumbador a través de los pines GPIO del ESP32.
Conectaremos un zumbador pasivo al ESP32, lo que nos permitirá producir diferentes notas musicales según la frecuencia que proporcionemos. Esta configuración incluye el uso de un transistor para encender y apagar el zumbador a altas velocidades, creando ondas sonoras que podemos escuchar. Para más aclaraciones sobre el proyecto, asegúrate de ver el video (en el video a :30).
ESP32-13-esquema del zumbador
Hardware Explicado
Los componentes principales utilizados en este proyecto incluyen el microcontrolador SunFounder ESP32, un zumbador pasivo y un transistor NPN (2N8050). El ESP32 es una poderosa tarjeta de desarrollo con capacidades integradas de Wi-Fi y Bluetooth, lo que la hace versátil para diversas aplicaciones de IoT. En este caso, generará señales para controlar el zumbador.
El zumbador pasivo opera generando sonido cuando se aplica una tensión alterna. A diferencia de los zumbadores activos, que tienen un oscilador incorporado, los zumbadores pasivos requieren una señal externa para producir sonido. El transistor actúa como un interruptor, permitiendo que el ESP32 controle el zumbador sin alimentarlo directamente, asegurando que no se exceda la clasificación de corriente del microcontrolador.
S87050_transistor
Detalles de la hoja de datos
Fabricante
SunFounder
Número de parte
Zumbador pasivo
Tensión de operación
3.3 V - 5 V
Frecuencia Resonante
2 kHz - 4 kHz
Consumo Actual
≤ 30 mA
Nivel de Presión Sonora
≥ 70 dB
Paquete
Orificio pasante
Notas / variantes
None
Asegúrate de la polaridad correcta al conectar el zumbador.
Utiliza una resistencia limitadora de corriente para la base del transistor.
Conecte el zumbador a una fuente de alimentación compatible con su voltaje nominal.
Ten cuidado de no exceder la corriente máxima del transistor.
Mantén el cableado ordenado para evitar cortocircuitos.
Prueba el circuito antes de cargar el código para evitar daños en los componentes.
Utiliza una placa de pruebas para conexiones de componentes fáciles.
Asegúrate de desactivar el rebote en las entradas si usas botones.
Considere agregar un disipador de calor para el transistor si se utiliza a alta corriente.
Instrucciones de cableado
ESP32-13-buzzer-wriing
Para conectar los componentes, comienza conectando el terminal positivo del zumbador pasivo al pin de 3.3V en el ESP32. El terminal negativo del zumbador debe conectarse al colector del transistor NPN. El pin del emisor del transistor debe estar conectado a tierra (GND) del ESP32.
A continuación, conecta una resistencia de 1 kΩ desde la base del transistor al pin GPIO 14 en el ESP32. Esta resistencia limita la corriente que fluye hacia la base del transistor. Por último, asegúrate de que todas las conexiones a tierra estén unidas para proporcionar una referencia común para el circuito.
Ejemplos de código y guía paso a paso
const int buzzerPin = 14; // the buzzer pin
void setup()
{
pinMode(buzzerPin, OUTPUT); // Set as output
}
En el código, definimos una variable constante.buzzerPinque está configurado en 14, indicando el pin GPIO conectado a la base del transistor. En elsetup()función, configuramos este pin como una SALIDA, permitiendo que el ESP32 controle el zumbador.
void loop()
{
for (int i = 0; i < 50; i++) // Loop 50 times and play a short tone each time
{
digitalWrite(buzzerPin, HIGH); // Set to HIGH to make the buzzer sound
delay(3); // Wait for 3 milliseconds
digitalWrite(buzzerPin, LOW); // LOW to turn off the buzzer
delay(3); //
}
delay(1000); // Wait for 1s before starting the next loop
}
Elloop()La función contiene un bucle for que se ejecuta 50 veces. En cada iteración, el zumbador se enciende y apaga rápidamente, produciendo un tono. Los retrasos de 3 milisegundos controlan cuánto tiempo está activado y desactivado el zumbador, mientras que un retraso de 1 segundo al final del bucle proporciona una pausa antes de repetir.
Demostración / Qué Esperar
Una vez que el cableado esté completo y el código esté cargado, deberías escuchar una serie de tonos cortos producidos por el zumbador. Si el zumbador no suena, verifica tus conexiones, especialmente la orientación del transistor y el valor de la resistencia. Asegúrate de que el pin correcto esté utilizado en el código y que el ESP32 esté alimentado adecuadamente.
Durante la demostración, si experimentas problemas, puede ser debido a un cableado incorrecto o al uso del pin equivocado para el zumbador. Verifica el cableado según las instrucciones y asegúrate de que la fuente de alimentación sea adecuada (en el video a las 08:15).
Tiempos de video
00:00 Comienzo
1:52 Introducción al proyecto
4:11 Cableado Explicado
8:11 Seleccionando la placa ESP32 y el puerto COM en Arduino IDE