В этом примере показано, как найти рабочие точки для нескольких технических требований рабочей точки с помощью findop
команда. Можно обработать в пакетном режиме, линеаризуют модель с помощью рабочих точек и изучают изменение в поведении модели.
Каждый раз вы вызываете findop
, программное обеспечение компилирует модель Simulink. Чтобы найти рабочие точки для нескольких технических требований, можно дать findop
массив технических требований рабочей точки, вместо того, чтобы неоднократно вызвать findop
в цикле for. Программное обеспечение использует одну компиляцию модели, чтобы вычислить несколько рабочих точек, который эффективен, особенно для моделей, которые являются дорогими, чтобы неоднократно перекомпилировать.
Откройте модель Simulink.
sys = 'scdspeed';
open_system(sys)
Создайте массив объектов спецификации рабочей точки по умолчанию.
opspec = operspec(sys,3);
Чтобы найти установившиеся рабочие точки, в которых фиксируется выход rad/s с блоком об/мин, добавьте известную выходную спецификацию в каждый объект спецификации рабочей точки.
opspec = addoutputspec(opspec,[sys '/rad//s to rpm'],1); for i = 1:3 opspec(i).Outputs(1).Known = true; end
Задайте различные известные выходные значения для каждой спецификации рабочей точки.
opspec(1).Outputs(1).y = 1500; opspec(2).Outputs(1).y = 2000; opspec(3).Outputs(1).y = 2500;
В качестве альтернативы можно сконфигурировать технические требования рабочей точки с помощью Model Linearizer и экспортировать технические требования в рабочее пространство MATLAB. Для получения дополнительной информации см. Технические требования Импорта и экспорта для Поиска Рабочей точки.
Найдите рабочие точки, которые выполняют каждым из трех выходных технических требований. findop
вычисляет все рабочие точки с помощью одной компиляции модели.
ops = findop(sys,opspec);
Operating point search report 1: --------------------------------- opreport = Operating point search report for the Model scdspeed. (Time-Varying Components Evaluated at time t=0) Operating point specifications were successfully met. States: ---------- <strong>Min</strong> <strong>x</strong> <strong>Max</strong> <strong>dxMin</strong> <strong>dx</strong> <strong>dxMax</strong> <strong>____</strong> <strong>_______</strong> <strong>___</strong> <strong>_____</strong> <strong>__________</strong> <strong>_____</strong> (1.) scdspeed/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar -Inf 0.59562 Inf 0 3.4112e-09 0 (2.) scdspeed/Vehicle Dynamics/w = T//J w0 = 209 rad//s -Inf 157.08 Inf 0 -5.572e-07 0 Inputs: ---------- <strong>Min</strong> <strong>u</strong> <strong>Max</strong> <strong>____</strong> <strong>_______</strong> <strong>___</strong> (1.) scdspeed/Throttle perturbation -Inf -1.6086 Inf Outputs: ---------- <strong>Min</strong> <strong>y</strong> <strong>Max</strong> <strong>____</strong> <strong>____</strong> <strong>____</strong> (1.) scdspeed/rad//s to rpm 1500 1500 1500 Operating point search report 2: --------------------------------- opreport = Operating point search report for the Model scdspeed. (Time-Varying Components Evaluated at time t=0) Operating point specifications were successfully met. States: ---------- <strong>Min</strong> <strong>x</strong> <strong>Max</strong> <strong>dxMin</strong> <strong>dx</strong> <strong>dxMax</strong> <strong>____</strong> <strong>_______</strong> <strong>___</strong> <strong>_____</strong> <strong>___________</strong> <strong>_____</strong> (1.) scdspeed/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar -Inf 0.54363 Inf 0 2.6649e-13 0 (2.) scdspeed/Vehicle Dynamics/w = T//J w0 = 209 rad//s -Inf 209.44 Inf 0 -8.4758e-12 0 Inputs: ---------- <strong>Min</strong> <strong>u</strong> <strong>Max</strong> <strong>____</strong> <strong>_________</strong> <strong>___</strong> (1.) scdspeed/Throttle perturbation -Inf 0.0038183 Inf Outputs: ---------- <strong>Min</strong> <strong>y</strong> <strong>Max</strong> <strong>____</strong> <strong>____</strong> <strong>____</strong> (1.) scdspeed/rad//s to rpm 2000 2000 2000 Operating point search report 3: --------------------------------- opreport = Operating point search report for the Model scdspeed. (Time-Varying Components Evaluated at time t=0) Operating point specifications were successfully met. States: ---------- <strong>Min</strong> <strong>x</strong> <strong>Max</strong> <strong>dxMin</strong> <strong>dx</strong> <strong>dxMax</strong> <strong>____</strong> <strong>_______</strong> <strong>___</strong> <strong>_____</strong> <strong>___________</strong> <strong>_____</strong> (1.) scdspeed/Throttle & Manifold/Intake Manifold/p0 = 0.543 bar -Inf 0.51066 Inf 0 1.3297e-08 0 (2.) scdspeed/Vehicle Dynamics/w = T//J w0 = 209 rad//s -Inf 261.8 Inf 0 -7.8334e-08 0 Inputs: ---------- <strong>Min</strong> <strong>u</strong> <strong>Max</strong> <strong>____</strong> <strong>______</strong> <strong>___</strong> (1.) scdspeed/Throttle perturbation -Inf 1.4971 Inf Outputs: ---------- <strong>Min</strong> <strong>y</strong> <strong>Max</strong> <strong>____</strong> <strong>____</strong> <strong>____</strong> (1.) scdspeed/rad//s to rpm 2500 2500 2500
ops
вектор из рабочих точек для scdspeed
модель, которые соответствуют техническим требованиям в opspec
. Выходное значение для каждой рабочей точки совпадает с известным значением, заданным в соответствующей спецификации рабочей точки.