Indholdsfortegnelse:

Temperaturregulering med Arduino- og PWM -blæsere: 6 trin (med billeder)
Temperaturregulering med Arduino- og PWM -blæsere: 6 trin (med billeder)

Video: Temperaturregulering med Arduino- og PWM -blæsere: 6 trin (med billeder)

Video: Temperaturregulering med Arduino- og PWM -blæsere: 6 trin (med billeder)
Video: Styr AC lyspære med Arduino AC Dimmer 2024, November
Anonim
Temperaturregulering med Arduino- og PWM -blæsere
Temperaturregulering med Arduino- og PWM -blæsere
Temperaturregulering med Arduino- og PWM -blæsere
Temperaturregulering med Arduino- og PWM -blæsere
Temperaturregulering med Arduino- og PWM -blæsere
Temperaturregulering med Arduino- og PWM -blæsere

Temperaturregulering med PID på Arduino- og PWM -blæsere til DIY -server/netværksstativkøling

For et par uger siden havde jeg brug for at opsætte et rack med netværksenheder og et par servere.

Risten er placeret i en lukket garage, så temperaturområdet mellem vinter og sommer er temmelig højt, og støv kan også være et problem.

Mens jeg kiggede på Internettet efter køleløsninger, fandt jeg ud af, at de er temmelig dyre, i det mindste i mit sted, er> 100 € for 4 230V loftmonterede ventilatorer med termostatstyring. Jeg kunne ikke lide termostatdrevet, fordi det suger meget støv ind, når det tændes, på grund af ventilatorerne, der går fuldt ud, og slet ikke giver ventilation, når det ikke er strømforsynet.

Så, utilfreds med disse produkter, besluttede jeg at gå på DIY -vejen og bygge noget, der uden problemer kan opretholde en bestemt temperatur.

Trin 1: Sådan fungerer det

Hvordan det virker
Hvordan det virker

For at gøre tingene meget lettere gik jeg til DC -fans: de er meget mindre støjende end AC -fans, mens de er lidt mindre kraftige, men de er stadig mere end nok for mig.

Systemet bruger en temperatursensor til at styre fire blæsere, der drives af en Arduino -controller. Arduino stryger ventilatorerne ved hjælp af PID -logik og driver dem gennem PWM.

Temperatur og blæserhastighed rapporteres via et 8-cifret 7-segment display, monteret på en rackmonteret aluminiumsstang. Udover displayet er der to knapper til indstilling af måltemperaturen.

Trin 2: Hvad jeg brugte

Hvad jeg brugte
Hvad jeg brugte
Hvad jeg brugte
Hvad jeg brugte

Bemærk: Jeg forsøgte at realisere dette projekt med ting, jeg havde liggende i huset, så ikke alt kan være ideelt. Budget var en bekymring.

Her er de komponenter, jeg brugte:

  • Hardware

    • Et akrylpanel: bruges som bund (€ 1,50);
    • Fire 3,6x1 cm L -formede PVC -profiler (€ 4,00);
    • Ét aluminiumspanel: skåret i 19 "i bredden (€ 3,00);
  • Elektronik

    • Fire 120 mm PWM -fans: Jeg gik efter Arctic F12 PWM PST på grund af evnen til at stable dem parallelt (4x € 8,00);
    • One Pro Micro: Ethvert ATMega 32u4 -drevet bord bør fungere fint med min kode (€ 4,00);
    • Et relækort: at slukke ventilatorerne, når de ikke er nødvendige (€ 1,50);
    • Et 8-cifret 7-segment MAX7219 displaymodul (€ 2,00);
    • Tre kortvarige trykknapper, 1 er til nulstilling (€ 2,00);
    • Én 3A afbryder (€ 1,50);
    • Én LAN -kabelforbindelse: let at frakoble hovedmodulet til displaypanelet (€ 2,50);
    • Én 5V og 12V dual output strømforsyning: Du kan bruge 2 adskilte PSU'er eller en 12V med en step down converter til 5V (€ 15,00);
    • Kabler, skruer og andre mindre komponenter (€ 5,00);

Samlet pris: 74,00 € (hvis jeg skulle købe alle komponenterne på Ebay/Amazon).

Trin 3: Sagen

Sagen
Sagen
Sagen
Sagen
Sagen
Sagen

Etuiet er lavet af 4 tynde L-formede plastprofiler limet og nittet til et akrylplade.

Alle boksens komponenter er limet med epoxy.

Fire 120 mm huller skæres i akrylen, så de passer til ventilatorerne. Et yderligere hul skæres for at lade termometerkablerne passere igennem.

Frontpanelet har en afbryder med et indikatorlys. Til venstre lader to huller frontpanelkablet og USB -kablet gå ud af to huller. En ekstra nulstillingsknap tilføjes for lettere programmering (Pro Micro har ikke en nulstillingsknap, og nogle gange er det nyttigt for at uploade et program på det).

Boksen holdes op af 4 skruer, der passerer gennem hullerne i akrylbunden.

Frontpanelet er lavet af et børstet aluminiumspanel, skåret 19 i bredden og med en højde på ~ 4 cm. Displayhullet blev lavet med en Dremel, og de andre 4 huller til skruer og knapper blev lavet med en boremaskine.

Trin 4: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Betjeningskortet er ret enkelt og kompakt. Under udarbejdelsen af projektet fandt jeg ud af, at når jeg leverer 0% PWM til ventilatorerne, vil de køre med fuld hastighed. For helt at stoppe ventilatorerne fra at dreje, tilføjede jeg et relæ, der slukker ventilatorerne, når de ikke er nødvendige.

Frontpanelet er forbundet til kortet via et netværkskabel, der ved hjælp af en kabelkobling let kan løsnes fra hovedkabinettet. Bagsiden af panelet er lavet af en 2,5x2,5 elektrisk kanal og fastgjort til panelet med dobbeltsidet tape. Displayet er også fastgjort til panelet med tape.

Som du kan se i skemaerne, har jeg brugt nogle eksterne pullup -modstande. Disse giver en stærkere pullup end arduinoerne.

Fritzing -skemaerne kan findes på min GitHub -repo.

Trin 5: Koden

Intels specifikation for 4-bens fans foreslår en 25KHz mål PWM frekvens og 21 kHz til 28 kHz acceptabelt område. Problemet er, at Arduinos standardfrekvens er 488Hz eller 976Hz, men ATMega 32u4 er perfekt i stand til at levere højere frekvenser, så vi behøver kun at konfigurere den korrekt. Jeg henviste til denne artikel om Leonardos PWM for at klokke den fjerde timer til 23437Hz, hvilket er det tætteste, den kan komme på 25KHz.

Jeg brugte forskellige biblioteker til displayet, temperatursensoren og PID -logikken.

Den fuldt opdaterede kode findes på min GitHub -repo.

Trin 6: Konklusion

Så her er det! Jeg må vente til i sommer for faktisk at se det i aktion, men jeg er temmelig sikker på, at det vil fungere fint.

Jeg planlægger at lave et program til at se temperaturen fra USB -porten, som jeg tilsluttede en Raspberry Pi.

Jeg håber, at alt var forståeligt, hvis ikke lad mig det vide, og jeg vil forklare bedre.

Tak!

Anbefalede: