exponenta event banner

ss

Преобразование объекта System с дискретным временным фильтром в представление пространства состояний

Описание

пример

[A,B,C,D] = ss(sysobj) преобразует object™ системы фильтра в представление пространства состояний, задаваемое:

x (k + 1) = Ax (k) + Bu (k), y (k) = Cx (k) + Du (k),

где x - вектор состояния, u - входной вектор, а y - выходной вектор.

[A,B,C,D] = ss(sysobj,'Arithmetic',arithType) анализирует объект System фильтра на основе арифметики, указанной в arithType.

Дополнительные параметры ввода см. в разделе ss в Toolbox™ обработки сигналов.

Примеры

свернуть все

Спроектируйте объект низкочастотного биквадратического фильтра четвертого порядка с нормированной частотой отсечения 0,4.

[z,p,k] = ellip(4,1,60,.4);    % Set up the filter
[s,g] = zp2sos(z,p,k);
biquad = dsp.BiquadFilter(s,g,'Structure','Direct form I')
biquad = 
  dsp.BiquadFilter with properties:

                       Structure: 'Direct form I'
                 SOSMatrixSource: 'Property'
                       SOSMatrix: [2x6 double]
                     ScaleValues: 0.0351
      NumeratorInitialConditions: 0
    DenominatorInitialConditions: 0
        OptimizeUnityScaleValues: true

  Show all properties

Преобразование разработанного фильтра в форму «state-space» с помощью ss функция.

[A,B,C,D] = ss(biquad)
A = 8×8

         0         0         0         0         0         0         0         0
    1.0000         0         0         0         0         0         0         0
    1.8116    1.0000    1.0095   -0.3954         0         0         0         0
         0         0    1.0000         0         0         0         0         0
    1.8116    1.0000    1.0095   -0.3954         0         0         0         0
         0         0         0         0    1.0000         0         0         0
    1.8116    1.0000    1.0095   -0.3954    1.1484    1.0000    0.5581   -0.7823
         0         0         0         0         0         0    1.0000         0

B = 8×1

    0.0351
         0
    0.0351
         0
    0.0351
         0
    0.0351
         0

C = 1×8

    1.8116    1.0000    1.0095   -0.3954    1.1484    1.0000    0.5581   -0.7823

D = 0.0351

Входные аргументы

свернуть все

Арифметика, используемая в анализе фильтра, указанная как 'double', 'single', или 'Fixed'. Если арифметический ввод не задан и объект «Система фильтров» разблокирован, инструмент анализа использует фильтр двойной точности. Если арифметический ввод не указан и объект System заблокирован, функция выполняет анализ на основе типа данных заблокированного ввода.

'Fixed' применяется только к фильтру системных объектов со свойствами с фиксированной точкой.

Когда 'Arithmetic' входной аргумент указан как 'Fixed' и объект фильтра имеет тип данных коэффициентов, установленный равным 'Same word length as input'арифметический анализ зависит от того, разблокирован или заблокирован объект System.

  • unlocked - функция объекта анализа не может определить тип данных коэффициентов. Функция предполагает, что тип данных коэффициентов подписан, имеет 16-битную длину слова и автоматически масштабируется. На основе этого предположения функция выполняет анализ с фиксированной точкой.

  • locked -- Если входной тип данных 'double' или 'single', функция объекта анализа не может определить тип данных коэффициентов. Функция предполагает, что тип данных коэффициентов подписан, имеет 16-битную длину слова и автоматически масштабируется. На основе этого предположения функция выполняет анализ с фиксированной точкой.

Чтобы проверить, заблокирован или разблокирован объект System, используйте isLocked функция.

Если арифметический вход указан как 'Fixed' и объект фильтра имеет тип данных коэффициентов, установленный на пользовательский числовой тип, функция объекта выполняет анализ с фиксированной точкой на основе пользовательского числового типа данных.

Выходные аргументы

свернуть все

Матрица состояний, возвращаемая как матрица N-на-N, где N - порядок фильтрации.

Типы данных: double

Входная матрица, возвращаемая в виде вектора N-by-1 столбца, указывающего, что число входов в линейную систему равно 1. N - порядок фильтрации.

Типы данных: double

Выходная матрица, возвращаемая как вектор 1-by-N строки, указывающий, что число выходов линейной системы равно 1. N - порядок фильтрации.

Типы данных: double

Матрица прохождения, возвращаемая в виде скаляра, указывающего, что количество входов и выходов линейной системы равно 1.

Типы данных: double

Представлен в R2011a