exponenta event banner

Конструкция управления трехфазным синхронным регулятором

В этом примере сценария показано, как можно линеаризовать модель Simscape™ Electrical™ для поддержки анализа и проектирования стабильности системы управления. Используется пример модели ee_sm_governor_control_design.

Синхронная машина в этом примере работает как генератор. Машина инициализируется для запуска в периодическом установившемся состоянии для подачи нагрузки 250 MW/15 Mvar.

Альтернативным и рекомендуемым способом линеаризации моделей Simulink ® и Simscape является использование Design™ Simulink Control. Simulink Control Design линеаризует модель в заданных рабочих точках. Он также возвращает объект модели state-space с именами состояний. При использовании модуля Simulink Control Design откройте ee_sm_governor_control_design модели. На вкладке Приложения (Apps) в разделе Системы управления (Control Systems) щелкните Модель (Model) Линеаризатор (Linearizer). В окне «Линеаризатор модели» на вкладке «Линейный анализ» в разделе «Настройка» выберите «Рабочая точка» > «Линеаризация в». Установите время снимка моделирования равным 4 секундам, затем нажмите кнопку ОК. В разделе Линеаризация нажмите кнопку Моде.

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

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

open_system('ee_sm_governor_control_design')
set_param(find_system('ee_sm_governor_control_design','FindAll', 'on','type','annotation','Tag','ModelFeatures'),'Interpreter','off')

Модель обрезки

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

assignin('base','ClosedLoop',1); % Close the speed-control feedback loop
[t,x,y] = sim('ee_sm_governor_control_design');
idx = find(t>4,1);
X = x(idx,:); U = y(idx);

Контур обратной связи управления скоростью линеаризации

Откройте контур обратной связи управления скоростью, линеаризуйте модель и закройте контур обратной связи управления скоростью.

assignin('base','ClosedLoop',0); % Open the speed-control feedback loop
[a,b,c,d]=linmod('ee_sm_governor_control_design',X,U);
assignin('base','ClosedLoop',1); % Close the speed-control feedback loop

Блок-схема

Постройте график Боде.

c = -c; d = -d; % Negative feedback convention
npts = 100; w = logspace(-3,5,npts); G = zeros(1,npts);
for i=1:npts
    G(i) = c*(1i*w(i)*eye(size(a))-a)^-1*b +d;
end
figure
ax1 = subplot(2,1,1);
semilogx(w,20*log10(abs(G)))
grid on
ylabel('Magnitude (dB)')
title('Bode diagram: speed-control feedback loop')
ax2 = subplot(2,1,2);
semilogx(w,180/pi*unwrap(angle(G)))
ylabel('Phase (degrees)')
xlabel('Frequency (rad/s)')
linkaxes([ax1,ax2],'x')
xlim(w([1 end]))
grid on