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

  • Вид работы:
    Контрольная работа
  • Предмет:
    Информатика, ВТ, телекоммуникации
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,15 Мб
  • Опубликовано:
    2012-09-18
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Задание

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

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

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

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

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

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

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.0100

0.25

0.809097 (а02-а03)

0.1100

0.75

0.503807 (б01)

0.1000

0.5

0.586409 (б02)

0.1001

0.5625

0.0673772 (б03)

0.0001

0.0625




0.349231 (а11,а13)

0.0101

0.3125

0.698462 (а12)

0.1011

0.6875

0.275919 (б11)

0.0100

0.25

0.121006 (б12)

0.0001

0.0625


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


разряда

Десятичная с.с.Двоичная с.с.Десятичная с.с.



0.269699 (а01,а04)

0.01000101

0.26953125

0.809097 (а02-а03)

0.11001111

0.80859375

0.503807 (б01)

0.10000000

0.586409 (б02)

0.10010110

0.5859375

0.0673772 (б03)

0.00010001

0.06640625




0.349231 (а11,а13)

0.01011001

0.34765625

0.698462 (а12)

0.10110010

0.6953125

0.275919 (б11)

0.01000110

0.2734375

0.121006 (б12)

0.00011110

0.1171875


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


разряда

Десятичная с.с.

Двоичная с.с.

Десятичная с.с.

0.269699 (а01,а04)

0.0100010100001010

0.269683837890625

0.809097 (а02-а03)

0.1100111100100000

0.80908203125

0.503807 (б01)

0.1000000011111001

0.503799438476563

0.586409 (б02)

0.1001011000011110

0.586395263671875

0.0673772 (б03)

0.0001000100111111

0.0673675537109375




0.349231 (а11,а13)

0.0101100101100111

0.349227905273438

0.698462 (а12)

0.1011001011001110

0.698455810546875

0.275919 (б11)

0.0100011010100010

0.275909423828125

0.121006 (б12)

0.0001111011111010

0.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;

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> - Проектирование цифровых фильтров.


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!