Моделирование цифрового фильтра верхних частот

 

Задание


. Спроектировать цифровой фильтр с заданными характеристиками.

(определить коэффициенты, передаточную функцию и т.д.)

. Построить АЧХ и ФЧХ цифрового фильтра.

. Выбрать структуру цифрового фильтра, его параметры (разрядность регистров памяти, АЛУ и др.) и оценить влияние ошибок округления коэффициентов.

. Разработать программную или аппаратную реализацию спроектированного фильтра. Провести его тестирование.

. Сделать выводы по работе.


8 кГц, 4 кГц, =19 кГц


=-33дБ.

Расчеты


) =2*=2*19=38000 Гц

=2*pi*/=6.28*8000/38000=1,322105

=2*pi*/=6.28*4000/38000=0,661053

) С==0,777793

== 0,777793 /0,343113=2,266871


Найдём n по формуле 10Lg(1+)>=33дБ

,543>33при n=5

) Фильтр Баттерворта 5-го порядка обеспечивает требуемое ослабление в полосе затухания. Определим передаточную функцию K(z) цифрового фильтра:

(p)=1/Bn(p), где Bn(p)-полином степени n. Для n=5(p)=


Используем билинейное преобразование p=

(p)=,(z)=


Делаем соответствующие математические преобразования в Maple 11 и получаем:

(z)= ((0.269699-0.809097*z^(-1)+0.809097*z^(-2)-0.269699*z^(-3))/(z^3-0.503807*z^2+0.586409*z-0.0673772))*((0.349231*(z-1)^2)/(z^2-0.275919*z

+0.121006))(z)=


4) Построение АЧХ исходной схемы ЦФВЧ.



) Выбор величины разрядной сетки, для хранения весовых коэффициентов.

разряда

Десятичная с.с.Двоичная с.с.Десятичная с.с.0.269699 (а01,а04)0.01000.250.809097 (а02-а03)0.11000.750.503807 (б01)0.10000.50.586409 (б02)0.10010.56250.0673772 (б03)0.00010.06250.349231 (а11,а13)0.01010.31250.698462 (а12)0.10110.68750.275919 (б11)0.01000.250.121006 (б12)0.00010.0625

АЧХ схемы с 4 разрядами.


разряда

Десятичная с.с.Двоичная с.с.Десятичная с.с.0.269699 (а01,а04)0.010001010.269531250.809097 (а02-а03)0.110011110.808593750.503807 (б01)0.100000000.50.586409 (б02)0.100101100.58593750.0673772 (б03)0.000100010.066406250.349231 (а11,а13)0.010110010.347656250.698462 (а12)0.101100100.69531250.275919 (б11)0.010001100.27343750.121006 (б12)0.000111100.1171875

АЧХ схемы с 8 разрядами.


разряда

Десятичная с.с.Двоичная с.с.Десятичная с.с.0.269699 (а01,а04)0.01000101000010100.2696838378906250.809097 (а02-а03)0.11001111001000000.809082031250.503807 (б01)0.10000000111110010.5037994384765630.586409 (б02)0.10010110000111100.5863952636718750.0673772 (б03)0.00010001001111110.06736755371093750.349231 (а11,а13)0.01011001011001110.3492279052734380.698462 (а12)0.10110010110011100.6984558105468750.275919 (б11)0.01000110101000100.2759094238281250.121006 (б12)0.00011110111110100.121002197265625

АЧХ схемы с 16 разрядами.


АЧХ исходной схемы и схем 4, 8, 16.


) Разница между АЧХ исходной схемы и АЧХ схемы с 4 разрядами.


Разница в полосе пропускания 5,598-2.996=2,602

Разница в полосе затухания 37,153-35,520=1,633

Разница между АЧХ исходной схемы и АЧХ схемы с 8 разрядами.



Разница в полосе пропускания 3,072-2.996=0.076

Разница в полосе затухания 35,611-35.520=0.091

Разница между АЧХ исходной схемы и АЧХ схемы с 16 разрядами.



Разница в полосе пропускания 2.996-2.996=0

Разница в полосе затухания 35.520-35.518=0.002


Разница между АЧХ исходной схемы и АЧХ схем 4,8,16 разрядами.


Для того чтобы фильтр удовлетворял заданию, нужно чтобы он отвечал следующим условиям:

в полосе пропускания не будет отличаться от нормального значения 3 дБ не более чем на 0,01 дБ.

в полосе затухания будет не менее заданного значения -33дБ.

Как видно из графиков наиболее подходящее значение разрядной сетки равно 16 разрядов.

) Структурная схема реализации фильтра.


Коэффициенты0.269699 (а01,а04)0.809097 (а02-а03)0.503807 (б01)0.586409 (б02)0.0673772 (б03)0.349231 (а11,а13)0.698462 (а12)0.275919 (б11)0.121006 (б12)

Каноническая форма реализации фильтра:



Вывод


В данном курсовом проекте требовалось построить аналоговый ВЧ-фильтр и путём билинейного Z-преобразования перевести его в цифровую форму. Расчёт показал, что для удовлетворения требований задания необходимо и достаточно применить фильтр Баттерворта 5 порядка. Для цифровой реализации фильтра потребовалось осуществить выбор разрядной сетки для хранения коэффициентов передаточной функции. При 16-и разрядах отклонения укладываются в отведённый диапазон (как видно по графику).

8) Программная реализация цифрового фильтра верхних частот.

Программа выполняет моделирование работы цифрового фильтра высоких частот 6 порядка. По результатам обработки выводятся графики входного аналогового сигнала и выходного цифрового сигнала, полученного в соответствии с заданием на проектирование цифрового фильтра.


Пример работы программы представлен ниже:



Filter1;

Forms,

UFilterOne in 'UFilterOne.pas' {Form1},

UGenerator in 'UGenerator.pas',

{$R *.res}

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run;.UFilterOne;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ExtCtrls, TeeProcs, TeEngine, Chart, Buttons, StdCtrls,, Spin, Ugenerator, Series,Math;

TForm1 = class(TForm)

Button1: TButton;

BitBtn1: TBitBtn;

Label2: TLabel;

SpinEdit3: TSpinEdit;

Label7: TLabel;

Memo2: TMemo;

Label8: TLabel;

Chart1: TChart;

Series1: TLineSeries;

Series2: TLineSeries;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

Form1: TForm1;

{$R *.dfm}TForm1.Button1Click(Sender: TObject);a,c:real;: tGen;,j:integer;: Tfilter;,y,y1,h: real;: Comp;:=38;:=StrToInt(SpinEdit3.text);:=tgen.Init1(c,a);:=Tfilter.Init2;.Series[0].Clear;.Series[1].Clear;i:=0 to 200 do begin.Series[0].AddXY(k.getTime(i),k.getValue(i));.Series[1].AddXY(k.getTime(i),F1.getValueP(k.getValue(i)));;i:=1 to 380 do beginx<=k.getValue(i) then:=k.getValue(i);:=f1.getValueP(k.getValue(i));i>20 theny1<=y then:=y;:=20*log10(abs(y1/x));.Lines.Add(FloatToStr(res));;;.UGenerator;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ExtCtrls, TeeProcs, TeEngine, Chart, Buttons, StdCtrls,, Spin, Math;

TGen = class (TObject)

Fample: real; {Амплитуда}

FVhod: real; {Частота входного сигнала}

Fdec: real; {Частота дескретизации}

Constructor Init1(aVhod,adec: real);

Function getValue(ax: integer): real;

Function getTime(ax: integer): real;;

TFilter = class (Tobject)

a01, a02, a03, b01, b02: Real;

a11, a12, a13, b11, b12: Real;

a21, a22, a23, b21, b22: Real;,e02,e03,e04,e05,e06,e07,e08,e09,e10,,e12,e13,e14,e15,e16,e17,e18,e19,e20,,e22,e23,e24,e25,e26,e27,x1, x2,y1,y2: real;

Constructor Init2;

Function getValueP(aX: Real) :Real;;TFilter.Init2;

begin

Inherited Create;:=0.562495; a02:=-0.562495; b01:=-0.12499;:=0.47947; a12:=-2*0.47947; a13:=0.47947; b11:=0.378817; b12:=-0.539061;:=0.349231; a22:=-2*0.349231; a23:=0.349231; b21:=0.275919; b22:=-0.121006;:=0;e02:=0;e03:=0;e04:=0;e05:=0;e06:=0;e07:=0;e08:=0;e09:=0;e10:=0;e11:=0;:=0;e13:=0;e14:=0;e15:=0; x1:=0; x2:=0;y1:=0;y2:=0;

end;TGen.Init1(aVhod,adec: real);

begin

inherited Create;

Fample:=1;

Fvhod:=aVhod;

Fdec:=adec;

end;TGen.getValue(aX: Integer): Real;

begin

Result := fAmple * sin(2*Pi * (Fvhod*1000) * getTime(aX));

end;TGen.getTime(aX: Integer): Real;

begin

Result := ax/(fdec*1000);

end;TFilter.getValueP(aX: Real): Real;

begin

x2:=x1;

x1:=ax;

y1:=a01*x1+a02*x2-b01*y1;:=e02;

e06:=e03*a13;

e02:=e01;

e05:=e02*a12;

e01:=y1;

e04:=e01*a11;

e09:=e08;

e11:=e09*b12;

e08:=e07;

e10:=e08*b11;

e07:=e04+e05+e06+e10+e11;:=e09*a23;

e13:=e08*a22;

e12:=e07*a21;

e17:=e16;

e19:=e17*b22;

e16:=e15;

e18:=e15*b21;

e15:=e12+e13+e14+e18+e19;:=e15; ; .

Вывод:

В данной программе был реализован цифровой фильтр верхних частот, в начале временного отчета была произведении задержка на 20 временных единиц, чтобы не попасть в зону переходных процессов, при расчете ослабления.


Список литературы


1 Пронин А.С. Лекции - Спецпроцессоры в цифровой обработке и передаче информации .

Витязев В.В. - Цифровая частотная селекция сигналов. Радио и связь. 1993г.

3 <http://model.exponenta.ru> - Проектирование цифровых фильтров.


Задание . Спроектировать цифровой фильтр с заданными характеристиками. (определить коэффициенты, передаточную функцию и т.д.) . Построить АЧХ и ФЧХ

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ