Трехфазная пользовательская упрощенная синхронная машина

Этот пример показывает, как упрощают пользовательский Simscape™ синхронная модель машины.

Подробные уравнения машины

Подробные уравнения напряжения статора на модуль включают эффект скорости изменения связи магнитного потока и эффект изменения скорости:

Упрощенные уравнения машины

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

  • Условия напряжения преобразователя, и

  • Эффект изменений скорости. установлен в 1.

Эти упрощения приводят к следующим уравнениям напряжения статора на модуль:

Сравнение компонента Simscape

Можно использовать Инструмент Сравнения, чтобы видеть различия между подробными и упрощенными компонентами Simscape. Введите visdiff ('ThreePhaseExamples.sm', 'ThreePhaseExamples.sm_simplified') в командной строке MATLAB®, чтобы открыть Инструмент Сравнения, чтобы видеть подробные различия на строках 176 и 177 из файлов. Подробный Синхронный компонент Машины находится на левой стороне, и упрощенный Синхронный компонент Машины находится на правой стороне.

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

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

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

Задайте начальные условия

Задайте значения начальных условий.

pu_psid0 = 0.7850;
pu_psiq0 = -0.6216;
pu_psifd0 = 0.9553;
pu_psi1d0 = 0.8269;
pu_psi1q0 = -0.5686;
pu_psi2q0 = -0.5686;
Efd0 = 1.2803;
torque0 = 0.4610;

Задайте варианты

Модель в качестве примера, ee_custom_sm_simplified, была сконфигурирована с помощью Simulink® Variants. Чтобы выполнить подробную модель, установите переменную isSimplified на ложь. Чтобы выполнить упрощенную модель, установите переменную isSimplified на истину.

synchronousMachineVariant = Simulink.Variant;
synchronousMachineVariant.Condition = 'isSimplified==false';
synchronousMachineSimplifiedVariant = Simulink.Variant;
synchronousMachineSimplifiedVariant.Condition = 'isSimplified==true';

Выполните симуляции и соберите результаты

Моделируйте подробную модель.

isSimplified = false; %#ok<NASGU>
sim( 'ee_custom_sm_simplified' );
t1 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine.Synchronous_Machine.pu_voltage.series.time;
v1 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine.Synchronous_Machine.pu_voltage.series.values;
w1 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine.Synchronous_Machine.pu_velocity.series.values;

Моделируйте упрощенную модель.

isSimplified = true;
sim( 'ee_custom_sm_simplified' );
t2 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine_simplified.Synchronous_Machine_simplified.pu_voltage.series.time;
v2 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine_simplified.Synchronous_Machine_simplified.pu_voltage.series.values;
w2 = simlog_ee_custom_sm_simplified.Synchronous_Machine_Variant.Synchronous_Machine_simplified.Synchronous_Machine_simplified.pu_velocity.series.values;

Постройте результаты

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

figure;
subplot(2,1,1);
plot( t1, v1, t2, v2 );
ylim( [ 0.95 1.05 ] );
legend( 'Detailed', 'Simplified' );
title( 'Terminal voltage, pu' );
subplot(2,1,2);
plot( t1, w1, t2, w2 );
ylim( [ 0.95 1.05 ] );
title( 'Rotor velocity, pu' );

Заключение

Этот пример показывает:

  • Как упростить пользовательскую синхронную модель машины

  • Сравнение исходного кода компонента Simscape

  • Сравнение симуляции модели выходные параметры