Я писал, что есть две микросхемы источников питания AC/DC, которые можно назвать народными. Слишком они популярны, хотя уже и устаревают. Про IR2153 я написал пару заметок, в которых рассказал про самое простое включение и чуть более интересное. В этой статье расскажу про TL494, которую лично я применял много раз как для создания сетевых источников питания, так и для автомобильных преобразователей.  Главное и самое приятное — источники на микросхеме TL494 можно сделать стабилизированными, причём для этого есть два входа, то есть стабилизацию можно реализовать по двум параметрам. Работу с TL494 представлю на примере моего универсального блока. Был период времени, когда мне часто приходилось делать источники питания от сети для не очень мощной аппаратуры. И как правило всегда были достаточно разные требования к ним как по токам, так и по набору выходных напряжений. В какой‑то момент я решил попробовать сделать некий универсальный блок, который отвечал бы всем моим потребностям. Чтобы это сделать, нужно составить список всех желаний и написать подобие ТЗ. Техническое задание: Питание от стандартной электросети 220В с учётом всех её параметров. Мощность блока питания до 200Вт. Обязательно наличие стабилизации по напряжению. Наличие сетевого выпрямителя и фильтра (с возможностью установки разной ёмкости). Наличие плавного заряда входной ёмкости. Минимум три гальванически развязанных выхода (или сколько‑то с общей обмотки).  Возможность стабилизации напряжения по одному из выходов (или по всем?). Наличие защиты по току (превышения мощности, КЗ по выходу). Постараться не использовать редкие компоненты. Иметь универсальный выходной выпрямитель и фильтр. Желательна оптимизация по цене. По моим прикидкам получилось, что, создав такой БП, я закрою все свои потребности для разрабатываемых мною устройств. То есть собрав один такой модуль и наматывая разные обмотки на трансформаторе, меняя некоторые элементы на плате, я буду получать всё что захочу. Звучит как вселенский успех. Анализ ТЗ, или мысли вслух. Анализируя все свои пожелания, и прорисовывая блок‑схемы такого модуля, у меня получилось логичное разбиение модуля на 3 части:  Входной выпрямитель с плавным стартом, позволяющий устанавливать разные ёмкости фильтра (ККМ мне не нужен на таких мощностях и к КПД нет особых претензий). Непосредственно сам преобразователь с футпринтом под достаточно универсальный феррит — трансформатор. Выходной выпрямитель с кучей различных вариантов конденсаторов, диодов, индуктивностей и дросселем групповой стабилизации. Первый блок делается достаточно универсальным, чтобы закрыть все вышеперечисленные пожелания. При этом получается очень простым. Второй блок тоже не вызывает проблем. Включает в себя трансформатор, микросхему контроллера ШИМ, силовые транзисторы и возможно что‑то ещё. Третий блок, на удивление оказался самым сложным, хотя, казалось бы, это всего лишь выпрямитель — фильтр. Сделать его универсальным — получить нечто громоздкое, так как мне порой требуется что‑то силовое, а иногда что‑то высоковольтное. Выпрямители могут быть полупериодные, двуполупериодные или мостовые. Фильтрующие индуктивности могут быть совершенно разные. Конденсаторы фильтров тоже на все случаи не соберёшь в один паттерн. ДГС — вообще отдельная штука, которая то нужна, то не нужна. После всех этих рассуждений было принято решение сделать универсальный блок, состоящий из первых двух частей, а третью уже делать индивидуальной под каждый проект. И мало того, для универсальности как габаритов, так и применения, было принято решение первые две части физически разделить. Это дало огромную гибкость встраивания этого источника в различные габариты приборов. По многим причинам выбор пал на полумостовую топологию преобразователя. Полумост — это двухтактный преобразователь, топология которого передаёт энергию в нагрузку при каждом полупериоде. Эту топологию чаще всего используют для преобразователей мощностью до 500Вт, как раз то, что мне нужно. Эта топология позволяет до 500Вт собрать достаточно простой и с хорошим соотношением цена – КПД источник питания. Полумостовая топология позволяет малыми усилиями добиться малых пульсаций на выходе из-за постоянной подачи энергии (в каждом такте) в нагрузку. А ещё, как приятный бонус – относительно не высоковольтные транзисторы можно применять в данной топологии (в отличии от обратноходов, прямоходов). Я использую бесплатную программу от TI для проверки концептов разработки источников питания: «Power Stage Designer Tool 4.0». Тут достаточно просто и удобно можно посмотреть на критические параметры работы схемы. А в данном случае она нам поможет разобраться какие напряжения и токи будут в нашей схеме. Вот так выглядит общая схема данной топологии: А вот такие формы напряжения и тока будут в первичной обмотке трансформатора: Тут отчётливо видно, как работает поочерёдное включение транзисторов. К первичной обмотке поочерёдно подключается половина напряжения питания. То есть то от верхнего конденсатора, то от нижнего. А вот тут можно увидеть какие напряжения и токи при этом будут приложены к транзисторам: Кстати, программа достаточно верно показывает как очерёдность включения транзисторов, так и паузу между включениями. Более глубоко не будем погружаться в работу этой топологии, так как и без меня много трудов написано на эту тему. И достаточно грамотных. После принятия решения об общем концепте блока, приступил к более детальной проработке узлов. Для сердца устройства сразу выбрал TL494, так как с ней очень много работал, она распространённая и дешёвая, надёжная и простая микросхема. И имеет весь необходимый мне функционал.  Силовые транзисторы особенно нет смысла выбирать конкретные, так как у всех в ТО-220 универсальная распиновка, и в зависимости от исполнения блока (варианта его сборки: какая мощность будет) просто заложить оптимальные по цене и параметрам. Но для такой гибкости в применении транзисторов имеет смысл после ШИМ контроллера заложить драйвер, чтобы действительно иметь возможность применить практически любые транзисторы. Чтобы управлять нижним ключом, как правило может хватить просто встроенного транзистора в TL494, ну или сделать для него драйвер пуш‑пуль, что предпочтительнее. А вот для управления верхним ключом есть несколько вариантов. Самые популярные — это трансформатор и микросхема с схемой ёмкостного заряда (бутстрепным конденсатором). Выбрал заложить микросхему, чтобы не мотать трансформатор. Далее выбор трансформатора, а точнее сердечника с оправкой. Был подобран из наиболее доступных и не дорогих. Такие в магазинах почти всегда есть в наличии. Главное — не хотелось использовать кольцо. Да — дешевле, мотать супер не удобно. TDK B65 815P0000R087. Из основного всё. Осталась мелочь, которая будет просто выбрана в процессе разработки схемы. Прежде, чем бросаться рисовать схемы и платы, стоит познакомиться, собственно, с элементами из чего эти схемы состоят. И чем глубже познакомимся, тем меньше ошибок будет в схеме устройства. Эту микросхему производит много производителей и как правило параметры их одинаковы. Вообще я люблю стиль описания от Texas Instruments. Страничка на микросхему и сам даташит. Но для данной микросхемы ONsemi постарались лучше. Блок схема выглядит так: Можно быстро пробежаться по блокам и понять, что для чего. 1. Есть встроенный источник опорного напряжения. От него питаются внутренние цепи и есть вывод наружу. Это очень удобно, к нему можно подключать различные делители задания порогов для усилителей ошибки и задания мёртвого времени. Имеет защиту от КЗ, выдаёт напряжение 5В с точностью 5% и током до 10мА. Вот из чего он состоит, если рассмотреть более детально: Как видно, есть схема для термостабильности на принципе термокомпенсации, присутствует буфер на выходе. 2. Далее генератор, частота работы которого задаётся двумя внешними компонентами: резистором и конденсатором. Генератор выдает положительный пилообразный сигнал на компараторы времени простоя и ШИМ для сравнения с различными управляющими сигналами.  Частоты могут быть выбраны в диапазоне от 1 до 300кГц, при этом номиналы элементов должны лежать в пределах от 1 кОм до 500 кОм и от 470 пФ до 10 мкФ.  Частоту можно рассчитать по формулам: Или из графика: Но для работы на частотах выше 150кГц есть особенности, связанная со скоростью переключения триггера. Для этих частот мёртвое время должно составлять более 4%. Его структурная схема: Генератор заряжает внешний синхронизирующий конденсатор CT постоянным током, величина которого определяется внешним синхронизирующим резистором RT. Это создает форму сигнала напряжения с линейным нарастанием. Когда напряжение на CT достигает 3 В, схема генератора разряжает его, и цикл зарядки запускается повторно. 3. Контроль «мёртвого» времени. Есть возможность задавать паузу между закрытием одного транзистора и открытием второго. Это часто бывает удобно для работы с высокоёмкостными затворами транзисторов без драйвера или для оптимизации схем в целом. Внутреннее смещение 110 мВ обеспечивает минимальное время простоя ≈3% при заземленном входе. Увеличить время «простоя» можно от 3% до 100% при изменении напряжения на входе от 0 В до 3,3 В соответственно. Вход достаточно высокоомный и его нельзя оставлять не подключенным. 4. В микросхеме присутствует два усилителя ошибки, которые позволяют сделать регулировку по двум входам, не используя дополнительных внешних ОУ. Если в двух словах описать их работу, то выглядит это примерно так: два усилителя независимо влияют на ШИМ компаратор. На ШИМ компаратор приходит напряжение, растущее на Ct до 3В и оно сравнивается с напряжением усилителей ошибки. Чем больше напряжения придёт с усилителя ошибки, тем меньше будет длительность выходного импульса. Выходы усилителя смещены на низкий уровень с помощью приемника тока, чтобы обеспечить максимальную длительность выходного импульса, когда оба усилителя отключены. Регулировать длительность импульсов можно от 97% до 0%. Для этого напряжение с усилителей ошибки лежит в пределах от 0,5 до 3,5В. Так оно выглядит внутри микросхемы: 5. Ну и про выходные цепи. Выходы сделаны так, что их можно подключать как открытый коллектор, так и как открытый эмиттер. Есть вариант их работы параллельно и вариант в push-pull режиме (выбирается пином 13). Выходные транзисторы могут обеспечить ток до 200мА каждый. В режиме Single-ended можно их объединить и получить 400мА. А ещё схема позволяет использовать их как источники тока. Корректнее сказать не трансформатор, но сердечник. Ведь блок универсальный и должна быть возможность намотать много всего разного во вторичной обмотке. А вот первичная будет всегда более-менее одинаковая. Как я писал выше, сердечник подобрал достаточно распространённый, такой, чтобы в комплекте можно было всегда купить как оправку, так и бандаж. В итоге был выбран сердечник RM12 от TDK B65815P0000R087  Материал N87. Даташит. Оправку выбрал B65816C1512T001 (удобно для случая более высоковольтных схем). И крепёж B65816A2002X000 – тут без вариантов. Все параметры даны в документации и можно легко рассчитать требуемый трансформатор. Хочу обратить внимание, что данный сердечник очень универсальный. Он может быть применён для разных источников питания, так как производится в разных исполнениях: разная магнитная проницаемость и есть исполнение с зазором от насыщения в обратноходах. Когда с трансформатором определился, и он был добавлен в библиотеку, приступил к проработке всей схемы. Входной выпрямитель не хотел делать на готовых диодных мостах, так как по требуемой мощности подходили отлично простые диоды. Особенно это влияло бы, когда потребовался источник с малой мощностью, а мощный диодный мост ставить жалко. Выходной фильтр был собран из разных электролитов, с объединённым футпринтом, что бы был вариант установки «или-или». Именно эти электролиты я использую половиной моста в преобразователе. Тут стоит выбирать хорошие конденсаторы, ну или нормальные, хотя бы:). Так как источник не очень мощный, то для системы Soft-start, а именно для шунтирования резистора, была применена схема на тиристоре. Отличие от реле очевидно, тут будет некое падение напряжения на элементе VS1. Для более мощных источников тиристор и его управление U1 рекомендую заменить на реле. В принципе схема в остальном останется такой же. Тут видим, что включение тиристора происходит при появлении каких-то +12В. Это пришло от источника дежурного напряжения, который описан ниже. Вообще говоря, можно было разработать и без него. Вариант на параметрическом стабилизаторе для питания драйвера ключей и ШИМ контроллера допустим и возможен, как и для плавного запуска.  Но в данном варианте намного меньше греющихся элементов в схеме и общий КПД выше.  А ещё, в процессе разработки универсального блока, захотелось иметь некое дежурное напряжение питания. Бывают ситуации, когда очень не хватает чего-то такого в устройстве. И кейсов этих ситуаций могу привести два десятка. Так что, не сильно удорожив конструкцию, так ещё и уменьшив количество греющихся элементов, смело добавил такую схему.  Обращаю внимание, источник дежурного напряжения не развязан от сетевого напряжения, а это значит особое внимание при работе с ним. И начиная с этой схемы обращаю внимание на красные заметки! Данный блок был разработан как некий универсальный для своих поделок. И переделывать плату из-за ошибки шелкографии, да и платить за повторную подготовку производства у меня желания не было. Так что все косяки просто обозначены на схеме и отражены в BOM красной заметкой. Возможно, когда-то, когда соберётся ещё несколько изменений и доработок, блок будет изменён и выйдет версия 2.0. Обе схемы выше расположены на отдельной плате входного выпрямителя – фильтра. Они представляют из себя отдельный блок, который может при необходимости быть использован с другим преобразователем. Основная схема преобразователя. Основная схема поместилась на отдельном большом листе. Она реализована на второй отдельной печатной плате. Она разделена линией, показывающей гальваническую развязку от сети. Справа - условно безопасная часть. Слева – связана с сетью. Так как микросхему TL494 мы рассмотрели и поняли принцип работы, то тут особо нечего рассказывать. Далее она управляет драйвером силовых транзисторов полумостовой схемы U4. Но пару нюансов расскажу. Есть несколько вариантов работы с TL494: можно управлять непосредственно заполнением выходных импульсов по средствам пина DTC.  можно с помощью усилителя ошибки включать и выключать управление ключами.  можно с помощью усилителей ошибки регулировать скважность.  Самый правильный способ – это регулировать скважность импульсов с помощью усилителей ошибки, так как это даёт достаточно точную подстройку напряжения без разных выбросов и позволяет достаточно просто реализовать контур ООС. Пин FEEDBACK позволяет сделать цепочки компенсации, но это тема большая и сложная. Пока намеренно не буду её касаться. При желании рекомендую почитать https://industrial-electronics.com/DC_pwr_5.html , а может быть когда-то и до неё дойду. У меня же на схеме заложена возможность установки резисторов обратной связи, параллельно или последовательно с которыми можно ставить различные цепочки. По-хорошему стоило бы заложить больше места на плате для этих целей. А чтобы проверить правильность концепта, можно смоделировать простую схему и поиграть с её управлением в каком-нибудь каде: Смоделировав в multisim схему, и убедившись, что управление работает как хочется, нарисовал финальную схему своего блока. На схеме есть две отрицательные обратные связи.  Реализована на трансформаторе тока. Настраивается достаточно просто подстроечным резистором R42. Важный момент, параллельно R35 рекомендую установить конденсатор, чтобы защита не была очень быстрой.  Трансформатор тока преобразовывает ток первичной обмотки трансформатора в ток во вторичной. И будет это по такому соотношению: число витков первичной обмотки, умноженное на ток в первичной обмотке равно числу витков вторичной обмотки, умноженному на ток во вторичной обмотке. То есть N1*I1=N2*I2. Отсюда I2=N1*I1/N2 или для количества витков при искомом токе N2=N1*I1/I2. Пример: при одном витке в первичной обмотке и токе в 6А мне нужно на вторичной получить ток 50мА. 6*1/0,05=120 витков вторичной обмотки. Для работы защиты с нагрузочного резистора вторичной обмотки получаем напряжение, которое выпрямляем (превращаем действующее напряжение в амплитудное, коэффициент увеличения напряжения примерно 1,4, но с нагрузкой будет меньше) и подаём через делитель напряжения на вход усилителя ошибки.  Технология намотки трансформатора очень проста. Из какого-нибудь подручного материала вырезается челнок. Считается сколько нужно длины проволоки для обмотки. И с запасом наматывается на челнок. А далее включаем любимую музыку (желательно расслабляющую) и не спеша, виток к витку, мотаем наши расчётные 120 витков с отводом.  А можно сделать чуть хитрее. Перед намоткой на челнок, сложить проволоку вдвое. И далее мотать двойной сразу. Намотав первую часть (60 витков), разрезаем двойную обмотку и её конец соединяем с началом первой. Так получаем ровно намотанную вторичную обмотку с отводом от середины. Первичной обмоткой является провод, который специально вывел в разрыв первичной обмотки силового трансформатора. Он делает один – два витка через этот трансформатор. Если защита по току не нужна в каком-то из исполнений, то трансформатор не устанавливается на плату, а его первичная обмотка просто устанавливается как перемычка на плате. Вторая ООС – это по выходному напряжению. Настраивается в два этапа, порогом на R41 и напряжением на R40. Имеет гальваническую развязку для того, чтобы безопасно контролировать выходное напряжение.  Тут сделал достаточно гибкую систему: так как трансформатор под разные задачи будет иметь разные конфигурации намотки, то тут можно придумать разные конфигурации подключения ОС стабилизатора напряжения, устанавливая нужные перемычки на плате. А также, более правильный подход - имеется возможность заводить ОС с платы выходного фильтра. В общем получилось достаточно гибко и интересно.   Два важных момента, которые стоит знать перед разработкой печатной платы: ГОСТ23751   IPC-2221B   Некоторые данные в ГОСТ уже сильно устарели и над ними можно посмеяться, зная возможности и технологии современного производства печатных плат, но некоторые данные остаются актуальные. Например, зависимости зазоров между проводниками и напряжение пробоя. Физику не обмануть и эти данные верны будут всегда. IPC-2221 более живой и продвинутый стандарт, он периодически обновляется и кажется более понятным. Плата представляет из себя два блока, разделённые линией скрайбирования. Как упомянул ранее, было принято сделать блок универсальным, с возможностью раздельного использования плат. Такой концепт имеет много преимуществ, но есть и минусы, которые обусловлены таким подходом. Например, из‑за универсальности блока не удалось сделать универсальную плату выходного выпрямителя — фильтра. Под каждое изделие это будет что‑то своё. Далее расположение балк‑капаситорс с неким удалением от трансформатора и силовых ключей (не критично для стабильной работы, но не идеально). Ну и не всегда требуется такая плата входного выпрямителя. Но эти минусы с лихвой окупает универсальность блока.  При компоновке и трассировке платы габариты были подобраны так, чтобы блок питания мог устанавливаться как в квадратный корпус изделия, так и в вытянутый прямоугольник, и даже одну плату над другой. Это также придает универсальность блоку. Платы были заказаны в производство и через пару недель я — довольный разработчик, уже исправлял свои косяки на них. В двух своих предыдущих статьях описывал процесс. Просто повторю момент, который считаю важным и полезным, дабы не привязывать эту публикацию к прошлым. Включение подобных конструкций всегда рекомендую проводить с подключением их последовательно с лампой накаливания (обычные на 220В, а мощность подбирать в зависимости от тестируемого устройства и вариантов тестирования). А питать при первом включении рекомендую через ЛАТР. Удобно — не сразу 220В бабахнуть на вход, а плавно (медленно и печально) повышать с контролем тока и напряжения. Мой любимый setup для запуска подобных блоков: Трансформатор Т1 1:1 сетевой для гальванической развязки от сети. У моего мощность около 400Вт и редко когда бы его не хватало. Далее ЛАТР, обозначен как резистор (Т2), позволяет плавно поднимать напряжение. Лампа накаливания зажжётся в случае КЗ в устройстве, или её слабое свечение укажет на неожиданное потребление. Амперметр и вольтметр просто удобны для контроля в режиме реального времени - того, что сейчас происходит. Через лампочку был запущен входной выпрямитель. Признаться честно, запуск до 100В проводил с помощью своего лабораторного источника питания. Это позволило контролировать ток и плавно поднимать напряжение. С его помощью был отлажен источник дежурного напряжения. Выявлена ошибка с заложенным на схеме низковольтным диодом VD6. И там же была найдена ошибка в шелкографии на плате у диода VD5.  Уже после этих исправлений была запущена первая плата целиком. Убедился, что всё работает как планировалось: на выходе 300 с небольшим вольт, у дежурного 12В и тиристор замыкает реле через несколько секунд после подачи основного питания на плату. Вторая плата, более интересная, сначала была отлажена отдельно от +12В. Убедился в работе PWM контроллера, проверил U4, нагрузив её выходы резисторами к земле. Нашёл ту же ошибку в шелкографии диода, перепаял правильно. Уже после этого соединил платы вместе и по тому же принципу с запуском через лампочку, запустил блок. Далее была работа с настройкой обратной связи, проверкой защиты и подбором снабберной цепи R20 C19. Работа эта зависит от того, что на выходе трансформатора. Для тестов было намотано сколько — то витков вторичной обмотки и припаян выпрямитель. Попробую в нескольких предложениях описать их. Во всех цепях есть паразитные составляющие: индуктивности, ёмкости, сопротивления. При быстрых переключениях даже самые малые индуктивности (выводы транзисторов, топология платы, выводы конденсаторов) могут вызывать достаточно большие выбросы напряжения и тока. Эти импульсы без проблем выводят из строя, казалось бы, с большим запасом по напряжению выбранные транзисторы. А также могут влиять на спонтанное открытие или не открытие транзистора. Главный параметр для понимания этих выбросов — изменение тока от времени (скорость его) di/dt. Многие производители силовых транзисторов указывают индуктивность их выводов с учётом внутренней разварки до кристалла. Но остаётся ещё много всего (плата и прочие компоненты схемы) на что не даны такие параметры и измерить тяжело. Есть несколько способов. Можно включить и измерить, а можно примерно подсчитать, а уже при пусконаладке подобрать оптимальные номиналы. Сопротивление часто подбирают раз в 10–100 больше сопротивления открытого канала ключа, а конденсатор либо считается по формуле, зная di/dt и все индуктивности (редчайший случай), либо подбирается на прототипе с контролем гашения паразитных импульсов и времени закрытия — открытия. Эти паразитные выбросы, так называемые overshoot, легко отлавливаются осциллографом и анализируются по времени. Есть интересная статья про эти цепи. Всем рекомендую.  И тут на помощь приходит снова «Power Stage Designer Tool 4.0», про которую я писал выше.  Эта программа имеет ещё интересные тулзы, например калькуляторы снабберных цепей. Если есть осциллограф и мы не боимся посмотреть овершуты на силовых транзисторах, то параметры можно загнать в калькулятор и уже не в слепую подбором, а примерно понимая порядки значений, выбрать что-то оптимальное для блока. Вот так в этой статье рассказал про свой универсальный блок питания, который впоследствии встраивал в некоторые свои устройства и который часто помогал с запуском тех или иных конструкций. Ну и заодно рассказал про очень популярную микросхему ШИМ контроллера.  Думаю, в некоторых моих проектах ещё можно будет встретить этот источник питания. Однако, ни что не идеально в этом мире. Что можно улучшить: Само‑собой исправить все ошибки в шелкографии на плате. Заменить диод VD6 на высоковольтный с другим футпринтом. Сделать возможность вместо тиристора плавного старта устанавливать реле. Заложить в цепь обратной связи усилителя ошибки некую RCR цепочку, позволяющую более «интересно» настраивать АЧХ и ФЧХ контура ОС. Хорошим жестом было бы реализовать на триггере защёлку, которая могла бы полностью выключать микросхему ШИМ при превышении тока в цепи силовых ключей и трансформатора, а не просто стабилизировать его. Такой вариант бывает часто нужен. И возможность сделать выбор такой работы ОС. Сброс можно реализовать отдельной кнопкой или просто выключением сетевого напряжение на время разрядки мощных конденсаторов. Возможно кто‑то предложит ещё доработки для этого источника, и когда‑нибудь я таки выпущу версию 2.0.  Разработка электроники и ПО. Исследования и наука.