17519

Діагностика роботи цифрових фільтрів. Шляхом аналізу їх амплітудно-частотної характеристики

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторна робота №3 На тему: Діагностика роботи цифрових фільтрів. Шляхом аналізу їх амплітудночастотної характеристики Мета роботи Дослідити і проаналізувати параметри амплітудночастотної характеристики та вплив віконної обробки при спектральному аналі

Украинкский

2013-07-01

222 KB

28 чел.

Лабораторна робота №3

На тему: «Діагностика роботи цифрових фільтрів. Шляхом аналізу їх амплітудно-частотної характеристики»

Мета роботи

Дослідити і проаналізувати параметри амплітудно-частотної характеристики та вплив віконної обробки при спектральному аналізі сигналів.

Теоретичні відомості

Для адекватного відтворення вхідного сигналу, що використовується в системах обробки, які розв’язують задачі спектрального аналізу сигналів, опис вхідного діагностичного сигналу представляється у формалізованому вигляді. Зазначені задачі розв’язуються цифровими методами, на основі швидких дискретних ортогональних перетворень, що представляються узагальненим класом швидких перетворень Фур'є з різними системами базисних функцій. Дані перетворення відносяться до класу лінійних ортогональних перетворень, зв'язаних з обчисленням виразів виду

,

де Х = [Х(0), Х(1), ... , Х(L-1)]Т , х = [х(0), х(1), ... , х(L-1)]Т  - вектори, відповідно, вихідних гармонік і початкових відліків, А - відтворююча  ортогональна матриця розміром L x L, L- кількість початкових відліків.

Системи, які реалізують ці алгоритми відносяться до стаціонарних систем з частотним коефіцієнтом передачі K(j):

де h(t) - імпульсна характеристика, що має таку інтерпретацію: якщо на вхід системи поступає гармонійний сигнал з відомою частотою і комплексною амплітудою , то комплексна  амплітуда вихідного сигналу  буде рівною: 

                                                                                                                   (1)

Представлення частотного коефіцієнта передачі (див. формулу 1) в показниковій формі має вигляд :

,

де - амплітудно-частотна характеристика (АЧХ).

Оскільки для фільтрів з скінченою імпульсною характеристикою АЧХ є однією з визначальних характеристик, на основі її аналізу визначається достовірність побудови фільтра. Розглянемо варіант перевірки фільтра методом аналізу його АЧХ на прикладі системи опрацювання інформації когерентно-імпульсної РЛС з n каналами погоджених фільтрів. Для процесора, що виконує N-точкове амплітудне дискретне перетворення Фур’є згідно з формулою (2)

,                              (2)

де N визначає розмір перетворення, n-номер елемента віддалі, l – номер гармоніки, i-номер періоду повторення в межах інтервалу обчислення ДПФ,  W(i) вагова функція, вхідний сигнал  представимо у вигляді:

,      (3)

де А - амплітуда сигналу, S - кількість частотних діапазонів між сусідніми l, Q – визначає смугу перевірки АЧХ (, де m, p - кількість гармонік, в діапазоні яких (відносно l) перевіряється АЧХ, , , si – біжуче значення частотного діапазону між сусідніми l).

Процедура діагностики відбувається таким чином. Для процесора задається значення гармоніки lj. На його інформаційні входи поступає вхідний сигнал . Зміна значень (синфазна і квадратурна складові) на вході процесора відбувається на кожному періоді повторення (по і). Одне значення визначається сумуванням по і (див.формулу 2). Після того змінюється частота поступлення , зміна задається значенням , і вираховується наступне значення .

Повна АЧХ, для заданого lj, отримується після поступлення на вхід S*N значень вхідного сигналу. На практиці обмежуються перевіркою АЧХ для 3l, відносно lj. Після перевірки амплітудно-частотних характеристик для всіх гармонік і елементів віддалі процес діагностики завершується. В ідеальному випадку характеристики всіх АЧХ повинні бути ідентичними. 

Тобто, при використанні такого підходу процес перевірки розбивається на три етапи:

- задання значень для отримання  числової послідовності вхідних сигналів;

визначення значень  Y(n,l)   реальної АЧХ;

порівняння значень  ідеальної і реальної АЧХ в кожній точці виміру.

Застосування підходу дозволяє:

- виявити помилки в роботі з точністю до функціонального вузла, наприклад помилки в заданні вагової функції, при сумуванні, в ОЗП проміжних результатів, при пересиланні інформації  між процесорами, конструктивні та технологічні помилки при проектуванні цифрових вузлів і т.п.;

- проводити діагностику в режимі реального часу;

- перевірити правильність функціювання і рівень шумів зовнішніх пристроїв, наприклад, приймача проміжної частоти;

- оцінити вплив різних типів вагових функцій на значення вихідного сигналу;

- перевірити в РРЧ значення інформації, що поступає на вхід системи опрацювання шляхом її запису в ОЗП;

- перевірити точностні параметри роботи процесорів;

- перевірити реакцію фільтра на поступлення збійної інформації.

Найвживаніші вагові функції, що використовуються при обробці наведені в таблиці 1.

         Таблиця 1

Номер функції

Назва

Тип функції

Діапазон зміни n

1

Рімана

–N/2 n N/2 – 1

2

Валле-Пусена

0  n  N/4

N/4  n  N/2

3

Тюкі

0  n  a N/2

a N/2  n  N/2

  1.  a = 0,25
    1.  a = 0,5
    2.  a = 0,75

4

Бомана

0  n  N/2

5

Пуасона

0  n  N/2

5-1         a = 2,0

5-2         a = 3,0

5-3         a = 4,0

6

Хеннінга-Пуасона

0  n  N/2

6-1         a = 0,5

6-2         a = 1,0

6-3         a = 2,0

7

Коші

0  n  N/2

7-1         a = 3,0

7-2         a = 4,0

7-3         a = 5,0

8

Трикутне

0  n  N/2

9

Ханна

(косинус квадрат)

0  n  N/2

10

Геммінга

0  n  N/2

а = 0,54

11

Блекмана

0  n  N/2

12

Гауса

0  n  N/2

а = 2,5

13

Cosa

0  n  N/2

13-1         a = 1,0

13-2         a = 3,0

13-3         a = 4,0

14

Рісса

0  n  N/2

15

w(n) = 0.25 + 0,75 cos [ (n-16)/32]

16

w(n)  = 0.4  + 0,6  cos [(n-15,5)/31].

Примітка: Значення w(n) таблиці 1 відповідає значенню W(i) (див. формулу 2).

Алгоритм формування вхідних даних для формування АЧХ полягають у видачі на кожному етапі обчислень синусоїдальної і косинусоїдальної складової комплексного сигналу, фаза яких відрізняється на значення Q на двох сусідніх періодах,  на кожному з яких обчислюється одне значення  U (i)

Завдання

Проаналізувати амплітудно-частотну характеристику фільтру з такими параметрами сигналу:

№ вар

N

l

Sm

Sp

S

A

№ вагової функції

5

16

4

-16

16

8

5

13-2

Виконання:

  1.  Згідно поданих вище формул при заданих значення параметрів вхідного сигналу та цифрового фільтру, що тестується будуємо масиви значень синусів та косинусів за таким алгоритмом:

for(i = 0; i < N; i++)

{

 sin0[i] = sin(2*pi*i/N);

 cos0[i] = cos(2*pi*i/N);

}

for(i = 0; i < SN; i++)

{

 sin1[i] = sin(2*pi*i/SN);

 cos1[i] = cos(2*pi*i/SN);

}

, де N – розмір перетворення, а SN – добуток N та S .

  1.  Далі обчислюється значення дійсної та уявної частини, що утворилися як результат добутку та  представлених у тригонометричній формі. Значення синусів та косинусів вибираємо із масивів отриманих на попередньому етапі.:

 for(i = 0; i < N; i++)

 {

  a = (abs(S*l+Qmin)*i)%SN;

  b = l*i%N;

  Re += A*cos1[a]*cos0[b] + A*sin1[a]*sin0[b];

  Im += A*cos1[a]*sin0[b] - A*sin1[a]*cos0[b];

 }

  1.  Обчислюємо значення координати Y для відображення результату:

Y[j] = sqrt(pow(Re, 2) + pow(Im, 2));

  1.  Повний лістинг програми подано у Додатку.

Методика проведення дослідження

  1.  При запуску програми з’являється головне вікно (див. рис.1):

Рис.1. Головне вікно програми

  1.  На рис.1. наведені основні формули, що використовується при проведенні аналізу та поля, в яких можна задати параметри сигналу та фільтру, що досліджується. Змінювати дані параметри можна натискаючи мишкою на стрілки, що містяться біля кожного поля праворуч.
  2.  Для перегляду результату у графічному представленні натисніть клавішу «Графік».

Рис.2. Графік АЧХ

  1.  Для отримання табличного представлення результату натисніть клавішу «Таблиця». Фрагмент значень АЧХ наведений в таблиці на рис.3.

Рис.3. Значення АЧХ  (фрагмент)

 

  1.  Код програми:

#include <vcl.h>

#include <math.h>

#pragma hdrstop

USERES("Project1.res");

USEFORM("Unit1.cpp", Form1);

USEFORM("Unit2.cpp", Graph); /* TFrame: File Type */

USEFORM("Unit3.cpp", Form3);

USEFORM("Unit4.cpp", Form4);

//---------------------------------------------------------------------------

WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)

{

       try

       {

                Application->Initialize();

                Application->Title = "CMP";

                Application->CreateForm(__classid(TForm1), &Form1);

                Application->CreateForm(__classid(TForm4), &Form4);

                Application->CreateForm(__classid(TGraph), &Graph);

                Application->CreateForm(__classid(TForm3), &Form3);

                Application->Run();

       }

       catch (Exception &exception)

       {

                Application->ShowException(&exception);

       }

       return 0;

}

       double Y[1024];

       double sin0[32];

       double sin1[512];

       double cos0[32];

       double cos1[512];

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

#include "Unit3.h"

#include "Unit4.h"

#pragma package(smart_init)

#pragma link "Unit2"

#pragma resource "*.dfm"

void Apply(void);

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

void __fastcall TForm1::Button3Click(TObject *Sender)

{

Apply();

Form3->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn1Click(TObject *Sender)

{

Form1->Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

Apply();

Form4->Show();

Form4->StringGrid1->Cells[0][0]="X";

Form4->StringGrid1->Cells[1][0]="Y";

}

//---------------------------------------------------------------------------

void __fastcall TForm1::QpChange(TObject *Sender)

{

char buf[5];

       if(Qp->Text.ToInt()<= Qm->Text.ToInt())

             Qp->Text=itoa((Qm->Text.ToInt()+1),buf,10);

             Form4->StringGrid1->RowCount=abs(Qm->Text.ToInt())+abs(Qp->Text.ToInt());

       

}

//---------------------------------------------------------------------------

void __fastcall TForm1::QmChange(TObject *Sender)

{

char buf[5];

       if(Qp->Text.ToInt()<= Qm->Text.ToInt())

             Qm->Text=itoa((Qp->Text.ToInt()-1),buf,10);

             Form4->StringGrid1->RowCount=abs(Qm->Text.ToInt())+abs(Qp->Text.ToInt());

}

void Apply(void)

{

       int N = Form1->Edit2->Text.ToInt();

       int S = Form1->Edit4->Text.ToInt();

       int SN = (S*N);

       int l = Form1->Edit3->Text.ToInt();

       int A = Form1->Edit1->Text.ToInt();

       int Qmin = Form1->Qm->Text.ToInt();

       int Qmax = Form1->Qp->Text.ToInt();

//**************************************

       char buf[55];

       char *buf_ptr;

int j = 0;

int i;

double pi = 3.141592653589793;

double Re = 0;

double Im = 0;

int a;

int b;

//****************************************

       Form3->Series1->Clear();

for(i = 0; i < N; i++)

{

 sin0[i] = sin(2*pi*i/N);

 cos0[i] = cos(2*pi*i/N);

}

for(i = 0; i < SN; i++)

{

 sin1[i] = sin(2*pi*i/SN);

 cos1[i] = cos(2*pi*i/SN);

}

do

{

 for(i = 0; i < N; i++)

 {

  a = (abs(S*l+Qmin)*i)%SN;

  b = l*i%N;

  Re += A*cos1[a]*cos0[b] + A*sin1[a]*sin0[b];

  Im += A*cos1[a]*sin0[b] - A*sin1[a]*cos0[b];

 }

 Y[j] = sqrt(pow(Re, 2) + pow(Im, 2));

 Re = Im = 0;

               buf[0] = ' ';

               itoa(Qmin, buf+1, 10);

               buf[strlen(buf) + 1]='\0';

               buf[strlen(buf)]=' ';

               Form3->Series1->AddXY(j, Y[j], (itoa(Qmin, buf+1, 10)-1), clBlue);

               Form4->StringGrid1->Cells[1][j+1]=Y[j];

               Form4->StringGrid1->Cells[0][j+1]=Qmin;

               j++;

}

while(Qmin++ < Qmax);

}

Висновок: Після виконання даної лабораторної роботи вдалося дослідити і проаналізувати параметри АЧХ та вплив віконної обробки при спектральному аналізі.


 

А также другие работы, которые могут Вас заинтересовать

30613. А. П. Чехов о журналистском творчетсве 28.87 KB
  Чехов о журналистском творчетсве.Первые опыты литературного творчества Чехова в юмористическом духе относятся к гимназическим годам. Чехов в воспоминаниях комунибудь подражая или когонибудь представляя.Так еще в гимназические годы проявляется у Чехова тяга к юмору и желание установить связь с юмористическими журналами.
30614. Сергей Довлатов: ремесло и творчество 44 KB
  Произведения Довлатовапрозаика не издавались в СССР. В Америке проза Довлатова получила широкое признание публиковалась в известнейших американских газетах и журналах. Через пять дней после смерти Довлатова в России была сдана в набор его книга Заповедник ставшая первым значительным произведения писателя изданным на родине.Основные произведения Довлатова: Зона 1964–1982 Невидимая книга 1978 Соло на ундервуде: Записные книжки 1980 Компромисс 1981 Заповедник 1983 Наши 1983 Марш одиноких 1985 Ремесло 1985 Чемодан...
30615. З. Фрейд: бессознательное и творчество 38 KB
  Если председатель палаты депутатов в первых же своих словах закрывает заседание вместо того чтобы его открыть мы склонны считать это ошибочное действие не лишенным смысла. Особый вид сна – сны наяву является сырым материалом для поэтического творчества потому что сны наяву поэт использует в своих новеллах романах пьесах. Гёте на вопрос когда и где появляется национальный классический писатель он отвечает: Когда в образе мысли своих соотечественников он не видит недостатка в величии равно как и в...
30616. Понятие творчества в философии С.Н.Булгакова («Свет невечерний») 37.5 KB
  ТВОРЧЕСТВО Главное: Бог – творец. И творчество его возможность заложено богом. От них можно либо уйти в ленность либо их испытывать постоянно либо прийти к смирению перед богом и все творчество сделать религиозным. Чел – существо двуполое и творчество тоже двуполое Оно есть скрещение двух начал гениальности и талантливости.
30618. Суть художественного тв-ва В. Кандинского (по книге «Духовное в искусстве») 76 KB
  Действие цвета. Скольжение нашего взора по покрытой красками палитре приводит к двум главным результатам: осуществляется чиста физическое воздействие цвета когда глаз очарован его красотой и другими его свойствами. При низкой душевной восприимчивости цвет может вызвать лишь поверхностное действие которое исчезает вскоре после того как прекратилось раздражение. Глаз становитсябеспокойным не выдерживает долго вида этого цвета и ищет углубления и покоя всинем или зеленом.
30619. Архитип и символ в творческой деятельности по Ницше «О музыке и слове» 30 KB
  Архитип и символ в творческой деятельности по Ницше О музыке и слове ФРИДРИХ НИЦШЕ предлагает поставить язык и соответственно слово в категорию физической символики. В разных языках слово и предмет не совпадают вполне = слово есть символ. Слово символизирует представления. Так происходит потому что слово символ не может соответствовать той внутренней сущности отражением которой являемся мы сами вместе с миром.
30620. Структура худ.творчества 43 KB
  ОТ ФАКТА К ДОКУМЕНТАЛЬНОМУ ОБРАЗУ В ХУДОЖЕСТВЕННОПУБЛИЦИСТИЧЕСКИХ ЖАНРАХ обозрение очерк фельетон памфлет Этой группе публицистики свойственны образность типизация насыщенность литературнохудожественными изобразительными средствами сплав понятия и образа. В основе художественнопублицистических жанров лежат документальные факты но определяющим становится авторское впечатление от факта авторская мысль. Типизация используется в художественнопублицистических жанрах с целью выявления типических черт характеристик и свойств...
30621. Мыслительная и творческая деятельность журналиста 28.5 KB
  Мыслительная и творческая деятельность журналиста Проблемная ситуация воспроизводится человеком как некая задача требующая решения. Всякую умственную деятельность можно назвать творческой. Творческая деятельность – та которая дает новый общественно значимый материал. С этой точки зрения журналистика может быть творческой мыслительной деятельностью.