Методика тестирования блоков питания стандарта ATX

Установка для тестирования


В течение последнего времени, занимаясь тестированием блоков питания ATX, я старался подобрать методику, которая давала бы достоверные результаты с хорошей повторяемостью. Наиболее естественное решение – использовать в качестве нагрузки реальный компьютер – к сожалению, не обладало ни достоверностью, ни повторяемостью. Для получения адекватных экспериментальных результатов необходим полный контроль над условиями эксперимента – а компьютер, используемый в качестве нагрузки, предоставляет лишь очень ограниченный и опосредованный контроль (например, невозможно не только варьировать нагрузку от 0 до 100%, но даже простыми средствами определить текущую нагрузку). По этой причине изначально было решено использовать синтетическую нагрузку, полностью управляемую и контролируемую.

В таком случае следующим простым решением является, очевидно, использование в качестве нагрузки блока мощных резисторов – и именно так я и поступил при подготовке первых двух статей. Сначала использовался блок из постоянных проволочных резисторов SQP в керамическом корпусе, потом – блок из отечественных проволочных резисторов ПЭВ с третьим выводом, позволяющим точно подстраивать сопротивление. Однако это уже детали, а главным в такой схеме было отсутствие возможности плавной регулировки нагрузки. Я использовал два блока резисторов, одни был включен постоянно, а второй коммутировался тумблером – таким образом, я имел возможность нагружать тестируемые блоки на 50% или 100%. Очевидно, что для работы со всем разнообразием блоков такой нагрузки было недостаточно – приходилось изготавливать ее в расчете на наименее мощные блоки, в результате чего более мощные оказывались в заведомо выигрышном положении. Использование вместо постоянных резисторов реостатов было весьма затруднительно – Вы видели в продаже реостаты на мощность 200Вт? Использование же в качестве нагрузки, скажем, ЛАТРа, принесло бы свои неудобства – потому что такая нагрузка обладает значительной индуктивностью.

В результате при подготовке третьей статьи, намучившись с коробками проволочных резисторов (у меня до сих пор есть неплохая их коллекция :-)), я сделал качественный рывок в схемотехнике – в качестве нагрузки стали использоваться мощные полевые транзисторы с изолированным затвором (MOSFET). Во-первых, в некотором диапазоне напряжений затвор-исток ток сток-исток зависит почти только от приложенного к затвору напряжения и не зависит от напряжения между стоком и истоком – таким образом, полевой транзистор можно применять в качестве источника тока, регулируемого напряжением. Во-вторых, полевые транзисторы можно включать параллельно, таким образом увеличивая суммарную мощность нагрузки. Разумеется, при нагреве транзистора его параметры "плывут", и, соответственно, меняется зависимость тока от напряжения на затворе, однако при помощи обычного операционного усилителя и низкоомного резистора можно получить почти идеальный источник тока – соответствующая схема описана во всех учебниках по электронике, начиная с "Искусства схемотехники" Хоровица и Хилла.

В качестве нагрузки были выбраны недорогие "HEXFET" транзисторы IRFP064N от International Rectifier – этот выбор определила весьма скромная цена (менее двух долларов за штуку) при высокой рассеиваемой мощности: непосредственно кристалл транзистора может рассеивать до 200Вт при температуре до 175 градусов, хотя на практике долговременная рассеиваемая мощность ограничена на несколько меньшем уровне использованием в этих транзисторах корпуса TO-247.

Следующим этапом развития стенда мог стать разве что переход с ручного управления (ток нагрузки выставлялся переменными резисторами и контролировался по амперметрам) на автоматизированное. И действительно, вскоре мне в руки попала установка PowerCheck 2.0 разработки компании "Формоза", предназначенная для автоматизированного тестирования блоков питания стандарта ATX. Непосредственно сама установка подключается к LPT-порту, а запущенная на компьютере программа позволяет устанавливать ток нагрузки по любому из четырех каналов с положительными напряжениями (+5V, +12V, +3,3V, +5Vsb), одновременно измеряя напряжения на этих каналах. Предусмотрены два режима работы – "реальный", в котором есть возможность в любой момент менять нагрузку, передвигая соответствующие ползунки, и "тестовый", в котором нагрузка устанавливается по заранее заданной таблице. В тестовом режиме по результатам тестирования строятся графики всех контролируемых напряжений, и по их максимальному отклонению от номинала определяется класс блока питания – первый, второй или "брак".

Программная часть комплекса

К сожалению, аппаратные возможности установки оставляли желать лучшего - максимальные токи нагрузки не превышали 12,5A по каналу +12V, 23A по каналу +5V, 15,3A по каналу +3,3 и 0,56А – по +5Vsb. Очевидно, что для тестирования современных блоков питания даже мощностью 300Вт этого недостаточно, а про тестирование под полной нагрузкой 400-450Вт блоков нечего и говорить. Следовательно, требовалась доработка блока.

Вскрытие показало, что ничего особенно сложного блок из себя не представляет - использование LPT позволяет отказаться от каких-либо контроллеров; для установки тока и измерения напряжения используются ЦАП и АЦП от Maxim в паре с источниками опорного напряжения от Analog Devices; источники тока выполнены на операционных усилителях LM324, проволочных SQP резисторах и – главное - полевых транзисторах NDP603AL от Fairchild Semiconductor.

Аппаратная часть комплекса

Вот в этих транзисторах и была основная загвоздка – это сравнительно маломощные транзисторы, выполненные в корпусах TO-220, и выделяемая на них максимальная долговременная мощность не должна превышать 50Вт. Для каналов +12В и +5В транзисторы были объединены в группы по три штуки, для канала +3,3В – две штуки, однако и этого было недостаточно. Кроме того, используемые небольшие радиаторы позволяют рассеивать мощность 150Вт (а на каждом радиаторе стояло по три транзистора, т.е. именно таковой могла быть максимальная нагрузка) при обдуве мощным вентилятором с производительностью 1,5 – 2 куб. м/мин, а в данном случае использовался лишь один слабенький вентилятор размером 80x80x25мм и производительностью менее кубометра в минуту.

Один из каналов нагрузки

Доработка была очевидна – надо менять силовые транзисторы на более мощные и выносить радиаторы за пределы корпуса, одновременно увеличивая их размеры. Что и было сделано. Каналы +3,3V и +5Vsb, как сравнительно маломощные, остались в прежнем виде, а вот в каналах +12V и +5V транзисторы были заменены на уже знакомые мне IRFP064N и установлены на радиаторы HS114-100 (группа из трех транзисторов устанавливалась на собранные в единое целое два радиатора – в результате получался "кубик" со стороной 10 см). Каждый из двух каналов нагрузки охлаждается теперь собственным 90x90x25мм вентилятором от Thermaltake с производительностью 1,6 куб. м/мин, что позволяет снимать до 450Вт против прежних 150Вт – а так как максимальная нагрузка на один канал не превышает двух третей общей мощности тестируемого питания, то такая нагрузка позволяет тестировать любые имеющие в продаже ATX блоки. Скажем прямо, конструкция получилась внушительная.

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

Помимо описанной выше установки, в тестировании использовался 3 1/2 – разрядный цифровой мультиметр T-Yan DT 9206 (впрочем, большой нужды в нем не было) и цифровой осциллограф ETC M-221, выполненный в виде устанавливаемой в компьютер ISA-платы и соответствующего софта:

Осциллограф имеет полосу пропускания 100МГц, минимальный период оцифровки произвольного сигнала 50нс (частота оцифровки – 20МГц) и чувствительность 50мВ/дел.

Требования к блоку питания


Функционирование ATX блока питания по большей части определяется двумя руководящими и направляющими документами – ATX Specification и ATX/ATX12V Power Supply Design Guide (последние их версии можно найти на сайте Desktop Form Factors). Первый документ описывает весь конструктив ATX, включая блок питания, тогда как второй уточняет требования, предъявляемые именно к блоку питания. Итак, что мы можем из них почерпнуть?

Во-первых, разделение блоков питания на ATX и ATX12V. Последние в продаже обычно именуются либо как “P4 ready” (это почти правильно), либо как “ATX 2.03” (а вот это - неправильно). На самом деле ATX12V является дополнением к стандарту ATX Specification 2.03 и описывает блоки питания для новых процессоров с увеличенным потреблением. Суть проблемы заключается в том, что современные процессоры потребляют такую мощность, что при питании их стабилизаторов от шины +5В ток превосходит разумные пределы (мощность равна произведению тока на напряжение, поэтому чем ниже напряжение – тем выше ток при той же мощности); выходом является питание от шины +12В, но тогда возникает другая проблема – к разъему питания материнской платы подведен всего один провод этой шины, и при больших токах возникает опасность перегрева и обгорания соответствующего контакта разъема. В ATX12V введен дополнительный 4-контактный разъем, два контакта которого задействованы под “землю” и еще два – под +12В. Помимо устранения описанной выше проблемы, этот разъем позволяет упростить дизайн материнской платы – он значительно меньше стандартного разъема питания, и поэтому его можно разместить непосредственно у стабилизатора, избавившись от необходимости прокладывать по плате рассчитанные на большой ток широкие дорожки от разъема питания до стабилизатора. Упоминание о пригодности для работы с Pentium 4 такие блоки получили из-за того, что этот разъем используется на материнских платах для этого процессора. Это не означает, что те же проблемы отсутствуют на платах под Athlon, но там разъем тем не менее не используется, причем, судя по всему, исключительно по “политическим” причинам – AMD не очень охотно признается в необходимости спецификаций, разрабатываемых Intel’ом (а спецификация ATX относится к таковым).

Однако вернемся к нашим баранам. Как гласит Design Guide, причем эта фраза выделена жирным шрифтом, наличие нового разъема означает, что блок питания должен соответствовать спецификациям ATX12V; его отсутствие – что он этим спецификациям не соответствует. Ниже по тексту накладывается ограничение – на любых блоках питания, не способных выдавать ток не менее 10А по шине +12В, 12-вольтового разъема быть не должно. Соответственно, ATX блок питания, рассчитанный на меньший ток, автоматически не соответствует спецификации ATX12V. Таким образом, не совсем корректно утверждать, что ATX и ATX12V отличаются только наличием дополнительного разъема – еще они отличаются нагрузочной способностью по +12В.

Также увеличена допустимая нагрузка по шине +5Vsb – теперь обязательным является допустимый ток нагрузки до 1А, рекомендуемым – до 2А и пиковым (продолжительностью до 500мс) до 2,5А; это сделано для лучшей поддержки просыпания из “спячки” от сигнала с USB-устройств (например, клавиатуры и мыши). Во всем остальном ATX12V блоки полностью аналогичны своим ATX собратьям, поэтому любая система, нормально работающая с ATX блоком питания, должна ничуть не хуже работать и с ATX12V блоком такой же суммарной мощности.

Помимо ATX12V, хотелось бы отметить еще одно изменение, произошедшее в последнее время – выход спецификации ATX 2.1, в которой напряжение -5В считается необязательным. Дело в том, что это напряжение использовалось только в некоторых ISA-картах... даже скажу иначе – была возможность использовать его в этих картах, потому как оно подавалось на разъем ISA. В современных же компьютерах эта шина исчезла (да и там, где она еще есть, требующие -5В карты встречаются нечасто), поэтому исчезла и необходимость в -5В. На шины PCI и AGP это напряжение просто не подается, а во встроенных аудиочипах не используется, ибо, если там требуется отрицательное напряжение, оно получается линейным стабилизатором из -12В, потому что напряжение непосредственно с блока питания слишком “шумное”. В двух словах – напряжение -5В сейчас никому не нужно, поэтому и большого смысла реализовывать его в блоке питания нет. Другое отрицательное напряжение, -12В, используется как минимум драйверами COM-портов, так что от него мы избавимся еще не скоро...

Далее идут требования к входному напряжению. Так как на текущей версии установки у меня не было возможности проверить соответствие им, то я лишь вкратце перечислю предъявляемые требования: блок питания должен работать в диапазоне напряжений от 180В до 265В, должен быть оборудован плавким предохранителем, должен без каких-либо повреждений воспринимать входное напряжение ниже минимально допустимого. К тому же, в случае выхода из строя любых компонентов, не должны наблюдаться огонь, дым, обугливание печатной платы, расплавление проводников печатной платы, хлопки или выброс расплавленных материалов.

Требования к выходным напряжениям заметно обширнее. Во-первых, оговариваются максимальные их отклонения от номинала – до 5% для положительных напряжений и до 10% для отрицательных при всех допустимых условиях эксплуатации. Для шины +12В при пиковой нагрузке допускается отклонение до 10% - внимание, не путайте пиковую нагрузку с максимальной! На этикетке блока питания указывается максимальный долговременный ток, пиковый же превосходит его на 20-30% и не должен потребляться сколь-нибудь значительное время.

Наиболее интересная часть Design Guide – раздел 3.2.3 “Typical Power Distribution”. В нем приведены диаграммы, описывающие возможные сочетания мощностей, потребляемых реальной системой по разным шинам. Это лишь рекомендация, конкретный выбор остается за производителем той или иной системы, однако, думаю, разумно полагать, что если блок питания продается не в составе готовой системы, и для него не заявлены отдельные параметры – то он должен соответствовать общепринятым.

Ниже я приведу графики для ATX12V блоков питания – приводить данные для ATX блоков нет смысла, ибо в продаже такие БП все равно уже не встречаются. На диаграммах вертикальная линия справа показывает суммарную мощность шин +3,3В и +5В, верхняя горизонтальная линия – мощность шины +12В. Возможным комбинациям мощности, потребляемой от разных шин реальной системой, на диаграмме соответствует область внутри очерченного периметра – в ней блок питания должен выдавать напряжения, не выходящие за рамки допуска.


200Вт ATX12V блок питания


250Вт ATX12V блок питания


300Вт ATX12V блок питания

Отмечу, что для некоторых блоков на максимальной мощности проблемой является не просто выдать напряжения в пределах допустимого, а хоть как-то их выдать, не сгорев. Никаких ограничений на время работы с такой нагрузкой в Design Guide не накладывается, поэтому исправный блок питания обязан ее держать неограниченно долгое время.

Следующим примечательным параметром после общей выходной мощности является уровень пульсаций выходного напряжения и скорость реакции на скачкообразное изменение нагрузки. Ниже в таблице приведены максимально допустимые значения пульсаций в милливольтах для всех шин блока питания, измеренные в диапазоне 10Гц...20МГц и нагрузке от минимальной до максимальной.

 Напряжение Vpp, mV
 +12V 120
 +5V 50
 +3,3V 50
 -5V 100
 -12V 120
 +5Vsb 50

Также блок питания не должен выходить за пределы допуска по выходным напряжениям при скачках нагрузки с частотой от 50Гц до 10кГц на 50% от максимально допустимой по шине +12В и на 30% от максимально допустимой по шинам +5В и +3,3В, включая случай, когда нагрузка одновременно изменяется в одну сторону на всех шинах. Скорость изменения нагрузки может достигать 1А/мкс, при этом она может комбинироваться с максимально допустимой емкостной нагрузкой (для ATX12V блока это 20000мкФ по шине +12В, 10000мкФ по шине +5В и 6000мкФ по шине +3,3В).

Также накладывается ограничение снизу на КПД – в рабочем режиме при максимальной нагрузке КПД не должно быть ниже 68%; в дежурном режиме, согласно требованиям Energy Star, энергопотребление не должно превышать 30Вт или 15% от максимальной заявленной выходной мощности, смотря что больше, и в любом случае рекомендуется КПД не ниже 56%.

На случай выхода из строя блок питания должен быть оборудован защитой от превышения выходных напряжений, срабатывающей при превышении номинального напряжения на 20-30%, и выход из строя единичного компонента БП ни при каких условиях не должен вызывать недопустимо высоких напряжений на всех или на любом из выходов. Причем защита должна быть выполнена в виде отдельной схемы, не связанной напрямую со схемой основного стабилизатора.

Также блок питания должен отключаться без выхода из строя каких-либо компонентов при замыкании шин +12В, +3,3В и +5В на “землю” или друг на друга, либо при закорачивании на “землю” выходов отрицательной полярности. Дежурный источник +5Vsb также должен выдерживать короткие замыкания, причем после устранения замыкания блок питания должен запускаться автоматически либо после подачи сигнала PS_ON. Защита любого из выходов блока питания должна срабатывать до того, как отдаваемая по этому выходу мощность превысит 240ВА. Последнее требование должно соблюдаться даже в случае выхода из строя единичного компонента блока питания.

При нулевой нагрузке блок питания имеет право не запускаться, однако попытка такого запуска не должна причинять ему никакого вреда.

Для защиты от перегрева (являющегося обычно следствием перегрузки или выхода из строя вентилятора) блок питания может – хотя и не обязан – иметь температурный датчик, отключающий блок питания при заданной температуре.

Помимо требований к электрическим параметрам блока питания, нас также интересуют требования к монтажу. Основное в этих требованиях – рекомендуемые сечения проводов: для конфигураций меньше 300Вт предполагается использование провода сечением 18AWG для основных разъемов и положительных напряжений и более тонкого 20AWG для 12-вольтового разъема и разъема питания дисковода. Для блоков мощностью 300Вт и выше рекомендуется использовать в основном разъеме провода сечением 16AWG.

Методика тестирования


Раз блок питания должен держать параметры в пределах нормы при нагрузке, вписывающейся в приведенные выше диаграммы – значит, стоит с этого и начать. По диаграммам из Design Guide были составлены следующие паттерны нагрузки:

250Вт
 5V/3,3V 12V 5V 3.3V 12V
 145W 15W 25A 6A 1.25A
 145W 15W 20A 13.6A 1.25A
 145W 90W 25A 6A 7.5A
 145W 90W 20A 13.6A 7.5A
 80W 156W 15A 1.5A 13A
 80W 156W 10A 9A 13A
 25W 156W 4A 1.5A 13A
 25W 156W 2A 4.5A 13A
 - - 0.1A 0.3A 0A

250Вт "слабый"
 5V/3,3V 12V 5V 3.3V 12V
 130W 15W 22A 6A 1.25A
 130W 15W 20A 9A 1.25A
 130W 90W 22A 6A 7.5A
 130W 90W 20A 9A 7.5A
 80W 108W 15A 1.5A 9A
 80W 108W 10A 9A 9A
 25W 108W 4A 1.5A 9A
 25W 108W 2A 4.5A 9A
 - - 0.1A 0.3A 0A

300Вт
 5V/3,3V 12V 5V 3.3V 12V
 180W 20W 30A 9A 1.6A
 180W 20W 25A 16.6A 1.6A
 180W 105W 30A 9A 8.75A
 180W 105W 25A 16.6A 8.75A
 105W 180W 20A 1.5A 15A
 105W 180W 15A 9A 15A
 30W 180W 5A 1.5A 15A
 30W 180W 3A 4.5A 15A
 - - 0.1A 0.3A 0A

300Вт "слабый"
 5V/3,3V 12V 5V 3.3V 12V
 160W 20W 30A 3A 1.6A
 160W 20W 22.7A 14A 1.6A
 160W 105W 30A 3A 8.75A
 160W 105W 22.7A 14A 8.75A
 105W 180W 20A 1.5A 15A
 105W 180W 15A 9A 15A
 30W 180W 5A 1.5A 15A
 30W 180W 3A 4.5A 15A
 - - 0.1A 0.3A 0A

Здесь в первом столбце указана суммарная мощность нагрузки по шинам +5В и +3,3В, во втором – мощность нагрузки по шине +12В, в остальных столбцах указаны токи нагрузки на соответствующие шины. В последней строке таблицы указаны минимальные токи нагрузки, при которых блок питания должен работать – с них начинался запуск теста.

Как Вы уже заметили, таблиц четыре – в то время как мощностей всего две. Это объясняется тем, что некоторые блоки, несмотря на заявленное соответствие ATX12V, не держат предусмотренные этим стандартом токи – так, Codegen 250X1, несмотря на наличие 12-вольтового разъема, не способен выдать по этой шине ток больше 9А, что противоречит требованиям пункта 3.2.3.2 “ATX/ATX12 Power Supply Design Guide”. Такие блоки питания я тестировал с уменьшенной нагрузкой по “слабым” шинам – с паршивой овцы хоть шерсти клок... :-) Нагрузка на шину +5Vsb во всех случаях составляла 1А, длительность работы на каждой комбинации нагрузок – по 10 секунд. Помимо собственно значений выходных напряжений, такой тест позволяет оценить реакцию блока питания на скачкообразное изменение нагрузки.

Второй этап – измерение пульсаций по шинам +5В и +12В (как наиболее важным) при половинной нагрузке на блок питания. Осциллограммы снимались при чувствительности 50мВ/дел и временной развертке 10мкс/дел.

Третий этап – тестирование блока питания “на выживание”, на полной нагрузке. В данном случае я имитировал два возможных варианта – большое потребление по шине +5В (это характерно для систем на Athlon XP) и большое потребление по шине +12В (а это характерно для Pentium 4). Нагрузка соответствовала максимальной из приведенных выше таблиц (например, для 300Вт блока 180Вт/105Вт и 105Вт/180Вт для первого и второго режимов соответственно), т.е. немного не доходила до максимальной заявленной мощности блока питания (в приведенном примере – 285Вт при заявленной 300Вт). В обоих режимах также снимались осциллограммы на шинах +5В и +12В.

И, конечно же, помимо объективных тестов, проводилось и субъективное исследование содержимого блока питания – наличие дросселей на входе и выходе, количество и качество фильтрующих конденсаторов, размеры радиаторов, количество выходных разъемов и сечение проводов, аккуратность монтажа...

К сожалению, на данном этапе не удалось оценить КПД блоков питания – для этого требуется измерение потребляемой от сети мощности, а это можно сделать только “True RMS” мультиметром, ибо потребляемый блоком питания без PFC ток далек от синусоидального, а в таком случае “обычные” мультиметры, как стрелочные, так и цифровые, показывают не среднеквадратичный ток, а несколько выше. Также не представляется возможным при визуальном осмотре различить маркировку транзисторов и диодных сборок – монтаж практически всех блоков питания настолько плотный, что без выпайки соответствующих элементов это сделать не удастся.