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

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

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
098 f(k)=(k-1)*Fd/N1; 099 s10(k)=s1(k); 100 s20(k)=s2(k); 101 end 102 subplot(3,2,3) 103 xgrid 104 xtitle('Сигнал на входе фильтра') 105 plot2d(n0,xc0,style=[color("red")]) 106 subplot(3,2,5) 107 xgrid 108 xtitle('Сигнал с помехой на входе фильтра') 109 plot2d(n0,x0) 110 subplot(3,2,4) 111 xgrid 112 xtitle('Спектр сигнала и помехи на входе фильтра') 113 plot2d3(f,abs(s10)) 114 subplot(3,2,2) 115 xgrid 116 xtitle('Сигнал на выходе фильтра') 117 plot2d(n0,y0,style=[color("red")]) 118 subplot(3,2,6) 119 plot2d3(f,abs(s20),style=[color("red4")]) 120 xgrid 121 xtitle('Спектр сигнала на выходе фильтра')
91
Приложение Г
к лабораторной работе №4 Программа синтеза и моделирования режекторного фильтра при действии на его входе последовательности прямоугольных импульсов и синусоидальной помехи
001 // Программа "Режекторный фильтр3" Моделирование 002 // цифрового /режекторного фильтра при действии на его 003 // входе сигнала в виде последовательности прямоугольных 004 // импульсов и синусоидальной помехи
005 Fd=30; //Частота дискретизации 006 fc=1.0;//Частота сигнала 007 fp=5;//Частота помехи 008 f0=5; //Частота режекции 009 Xc=1;//Максимальный уровень импульса сигнала 010 Xp=10;//Амплитуда помехи 011 Pr=0.18//Полоса режекции 012 kp=5//Коэффициент прямоугольности 013 nmax=200; 014 // 015 Se=sqrt(kp^2-1);//Селективность фильтра 016 d=Pr*kp/Fd; 017 a=%pi*d; 018 A2=(1-a*sqrt(1+a^2/4)+a^2/2)^2; 019 M=(1+A2)/2;//Масштабный коэффициент 020 B1=-2*cos(2*%pi*f0/Fd);//Коэффициент системной функции 021 A1=-(1+A2)*cos(2*%pi*f0/Fd); //Коэффициент системной
функции 022 //Расчет АЧХ режекторного фильтра
023 j=sqrt(-1); 024 delta_f=0.01; 025 N=round(0.5*Fd/delta_f); 026 f=zeros(1:N); 027 H=zeros(1:N); 028 K=zeros(1:N); 029 xdel; 030 for m=1:N 031 f(m)=delta_f*(m-1); 032 z(m)=exp(j*2*%pi*f(m)/Fd); 033 H(m)=M*(1+B1*z(m)^(-1)+z(m)^(-2))/(1+A1*z(m)^(-
1)+A2*z(m)^(-2)); 034 end 035 K=abs(H); 036 subplot(3,2,1) 037 xgrid 038 xtitle('АЧХ режекторного фильтра') 039 plot2d(f,K,style=[color("blue")]) 040 //Формирование сигнала с помехой на входе резонатора 041 n=zeros(1:nmax+1); 042 y=zeros(1:nmax+1); 043 xc=zeros(1:nmax+1); 044 xc0=zeros(1:nmax+1); 045 xp=zeros(1:nmax+1);
92
046 x=zeros(1:nmax+1); 047 s1=zeros(1:nmax+1); 048 s2=zeros(1:nmax+1); 049 for i=1:nmax+1 050 n(i)=i-1; 051 xc0(i)=cos(2*%pi*fc*i/Fd); 052 if xc0(i)<0 then 053 xc(i)=-Xc; 054 else 055 xc(i)=Xc; 056 end 057 xp(i)=Xp*cos(2*%pi*fp*i/Fd); //Помеха 058 x(i)=xc(i)+xp(i); //Сигнал с помехой 059 end 060 //Определение выходного сигнала фильтра 061 u(1)=M*x(1); 062 y(1)=u(1); 063 u(2)=M*x(2)-A1*u(1); 064 y(2)=u(2)+B1*u(1); 065 for i=3:nmax+1 066 u(i)=M*x(i)-A1*u(i-1)-A2*u(i-2); 067 y(i)=u(i)+B1*u(i-1)+u(i-2); 068 end; 069 N1=Fd/fc; 070 x1=zeros(1:N1); 071 y1=zeros(1:N1); 072 for m=1:N1 073 x1(m)=x(nmax-N1+m); 074 y1(m)=y(nmax-N1+m); 075 end 076 for k=1:N1 077 alfa1=0; 078 alfa2=0; 079 for n=1:N1 080 alfa1=alfa1+x1(n)*exp(-2*j*%pi*(n-1)*(k-1)/N1); 081 alfa2=alfa2+y1(n)*exp(-2*j*%pi*(n-1)*(k-1)/N1); 082 end 083 s1(k)=alfa1*2/N1; 084 s2(k)=alfa2*2/N1; 085 end 086 N0=round(5*Fd/fc); 087 n0=zeros(1:N0); 088 xc0=zeros(1:N0); 089 xp0=zeros(1:N0); 090 x0=zeros(1:N0); 091 y0=zeros(1:N0); 092 for m=1:N0 093 n0(m)=nmax-N0+m; 094 xc0(m)=xc(nmax-N0+m); 095 xp0(m)=xp(nmax-N0+m); 096 x0(m)=x(nmax-N0+m); 097 y0(m)=y(nmax-N0+m);
93
098 end 099 kmax=N1/2; 100 s10=zeros(1:kmax); 101 s20=zeros(1:kmax); 102 f=zeros(1:kmax); 103 for k=1:kmax+1 104 f(k)=(k-1)*Fd/N1; 105 s10(k)=s1(k); 106 s20(k)=s2(k); 107 end 108 subplot(3,2,3) 109 xgrid 110 xtitle('Сигнал на входе фильтра') 111 plot2d(n0,xc0,style=[color("red")]) 112 subplot(3,2,5) 113 xgrid 114 xtitle('Сигнал с помехой на входе фильтра') 115 plot2d(n0,x0) 116 subplot(3,2,4) 117 xgrid 118 xtitle('Спектр сигнала и помехи на входе фильтра') 119 plot2d3(f,abs(s10)) 120 subplot(3,2,2) 121 xgrid 122 xtitle('Сигнал на выходе фильтра') 123 plot2d(n0,y0,style=[color("red")]) 124 subplot(3,2,6) 125 plot2d3(f,abs(s20),style=[color("red4")]) 126 xgrid 127 xtitle('Спектр сигнала на выходе фильтра')
94
Работа №5
.
P2
A
fN
Бригада
Значения параметров
nmax
P A Q
Исследование цифровых генераторов
1. Цель работы
1. Ознакомление с алгоритмами функционирования генераторов пилообразных, прямо-
угольных, треугольных, трапецеидальных и синусоидальных колебаний.
2. Овладение методикой моделирования цифровых генераторов на ЭВМ.
2. Литература
1. Приложение А к лабораторной работе №4
2. Конспект лекций по курсу «Цифровая обработка сигналов»
3. В.Г.Иванова, А.И. Тяжев. Цифровая обработка сигналов и сигнальные процессоры //
Самара, 2008, c.89-93
3. Подготовка к лабораторной работе
Изучите указанную в разделе II литературу и ответьте на контрольные вопросы.
4. Контрольные вопросы
1. Поясните с помощью временных диаграмм принцип формирования пилообразных,
прямоугольных, треугольных и трапецеидальных колебаний.
2. От чего зависит частота пилообразных колебаний?
3. Поясните алгоритм формирования прямоугольных колебаний из пилообразны. Каков
способ изменения скважности последовательности прямоугольных импульсов?
4. Поясните с помощью временных диаграмм формирование трапецеидального колеба-
ния.
5. Поясните с помощью временных диаграмм способ формирования квадратурных ко-
лебаний косинусно-синусного генератора.
6. Как влияет степень аппроксимирующего полинома на чистоту спектра колебаний ко-
синусно-синусного генератора?
6. Почему используется гнездовая скобочная форма записи аппроксимирующего поли-
нома?
5. Содержание работы
1. Сформируйте nmax отсчетов пилообразного колебания, значения которых изменяются
в интервале от –P до +P с нормированной частотой
Значения nmax, P и A приведены в таблице 1. Повторите эксперимент при параметре А пилообразного колебания в 2 раза меньшем по
сравнению с указанным в таблице.
Таблица 1 Исходные данные для выполнения п.1 и п.2
95
№1
250
1.00
1/30
2.5
№2
240
1.20
1/25
3.0
№3
290
1.50
1/20
3.5
№4
300
2.00
1/15
4.0
№5
300
0.75
1/40
4.5
№6
280
3.00
1/10
5.0
).Q/21(*P0c
Определите спектр пилообразного колебания с нулевой по пятую гармонику включи-
тельно.
2. Выполните моделирование генератора прямоугольных однополярных положительных
и двухполярных импульсов на основе генератора пилообразных колебаний с параметрами,
приведёнными в таблице 1 . Двухполярные импульсы должны иметь одинаковые абсолют­ные значения положительных и отрицательных отсчетов. Эксперимент выполнить при двух
значениях скважности импульсов Q = 2 и Q, приведённым в таблице 1.
Рассчитайте значение константы c0, обеспечивающей требуемую скважность импульсов,
по формуле
Для всех указанных вариантов определите амплитудный спектр импульсной последова-
тельности с нулевой по пятую гармонику включительно.
3. Выполните моделирование генератора треугольных колебаний. Данные для модели-
рования возьмите из таблицы 1.
Определите амплитудный спектр этого колебания с нулевой по пятую гармонику вклю-
чительно.
4. Выполните моделирование генератора трапецеидальных колебаний, воспользовав-
шись значениями параметров из таблицы 1 и установив параметр, определяющий крутизну скатов трапеции, равным B=3.
Повторите эксперимент при B=10.
Определите амплитудный спектр колебания в первом и во втором случае с нулевой по
пятую гармонику включительно..
5. Выполните моделирование косинусно-синусного генератора с полиномиальной ап-
проксимацией отсчетов выходных колебаний при использовании полиномов 3-го и 5-го по-
рядков. Данные для моделирования возьмите из таблицы 1. Определите амплитудный спектр
генерируемых колебаний с нулевой по пятую гармонику включительно.
6. Содержание отчета
Отчет должен содержать:
1. Временные диаграммы генерируемых колебаний
2. Табличное представление амплитудных спектров генерируемых колебаний.
3. Выводы по каждому пункту работы.
7. Методические указания по выполнению работы
Лабораторная работа выполняется в программной среде SCILAB. Откройте программу
scilab - 5.5.2. Появится командное окно приложения. Окно содержит меню, панель инстру- ментов и рабочую область. Признаком того, что система готова к выполнению команды, яв-
ляется наличие знака приглашения (горизонтальной стрелки), после которого расположен
мигающий курсор.
96
Щелчком левой кнопки мыши откройте Инструменты → Текстовый редактор SciNotes. Появится окно для редактирования. Из редактора откройте файл Generator1 (File-Open -…­ЦОС в Scilab – Generator1). Текст программы приведён в Приложении Б.
Из редактора откройте файл “Generator1”. Появится текст программы.
В строках 3-12 вводятся данные для моделирования генераторов.
В строках 18-29 задаётся функция прямого дискретного преобразования Фурье.
В строках 31-46 формируется пилообразное колебание и его временная диаграмма.
Затем создаётся массив отсчетов пилообразного колебания zs, содержащий количество элементов i0, равное количеству отсчетов пилы в её периоде, и методом дискретного преоб­разования Фурье находится массив отсчётов спектра пилы в относительном масштабе Spz0 (49-57). Строится график спектра (строки 58-63).
Строки 64-71 формируют массив отсчётов относительных гармоник (с нулевой по пя­тую) пилообразного колебания в процентах AmpZ .
В строках 75-85 моделируется последовательность прямоугольных импульсов I и выво­дится график этой последовательности.
В строках 88-97 сначала формируется массив Is, содержащий i0 отсчётов прямоугольно-
го колебания, а затем методом дискретного преобразования Фурье находится его спектр в
относительном масштабе SI0 и выводится его график.
Строки 98-105 формируют массив отсчётов относительных гармоник (с нулевой по пя­тую) прямоугольного колебания в процентах AmpI .
В строках 108-117 моделируется треугольное колебание, выводится его график и созда­ётся массив, содержащий i0 отсчётов этого колебания Ts , а в строках 118-131 находится спектр в относительном масштабе STo, выводится спектральная диаграмма и формируется массив отсчетов спектра в процентах AmpT.
Результатом работы программы являются временные и спектральные диаграммы, по-
добные приведённым на рисунке 1.
Рисунок 1 - Временные и спектральные диаграммы пилообразного, прямоугольного и треугольного колебаний
97
Вид колебания
и его параметры
Номер гармоники
0 1 2 3 4
5
Пилообразное
Прямоугольное
Q=2, I1=1, I2=-1
Прямоугольное Q=2, I1=1, I2=0
Прямоугольное
Q= , I1=1, I2=0
Треугольное
1. Сформируйте пилообразное, прямоугольное и треугольное колебания. Для этого вве- дите в программу значения констант P и A и максимального номера отсчёта nmax из таблицы 1, I1=1, I2=-1. Рассчитайте значение константы C0 при Q=2 и введите в программу.
Запустите программу и пронаблюдайте временные и спектральные диаграммы сформи-
рованных колебаний.
В командном окне «scilab-5.5.2» введите AmpZ и нажмите клавишу Enter. Появится мас-
сив отсчётов спектра пилообразного колебания в процентах, начиная с нулевого и кончая пя-
тым отсчетом. Занесите их в таблицу 2.
Введите в командном окне AmpI и нажмите клавишу Enter.
Появившийся массив отсчетов спектра последовательности прямоугольных импульсов
занесите в таблицу 2.
Введите в командном окне AmpT и нажмите клавишу Enter. Полученные данные внеси-
те в таблицу 2.
Аналогичным образом заполните остальные строки таблицы.
Таблица 2
Значения спектральных составляющих пилообразного,
прямоугольных и треугольного колебаний в %
Повторите эксперимент с уменьшенным в два раза значением константы A. Пронаблю-
дайте временные и спектральные диаграммы.
Запишите в отчёт выводы о влиянии
константы A на частоту сформированных колебаний, константы P на размах и частоту сформированных колебаний, константы C0 на скважность последовательности прямоугольных импульсов и её
Исследование генератора трапецеидальных колебаний и косинусно-синусного генератора выполняется по программе «Generator2». Текст программы приведён в Приложении В к ла­бораторной работе №5.
спектр.
98
В командах 3-7 осуществляется ввод исходных данных для моделирования генераторов. Команды 9-20 формируют функцию прямого дискретного преобразования Фурье dpf(x0,kmax,Nmax),используемую для опреде-
ления спектра колебаний. Затем последовательно задаются функции реализации пилообраз-
ных колебаний pila(A,P,zN,nmax) и pilas(A,P,zN,nmax), сдвинутых друг относительно друга на четверть периода, и функции полиномиальных преобразований Y3= polinom3(T) и Y5= polinom5(T), преобразующие треугольное колебание в синусоидальное.
В строках 60-75 формируется трапецеидальное колебание и выводится его временная диаграмма, а в строках 77-97 рассчитывается его спектр. Сформированный массив AmpTp задаёт относительный уровень гармоник трапецеидального колебания в процентах.
Команды 101-107 моделируют и выдают в виде графиков два пилообразных колебания,
сдвинутых друг относительно друга на четверть периода. Из них получаются два треуголь-
ных колебания (строки 109-115), из которых, в свою очередь, формируются синусоида и ко­синусоида и выдаются их временные и спектральные диаграммы (118-174).
Массивы Amp3 и Amp5 задают относительный уровень гармоник синусоидального ко­лебания при использовании полиномов третьей и пятой степени соответственно.
Для формирования трапецеидального и синусоидальных колебаний введите значения P, А, nmax из таблицы 1 и задайте B = 3. Запустите программу.
Результатом её выполнения будут временные и спектральные диаграммы, подобные приведённым на рисунке 5.
В командном окне «scilab-5.5.2» введите AmpTp и нажмите клавишу Enter. Появится
массив отсчётов спектра в процентах, начиная с нулевого и кончая пятым. Занесите их в
первую строку таблицы 3.
Повторите эксперимент при B=10, результаты внесите в таблицу 3.
Запишите в отчет вывод о влиянии константы В на форму и спектральный состав трапе-
циедального колебания.
Рисунок 2 - Временные и спектральные диаграммы трапецеидального и синусоидальных ко-
лебаний
99
Вид колебания
и его параметры
Номер гармоники
0 1 2 3 4
5
Трапециедальное
B=3
Трапециедальное
B=10
Синусоидальное
Полином 3 порядка
Синусоидальное
Полином 5 порядка
и синусоидальных колебаний в %
В окне «scilab-5.5.2» введите Amp3 и нажмите клавишу Enter. Появится массив отсчётов
спектра в процентах, начиная с нулевого и кончая пятым. Занесите их в таблицу 3.
Повторите эксперимент, используя Amp5.
Сформулируйте и укажите в отчёте преимущество и недостаток использования полино­ма пятой степени по сравнению с полиномом третьей степени при формировании синусои-
дальных колебаний.
Таблица 3
Значения спектральных составляющих трапециедальных
100
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]