Control de temperatura Arduino
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 |
Aplicaciones y servicios en línea
|
Acerca de este proyecto
El Proyecto
Queremos mostrar el funcionamiento de un sistema de control de temperatura mediante histéresis.
Componentes
Los componentes que usamos fueron los siguientes:
Control de temperatura
El proyecto hace un control de temperatura, modelamos la siguiente situación:
El sistema arranca y muestra la temperatura, si la temperatura llega a los 25 grados, entonces se activa el led verde y la habitación comienza a enfriar hasta que la temperatura baja a 23 grados, el aire acondicionado se apaga (led rojo) hasta que la temperatura vuelva a subir.
Y finalmente tenemos un video donde puedes ver la operación:
Código
- Control de temperatura
Control de temperatura Arduino
/ * Por Alexis Santiago Allende * // * Última actualización:12/03/2017 * / # include "DHT.h" // Sensor DHT Library # include// LCD Library #define DHTPIN 12 // Definir el pin del sensor (pin 12) #define DHTTYPE DHT22 // Qué sensor usa DHT dht (DHTPIN, DHTTYPE); // Crear objeto sensorLiquidCrystal lcd (8, 9, 4, 5, 6, 7); // Crear objeto lcd usando estos pines 8,9,4,6,7boolean a =LOW, b =HIGH; float h =0, t =0; const int ledPin =3; // Pines LED para control de temperatura const int ledPin2 =2; long previousMillis =0; long interval =2000; // Leer el sensor cada 2 segundos. Void setup () {lcd.begin (16, 2); // Iniciar lcd lcd.setCursor (0,0); // Establecer en la posición 0,0 // establecer el pin digital como salida:pinMode (ledPin, OUTPUT); // Cambiar a la salida my pinspinMode (ledPin2, OUTPUT); dht.begin (); // Iniciar DHT22 sensordigitalWrite (ledPin2 , LOW); // Apagar LEDdigitalWrite (ledPin, LOW); // Apagar LEDlcd.print ("Tempera:"); // imprimir en lcd esta palabra lcd.setCursor (0,1); // Cambiar la posición del cursor lcd .print ("Humedad:"); // imprime en lcd esta palabra} void loop () {unsigned long currentMillis =millis (); // tiempo transcurrido if (currentMillis - previousMillis> intervalo) // Comparación entre el tiempo transcurrido y el tiempo en el que se ejecutará la acción {previousMillis =currentMillis; // "La última vez es ahora" h =dht.readHumidity (); // valor de humedad t =dht.readTemperature (); // valor de temperatura en centígrados si quieres farenheit cambiar a // t =dht.readTemperature (true); // A continuación se muestran los sensores de datos de impresión en lcd lcd.setCursor (10,0); lcd.print (t); lcd.setCursor (10,1); lcd.print (h); if (t> =25 &&a ==LOW) // si la temperatura es superior a 25 grados {digitalWrite (ledPin, HIGH); // Aire acondicionado activo digitalWrite (ledPin2, LOW); a =ALTO; b =BAJO; } else if (t <=23 &&b ==LOW) // si la temperatura es inferior a 23 grados {digitalWrite (ledPin2, HIGH); digitalWrite (ledPin, LOW); // Apague el aire acondicionado a =LOW; b =ALTO; }}}
Esquemas
Proceso de manufactura
- Dados digitales Arduino
- Persianas inteligentes
- Controlar el aceptador de monedas con Arduino
- Centro de control de Arduino
- Registrador de datos de temperatura y humedad
- ¡Arduino con Bluetooth para controlar un LED!
- Iron Man
- Sensor de obstáculos simple con Arduino
- Encuéntrame
- Brazo robótico Arduino impreso en 3D
- Control del humidificador Arduino