Создание моделей неопределенных систем

Формы модельной неопределенности включают:

  • Неопределенность в параметрах базовых моделей дифференциального уравнения

  • Неопределенность частотного диапазона, которая часто количественно определяет неопределенность модели путем описания абсолютной или относительной неопределенности в частотной характеристике процесса

Использование этих двух базовых базовых блоков наряду с обычными командами создания систем (такими как ss и tf), вы можете легко создать неопределенные системные модели.

Создание неопределенных параметров

Неопределенный параметр имеет имя (используемое для идентификации его в неопределенной системе со многими неопределенными параметрами) и номинальное значение. Будучи неопределенным, он также имеет изменчивость, описанную одним из следующих способов:

  • Отклонение аддитива от номинального

  • A области значений о номинальном

  • Процентное отклонение от номинального

Создайте действительный параметр с именем '|bw|', номинальным значением 5 и процентной неопределенностью 10%.

bw = ureal('bw',5,'Percentage',10)
bw = 
  Uncertain real parameter "bw" with nominal value 5 and variability [-10,10]%.

Эта команда создает ureal объект, который хранит ряд параметров в своих свойствах. Просмотр свойств bw.

get(bw)
    NominalValue: 5
            Mode: 'Percentage'
           Range: [4.5000 5.5000]
       PlusMinus: [-0.5000 0.5000]
      Percentage: [-10 10]
    AutoSimplify: 'basic'
            Name: 'bw'

Обратите внимание, что область значений изменений (Range свойство) и отклонение присадки от номинального (PlusMinus свойство) соответствуют Percentage значение свойства.

Можно создать модели пространства состояний и передаточной функции с неопределенными вещественными коэффициентами, используя ureal объекты. Результатом является неопределенное пространство состояний (uss) объект. В качестве примера используйте неопределенный действительный параметр bw для моделирования системы первого порядка, чья полоса пропускания находится между 4,5 и 5,5 рад/с.

H = tf(1,[1/bw 1])
H =

  Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 1 states.
  The model uncertainty consists of the following blocks:
    bw: Uncertain real, nominal = 5, variability = [-10,10]%, 1 occurrences

Type "H.NominalValue" to see the nominal value, "get(H)" to see all properties, and "H.Uncertainty" to interact with the uncertain elements.

Обратите внимание, что результат H является неопределенной системой, называемой uss модель. Номинальное значение H является пространством состояний (ss) модель. Проверьте, что полюс находится на уровне -5, как и ожидалось, от номинального значения неопределенного параметра 5.

pole(H.NominalValue)
ans = -5

Далее используйте bodeplot и stepplot изучить поведение H. Эти команды строят графики характеристик номинальной системы и ряда случайных выборок неопределенной системы.

bodeplot(H,{1e-1 1e2});

Figure contains 2 axes. Axes 1 contains 21 objects of type line. This object represents H. Axes 2 contains 21 objects of type line. This object represents H.

stepplot(H)

Figure contains an axes. The axes contains 21 objects of type line. This object represents H.

В то время как существуют изменения в ширине полосы и временной константе Hвысокочастотный откат со скоростью 20 дБ/десятилетие независимо от значения bw. Можно захватить более сложное неопределенное поведение, которое обычно происходит на высоких частотах, используя ultidyn неопределенный элемент.

Количественная оценка немоделированной динамики

Неформальный способ описать различие между моделью процесса и фактическим поведением процесса с точки зрения полосы пропускания. Обычно слышно «The модели хорошо до 8 радиан/секунду». Точный смысл не ясен, но разумно полагать, что для частот ниже, скажем, 5 рад/с, модель точна, а для частот выше, скажем, 30 рад/с, модель не обязательно является репрезентативной для поведения процесса. В области значений от 5 до 30 гарантированная точность модели ухудшается.

Неопределенный объект линейной, инвариантной по времени динамики ultidyn может использоваться, чтобы смоделировать этот тип знаний. Один ultidyn объект представляет неизвестную линейную систему, чей единственный известный атрибут является равномерной величиной, связанной с его частотной характеристикой. Когда он связан с номинальной моделью и фильтром, формирующим частоту, ultidyn объекты могут использоваться для захвата неопределенности, связанной с динамикой модели.

Предположим, что поведение системы моделируется H значительно отклоняется от своего поведения первого порядка сверх 9 рад/с, например, около 5% потенциальной относительной погрешности на низкой частоте, увеличиваясь до 1000% при высокой частоте, где H Для порядка неопределенности частотного диапазона, как описано выше, используя ultidyn объекты, выполните следующие шаги:

  1. Создайте номинальную систему Gnom, использование tf, ss, или zpk. Gnom сама может уже иметь неопределенность параметра. В этом случае Gnom является H, систему первого порядка с неопределенной временной константой.

  2. Создайте W фильтра, называемый «весом», величина которого представляет относительную неопределенность на каждой частоте. Утилита makeweight полезно для создания весов первого порядка с определенными низко- и высокочастотными усилениями и заданной частотой среза усиления.

  3. Создайте ultidyn Delta объекта с величиной, равным 1.

Неопределенная модель G формируется по G = Gnom*(1+W*Delta).

Если величина W представляет абсолютную (а не относительную) неопределенность, используйте формулу G = Gnom + W*Delta вместо этого.

Следующие команды выполняют следующие шаги:

bw = ureal('bw',5,'Percentage',10);
H = tf(1,[1/bw 1]);

Gnom = H;
W = makeweight(.05,9,10);
Delta = ultidyn('Delta',[1 1]);
G = Gnom*(1+W*Delta)
G =

  Uncertain continuous-time state-space model with 1 outputs, 1 inputs, 2 states.
  The model uncertainty consists of the following blocks:
    Delta: Uncertain 1x1 LTI, peak gain = 1, 1 occurrences
    bw: Uncertain real, nominal = 5, variability = [-10,10]%, 1 occurrences

Type "G.NominalValue" to see the nominal value, "get(G)" to see all properties, and "G.Uncertainty" to interact with the uncertain elements.

Обратите внимание, что результат G также является неопределенной системой с зависимостью от обоих Delta и bw. Можно использовать bode сделать Диаграмму Боде из 20 случайных выборок G's поведение в частотной области значений [0,1 100] рад/с.

bode(G,{1e-1 1e2})

Figure contains 2 axes. Axes 1 contains 21 objects of type line. This object represents G. Axes 2 contains 21 objects of type line. This object represents G.

Неопределенность усиления и фазы

Частным случаем динамической неопределенности является неопределенность в усилении и фазе в цикле обратной связи. Моделирование изменений усиления и фазы в вашей неопределенной системной модели позволяет вам проверить запасы устойчивости во время анализа робастности или применить их во время устойчивого проектирования контроллера. Используйте umargin управляйте блоком проекта, чтобы представлять изменения усиления и фазы в циклах обратной связи. Для получения дополнительной информации см. «Неопределенное усиление» и «Фаза».

Похожие темы