Los ventiladores utilizados para enfriar la electrónica vienen en dos formas. Algunos son en miniatura, se envían directamente a los componentes enfriados, otros son más grandes, conducen aire a través de todo el espacio de la carcasa. Es mejor cuando ambos tipos de ventiladores se usan juntos. A menudo, los fanáticos del segundo tipo están constantemente "trillando" a plena potencia, incluso si esto no es necesario. A partir de esto, el rodamiento se desgasta más rápido y demasiado ruido interfiere con el usuario. El termostato de contacto más simple puede encender y apagar el ventilador, mientras que el recurso de los cojinetes se consume solo cuando el motor está funcionando, pero la aparición brusca y la desaparición del ruido pueden ser aún más molestos. Un termostato más sofisticado, por ejemplo, propuesto por el autor Instructables bajo el apodo de AntoBesline, controla la frecuencia de rotación del motor del ventilador con un PWM y lo mantiene necesario y suficiente para alcanzar la temperatura establecida. Es aconsejable conducir el aire a través del espacio de la carcasa de abajo hacia arriba y colocar el sensor de temperatura desde arriba. También puede instalar filtros para evitar que entre polvo en el gabinete, pero reducirán el rendimiento.
Un sensor de temperatura y humedad del tipo DHT11 es adecuado solo para el termostato que controla un segundo ventilador de tipo, ya que mide la temperatura del aire y no de cualquier superficie. Su soporte es proporcionado por dos bibliotecas establecidas aqui y aqui. Si necesita equipar un ventilador del primer tipo con un termostato, deberá usar otro sensor que mida la temperatura de la superficie del componente a enfriar. El programa tendrá que ser rehecho y las bibliotecas necesitarán otros, porque el sensor puede diferir tanto en la interfaz como en la estructura de los datos que se le transmiten.
Usando la siguiente ilustración, el asistente muestra qué es PWM, la mayoría de los lectores ya lo saben. Debido al hecho de que el transistor de salida siempre está completamente cerrado o completamente abierto, siempre se le asigna una potencia muy baja. Como saben, la potencia es igual al producto de la corriente y el voltaje, y aquí, con el transistor cerrado, la corriente es muy pequeña, y con el transistor abierto, la caída de voltaje a través de él es pequeña. Uno de los dos factores es siempre pequeño, lo que significa que su producto también es pequeño. Casi toda la energía en el controlador PWM va a la carga, no al transistor.
El maestro dibuja un diagrama del termostato:
Arduino Está alimentado por una fuente de 5 voltios, el ventilador, de 12 voltios.Si usa un ventilador de 5 voltios, puede hacerlo con una fuente con capacidad de carga suficiente, alimentando a Arduino a través de un simple filtro LC. Se necesita un diodo conectado en paralelo con el ventilador en la dirección opuesta si el motor es un motor colector (como en algunos ventiladores USB modernos). Cuando se usa un ventilador de computadora con un sensor Hall y control electrónico de bobinado, este diodo es opcional.
El texto del programa compilado por el asistente es bastante corto, se da a continuación:
# incluye "DHT.h"
#define dht_apin A1
#include
LCD de cristal líquido (7,6,5,4,3,2);
DHT dht (dht_apin, DHT11);
int fan = 11;
int led = 8;
int temp;
int tempMin = 30;
int tempMax = 60;
int fanSpeed;
int fanLCD;
configuración nula ()
{
pinMode (ventilador, SALIDA);
pinMode (led, SALIDA);
lcd.begin (16, 2);
dht.begin ();
lcd.print ("Room Temp Based");
lcd.setCursor (0, 1);
lcd.print ("Velocidad del ventilador Ctrl");
retraso (3000);
lcd.clear ();
}
bucle vacío ()
{
temperatura de flotación;
temperatura = dht.readTemperature ();
temp = temperatura; // almacena el valor de temperatura en la variable temp
Serial.print (temp);
if (temp = tempMin) && (temp <= tempMax)) // si la temperatura es más alta que la temperatura mínima
{
fanSpeed = temp; // map (temp, tempMin, tempMax, 0, 100); // la velocidad real del ventilador // map (temp, tempMin, tempMax, 32, 255);
fanSpeed = 1.5 * fanSpeed;
fanLCD = mapa (temp, tempMin, tempMax, 0, 100); // velocidad del ventilador para mostrar en LCD100
analogWrite (fan, fanSpeed); // gira el ventilador a la velocidad del ventilador
}
if (temp> tempMax) // si temp es mayor que tempMax
{
digitalWrite (led, ALTO); // encender led
}
más // más giro de led
{
digitalWrite (led, BAJO);
}
lcd.print ("TEMP:");
lcd.print (temp); // muestra la temperatura
lcd.print ("C");
lcd.setCursor (0,1); // mueve el cursor a la siguiente línea
lcd.print ("FANS:");
lcd.print (fanLCD); // muestra la velocidad del ventilador
lcd.print ("%");
retraso (200);
lcd.clear ();
}
Además, un boceto se puede descargar como un archivo aqui. La extensión desconocida deberá cambiarse a ino.
Las siguientes fotos muestran el ensamblaje del dispositivo prototipo en una placa de tipo placa de pruebas:
Habiendo ensamblado un prototipo, el maestro lo prueba. La temperatura se muestra en grados Celsius, el valor de voltaje real en el ventilador, como un porcentaje del máximo.
Queda por ensamblar el circuito mediante soldadura y hacer que el termostato sea parte de ese hecho en casaque él va a enfriar