17.- Zumbador con Potenciómetro

Publicado el 03 diciembre 2013 por Practicandoarduino @PracticaArduino

Bienvenidos de nuevo, vamos con otro tutorial, esta vez vamos a empezar a jugar con los zumbadores, en concreto vamos a aumentar y disminuir la frecuencia con la que reproduce el zumbido con un potenciómetro.

Para este tutorial necesitaremos:

1 Placa Arduino Uno
1 Protoboard
1 Resistencia de 100Ω (opcional)
1 Potenciómetro de 10KΩ
1 Zumbador
Cables para realizar las conexiones

Lo primero que hacemos es conectar el potenciómetro a la salida analñogica 0 (o a la que querais) mediante la patilla central, y los extremos uno a tierra y otro a 5V de la protoboard. Conectamos ahora la resistencia a tierra y a ella un extremo del zumbador (ojo que algunos estan polarizados) y el otro al pin digital 7 (en mi caso patilla negra a tierra, roja al pin). Para terminar conectamos el pin 5V y el pin GND a la protoboard. Debería quedar algo así:

Código fuente:

int tono=10000; //valor por defecto para calcular la frecuencia
 
void setup(){
 pinMode (7, OUTPUT); //salida del zumbador
 
}
 
void loop(){
  digitalWrite (7, HIGH); //vibra
  delayMicroseconds (tono/2); //retardo
  digitalWrite (7, LOW); //para de vibrar
  delayMicroseconds (tono/2); //retardo
  tono = analogRead(0); //leemos del potenciómetro
  tono= map (tono, 0, 1023, 1000, 5000); //mapeamos
  //ajustamos el tono a la frecuencia deseada para poder
  //cambiar su frecuencia y hacer sonar el zumbador con
  //un sonido más o menos grave.
}

Pasemos a explicar el código, al principio declaramos una variable llamada tono que nos servirá para calcular la frecuencia; lo que hacemos realmente es mandar pulsos digitales HIGH y LOW a una velocidad tan alta que hace vibrar al zumbador a una frecuencia audible por el ser humano. Por defecto son 10 mS, eso quiere decir que el pulso HIGH dura 10 mS y el LOW también, dándonos un periodo T=20mS, por lo que nuestra frecuencia es sería f=1/T 50Hz. Luego la vamos cambiando con el potenciómetro, haciedola más o menos aguda, pero mapeando el resultado devuelto por el potenciómetro a unos valores que nos interesen para poder ser audibles.



style="display:inline-block;width:728px;height:15px"
data-ad-client="ca-pub-3868159888315364"
data-ad-slot="7639712738">

PracticandoArduino