Through Flatland to Thoughtland

I recently built a new home server, it ’ s a multipurpose box that will hold most of my infrastructure and also is a file server with a lot of hard drives (and room for more in future) All of these drives meant this ended to be a very large machine so there was space to put them all. Päädyin hankkimaan caselabs Magnum THW10: n koteloon,jossa on tilaa tonni tavaraa. Vaikka kone toimii hyvin ja tekee kaiken, mitä tarvitsen, siinä on yksi pieni ongelma. Etutuulettimet eivät pyöri tarpeeksi nopeasti.

palvelin olohuoneessani ensimmäisen käynnistyksen jälkeen. (2 litran limsapullo on tarkoitettu mittakaavaan)

kiintolevyt on asennettu etutuulettimien taakse ja haluan varmistaa, että ne pysyvät viileinä. Kaikki emolevyn PWM-tuulettimien otsakkeiden tuotos, ASUS Z10PE-D16, on sidottu suorittimen lämpötiloihin. Mutta, suorittimet ei oikeastaan saada liian kuuma palvelimessa, joten tapauksessa Tuulettimet harvoin (jos koskaan) mennä yli niiden vähimmäisnopeus. Minun normaali ratkaisu tähän ongelmaan on käyttää fancontrol utiltity joka on osa lm_sensors. Lm_sensors ei kuitenkaan pysty havaitsemaan emolevyn Tuulettimen ohjaimia. Luulen, että tämä johtuu siitä, että tuulettimen ohjaus tapahtuu emolevyn BMC: llä ja lm_sensors ei tue BMC: tä. BMC: n web-käyttöliittymästä en löytänyt vaihtoehtoa Tuulettimen ohjaukselle, joten en ole varma. Joka tapauksessa päätin, että olisi paljon helpompaa vain rakentaa Tuulettimen ohjain, jotta voit manuaalisesti asettaa Tuulettimen nopeuden tulotuulettimille.

puhaltimen ohjaimen rakentaminen

palvelimeen on asennettu 8 etutuuletinta, 1 takatuuletinta 120mm ja 6 ylätuuletinta 140mm tuuletinta. Koska emolevyllä on kuitenkin vain muutama Tuulettimen otsake, minulla on 2 Silverstone CPF04 powered splitteriä. Etummaiset 8 tuuletinta on yhdistetty toiseen jakajaan ja 6 ylintä poistopuhallinta toiseen. Tätä projektia varten halusin vain kiinnittää ohjaimen emolevyn 4-nastaisen Tuulettimen otsakkeen väliin, jonka avulla voin säätää tuulettimille lähetettyä PWM-ohjaussignaalia. Tämä ottaisi vain virtaa emolevyltä ja tuottaisi sen oman itsenäisen PWM-lähdön. Koska jakajat ovat itsenäisesti powered minun ei tarvitse huolehtia reititys valtaa emolevyn Tuulettimet.

kaupallisia ratkaisuja on olemassa, kuten Noctua NA FC1, jotka ovat aika lähellä sitä, mitä etsin. Ongelma Noctua ohjain minun käyttökotelo oli, että se ei anna minun asettaa full manual mode jos emolevyn otsikko oli kytketty. Voisin luoda mukautetun kaapelin, joka ei ole PWM pin kytketty, mutta sitten olisin maksaa joukko ominaisuuksia, joita en oikeastaan halua.

ohjaimen suunnittelu

tein jonkin verran hakuja Googlesta nähdäkseni, mitä suurin osa ihmisistä tekee, koska Tuulettimen ohjaimen rakentaminen tuskin on ainutlaatuinen juttu. Useimmat esimerkit, että löysin rakennettu piiri 555 ajastin astable tilassa potentiometri säätää toimintasyklin lähtöaaltomuodon. Päätin tehdä samoin. Luettuaan Intel specification 4 wire PWM fanit olen tajunnut minun suunnittelu rajoitteet oskillaattori. Piiri piti olla Lähtötaajuus ~25 kHz ja toimivat 5 volttia. Koska tämä olen asettunut tähän piiriin:

se oli enimmäkseen lainattu piirejä löysin kautta etsimällä Internetistä vastaavia projekteja. Mutta jouduin säätämään joitain komponenttiarvoja täyttääkseni Tuulettimen säätöprofiilin.

sieltä suunnittelin piirilevyn tälle piirille kicadin avulla. Olen erityisesti suunniteltu PCB on helppo koota, käyttäen läpi reikä komponentteja. Vaikka olisin voinut helposti tehdä paljon pienempi käyttäen pintaliitoskomponentteja halusin tämän olevan hyvä projekti ihmisille juuri alkamassa juottamalla. Tämä ei ole kovin monimutkainen projekti ja tunsin, että siellä saattaa olla ihmisiä, joilla on samanlainen tarve sille. Mutta, vaikka tämä rajoitus hallitus on edelleen melko pieni vain 35mm x 44mm. (lähinnä siksi, että se on yksinkertainen piiri.

Kaikki tämän mallit ovat avointa lähdekoodia ja ne löytyvät githubistani osoitteessa:

https://github.com/mtreinish/pwmcontroller

Koottuani ohjaimen

funktionaalisen rakenteen lähetin sen electrowiin valmistamaan laudan. Pari viikkoa myöhemmin sain levyt toimitettua. (Cheap out laivaliikenne, joka sai sen kestämään kauemmin, levyt valmistettiin < 1 viikko)

sitten juotin komponentit laudalle

sitten asensin uuden ohjaimen palvelimeeni, ja tietenkään se ei toiminut. Niinpä vein PCB: n penkkiini ja testasin sitä oskilloskoopilla, penkki-virtalähteellä ja varatuulettimella. Kävi ilmi, että ongelmia oli kaksi. Ensin 555-ajastin lähti liikkeelle 3,8-4,2 V: n nopeudella spec: ssä vaaditun 5V: n sijaan. Toinen asia oli, ettei ulostulokaan ollut oikeastaan neliöaalto:

toinen yritys

korjatakseni ensimmäisellä yrityksellä löytämäni ongelmat muutin piiriäni hieman ja lisäsin lähtöön schmitt-laukaisimen. Tällä olisi kolme etua: se puhdistaisi neliöaaltoa, tekisi nousevista ja laskevista reunoista paljon nopeampia ja varmistaisi, että meillä on Vakaa 5V-teho. Se on itse asiassa aika hauska, päätin / muistin käyttää schmitt liipaisin koska minun piti kirjoittaa fake app huomautus luokan college käyttää schmitt liipaisin kytkin de-pomppiminen.

piirikaavion muutos oli melko yksinkertainen. Lisää vain schmitt-liipaisin 555: n ulostuloon ja liitä se sitten Tuulettimen otsakkeeseen:

ainoa mutka tähän tuli taulun pohjapiirustuksessa. En löytänyt yhtään Schmitt-laukaisinta läpireikäpaketista. Ainoa läpi reikä schmitt laukaisee että löysin (myönnetään en tehnyt tyhjentävä haku) oli 4 tai 6 tavalla DIP-14 paketti. Mikä olisi ylivoimaisesti suurin paketti hallituksessa. Halusin PCB on yksinkertainen, pieni ja helppo käsi juote. Tämä tarkoitti alun perin koko reiän läpi, mutta valinta DIP 14: n ja hallituksen koon lisäämisen tai yhden pintaliitoskomponentin välillä päätin mennä SMT-komponenttien kanssa. Pystyin löytämään yhden TI SOT-23-5 paketti, joka rehellisesti ei ole vaikea juottaa, se vain vie hieman kärsivällisyyttä. (suurennus auttaa)

viimeisteltyäni tarkistetun taulun pohjapiirroksen (pienensin sitä paljon ja siivosin samalla asioita) lähetin sen TTT-puistoon valmistettavaksi:

sitten juotin kaiken.:

vikaantuneen alkuperäisen levyn

vieressä tein uuden laudan kohdalla yhden virheen; unohdin kytkeä maahan emolevyliittimen ja TASAVIRTAMUUNTIMEN 5V-puolen. Ei mitään pieni bodge Lanka välillä nastat 1 ja 3 DC / DC-muunnin voisi korjata. (pcb-suunnittelu git repo on päivitetty tämän korjauksen jo) että ja uusi schmitt laukaista asiat toimivat täydellisesti:

ja laittamalla sen palvelimeeni nyt voin hallita Tuulettimen nopeuksia hyvin helposti.

johtopäätös

tämä projekti sai minut ymmärtämään, että suuri osa nykyaikaisten tietokoneiden emolevyjen satunnaisohjaimista ja lisälaitteista, joita pidämme itsestäänselvyytenä ja jotka ovat täysin suljettuja malleja. Ei ole mitään dokumentaatiota ASUS siitä, miten asiat minun palvelimen emolevy on kytketty ylös tai protokollia he käyttävät (ainakaan että en voinut löytää). Aloin ajatella minun muita tietokoneita kuten työpöydälle ja miten olen valvoa asioita, kuten tuulettimet ja Vesipumppu siellä. Se on sama tarina.; Luotan emolevyn (ASUS Rampage V Edition 10) paistettu laitteisto ja ohjelmisto. Tarkistin ja lm_sensors ei pysty puhumaan Tuulettimen ohjaimelle työpöydällä. Mutta toisin kuin palvelimeni, työpöydän UEFI tarjoaa minulle tarvittavan Säätötason lämpötilan säätämiseksi ja mukautettujen tuulettimien käyrien asettamiseksi.

vaikka haluaisin nähdä näiden mallien avautuvan, jotta niiden hyödyntäminen olisi helpompaa, ymmärrän, että se ei ole kovin todennäköisesti muuttumassa lähiaikoina. Sillä välin voimme rakentaa avoimia vaihtoehtoja. Olen tällä hetkellä työskentelee toinen tuuletin ohjain projekti minun työpöydälle yrittää alkaa käsitellä tätä. Rakennan monipuhaltimen, joka muistuttaa aquacomputer aqueroa. Mutta, rakennettu täysin avoimella tavalla ja avoin ja määritelty käyttöliittymä. Voit seurata ponnistuksen etenemistä täältä: https://github.com/mtreinish/openpwm se on vielä älyttömän aikaista laitteistosuunnittelua ja se tulee olemaan hyvin pitkäaikainen projekti, jota työstän vapaa-ajallani.

Vastaa

Sähköpostiosoitettasi ei julkaista.