Этот пример показывает ответ предоставления мощности постоянного тока, соединенного с загрузкой серии 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: ----------------------------- Capacitor DC Voltage Electrical Reference Inductor Series Resistance Switch Vout -----------------------------
Подтвердите рабочую точку путем инициализации модели разомкнутой цепи с рабочей точкой. Результатом является плоская строка, представляющая полностью энергичный источник питания.
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;