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.
}
Comments