Блок питания с цифровым управлением

Обновлено: 07.07.2024

Данная статья предназначена для тех, кто хочет научиться программированию микроконтроллеров Atmel AVR. На этом примере мы рассмотрим принцип построения структуры программы, обработке прерывания, взаимодействие МК с аналоговой частью и принципах управления систем с обратными связями. К тому - же это полезный и удобный прибор.

Вступление

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

Поиск подходящих конструкций, которые бы удовлетворяли всем моим требованиям, на просторах интернета и публикациях в журналах не принесла результата, либо они были маломощные, либо крайне неудобные. Поэтому за дело пришлось взяться самому.

Были сформулированы следующие требования к будущему блоку питания:

1. напряжение от 0 до 50 В.

2. максимальный ток нагрузки до 5 А.

3. установка защиты по превышению тока от 0 до 5А.

4. удобство эксплуатации.

5. удобство ремонта и регулировки.

6. возможность использования базового микроконтроллерного модуля в других конструкциях, путем изменения конфигурации в сервисном режиме.

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

блок-схема

Рис.1 Блок-схема блока питания

Блок - схема (рис.1) состоит из четырех блоков:

1. первичный источник предназначен для гальванической развязки от питающей сети и понижения напряжения для регулятора. В зависимости от примененного первичного источника (импульсный блок или трансформатор с секционной вторичной обмоткой) используются разные подпрограммы микроконтроллера (об этом будет описано ниже).

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

3. МИКРОКОНТРОЛЛЕР (МК) - обеспечивает управление всей этой системой, сбор данных о текущих значениях - напряжении на выходе блока, потребляемый ток нагрузкой. Индикация напряжения, тока и текущем состоянии блока, установка конфигурации, индикация превышения тока нагрузки сверх установленных значений. Запоминание последних установленных параметров.

4. УПРАВЛЕНИЕ И ИНДИКАЦИЯ - то что мы видим и то чем мы управляем. Управление производится всего двумя органами управления, это энкодер с кнопкой, и просто кнопка.

Микроконтроллер

Проблемы выбора микроконтроллера передо мной не стояла, исходя из поставленной задачи выбор пал на микроконтроллер фирмы Atmel AVR Mega8, по той простой причине - что в этой микросхеме есть все, что душе угодно. Немаловажным фактором послужило и то, что корпус этого МК имеет небольшое число выводов.

Концепция новых скоростных микроконтроллеров была разработана группой разработчиков исследовательского центра ATMEL в Норвегии, инициалы которых затем сформировали марку AVR. Первые микроконтроллеры AVR AT90S1200 появились в середине 1997 г.и быстро снискали расположение потребителей.

AVR-архитектура, на основе которой построены микроконтроллеры семейства AT90S, объединяет мощный гарвардский RISC-процессор с раздельным доступом к памяти программ и данных, 32 регистра общего назначения, каждый из которых может работать как регистр- аккумулятор, и развитую систему команд фиксированной 16-бит длины. Большинство команд выполняются за один машинный такт с одновременным исполнением текущей и выборкой следующей команды, что обеспечивает производительность до 1 MIPS на каждый МГц тактовой частоты.

32 регистра общего назначения образуют регистровый файл быстрого доступа, где каждый регистр напрямую связан с АЛУ. За один такт из регистрового файла выбираются два операнда, выполняется операция, и результат возвращается в регистровый файл. АЛУ поддерживает арифметические и логические операции с регистрами, между регистром и константой или непосредственно с регистром.

Регистровый файл также доступен как часть памяти данных. 6 из 32-х регистров могут использоваться как три 16-разрядных регистра-указателя для косвенной адресации. Старшие микроконтроллеры семейства AVR имеют в составе АЛУ аппаратный умножитель.

Базовый набор команд AVR содержит 120 инструкций. Инструкции битовых операций включают инструкции установки, очистки и тестирования битов.

Все микроконтроллеры AVR имеют встроенную FLASH ROM с возможностью внутрисхемного программирования через последовательный 4-проводной интерфейс.

Отличительные особенности:

  • возможность программирования непосредственно в системе через последовательные интерфейсы SPI и JTAG;
  • разнообразные способы синхронизации: встроенный RС-генератор с внутренней или внешней времязадающей RС-цепочкой, встроенный генератор с внешним кварцевым или пьезокерамическим резонатором, внешний сигнал синхронизации;
  • двухканальный генератор ШИМ - сигнала регулируемой разрядности (один из режимов работы 16-битных таймеров/счетчиков). Разрешение формируемого сигнала может составлять от 1 до12 бит;
  • многоканальный 10-битный АЦП последовательного приближения, имеющий как несимметричные, так и дифференциальные входы;
  • последовательный синхронный интерфейс SPI.
  • очень низкая стоимость.

Тем не менее, выбор микроконтроллера (и не только его) для своей микропроцессорной системы является очень ответственным делом. Оно может быть некритично для какой ни будь радиолюбительской установки - плюс минус сто рублей не деньги, но если вам придется работать на «дядю» который все считает, и при предоставлении готового изделия вы выйдите из бюджета, то вы можете сильно потерять в деньгах. Быстродействие микроконтроллера , каким бы он шустрым не был, часто сводится на нет медленной периферией, индикаторы, дисплеи, датчики, исполнительные механизмы, сервоприводы - требуют для своей работы определенные протоколы обмена информацией, которые, обычно, очень медленные(по сравнению с тактовой частотой МК). И в подпрограммы обслуживания этих устройств вводятся различные задержки, притормаживающие(и весьма) работу всей системы. Поэтому быстрые МК нужны в основном, если для работы всей системы требуется производить много вычислений, по результатам которых происходит то или иное действие

Регулятор

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

схема

Схемотехника не отличается излишествами, но показала в процессе эксплуатации высокую надежность. Работу регулятора напряжения рассмотрим на примере рис.3.

Рис.3

Силовой элемент регулятора выполнен на p-канальном полевом транзисторе Q1, трбования предъявляемые к этому транзистору простые - максимальное напряжение должно быть хотя бы в полтора раза выше напряжения питания, максимальный ток минимум в два раза больше максимального тока нагрузки и сопротивление открытого канала(чем меньше, тем лучше). сопротивление открытого канала легко уменьшить соединив параллельно два, три транзистора без всяких выравнивающих резисторов и индуктивностей - это не импульсный регулятор.

Регулировка напряжения происходит изменением напряжения на затворе транзистора Q1 за счет приоткрывания транзистора Q2. когда Q2 закрыт напряжение на затворе Q1 равно напряжению питания и транзистор закрыт. Усилитель ошибки, выполненный на ОУ U1.А сравнивает напряжение на выходе стабилизатора посредством делителя напряжения R4, R1, коэффициент деления которого равен отношению выходного напряжения к опорному, в данном случае 1:10, т.е. при выходном напряжении 50 В опорное должно быть 50 : 10 = 5 В. Разница между опорным напряжением и напряжением полученному с делителя усиливается усилителем и подается на затвор Q2. Таким образом, компенсируется повышение напряжение на выходе стабилизатора, пока напряжения на входах 2 и 3 не уравняются. Изменяя величину опорного напряжения от 0 до 5 В можно менять напряжение на выходе стабилизатора. Резисторы R5, R8 и конденсатор С2 образуют интегратор, преобразующий импульсы ШИМ в постоянное напряжение. В схеме на рис. 2 присутствует отрицательное напряжение -2.5 В , оно необходимо для того, чтобы обеспечить нулевое напряжение на выходе стабилизатора. Особенности схемотехники операционных усилителей состоит в том, что невозможно получить нулевое напряжение на выходе ОУ если отрицательный вывод питания подключен к земле, и соответственно на выходе стабилизатора появляется напряжение достигающее 500 - 700 мВ.

Стабилизатор тока выполнен на ОУ U2.А ,U2.В, напряжение с датчика тока R5 усиливается ОУ U2.В с коэффициентом усиления равным 10, с выхода этого усилителя напряжение приходит на вход АЦП1 микроконтроллера и на вход усилителя ошибки U2.А, на второй вход которого подается сигнал ШИМ тока с микроконтроллера, в случае превышения напряжения с датчика тока напряжения с ШИМ ОУ U2.А переводит стабилизатор напряжения в режим стабилизатора тока уменьшая через диод D1 напряжение на затворе Q2, уменьшая тем самым напряжение на выходе блока питания до тех пор пока потребляемый нагрузкой ток не сравняется с током установленным микроконтроллером.

При таком способе получения информации о потребляемом токе возникает одна проблема - несоответствие индицируемым микроконтроллером данных о выходном напряжении. Это можно решить, введя в программу обслуживания коррекцию в виде вычитания из значения фактического значения выходного напряжения данных о потребляемом на данный момент времени тока. Как показано на примере:

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

Как правило, выходное напряжение нужной величины устанавливается переменным сопротивлением по встроенному в блок питания вольтметру. Зачастую от регулируемого блока питания требуется всего 4-5 стандартных значений выходного напряжения, которые питают аппаратуру. Скажем 3, 5, 9 и 12 вольт. И чтобы каждый раз не подстраивать выход по вольтметру, можно применить цифровое управление.

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

Схема электрическая принципиальная блока питания с цифровым управлением Схема электрическая принципиальная блока питания с цифровым управлением

Отличие от классического включения DA1 состоит в том, что вместо переменного сопротивления, которое включается между общим проводом и выводом « ADJ », его заменяют сопротивления, образованные переходами КЭ транзисторов VT2-VT11 с резисторами в цепи коллектора.

Коммутация транзисторов (их открытие) осуществляется с помощью десятичного счётчика DD2 CD4017 . При подачи управляющих импульсов на 14 вывод которого, высокий уровень будет переходить от выхода Q0 к Q9 и далее по кругу с частотой равной входу.

Управляющие импульсы, т.е. задающий генератор, для DD2 , построен на таймере 555 - DD1 . При указанной на схеме RC -цепи, частота выхода DD1 будет равна примерно 1 Гц . Для активации переключения DD2 служит кнопка SB1 « Selector », а для оперативного сброса (переключения на первую ступень) кнопка SB2 « Reset ».

Для индикации выбранной ступени в схеме предусмотрены светодиоды VD6-VD15 .

Питание микросхем DD1 , DD2 осуществляется от 12В стабилизатора VD5R1VT1 .


Хочу поделиться схемой универсального лабораторного блока питания 0-22 В, 0-2,5 А. БП имеет полностью цифровой контроль. Устройство работает безупречно уже третий год, только внес изменения в программу управления.

Схема цифрового БП на Atmega8

Сама схема проста, но, к сожалению, дороговата в сборке.

Блок питания регулируемый с полным цифровым управлением

Блок питания регулируемый с полным цифровым управлением

Нужны будут резисторы с допуском 1%, трансформатор подходящий, корпус, микроконтроллеры, ну и возня с калибровкой всего устройства. Но эффект того стоит.

Дополнительным преимуществом конструкции является автономно управляемый вентилятор. Измерение температуры радиатора на ОУ с полевым транзистором работает в системе сравнения. Думаете это лишнее? А вот и нет. Вентилятор особенно полезен при зарядке аккумулятора автомобиля, так как идёт долговременный ток более 3-х Ампер.

Полезное: Усилитель с низким напряжением и током потребления

Блок питания регулируемый с полным цифровым управлением

Тут был использован тороидальный трансформатор с такими параметрами:

  • Трансформатор TTS-50,
  • первичка: 220 В,
  • вторичка: 17 В, 3 А
  • Мощность: 50 ВА.

Уровни напряжения на физическом интерфейсе RS232 составляют +/- 10 В. Atmega8 работает с 0-5 В. Можно использовать стабилитрон для ограничения напряжения, но оказывается это на самом деле не нужно.

Блок питания регулируемый с полным цифровым управлением

Atmega8 имеет внутреннюю защиту от перенапряжения и пониженного напряжения. Просто нужно убедиться что ток достаточно мал, чтобы не сжечь эту защиту. Все что нужно для аппаратного обеспечения, это два 4.7 кОм резистора.

Блок питания регулируемый с полным цифровым управлением

Для дистанционного управления источником питания с помощью цифровых команд будем использовать связь по протоколу I2C. Эта I2C немного медленная, но мы все равно не посылаем длинные команды. Команда для установки напряжения может быть очень короткой. И её длина составляет всего несколько байтов.



Этот блок питания уже рассматривался на местном форуме, однако полного описания конструкции там не было. Теперь я решил подробно рассказать, как его настраивать и пользоваться им. От большинства блоков питания, описываемых в интернете, он отличается методом понижения напряжения и компактной формой корпуса.

На самом деле, это не полноценный блок питания, а понижающий преобразователь напряжения. В качестве DC-DC используется преобразователь на микросхеме LM2576, управляемый микроконтроллером. В блоках питания с микроконтроллерным управлением, конструкции которых обычно описываются в интернете, понижение напряжения обычно производится линейным методом — вся лишняя мощность в таких блоках питания рассеивается радиатором мощного транзистора.
Использование преобразователя DC-DC позволяет отказаться от использования большого радиатора. В случае, если нагрузка не требует высокого напряжения, то для обеспечения большого тока можно использовать слаботочный первичный блок питания, но способный выдавать более высокое напряжение (обычно я использую первичный блок питания 24 В, 0.8 А).
Так как большой радиатор в этом блоке питания не нужен, то корпус удалось сделать максимально компактным. Для того, чтобы блок питания занимал меньше места в шкафу, передняя панель сделана откидной.
Недостаток же DC-DC — относительно высокий уровень шумов по питанию (это важно при работе со слабыми сигналами).

Зачем нужно микроконтроллерное управление напряжением? Напряжение на выходе такого блока питания можно точно устанавливать энкодером, при этом регулировку напряжения можно временно заблокировать (чтобы случайно не сбить напряжение, и не сжечь устройство, зацепив ручку энкодера). Дискретность установки напряжения можно менять. Можно управлять напряжением, в зависимости от тока (для заряда аккумуляторов).

Характеристики получившегося блока питания:
Напряжение питания: 7-35 В.
Выходное напряжение: 1.3 — 30 В
Максимальный ток: 3 А
Дискретность установки напряжения: 0.1 В
Дискретность отображения тока: 0.01А (в блоке питания нет стабилизации тока)
Защита от КЗ.


Блок питания разбит на две части (силовую и цифровую), которые сделаны на отдельных платах.
Схема блока питания (силовая часть):

Обвязка LM2576 или LM2596 стандартная — из даташита. Дроссель L1 в данном блоке питания взят из блока питания принтера (там был DC-DC), маркировки на нем не было. Вообще, микросхема LM2576 нетребовательна к дросселю. Параметры дросселей для конкретных токов и напряжений даны в даташите.
Резистор R9 используется для быстрого разряда конденсатора при отключении напряжения.
Для управления напряжением с микроконтроллера используются ОУ U1. U1B повышает напряжение (3 В > 30В), U1A замыкает обратную связь DC-DC, и позволяет регулировать напряжение на выходе.
На ОУ U3 собран узел измерения тока. Стабилитрон D2 защищает микроконтроллер от скачков напряжения, вызываемых скачками тока (например, при КЗ во время разряда конденсатора).


Схема цифровой части:

Тут все довольно стандартно. Питание цифровой части (5В) обеспечивается от отдельного DC-DC — так как входное напряжение может быть большим, то обычные линейные стабилизаторы могут греться, а места под радиатор в корпусе нет. Внимание — линии VCC у цифровой и силовой части разные.
Напряжение для управления DC-DC формируется при помощи ШИМ, и фильтруется ФНЧ на R12,R13,C2,C3.
Транзистор Q1 и его обвязка служат для формирования напряжения 12 В для подсветки индикатора (повышающий преобразователь).
Резистор R9 задает ток срабатывания защиты от КЗ (используется компаратор контроллера).
Кнопки, индикатор, энкодер устанавливаются в передней панели. Для защиты от дребезга выводы энкодера соединяются через конденсаторы 0,01 мкФ с землей.

Фото готового блока питания (на форуме есть другие фотогорафии):

Прошивка для контроллера: прошивка.
Пример установки фьюзов для AVR Studo:

Разводка печатных плат (для Sprint-Layout): здесь.

Настройка блока питания при сборке.
Так как конструкция у меня состоит из двух частей, то и собиралась она последовательно. Сначала собирается силовая часть. После сборки резисторы R2, R10 устанавливаются в нижнее по схеме положение. Это обеспечит защиту контроллера от перенапряжения при последующем подключении. После установки перемычки J1 и подачи напряжения на вход силовой части, проверяют ее работоспособность — на выходе DC-DC должно быть напряжение не менее 1.3 В, которое должно изменятся при подаче внешнего напряжения на линию VOLT_CTRL. DC-DC должен обеспечивать нужный ток.
Затем собирается цифровая часть. Наладки она не требует (возможно, потребуется поменять выводы энкодера местами).
Сначала настраивается индикация входного напряжения (резистором R2). Для контроля правильности настройки придется включать и отключать первичный блок питания. Последующая настройка идет в точном режиме.
Далее настраивается коэффициент усиления ОУ, отвечающего за установку напряжения. Энкодером нужно установить нужное напряжение, например 10 В, подключить к выходу блока питания мультиметр, и поворачивая резистор R1, добиться совпадения напряжений на экране (желаемого) и мультиметре. После этого, поворотом резистора R10 добиваются совпадения напряжений на экране (действительного) и мультиметре.
После этого к выходу блока питания подключают нагрузку и амперметр, энкодером устанавливают такое напряжение, при котором ток в нагрузке близок, например, к 1 А, и поворотом резистора R12 устанавливают такое же значение тока на экране. После этого нужно произвести определение коэффициентов тока, как описано выше.

Резистор R9 на цифровом блоке используется для установки тока срабатывания защиты от КЗ. После подключения к блоку питания нагрузки, способной выдержать ток 3 А, и установки нужного напряжения, подстраивают резистор, добиваясь срабатывания защиты.

В случае одиночной платы при настройке прибора важно контролировать положения резисторов R2, R10, чтобы напряжения на их выходах не превышали 5 В.

Читайте также: