Изменение параметра исследования путем дискретизации настраиваемой модели

В этом примере показано, как выборить параметрическую модель фильтра второго порядка через сетку значений параметров с помощью sampleBlock.

Рассмотрим фильтр второго порядка, представленный:

F(s)=ωn2s2+2ζωns+ωn2.

Дискретизируйте этот фильтр при меняющихся значениях постоянной демпфирования ζ и естественную частоту ωn. Создайте параметрическую модель фильтра при помощи настраиваемых элементов для ζ и ωn.

wn = realp('wn',3);
zeta = realp('zeta',0.8);
F = tf(wn^2,[1 2*zeta*wn wn^2])
F =

  Generalized continuous-time state-space model with 1 outputs, 1 inputs, 2 states, and the following blocks:
    wn: Scalar parameter, 5 occurrences.
    zeta: Scalar parameter, 1 occurrences.

Type "ss(F)" to see the current value, "get(F)" to see all properties, and "F.Blocks" to interact with the blocks.

F является genss модель с двумя настраиваемыми блоками Система Управления, realp блоки wn и zeta. Блоки wn и zeta имеют начальные значения 3 и 0,8 соответственно.

Выборка F по сетке 2 на 3 от (wn, zeta) значения.

wnvals = [3;5];
zetavals = [0.6 0.8 1.0];
Fsample = sampleBlock(F,'wn',wnvals,'zeta',zetavals);

Здесь, sampleBlock дискретизирует модель независимо по двум ωn значений и трех ζ значения. Таким образом, Fsample - массив моделей пространства состояний 2 на 3. Каждая запись в массиве является моделью пространства состояний, которая представляет F оценивается в соответствующем (wn, zeta) пара. Для примера, Fsample(:,:,2,3) имеет wn = 5 и zeta = 1.0.

Установите SamplingGrid свойство массива моделей, чтобы помочь отслеживать, какой набор значений параметров соответствует какой записи в массиве. Для этого создайте сетку значений параметров, которая совпадает с размерностями массива. Затем присвойте эти значения Fsample.SamplingGrid в структуре с именами параметров.

[wngrid,zetagrid] = ndgrid(wnvals,zetavals);
Fsample.SamplingGrid = struct('wn',wngrid,'zeta',zetagrid);

The ndgrid команда создает полную сетку 2 на 3 (wn, zeta) комбинации. Когда вы отображаете Fsample в командном окне значения параметров в Fsample.SamplingGrid отображаются вместе с каждой передаточной функцией в массиве. Информация о параметре также доступна на графиках отклика. Для образца исследуйте переходную характеристику Fsample.

stepplot(Fsample)

Figure contains an axes. The axes contains 6 objects of type line. This object represents Fsample.

На переходные процессы показаны изменения собственной частоты и константы демпфирования для шести моделей массива. При клике по одному из откликов на графике всплывающие подсказки включает соответствующие wn и zeta значения, заданные в Fsample.SamplingGrid.

См. также

Похожие темы