Kazalo:

Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor: 6 korakov (s slikami)
Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor: 6 korakov (s slikami)

Video: Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor: 6 korakov (s slikami)

Video: Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor: 6 korakov (s slikami)
Video: Zotac RTX 4090 AMP Extreme AIRO REVIEW: Six months LATER 2024, Julij
Anonim
Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor
Krmilnik ventilatorja, ki ga poganja procesor in grafični procesor

Pred kratkim sem nadgradil svojo grafično kartico. Novi model grafičnega procesorja ima višji TDP kot moj CPU in stari grafični procesor, zato sem želel namestiti tudi dodatne ventilatorje za ohišja. Na žalost ima moj MOBO samo 3 priključke za ventilatorje s krmiljenjem hitrosti in jih je mogoče povezati samo s temperaturo procesorja ali nabora čipov. Odločil sem se, da bom to popravil z oblikovanjem lastnega krmilnika ventilatorja za računalnik, ki bere hitrosti vrtljajev že nameščenih ventilatorjev (tako tistih, ki so povezani z MOBO in jih poganja temp CPU, kot tistih, ki hladijo GPU) in ima dva izhodna kanala. Kanal A uporablja hitrost ventilatorjev, povezanih s procesorjem in grafičnim procesorjem, za pogon 3-polnih izhodnih ventilatorjev s spremenljivo hitrostjo. Kanal B zazna samo hitrost ventilatorjev GPU, njegovo izhodno vezje pa uporablja dodaten tranzistor, ki omogoča nižje hitrosti ventilatorjev, ki jih poganja (dobro deluje s polpasivno grafično kartico).

Branje drugih hitrosti ventilatorjev je po mojem mnenju lažje in cenejše od namestitve dodatnih temperaturnih sond tik ob procesorje, pokrite s hladilniki (v bistvu zahteva priključitev žice tahometrov ventilatorjev neposredno na pin mikrokrmilnika).

Tukaj so opisani nekateri načini nadzora hitrosti ventilatorja. Odločil sem se za nizkofrekvenčni PWM, vendar z nekaj spremembami metode, opisane v članku. Prvič, vsak kanal ima 6 zaporedno povezanih diod, ki jih je mogoče uporabiti za zmanjšanje napetosti, ki napaja ventilator za 4-5V. V tej nastavitvi so ravni napetosti PWM ~ 8V - 12V in 0V - ~ 8V (ni na voljo v kanalu A) namesto 0V - 12V. To močno zmanjša hrup ventilatorja. Tu je opisan še en trik, s katerim sem na ta način nadzoroval ventilator. Ta trik zahteva namestitev RC vezja med izhodom mikrokrmilnika in vrati MOSFET -a, s katerim sem preklopil napetost ventilatorja. To zmanjšuje hitrost obračanja signala, ki nadzoruje MOSFET, posledično pa je kotni sunki ventilatorja med spremembo napetosti manj izraziti, kar zmanjšuje vibracije in napetostne konice.

Zaloge

Deli in materiali:

  • ATtiny13 ali ATtiny13A v primeru 8-PDIP
  • 8 -polna DIP vtičnica
  • 3x tranzistor IRF530
  • 12x 1N4007 dioda (katera koli druga 1A dioda s padcem napetosti okoli 0,7 V bi morala delovati)
  • Radialni elektrolitski kondenzator 220uF/25V
  • Radialni elektrolitski kondenzator 10uF/16V
  • 5x 100nF keramični disk kondenzator
  • 10 k 0,25 W upor
  • 4x 22k 0,25W upor
  • 2x 1k 0,25W upor
  • 6x6 mm gumb za stikalo
  • 2x 2 -polni 2,54 -milimetrski ravni moški zatič
  • 4-kratni 3-polni priključek za moški ventilator (Molex 2510), lahko pa uporabite tudi običajne glave zatičev, če želite (jaz sem to storil), potem pa morate biti pri povezovanju ventilatorjev še posebej previdni in ženski priključki teh ventilatorjev bodo pritrjen manj varno
  • 4-polni priključek Molex, žensko ohišje/moški zatiči (priključek za napajanje AMP MATE-N-LOK 1-480424-0), uporabil sem enega, ki je bil del Molex moškega na 2x ženski adapter SATA, priložen staremu MOBO
  • 2x mostični kabli z 2,54 mm ženskimi konektorji (ali ohišja priključkov + zatiči + žice), bodo spajkani na žice tahometra vhodnih ventilatorjev (ali neposredno na njihove priključke na tiskanih vezjih)
  • montažna plošča (50 mm x 70 mm, matrika 18 x 24 lukenj), lahko pa tudi sami jedkate bakreno ploščo in izvrtate luknje
  • nekaj kosov žice
  • izolacijski trak
  • trak iz aluminijaste folije (če nameravate priključiti priključek na hrbtno ploščo grafičnega procesorja, glejte 5. korak)
  • papir

Orodja:

  • diagonalni rezalnik
  • klešče
  • ploski izvijač
  • pomožni nož
  • multimeter
  • spajkalna postaja
  • spajkanje
  • AVR programer (samostojni programer, kot je USBasp ali pa uporabite ArduinoISP
  • plošče in mostični kabli, ki se bodo uporabljali za programiranje mikrokrmilnika zunaj tiskanega vezja (ali katero koli drugo orodje, ki lahko doseže ta cilj)

1. korak: zavrnitev odgovornosti

Konstrukcija te naprave zahteva uporabo zmerno nevarnih orodij in lahko povzroči škodo ali materialno škodo. Nekateri zahtevani koraki lahko razveljavijo garancijo za vašo strojno opremo ali jo celo poškodujejo, če so nepravilno izvedeni. Opisano napravo izdelate in uporabljate na lastno odgovornost

2. korak: Kako deluje nadzor ventilatorja

Kako deluje nadzor ventilatorja
Kako deluje nadzor ventilatorja

Kanal A uporablja dva vhoda. Vsak od teh vhodov kanala A ima s seboj povezano raven, kar omogoča, da te ravni pokličete A0 in A1. Privzeto sta oba nivoja 0. Oba vhoda imata povezani vrednosti pragov RPM (3 praga na vhod). Ko je prvi prag dosežen, se A0 ali A1 poveča na 1, ko se drugi poveča na 2, tretji prag pa eno od vhodnih ravni nastavi na 3. Kasneje se A0 in A1 združita (preprosto seštejeta in preprečita, da bi dosegla višjo vrednost kot 3), tako da je glavni izhodni nivo ravni kanala v območju 0-3. Ta številka se uporablja za nadzor hitrosti izhodnih ventilatorjev, 0 pomeni, da jih napaja 7-8V (obratovalni cikel 0%). Višje izhodne ravni pomenijo, da se ventilator napaja iz polnih 12V za 33%, 66% ali 100% cikla 100 ms ali 33 ms (odvisno od izbrane frekvence).

Kanal B ima samo en vhod (B1, fizično je v skupni rabi s kanalom A [pin PB1]). Obstaja šest možnih ravni B1 (1-6), privzeta raven je 1. Obstaja pet mejnih vrednosti, ki lahko povečajo B1. B1 se uporablja kot glavni izhodni nivo kanala B. Ko je 1, 7-8V napaja izhodne ventilatorje 33% časa cikla v enem ciklu, v drugem 66%, v preostalem času se napajanje izklopi. Stopnja 2 pomeni, da je 66% vsakega cikla 7-8V, ostalo 0V. Stopnja 3 pomeni, da se stalno uporablja 7-8V. Stopnje 4-6 pomenijo, da se ventilator napaja iz polnih 12V za 33%, 66% ali 100% cikla, preostanek časa pa je napetost 7-8V.

Privzeta frekvenca tega krmiljenja PWM je 10Hz. Z zapiranjem mostičkov J7 ga lahko povečate na 30Hz.

Ko je dosežen višji prag, se ravni A0, A1 in B1 takoj povečajo. Ko RPM -ji padejo, se raven zadrži 200 ms in se lahko zmanjša le za 1 na 200 ms. Preprečiti je treba hitre spremembe teh ravni, ko je vrtljaj vhodnega ventilatorja zelo blizu praga.

3. korak: Spajkanje elektronskih komponent

Spajkanje elektronskih komponent
Spajkanje elektronskih komponent
Spajkanje elektronskih komponent
Spajkanje elektronskih komponent
Spajkanje elektronskih komponent
Spajkanje elektronskih komponent

Spajkajte vse elektronske komponente na montažno ploščo (razen Attiny13, bo kasneje vstavljena v vtičnico). Za električne povezave med komponentami uporabite bakrene žice (tiste s premerom 0,5 mm iz kabla UTP). Če imate težave s potiskanjem velikih žic, ki prihajajo iz priključka Molex (AMP MATE-N-LOK), lahko zanje izvrtate večje luknje. Če ne želite uporabljati vrtalnika, lahko v majhnih luknjah za montažno ploščo vedno nekajkrat zavrtite vijak. Prepričajte se, da žice ne povzročajo kratkega stika.

Če želite narediti lastno tiskano vezje, ponudim tudi datoteke.svg (dimenzije plošče 53,34x63,50 mm) in.pdf (velikost strani A4, v arhivu.zip). Enostranska bakreno obložena plošča bi morala zadostovati, saj je na sprednji strani samo ena povezava (lahko jo izvedemo z žico), zato so datoteke za sprednjo stran priložene glavne, tako da je to povezavo mogoče prepoznati.

Močno priporočam, da pokrijete tiskano vezje z izolacijskim materialom, ki bo preprečil nenamerne kratke stike. Uporabil sem nekaj slojev navadnega papirja, ki je pritrjen na robove tiskane plošče z nekaj trakovi izolacijskega traku.

4. korak: Programiranje mikrokrmilnika ATtiny

Programiranje mikrokrmilnika ATtiny
Programiranje mikrokrmilnika ATtiny
Programiranje mikrokrmilnika ATtiny
Programiranje mikrokrmilnika ATtiny

Program, ki se izvaja na MCU, ima trdo kodiranih več pragov vrtljajev vhodnih ventilatorjev. Ti pragi se nahajajo na začetku datoteke fan_controller.c. Vrstica, ki vsebuje prvi prag, ki je odgovoren za rahlo povečanje izhodne ravni kanala A kot odziv na vhod_0 ventilatorja, ki presega 450 vrt / min, izgleda tako:

#define A0_SPEED_0 3 // 450 vrt / min

Če želite spremeniti mejno vrednost RPM, morate številko 3 zamenjati z nečim drugim. Če to število povečate za 1, se prag spremeni za 150 vrt / min.

Druga stvar, ki bi jo morda želeli spremeniti, je zmanjšanje zakasnitve izhodne ravni. Ta zamuda preprečuje hitre spremembe izhodne ravni, ko je vrtljaji vhodnega ventilatorja zelo blizu praga. To nadzorujejo 3 vrstice (saj kanal A uporablja 2 vhoda, kanal B pa 1) in prva je videti tako:

if (channel_A0_lower_rpm_cycles> 2) {

Povečanje številke 2 bo to zamudo povečalo. Zamuda se šteje v ciklih 100 ms.

Za sestavljanje izvorne kode in nato programskega čipa boste potrebovali nekaj programske opreme. Na distribuciji Linuxa, ki temelji na Debianu, jo je mogoče namestiti z naslednjim ukazom:

sudo apt-get install avr-libc gcc-avr avrdude

Če uporabljate Windows, lahko poskusite namestiti paket WinAVR, ki vsebuje tudi potrebno programsko opremo.

Če želite sestaviti izvorno kodo, morate to narediti:

avr -gcc -mmcu = attiny13 -Os -Sten fan_controller.c -o fan_controller.out -lm

Če želite ustvariti datoteko.hex, morate to vrstico kopirati v terminal:

avr -objcopy -O ihex -R.eeprom fan_controller.out fan_controller.hex

Ta ukaz omogoča preverjanje, koliko pomnilnika bo program uporabil (besedilo je Flash, podatki so spremenljivke, ki bodo shranjene v Flash -u in nato kopirane v RAM, bss pa spremenljivke, inicializirane z vrednostjo 0 v RAM -u):

avr-size fan_controller.out

Ko je vaša.hex datoteka pripravljena, morate ATtiny13 vstaviti v ploščo in jo s skakalnimi kabli povezati s programerjem. Najbolje je, da izklopite programer, ko ga priključite na MCU. Hranite privzete varovalke (H: FF, L: 6A). Če je vaš programer USBasp, bo ta ukaz programiral bliskovni pomnilnik MCU:

avrdude -c usbasp -p t13 -B 8 -U bliskavica: w: fan_controller.hex

-B 8 spreminja hitrost prenosa med programerjem in MCU (bitna ura). Če imate težave pri povezovanju z mikrokrmilnikom, ga boste morda morali spremeniti na višjo vrednost.

Ko smo MCU pripravljeni, ga vstavite v vtičnico DIP 8. Za odstranitev MCU-ja z mize ga običajno potegnem z izvijačem z ravnim rezilom.

5. korak: Priključitev ventilatorjev na napravo

Priključitev ventilatorjev na napravo
Priključitev ventilatorjev na napravo
Priključitev ventilatorjev na napravo
Priključitev ventilatorjev na napravo
Priključitev ventilatorjev na napravo
Priključitev ventilatorjev na napravo

Kot ventilator vhoda 0 (tisti, ki je priključen na PB0) sem izbral enega od ventilatorjev ohišja, priključenih na MOBO, ki se je spreminjal s temperaturo procesorja. Odstranil sem izolacijo z dela ventilatorske žice merilnika vrtljajev in nanjo spajal en konec mostičnega kabla. Drugi konec (z 2,54 mm ženskim priključkom) bo priključen na krmilnik ventilatorja. Če je mostični kabel prekratek, ga podaljšajte tako, da med prej omenjenim spajkate drug kabel. Nato vse izpostavljene vodnike prekrijemo z izolacijskim trakom.

Vhod 1 bere hitrost ventilatorjev GPU (v mojem primeru jih je dejansko 3, vendar je na tiskanem vezju grafične kartice samo en priključek za ventilator). Spajalni kabel vhoda 1 sem spajkal neposredno na enega od vodnikov 4-polnega priključka ventilatorja mini GPU, ki se nahaja na tiskanem vezju. Ker je bil ta kabel nameščen med tiskanim vezjem in hrbtno ploščo, sem najprej izoliral hrbtno ploščo s kosom papirja (še posebej, ker je bil material hrbtne plošče precej spajkan), nato pa trdno pritrdil ženski priključek kabla na drugo stran hrbtne plošče z uporabo traku iz aluminijaste folije. Potem bi lahko ventilator (-e) grafičnega procesorja (e) priključili na pin PB1 z uporabo drugega (podaljšanega) mostičnega kabla. Če ne želite nič spajkati na tiskano vezje grafične kartice, lahko priključite mostični kabel na žice ventilatorja ali naredite adapter, ki bo nameščen med ventilatorji in priključki na tiskanem vezju, je vaša odločitev.

Ventilator prenaša svojo trenutno hitrost preko žice tahometra tako, da to žico dvakrat na vrtljaj poveže z maso prek odprtega odtoka/zbiralnika (rotor ventilatorja ima običajno 4-polne [NSNS], ki jih zazna Hall-ovo senzor, izhod ventilatorja pade, ko na vrsti pola je zaznana). Na drugi strani se ta žica običajno potegne na napetostni nivo 3,3 V. Če niste prepričani, ali imate pravo žico, lahko uporabite osciloskop ali sestavite eno od detektorskih vezij, ki so narisana na zadnji sliki v tem koraku. Prvi od njih vam omogoča, da preverite največjo napetost, ki se pojavi na izmerjenem mestu, drugi pa, da preverite, ali se tam pojavljajo nizkofrekvenčni impulzi.

3.3V bi morali vhodni zatiči ATtiny prebrati kot stanje VISOKO, če pa imate s tem težave, lahko poskusite zmanjšati napetost, ki napaja MCU (to bo povečalo tudi odpornost MOSFET -ov!). Nisem imel težav, kljub temu sem se odločil, da to misel vključim sem.

Ko so vhodni ventilatorji pripravljeni, lahko krmilnik ventilatorja postavite v ohišje računalnika, na mesto, ki ga izberete sami. Namestil sem ga na stran dveh mojih praznih ležišč za pogone velikosti 5,25 palca, tako da sem ga potisnil med kovinske dele ležišča, za njim položil nekaj papirja in ga zaklenil z zadrgo, potisnjeno skozi eno od velikih lukenj v montažni plošči in nekaterih drugih luknjah v ležišču 5,25”. Prepričajte se, da se nobeni kovinski deli ohišja računalnika ne dotikajo nobenega od izpostavljenih vodnikov krmilnika ventilatorja.

Zdaj lahko na krmilnik priključite 3-pinske izhodne ventilatorje. Izhodni ventilatorji, povezani s kanalom A, bodo povezani z ventilatorji CPU-ja in GPU-ja, najmanjša napetost, ki jih bo napajala, pa bo približno 7-8V. Ventilatorji, priključeni na izhodne priključke kanala B, bodo poganjali samo ventilatorji (-i) hladilnika GPU -ja, njihova napetost pa bo lahko padla na 0 V (vendar le za 66 ms vsakega drugega 100 -minutnega cikla pri najnižji izhodni ravni pogona). Ventilatorji ne smejo vleči več kot 1A na izhodni kanal.

6. korak: Druge spremembe, ki sem jih naredil v računalniku

Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku
Druge spremembe, ki sem jih naredil v računalniku

Kanal A poganja dva ventilatorja, ki se nahajata na vrhu ohišja. So istega modela in jih napaja ista napetost, zaradi česar se vrtijo pri zelo podobnih hitrostih. Zaradi tega se je pojavil nekaj zvočnega utripa (vzorec motenj med dvema zvokoma nekoliko drugačnih frekvenc). Da bi to odpravil, sem serijsko z enim od ventilatorjev namestil 2 diodi (eno običajno in eno Schottky). To je zmanjšalo napetost in hitrost ventilatorja, zaradi česar je utrip izginil.

Druga sprememba, ki je povezana z eno od tistih pri ventilatorjih, ki sem jih naredil, je namestitev papirnatega stenskega spodnjega ventilatorja, ki se nahaja bolj spredaj. Njegov namen je preprečiti, da bi ventilator sesal zrak, ki še ni prešel skozi noben hladilnik. Poskusil sem narediti tudi druge stene iz papirja, ki preprečujejo, da bi izpušni zrak GPU sesal v hladilnik procesorja. Dejansko so znižali temperaturo procesorja, a za ceno, da se GPU bolj segreje, sem jih na koncu odstranil.

Druga nenavadna sprememba, ki sem jo naredil, je odstranitev filtra za prah pri izpuhu teh dveh zgornjih ventilatorjev (večino časa se zrak vseeno potisne iz ohišja, in ko je računalnik izklopljen, predal, ki se nahaja nekoliko nad ohišjem računalnika, ščiti iz prahu). Prav tako sem namestil 92 mm ventilator pred dvema praznima ležiščema za pogone 5,25”(krmilnik ventilatorja se nahaja tik za njim). Tega ventilatorja ne držijo nobeni vijaki, le lepo se prilega med 120 mm ventilatorjem pod njim in optičnim pogonom zgoraj (površine obeh so prekrite z izolacijskim trakom, ki zagotavlja dušenje vibracij).

Priporočena: