PROJEKTOWANIA FILTRÓW CYFROWYCH PRZY WYKORZYSTANIU MATLAB-SIMULINK (DSP BLOCKSET).

Podobne dokumenty
Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

Projektowanie i implementacja filtru FIR

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 3

ANALIZA SYGNAŁÓ W JEDNÓWYMIARÓWYCH

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Ćwiczenie 0 : Wprowadzenie do cyfrowego przetwarzania sygnałów. wyświetla listę tematów pomocy. wyświetla okno pomocy (Help / Product Help)

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 6 AUTOMATYKA

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

8. Realizacja projektowanie i pomiary filtrów IIR

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Podstawy Przetwarzania Sygnałów

Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy SIMULINKA

Katedra Elektrotechniki Teoretycznej i Informatyki

Wprowadzenie. Spis treści. Analiza_sygnałów_-_ćwiczenia/Filtry

Filtrowanie a sploty. W powyższym przykładzie proszę zwrócić uwagę na efekty brzegowe. Wprowadzenie Projektowanie filtru Zadania

Ćwiczenie 4. Filtry o skończonej odpowiedzi impulsowej (SOI)

Cyfrowe Przetwarzanie Obrazów i Sygnałów

KASK by CTI. Instrukcja

WOJSKOWA AKADEMIA TECHNICZNA

Przetwarzanie sygnałów

Łukasz Januszkiewicz Technika antenowa

Parametryzacja przetworników analogowocyfrowych

x(n) x(n-1) x(n-2) D x(n-n+1) h N-1

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

LABORATORIUM SYSTEMÓW POMIAROWYCH KTP IR PW MATERIAŁY POMOCNICZE DO ĆWICZENIA 1 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.

A-2. Filtry bierne. wersja

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Detekcja zespołów QRS w sygnale elektrokardiograficznym

Szybkie metody projektowania filtrów aktywnych

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

WPROWADZENIE DO ŚRODOWISKA SCICOS

Ploter I-V instrukcja obsługi

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

b n y k n T s Filtr cyfrowy opisuje się również za pomocą splotu dyskretnego przedstawionego poniżej:

UWAGA. Wszystkie wyniki zapisywać na dysku Dane E: Program i przebieg ćwiczenia:

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej Pozwolenia wodnoprawne i zgłoszenia przydomowych oczyszczalni ścieków

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

Transformata Laplace a to przekształcenie całkowe funkcji f(t) opisane następującym wzorem:

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

Laboratorium nr 3. Projektowanie układów automatyki z wykorzystaniem Matlaba i Simulinka

Program dla praktyki lekarskiej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 3 AUTOMATYKA

analogowego regulatora PID doboru jego nastaw i przetransformowanie go na cyfrowy regulator PID, postępując według następujących podpunktów:

1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 04

Temat: Filtracja cyfrowa okresowych sygnałów deterministycznych Ćwiczenie 3

Temat: Filtracja cyfrowa okresowych sygnałów deterministycznych Ćwiczenie 3

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

Diagnostyka obrazowa

Rejestratory Sił, Naprężeń.

Instrukcja instalacji certyfikatu kwalifikowanego w programie Płatnik wersja b

Podstawy Informatyki 1. Laboratorium 8

Laboratorium Inżynierii akustycznej. Przetwarzanie dźwięku - wprowadzenie do efektów dźwiękowych, realizacja opóźnień

Diagnostyka obrazowa

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

1. Opis okna podstawowego programu TPrezenter.

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 3 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

Laboratorium 1. Wprowadzenie do środowiska GnuRadio. I. Wprowadzenie

Laboratorium Przetwarzania Sygnałów Biomedycznych

Moduł Handlowo-Magazynowy Zaawansowane analizy sprzedaży i zakupu

Laboratorium: Projektowanie pasywnych i aktywnych filtrów analogowych

Laboratorium Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przetwarzaniem sygnałów w MATLAB. 2. Program ćwiczenia. Przykład 1 Wprowadź

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

( 1+ s 1)( 1+ s 2)( 1+ s 3)

Użytkowanie Web Catalog

KOMPUTERY W STEROWANIU. Ćwiczenie 5 Projektowanie kompensatora cyfrowego metodą symulacji

Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych

Cyfrowe Przetwarzanie Obrazów i Sygnałów

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej

Wyniki operacji w programie

Filtry FIR i biblioteka DSPLIB

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

System imed24 Instrukcja Moduł Analizy i raporty

Materiały dodatkowe. Simulink PLC Coder

Ćwiczenie nr 1 Odpowiedzi czasowe układów dynamicznych

Funkcje standardowe. Filtrowanie

Laboratorium z automatyki

Systemy i Sieci Telekomunikacyjne laboratorium. Modulacja amplitudy

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Skrócona instrukcja obsługi czujników Fast Tracer firmy Sequoia.

Tworzenie prezentacji w MS PowerPoint

Instrukcja uŝytkowania programu

PRZEWODNIK PO ETRADER ROZDZIAŁ XII. ALERTY SPIS TREŚCI

13.2. Filtry cyfrowe

Ćw. 0: Wprowadzenie do programu MultiSIM

Instrukcja. importu dokumentów. z programu Fakt do programu Płatnik. oraz. przesyłania danych do ZUS. przy pomocy programu Płatnik

Kadry Optivum, Płace Optivum

Arkusz kalkulacyjny MS EXCEL ĆWICZENIA 4

Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink

Centrum Informatyki "ZETO" S.A. w Białymstoku. Wysyłanie danych o licencjach i zezwoleniach do CEIDG w systemie ProcEnt Licencje

Konsola operatora TKombajn

ĆWICZENIE 6 Transmitancje operatorowe, charakterystyki częstotliwościowe układów aktywnych pierwszego, drugiego i wyższych rzędów

Transkrypt:

DSP Blockset LABORATORIUM PROCESORY SYGNALOWE W AUTOMATYCE PRZEMYSLOWEJ PROJEKTOWANIA FILTRÓW CYFROWYCH PRZY WYKORZYSTANIU MATLAB-SIMULINK (DSP BLOCKSET).

DSP Blockset Modelowanie i symulacja systemów i komponentów przetwarzania sygnalów. WPROWADZENIE Toolbox DSP Blockset rozszerza pakiet MATLAB (srodowisko SIMULINK) o podstawowe mozliwosci modelowania i symulacji przetwarzania sygnalów. Toolbox umozliwia, w szerokim zakresie, cyfrowe przetwarzanie sygnalów, buforowanie, filtrowanie cyfrowe, szybkie projektowanie i symulacje systemów czasu rzeczywistego bez koniecznosci programowania na niskim poziomie. Jednym z elementów DSP Blockset jest blok (narzedzie) Digital Filter Design. Narzedzie sluzy do wspomagania projektowania oraz implementacji filtrów cyfrowych. Charakteryzuje sie latwa obsluga oraz duzymi mozliwosciami. Projektowany filtr moze byc uzyty do filtrowania jedno i wielokanalowych sygnalów. Dzieki Digital Filter Design mozna wygenerowac plik w jezyku C zawierajacy parametry filtra. Alternatywnym rozwiazaniem jest zastosowanie narzedzia Filter Design Toolbox z Signal Processing Toolbox. Jego konfiguracja jest identyczna jak Digital Filter Design. URUCHOMIENIE Digital Filter Design Aby rozpoczac prace z toolboxem Digital Filter Design nalezy w MATLABie uruchomic srodowisko SIMULINK. Uruchomienie SIMULINKa nastepuje poprzez wpisanie w oknie MATLABa polecenia simulink i zatwierdzenia go (klawiszem Enter). Drugim sposobem jest klikniecie ikony Simulink umieszczonej w pasku menu (rysunek nr 1). Rys. 1 Ikona uruchamiajaca Simulink. Strona 2 z 15

Nastepnie z Library Browser nalezy wybrac pozycje: / DSP Blockset / Filtering / Filter Designs Rys. 2 Wybór grupy bloczków do projektowania filtrów. W oknie po prawej stronie pojawia sie bloczki modulu Filter Design. Aby zaprojektowac i przetestowac filtr nalezy utworzyc nowy model w SIMULINKu a nastepnie przeciagnac do niego bloczek Digital Filter Design. Dwukrotne klikniecie na bloczek spowoduje otwarcie okna toolboxu (rysunek nr 3). Rys. 3 Okno glówne bloku Digital Filter Design. Strona 3 z 15

Digital Filter Design opis Okno Digital Filter Design podzielone zawiera siedem pól, w których mozemy podgladac charakterystyki projektowanego filtra, dane filtra, oraz konfigurowac jego parametry. Ponizej zamieszczono opis zawartosci poszczególnych okien Current Filter Information Okno Current Filter Information znajduje sie w lewym górnym rogu okna Digital Filter Design. Jego wyglad przedstawiono na rysunku nr 4. Rys. 4 Okno Current Filter Information W oknie tym znajdziemy informacje o strukturze filtra (Filter Structure) oraz mozliwosc konwersji struktury (opcja Convert Structure). Nastepnie informacje o filtrze: zródlo (Source) wskazuje, czy filtr byl projektowany w toolboxie (Designed), czy importowany (Imported) rzad filtra (Order) wyswietla rzad projektowanego filtra stabilnosc filtra (Stable) wskazuje, czy filtr jest stabilny (Yes), czy niestabilny (No) liczba sekcji (Section) wskazuje liczbe sekcji w projektowanym filtrze Analysis Jest to prawe górne okno. Jego zawartosc i nazwa róznia sie w zaleznosci od wybranej funkcji. W oknie tym mozna wyswietlac charakterystyki i analizy projektowanego filtra lub wykres z opisem charakterystycznych dla projektowanych filtrów wartosci. Wyboru wyswietlanego wykresu mozna dokonac poprzez zaznaczenie odpowiedniej pozycji z menu tekstowego: / Analysis / lub klikniecie jednej z ikon. Strona 4 z 15

Filter Specification Wyswietla wykres schematu parametrów filtra. Osie opisane sa jednostkami aktualnie wybranymi z menu Units. Wykres nie odzwierciedla aktualnych wartosci filtra. Magnitude Response Tworzy wykres charakterystyki amplitudowej filtra. Phase Response Tworzy wykres charakterystyki fazowej filtra. Magnitude and Phase Response (Frequency Response) Tworzy wykres z charakterystyka amplitudowa oraz fazowa filtra. Group Delay Impulse Response Tworzy wykres odpowiedzi impulsowej projektowanego filtra. Step Response Tworzy wykres odpowiedzi skokowej projektowanego filtra. Pole / Zero Plot Tworzy na plaszczyznie z wykres zawierajacy zera i bieguny projektowanego filtra. Strona 5 z 15

Filter Coeffiecents Otwiera okno zawierajace wspólczynniki projektowanego filtra. Oddzielnie podane sa wspólczynniki dla mianownika (denominator) oraz licznika (numerator) transmitancji filtra. Filter Type W oknie tym nalezy wybrac typ filtra. Rys. 5 Okno Filter Type Podstawowe typy filtrów: Lowpass (dolnoprzepustowy) Highpass (górnoprzepustowy) Strona 6 z 15

Bandpass (pasmowoprzepustowy) Bandstop (pasmowozaporowy) Design Method W oknie tym wybieramy metode projektowania filtra. Filtr o skonczonej odpowiedzi impulsowej FIR lub o nieskonczonej odpowiedzi impulsowej IIR. Filter Order Okno pozawala na wybór rzedu filtra. Mozna dokonac recznego wyboru, poprzez zaznaczenie pozycji Specify order i wpisanie rzedu filtra. Mozna takze dokonac wyboru automatycznego, zaznaczajac Minimum order. Wówczas rzad filtra zostanie dobrany automatycznie. Strona 7 z 15

Frequency Specifications & Magnitude Specifications Ponizej przedstawiono przykladowe ustawienia dla róznych rodzajów filtrów: Lowpass (dolnoprzepustowy) Highpass (górnoprzepustowy) Bandpass (pasmowoprzepustowy) Bandstop (pasmowozaporowy) Strona 8 z 15

MENU Menu zawiera dodatkowe funkcje, które mozna wywolac klikajac na ikony pod menu oraz funkcje uzupelniajace mozliwosci toolboxu. Ponizej przedstawiono najwazniejsze z nich. menu File / Export... Pozwala na eksport wspólczynników filtra do przestrzeni roboczej MATLABa (Workspace), pliku tekstowego (Text-file) lub pliku MATLABA (MAT-file). W czesci Variable Names mozna podac nazwy, pod którymi bedzie przypisany licznik i mianownik transmitancji (Numerator, Denominator). Zaznaczenie opcji Overwrite existing variables spowoduje, ze nowo wyeksportowane dane zastapia stare. menu File / Export to C header File Pozwala na eksport do pliku naglówkowego w jezyku C. Strona 9 z 15

Opcje w Variable names in C header file umozliwiaja wybór nazwy zmiennych, natomiast w Data type to use in export wybór typu eksportowanych danych. menu Transformations / FIR & IIR Poszczególne pozycje menu umozliwiaja transformacje filtrów. Np.: / FIR / Lowpass to Lowpass pozwala na przeksztalcenie filtra szerokopasmowego dolnoprzepustowego w waskopasmowy dolnoprzepustowy i odwrotnie / FIR / Lowpass to Highpass pozwala na przeksztalcenie filtru dolnoprzepustowego w szerokopasmowy lub waskopasmowy filtr górnoprzepustowy. PRZYKLAD CEL PRZYKLADU: zaprojektowac filtr dolnoprzepustowy o wlasciwosciach z tabeli: typ filtra dolnoprzepustowy Lowpass czestotliwosc odciecia 100 Hz Fpass czestotliwosc graniczna 150 Hz Fstop rzad filtra 10 Filter order szerokosc pasma 1000 Hz Fs Po wpisaniu ustawien filtru, w oknie toolboxa, nalezy kliknac na przyciski Design Filter. Wówczas zostaja wyliczone parametry filtru. Aby wyeksportowac parametry do MATLABa, nalezy uzyc opcji: File/Export... Otrzymane parametry nalezy przeliczyc w dziedzine Z. Wykorzystano do tego funkcje: trans = tf( licz,mian,okres_probkowania) gdzie licz, mian, to licznik i mianownik transmitancji w dziedzinie s, natomiast okres_probkowania, to okres próbkowania (w naszym przypadku 1/25000). Otrzymano transmitancje filtra: G(z) = 0.02679z 10 +0.05527z 9 +0.09512z 8 +0.1353z 7 +0.1654z 6 +0.1765z 5 +0.1654z 4 +0.1353z 3 + +0.09512z 2 +0.05527z+0.02679 Zaprojektowany filtr zamodelowano w SIMULINKu. Na filtr podano sinusoide i zaklócenia o nastepujacych parametrach: Strona 10 z 15

sygnal nosny: sinusoida, 50 Hz zaklócenia: sinusoida, 5000 Hz Uklad do badania filtra. Panel toolboxu Filter Design & Analysis Panel toolboxu Filter Design & Analysis Charakterystyka Bodego Charakterystyka Bodego Strona 11 z 15

Odpowiedz impulsowa Odpowiedz na skok jednostkowy Zera i bieguny transmitancji Charakterystyka Nyquista. Zaprojektowany filtr mozna równiez zaimplementowac na procesor sygnalowy. Wspólczynniki filtra: wspólczynnik wartosc dziesietna wartosc Q15 1 0.022928 02EE 2 0.047295 060E 3 0.081405 0A6B 4 0.11583 0ED3 5 0.14151 121D 6 0.15102 1354 7 0.14151 121D 8 0.11583 0ED3 9 0.081405 0A6B 10 0.047295 060E 11 0.022928 02EE Strona 12 z 15

Implementacja filtra na procesor sygnalowy polegala na napisaniu funkcji realizujacej filtr cyfrowy, pobraniu próbek z generatora, poddaniu ich filtracji (dzialaniu funkcji filtrujacej) oraz wyprowadzeniu z procesora sygnalowego w postaci analogowej. Do odczytu próbek sygnalu uzyto przetwornika A/C, który zostal skonfigurowany podczas poprzednich cwiczen laboratoryjnych. Do wyswietlenia przefiltrowanych przebiegów uzyto przetwornika C/A. Funkcja filtrujaca: int filtr(void) { int i,wynik; wynik=0; for (i=0;i<11;i++) wynik+=mul_q(tablica[i],15,tablica2[i],15,15); //mnozenie for (i=10;i>0;i--) tablica[i]=tablica[i-1];//przesuniecie o jeden element wstecz return wynik; } W poczatkowej czesci funkcji filtr zadeklarowano zmienne lokalne i oraz wynik potrzebne do realizacji algorytmu filtrowania. Na poczatku funkcji nastepuje wyzerowanie zmiennej wynik. Nastepnie sa dwie petle. W pierwszej z nich do zmiennej wynik (ustawionej jako akumulator) przypisywany jest wynik operacji mnozenia zawartosci tablicy z odczytanymi próbkami (tablica) oraz tablicy z wspólczynnikami filtru (tablica2). W drugiej petli realizowane jest przesuniecie elementów tablicy tablica o jeden element wstecz. Odczytanie wartosci sygnalu filtrowanego nastepuje poprzez przetwornik A/C w funkcji obslugi przerwania drugiego. Wykonywane sa nastepujace polecenia: //update przetwornika ADC przetwornik.update(&przetwornik); // koniec updatu przetwornika //zapisanie sumy wejsc z kanalow 1 i 2 do tablicy tablica[0]=przetwornik.c1_out+przetwornik.c2_out; //uruchomienie funkcji FILTR odpowiedz=filtr(); //update DAC dac.update(&dac); Po wywolaniu przerwania nastepuje odczytanie zawartosci przetwornika A/C, nastepnie przypisanie sumy wejsc z kanalów 1 i 2 do tablicy tablica. Nastepnie uruchomienie funkcji filtr (filtrowanie sygnalu) oraz update przetwornika C/A. W programie glównym wykonywane jest przepisanie zmiennej odpowiedz (sygnal przefiltrowany) na wyjscie nr 3: //przepisywanie odpowiedzi na wyjcie DSP (sygnal po filtracji) dac.qptr3=&odpowiedz; Strona 13 z 15

Rys. 2 Przebieg sygnalu nosnego bez zaklócenia (niebieski) oraz sygnalu zaklóconego (zielony) Rys. 3 Przebieg sygnalu nosnego bez zaklócen (niebieski) oraz przefiltrowanego (fioletowy). Rys. 4 Przebieg sygnalu nosnego bez zaklócen (niebieski) oraz przefiltrowanego (fioletowy). Strona 14 z 15

Dzialanie zaprojektowanego filtru, zaimplementowanego na procesorze sygnalowym bylo prawidlowe. Sygnal byl prawidlowo filtrowany, wyeliminowano zaklócenia. Zgodnie z wlasciwosciami filtru, amplituda sygnalu przefiltrowanego ulegla obnizeniu. Wystepuje takze przesuniecie fazowe zalezne od czestotliwosci. Na rysunku nr 3 widac, iz dla nizszych czestotliwosci przesuniecie przekracza 180. Natomiast na rysunku nr 4 widoczne jest, iz dla wyzszych czestotliwosci przesuniecie jest mniejsze niz 180. Takie przesuniecia fazowe sa zgodne z charakterystyka zaprojektowanego filtru: Strona 15 z 15