VIDEO:
Datos:
Alumno: Pablo Rocero Vicente
Asignatura: Innovación Docente de la Especialidad de Tecnología
Titulación: Máster Universitario en Profesor de Educación Secundaria Obligatoria y Bachillerato, Formación Profesional y Enseñanza de Idiomas.
Centro: Universidad de Salamanca
Curso: 2022/23
Contexto:
El proyecto está destinado para alumnos de 1º de la ESO en la asignatura de TECNOLOGÍA Y DIGITALIZACIÓN que comienzan con pequeños proyectos de programación para que consigan manejar de manera sencilla y original Arduino.
Descripción del proyecto:
En el siguiente proyecto se procede a la realización de un sistema de extracción y renovación de aire.
La aplicación está destinada para cocinas de restaurantes, ya que son entornos en el cual tras la elaboración continua de alimentos la temperatura y la humedad sufren un incremento rápido.
Cuando la cocina supera un valor de temperatura y humedad marcada se activa instantáneamente una luz de alarma y un ventilador de extracción. En todo momento se puede observar en el monitor los valor de humedad y temperatura en tiempo real.
Esquema del proyecto:
Esquema del Circuito:
Desglose de Material:
Código del Proyecto:
//Proyecto Pablo Roncero Vicente:
//Bibliotecas de funcionamiento para la pantalla
y el sensor de temperatura y humedad.
#include <LiquidCrystal.h>
#include <DHT.h>
// Definimos el pin digital donde se conectan el sensor de humedad
y temperatura, el rele que activa el motor, y la luz.
#define DHTPIN 2
#define MOTOR 6
#define LED 5
// Definimos el tipo de sensor de temperatura.
#define DHTTYPE DHT11
// Activamos la pantalla y activamos el sensor
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
DHT dht(DHTPIN, DHTTYPE);
void setup() {
// Iniciamos el monitor serie
Serial.begin(9600);
// Iniciamos el sensor de temp. y hum.
dht.begin();
// Iniciamos la pantalla
lcd.begin(16, 2);
// Escribo mi nombre.
lcd.print("Pablo");
lcd.setCursor(0, 1);
lcd.print("Roncero");
// Escribo los pines del motor y el led como salida
pinMode(MOTOR, OUTPUT);
pinMode(LED, OUTPUT);
}
// Inciamos el bucle del programa
void loop() {
delay(2000);
// Leemos el valor de la humedad
float h = dht.readHumidity();
// Leemos la temperatura en grados centígrados
float t = dht.readTemperature();
// Comprobamos si ha habido algún error en la lectura
if (isnan(h) || isnan(t)) {
Serial.println("Error obteniendo los datos del sensor DHT11");
return;
}
// Escribimos en la primera linea de la pantalla la temperatura
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(t);
lcd.print(" C");
// Escribimos en la segunda linea de la pantalla la humedad
lcd.setCursor(0, 1);
lcd.print("Hum: ");
lcd.print(h);
lcd.print(" %");
// Funcion si en el cual indicamos que si la temperatura y la humedad
es mayor a 27 grados y 60% se encienda la led y
el motor y sino se apagen.
if((t > 27.0) && (h > 60)){
digitalWrite(MOTOR, HIGH);
digitalWrite(LED, HIGH);
Serial.println("La temperatura es mayor que 25");
} else {
digitalWrite(MOTOR, LOW);
digitalWrite(LED, LOW);
Serial.println("La temperatura es menor que 25");
}
delay(3000);
}
No hay comentarios:
Publicar un comentario