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