Skip to main content

3.4 Bobinas-altavoz

El altavoz es una simple bobina o electroimán que mueve una membrana, si la membrana se mueve repetidamente puede producir un sonido.

Este sonido es audible si está dentro de nuestro rango auditivo, suele ser entre 20Hz y 20kHz

¿Sabías que a medida que creces el margen de agudos (20kHz) baja?

via GIPHY

Montaje : Pitido

Vamos a incorporar un altavoz y realizar una sirena. Al ser una bobina, es conveniente utilizar una amplificación por medio de un transistor, por D6 enviaremos la señal cuadrada a la base del transistor.

SIN EDUBASICA

Con EDUBÁSICA

Conectaremos el altavoz en el tereminal X2 y el interruptor V1 en ON para que esté alimentado

Continuamos ...

El código es muy sencillo, simplemente es una intermitencia por D6 que en este caso se ha elegido 1mseg ¿que pasaría si aumentamos este valor?

void setup() {
  // put your setup code here, to run once:
  pinMode(6, OUTPUT); 
}

void loop() {
  // put your main code here, to run repeatedly:
   digitalWrite(6, HIGH);   // Encendemos el pin6
   delay(1);              // esperamos 1 msegundo
   digitalWrite(6, LOW);    // Apagamos el pin6  
   delay(1);        // esperamos 1 msegundo
}

El resultado es :

SIN EDUBÁSICA Y SIN TRANSISTOR A LO BRUTO !

Bueno, vamos a conectarlo DIRECTAMENTE a D6 (el otro extremo a GND) no es muy conveniente pero a ver el resultado (con el mismo código):

¿Cuál suena más?

Premio entrada a dinópolis Teruel quien acierte..

via GIPHY

Montaje 15: Alarma

Teniendo en EDUBASICA los LEDs, el LDR que nos puede servir como sensor y el altavóz amplificado con un transistor, y nosotros que somos expertos programadores, NOS ESTÁ PIDIENDO A GRITOS hacer una alarma:

Enunciado: Cuando el LDR esté tapado, tiene que sonar un pitido intermitente de un segundo, con visualización también en los LEDs

SIN EDUBASICA

Pues hay que poner el LDR en A1, las luces (por simplicidad uno), el altavoz y el transistor con la conexión en la base por D5:

CON EDUBASICA

Se simplifica mucho la conexión sólo el altavoz tal y como está conectado en el montaje 14

Programa:

void setup() {
  pinMode(6, OUTPUT);
  pinMode(3, OUTPUT); 
  pinMode(4, OUTPUT); 
  pinMode(5, OUTPUT); 
  Serial.begin(9600);

}

void loop() {
  Serial.print("valor analogico leido=");Serial.println(analogRead(1));  //así visualizamos los valores y determinamos cuando es oscuro o no
  ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  if (analogRead(1)

Resultado: