Push-Pull Buck Converter в режиме прерывистой проводимости

Этот пример показов, как контролировать выход напряжение тягового понижающего конвертера. Ток, протекающий через индуктор, достигает нуля во время цикла выключения MOSFET, и поэтому преобразователь DC-DC работает в режиме прерывистой проводимости (DCM). Этот режим проводимости в основном используется для маломощных применений. Чтобы преобразовать и сохранить входное напряжение постоянного тока как номинальное выходное напряжение, подсистема ПИ-контроллер использует простое интегральное управление. Во время запуска ссылки напряжение растёт до требуемого выхода напряжения.

Конвертер работает только в DCM, если

  • $K < K_{critical}$ ,

где:

  • $K = 2 * L/(R * Tsw)$ .

  • $K_{critcal} = 1 - D$ .

  • $L$ - индуктивность фильтра.

  • $R$ - сопротивление нагрузки.

  • $T_{sw}$ - период переключения для каждого МОП-транзистора. То есть, где$T_{sw} = 0.5/f_{sw}$ -$f_{sw}$ частота переключения.

  • $D$ - коэффициент заполнения входа ШИМ на затвор каждого МОП-транзистора. То есть, где$D = T_{on}/T_{sw}$ время$T_{on}$ включения MOSFET.

Откройте модель

open_system('ee_push_pull_converter_dcm.slx');

Задайте расчётные параметры

Система необходима для генерации и поддержания выходного напряжения 80 В с потребляемой степенью 100 Вт. Входное напряжение составляет 400 В, а коэффициент поворота трансформатора равен 2. Нагрузка включает постоянную резистивную нагрузку. Скрипт 'ee _ push _ pull _ converter _ dcm _ data.m' определяет расчётные параметры как переменные в рабочей области MATLAB ®.

Input_Voltage           = 400;                                %  Input Voltage to the push-pull converter [V]
Output_Voltage          = 80;                                 %  Desired Output Voltage from the push-pull converter [V]
Output_Power            = 1000;                               %  Full Load Power Output [W]
fsw_Hz                  = 40000;                              %  MOSFET Switching Frequency [Hz]
primary_winding         = 200;                                %  Number of turns in the primary winding
secondary_winding       = 100;                                %  Number of turns in the secondary winding
TR                      = primary_winding/secondary_winding;  %  Turns Ratio
Kp                      = 0.01;                               %  Proportional Gain for PI Controller
Ki                      = 20;                                 %  Integral Gain for PI Controller
del_V                   = 1;                                  %  Peak-Peak Output Voltage Ripple as a percentage of Output Voltage
K                       = 0.3;                                %  Denotes trajectory that gives a relation between Output Voltage Ratio and Duty Cycle.
Ts                      = 1e-7;                               %  Sampling time for the solver

Рабочий Контур между прерывистым режимом проводимости и непрерывным режимом проводимости

Основываясь на ограничении, установленном K и коэффициентом заполнения, режим работы переключается между режимом прерывистой проводимости (DCM) и режимом непрерывной проводимости (CCM). Коэффициенты выходного напряжения CCM и DCM:

  • Режим непрерывной проводимости

  • $V_{output}/V_{input} = D$

  • Режим прерывистой проводимости

  • $V_{output}/V_{Input} = 2/(1 + \sqrt{1 + 4*K/D^2})$

Вычислите коэффициент заполнения без разомкнутого контура для DCM

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

figure;
D_range = 0:0.001:1;
Voltage_ratio = zeros(length(D_range));
for i=1:length(D_range)
    K_crit = 1-D_range(i);
    if K < K_crit
        Voltage_ratio(i) = 2/(1+sqrt(1+4*K/D_range(i)^2));
    else
        Voltage_ratio(i) = D_range(i);
    end
end
VR = Output_Voltage/(Input_Voltage/TR);
Duty = sqrt(4*K/((2/VR-1)^2-1));
hold on;
plot(Voltage_ratio,D_range);
hold on;
plot(VR,Duty,'*');
ylabel('Duty Cycle');
xlabel('Output to Input Voltage Ratio');
title('Discontinuous Mode Operating Region');

% The Open-Loop Duty Cycle required would be approximately 28.28% from the
% graph.

Определите постоянное сопротивление нагрузки

I_average = Output_Power/Output_Voltage;                     %  Average current that flows through the load
R_const = Output_Voltage/I_average;

Определите индуктивность фильтра

Чтобы оценить индуктивность, необходимую для DCM, используйте это отношение между K, Сопротивлением и Периодом Времени Переключения.

L_min = (K*R_const)/(2*2*fsw_Hz);

Проверьте предполагаемые значения индуктивности, приводящие к операции DCM. Если значение приводит к операции CCM, выберите другое значение K и пересчитайте. Итерация до тех пор, пока вы не найдете значение индуктивности, которое приводит к операции DCM.

Выбор емкости фильтра

Отношение между емкостью и выходом напряжения является

C_min = (2-(Duty/(Output_Voltage/(Input_Voltage/TR))))^2/(4*R_const*2*fsw_Hz*del_V*0.01);

Постройте график зависимости емкости от напряжения

Сгенерируйте график, чтобы увидеть емкость, которая требуется для ограничения пульсации выхода напряжения, изменяется в зависимости от расчётных параметров. В данном примере маркер с 1% выходом напряжения соответствует емкости 8,157e-06 F.

del_V_range = 0.5:0.1:5;
C_range = (2-(Duty/(Output_Voltage/(Input_Voltage/TR))))^2./(4*R_const*2*fsw_Hz*del_V_range*0.01);
figure;
hold on;
plot(del_V_range,C_range);
hold on;
plot(del_V,C_min,'*');
xlabel('Voltage Ripple (%)');
ylabel('Capacitance (F)');
title('Capacitance Vs Voltage Ripple');

Запуск симуляции

sim('ee_push_pull_converter_dcm.slx');

Просмотр результатов симуляции

Чтобы просмотреть сводные данные во время или после симуляции, откройте блок Circuit Scope из подсистемы возможности или путем ввода, в командной строке MATLAB:

open_system('ee_push_pull_converter_dcm/Scopes/Circuit Scope');

Чтобы просмотреть данные управления и ошибки во время или после симуляции, откройте блок ПИ-контроллер Scope из подсистемы возможности или введите:

open_system('ee_push_pull_converter_dcm/Scopes/PI Controller Scope');

После симуляции, чтобы просмотреть записанные Simscape™ данные с помощью Simscape Results Explorer, введите:

sscexplore(simlog_ee_push_pull_converter_dcm);
%

Для просмотра документации необходимо авторизоваться на сайте