Innholdsfortegnelse:
- Trinn 1: Slik fungerer det
- Trinn 2: Hva jeg brukte
- Trinn 3: Saken
- Trinn 4: Elektronikk
- Trinn 5: Koden
- Trinn 6: Konklusjon
Video: Temperaturkontroll med Arduino- og PWM -vifter: 6 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Temperaturkontroll med PID på Arduino- og PWM -vifter for DIY -server/nettverkskjøling
For noen uker siden trengte jeg å sette opp et stativ med nettverksenheter og noen få servere.
Stativet er plassert i en lukket garasje, så temperaturområdet mellom vinter og sommer er ganske høyt, og støv kan også være et problem.
Mens jeg surfer på Internett for å finne kjøleløsninger, fant jeg ut at de er ganske dyre, i hvert fall på min plass, og er> 100 € for 4 230V takmonterte vifter med termostatkontroll. Jeg likte ikke termostatstasjonen fordi den suger til seg mye støv når den er drevet, på grunn av at viftene går på full effekt, og gir ingen ventilasjon i det hele tatt når den er uten strøm.
Så, misfornøyd med disse produktene, bestemte jeg meg for å gå på DIY -måten og bygge noe som jevnt kan holde en viss temperatur.
Trinn 1: Slik fungerer det
For å gjøre ting mye enklere gikk jeg for DC -fans: de er mye mindre bråkete enn AC -fans mens de er litt mindre kraftige, men de er fortsatt mer enn nok for meg.
Systemet bruker en temperatursensor til å kontrollere fire vifter som drives av en Arduino -kontroller. Arduino stenger viftene ved hjelp av PID -logikk, og driver dem gjennom PWM.
Temperatur og viftehastighet rapporteres gjennom et 8-sifret 7-segment display, montert på en stativmontert aluminiumsstang. I tillegg til displayet er det to knapper for innstilling av måltemperaturen.
Trinn 2: Hva jeg brukte
Merk: Jeg prøvde å realisere dette prosjektet med ting jeg hadde i huset, så ikke alt kan være ideelt. Budsjettet var en bekymring.
Her er komponentene jeg brukte:
-
Maskinvare
- Ett akrylpanel: brukt som base (€ 1,50);
- Fire 3,6x1 cm L -formede PVC -profiler (€ 4,00);
- Ett aluminiumspanel: kuttet 19 "i bredden (€ 3,00);
-
Elektronikk
- Fire 120 mm PWM -vifter: Jeg gikk for Arctic F12 PWM PST på grunn av evnen til å stable dem parallelt (4x € 8,00);
- One Pro Micro: Alle ATMega 32u4 -drevne brett skal fungere fint med koden min (€ 4,00);
- Ett relékort: å slå av viftene når de ikke trengs (€ 1,50);
- En åttesifret 7-segmenters MAX7219 skjermmodul (€ 2,00);
- Tre øyeblikkelige trykknapper, 1 er for tilbakestilling (€ 2,00);
- Én 3A strømbryter (€ 1,50);
- Én LAN -kabelkobler: for enkelt å koble hoveddelen til skjermpanelet (€ 2,50);
- Én 5V og 12V dual output strømforsyning: Du kan bruke 2 separate PSUer eller en 12V med en trinnvis omformer til 5V (€ 15,00);
- Kabler, skruer og andre mindre komponenter (€ 5,00);
Total kostnad: € 74,00 (hvis jeg måtte kjøpe alle komponentene på Ebay/Amazon).
Trinn 3: Saken
Etuiet er laget av 4 tynne L-formede plastprofiler limt og naglet til et akrylplate.
Alle komponentene i esken er limt med epoxy.
Fire 120 mm hull er kuttet i akryl for å passe viftene. Et ekstra hull er kuttet for å la termometerkablene passere.
Frontpanelet har en strømbryter med et indikatorlys. På venstre side lar to hull på frontpanelet og USB -kabelen gå ut. En ekstra reset -knapp er lagt til for enklere programmering (Pro Micro har ikke en reset -knapp, og noen ganger er det nyttig for å laste opp et program til det).
Boksen holdes opp av 4 skruer som passerer gjennom hullene i akrylbasen.
Frontpanelet er laget av et børstet aluminiumspanel, kuttet 19 i bredden og med en høyde på ~ 4 cm. Displayhullet ble laget med en Dremel og de fire andre hullene for skruer og knapper ble laget med en drill.
Trinn 4: Elektronikk
Kontrollpanelet er ganske enkelt og kompakt. Under utarbeidelsen av prosjektet fant jeg ut at når jeg leverer 0% PWM til viftene, vil de kjøre i full fart. For å helt stoppe fansen fra å spinne, la jeg til et relé som slår av viftene når de ikke trengs.
Frontpanelet er koblet til kortet gjennom en nettverkskabel som ved hjelp av en kabelkobling enkelt kan løsnes fra hovedkapslingen. Baksiden av panelet er laget av en 2,5x2,5 elektrisk kanal og festet til panelet med dobbeltsidig tape. Displayet er også festet til panelet med tape.
Som du kan se i skjemaene, har jeg brukt noen eksterne pullup -motstander. Disse gir en sterkere pullup enn arduinoene.
Fritzing -skjemaene finnes på min GitHub -repo.
Trinn 5: Koden
Intels spesifikasjon for 4-pinners fans foreslår en 25KHz mål PWM frekvens og 21 kHz til 28 kHz akseptabelt område. Problemet er at Arduinos standardfrekvens er 488Hz eller 976Hz, men ATMega 32u4 er perfekt i stand til å levere høyere frekvenser, så vi trenger bare å sette den opp riktig. Jeg refererte til denne artikkelen om Leonardos PWM for å klokke den fjerde timeren til 23437Hz som er det nærmeste den kan komme til 25KHz.
Jeg brukte forskjellige biblioteker for displayet, temperatursensoren og PID -logikken.
Den fullstendige oppdaterte koden finner du på min GitHub -repo.
Trinn 6: Konklusjon
Så her er det! Jeg må vente til i sommer for å se det i bruk, men jeg er ganske sikker på at det vil fungere bra.
Jeg planlegger å lage et program for å se temperaturen fra USB -porten som jeg koblet til en Raspberry Pi.
Jeg håper at alt var forståelig. Hvis ikke, gi meg beskjed, så forklarer jeg bedre.
Takk!
Anbefalt:
TouchFree: Automatisk temperaturkontroll og maskedeteksjonskiosk: 5 trinn
TouchFree: Automatisert temperaturkontroll og maskedeteksjonskiosk: Etter hvert som land rundt om i verden åpner igjen, blir det å leve med det nye koronaviruset den nye livsstilen. Men for å stoppe spredningen av viruset må vi skille mennesker som har Coronavirus fra resten. I følge CDC er feber
Presis temperaturkontroll på Raspberry Pi 4: 3 -trinn
Presis temperaturkontroll på Raspberry Pi 4: Pimoroni Fan Shim er en flott løsning for å redusere temperaturen på Pi når den går varm. Produsentene tilbyr til og med programvare som utløser viften når CPU -temperaturen stiger over en viss terskel (f.eks. 65 grader). Temperaturen q
PWM Med ESP32 - Dimmende LED med PWM på ESP 32 Med Arduino IDE: 6 trinn
PWM Med ESP32 | Dimmende LED med PWM på ESP 32 Med Arduino IDE: I denne instruksen vil vi se hvordan du genererer PWM -signaler med ESP32 ved hjelp av Arduino IDE & PWM brukes i utgangspunktet til å generere analog utgang fra hvilken som helst MCU, og den analoge utgangen kan være alt mellom 0V til 3,3V (i tilfelle esp32) & fra
Temperaturkontroll for fryser eller kjøleskap: 7 trinn
Temperaturkontroll for fryser eller kjøleskap: Denne instruksjonen dekker integrering av en Johnson Controls temperaturkontroll i en skjøteledning med bryter og stikkontakt for styring av fryser. For gjæring av øl er en fryseboks en fantastisk plattform, men fabrikken fortsetter
Resirkulering av din gamle dimmerbryter som en variabel temperaturkontroll for loddejernet: 7 trinn
Resirkulering av din gamle dimmerbryter som en variabel temperaturkontroll for loddejernet ditt: Jeg har sett mye profesjonell variabel temperaturkontroll for loddejern, men for dyrt. Så jeg lager en av en gammel dimmerbryter, stikkontakt, gjengeplate og plugg som allerede var søppel og en gammel PVC -bryterboks som fulgte med og så