ss

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

Описание

пример

[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) анализирует Системный объект фильтра на основе арифметики, указанной в arithType.

Для получения дополнительных опций входа см. ss в Signal Processing Toolbox™.

Примеры

свернуть все

Спроектируйте lowpass биквадратичный объект фильтра четвертого порядка с нормализованной частотой среза 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

Преобразуйте проектируемый фильтр в форму пространства состояний с помощью 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'. Когда вход арифметики не задан и Системный объект фильтра разблокирован, инструмент анализа принимает фильтр двойной точности. Когда арифметический вход не задан и системный объект заблокирован, функция выполняет анализ на основе типа данных заблокированного входа.

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

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

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

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

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

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

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

свернуть все

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

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

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

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

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

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

Сквозное соединение, возвращенная как скаляр, указывает, что количество входов и выходов линейной системы равняется 1.

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

Введенный в R2011a