» Elektronika » Arduino »Termostatas ventiliatoriui

Termostatas ventiliatoriui



Ventiliatoriai, naudojami aušinti elektroniką, būna dviejų formų. Kai kurie yra miniatiūriniai, jie siunčiami tiesiai į atvėsintus komponentus, kiti yra didesni, jie praleidžia orą per visą korpuso erdvę. Geriausia, kai abu ventiliatorių tipai yra naudojami kartu. Dažnai antrojo tipo gerbėjai nuolat „klesta“ visu pajėgumu, net jei tai nėra būtina. Nuo to guolis susidėvi greičiau, o per didelis triukšmas trukdo vartotojui. Paprasčiausias kontaktinis termostatas gali įjungti ir išjungti ventiliatorių, o guolio ištekliai sunaudojami tik tada, kai variklis veikia, tačiau staigiai atsirandantis ir išnykstantis triukšmas gali dar labiau erzinti. Sudėtingesnis termostatas, kurį, pavyzdžiui, pasiūlė autorius „Instructables“ slapyvardžiu AntoBesline, kontroliuoja ventiliatoriaus variklio sukimosi dažnį su PWM ir palaiko jį būtiną bei pakankamą nustatytai temperatūrai pasiekti. Patartina praleisti orą per korpuso erdvę iš apačios į viršų, o temperatūros jutiklį pastatyti iš viršaus. Taip pat galite įdiegti filtrus, kad dulkės nepatektų į gaubtą, tačiau jie sumažins našumą.

Temperatūros ir drėgmės jutiklis, toks kaip DHT11, yra tinkamas tik termostatui, valdančiam antrojo tipo ventiliatorių, nes jis matuoja oro, o ne bet kokio paviršiaus, temperatūrą. Ją palaiko dvi išdėstytos bibliotekos čia ir čia. Jei pirmojo tipo ventiliatorius turite aprūpinti termostatu, turėsite naudoti kitą jutiklį, kuris matuoja aušinamo komponento paviršiaus temperatūrą. Tada programa turės būti perdaryta, o reikės kitų, nes jutiklis gali skirtis tiek sąsaja, tiek jai perduodamų duomenų struktūra.

Naudodamas šią iliustraciją vedlys parodo, kas yra PWM, dauguma skaitytojų tai jau žino. Dėl to, kad išėjimo tranzistorius visada yra arba visiškai uždarytas, arba visiškai atidarytas, jam visada skiriama labai maža galia. Kaip žinote, galia yra lygi srovės ir įtampos sandaugai, o čia, uždarius tranzistorių, srovė yra labai maža, o atidarius - įtampos kritimas per ją yra mažas. Vienas iš dviejų veiksnių visada yra mažas, o tai reiškia, kad jų produktas taip pat yra mažas. Beveik visa PWM valdiklio galia eina į apkrovą, o ne į tranzistorių.

Termostatas ventiliatoriui


Meistras parengia termostato schemą:



Arduino jį maitina 5 voltų šaltinis, ventiliatorių - iš 12 voltų.Jei naudojate 5 voltų ventiliatorių, galite tai padaryti su vienu šaltiniu, turinčiu pakankamą krovumą, tiekdami Arduino per paprastą LC filtrą. Diodas, sujungtas lygiagrečiai su ventiliatoriumi priešinga kryptimi, reikalingas, jei variklis yra kolektorinis variklis (kaip ir kai kuriuose šiuolaikiniuose USB ventiliatoriuose). Kai naudojate kompiuterio ventiliatorių su „Hall“ jutikliu ir elektroniniu apvijų valdymu, šis diodas yra neprivalomas.

Vedlio sudarytos programos tekstas yra gana trumpas, jis pateiktas žemiau:

# įtraukti „DHT.h“
#define dht_apin A1
# įtraukti

Skystųjų kristalų LCD (7,6,5,4,3,2);
DHT dht (dht_apin, DHT11);
vidinis ventiliatorius = 11;
int led = 8;
int temp;
int tempMin = 30;
int tempMax = 60;
int fanSpeed;
int fanLCD;
negaliojanti sąranka ()
{
   pinMode (ventiliatorius, IŠĖJIMAS);
   pinMode (led, OUTPUT);
   lcd.begin (16, 2);
   dht.begin ();
   lcd.print („Remiantis kambario temperatūra“);
   lcd.setCursor (0, 1);
   lcd.print („Ventiliatoriaus greitis Ctrl“);
   vėlavimas (3000);
   lcd.clear ();
}
tuščia kilpa ()
{
    plūdės temperatūra;
    temperatūra = dht.readTemperature ();
    temp = temperatūra; // saugokite temperatūros vertę kintamajame
   Serial.print (temp);
   if (temp  = tempMin) && (temp <= tempMax)) // jei temperatūra aukštesnė už minimalią temp
   {
       fanSpeed ​​= temp; // žemėlapis (temp, tempMin, tempMax, 0, 100); // tikrasis ventiliatoriaus greitis // žemėlapis (temp, tempMin, tempMax, 32, 255);
       fanSpeed ​​= 1,5 * fanSpeed;
       fanLCD = žemėlapis (temp, tempMin, tempMax, 0, 100); // ventiliatoriaus greitis rodomas LCD100
       analoWrite (ventiliatorius, ventiliatoriaus greitis); // sukite ventiliatorių „fanSpeed“ greičiu
   }
      if (temp> tempMax) // jei temp yra didesnė nei tempMax
     {
     „digitalWrite“ (led, HIGH); // įjungti led
     }
   else // else led posūkis
     {
     „digitalWrite“ (led, LOW);
     }
      lcd.print („TEMP:“);
   lcd.print (temp); // rodoma temperatūra
   lcd.print („C“);
   lcd.setCursor (0,1); // perkelkite žymeklį į kitą eilutę
   lcd.print („FANS:“);
   lcd.print (fanLCD); // rodykite ventiliatoriaus greitį
   lcd.print („%“);
   vėlavimas (200);
   lcd.clear ();
 }


Taip pat eskizą galima atsisiųsti kaip failą čia. Nežinomas plėtinys turės būti pakeistas į ino.

Šiose nuotraukose parodytas įrenginio prototipo surinkimas ant lentos tipo plokštės:









Surinkęs prototipą, meistras jį išbando. Temperatūra rodoma laipsniais Celsijaus, o tikroji ventiliatoriaus įtampos vertė - procentais nuo maksimalios vertės.







Lieka surinkti grandinę litavimo būdu ir padaryti ją termostatu naminiskurį jis atvės.
8
8
6

Pridėti komentarą

    • šypsotisšypsosixaxagerainežiniaYahoonea
      viršininkassubraižytikvailystaiptaip-taipagresyvusslapta
      atsiprašaušoktišokis2šokis3atleiskpadėtigėrimai
      sustotidraugaigeraigerašvilpukassupyktiliežuvis
      rūkytiplojimaiklastingaspareikštiniokojantisdon-t_mentionatsisiųsti
      šilumanedrąsusjuoktis1mdasusitikimasmoskingneigiamas
      not_ipopkornasnubaustiskaitytigąsdintigąsdinapaieška
      gundytiačiūtaito_clueumnikūmussusitarti
      blogaibičiųjuoda akisblum3skaistalaipasigirtinuobodulys
      cenzūruotamalonumasslapta2grasintipergalėju„sun_bespectacled“
      šoktipagarbalolišlenktaslaukiamekrutojusya_za
      ya_dobryipagalbininkasne_huliganne_othodifludisuždraustiarti
10 komentarai
Autorius
Na, apatiniame diapazono gale galima įgyvendinti histerezę. Šiek tiek pakeisdami programą. Likusioje diapazone, kur ventiliatorius vis dar sukasi, keičiasi tik greitis, tai įmanoma be histerezės.
Citata: tormozedison
Histerezė reikalinga esant aštriai įjungtai ir išjungtai apkrovai. Sklandžiai reguliuojant PWM, kaip čia, jis yra nenaudingas.

Nesutinku, histerezės reikia būtent pagal įjungimo / išjungimo logiką. Pvz., Ventiliatorius, net esant mažiausiam greičiui, įsijungia> 30 laipsnių kampu ir išsijungia esant <30. Bet jei įsivaizduojate, kad temperatūra yra apie 30 laipsnių, ventiliatorius įsijungia mažu greičiu, po kurio temperatūra iškart nukrenta iki 29, ventiliatorius sustoja. Trumpai tariant, paaiškėja, kad „trūkčiojantis“ įjungimo / išjungimo ventiliatorius. Pvz., Tiesiog histerezė išgelbėja, pavyzdžiui, įjunkite, kai temperatūra yra> 30, ir išjunkite, kai <25. Jei tai nebus padaryta, tada Arduino nėra jokios prasmės, nes yra KY-028 ir analogų, leidžiančių naudoti sklandų greičio padidėjimą, o tiesiog įjungti / išjungti, ir tik tai, kad nėra histerezės, nepadaro šių modulių idealiomis.
Autorius
Histerezė reikalinga esant aštriai įjungtai ir išjungtai apkrovai. Sklandžiai reguliuojant PWM, kaip čia, jis yra nenaudingas.

Apie KU208 žinau iš aštuntojo dešimtmečio pabaigos. Ačiū už patarimą iš jūsų sužinojau apie KY-028.

Prie šio termostato nebūtina prijungti ekrano. Vietoj JT imkitės pigaus klono su tomis pačiomis funkcijomis. Ir tai bus ekonomiškai pateisinama.
2Dem neįžeidinėkite tų (ir jūs žinote, kad aš esu PROFI, elektronikoje, jūs tiesiog nenorite to pripažinti).
Aš nusprendžiau atkurti visus nepatikimus, kuriuos jūsų kamensas padarė savo namuose. Šiandien mano laiminga diena ir atostogos.
Aš pradedu išnaikinti jūsų nemėgstamumą ... Ir ar galite atsiimti savo įžeidimus?
Citata: Ivan_Pokhmelev
Citata: R555
Moronas net neteisingai parašė vardą KU208.
Bet jis teisingai parašė temperatūros jutiklio KY-028 pavadinimą. Ką KU208 turi su tuo?

Pirmiausia, ačiū už cituojamą pranešimą, man buvo labai juokinga pamatyti, kad „viskas žinai“ tokių pagrindinių dalykų nežino. Antra, kaip pavyzdį pateikiau KY-028, verta pridėti maitinimo jungiklį ir mes gauname efektyvesnį termostatą. Ir efektyvus visomis prasmėmis. Jei neklystu, minimalios temperatūros histerezės taip pat nėra. Būtent tai turėtų būti padaryta pirmiausia, kitaip visiškai nėra jokios priežasties naudoti Arduino. Neefektyvus medžiagų panaudojimas, apytiksliai tariant, „Kine Nano“ su 16 k atmintine, vėdinimo kontrolė katilinėje grindžiama temperatūra ir drėgme, viso namo apsauga nuo nuotėkio (6 jutikliais), protinga karšto vandens cirkuliacija, osmoso membranos praplovimu ir viso ekrano valdymu. ši informacija rodoma 1602 m. O naudoti „Uno“ ventiliatoriui įjungti yra racionalu tik tuo atveju, jei tai yra pamoka pradedantiesiems, tačiau ši „namie sukurta“ pamoka, kurioje visai nėra pamokos, yra daug geresnių pamokų. Tada kokia jo prasmė?
Kodėl nenaudingas? Žinoma, tai ne produktas, o išdėstymas, schemoje yra klaidų, tačiau idėja turi teisę egzistuoti. O apie kokį ekraną tu kalbi?
Nebūčiau toks kategoriškas: prietaisas, be paties reguliavimo, rodo ir temperatūrą, kuri gali būti naudinga. Bet vardas neteisingas, tai ne termostatas, bet išdėstymas nuo temperatūros priklausomas ventiliatoriaus greičio valdymas.
Citata: R555
Moronas net neteisingai parašė vardą KU208.
Bet jis teisingai parašė temperatūros jutiklio KY-028 pavadinimą. Ką KU208 turi su tuo?
Pavyzdžiui, už KY-028 negirdėjai? Naudoti UNO tokiam nenaudingam amatu yra nesąmonė. Ekranas visiškai nereikalingas tokiame įgyvendinime. Visa ši šiukšlė yra tarsi pirmas ir svarbiausias nesėkmingas moksleivio darbas, nes viskas, ką buvo galima padaryti neteisingai, yra būtent tai, kas buvo padaryta.
Kitas mikroskopas-nagų plaktukas! nea

Mes patariame perskaityti:

Perduokite jį išmaniajam telefonui ...