Мазмуну:
- Жабдуулар
- 1 -кадам: Жоопкерчиликтен баш тартуу
- 2 -кадам: Fan Control кантип иштейт
- 3 -кадам: Электрондук компоненттерди ширетүү
- 4 -кадам: ATtiny микроконтроллерин программалоо
- 5 -кадам: күйөрмандарды түзмөккө туташтыруу
- 6 -кадам: Менин компьютериме киргизилген башка өзгөртүүлөр
Video: CPU жана GPU башкарган күйөрман контролери: 6 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:39
Жакында мен графикалык картаны жаңырттым. Жаңы GPU модели менин CPU жана эски GPUга караганда көбүрөөк TDPге ээ, ошондуктан мен кошумча корпустун күйөрмандарын орноткум келди. Тилекке каршы, менин MOBOмдо ылдамдыкты жөнгө салуучу 3 гана күйөрман туташтыргычы бар жана аларды CPU же чипсет температурасы менен гана байланыштырса болот. Мен муну оңдоону чечтим, буга чейин орнотулган күйөрмандардын RPM ылдамдыгын окуган жеке PC күйөрман контроллерин иштеп чыгуу менен (MOBOго туташкан жана CPU темп менен башкарылган жана GPU муздатуучу) жана эки чыгаруу каналы бар. А каналы өзгөрмөлүү ылдамдыкта 3-пин чыгаруу желдеткичтерин иштетүү үчүн CPU жана GPU температурасы менен байланышкан күйөрмандардын ылдамдыгын колдонот. В каналы GPU күйөрмандарынын ылдамдыгын гана сезет жана анын чыгаруу схемасы күйөрмандардын төмөнкү ылдамдыгына жетүүгө мүмкүндүк берген кошумча транзисторду колдонот (ал жарым пассивдүү графикалык карта менен жакшы иштейт).
Башка күйөрмандардын ылдамдыгын окуу, менин оюмча, муздатуучу жабылган процессорлордун жанына кошумча температура датчиктерин орнотууга караганда оңой жана арзаныраак (бул негизинен күйөрмандардын тахометрлеринин зымын микроконтроллердин пинине түз туташтырууну талап кылат).
Вентилятордун ылдамдыгын башкаруунун кээ бир ыкмалары бул жерде сүрөттөлгөн. Мен аз жыштыктагы PWMди колдонууну чечтим, бирок макалада сүрөттөлгөн ыкмага бир аз өзгөртүүлөрдү киргизүү менен. Биринчиден, ар бир каналда желдеткичти 4-5В кубаттуулуктагы чыңалууну азайтуу үчүн колдонула турган 6 диод бар. Бул орнотууда PWM чыңалуу деңгээли 0V - 12V ордуна ~ 8V - 12V жана 0V - ~ 8V (Channel Aда жок). Бул желдеткич тарабынан чыгарылган ызы -чууну абдан азайтат. Мен күйөрманды ушул ыкма менен үнсүз башкарууга жардам берген дагы бир амал, бул жерде сүрөттөлгөн. Бул трюк микроконтроллердин чыгышы менен MOSFET дарбазасынын ортосунда RC схемасын орнотууну талап кылат, мен желдеткичтин чыңалуу деңгээлин которгом. Бул MOSFETти көзөмөлдөгөн сигналдын ылдамдыгын азайтат, өз кезегинде вентиляциянын бурулушун чыңалуунун деңгээлин анча көрүнүктүү кылып, вибрация менен чыңалуунун кескин азайышына алып келет.
Жабдуулар
Бөлүктөр жана материалдар:
- ATtiny13 же ATtiny13A 8-PDIP учурда
- 8 Pin DIP розеткасы
- 3x IRF530 транзистору
- 12x 1N4007 диод (чыңалуусу 0,7В тегерегинде башка 1А диод иштеши керек)
- 220uF/25V радиалдуу электролиздик конденсатор
- 10uF/16V радиалдык электролиттик конденсатор
- 5x 100nF керамикалык диск конденсатор
- 10k 0.25W каршылыгы
- 4x 22k 0.25W каршылыгы
- 2x 1k 0.25W каршылыгы
- 6x6мм тийүү баскычы
- 2x 2 pin 2.54mm түз эркек пин башы
- 4x 3-pin эркек күйөрман туташтыргычы (Molex 2510), эгер кааласаңыз, кадимки пин баштарын колдонсоңуз болот (мен кылдым), бирок анда күйөрмандарды туташтырууда өтө этият болуу керек, жана ал күйөрмандардын аял коннекторлору азыраак коопсуз тиркелет
- 4-пин Molex туташтыргычы, аял корпусу/эркек казыктары (AMP MATE-N-LOK 1-480424-0 кубат туташтыргычы), мен Molex эркектин бир бөлүгүн колдонгонмун, эски MOBO менен 2x SATA аял адаптерине.
- 2.54мм аял коннекторлору бар 2х секирүүчү кабелдер (же туташтыргыч корпустар + казыктар + зымдар), алар тахометр зымдарын киргизүү күйөрмандарына (же түздөн -түз ПКБдагы туташтыргычтарына) ширетилет
- префборд (50mm x 70mm, min 18 x 24 тешик массиви), же болбосо, жез капталган тактайды өзүңүз оюп, тешип койсоңуз болот
- зымдын бир нече бөлүгү
- изоляциялоочу тасма
- алюминий фольга тасмасы (эгер сиз туташтыргычты GPU плитасына кошо турган болсоңуз, 5 -кадамды караңыз)
- кагаз
Куралдар:
- диагоналдуу кескич
- кычкачтар
- жалпак бурагыч
- бычак
- мультиметр
- ширетүүчү станция
- solder
- AVR программисти (USBasp сыяктуу өз алдынча программист же ArduinoISP колдоно аласыз
- ПКБдан тышкары микроконтроллерди программалоо үчүн колдонула турган нан тактасы жана секирүүчү кабелдер (же бул максатка жете турган башка курал)
1 -кадам: Жоопкерчиликтен баш тартуу
Бул түзүлүштүн курулушу орто коркунучтуу шаймандарды колдонууну талап кылат жана мүлккө зыян келтириши мүмкүн. Кээ бир керектүү кадамдар аппараттык камсыздооңуздун кепилдигин жокко чыгарышы мүмкүн, же туура эмес жүргүзүлгөндө аны бузушу мүмкүн. Сиз сүрөттөлгөн түзмөктү өзүңүздүн тобокелге салып курасыз жана колдоносуз
2 -кадам: Fan Control кантип иштейт
А каналы эки кирүүнү колдонот. А каналынын кирүүлөрүнүн ар биринин деңгээли бар, бул деңгээлдерди A0 жана A1 деп атоого мүмкүндүк берет. Демейки боюнча, бул деңгээлдердин экөө тең 0. Кириштердин экөө тең чектик RPM маанилерине ээ (киришине 3 босого). Биринчи босого жеткенде, A0 же A1 1ге чейин жогорулайт, экинчисинде 2ге чейин жогорулайт, үчүнчү босого болсо кирүү деңгээлинин бирин 3кө коёт. Кийин A0 менен A1 бириктирилет (жөн гана бирге кошулуп, жогору баалуулукка жетүүгө жол бербейт) 3кө караганда), 0-3 диапазонунда А каналынын негизги санын чыгарат. Бул сан вентиляторлордун ылдамдыгын көзөмөлдөө үчүн колдонулат, 0 алар 7-8В менен иштейт (0%милдети цикли). Жогорку чыгаруу деңгээли күйөрман 100% же 33 мс циклдин 33%, 66% же 100% үчүн 12Vдан толук иштейт дегенди билдирет (бул тандалган жыштыкка жараша болот).
В каналынын бир гана кириши бар (B1, физикалык жактан ал А каналы [PB1 пини] менен бөлүшүлөт). В1 деңгээлинин мүмкүн болгон 6 (1-6) деңгээли бар, демейки деңгээл-1. В1 жогорулатууга жөндөмдүү болгон беш босого мааниси бар. B1 негизги чыгаруу Channel B деңгээл катары колдонулат. Качан 1, 7-8В кубаттуулукту чыгарат, бир циклде циклдин 33% га чейин, экинчисинде 66% га, калган убакта электр энергиясы ажыратылат. 2-деңгээл ар бир циклдин 66% ы 7-8В, эс алуусу 0В. 3-деңгээл 7-8В тынымсыз колдонулат дегенди билдирет. 4-6-деңгээлдер күйөрман циклдин 33%, 66% же 100% үчүн 12Vдан толук иштейт, калган убакта 7-8V чыңалуусун билдирет.
Бул PWM көзөмөлүнүн жыштыгы 10 Гц. J7 секирүүчү казыктарын жабуу менен аны 30 Гцке чейин көбөйтүүгө болот.
Жогорку чекке жеткенде, A0, A1 жана B1 деңгээлдери заматта жогорулайт. RPMs түшкөндө, деңгээл 200ms үчүн кармалып турат жана 200ms үчүн 1ге гана төмөндөшү мүмкүн. Кирүүчү желдеткич RPM босогого абдан жакын болгондо, бул деңгээлдердин тез өзгөрүшүнө жол бербөө.
3 -кадам: Электрондук компоненттерди ширетүү
Бардык электрондук компоненттерди префборго кошуңуз (Attiny13тен башка, кийинчерээк розеткага салынат). Жез зымдарды колдонуңуз (UTP кабелинен диаметри 0,5 мм кемчиликсиз болушу керек) компоненттердин ортосунда электр байланыштарын түзүү үчүн. Эгерде сиз Molex (AMP MATE-N-LOK) туташтыргычынан чоң зымдарды түртүүдө кыйынчылыкка туш болсоңуз, анда алар үчүн чоңураак тешиктерди бурсаңыз болот. Эгерде сиз бургулоону колдонууну каалабасаңыз, анда дайыма бураманы бир нече жолу буруп койсоңуз болот. Зымдар кыска туташууну жаратпасын текшериңиз.
Эгерде сиз өзүңүздүн ПКБ жасоону кааласаңыз, мен дагы.svg (тактайдын өлчөмдөрү 53.34x63.50мм) жана.pdf (A4 барактын өлчөмү, ичинде.zip архиви) файлдарын берем. Бир тараптуу жез капталган такта жетиштүү болушу керек, анткени алдыңкы жагында бир гана байланыш бар (аны зым менен жасаса болот), андыктан бул байланышты аныктоо үчүн алдыңкы тарабындагы файлдар негизги берилет.
Мен ПКБнын арт жагын кокусунан туташкан кыска туташууларды болтурбай турган изоляциялоочу материал менен жабууну сунуштайм. Мен кадимки кагаздын бир нече катмарын колдондум, алар ПКБнын четине изоляциялоочу лентанын бир нече тилкеси менен бекитилет.
4 -кадам: ATtiny микроконтроллерин программалоо
MCUда иштеп жаткан программа кирүү желдеткичтеринин RPM ылдамдыгынын бир нече босогосун каттуу коддогон. Бул чектер fan_controller.c файлынын башында жайгашкан. Биринчи босогону камтыган линия, 450 RPM ашкан input_0 күйөрманына жооп катары А каналынын чыгуу деңгээлин бир аз жогорулатууга жооптуу, мындай көрүнөт:
#аныктоо A0_SPEED_0 3 // 450 RPM
Эгерде сиз RPM босогосун өзгөрткүңүз келсе, анда 3 санын башка нерсеге алмаштырышыңыз керек. Бул санды 1ге көбөйтүү босогону 150 RPMге өзгөртөт.
Сиз өзгөрткүңүз келиши мүмкүн болгон башка нерсе - бул өндүрүш деңгээлинин кечигүүсүнүн азайышы. Бул кечигүү киргизүү күйөрманынын RPM босогого өтө жакын болгондо өндүрүштүн деңгээлинин тез өзгөрүшүнө жол бербейт. Муну көзөмөлдөгөн 3 линия бар (А каналы 2 кирүүнү колдонот жана В каналы 1 колдонот) жана алардын биринчиси мындай көрүнөт:
эгер (channel_A0_lower_rpm_cycles> 2) {
2 санын көбөйтүү бул кечигүүнү көбөйтөт. Кечигүү 100ms циклде эсептелет.
Булак кодун, андан кийин программанын чипин түзүү үчүн сизге бир нече программалык камсыздоо керек болот. Debian негизделген Linux бөлүштүрүүдө аны төмөнкү буйрукту аткаруу менен орнотсо болот:
sudo apt-get орнотуу avr-libc gcc-avr avrdude
Эгерде сиз Windows колдонуп жатсаңыз, анда талап кылынган программалык камсыздоону камтыган WinAVR пакетин орнотуп көрүңүз.
Булак кодун түзүү үчүн сиз муну аткарышыңыз керек:
avr -gcc -mmcu = attiny13 -Os -Wall fan_controller.c -o fan_controller.out -lm
. Hex файлын түзүү үчүн бул линияны терминалга көчүрүү керек:
avr -objcopy -O ihex -R. fan_controller.out fan_controller.hex
Бул буйрук программанын канчалык эс тутумун колдонууга мүмкүндүк берерин текшерүүгө мүмкүндүк берет (текст - бул Flash, маалыматтар Flashте сакталып, андан кийин оперативдүү эс тутумуна көчүрүлө турган өзгөрмөлөр, bss - RAMде 0 мааниси менен башталган өзгөрмөлөр):
avr-size fan_controller.out
Сиздин.hex файлы даяр болгондо, ATtiny13ди нан тактасына салып, аны программистке секирүүчү кабелдер менен туташтыруу керек. Программистти MCUга туташтырып жатканда, аны ажыратуу эң жакшы. Демейки сактандыруучу биттерди сактаңыз (H: FF, L: 6A). Эгерде сиздин программист USBasp болсо, бул буйрук MCU флэш -эсин программалайт:
avrdude -c usbasp -p t13 -B 8 -U flash: w: fan_controller.hex
-B 8 программист менен MCU ортосундагы ылдамдыкты өзгөртөт (bitclock). Микроконтроллерге туташууда көйгөйлөр жаралса, аны жогорку баалуулукка өзгөртүү керек болушу мүмкүн.
MCU бизге даяр болгондо, аны DIP 8 розеткасынын ичине салыңыз. Нан тактасынан MCU алып салуу үчүн мен көбүнчө жалпак учтуу отвертка менен сүртөм.
5 -кадам: күйөрмандарды түзмөккө туташтыруу
Input 0 күйөрманы катары (PB0го туташкан) мен MOBOго туташтырылган желдеткичтердин бирин тандап алдым, анын ылдамдыгы CPU температурасына жараша өзгөрүп турган. Мен желдеткичтин тахометр зымынын бөлүгүнөн изоляцияны алып салдым жана ага секирүүчү кабелдин бир учун ширеттим. Башка учу (2.54мм аял коннектору ага тиркелет) күйөрман контроллерине туташат. Эгерде секирүүчү кабель өтө кыска болсо, аны мурда айтылган кабелдердин ортосуна башка кабель менен кошуп узартыңыз. Андан кийин бардык ачык өткөргүчтөрдү жылуулоочу лента менен жабыңыз.
Киргизүү 1 GPU күйөрмандарынын ылдамдыгын окуйт (менин учурда чындыгында алардын 3ү бар, бирок PCB графикалык картасында бир гана желдеткич туташтыргычы бар). Мен Киргизүү 1 секирүүчү кабелин түз ПКБда жайгашкан 4 пинтүү мини GPU күйөрман туташтыргычтарынын бирине туташтырдым. Бул коргошун ПКБ менен плитанын ортосунда жайгашкандыктан, мен биринчи жолу кагаз менен жылуулоо плитасын (айрыкча, арткы плитанын материалы абдан ширетилгендиктен), андан кийин алюминий фольга лентасын колдонуу менен плитанын башка жагына аялдын туташтыргычын бекем бекиттим.. Андан кийин GPU желдеткичтери башка (узартылган) секирүүчү кабелди колдонуу менен PB1 пинине туташтырылышы мүмкүн. Эгерде сиз графикалык картаңыздын ПКБсында эч нерсе салгыңыз келбесе, желдеткичтин зымдарына секиргич кабелин туташтырсаңыз же ПКБдагы желдеткичтер менен туташтыргычтын ортосуна орнотулуучу адаптер жасасаңыз, чечим сиздики.
Күйөрман учурдагы ылдамдыгын тахометр зымы аркылуу бул зымды жерге эки жолу айлантуу боюнча ачык дренаж/коллектор аркылуу туташтыруу аркылуу өткөрөт (желдеткичтин роторунда адатта Холл сенсору тарабынан аныкталган 4 полюс [NSNS] бар, күйөрман чыгышы азаят устундун түрү боюнча аныкталат). Башка жагынан алганда, бул зым адатта 3.3V чыңалуу деңгээлине тартылат. Эгерде сиз туура зым бар экенине ишенбесеңиз, осциллографты колдонуңуз же бул кадамдын акыркы сүрөтүнө тартылган аныктоо схемаларынын бирин түзүңүз. Алардын биринчиси өлчөнгөн жерде пайда болгон максималдуу чыңалууну текшерүүгө, экинчиси төмөн жыштыктагы импульстар пайда болгонун текшерүүгө мүмкүндүк берет.
3.3V ATtiny'дин кирүү казыктары тарабынан ЖОГОРУ абалында окулушу керек, бирок эгерде сизде көйгөйлөр пайда болсо, анда MCUга күч келтирүүчү чыңалууну азайтууга аракет кылсаңыз болот (ал MOSFETтердин каршылыгын да жогорулатат!). Менде эч кандай көйгөй болгон жок, ошентсе да мен бул ойду бул жерге кошууну чечтим.
Кирүүчү күйөрмандар даяр болгондо, сиз тандаган жерге күйгүзгүчтү компьютериңиздин ичине койсоңуз болот. Мен аны бош турган 5.25 дюймдук эки боштуктун капталына орноттум, аны булуңдун темир бөлүктөрүнүн ортосуна түртүп, бир аз кагазды артына коюп, чоң тешиктердин биринен сыдырылган галстуктун жардамы менен бекитип койдум. префбортто жана 5.25 дюймдагы башка кээ бир тешиктерде. ЖК корпусунун эч кандай металл бөлүктөрү күйөрман контролерунун ачык өткөргүчтөрүнө тийе албасын текшериңиз.
Эми сиз 3-пин чыгаруу күйөрмандарын контроллерге туташтыра аласыз. А каналына туташкан чыгаруу күйөрмандары CPU жана GPU күйөрмандарына да туташат, жана аларды кубаттай турган минималдуу чыңалуу болжол менен 7-8В болот. Каналдын В чыгуучу туташтыргычтарына туташтырылган күйөрмандар GPU муздатуучу желдеткичтери менен гана башкарылат жана алардын чыңалуусу 0В чейин төмөндөшү мүмкүн (бирок эң төмөнкү чыгаруу деңгээлинде ар бир экинчи 100ms циклде 66 мс үчүн). Күйөрмандар чыгуучу каналга 1Адан ашпашы керек.
6 -кадам: Менин компьютериме киргизилген башка өзгөртүүлөр
А каналы менин ишимдин үстүндө жайгашкан эки күйөрманы айдайт. Алар бир эле модель жана бирдей чыңалуу менен иштейт, бул аларды абдан окшош ылдамдыкта айландырат. Мунун натыйжасында кээ бир уккулуктуу ыргактар (бир аз башка жыштыктагы эки үндүн ортосундагы интерференция үлгүсү) пайда болгон. Муну оңдоо үчүн мен күйөрмандардын бири менен катар 2 диод (бир кадимки жана бир Шоттки) орноттум. Бул желдеткичтин чыңалуусун жана ылдамдыгын төмөндөтүп, ыргакты кетирди.
Мен жасаган күйөрмандарга тиешелүү болгон дагы бир өзгөрүү - бул кагаздын дубалынын үстү жагында жайгашкан желдеткичтин орнотулушу. Анын максаты - бул желдеткич эч кандай радиатордон өтө элек абаны соруп алуусун алдын алуу. Мен дагы башка кагаз дубалдарды жасоого аракет кылдым, бул GPUдан чыккан абаны CPU муздаткычына сордурууга жол бербейт. Алар чындыгында CPU температурасын төмөндөтүштү, бирок GPU көбүрөөк ысыгандыктан, аягында мен аларды алып салдым.
Мен жасаган башка адаттан тыш өзгөртүү - бул эки жогорку желдеткичтин түтүгүндөгү чаң чыпкасын алып салуу (көпчүлүк учурда аба баары бир корпустан чыгарылат, ал эми менин компьютерим өчүп калганда, PC корпусунун үстүндө жайгашкан суурма аны калкалап турат) чаңдан). Мен дагы 92мм желдеткичти 5,25 дюймдук бош боштуктун алдына орноттум (күйөрман контролери анын артында жайгашкан). Бул желдеткич эч кандай бурамалар менен кармалып турбайт, жөн эле 120 мм желдеткич менен анын үстүндөгү оптикалык дисктин ортосуна жакшы дал келет (экөөнүн тең бети термелүүнү басаңдатуу үчүн изолятор лента менен жабылган).
Сунушталууда:
Автоматтык бөлмө жарыгы жана күйөрман контролери эки багыттуу келүүчүнүн эсептегичи менен: 3 кадам
Автоматтык бөлмө жарыгы жана күйөрман контроллери эки тараптуу келүүчүнүн эсептегичи: Көбүнчө биз стадиондо, соода борборунда, кеңселерде, класстык бөлмөлөрдө коноктордун эсептегичтерин көрөбүз. Алар элди санап, эч ким жок болгондо жарыкты кантип күйгүзүп же өчүрүшөт? Бүгүн биз бул жерде автоматтык бөлмө жарык контроллеринин долбоору менен эки тараптуу келүүчүнүн эсептегичи менен
Күн энергиясы менен иштеген "Акылдуу" WiFi башкарган сугат системасы: 6 кадам (Сүрөттөр менен)
Күн менен иштөөчү "Акылдуу" WiFi башкарылуучу сугат системасы: Бул долбоор eBayден келген стандарттык DIY күн жана 12v бөлүктөрүн, Shelly IoT түзмөктөрүн жана openHABтын кээ бир негизги программалоолорун колдонуп, үйдө, толугу менен күндөн иштейт, акылдуу бакчанын электр тармагын жана ирригациясын колдонот. орнотуу.Системанын өзгөчөлүктөрү: Fu
MAME жана Virtual Pinball үчүн DIY клавиатура контролери: 4 кадам (сүрөттөр менен)
MAME жана Virtual Pinball үчүн DIY клавиатура контроллери: Бул көрсөтмөлөр топтому кээ бир зымдардын, ширелердин жана жыгачтын наркы үчүн эски баскычтопторду колдонуп, өз клавиатура контроллерин түзүүгө мүмкүндүк берет. .Виртуалдык Пинбол Инстин караңыз
Raspberry Pi үчүн CPU температурасына негизделген PWM жөнгө салынган күйөрман: 4 кадам (сүрөттөр менен)
Rawberry Pi үчүн CPU температурасына негизделген PWM жөнгө салынган күйөрман: Raspberry Pi үчүн көптөгөн учурлар CPUны муздатууга жардам берүү үчүн бир аз 5V желдеткич менен келет. Бирок, бул күйөрмандар, адатта, абдан ызы -чуу болушат жана көп адамдар ызы -чууну басаңдатуу үчүн 3V3 төөнөгүчүнө сайышат. Бул күйөрмандар адатта 200 мА үчүн бааланат, бул абдан жакшы
Браузер башкарган Roomba роботу Raspberry Pi Model 3 A+менен: 6 кадам (сүрөттөр менен)
Браузер көзөмөлдөгөн Roomba роботу Raspberry Pi Model 3 A+менен: Обзор Бул инструкция өлгөн Roombaга жаңы мээни (Raspberry Pi), көздөрдү (веб -камера) жана бардыгын веб -браузерден кантип башкарууга болууга багытталат. Сериялык интерфейс аркылуу башкарууга мүмкүнчүлүк берген Roomba хактары көп. Менде жок