ss

Преобразуйте цифровой фильтр в представление пространства состояний

Синтаксис

[A,B,C,D] = ss(d)

Описание

пример

[A,B,C,D] = ss(d) преобразовывает цифровой фильтр, d, к его представлению пространства состояний.

Представлением пространства состояний фильтра дают

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

где x является вектором состояния, u является входным вектором, и y является выходным вектором.

Примеры

свернуть все

Разработайте lowpass БИХ-фильтр порядка 6. Задайте нормированную частоту полосы пропускания 0.2π рад/выборка. Вычислите представление пространства состояний фильтра.

d = designfilt('lowpassiir','FilterOrder',6,'PassbandFrequency',0.2);
[A,B,C,D] = ss(d)
A = 6×6

    1.5640   -0.9294         0         0         0         0
    1.0000         0         0         0         0         0
    0.1795    0.0036    1.6097   -0.8112         0         0
         0         0    1.0000         0         0         0
    0.0020    0.0000    0.0408    0.0021    1.6956   -0.7409
         0         0         0         0    1.0000         0

B = 6×1

    0.0913
         0
    0.0046
         0
    0.0001
         0

C = 1×6

    0.0020    0.0000    0.0408    0.0021    3.6956    0.2591

D = 5.2030e-05

Входные параметры

свернуть все

Цифровой фильтр, заданный как объект digitalFilter. Используйте designfilt, чтобы сгенерировать цифровой фильтр на основе спецификаций частотной характеристики.

Пример: d = designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5) задает третий порядок Фильтр Баттерворта с нормированной частотой на 3 дБ 0.5π рад/выборка.

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

свернуть все

Матрица состояния, возвращенная как матрица.

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

Матрица входа к состоянию, возвращенная как матрица.

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

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

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

Проходная матрица, возвращенная как матрица.

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

Смотрите также

| | |

Введенный в R2014a