domingo, 18 de febrero de 2018

Prototipos de alarma




Programación:  Sistema de alarmas

Programación del sistema de luces de la alarma.

practica

int pinRojo = 3;
int pinAzul = 5;
int piezo = 6;
int boton = 2;
int estado = 0;

void setup()
{
  pinMode(pinRojo, OUTPUT);
  pinMode(pinAzul, OUTPUT);
  pinMode(piezo, OUTPUT); 
  pinMode(boton, INPUT);
  Serial.begin (9600);
}

void loop()
{
   while (digitalRead(boton)==0)
  {
analogWrite(pinRojo,HIGH); 
analogWrite(pinAzul,LOW);
delay (100);
analogWrite(pinRojo,LOW); 
analogWrite(pinAzul,HIGH);
delay (100);
tone (piezo, 300, 100);
Serial.println(digitalRead(boton));
delay(100);
 }

 while (digitalRead(boton)==1)

 {
analogWrite(pinRojo,LOW); 
analogWrite(pinAzul,LOW);
Serial.println(digitalRead(boton));
 }
}


Nota
No puedo hacer la explicación en el vídeo porque me queda muy pesado y no me deja subirlo. Lo intente varias veces y lo comprimí pero aún así no se pude.

Explicación de la programación de prototipos de alarmas

Si presiono el botón el piezo queda en silencio y los LEDS dejan de encender.

En esta práctica dirigida programamos los LEDS con las variables  rojo y azul, piezo, botón y estado.

También definimos los puertos de salida de arduino (OUTPUT);  a las variables pinRojo, pinAzul, piezo,botón y estado.

Y por ultimo  el procedimiento base para  encender y apagar los LEDS 

Si apretó el botón el piezo deja de sonar y los  LEDS se apagan.



 Reto 1
Controlar que la alarma suene solo  cuando detecte movimiento.


//set pin numbers

const int ledPin =13;
const int buzzerPin =12;
const int ldrPin = A0;

void setup() {
  Serial.begin (9600);

  pinMode(ledPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  pinMode(ldrPin, INPUT);

 }

void loop() {

int ldrStatus = analogRead(ldrPin); // read the state of the LDR value

if (ldrStatus >= 400) { 

       tone (buzzerPin,100);
       digitalWrite(ledPin,HIGH);
       delay(100);

       noTone (buzzerPin);
       digitalWrite(ledPin,LOW);
       delay(100);

       Serial.println("-----------ALARM ACTIVATED----------");

       }

else {
  noTone (buzzerPin);
  digitalWrite(ledPin,LOW);

  Serial.println("ALARM DEACTIVATED");
   }
 
 }
  

Explicación de la programación  del reto 1

Controlar que la alarma suene solo cuando detecte movimiento.

Al tocar la fotocelda ella detecta movimiento haciendo que el leds se active y emita un sonido por medio del piezo  al soltar   o alejarme de la fotocelda el led se desactiva porque ya no detecta movimiento. 

Iniciamos con las variables que nos interesan 
Variables constantes declaradas en pin 12 y pin 13 y asigna  const int ldrPin = A0;    un valor inicial igual a 0.

El la programación definimos los puertos de salida y entrada de datos.
  pinMode(ledPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  pinMode(ldrPin, INPUT);


Y la parte de procedimientos donde la alarma se activa cuando detecta movimiento y desactiva cuando no hay ningún tipo de movimiento.


    digitalWrite(ledPin,HIGH);// Asigna el valor de alto del pin.
 delay(100); // espera 1 segundo


 digitalWrite(ledPin,LOW);//Asigna el valor bajo del pin.
       delay(100); espera 1 segundo




martes, 13 de febrero de 2018

Prototipos interactivos 2





En este álbum, estaremos registrando nuestros aprendizajes, logros, productos  y dificultades, incluyendo las evidencias de cada uno de los ejercicios propuestos en las unidades del curso.