Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Цифровая обработка сигналов. Методическая разработка к лабораторным занятиям для студентов-бакалавров дневного и заочного обучения

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Приложение А
ДД
Д
ДД
z((n 1)T ) A при z((n 1)T ) A P,
z(nT )
z((n 1)T ) A 2P при z((n 1)T ) A P.
n 1 n 1
n
n 1 n 1
zA при z A P,
z
z A 2P при z A P.


T
- P
z(nTД)
P
A
T
д
nT
Д
2P A
ДД
2P A
T T , F F .
A 2P

AP
1 n 0
n
2 n 0
I при z C ,
I
I при z C .
к лабораторной работе №5 Цифровые генераторы
1. Генераторы пилообразных, прямоугольных, треугольных и трапецеидальных колебаний
На рисунке П.1 точками показаны отсчеты пилообразного колебания, которое при A>0 формируется следующим образом:
Записанное соотношение справедливо в дискретные моменты времени. Если рассматри­вать не дискретные моменты времени, а порядковые номера отсчетов, то это соотношение
можно записать так
лов дискретизации, следовательно, период T и частота F пилообразного колебания равны
ность прямоугольных импульсов I с периодом, равным периоду пилы, длительностью , максимальным уровнем I1, минимальным уровнем I2
Рисунок П.1 – Пилообразное колебание
Из рисунка видно, что в периоде пилообразного колебания содержится
Частота пилы прямо пропорциональна частоте дискретизации и отношению констант
.
Рисунок П.2 показывает, как из пилообразного колебания z получается последователь-
интерва-
101
I
I
I
1
I
2
t
z
P
C
0
-P
t
T
0
PC
.
T 2 P
0
C
T
1.
2P

 
 
.
P
C
1
2T
Q
0
.
Q
2
1PC
0
 
 
Y z P 2.
Рисунок П.2 – Формирование последовательности
прямоугольных импульсов из пилообразного колебания
Из подобия заштрихованного треугольника и треугольника - положительного полупери­ода пилы следует что
Откуда длительность импульса равна
ностью импульсной последовательности
скважность импульсов
щим соотношением
Таким образом, изменяя константу С
Отношение периода следования импульсов к длительности импульса назывется скваж-
Из последнего соотношения определяется константа C
Из пилы формируется треугольное колебание (рисунок П.3) в соответствии со следую-
, можно регулировать длительность импульса.
0
, обеспечивающая требуемую
0
102
Y
P/2
0
-P/2
t
z -P/2
P
t
z
P
0
-P
t
z
nn
pn n
n
BY при P BY P,
TPпри BY P,
P при BY P,
 

 
 
Рисунок П.3 – Формирование треугольных колебаний
Это двухполярное треугольное колебание может быть использовано в качестве грубой аппроксимации синусоиды. Степень соответствия его синусоиде можно оценить по уровню
высших гармоник. Оно содержит только нечетные гармоники, причем коэффициент третьей
гармоники равен к
Из треугольного колебания формируется трапецеидальное колебание (рисунок П.4) со-
гласно соотношению
где B > 2.
При B = 3 трапеция является хорошей аппроксимацией синусоиды: коэффициент треть-
ей гармоники равен нулю, коэффициент пятой гармоники к
= 10%, а коэффициент пятой гармоники к
Г3
= 4%.
Г5
= 4%.
Г5
103
Tp
P
0
- P
BY
Y
P/2
0
-P/2
t
t
cn cn
sn
cn cn
z 0.5 при z 0.5 1,
z
z 1.5 при z 0.5 1.
Рисунок П.4 – Формирование трапецеидального колебания
2. Косинусно-синусные генераторы
2.1 Косинусно-синусный генератор с полиномиальной аппроксимацией отсчетов выходных колебаний
Для формирования двух квадратурных компоненет на выходе генератора используются два пилообразных колебания, сдвинутых друг относительно друга на четверть периода (ри­сунок П.5). Исходным является одно из пилообразных колебаний (в рассматриваемом случае
zc). Второе получается из него следующим образом
104
0. -
Ys= z
s
-0.5
0
-0.5
-1
0
1
0.5
C
0
0
Yc = 0.5- z
c
t
-0.5
-1
1
0.5
t
z
c
1
-1
t
z
s
1
S
cn cn sn sn
Y 0.5 z , Y z 0.5.
2
F(Y) 4Y(D Y ),
22
1 3 5
F(Y) 4Y(D 4Y (D D Y )),
Рисунок П.5 – Формирование косинусной и синусной компонент из двух пилообразных колебаний
Из двух пилообразных колебаний формируются два треугольных описанным выше спо-
собом
Для формирования из треугольных колебаний синусоидальных используется функцио-
нальное преобразование F(Y), представляющее собой полином третьей или пятой степени:
где D = 0.70738,
где D1= 0.745966, D3 = - 0.305500, D5 = 0.138149.
Генерируемые колебания определяются по приведенным соотношениям
105
n c n n s n
C F(Y ), S F(Y ).
При использовании полинома третьей степени коэффициент третьей гармоники равен к
= 0.5%, коэффициент пятой гармоники к
Г3
При использовании полинома пятой степени к
= 0.1%.
Г5
=0.005%, кГ5 = 0.005%.
Г3
Для дальнейшего уменьшения коэффициентов гармоник используются полиномы более
высокого порядка [3].
106
Приложение Б к лабораторной работе №5 Моделирование и исследование генераторов пилообразных, прямоугольных и треугольных колебаний
001 // Программа "Generator1"-Моделирование генераторов 002 // пилообразных, прямоугольных и треугольных колебаний 003 A=2/30; // Константа, определяющая частоту пилы 004 P=1; // Константа, определяющая размах пилообразного 005 // колебания 006 C0=0; // Константа, определяющая скважность 007 // прямоугольных импульсов 008 I1=1; // Максимальное значение отсчёта прямоугольного 009 // колебания 010 I2=0; // Минимальное значение отсчёта прямоугольного 011 // колебания 012 nmax=250; // Максимальный номер отсчёта 013 // 014 // Расчёт констант 015 fN= Aскатов/(2*P); // Нормированная частота колебаний 016 Q=2/(1-C0/P); // Cкважность последовательности 017 // прямоугольных импульсов 018 // Задание функции прямого дпф 001 function sp=dpf(x0, kmax, Nmax) 002 sp=zeros(1:kmax); 003 for k=1:kmax 004 alfa=0; 005 for n=1:Nmax 006 alfa=alfa+x0(n)*exp(-2*%pi*%i*(n-1)*(k-1)/Nmax); 007 end 008 sp(k)=alfa/Nmax; 009 end 010 endfunction; 029 // 030 //Формирование пилообразного колебания 031 z=zeros(1:nmax); 032 zN=0; 033 z(1)=zN; 034 for n=2:nmax, 035 if z(n-1)+A>=P 036 z(n)=z(n-1)+A-2*P; 037 else 038 z(n)=z(n-1)+A; 039 end 040 end; 041 clf() 042 subplot(3,2,1) 043 n=[1:nmax]; 044 plot2d3(n,z,style=[color("green")]) 045 xgrid 046 xtitle('Пилообразное колебание') 047 //
107
048 // Определение спектра пилообразного колебания 049 i0=ceil(2*P/abs(A)); 050 zs=zeros(1:i0); 051 Spz=zeros(1:6); 052 Spzo=zeros(1:6); 053 for i=1:i0 054 zs(i)=z(i+i0); 055 end 056 Spz=dpf(zs,6,i0); 057 Spzo=abs(Spz)/max(abs(Spz)); 058 subplot(3,2,2) 059 i=[1:6]; 060 k=i-1; 061 plot2d3(k,Spzo,style=[color("green")]) 062 xgrid 063 xtitle('Спектр пилообразного колебания') 064 AmpZ=zeros(1:6); 065 for m=1:6 066 if Spzo(m)<0.00001 then 067 AmpZ(m)=0; 068 else 069 AmpZ(m)=Spzo(m)*100; 070 end 071 end
072 // 073 //Формирование последовательности прямоугольных
074 //импульсов 075 I=zeros(1:nmax); 076 for n=1:nmax 077 if z(n)<C0 then I(n)=I2; 078 else I(n)=I1; 079 end 080 end; 081 n=[1:nmax]; 082 subplot(3,2,3) 083 plot2d3(n,I,style=[color("blue")]) 084 xgrid 085 xtitle('Последовательность прямоугольных импульсов')
086 // Определение спектра последовательности 087 //прямоугольных импульсов
088 Is=zeros(1:i0); 089 for i=1:i0 090 Is(i)=I(i+i0); 091 end 092 SI=dpf(Is,6,i0); 093 SIo=abs(SI)/max(abs(SI)); 094 subplot(3,2,4) 095 plot2d3(k,SIo,style=[color("blue")]) 096 xgrid 097 xtitle('Спектр прямоугольных импульсов') 098 AmpI=zeros(1:6); 099 for m=1:6
108
100 if SIo(m)<0.00001 then 101 AmpI(m)=0; 102 else 103 AmpI(m)=SIo(m)*100; 104 end 105 end
106 // 107 // Формирование треугольных колебаний
108 T=abs(z)-P/2; 109 subplot(3,2,5) 110 plot2d3(n,T,style=[color("red")]) 111 xgrid 112 xtitle('Треугольное колебание') 113 //Определение спектра треугольного колебания 114 Ts=zeros(1:i0); 115 for i=1:i0 116 Ts(i)=T(i+i0); 117 end 118 ST=dpf(Ts,6,i0); 119 STo=abs(ST)/max(abs(ST)); 120 subplot(3,2,6) 121 plot2d3(k,STo,style=[color("red")]) 122 xgrid 122 xtitle('Спектр треугольного колебания') 124 AmpT=zeros(1:6); 125 for m=1:6 126 if STo(m)<0.00001 then 127 AmpT(m)=0; 128 else 129 AmpT(m)=STo(m)*100; 130 end 131 end
109
к лабораторной работе №5
Моделирование и исследование генераторов трапецеидальных
и синусоидальных колебаний
001 // Программа "Generator2"-Моделирование генераторов 002 / /трапецеидальных и синусоидальных колебаний
003 A=1/30; // Константа, определяющая частоту пилы 004 P=3; // Константа, определяющая размах пилообразного 005 // колебания 006 B=3; //Константа, определяющая крутизну скатов трапеции 007 nmax=550; //Максимальный номер отсчёта
008 // 009 //Задание функции прямого дпф
001 function sp=dpf(x0, kmax, Nmax) 002 sp=zeros(1:kmax); 003 for k=1:kmax 004 alfa=0; 005 for n=1:Nmax 006 alfa=alfa+x0(n)*exp(-2*%pi*%i*(n-1)*(k-1)/Nmax); 007 end 008 sp(k)=alfa/Nmax; 009 end 010 endfunction; 020 // 021 //Функции формирования пилообразных колебаний 001 function z=pila(A, P, zN, nmax) 002 z(1)=zN; 003 for n=2:nmax, 004 if z(n-1)+A>=P 005 z(n)=z(n-1)+A-2*P; 006 else 007 z(n)=z(n-1)+A; 008 end 009 end; 010 endfunction; 001 function z0=pilaS(A, P, zN, nmax) 002 z=pila(A,P,zN,nmax) 003 for n=1:nmax 004 if z(n)+P/2>=P 005 z0(n)=z(n)+P/2-2*P; 006 else 007 z0(n)=z(n)+(P/2); 008 end 009 end 010 endfunction; 042 //Функции полиномиальных преобразований 001 function Y3=polinom3(T) 002 D=0.707380; 003 Y3=zeros(1:nmax) 004 for n=1:nmax
Приложение В
110
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]