Ventilatorerne, der plejede at køle elektronikken, findes i to former. Nogle er miniature, de sendes direkte til de afkølede komponenter, andre er større, de fører luft gennem hele huset. Det er bedst, når begge typer fans bruges sammen. Ofte "træsere" fans af den anden type ved fuld styrke, selvom dette ikke er nødvendigt. Fra dette slides lejet hurtigere, og for meget støj forstyrrer brugeren. Den enkleste kontakttermostat kan tænde og slukke ventilatoren, mens lagerressourcen kun forbruges, når motoren kører, men skarpt optræden og forsvindende støj kan være endnu mere irriterende. En mere sofistikeret termostat - for eksempel foreslået af forfatteren Instructables under kaldenavnet AntoBesline - styrer frekvensen af ventilatormotoren med en PWM og opretholder den nødvendige og tilstrækkelige til at opnå den indstillede temperatur. Det tilrådes at køre luft gennem kabinettet nedenfra og op og placere temperatursensoren ovenfra. Du kan også installere filtre for at forhindre støv i at komme ind i kabinettet, men de reducerer ydelsen.
En temperatur- og fugtighedsføler af DHT11-typen er egnet bare til termostaten, der styrer en anden type ventilator, da den måler temperaturen på luft og ikke på nogen overflade. Dets støtte ydes af to biblioteker, der er anlagt her og her. Hvis du har brug for at udstyre en ventilator af den første type med en termostat, bliver du nødt til at bruge en anden sensor, der måler overfladetemperaturen på den komponent, der skal køles. Programmet skal derefter gøres om, og bibliotekerne har brug for andre, fordi sensoren kan afvige både i grænsefladen og strukturen af de data, der sendes til det.
Ved hjælp af følgende illustration viser guiden, hvad PWM er, de fleste læsere ved det allerede. På grund af det faktum, at udgangstransistoren altid enten er helt lukket eller helt åben, tildeles der altid meget lav effekt. Som du ved er strømmen lig med produktet fra strøm og spænding, og her, med transistoren lukket, er strømmen meget lille, og med den åbne transistor er spændingsfaldet over det lille. En af de to faktorer er altid lille, hvilket betyder, at deres produkt også er lille. Næsten al magt i PWM-controller går til belastningen, ikke til transistoren.
Skibsføreren udarbejder et termostatdiagram:
Arduino den drives af en 5-volt kilde, ventilatoren - fra en 12-volt.Hvis du bruger en 5-volt ventilator, kan du gøre med en kilde med tilstrækkelig belastningskapacitet, der fører Arduino gennem et simpelt LC-filter. En diode, der er forbundet parallelt med ventilatoren i den modsatte retning, er nødvendig, hvis motoren er en kollektormotor (som i nogle moderne USB-blæsere). Når du bruger en computerventilator med en Hall-sensor og elektronisk viklingskontrol, er denne diode valgfri.
Teksten til programmet udarbejdet af guiden er ret kort, det er angivet nedenfor:
# inkluder "DHT.h"
#definér dht_apin A1
#include
Flydende krystal lcd (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;
ugyldig opsætning ()
{
pinMode (ventilator, OUTPUT);
pinMode (led, OUTPUT);
lcd.begin (16, 2);
dht.begin ();
lcd.print ("Room Temp Based");
lcd.set markør (0, 1);
lcd.print ("Fan hastighed Ctrl");
forsinkelse (3000);
lcd.clear ();
}
void loop ()
{
flyde temperatur;
temperatur = dht.readTemperature ();
temp = temperat; // Gem temperaturværdien i temp-variabel
Serial.print (temp);
if (temp = tempMin) && (temp <= tempMax)) // hvis temperaturen er højere end minimumstemp
{
fanSpeed = temp; // map (temp, tempMin, tempMax, 0, 100); // den faktiske hastighed på ventilator // kort (temp, tempMin, tempMax, 32, 255);
fanSpeed = 1,5 * fanSpeed;
fanLCD = kort (temp, tempMin, tempMax, 0, 100); // ventilatorens hastighed til at vises på LCD100
analogWrite (ventilator, fanSpeed); // drej ventilatoren med fanhastighed
}
if (temp> tempMax) // hvis temp er højere end tempMax
{
digitalWrite (ledet, HØJT); // tænd for ledning
}
ellers // ellers drejning af led
{
digitalWrite (ledet, lavt);
}
lcd.print ("TEMP:");
lcd.print (temp); // Vis temperaturen
lcd.print ("C");
lcd.set markør (0,1); // flyt markøren til næste linje
lcd.print ("FANS:");
lcd.print (fanLCD); // vis blæserhastigheden
lcd.print ("%");
forsinkelse (200);
lcd.clear ();
}
En skitse kan også downloades som en fil her. Den ukendte udvidelse skal ændres til ino.
De følgende fotos viser samlingen af prototypenheden på et brædbræt type bord:
Efter at have samlet en prototype, tester masteren den. Temperaturen vises i grader Celsius, den aktuelle spændingsværdi på blæseren - i procent af det maksimale.
Det gjenstår at samle kredsløbet ved lodning og gøre termostaten til en del af det hjemmelavetsom han vil køle af.