Introduction: ALARMATIENDA_MEDINA_MARTINEZ

INTRODUCCIÓN:

En esta practica vamos a hacer un sistema de alarmas para una tienda.Para ello vamos a poner en práctica todo lo que hemos aprendido durante el curso.Primero vamos a programar dos leds para que parpadeen.Luego vamos a programar el zumbador para que suene.El potencionetro se va a encargar de regular el sonido y la luz.El siguiente paso es programar un pulsador para que al darle active el sistema de alarmas.El último paso es programar el sensor de luz para que detecte una determinada luz y se active el sistema de alarmado.

Step 1: Parpadeo Led

void setup() {

// put your setup code here, to run once:

pinMode(13,OUTPUT); // decimos donde están situados los leds, los pines digitales

pinMode(12,OUTPUT); }

void loop() {

// put your main code here, to run repeatedly:

parpadeo (); } // creamos un método

void parpadeo (){

digitalWrite(13,HIGH); // decimos a que pines digitales mandaremos nosotros información.

digitalWrite(12,HIGH); // esta información será de encender los leds conectados a pines 12 y 13.

delay(500); // ponemos un delay para que estén luciendo un tiempo determinado

digitalWrite(13,LOW); //enviamos la información de apagarse a los leds conectados a los pines digitales 12 y 13.

digitalWrite(12,LOW);

delay(500); // tiempo que estarán apagados los leds antes de encenderse.

}

Step 2: Zumbador

void setup() {

// put your setup code here, to run once:

pinMode( 11,OUTPUT); // vamos a enviarle información al pin digital 11 dónde está el zumbador

}

void loop() {

// put your main code here, to run repeatedly:

zumbador(); } // creamos un método llamado zumbador

void zumbador () {

digitalWrite(11,HIGH); // envía información al pin 11 para que pite el zumbador ya que está conectado a ese pin

tone(11,700); // indica que suene el zumbador a la frecuencia que indiquemos

delay(100); // tiempo de espera entre sonido y sonido

noTone(11); // para que el zumbador deje de sonar

}

Step 3: Potenciometro

const int led=12; // declaramos la variable del led conectado al pin digital 12.

const int led2=13; // declaramos la variable del led conectado al pin digital 13.

int potenciometro; // declaramos la variable potenciometro

void setup() {
// put your setup code here, to run once:

pinMode(A0,OUTPUT); // decimos en que pin analógico está conectado el potenciometro y a dond enviaremos información ya que es output

pinMode(13,OUTPUT); // aquí estará conectado un led y le enviaremos información, output

pinMode(12,OUTPUT); // aquí estará conectado otro led y le enviaremos información, output

pinMode(11,OUTPUT); // aquí estará conectado el zumbador y le enviaremos información, output

Serial.begin(9600); // definimos el puerto de salida

}

void loop() { // put your main code here, to run repeatedly:

potenciometro = analogRead(A0); //declaramos a que equivale el potenciometro, donde está, en el pin analógico 0.

Serial.println (potenciometro); // que imprima los valores del potenciometros cada uno en una línea, esto lo hicimos porque no funcionaba bien y vimos que saltaba del valor 1 al 800/900 y por ello cambiamos de potenciometro.

parpadeo(); // hacemos que el potenciometro controle esta función que ya hemos hecho más abajo

zumbador(); // igual, el potenciometro controlará esta función.

}

void zumbador(){ // esta es la función que controlará el potenciometro, es la del zumbador.

tone(11,700); // hacemos que el zumbador suene a una determinada frecuencia

delay(potenciometro); // el potenciometro controlará los tiempos de sonido del zumbador

noTone(11); } // hacemos que el zumbador no suene

void parpadeo(){ // la otra función que controlará el potenciometro, es la de los leds.

digitalWrite(13,HIGH); // hacemos que luzca el led del pin 13

digitalWrite(12,HIGH); // hacemos que luzca el led del pin 12

delay(potenciometro); // hacemos que el potenciometro controle los tiempos de parpadeo

digitalWrite(13,LOW); // hacemos que no luzca el led del pin 13

digitalWrite(12,LOW); // hacemos que no luzca el led del pin 12

delay(potenciometro); // hacemos que el potenciometro controle los tiempos de parpadeo.

}

Step 4: Pulsador

const int led=12; // definimos como led al led del pin 12
const int led2=13; // definimos como led2 al led del pin 13

int potenciometro; // declaramos la variable potenciometro

const int pul=10; // declaramos la variable del pulsador, que está en el pin digital 10.

int val; // se declara la variable val, que es donde está el pulsador

void setup() { // put your setup code here, to run once:

pinMode(A0,OUTPUT); // es el pin analógico dónde está el potenciometro y a dónde enviaremos información ya que es output.

pinMode(13,OUTPUT); // pin digital dónde está un led y donde enviamos información

pinMode(12,OUTPUT); // pin digital dónde está un led y donde enviamos información

pinMode(11,OUTPUT); // pin digital dónde está el zumbador y donde enviamos información

pinMode (10,INPUT); // pin digital donde estás el pulsador y que envía información a la placa de si está o no apretado ya que es INPUT.

Serial.begin(9600); //abrimos el puerto

}

void loop() { // put your main code here, to run repeatedly:

val=digitalRead(10); // la variable es igual al valor que nos de el pulsador, ya que es lo que la placa lee en el pin 10.

potenciometro = analogRead(A0); // declaramos a que equivale el potenciometro, que está en el pin analógico 0.

Serial.println (potenciometro); // hacemos que imprima los valores del potenciometro cada uno en una línea.

if(val==HIGH) { // ponemos un if para que cuando el pulsador este pulsado, los leds y el zumbador se activen, HIGH, controlados por el potenciometro.

parpadeo(); // esta función está desarrollada más abajo y hacemos que el potenciometro la controle, que controle el parpadeo de los leds.

zumbador(); // aquí igual, esta función está hecha más abajo y es controlada por el potenciometro.

}

}

void zumbador(){ // es la función de zumbador(); hecha, la que controlará el potenciometro

tone(11,700); // hacemos que el zumbador suene a una frecuencia determinada

delay(potenciometro); // el potenciometro controlará los tiempos de sonido del zumbador

noTone(11); } // hacemos que el zumbador no suene

void parpadeo(){ // la otra función que controlará el potenciometro y que es la de parpadeo(); de los leds.

digitalWrite(13,HIGH); // hacemos que luzca el led del pin 13

digitalWrite(12,HIGH); // hacemos que luzca el led del pin 12

delay(potenciometro); // hacemos que el potenciometro controle los tiempos de parpadeo de los leds

digitalWrite(13,LOW); // hacemos que no luzca el led del pin 13

digitalWrite(12,LOW); // hacemos que no luzca el led del pin 12

delay(potenciometro); // lo mismo, hacemos que el potenciometro controle los tiempos de parpadeo.

}

Step 5: Sensor De Luz


const int led=12; // definimos como led al led del pin 12
const int led2=13; // definimos como led2 al led del pin 13

int potenciometro; // definimos la variable del potenciometro

const int pul=10; // declaramos la variable del pulsador, que está en el pin digital 10

int val; // se declara la variable val, que es donde está el pulsador

const int sensor=A1; // declaramos la variable del sensor de luz, que se encuentra en el pin analógico 1

const int tapado=500; // definimos la variable tapado a los valores superiores a 500lux.

void setup() { // put your setup code here, to run once:

pinMode(A0,OUTPUT); // pin analógico donde está el potenciometrio y a dónde enviaremos información ya que es output.

pinMode(13,OUTPUT); // pin digital dónde está un led y donde enviaremos información

pinMode(12,OUTPUT); // pin digital dónde está el otro led y donde enviaremos información

pinMode(11,OUTPUT); // pin digital dónde está el zumbador y donde enviaremos información

pinMode (10,INPUT); // pin digital dónde está el pulsador y que envía información a la placa de si está o no apretado.

Serial.begin(9600); // abrimos el puerto

pinMode (sensor,INPUT); // pin analógico(A1) definido en la variable y el cual enviará información a la placa ya que es un sensor que detecta la luz y es INPUT.

}

void loop() { // put your main code here, to run repeatedly:

val=digitalRead(10); // la variable es igual al valor que nos da el pulsador, ya que es lo que la placa lee en el pin digital 10.

int luz = analogRead(sensor); // definimos la variable luz que será el valor de luz ambiental que leerá el sensor.

potenciometro = analogRead(A0); // declaramos a que equivale el potenciometro, que está en el pin analógico 0.

Serial.println (potenciometro); // hacemos que imprima los valores del potenciometro cada uno en una línea.

if(val==HIGH || luz >= tapado) { // Aquí definimos dos cosas, la primera es respecto al pulsador, que dice que si, if, esta pulsado, se active el zumbador y el parpadeo. También definimos que si la luz es mayor o igual a tapado, significa que la luz en ese momento es mayor a la normal, ambiental, por lo que se active la alarma, tanto parpadeo como zumbador.

parpadeo(); // es la función que está desarrollada más abajo y que la controla el potenciometro, controlando el parpadeo de los leds.

zumbador(); // aquí igual, la función está desarrollada abajo, y es controlada por el potenciometro, controlando el zumbido del zumbador.

}

}

void zumbador(){ // es la función zumbador(); hecha, la que controlará el potenciometro.

tone(11,700); // hacemos que el zumbador suene a una frecuencia determinada

delay(potenciometro); // el potenciometro controlará los tiempos de sonido del zumbador

noTone(11); } // hacemos que el zumbador no suene

void parpadeo(){ // la otra función que controla el potenciometro que es la del parpadeo(); de los leds

digitalWrite(13,HIGH); // hacemos que luzca el led del pin 13

digitalWrite(12,HIGH); // hacemos que luzca el led del pin 12

delay(potenciometro); // hacemos que el potenciometro controle los tiempos de parpadeo de los leds

digitalWrite(13,LOW); // hacemos que no luzca el led del pin 13

digitalWrite(12,LOW); // hacemos que no luzca el led del pin 12

delay(potenciometro); //lo mismo, hacemos que el potenciometro controle los tiempos de parpadeo de los leds.

}

Step 6: Sensor Movimiento

int val; // se declara la variable val, que es donde está el zumbador

const int sensor=A1; // declarar la variable del sensor de luz, que se encuentra en pin analógico 1

const int tapado=500; // definir la variable tapado a los valores superiores a 500 lux

int movimiento=LOW; // definir la variable movimiento

void setup() { // put your setup code here, to run once:

pinMode(A0,OUTPUT); //decimos en que pin analógico está conectado el potenciometro y a dónde enviaremos información porque es output

pinMode(13,OUTPUT); // aquí estará conectado un led y le enviaremos información, output

pinMode(12,OUTPUT); // aquí estará conectado un led y le enviaremos información, output

pinMode(11,OUTPUT); // aquí estará conectado al zumbador y le enviaremos información, output

pinMode (10,INPUT); // pin digital dónde está el pulsador y envía información a la placa de si está o no apretado ya que es input

pinMode(2,INPUT); // pin digital dónde está el sensor de movimiento y envía información a la placa ya que es input

Serial.begin(9600); // definimos el puerto de salida

pinMode (sensor,INPUT); // pin analógico (A1) definido en la variable y el cual enviará información a la placa ya que es un sensor detecta la Luz y que es input

}

void loop() { // put your main code here, to run repeatedly:

val=digitalRead(10); // la variable es igual al valor que nos de el pulsador, ya que es lo que la placa lee en el pin 10.

int luz = analogRead(sensor); // definimos la variable luz que será el valor de luz en ambiental que le da el sensor

potenciometro = analogRead(A0); // declaramos a que equivale el potenciometro, que está en el pin analógico 0.

int mov = digitalRead (2); // la variable movimiento es igual a los valores que lee el sensor de movimiento conectado al pin 2

Serial.println (mov); // imprime los valores, cada uno en una línea, que envía a la placa el sesor de movimiento

if(val==HIGH || luz >= tapado || mov == 1) { // aquí definimos tres cosas, la primera es respecto al pulsador, que dice que si "If" está pulsado se active el zumbador y el parpadeo. También definimos que si La Luz es igual o mayor a tapado, significa que La Luz en ese momento es mayor a la normal, ambiental, por lo que se activa la alarma tanto parpadeo como zumbador.Y por si detecta un movimiento mayor de 1 se activa la alarma.

parpadeo(); // esta función está desarrollada más abajo y hacemos que el potenciometro la controle, que controle el parpadeo de los leds.

zumbador(); // aquí igual, esta función está hecha más abajo y es controlada por el potenciometro.

}

}

void zumbador(){ // es la función de zumbador(); hecha, la que controlará el potenciometro

tone(11,700); // hacemos que el zumbador suene a una frecuencia determinada

delay(potenciometro); // el potenciometro controlará los tiempos de sonido del zumbador

noTone(11); } // hacemos que el zumbador no suene

void parpadeo(){ //la otra función que controlará el potenciometro y que es la de parpadeo(); de los leds.

digitalWrite(13,HIGH); // hacemos que luzca el led del pin 13

digitalWrite(12,HIGH); // hacemos que luzca el led del pin 12

delay(potenciometro); // hacemos que el potenciometro controle los tiempos de parpadeo de los leds

digitalWrite(13,LOW); // hacemos que no luzca el led del pin 13

digitalWrite(12,LOW); // hacemos que no luzca el led del pin 12

delay(potenciometro); // lo mismo, hacemos que el potenciometro controle los tiempos de parpadeo.

}