
Лаба 1-8 Лабы и ПЗ [Вариант 1] / 1 / Моделирование линейных дискретных
.pdfМинистерство образования республики Беларусь Белорусский государственный университет информатики и радиоэлектроники
Кафедра РТС
Отчет по лабораторной работе №1
«Моделирование линейных дискретных систем в среде Matlab»
Выполнил: |
Проверил: |
Минск 2011

Цель работы:
- Исследование разностных уравнений и Z - преобразований.
-Ознакомление со средой математического проектирования Matlab.
-Моделирование линейных дискретных систем в среде Мatlab
Вариант №3:
ФВЧ КИХ-фильтр. Частота дискретизации Fs=48000 Гц. Частота среза Fc 1 5000 Гц.
Вектор воздействия:
-0.00030, 0.0013, 0.0062, 0.013, 0.016, 0.0046, -0.027, -0.08, -0.14, -0.19, 0.79, -0.19, -0.14, -0.08, -0.027, 0.0046, 0.016, 0.013, 0.0062, 0.0013, -0.00030,
1T 0 .785 , 2 T
.
Предварительное задание
1. Вычислить Z-преобразование от разностного уравнения:
y(n) |
b(0)x(n) |
b(1)x(n |
- 1) |
- a(2)y(n |
- 1) |
a(3)y(n |
- 2) |
|
|
|
|
y(z) |
b(0)x(z) |
b(1)x(z)z |
-1 |
- a(2)y(z)z |
-1 |
a(3)y(z)z |
- 2 |
|
|
|
|
2. По передаточной характеристике ЛДС H ( z ) |
b ( 0 ) b (1) z 1 |
b ( 2 ) z |
2 |
. |
|||||||
|
|
|
|
||||||||
|
a ( 2 ) z 2 |
a ( 3 ) z 3 |
|
||||||||
|
|
|
|
|
|
1 |
|
|
Записать РУ и определить ИХ h={h(0) h(1) h(2) h(3) h(4) h(5) h(6)}
y(n) = b(0)x(n) + b(1)x(n-1) +b(2)x(n-2) –a(2)y(n-2) – a(3)y(n-3)
h(0) = b(0)х(0)=b(0);
h(1) = b(1)x(0)=b(1);
h(2) = b(2)x(0) – a(2)y(0)=b(2)-a(2)b(0);
h(3) = -a(2)y(1)-a(3)y(0)= - a(2)b(1) - a(3)b(0);
h(4) = -a(2)y(2)-a(3)y(1)= - a(2)[b(2)-a(2)b(0)] – a(3)b(1)= - a(2)h(2) – b(1)a(3);
h(5) = -a(2)y(3)-a(3)y(2)= - a(2)[-a(2)b(1)-a(3)b(1)] – a(3)[b(2)-a(2)b(0)]= -a(2)h(3) - a(3)h(2); h(6) = -a(2)h(4) - a(3)h(3)
b=[0.003 0.0013 0.0062 0.013 0.0016 0.0046 -0.027 …………]; a=[-0.19 -0.14 -0.08 -0.027 0.0046];
h = 0.0030 0.0013 0.0066 0.0004 0.0010 |
0.0006 |
0.0002 |
|
|
|
|
|
|
|
|
|||
3. По передаточной характеристике |
|
b ( 0 ) |
b (1) z |
1 |
b ( 2 ) z 2 |
H 1 ( z ) |
|
|
1 |
z |
1 |
. |
|
H ( z ) |
|
|
|
|
|
H |
1 |
( z ) |
|
|
|
||
|
1 a (1) z 1 |
|
5 |
|
|
2 |
|||||||
|
|
|
a ( 5 ) z |
|
|
1 |
z |
|
Записать РУ и нарисовать структуру фильтра.

|
b ( 0 ) b (1) z |
1 |
b ( 2 ) z |
2 |
1 |
z 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
2 |
|
|
1 |
b ( 0 ) |
b ( 0 ) z |
1 |
b (1) z |
1 |
b (1) z |
3 |
b ( 2 ) z |
2 |
b ( 2 ) z |
4 |
z |
1 |
|||||||||
|
|
|
|
|
|
|
|
1 |
z |
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
H ( z ) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
1 |
|
|
5 |
|
|
|
|
|
|
|
|
2 a (1) z 1 a (1) z 3 |
|
a ( 5 ) z 5 |
|
a ( 5 ) z 7 |
|
|
|
|||||||
1 |
a (1) z |
a ( 5 ) z |
|
|
|
|
|
|
1 |
z |
|
|
|
|
|
|||||||||||||||
|
1 b ( 0 ) |
z |
1 (1 |
b (1)) |
z |
2 ( b ( 0 ) |
|
|
b ( 2 )) |
z 3 ( |
b (1)) |
b ( 2 ) z |
4 |
|
|
|
|
|
|
|
|
|||||||||
H ( z ) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
a (1) z |
1 |
z |
2 |
|
a (1) z 3 |
|
|
a ( 5 ) z |
5 |
a ( 5 ) z |
7 |
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y(n) |
(b(0) |
1)x(n) |
(1 - b(1))x(n |
- 1) |
(b(0) |
- b(2))x(n |
- 2) |
b(1)x(n |
- 3) - b(2)x(n |
- 4) - |
|||
РУ: |
- a(1)y(n |
- 1) |
- y(n - 2) - a(1)y(n |
- 3) |
a(5)y(n |
- 5) |
a(5)y(n |
- 7); |
|
|
|||
|
|
|
Синтез полученного фильтра проведен в последнем пункте работы.
4. По РУ y(n) b(0)x(n) a(2)y(n - 1) - a(3)y(n - 3) записать передаточную характеристику. Вычислить реакцию на выходе РУ с нулевыми начальными условиями на входное воздействие x(n) = 2n.
H ( z ) |
y ( z ) |
|
b ( 0 ) |
|
|
|
|
|
|
||
x ( z ) |
1 a ( 2 ) z 1 |
a ( 3 ) z 3 |
|||
|
y(0) = 0
y(1) = 2b(0)
y(2) = 4b(0) + a(2)y(1)
y(3) = 6b(0) + a(2)y(2)
y(4) = 8b(0) + a(2)y(3) – a(3)y(1)
y(5) = 10b(0) + a(2)y(4) – a(3)y(2)
Y= [0 0.0060 0.0112 0.0164 0.0222 0.0278]
Ход работы:
Расчет импульсной характеристики с помощью разностного уравнения.
Вычислим импульсную характеристику КИХфильтра:
ОБОЗНАЧЕНИЯ:
h– импульсная характеристика.
delta – единичный цифровой импульс длиной N
ТЕКСТ ПРОГРАММЫ:
b=[0.0003 0.0013 0.0062 0.013 0.0016 0.0046 -0.027 -0.08 -0.14 -0.19 0.79 -0.19 -0.14 -0.08 -0.027 0.0046 0.016 0.013 0.0062 0.0013 -0.0003]; a=[1];
N=length(b)
delta=[1;zeros(N,1)];
h=filter(b,a,delta);
stem(0:N,h) xlabel('N'); ylabel('otklik'); xlim([0 21]);

grid
0.8
0.7
0.6
otklik
0.5
0.4
0.3
0.2
0.1
0
-0.1 |
|
|
|
|
|
|
|
|
|
|
-0.20 |
2 |
4 |
6 |
8 |
10 |
12 |
14 |
16 |
18 |
20 |
|
|
|
|
|
N |
|
|
|
|
|
рис1. Импульсная характеристика КИХфильтра
Расчет импульсной характеристики по коэффициентам разностного уравнения.
ОБОЗНАЧЕНИЯ:
[h,nT]=impz(b,a,N,Fs),
где b – вектор коэффициентов в порядке их следования,
a – вектор коэффициентов в порядке их следования, a 0 1 , x – вектор входного воздействия x [ n ] ,
N – рассчитываемое количество отсчетов импульсной характеристики, Fs – частота дискретизации сигнала, Гц,
h – вектор-столбец импульсной характеристики, T – интервал дискретизации, T 1 / Fs
nT – вектор-столбец значений дискретного времени.
ТЕКСТ ПРОГРАММЫ:
b=[0.0003 0.0013 0.0062 0.013 0.0016 0.0046 -0.027 -0.08 -0.14 -0.19 0.79 -0.19 -0.14 -0.08 -0.027 0.0046 0.016 0.013 0.0062 0.0013 -0.0003]; a=[1];
N=50
Fs=48000;
[h,nT]=impz(b,a,N,Fs);
stem(nT,h) xlabel('N'); ylabel('otklik'); grid
otklik
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-0.1 |
|
|
|
|
|
|
-0.20 |
0.2 |
0.4 |
0.6 |
0.8 |
1 |
1.2 |
Рис2. импульсная характеристика по коэффициентамN разностногxо10уравнения-3
Вычисление реакции ЛДС на входное воздействие

на основе разностного уравнения
ОБОЗНАЧЕНИЯ:
filter (b,a,x),
где b – вектор коэффициентов в порядке их следования,
a – вектор коэффициентов в порядке их следования, a 0 1 . x – вектор входного воздействия .
ТЕКСТ ПРОГРАММЫ:
b=[0.0003 0.0013 0.0062 0.013 0.0016 0.0046 -0.027 -0.08 -0.14 -0.19 0.79 -0.19 -0.14 -0.08 -0.027 0.0046 0.016 0.013 0.0062 0.0013 -0.0003]; a=[1];
n=0:32;
x=sin(0.785*n)+sin(0.262*n);
y=filter(b,a,x); plot(n,x,'-or',n,y,'-ob') grid
hold on stem(n,x,'-or') stem(n,y) gtext('IN') gtext('OUT')
2 |
|
|
|
|
|
|
|
1.5 |
|
|
|
|
|
|
|
|
|
IN |
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
OUT |
|
|
|
0.5 |
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
-0.5 |
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
-1.5 |
|
|
|
|
|
|
|
-20 |
5 |
10 |
15 |
20 |
25 |
30 |
35 |
|
Рис3. . Входной (In) и выходной (Out) сигналы |
|
|
||||
|
Вычисление реакции ЛДС на основе |
|
|
||||
|
|
уравнения свертки |
|
|
|
ОБОЗНАЧЕНИЯ:

|
conv(x,h) или conv(h,n), |
где |
х – вектор отсчетов воздействия длиной k=length(x), |
|
h – вектор отсчетов импульсной характеристики длиной v=length(h). |
|
В результате вычисления функция conv возвращает вектор реакции длиной k+v-1. |
ТЕКСТ ПРОГРАММЫ:
b=[-0.00086 -0.00364 -0.0061 -0.0037 0.0064 0.02 0.027 0.018 -0.0049 -0.03 0.95 -0.03 - 0.0049 0.018 0.027 0.02 0.0064 -0.0037 -0.0061 -0.0036 -0.00086];
h=b;
n=0:32;
x=sin(0.785*n)+sin(0.262*n);
y=conv(h,x);
k=length(y); hold on plot(n,x,'-or') grid stem(n,x,'-or') nc=0:(k-1); plot(nc,y,'-ob') stem(nc,y) gtext('Out') gtext('In')
2 |
|
|
|
|
|
|
1.5 |
|
|
|
|
|
|
|
|
In |
|
|
|
|
1 |
|
|
|
|
|
|
0.5 |
|
|
|
|
Out |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
-0.5 |
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
-1.5 |
|
|
|
|
|
|
-20 |
10 |
20 |
30 |
40 |
50 |
60 |
|
Рис4. реакции ЛДС на основе уравнения свертки для КИХ-фильтра |
|
Расчет АЧХ и ФЧХ фильтра
Вычислим АЧХ и ФЧХ КИХфильтра, заданного разностным уравнением:
ТЕКСТ ПРОГРАММЫ:
b=[0.0003 0.0013 0.0062 0.013 0.0016 0.0046 -0.027 -0.08 -0.14 -0.19 0.79

-0.19 -0.14 -0.08 -0.027 0.0046 0.016 0.013 0.0062 0.0013 -0.0003]; a=[1];
N=length(b)
h=impz(b,a,N);
Ah=fft(h,N);
H=abs(Ah);
ph=angle(Ah); dl=round(N/2);% H=H(1:dl); ph=ph(1:dl); n=0:dl-1;
plot(n,H,'-or',n,ph,'-ob'); grid
4 |
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
|
|
|
-2 |
|
|
|
|
|
|
|
|
|
|
-30 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
|
|
|
Рис5. АЧХ и ФЧХ фильтра |
|
|
Работа с программой SIMULINK:
КИХ-фильтр 4-го порядка согласно варианту
|
|
|
|
|
|
|
|
|
|
|
|
Scope |
|
|
z-1 |
|
z-1 |
|
|
z-1 |
|
|
z-1 |
|
|
Discrete |
|
Integer Delay |
|
Integer Delay |
1 |
|
Integer Delay |
2 |
|
Integer Delay |
3 |
|
Impulse |
|
|
|
|
|
|
|
|
|
|
|
|
Gain |
-K- |
Gain 1 |
-K- |
Gain 2 |
-K- |
Gain 3 |
-K- |
Gain 4 |
-K- |
|||
|
|
|
|
|
Результаты моделирования:

Рис6. Диаграммы работы фильтра
Определение импульсной и частотной характеристики КИХ-фильтра 4-го порядка
Создадим другую модель согласно варианту:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-1 |
-2 |
-3 |
-4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-0.0003 +0.0013 z |
+0.0062 z |
+0.013 z |
+0.0016 z |
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Discrete |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
Scope |
||||||||||||||||||||||||||
|
Discrete Filter |
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
Impulse |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B-FFT
Spectrum
Scope 1
Результаты моделирования:
Рис7. Амплитудно-частотная характеристика

|
|
|
Рис8. Диаграммы работы фильтра |
|
|
|
|
||||||
|
|
БИХ-фильтр из предварительного задания |
|
|
|||||||||
|
|
|
|
|
согласно варианту |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
Scope |
|
|
|
|
z-1 |
|
|
|
z-1 |
|
z-1 |
z-1 |
|
|
|
|
Discrete |
|
Integer Delay |
|
Integer Delay 1 |
|
Integer Delay 2 |
Integer Delay |
|
3 |
|
|
||
Impulse |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gain |
-K- |
Gain 1 |
-K- |
|
Gain 2 |
-K- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
Gain 3 |
|
|
Gain 4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
-K - |
|
|
|
-K - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z-1 |
|
z-1 |
|
z-1 |
|
z-1 |
z-1 |
|
z-1 |
|
z-1 |
|
Integer Delay 4 |
Integer Delay 5 |
Integer Delay 6 |
Integer Delay 7 |
Integer Delay |
8 |
Integer Delay |
9 |
Integer Delay 10 |
Результаты моделирования:

Рис9. Отклик фильтра
Определение импульсной и частотной Характеристики данного БИХ-фильтра
Преобразуем модель:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-1 |
-2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-0.0003 +0.0013 z |
+0.0062 z |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-1 |
|
-2 -3 |
-4 |
|
-5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1+1z +1z |
+1z +1z +1-0.08 z |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Discrete |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
Scope |
||||||||||||||||||||||||||
|
Discrete Filter |
|
|
|
|
|
|
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
Impulse |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B-FFT
Spectrum
Scope 1
Результаты моделирования:
Рис7. Амплитудно-частотная характеристика