1. El Octavo Bit
  2. / Arduino
  3. / Proyectos para Arduino
  4. / Crear una alarma con el módulo KY-008, una fotoresistencia y un buzzer

Crear una alarma con el módulo KY-008, una fotoresistencia y un buzzer

| Actualizado:
Comentarios: 0

Crear una alarma con el módulo KY-008, una fotoresistencia y un buzzer
Alarma con Arduino

En esta práctica haremos una alarma que se conectará en el momento en que el haz de luz del puntero no llegue a la fotorresistencia. Primero, haremos que la señal de alarma nos avise por el monitor serial y después añadiremos un buzzer para que nos de un aviso sonoro.

Alarma silenciosa con el módulo KY-008 y un LDR

Para la creación de la alarma aprovecharemos las propiedades de las fotoresistencias ya que su resistencia varía en función de la luz que recibe. A medida que aumenta la luz, su resistencia disminuye. Así que utilizaremos la lectura del sensor para saber si el haz de luz producido por el puntero láser incide sobre la fotorresistencia o si, por el contrario, hay algo que impide que llegue el haz de luz, lo que activaría la alarma.

Material necesario:

  • Placa Arduino o similar
  • Protoboard
  • Puntero láser, módulo KY-008
  • Sensor fotorresistencia (LDR)
  • Una resistencia de 10 KΩ
  • Cables

Esquema:

Unimos el pin de alimentación (S) del módulo kY-008 al pin digital 8 de la placa y el GND, al GND de la placa de Arduino. Para el LDR utilizamos una resistencia y leeremos su valor a través del pin analógico A0 de Arduino.

Esquema para montar una alarma con un puntero láser y Arduino

Explicación del código:

Primero, indicamos qué pin es el que vamos a utilizar para alimentar el puntero láser (pin 8), indicamos también el de la lectura de la resistencia (A0) y creamos una variable denominada lectura para guardar el valor de la resistencia.

int laserPin = 8;
int sensor = A0;
int lectura;

En la función setup() indicamos que el pin 8 es de salida (OUTPUT), el láser va a estar encendido, lo indicamos con digitalWrite(laserPin, HIGH) e inicializamos el monitor serial.

void setup(){
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
}

En la función loop() leeremos el valor del sensor, que guardaremos en la variable lectura, y que mostraremos por el monitor serial. Comprobaremos que su valor es menor de 100, si se cumple la condición, significa que el haz de luz no incide sobre el fotorresistor, por lo que la alarma se activará.

void loop() {
  lectura = analogRead(sensor);
  Serial.println(lectura);
  if(lectura < 100){
    Serial.println("Alarma");
  }
}

¿Por qué utilizamos un valor de 100 para comparar? porque con la luz ambiental el valor de lectura varía entre 40-60, mientras que si incide el láser sobre el fotorresistor este varía entre 590-620. Tomando un valor de 100 hay un margen para asegurarnos de que el láser no incide sobre el LDR.

Código completo:

int laserPin = 8;
int sensor = A0;
int lectura;

void setup() {
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
}

void loop() {
  lectura = analogRead(sensor);
  Serial.println(lectura);
  if(lectura < 100){
    Serial.println("Alarma");
  }
}

Alarma con el módulo KY-008, un buzzer y un LDR

Añadimos un buzzer activo para generar un sonido de alarma cuando el haz de luz no incida sobre la fotorresistencia.

Material necesario:

  • Placa Arduino o similar
  • Protoboard
  • Puntero láser, módulo KY-008
  • Buzzer activo módulo KY-012.
  • Sensor fotorresistencia (LDR)
  • Una resistencia de 10 KΩ
  • Cables

Esquema de montaje:

Esquema para montar una alarma con un puntero láser, un buzzer y Arduino

Código:

Al código de la práctica anterior le añadimos una nueva variable, buzzerPin, que nos indica a qué pin hemos conectado el zumbador.

En la función setup() indicamos que el pin 9, al que esta conectado el zumbador, es un pin de salida de corriente y con analogWrite() indicamos que en principo no sonará.

En la función loop() comprobamos si el haz de luz incide sobre el LDR, en caso de que no incida, hacemos sonar la alarma con analogWrite(), podemos variar el valor entre 0 y 255, 255 será para un sonido más intenso. Y si el haz de luz esta iluminando el fotorresistor, el valor será 0, haciendo que no suene la alarma.

int buzzerPin = 9;
int laserPin = 8;
int sensor = A0;
int lectura;

void setup() {
  pinMode(buzzerPin, OUTPUT);
  pinMode(laserPin, OUTPUT);
  Serial.begin(9600);
  digitalWrite(laserPin, HIGH);
  analogWrite(buzzerPin,0);
}

void loop() {
  lectura = analogRead(sensor);
  Serial.println(lectura);
  if(lectura < 100){
    Serial.println("Alarma");
    analogWrite(buzzerPin,255);
  }else{
    analogWrite(buzzerPin,0);
  }
}

Artículos que te pueden interesar

Radar con Arduino y Processing
Realizar un radar con Arduino y Processing

Realizar un radar con Arduino y Processing

| Actualizado:
Comentarios: 0

En este artículo explicaremos cómo montar un radar con Arduino y utilizaremos el programa processing para representar en la pantalla los datos. Un radar se basa en emitir un impulso de radio que se refleja en un objeto. A partir…

Medir la inclinación con Arduino
Medir la inclinación con Arduino y el sensor SW-520D

Medir la inclinación con Arduino y el sensor SW-520D

| Actualizado:
Comentarios: 0

Realizamos un ejemplo básico, donde se puede apreciar que la lectura hecha por el sensor se recibe en un pin de entrada digital de la placa (hemos usado el nº 7). Material necesario: Arduino Uno o similar. Protoboard. Cables Sensor…

Juego de la serpiente con Arduino

Juego de la serpiente con Arduino

| Actualizado:
Comentarios: 0

Aquellos que tuvieron un Nokia, recordarán el famoso juego de la serpiente. En este artículo desarrollaremos la programación necesaria para realizar el juego de la serpiente utilizando la placa Arduino y una matriz LED de 8×8. Material utilizado: Placa Arduino…

Joystick analógico y Arduino
¿Cómo utilizar un joystick analógico con Arduino?

¿Cómo utilizar un joystick analógico con Arduino?

| Actualizado:
Comentarios: 0

En este post veremos la conexión de un joystick a la placa Arduino. Primero se comprobara hacia donde se mueve sacando los datos por el serial monitor y en un segundo proyecto, según el movimiento del joystick encenderá un led.…

Comentarios - 0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *