Sunteți pe pagina 1din 2

Practica #11: SECADORA

Circuitos Digitales

Resumen Resultados

El circuito está conformado por un display líquido, 4 Los resultados se ven cuando al pasar un objeto frente al
sensores, un buzzer que será el que ejemplifique una sensor el circuito no se activa si el gatillo (pulsador) no se
secadora activa, y un pulsador que será el gatillo de encuentra presionado al mismo tiempo. Y no se apaga
nuestra secadora. La secadora se activara solo pulsando el hasta que el gatillo y el sensor se encuentren apagados.
gatillo y cuando este cerca de la zona a secar y solo se
apagara cuando el gatillo no este pulsado y lejos de la zona
(o persona).
Ilustración 2
Desarrollo
Apéndice
 Se realizan dos Tablas de verdad. Una para
const int Trigger = 2; //Pin digital 2 para el Trigger del
encender y otra para apagar la secadora. sensor
G S ON G S OFF const int Echo = 3; //Pin digital 3 para el Echo del sensor
0 0 0 0 0 0 int gatillo = 4;
0 1 0 0 1 1 int secadora = 5;
1 0 0 1 0 0 int gatilloValue = 0;
1 1 1 1 1 1 int cerca = 10; //cm
int lejos = 11; //cm
void setup() {
 Diseño de circuito pinMode(gatillo, INPUT);
pinMode(secadora, OUTPUT);
Serial.begin(9600);//iniciailzamos la comunicación
pinMode(Trigger, OUTPUT); //pin como salida
pinMode(Echo, INPUT); //pin como entrada
digitalWrite(Trigger, LOW); //Inicializamos el pin con 0
}
void loop() {
gatilloValue = digitalRead(gatillo);
long t; //tiempo que demora en llegar el eco
long d; //distancia en centimetros
digitalWrite(Trigger, HIGH);
delayMicroseconds(10); //Enviamos un pulso de 10us
digitalWrite(Trigger, LOW);
t = pulseIn(Echo, HIGH); //Obtenemos el ancho del pulso
Ilustración 1 d = t/59; //escalamos el tiempo a una distancia en cm
Serial.print("distancia: ");
La simulación en tiempo real del circuito, así como el Serial.print(d); //Enviamos serialmente el valor de la
código del programa en Arduino, lo podemos encontrar en distancia
el siguiente link: Serial.print("cm");
Serial.println();
https://www.tinkercad.com/things/bB65 delay(100); //Hacemos una pausa de 100ms
FUV1lL8 while(gatilloValue == HIGH && d < 10){
digitalWrite(secadora, HIGH);
gatilloValue = digitalRead(gatillo);
long t; //tiempo que demora en llegar el eco
long d; //distancia en centimetros
digitalWrite(Trigger, HIGH);
delayMicroseconds(10); //Enviamos un pulso de 10us
digitalWrite(Trigger, LOW);
t = pulseIn(Echo, HIGH); //Obtenemos el ancho del
pulso
d = t/59; //escalamos el tiempo a una distancia en cm
if(gatilloValue == HIGH || d < 10){
digitalWrite(secadora, HIGH);
}
gatilloValue = digitalRead(gatillo);
digitalWrite(Trigger, HIGH);
delayMicroseconds(10); //Enviamos un pulso de 10us
digitalWrite(Trigger, LOW);
t = pulseIn(Echo, HIGH); //Obtenemos el ancho del
pulso
d = t/59; //escalamos el tiempo a una distancia en cm
}
if(gatilloValue == LOW && d > 10){
digitalWrite(secadora, LOW);
}
if(gatilloValue == HIGH && d > 10){
digitalWrite(secadora, LOW);
}
}

S-ar putea să vă placă și