Цифровые модели дискретных систем
Выбери формат для чтения
Загружаем конспект в формате doc
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Лекция 21
21.1. Цифровые модели дискретных систем.
1 вид модели. Функция filt создает tf-модель в формате цифрового фильтра в виде дискретной передаточной функции, числитель и знаменатель которой являются полиномами от z-1 .Синтаксис этой функции следующий:
sys=filt(num,den,Ts)
Коэффициенты полинома числителя num и знаменателя den должны быть упорядочены в порядке возрастания степеней z-1.
Возвращаемая величина sys – передаточная функция. В качестве примера рассмотрим модель цифрового инерционного фильтра, дискретная передаточная функция которого
где
- постоянная времени и коэффициент усиления аналогового эквивалента цифрового фильтра.
T – период квантования сигнала по времени.
Пример 1. Цифровой фильтр первого порядка.
Пусть
Листинг программы
%Исходные данные
>> kn=1;T=0.7;Tn=1;d=exp(-T./Tn);k=kn.*(1-d);
% Функция filt
>> WZ=filt([0 k],[1 -d])
%Функция возвращает передаточную функцию
Transfer function:
0.5034 z^-1
---------------
1 - 0.4966 z^-1
Sampling time: unspecified
>> step(WZ)
>> impulse(WZ)
>>bode(WZ, {0.01 15})
>>nyquist(WZ, {0.01 15})
Графики функции
2. Функция zpk создает модель в виде передаточной функции по ее заданным нулям и плюсам и возвращает передаточную функцию, а функция zpkdata возвращает нули, полюсы и коэффициенты передачи. Например,
>> W=zpk([-0.5],[0.1+i 0.1-i],[2],-1)
Zero/pole/gain:
2 (z+0.5)
-------------------
(z^2 - 0.2z + 1.01)
Sampling time: unspecified
>> [z,p,k]=zpkdata(W)
z =
[-0.5000]
p =
[2x1 double]
k =
2
3. dss – модель системы в форме Коши для дискретного объекта с заданным периодом квантования сигнала по времени.
Современная теория дискретных систем РА, так же как и непрерывных, базируется на описании процессов в пространстве состояний. Познакомимся с методами математического описания в пространстве состояния систем РА с одним входом и одним выходом.
Рассмотрим системы, дискретные передаточные функции которых имеют вид
(21.1)
где - входной и выходной сигналы.
Передаточной функции (21.1) соответствует разностное уравнение
. (21.2)
В аргументах выражения (21.2) для сокращения записи множитель T опущен, также будем поступать и дальше.
Введем обозначение
(21.3)
и составим следующую систему из разностных уравнений первого порядка:
(21.4)
Неизвестные коэффициенты в системе уравнений (21.4) определяются из условия эквивалентности системы разностных уравнений (21.4) исходному разностному уравнению (21.2) и вычисляются по формулам:
(21.5)
Уравнения (21.3) и (21.4) перепишем в матричной форме:
(21.6)
, (21.7)
где
- вектор переменных состояния, размером
• матрица системы размером
• матрица управления размером
• матрица наблюдения размером
• транспонированная матрица наблюдения;
• l – порядок системы.
Выражение (21.6) называют векторным разностным уравнением системы, а выражение (21.7) – уравнением выхода.
Для пояснения физического смысла введенных переменных состояния на рис. 21.1б а изображена структурная схема, составленная по уравнениям (21.6) и (21.7), которая отличается от схемы непрерывной системы тем, что в схеме цифровой системы вместо векторного интегратора введен вектор запаздывания. На рис. 21.1,б показана структурная схема, в которой изображены все составляющие вектора состояния. Из этой схемы видно, что переменные состояния – это дискретные значения выходного сигнала в текущий момент времени и его значения в предыдущие моменты времени.
Составляющие вектора переменных состояния можно рассматривать как оси координат многомерного пространства . Стечение времени вектор состояния изменяет свое значение и положение , его конец при этом описывает в пространстве состояний некоторую кривую, называемую траекторией движения системы. Очевидно, что эта траектория зависит от начального состояния системы и входного сигнала.
Рис. 21.1. Структурная схема цифровой системы:
a – векторной форме; б- в переменных состояния
Матрица системы определяет устойчивость и другие показатели качества работы системы, матрица управления характеризует влияние на переменные состояния входного сигнала, а матрица наблюдения устанавливает связь выходного сигнала с вектором переменных состояния.
Так же как и в непрерывных системах, выбор переменных состояния в цифровых системах является неоднозначной операцией, т. е. Векторное разностное уравнение зависит от выбранных переменных состояния. Однако все возможные векторные уравнения эквивалентны, так как описывают один и тот же динамический процесс связи выходного сигнала системы с входным. Проиллюстрируем это на конкретных примерах.
Пример 2. Составить модель дискретного векторного уравнения системы первого порядка, дискретная передаточная функция которого
В командной строке записываем:
>> A=[0.4966]; B=[0.5034]; C=[1]; D=[0]; E=[1];
>> HZ=dss(A,B,C,D,E)
Выполнение программы:
a = x1
x1 0.4966
b =
u1
x1 0.5034
c =
x1
y1 1
d =
u1
y1 0
e =
x1
x1 1
Continuous-time model.
Пример 3. Найти векторное разностное уравнение и составить модель в переменных состояния для системы, дискретная передаточная функция которой
Р е ш е н и е. Данной передаточной функции соответствует разностное уравнение
Уравнения системы в пространстве состояний получаются следующими:
(21.8)
а уравнение выхода имеет вид
. (21.9)
Таким образом
Листинг . Модель системы в переменных состояния
% Исходные данные
>> A=[0 1;-0.125 0.75];B=[1;-0.125];C=[1 0;0 0];
>> D=[0;0]; E=[1 0;0 1];
%Функция, возвращающая модель уравнения системы
>> WZ=dss(A,B,C,D,E)
a =
x1 x2
x1 0 1
x2 -0.125 0.75
b =
u1
x1 1
x2 -0.125
c =
x1 x2
y1 1 0
y2 0 0
d =
u1
y1 0
y2 0
e =
x1 x2
x1 1 0
x2 0 1
Continuous-time model.
4.Модель в форме frd. Данная модель описывает систему в частотной области. Синтаксис модели frd:
sys=frd( response, frequency, T)
Пример 4 . Составить модель в форме frd системы, дискретная передаточная функция которой
.
%модель системы
>> hz=filt(1,[1 1 2],0.5);
% Диапазон частот
>> Fred=[0:2:15];
% Модель в форме frd
>> HZ=frd(hz,Fred)
Выполнение программы
Frequency(rad/s) Response
---------------- --------
0 0.2500 + 0.0000i
2 0.0934 + 0.3511i
4 -0.8142 - 0.6801i
6 0.4949 - 0.1071i
8 0.0370 + 0.8167i
10 -0.0908 - 0.4710i
12 0.2410 - 0.0894i
14 0.1831 + 0.2383i
Sampling time: 0.5
Discrete-time frequency response.
21.2. Преобразование моделей
Ранее были рассмотрены следующие модели преобразования для непрерывных систем (систем LTI):
tf – преобразует LTI – модель в tf - форму;
ss – преобразует LTI – модель в ss – форму;
zpk – преобразует LTI – модель в zpk – форму;
frd – преобразует LTI – модель в frd - форму ;
Для дискретных систем:
Функция filt создает модель в виде дискретной передаточной функции tf;
zpk – создает модель в виде дискретной передаточной функции по заданным нулям и полюсам;
dss – создает модель в форме Коши;
frd – cсоздает модель частотной характеристики.
Пакет CST создает также функцию c2d, которая преобразует непрерывную модель в дискретную и функцию d2c, преобразующую дискретную модель в непрерывную. Функция d2d изменяет интервал дискретизации в дискретной модели.
Ниже приведены примеры использования моделей преобразования.
Пример 5. Задана передаточная функция непрерывного инерционного звена.
Необходимо найти дискретную передаточную функцию дискретного инерционного звена .
В командной строке Матлаба записываем
% Модель непрерывного инерционного звена
>> W=tf(10,[0.1 1])
Transfer function:
10
---------
0.1 s + 1
%Функция преобразования с периодом дискретизации 0.05
>> WZ=c2d(W,0.05)
Transfer function:
3.935
----------
z - 0.6065
Sampling time: 0.05
%Функция преобразования с периодом дискретизации 0.1
>> WZ=c2d(W,0.1)
Transfer function:
6.321
----------
z - 0.3679
Sampling time: 0.1
>>
Пример 6. Задана передаточная функция аналогового фильтра:
Требуется найти передаточную функцию дискретного фильтра и сравнить импульсные функции аналогового и дискретного фильтров, а также сравнить их частотные характеристики.
%программа вычисления характеристик аналогового фильтра
>> W=tf([0.5 1],[0.025 0.35 1])
Transfer function:
0.5 s + 1
----------------------
0.025 s^2 + 0.35 s + 1
%характеристики аналогового фильтра
>> impulse(W)
>> bode(W,{1 100})
%программа вычисления характеристик дискретного фильтра
>> WZ=c2d(W,0.05)
Transfer function:
0.7471 z - 0.6758
----------------------
z^2 - 1.425 z + 0.4966
Sampling time: 0.05
>> impulse(WZ)
bode(WZ,{1 100 })
Выполнение программы
Характеристики аналогового фильтра
Характеристики цифрового фильтра
Пример 7.Требуется найти передаточную функцию дискретного фильтра и сравнить импульсные функции аналогового и дискретного фильтров, а также сравнить их частотные характеристики.
>> W=tf([0.5 1],[0.025 0.35 1])
Transfer function:
0.5 s + 1
----------------------
0.025 s^2 + 0.35 s + 1
>> WZ=c2d(W,0.05)
Transfer function:
0.7471 z - 0.6758
----------------------
z^2 - 1.425 z + 0.4966
Sampling time: 0.05
>> impulse(WZ)
>>bode(WZ,{1 100})
Выполнение программы
Пример Нужно спроектировать цифровой фильтр, характеристики которого эквивалентны фильтру с передаточной функцией
Составляем программу расчета дискретной передаточной функции цифрового фильтра
Листинг Программа цифрового фильтра
W1=tf([0.2 1],[0.1 1]);
W2=tf(1,[0.05 1 ]);
W=W1*W2;
%Дискретная передаточная функция
% цифрового фильтра
WZ=c2d(W,0.02)
% Вычисление полюсов цифрового
% фильтра
P=[1 -1.489 0.5488];
roots(P);
% Переходные функции фильтров
step(W,WZ);
% Частотные характеристики фильтров
bode(W,WZ),grid on;
Выполнение программы
Transfer function:
0.6265 z - 0.5667
----------------------
z^2 - 1.489 z + 0.5488
Sampling time: 0.02
21.3.Арифметические операции с моделями
Операндами при операциях с моделями являются LTI – модели. Возможны следующие операции:
+ и - - сложение и вычитание LTI – моделей (параллельное соединение),
. – умножение LTI – моделей (последовательное соединение),
\ - левое деление (sys1\sys2 ) равносильно inv((sys11)*sys2),
/ - правое деление (sye1/sys2) равносильно sys1*inv(sys2)),
^ - возведение LTI – модели в степень,
‘ – замена матрицы A(p) на матрицу [A(-p)]T, матрицы A(z) на матрицу [A(z-1)] – операция pertransposition,
.’ – транспонирование модели (замена входов на выходы и наоборот),
inv – обращение LTI – моделей.
Примеры использования моделей
Создадим одномерную модель
>> W=tf([1 0],[1 2 10])
Transfer function:
s
--------------
s^2 + 2 s + 10
>> W' %Pertransposition
Transfer function:
-s
--------------
s^2 - 2 s + 10
>> inv(W) %Invertion
Transfer function:
s^2 + 2 s + 10
--------------
s
>> W^2 %power
Transfer function:
s^2
---------------------------------
s^4 + 4 s^3 + 24 s^2 + 40 s + 100