Преобразуйте параметры передаточной функции фильтра в форму пространства состояний
Считайте систему описанной передаточной функцией
Преобразуйте его в форму пространства состояний с помощью tf2ss
.
b = [0 2 3; 1 2 1]; a = [1 0.4 1]; [A,B,C,D] = tf2ss(b,a)
A = 2×2
-0.4000 -1.0000
1.0000 0
B = 2×1
1
0
C = 2×2
2.0000 3.0000
1.6000 0
D = 2×1
0
1
Одномерное дискретное время колеблющаяся система состоит из модульной массы, , присоединенный к стене к пружине модуля эластичная константа. Датчик производит ускорение, , из массы в Гц.
Сгенерируйте в 50 раз выборки. Задайте интервал выборки .
Fs = 5; dt = 1/Fs; N = 50; t = dt*(0:N-1); u = [1 zeros(1,N-1)];
Передаточная функция системы имеет аналитическое выражение:
.
Система взволнована с модульным импульсом в положительном направлении. Вычислите эволюцию времени системы с помощью передаточной функции. Постройте ответ.
bf = [1 -(1+cos(dt)) cos(dt)]; af = [1 -2*cos(dt) 1]; yf = filter(bf,af,u); stem(t,yf,'o') xlabel('t')
Найдите представление пространства состояний системы. Вычислите эволюцию времени, начинающую со все-нулевого начального состояния. Сравните его с предсказанием передаточной функции.
[A,B,C,D] = tf2ss(bf,af); x = [0;0]; for k = 1:N y(k) = C*x + D*u(k); x = A*x + B*u(k); end hold on stem(t,y,'*') hold off legend('tf','ss')
b
— Коэффициенты числителя передаточной функцииКоэффициенты числителя передаточной функции в виде вектора или матрицы. Если b
матрица, затем каждая строка b
соответствует выходу системы.
Для систем дискретного времени, b
содержит коэффициенты в убывающих степенях z.
Для систем непрерывного времени, b
содержит коэффициенты в убывающих степенях s.
Для систем дискретного времени, b
должен иметь много столбцов, равных длине a
. Если числа отличаются, заставьте их равняться путем дополнения нулей. Можно использовать функцию eqtflength
выполнять это.
a
— Коэффициенты знаменателя передаточной функцииКоэффициенты знаменателя передаточной функции в виде вектора.
Для систем дискретного времени, a
содержит коэффициенты в убывающих степенях z.
Для систем непрерывного времени, a
содержит коэффициенты в убывающих степенях s.
A
— Матрица состоянияМатрица состояния, возвращенная как матрица. Если система описана переменными состояния n, то A
n-by-n.
Типы данных: single
| double
B
— Матрица входа к состояниюМатрица входа к состоянию, возвращенная как матрица. Если система описана переменными состояния n, то B
n-by-1.
Типы данных: single
| double
C
— Состояние к выходной матрицеСостояние к выходной матрице, возвращенное как матрица. Если система имеет q выходные параметры и описана переменными состояния n, то C
q-by-n.
Типы данных: single
| double
D
— Проходная матрицаПроходная матрица, возвращенная как матрица. Если система имеет q выходные параметры, то D
q-by-1.
Типы данных: single
| double
tf2ss
преобразует параметры представления передаточной функции данной системы к тем из эквивалентного представления пространства состояний.
Для систем дискретного времени матрицы пространства состояний связывают вектор состояния x, вход u и выход y:
Передаточной функцией является Z-преобразование импульсной характеристики системы. Это может быть описано в терминах матриц пространства состояний как
Для систем непрерывного времени матрицы пространства состояний связывают вектор состояния x, вход u и выход y:
Передаточной функцией является Преобразование Лапласа импульсной характеристики системы. Это может быть описано в терминах матриц пространства состояний как
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.