DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

РОЗРАХУНОК ТА РЕАЛІЗАЦІЯ РЕКУРСИВНИХ ТА НЕРЕКУРСИВНИХ ЦИФРОВИХ ФІЛЬТРІВ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра захисту інформації

Інформація про роботу

Рік:
2012
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інші

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра «Захисту інформації»  Звіт Про виконання лабораторної роботи №5,6 На тему: «РОЗРАХУНОК ТА РЕАЛІЗАЦІЯ РЕКУРСИВНИХ ТА НЕРЕКУРСИВНИХ ЦИФРОВИХ ФІЛЬТРІВ» Варіант №4 Львів-2010 Мета роботи – отримати навики розрахунку параметрів і характеристик рекурсивних цифрових фільтрів, а також навчитися застосовувати засоби програмного пакету Simulink MatLab для їх реалізації та дослідження. Завдання 1 1.Ознайомитись із теоретичними відомостями. 2.Розрахувати мінімально необхідний порядок РЦФ для забезпечення поставлених у таблиці 1 вимог. Таблиця 1 № Тип фільтру Fс, Гц Rp, дБ n, порядок  1. ФВЧ Чебишева 1-ого роду 700 3.0 6   Лістинг програми 1-го завдання %Вхідні параметри фільтра Fc=[700]; % частота зрізу (для СФ і ЗФ i PZ відповідно нижня та верхня) wc=[2*pi*Fc]; n=6; % порядок фільтра Rp=3; % рівень пульсації АЧХ у смузі пропускання %Коеф. АФ [bs,as] = cheby1(n,Rp,wc,'s'); %'s' для АФ %Графіки w=logspace(1,4); % вектор частот у логарифм. масштабі Hs=freqs(bs,as,w); % ПФ Ms=abs(Hs); As=angle(Hs); subplot(2,1,1); loglog(w/(2*pi),Ms); grid; axis([20 2000 10^-5 2 ]); subplot(2,1,2); semilogx(w/(2*pi),As);grid;axis([20 2000 -pi pi ]); % Перехід до цифрового прототипу Fs=2000; % частота вибірок Fp=450; % збіжність до тієї частоти [bd,ad]=bilinear(bs,as,Fs,Fp); figure(2); freqz(bd,ad); %Графіки АЧХ і ФЧХ ЦФ % Безпосереднє обчислення коеф. ПФ РЦФ [bz,az] = cheby1(n, Rp, 2*Fc/Fs ); figure(3); freqz(bz,az); % Альтернативнивне проектування РЦФ методом "yulewolk" F=[0 0.3 0.3 0.6 0.6 1]; M=[0 0 1 1 0 0]; [by,ay]=yulewalk(2*n,F,M); [Hy,fy]=freqz(by,ay,32); N=2^5; f=0:1/32:1000; H=freqz(bz,az,f,Fs); figure(4); plot(F,M,fy/pi,abs(Hy),2*f/Fs,abs(H)); S=21; T=0.2;N=2^12;Ts=T/N; t=0:Ts:T; % вектор часу A=1; fo=100; w=2*pi*fo; % параметри сигналу x=A*diric(w*t,S); X=fft(x); df=1/T; Fmax=1/Ts; F=-Fmax/2:df:Fmax/2; cx=fftshift(X); Cx=abs(cx)*Ts/T; figure(6), subplot(2,1,1); plot(t(N/2-500:N/2+500),x(N/2-500:N/2+500)) grid,set(gca,'FontName','Ariel','FontSize',11) title('Sygnal Dirichlet n') xlabel('Time (s)'),ylabel('Signal X(t)') subplot(2,1,2); stem(F(N/2-500:N/2+500),Cx(N/2-500:N/2+500)),grid,set(gca,'FontName','Ariel','FontSize',11) %axis([-(S+5)*fo/2 (S+5)*fo/2+1 0 2/S]), title('Spectr Dirichlet n') xlabel('Frequency (Hz)'),ylabel('Modul') y=filter(bz,az,x); Y=fft(y); df=1/T; Fmax=1/Ts; F=-Fmax/2:df:Fmax/2; cy=fftshift(Y); Cy=abs(cy)*Ts/T; figure(7), subplot(2,1,1); plot(t(N/2-500:N/2+500),y(N/2-500:N/2+500)) grid,set(gca,'FontName','Ariel','FontSize',11) title('Sygnal Dirichlet n') xlabel('Time (s)'),ylabel('Signal X(t)') subplot(2,1,2); stem(F(N/2-500:N/2+500),Cy(N/2-500:N/2+500)),grid,set(gca,'FontName','Ariel','FontSize',11) %axis([-(S+5)*fo/2 (S+5)*fo/2+1 0 2/S]), title('Spectr Dirichlet n') xlabel('Frequency (Hz)'),ylabel('Modul') Результати роботи програми       Завдання 2 1.Ознайомитись із теоретичними відомостями. 2. Розрахувати перші 5 коефіцієнтів нерекурсивного фільтра згідно заданого варіанту (таблиця 2) без накладання вікна. Таблиця 2 № Тип фільтру Fс, Гц n, порядок  1. ФВЧ Чебишева 1-ого роду 700 25   Лістинг програми 2-го завдання %Вхідні параметри НЦФ n=25;N=2^10; Fs=2000;Fq=Fs/2; Fcl=100;Fch=900; Fc=[Fcl/Fq Fch/Fq]; Fc=700; Fcn=Fc/Fq; Wc=Fc*pi; df=1; f=0:df:Fq; Hid=rectpuls(f-Fc/2,Fc); %АЧХ ідеального фільтра hio=fft(Hid); % Імпульсна характеристика ідеального фільтра dt=1/Fq; Tm=1/df; t=-Tm/2:dt:Tm/2; hiz=fftshift(hio)*df/Fq; %Комплексний спектр hid=abs(hiz); %Амплітудний спектр тобто імпульсна характеристика ідеального фільтра Win=dt*n; %Ширина прямокутного вікна hrz=hiz.*rectpuls(t,Win);%Імпульсна характеристика реального фільтра h=abs(hrz(Fq/2-(n-1)/2:Fq/2+(n-1)/2)) Hrz=ifft(hrz); % ПФ реального НЦФ Hrz=abs(Hrz); figure(1), subplot(3,1,1), plot(f,Hid), grid, subplot(3,1,2), stem(t+dt*(n-1)/2, abs(hrz)), grid, axis([-5/Fq 1.25*(n-1)/Fq -0.05 0.5]), subplot(3,1,3), plot(f,Hrz), grid, %Проектування за допомогою функції fir1 з використанням вікон h1=fir1(n,Fcn,boxcar(n+1)); % b=fir1(n,Wn,’ftype’, window); figure(2), H1=freqz(h1,1,f,Fs); M1=abs(H1); A1=angle(H1); A1=unwrap(A1); subplot(2,1,1); loglog(f,M1),grid, plot(f,M1),grid, title('АЧХ') xlabel('Frequency, [Hz]') ylabel('Modul') subplot(2,1,2); semilogx(f,A1),grid, plot(f,A1),grid, xlabel(' Frequency, [Hz]') ylabel('Faza,[Rad]') % Example of a length 31 lowpass filter. h2=firls(n,f,a) h2=firls(n,[0 .1 .2 .5]*2,[1 1 0 0]); figure(3), H2=freqz(h2,1,f,Fs); M2=abs(H2); A2=angle(H2); A2=unwrap(A2); subplot(2,1,1); loglog(f,M2),grid, plot(f,M2),grid, title('АЧХ') xlabel('Frequency, [Hz]') ylabel('Modul') subplot(2,1,2); semilogx(f,A2),grid, plot(f,A2),grid, xlabel(' Frequency, [Hz]') ylabel('Faza,[Rad]') figure(4), freqz(h1,1,f,Fs); figure(5), freqz(h2,1,f,Fs); Результати роботи програми      Висновок Виконавши дану лабораторну роботу я, отримав навики розрахунку параметрів і характеристик рекурсивних цифрових фільтрів, а також навчитися застосовувати засоби програмного пакету MatLab для їх реалізації та дослідження. Також встановив, що при практичній реалізації цифрових фільтрів неминуче виникає необхідність заокруглення їх вагових коефіцієнтів і вибірок вхідного сигналу. Внаслідок заокруглення характеристики фільтрів зазнають спотворень, значення яких залежить не тільки від похибки представлення, але і від параметрів фільтра і способу його реалізації. При використанні цифрових сигнальних процесорів це пов’язано з підтримуваними форматами представлення чисел, при створенні програм обробки сигналів для ПК – з прагненням підвищити швидкодію. В нерекурсивних фільтрах вагові коефіцієнти збігаються із відліками імпульсної характеристики і лінійно пов’язані з комплексним коефіцієнтом передачі. Тому малі спотворення коефіцієнтів приводять до малих спотворень частотних характеристик і внесені заокруглення проявляються незначно.
Антиботан аватар за замовчуванням

08.09.2012 17:59

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!