У нас­тояще­го хакера холод­ными дол­жны быть не толь­ко сер­дце или разум, но и в пер­вую оче­редь компь­ютер­ное железо. Что­бы избе­жать его перег­рева, исполь­зуют­ся раз­личные аппа­рат­ные сис­темы управле­ния вен­тилято­рами охлажде­ния. Одна­ко готовые решения либо слиш­ком дорогие, либо черес­чур при­митив­ные. Зна­чит, нуж­но соб­рать такое устрой­ство самос­тоятель­но! Сей­час рас­ска­жу как.

В боль­шинс­тве сов­ремен­ных материн­ских плат при­сутс­тву­ет край­не удоб­ная фун­кция управле­ния вен­тилято­рами охлажде­ния, поз­воля­ющая динами­чес­ки менять обо­роты кулеров в зависи­мос­ти от тем­перату­ры про­цес­сора. Это дает воз­можность не гонять пыль заз­ря, ког­да машина прос­таивает, а заод­но сущес­твен­но сни­зить шум. Нас­трой­ка этой сис­темы обыч­но выпол­няет­ся в UEFI или с исполь­зовани­ем ути­лит от про­изво­дите­ля материн­ской пла­ты. А что делать, если подоб­ные вари­анты недос­тупны? При­дет­ся взять­ся за паяль­ник и добавить необ­ходимую фун­кци­ональ­ность самос­тоятель­но.

 

Известные решения

На али­ке про­дает­ся мно­жес­тво готовых решений, одна­ко мне ни одно не пон­равилось. Так, при­обре­тен­ная мной китай­ская пла­та на повер­ку ока­залась линей­ным регуля­тором нап­ряжения!

Контроллер на восемь кулеров
Кон­трол­лер на восемь кулеров

А я все смот­рел на нее и думал, зачем там такие мощ­ные полеви­ки сто­ят. Ответ прост: они работа­ют в линей­ном режиме. Нет, желез­ка, конеч­но, обо­роты регули­рует, одна­ко при пониже­нии нап­ряжения в какой‑то момент кулеры оста­нав­лива­ются, и это про­исхо­дит далеко не в край­нем положе­нии движ­ка резис­тора. При этом на тран­зисто­ре регуля­тора мощ­ность про­дол­жает рас­сеивать­ся в виде теп­ла. Мне такое и даром не нуж­но.

Спра­вед­ливос­ти ради надо ска­зать, что желез­ка эта дешевая и оди­нако­во работа­ет со все­ми типами кулеров на 12 В. Сущес­тву­ют, конеч­но, шту­ки посерь­езнее, с дис­пле­ем и мно­жес­твом нас­тро­ек, но на мой вкус они дико избы­точ­ны, с одной сто­роны, и дороги — с дру­гой. Смот­рятся они при­коль­но, но бес­толко­во.

Продвинутый контроллер кулеров
Прод­винутый кон­трол­лер кулеров

Кро­ме того, сущес­тву­ет немало схем самодель­ных кон­трол­леров, но перед тем, как рас­смот­реть некото­рые из них, раз­берем­ся спер­ва с самими вен­тилято­рами.

 

Анатомия и физиология вентилятора

Низ­коволь­тные вен­тилято­ры исполь­зуют бес­щеточ­ные дви­гате­ли пос­тоян­ного тока и раз­лича­ются меж­ду собой в основном типом интерфей­са. Мелочи вро­де раз­ного нап­ряжения питания вро­де 5, 12, 24 В и далее со все­ми оста­нов­ками оста­вим за кад­ром, как оче­вид­ные.

Вен­тилято­ры быва­ют двух­про­вод­ные, трех­про­вод­ные и четырех­про­вод­ные. С пер­выми все прос­то и понят­но: два про­вода — это питание, подал на них нап­ряжение — кру­тит, отклю­чил — не кру­тит. В трех­про­вод­ном интерфей­се к лини­ям питания добав­ляет­ся выход тахомет­ра, выда­юще­го по два импуль­са на обо­рот кулера. Этот вывод пред­став­ляет собой выход с откры­тым кол­лекто­ром, ины­ми сло­вами, ему нуж­на под­тяжка к плю­су питания для работы.

В четырех­про­вод­ном вари­анте пре­дус­мотрен допол­нитель­ный вывод для кон­тро­ля обо­ротов, которые зада­ются ШИМ‑сиг­налом. У выхода есть внут­ренняя под­тяжка к плю­су, поэто­му, если его оста­вить висеть в воз­духе, обо­роты будут мак­сималь­ны. А еще для подачи ШИМ‑сиг­нала мож­но исполь­зовать выход с откры­тым кол­лекто­ром.

Распиновка кулеров
Рас­пинов­ка кулеров

Лег­ко видеть, что такая рас­пинов­ка обес­печива­ет пол­ную обратную сов­мести­мость, поэто­му нет нуж­ды ломать голову, какой кулер под­клю­чать к материн­ской пла­те. Работать будет любой, под­ходящий по нап­ряжению. Теперь, воору­жив­шись стать­ей Why and How to Control Fan Speed for Cooling Electronic Equipment, раз­берем­ся, как устро­ены вен­тилято­ры. Итак, сер­дцем бес­щеточ­ного мотора вен­тилято­ра явля­ется дат­чик Хол­ла, который опре­деля­ет положе­ние маг­нитно­го ротора. Ког­да к дат­чику приб­лижа­ется север­ный полюс маг­нита, на его выходе обра­зует­ся логичес­кая еди­ница, с южным полюсом — наобо­рот.

К пояснению работы датчика Холла
К пояс­нению работы дат­чика Хол­ла

Собс­твен­но, сиг­нал с дат­чика Хол­ла слу­жит для управле­ния клю­чами, пита­ющи­ми катуш­ки, и типич­ная упро­щен­ная схе­ма бес­щеточ­ного вен­тилято­ра выг­лядит так.

Схема бесщеточных вентиляторов 3pin и 4pin
Схе­ма бес­щеточ­ных вен­тилято­ров 3pin и 4pin

Здесь вид­но, отку­да берет­ся сиг­нал тахомет­ра и что он собой пред­став­ляет, а так­же как к это­му делу при­ладить ШИМ‑кон­троль обо­ротов. Обра­ти вни­мание, что управля­емый ШИМ‑сиг­налом ключ ком­мутиру­ет толь­ко силовую часть мотора, не нарушая работу дат­чика Хол­ла и поз­воляя кор­рек­тно опре­делить чис­ло обо­ротов незави­симо от уров­ня сиг­нала на выводе PWM. Двух­про­вод­ной вен­тилятор отли­чает­ся лишь тем, что наружу не выведен выход TACHO. А на прак­тике это может выг­лядеть еще про­ще — упа­кован­ным в одну мик­росхе­му, где будут сра­зу и дат­чик, и клю­чи, и про­чая обвязка.

Мотор вентилятора на одной микросхеме
Мо­тор вен­тилято­ра на одной мик­росхе­ме

info

Вот здесь и здесь один ве­селый чех ковыря­ет вен­тилятор от компь­ютер­ного бло­ка питания. У него даже есть ви­део, неп­лохо пояс­няющее прин­цип работы кулера.

 

Так как же им рулить?

Су­щес­тву­ют четыре клас­сичес­ких под­хода к управле­нию обо­рота­ми вен­тилято­ров, их мы и рас­смот­рим. Сра­зу ска­жу, что чет­вертый — наибо­лее пред­почти­тель­ный.

 

Вариант первый. Дискретный

Тут все прос­то. Вен­тилятор вклю­чает­ся, толь­ко ког­да это необ­ходимо, а в осталь­ное вре­мя он вык­лючен. Пос­ле вклю­чения он работа­ет на мак­сималь­ных обо­ротах. Вари­ант хороший, одна­ко он далеко не всег­да при­меним, так как во мно­гих слу­чаях активное охлажде­ние необ­ходимо и на холос­том ходу, поэто­му оста­нав­ливать­ся тут смыс­ла я не вижу.

 

Вариант второй. Линейный регулятор

На вен­тилятор пода­ется питание с линей­ного регуля­тора. Ины­ми сло­вами, ког­да нуж­но сни­зить обо­роты, на кулер пода­ют мень­ше штат­ных 12 В, и ско­рость вра­щения сни­жает­ся. Так как вход­ное нап­ряжение у нас уже ста­биль­ное и отфиль­тро­ван­ное, то ста­вить спе­циали­зиро­ван­ную мик­росхе­му типа LM317 необя­затель­но, мож­но обой­тись и прос­тым эмит­терным или исто­ковым пов­торите­лем либо исполь­зовать источник тока.

Линейный регулятор оборотов
Ли­ней­ный регуля­тор обо­ротов

Ва­риант прос­той и уни­вер­саль­ный, пос­коль­ку под­ходит для любого типа вен­тилято­ров. Широко исполь­зует­ся китай­цами. Подоб­ные устрой­ства сто­ят око­ло 300 руб­лей, так что дешев­ле их купить, чем собирать самому. Упо­мяну­тый выше китай­ский кон­трол­лер работа­ет имен­но так.

Но у это­го решения есть нес­коль­ко серь­езных минусов. Во‑пер­вых, бес­щеточ­ным вен­тилято­рам нуж­но поряд­ка 5 В для питания дат­чика Хол­ла, ина­че кру­тить­ся он не будет, и такой режим работы для дви­гате­ля явно неш­татный. Для «пятиволь­товых» кулеров это еще боль­шая проб­лема, так как у них диапа­зон нап­ряжений, при которых сох­раня­ется работос­пособ­ность, зна­читель­но уже.

Во‑вто­рых, нап­ряжение, при котором дви­гатель стар­тует, всег­да чуть выше нап­ряжения, при котором он оста­нав­лива­ется. То есть если выс­тавить низ­кие обо­роты, то вен­тилятор может не запус­тить­ся при вклю­чении. И третья неп­рият­ность — низ­кий КПД, пос­коль­ку вся мощ­ность, которая пада­ет на регуля­торе, будет ухо­дить в теп­ло.

 

Вариант третий. Медленный ШИМ по питанию

Этот спо­соб лишен боль­шинс­тва недос­татков пре­дыду­щего и дос­таточ­но час­то исполь­зует­ся. Суть его сос­тоит в том, что дви­гатель пита­ется ШИМ‑сиг­налом.

ШИМ-регулятор оборотов
ШИМ‑регуля­тор обо­ротов

Глав­ное — выб­рать невысо­кую час­тоту ШИМ‑сиг­нала. Нап­ример, в пред­став­ленной схе­ме час­тота дол­жна быть око­ло 50 Гц. Схе­ма подой­дет для любого из рас­смот­ренных нами вен­тилято­ров, единс­твен­ная проб­лема воз­никнет с сиг­налом тахомет­ра: он будет некор­рек­тным. Впро­чем, выбор час­тоты ШИМ‑сиг­нала ниже час­тоты тахомет­ра отчасти реша­ет эту проб­лему.

С КПД у дан­ной схе­мы тоже все в поряд­ке. Если надо регули­ровать обо­роты двух- или трех­про­вод­ного кулера, то это луч­шее решение. Из минусов толь­ко проб­лемы с изме­рени­ем час­тоты обо­ротов. Любопыт­но, что если уста­новить парал­лель­но дви­гате­лю кон­денса­тор на нес­коль­ко десят­ков мик­рофарад, то схе­ма нач­нет работать как опи­сан­ный выше линей­ный регуля­тор.

 

Вариант четвертый, штатный

Как извес­тно, в про­мыш­леннос­ти сидят далеко не глу­пые инже­неры. Само собой, они при­дума­ли спо­соб регули­ров­ки обо­ротов. Так появи­лись четырех­пиновые кулеры. Они поз­воля­ют не толь­ко штат­но менять обо­роты, но и отсле­живать их изме­нение, бла­года­ря чему мож­но, нап­ример, вов­ремя выявить неис­прав­ность вен­тилято­ра. Как это работа­ет? Так же, как и в пре­дыду­щем спо­собе, толь­ко ШИМ‑сиг­нал ком­мутиру­ет непос­редс­твен­но обмотки дви­гате­ля, а дат­чик Хол­ла при этом пос­тоян­но получа­ет питание.

Со­ответс­твен­но, обо­роты изме­ряют­ся кор­рек­тно в любом слу­чае. На интерфейс четырех­пиновых кулеров есть нес­коль­ко спе­цифи­каций — пос­тарше от Intel и пос­вежее от Noctua. Выжим­ка глав­ной сути этих докумен­тов зву­чит так:

  • вы­вод TACHO с откры­тым кол­лекто­ром для работы нуж­дает­ся в под­тяжке к питанию и выда­ет по два импуль­са на обо­рот вала;
  • вход PWM име­ет внут­реннюю под­тяжку к +5 В и может быть под­клю­чен как к CMOS-выводу (нап­ример, GPIO), так и к выходу с откры­тым кол­лекто­ром. Спе­цифи­кация от Noctua стро­же и не рекомен­дует исполь­зовать откры­тый кол­лектор, ссы­лаясь на то, что завален­ные перед­ние фрон­ты импуль­сов могут сде­лать работу вен­тилято­ра неп­ред­ска­зуемой. В любом слу­чае сиг­нал на вхо­де PWM не дол­жен пре­вышать +5 В, ина­че кулер вый­дет из строя;
  • час­тота ШИМ‑сиг­нала дол­жна лежать в интерва­ле от 21 до 27 кГц, рекомен­дован­ная — 25 кГц;
  • сте­пень запол­нения ШИМ‑сиг­нала от 20 до 100%, ниже 20% поведе­ние неоп­ределен­ное. В боль­шинс­тве слу­чаев обо­роты оста­ются минималь­ными и не регули­руют­ся в сто­рону умень­шения.

На прак­тике я погонял китай­ский сер­верный кулер с ГСС в раз­ных режимах и могу ска­зать, что PWM оди­нако­во хорошо работа­ет и с откры­тым кол­лекто­ром, и с полумос­товым выходом. Час­тота ШИМ‑сиг­нала роли не игра­ет, вен­тилятор работа­ет и с 1 кГц, и с 40 кГц, раз­ницы на глаз не вид­но. Прав­да, пишут, что если взять час­тоту ШИМ в зву­ковом диапа­зоне, то кулер может начать пищать, поэто­му ука­зан­ный в спе­цифи­кации диапа­зон выг­лядит разум­но. На рисун­ке пред­став­лена прак­тичес­кая схе­ма ШИМ‑регуля­тора на NE555.

Схема ШИМ-регулятора на NE555
Схе­ма ШИМ‑регуля­тора на NE555

warning

Об­рати вни­мание, что в дан­ном слу­чае NE555 пита­ется от +5 В. Если подать на вход PWM +12 В, кулер сго­рит, я про­верил!

Собс­твен­но, если перед тобой не сто­ит задача имен­но управлять обо­рота­ми, а хочет­ся их прос­то сни­зить, что­бы сис­тема охлажде­ния работа­ла потише, мож­но исполь­зовать обыч­ный муль­тивиб­ратор на логике или «рас­сыпухе». Коэф­фици­ент запол­нения будет 50%, соот­ветс­твен­но, и обо­роты 50%, а вот шум упа­дет очень сущес­твен­но. Впро­чем, даже к муль­тивиб­ратору мож­но прик­рутить регули­ров­ку запол­нения.

 

От теории к практике

Что‑то подоб­ное я понача­лу и пла­ниро­вал соб­рать, одна­ко, пораз­мыслив, понял, что неудоб­но каж­дый раз кру­тить руч­ку, ведь компь­ютер может рас­полагать­ся далеко. Нуж­но реали­зовать прог­рам­мное управле­ние, а руч­ка — это допол­нитель­ная опция. Оста­лось решить, как общать­ся с компь­юте­ром. Пря­мо ска­жем, мне очень хотелось исполь­зовать UART, тем паче что на материн­ской пла­те, под которую это ваялось, есть COM-порт, но к UART нужен пре­обра­зова­тель уров­ней, а зна­чит, приш­лось бы добав­лять лиш­ний кор­пус. Поэто­му такой вари­ант я отбро­сил сра­зу.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    4 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии