Этот пример показывает ответ предоставления мощности постоянного тока, соединенного с загрузкой серии RLC. Цель состоит в том, чтобы построить ответ выходного напряжения, когда загрузка внезапно присоединена к полностью приводимому в действие предоставлению. Это сделано с помощью рабочей точки Simscape.
Во-первых, источник питания соединен с разомкнутой цепью и симулирован, пока он не достигает устойчивого состояния. Объект рабочей точки извлечен из результирующего журнала Simscape. Эта рабочая точка используется, чтобы инициализировать модель и проверить, что это находится в устойчивом состоянии. Затем загрузка изменяется на схему серии RLC, и ответы по сравнению с и без рабочей точки. Наконец, развертка параметра сделана, чтобы сравнить результаты с различными значениями индуктивности загрузки.
Источник питания состоит из напряжения постоянного тока, соединенного с индуктором, резистором и конденсатором. Значения выбраны, чтобы продемонстрировать underdamped ответ разомкнутой цепи при включении предоставления. Загрузка является различной подсистемой с разомкнутой цепью и схемой серии RLC.
model = 'ssc_op_rlc_transient_response';
open_system(model);
Во-первых, симулируйте, чтобы получить ответ разомкнутой цепи источника питания. Симуляция запускается достаточно долго для источника питания, чтобы достигнуть установившийся. Это - состояние, которое мы хотим запустить в том, когда мы экспериментируем с различными загрузками.
set_param('ssc_op_rlc_transient_response/Load', 'OverrideUsingVariant', 'OpenCircuit'); sim(model);
Извлеките установившуюся рабочую точку Simscape для модели при помощи функции simscape.op.create и журнала Simscape, который следовал из предыдущей симуляции. Используйте '10' в качестве времени, потому что симуляция достигла аппроксимированного устойчивого состояния к тому времени.
op_steadystate = simscape.op.create(simlog_ssc_op_rlc_transient_response, 10);
Удалите рабочую точку для блока Load, поскольку это будет не важно в последующих экспериментах.
op_steadystate = remove(op_steadystate, 'Load')
op_steadystate = OperatingPoint with children: OperatingPoints: ChildId Size ______________________ ____ 'Capacitor' 1x1 'DC Voltage' 1x1 'Electrical Reference' 1x1 'Inductor' 1x1 'Series Resistance' 1x1 'Switch' 1x1 'Vout' 1x1
Подтвердите рабочую точку путем инициализации модели разомкнутой цепи рабочей точкой. Результатом является плоская линия, представляющая полностью энергичный источник питания.
set_param(model, 'SimscapeUseOperatingPoints', 'on', 'SimscapeOperatingPoint', 'op_steadystate'); sim(model);
Измените загрузку в последовательную схему RLC и анализируйте результаты. Во-первых, симулируйте без рабочей точки, чтобы показать объединенный ответ включающегося предоставления и загрузка, присоединенная после 1 секунды. Результаты показывают то, что произошло бы, если бы загрузка была присоединена, в то время как предоставление все еще включалось.
L_load = 1e-1; set_param('ssc_op_rlc_transient_response/Load', 'OverrideUsingVariant', 'RLC'); set_param(model, 'SimscapeUseOperatingPoints', 'off'); sim(model);
Затем позвольте инициализации рабочей точки видеть желаемый ответ. Схема находится в устойчивом состоянии, пока мы не присоединяем загрузку в 1 секунду.
set_param(model, 'SimscapeUseOperatingPoints','on'); sim(model);
Снова используйте рабочую точку в ряду симуляций, чтобы сравнить результаты через область значений значений индуктивности загрузки. Поскольку загрузка индуктивности является настраиваемым запуском-к-управляемому, симулируйте модель в быстром режиме перезапуска, чтобы избежать перекомпиляции.
set_param(model,'FastRestart', 'on'); lValues = linspace(1e-2, 2e-1, 5); hold on; for idx = 1:numel(lValues) L_load = lValues(idx); out = sim(model); t = out.simlog_ssc_op_rlc_transient_response.Vout.Vs.V.series.time; Vout = out.simlog_ssc_op_rlc_transient_response.Vout.Vs.V.series.values('V'); plot(t, Vout, 'LineWidth', 1); end hold off;