Аналоговый модингАртемий «Di Halt» Исламов (di_halt@mail.ru) Хакер, номер #111, стр. 111-126-1 Реобас по-фрикерскиДавным-давно, когда я сидел на дорогущем инете с трафиком, я загнался по моддингу. Визуально-оформительская часть этого движения была мне по барабану, а вот тишины хотелось сильно. В своих изысканиях я наткнулся на интересный девайс – реобас. Прочитав текстовое описание, с любопытством подгрузил картинки и жестоко обломался – перспектива крутить ручки, выставляя скорость вентиляторов, показалась совершенно бредовой. Я же ленивый до безумия, либо выставлю на максимум, чтобы получить нормальное охлаждение, и буду сидеть, слушая свист ветра и вой кулеров, либо забуду на минимуме и, в итоге, получу синий экран смерти из-за перегрева. Пришлось врубить родимый паяльник и начать изобретать систему управления кулерами. Мой Перечень элементов
Можешь с этим списком идти в ближайший радиомагазин. Почти наверняка там все будет. Пропорциональное управление – залог тишины!Какая задача ставится перед нашей системой управления? Да чтобы пропеллеры зря не вращались, и была зависимость скорости вращения от температуры. Чем горячее девайс – тем быстрей вращается вентилятор. Логично? Логично! На том и порешим.
Можно, конечно, заморачиваться с микроконтроллерами. Но, на мой взгляд, проще и дешевле сделать аналоговую систему управления – не надо будет париться с программированием на ассемблере. Кроме простоты в наладке и настройке, преимуществом будет, что любой при желании сможет расширить и надстроить систему по своему вкусу, добавив каналов и датчиков. Всё, что от тебя потребуется, это несколько резисторов, одна микросхема и термодатчик. Ну а также прямые руки и некоторый навык пайки. СоставДля начала собери необходимое барахло. Однозначно, нам потребуется паяльник, желательно маломощный, ватт на 40 максимум. Немного олова и канифоли, а лучше флюса, вроде ЛТИ-120 или горячо любимого мною канифоль-геля. Пригодится и пинцет. Еще нам нужен будет кусок фольгированного текстолита, минимум, четыре на четыре сантиметра. Покупается либо в радиомагазине, либо на радиобарахолке у дедов старьевщиков. Дальше – чип резисторы размера 1206. Их можно навыпаивать из какой-нибудь убитой электроники. Выпаиваются они посредством нагрева платы на электроплитке с последующим снятием деталей пинцетом. Или просто купи в магазине – средняя цена за один резистор 30 копеек. В конце концов, никто не мешает тебе чуток подправить плату, чтобы на место чип резисторов впаять обычные, с ножками, а уж их в любом старом транзисторном телевизоре навалом. Номиналы тех, что стоят в моей схеме, вынесены на врезку, а я по ходу статьи буду объяснять, что на что можно заменить, если вдруг не найдешь указанного. Продолжим. Потребуется многооборотный переменный резистор примерно на 15кОм. Также – чип конденсатор размера 1206 на 470нф (0.47мкФ), любой электролитический кондер напряжением от 16 вольт и выше и емкостью в районе 10-100мкФ. Конденсатор можно выковырять из убитого блока питания, да и в любой китайской аппаратуре их обычно пруд пруди. Винтовые клеммники – по желанию. Можно просто припаять провода к плате, но я поставил клеммник чисто по эстетическим соображениям. Девайс должен выглядеть солидно. В качестве силового элемента, который и будет управлять питанием кулера, мы возьмем мощный MOSFET транзистор. Например, IRF630 или IRF530. Их иногда можно выдрать из старых блоков питания от компа. Конечно, для крохотного пропеллера его мощность избыточна, но мало ли, вдруг ты захочешь туда что-нибудь помощней всунуть? Температуру будем щупать прецизионным датчиком LM335Z, которых я заказал нахаляву из корпорации ST microelectronics столько, что солить можно. Впрочем, он стоит не более десяти рублей и дефицита не представляет, да и заменить его при случае можно каким-нибудь терморезистором, благо он тоже не является редкостью. Основной деталью, на которой все и основано, является микросхема, представляющая из себя четыре операционных усилителя в одном корпусе – LM324N, очень популярная штука. Имеет кучу аналогов (LM124N, LM224N0, 1401УД2А), главное убедись, чтобы она была в DIP корпусе (такой длинный, с четырнадцатью ножками, как на рисунках). Для красоты и наглядности я разложил это дело на бумажке, чтобы ты мог полюбоваться, а сейчас подробно расскажу, как это работает, чтобы ты при случае мог со знанием дела переделать все под любую другую задачу. Замечательный режим – ШИМЧтобы вентилятор вращался медленней, достаточно снизить его напряжение. В простейших реобасах это делается посредством переменного резистора, который ставят последовательно с двигателем. На резисторе упадет напряжение, как результат – попадет меньше и на двигатель. В итоге – снижение оборотов. Где подлость, не замечаешь? Засада в том, что энергия, выделившаяся на резисторе, преобразуется не во что-нибудь, а в обычное тепло. Тебе нужен обогреватель внутри компа? Явно нет! Поэтому мы пойдем более хитрым путем – применим широтно-импульсную модуляцию aka ШИМ или PWM. Страшно звучит, но не бойся, тут все просто. Представь, что двигатель это телега. Ты можешь толкать его ногой непрерывно, что равносильно прямому включению. А можешь двигать пинками – это и будет ШИМ. Чем длинней по времени толчок ногой, тем сильнее ты разгоняешь телегу. При ШИМ на двигатель идет не постоянное напряжение, а прямоугольные импульсы, словно ты включаешь и выключаешь питание, только быстро, десятки раз в секунду. Но двигатель имеет неслабую инерцию и индуктивность обмоток, поэтому эти импульсы как бы суммируются между собой. То есть чем больше суммарная площадь под импульсами в единицу времени, тем большее эквивалентное напряжение идет на двигатель. Подаешь узенькие, словно иголки, импульсы – двигатель еле вращается, а если подать широкие, практически без просветов, то это равносильно прямому включению. Включать и выключать двигатель будет наш MOSFET транзистор, а формировать импульсы будет схема. Пила + прямая = ?Столь хитрый управляющий сигнал получается элементарно. Для этого нам надо в компаратор загнать сигнал пилообразной формы и сравнить его с каким-либо постоянным напряжением. Смотри на рисунок. Допустим, у нас пила идет на отрицательный выход компаратора, а постоянное напряжение на положительный. Компаратор складывает эти два сигнала, определяет, какой из них больше, а потом выносит вердикт. Если напряжение на отрицательном входе больше, чем на положительном, то на выходе получим ноль вольт, а если положительное больше отрицательного, то на выходе напряжение будет около 12 вольт. Пила у нас идет непрерывно, она не меняет свою форму со временем – такой сигнал называется опорным. А вот постоянное напряжение может двигаться вверх или вниз, увеличиваясь или уменьшаясь в зависимости от температуры датчика. Чем выше температура датчика, тем больше напряжение с него выходит, а значит, «напруга» на постоянном входе становится выше и, согласно этому, на выходе компаратора импульсы становятся шире, заставляя вентилятор крутиться быстрее. Так будет до тех пор, пока постоянное напряжение не перекроет пилу, что вызовет включение двигателя на полные обороты. Если же температура низкая, то и напряжение на выходе датчика низкое и постоянная уйдет ниже самого нижнего зубчика пилы, что вызовет прекращение вообще каких-либо импульсов и двигатель вообще остановится. Загрузил, да? Ничего, мозгам полезно работать. Температурная математикаВ качестве датчика у нас используется LM335Z. По сути это термостабилитрон. Прикол стабилитрона в том, что на нем, как на ограничительном клапане, выпадает строго определенное напряжение. А у термостабилитрона напряжение зависит от температуры. У LM335 зависимость выглядит как 10mV * 1 градус по Kельвину. То есть отсчет ведется от абсолютного нуля. Ноль по Цельсию равен 273 градусам по Кельвину. А значит, чтобы получить напряжение, выходящее с датчика, скажем при плюс двадцати пяти градусах Цельсия, нам надо к двадцати пяти прибавить двести семьдесят три и умножит полученную сумму на десять милливольт. (25+273)*0.01 = 2,98В При других температурах напряжение будет меняться несильно, те же 10 милливольт на градус. В этом заключается очередная подстава. Напряжение с датчика меняется незначительно, а сравнивать его надо с пилой, у которой высота зубьев достигает аж десяти вольт. Чтобы с датчика напрямую получить постоянную составляющую на такое напряжение, нужно нагреть его до тысячи градусов – лажа редкостная. Как тогда быть? Так как температура вряд ли опустится ниже двадцати пяти градусов, то все, что ниже этой отметки, нас не интересует. Значит, можно из выходного напряжения с датчика выделить лишь самую верхушку, где происходят все изменения. Как? Да просто вычесть из выходного сигнала две целых девяносто восемь сотых вольта. А оставшиеся крохи умножить на коэффициент усиления, скажем, на тридцать. Получим порядка 10 вольт на пятидесяти градусах – и вплоть до нуля на более низких температурах. Таким образом, у нас в наличии своеобразное температурное «окно» от двадцати пяти до пятидесяти градусов, в пределах которого работает регулятор. Ниже двадцати пяти – двигатель выключен, выше пятидесяти – включен напрямую. Ну а между этими значениями скорость вентилятора пропорциональна температуре. Ширина окна зависит от коэффициента усиления. Чем он больше, тем уже окно, так как предельные 10 вольт, после которых постоянная составляющая на компараторе будет выше пилы и мотор включится напрямую, наступят раньше. Но ведь мы не используем ни микроконтроллер, ни средства компьютера, как же мы будем делать все эти вычисления? А тем же операционным усилителем. Он ведь не зря назван операционным, математические операции – его изначальное назначение. На них построены все аналоговые компьютеры – потрясающие машины, между прочим. Чтобы вычесть одно напряжение из другого, нужно подать их на разные входы операционного усилителя. Напряжение с термодатчика подаем на положительный вход, а напряжение, которое надо вычесть (напряжение смещения), подаем на отрицательный. Получается вычитание одного из другого, а результат умножается на огромное число, практически на бесконечность. Но нам бесконечность не нужна, так как в этом случае температурное окно сужается в точку на температурной шкале, и мы имеем либо стоящий, либо бешено вращающийся вентилятор, а нет ничего более раздражающего, чем включающийся и выключающийся компрессор совкового холодильника. Поэтому, чтобы не получить аналог холодильника, мы будем понижать коэффициент усиления, добавляя к нашему вычитателю обратные связи. Суть обратной связи в том, чтобы с выхода сигнал загнать обратно на вход. Если напряжение с выхода вычитается из входного, то это отрицательная обратная связь, а если складывается, то положительная. Положительная обратная связь увеличивает коэффициент усиления, но может привести к генерации сигнала (автоматчики называют это потерей устойчивости системы). Хороший пример положительной обратной связи с потерей устойчивости – вспомни, когда ты включаешь микрофон и тычешь им в динамик, обычно сразу же раздается противный вой или свист – это и есть генерация. Нам же надо уменьшить коэффициент усиления нашего операционника до разумных пределов, поэтому мы применим отрицательную связь и заведем сигнал с выхода на отрицательный вход. Соотношение резисторов обратной связи и входа даст нам коэффициент усиления, влияющий на ширину окна регулирования. Я прикинул, что тридцати будет достаточно, ты же можешь пересчитать под свои нужды. ПилаОсталось изготовить пилу, а точнее собрать генератор пилообразного напряжения. Состоять он будет из двух операционников. Первый за счет положительной обратной связи оказывается в генераторном режиме, выдавая прямоугольные импульсы, а второй служит интегратором, превращая эти прямоугольники в пилообразную форму. Конденсатор в обратной связи второго операционного усилителя определяет частоту импульсов. Чем меньше емкость конденсатора, тем выше частота и наоборот. В ШИМ генерации действует принцип: «чем больше, тем лучше». Но есть один косяк, если частота попадет в слышимый диапазон (от 20 до 20000Гц) то двигатель будет противно пищать на частоте ШИМ, что явно расходится с нашей концепцией бесшумного компьютера. А добиться из этой схемы частоты больше, чем пятнадцать килогерц, мне не удалось – звучало отвратительно. Пришлось загнать частоту в нижний диапазон, в район двадцати герц. Движок начал чуток вибрировать, но неслышно и так, что ощущается только пальцами. СхемаТак-с, с блоками разобрались, пора бы и на схемку поглядеть. Думаю, большинство уже догадались, что тут к чему. А я все равно поясню, для большей ясности. Пунктиром на схеме обозначены функциональные блоки.
Блок #1 – это генератор пилы. Резисторы R1 и R2 образуют делитель напряжения, чтобы подать в генератор половину питающего. В принципе они могут быть любого номинала, главное, чтобы были одинаковыми и не шибко большого сопротивления, в пределах сотни кОм. Резистор R3 на пару с конденсатором С1 определяют частоту: чем меньше их номиналы, тем больше частота, но повторюсь, что мне не удалось вывести схему за звуковой диапазон, поэтому лучше оставь, как есть. R4 и R5 это резисторы положительной обратной связи. Также они влияют на высоту пилы относительно нуля. В данном случае параметры оптимальные, но если не найдешь таких же, то можно брать плюс-минус кОм. Главное соблюдать пропорцию между их сопротивлениями примерно 1:2. Если сильно снизить R4, то придется снизить и R5. Блок #2 – это блок сравнения, тут происходит формирование ШИМ импульсов из пилы и постоянного напряжения. Блок #3 – это как раз схема устраивающая вычисление температуры. Напряжение с термодатчика VD1 подается на положительный вход, а на отрицательный вход подается напряжение смещения с делителя на R7. Вращая ручку подстроечного резистора R7, можно сдвигать окно регулирования выше или ниже по температурной шкале. Резистор R8 может быть в пределах 5-10кОм. Больше нежелательно, меньше – тоже, может сгореть термодатчик. Резисторы R10 и R11 должны быть равны между собой. Резисторы R9 и R12 – тоже. Номинал резисторов R9 и R10 может быть в принципе любым, но надо учитывать, что от их отношения зависит коэффициент усиления, определяющий ширину окна регулирования. Ku = R9/R10, исходя из этого соотношения, можно выбирать номиналы, главное, чтобы они были не меньше 1кОм. Оптимальным, на мой взгляд, является коэффициент, равный 30, что обеспечивается резисторами на 1кОм и 30кОм. МонтажДевайс выполнен печатным монтажом, чтобы быть компактней и аккуратней. Рисунок печатной платы в виде Layout файла выложен на диске (вместе с программой для просмотра). Сама же печатная плата выполняется на раз-два посредством лазеро-утюжной технологии, подробное описание которой также лежит в приложении на диске. Впрочем, метод пользуют электронщики всей страны, поэтому технология уже обсосана на сотне форумов и находится любым поисковиком по запросу «ЛУТ печатная плата». Ничего сложного там нет, а значит, у тебя обязательно получится. Если не с первого раза, то со второго.
Когда все детали будут в сборе, а плата вытравлена, можно приступать к сборке. Резисторы и конденсаторы можешь припаивать без опаски, так как они почти не боятся перегрева. Придерживаешь детальку пинцетом и слегка касаешься паяльником. Главное, смазать точки пайки флюсом и слегка облудить, то есть покрыть тонким слоем олова. Особую осторожность следует проявить с MOSFET транзистором.
Дело в том, что он боится статического электричества. Поэтому, прежде чем доставать его из фольги, в которую тебе его завернули в магазине, рекомендую снять с себя синтетическую одежду и коснуться рукой оголенной батареи или крана на кухне. Микруху можно перегреть, поэтому когда будешь паять ее, то не держи паяльник на ножках дольше пары секунд. Ну и еще, напоследок, дам совет по резисторам, а точнее по их маркировке. Видишь цифры на спинке? Так вот, это сопротивление в Омах, а последняя цифра обозначает число нулей после. Например, 103 это 10 и 000, то есть 10000 Ом или 10кОм. Апгрейд дело тонкоеЕсли захочешь добавить второй датчик для контроля другого вентилятора, то совершенно не обязательно городить второй генератор, достаточно добавить второй компаратор и схему вычисления, а пилу подать из одного и того же источника. Для этого, конечно, придется перерисовать рисунок печатной платы, но я думаю, для тебя это не составит большого труда. ИтогСижу, печатаю эту статью. Проц не загружен. Системник, стоящий у меня почти под ухом, лениво, в пол силы, шуршит вентиляторами. За окном морозно, приоткрыл форточку – компьютер вообще затаился. Автоматика, блин! Тишина стоит того, чтобы ради нее посидеть вечерок с паяльником. Удачи, фрикер. |