STANOWISKO LABORATORYJNE DO CYFROWEGO PRZETWARZANIA SYGNAŁÓW Z WYKORZYSTANIEM ŚROWODOWISKA MATLAB ORAZ PLATFORMY PROGRAMISTYCZNEJ.



Podobne dokumenty
Parametryzacja przetworników analogowocyfrowych

Laboratorium Komputerowe Systemy Pomiarowe

Ćwiczenie 11. Podstawy akwizycji i cyfrowego przetwarzania sygnałów. Program ćwiczenia:

APLIKACJA NAPISANA W ŚRODOWISKU LABVIEW SŁUŻĄCA DO WYZNACZANIA WSPÓŁCZYNNIKA UZWOJENIA MASZYNY INDUKCYJNEJ

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obieralny (obowiązkowy / nieobowiązkowy) polski semestr VI

Ćwiczenie 4: Próbkowanie sygnałów

Laboratorium Komputerowe Systemy Pomiarowe

PL B1. Sposób i układ pomiaru całkowitego współczynnika odkształcenia THD sygnałów elektrycznych w systemach zasilających

III. Przebieg ćwiczenia. 1. Generowanie i wizualizacja przebiegów oraz wyznaczanie ich podstawowych parametrów

Schemat blokowy karty

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

Wirtualne przyrządy kontrolno-pomiarowe

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

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

Rejestratory Sił, Naprężeń.

WIDMOWA I FALKOWA ANALIZA PRĄDU SILNIKA LSPMSM Z WYKORZYSTANIEM OPENCL

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Podstawy Przetwarzania Sygnałów

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

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Filtry cyfrowe procesory sygnałowe

Ćw. 12. Akwizycja sygnałów w komputerowych systemach pomiarowych ( NI DAQPad-6015 )

Układy i Systemy Elektromedyczne

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wirtualne przyrządy pomiarowe

PREZENTACJA MODULACJI AM W PROGRAMIE MATHCAD

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 04

Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2015/2016. Forma studiów: Niestacjonarne Kod kierunku: 11.

CYFROWE PRZETWARZANIE SYGNAŁÓW

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

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

Ćwiczenie 11. Podstawy akwizycji i cyfrowego przetwarzania sygnałów. Program ćwiczenia:

Badanie właściwości wysokorozdzielczych przetworników analogowo-cyfrowych w systemie programowalnym FPGA. Autor: Daniel Słowik

ZASTOSOWANIA PROCESORÓW SYGNAŁOWYCH - PROJEKT

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

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

Egzamin / zaliczenie na ocenę*

OPBOX ver USB 2.0 Miniaturowy Ultradźwiękowy system akwizycji danych ze

WZORCOWANIE MOSTKÓW DO POMIARU BŁĘDÓW PRZEKŁADNIKÓW PRĄDOWYCH I NAPIĘCIOWYCH ZA POMOCĄ SYSTEMU PRÓBKUJĄCEGO

Informatyka studia stacjonarne pierwszego stopnia

CYFROWE PRZTWARZANIE SYGNAŁÓW (Zastosowanie transformacji Fouriera)

Sprawdzian test egzaminacyjny 2 GRUPA I

KOMPUTEROWE SYSTEMY POMIAROWE

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

Cechy karty dzwiękowej

Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego

Wykrywacz kłamstw. Grzegorz Puzio, Łukasz Ulanicki 15 czerwca 2008

Systemy pomiarowe. Katalog produktów. Napięcie. Konfiguracja protokołów redundancji w switchach MOXA strona 12. Autmatyka w kolejnictwie strona 18

GATHERING DATA SYSTEM FOR CONCRETE S SAMPLE DESTRUCTING RESEARCHES WITH USE OF LABVIEW PACKET

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

Procesory Sygnałowe Digital Signal Processors. Elektrotechnika II Stopień Ogólnoakademicki

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

SPRZĘTOWA REALIZACJA FILTRÓW CYFROWYCH TYPU SOI

WOLTOMIERZA PRÓBKUJĄCY Z ANALIZĄ HARMONICZNYCH W ŚRODOWISKU LabVIEW

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

Ćwiczenie 5 WIELOFUNKCYJNA KARTA POMIAROWA DAQ

Komputerowe systemy pomiarowe. Dr Zbigniew Kozioł - wykład Mgr Mariusz Woźny - laboratorium

Laboratorium EAM. Instrukcja obsługi programu Dopp Meter ver. 1.0

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

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

Przetwarzanie sygnałów z zastosowaniem procesorów sygnałowych - opis przedmiotu

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

KARTA PRZEDMIOTU. Techniki przetwarzania sygnałów, D1_3

Integracja systemów sterowania i sterowanie rozproszone 5 R

Analiza właściwości filtra selektywnego

Analizy Ilościowe EEG QEEG

Adam Korzeniewski - p. 732 dr inż. Grzegorz Szwoch - p. 732 dr inż.

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

Państwowa Wyższa Szkoła Zawodowa

Sprawdzian test egzaminacyjny GRUPA I

Materiały dodatkowe. Simulink Real-Time

Laboratorium Techniki ultradźwiękowej w diagnostyce medycznej

Przetwarzanie analogowo-cyfrowe sygnałów

POLITECHNIKA OPOLSKA

Prototypowanie systemów sterowania

Szczegółowy opis przedmiotu zamówienia

MODELOWANIE PRZEKSZTAŁTNIKÓW ENERGOELEKTRONICZNYCH W ŚRODOWISKU LABVIEW

2.2 Opis części programowej

ĆWICZENIE nr 3. Badanie podstawowych parametrów metrologicznych przetworników analogowo-cyfrowych

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

ZAKŁAD SYSTEMÓW ELEKTRONICZNYCH I TELEKOMUNIKACYJNYCH Laboratorium Podstaw Telekomunikacji WPŁYW SZUMÓW NA TRANSMISJĘ CYFROWĄ

1.1. Wymogi bezpieczeństwa Pomoc techniczna TIA Portal V13 instalacja i konfiguracja pakietu...18

BADANIE MODULATORÓW I DEMODULATORÓW AMPLITUDY (AM)

Spis treści 1. Wstęp 2. Ćwiczenia laboratoryjne LPM

System akwizycji danych na bazie platformy Arduino

7. Szybka transformata Fouriera fft

8. Realizacja projektowanie i pomiary filtrów IIR

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

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

Komputerowe projektowanie układów ćwiczenia uzupełniające z wykorzystaniem Multisim/myDAQ. Katedra Mikroelektroniki i Technik Informatycznych PŁ

Projekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka

Rok akademicki: 2030/2031 Kod: SEN EJ-s Punkty ECTS: 4. Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Przetwarzanie A/C i C/A

Opracował: Jan Front

Symulacja sygnału czujnika z wyjściem częstotliwościowym w stanach dynamicznych

Przetworniki AC i CA

Przekształcenie Fouriera i splot

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Transkrypt:

POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 80 Electrical Engineering 2014 Stanisław MIKULSKI* STANOWISKO LABORATORYJNE DO CYFROWEGO PRZETWARZANIA SYGNAŁÓW Z WYKORZYSTANIEM ŚROWODOWISKA MATLAB ORAZ PLATFORMY PROGRAMISTYCZNEJ.NET W artykule opisano stanowisko laboratoryjne służące do cyfrowej analizy i przetwarzania sygnałów elektrycznych. Stanowisko to zostało stworzone w oparciu o oprogramowanie MATLAB, dowolną kartę pomiarową oraz interfejs graficzny programu zaimplementowany w języku C# platformy.net. Przedstawione zostały także pomiary wykonane za pomocą prezentowanego w artykule układu oraz analiza wpływu zastosowania dwóch środowisk programistycznych na czas uzyskania wyników obliczeń oraz ich wizualizację. SŁOWA KLUCZOWE: cyfrowe przetwarzanie sygnałów, filtracja cyfrowa, Matlab, C#.NET 1. KONCEPCJA STANOWISKA LABORATORYJNEGO Głównym założeniem opisanego w artykule stanowiska było skonstruowane narzędzia pozwalającego na rejestrację, przetwarzanie i analizę sygnałów elektrycznych bez wykorzystania do tego zaawansowanych układów opartych o procesory sygnałowe DSP. Zamiast procesorów sygnałowych do obliczeń wykorzystany został komputer klasy PC z zainstalowanym systemem MATLAB/Simulink. Aby stanowisko mogło spełniać zarówno cele naukowe jak i dydaktyczne wyposażone zostało zarówno w symulator generatora funkcyjnego oraz arbitralnego, jak i możliwość komunikacji z kartą pomiarową. W przypadku komunikacji z kartą pomiarową stanowisko miało mieć możliwość zarówno akwizycji sygnału jak i generowania sygnałów na wyjściu karty. Program komputerowy został także wyposażony w możliwość wyświetlania przebiegów czasowych sygnałów, widm częstotliwościowych oraz odczyt podstawowych parametrów sygnału. Ze względu na funkcjonalność stanowisko można podzielić na cztery moduły: moduł akwizycji danych w skład, którego wchodzi źródło sygnału oraz blok programu sterujący akwizycją danych. W zależności od trybu pracy, jako źródło sygnału można wyróżnić: symulację w środowisku MATLAB, odczyt * Politechnika Poznańska.

162 Stanisław Mikulski zarejestrowanego wcześniej przebiegu sygnału zapisanego w formacie wav, kartę dźwiękową komputera lub kartę pomiarową. W trakcie pracy programu komputerowego można zmienić takie parametry jak częstotliwość próbkowania, czas lub liczbę pobranych próbek. W przypadku trybu symulacyjnego można ustawić dodatkowo kształt sygnału wejściowego, amplitudę, częstotliwość, fazę początkową oraz czas symulacji, moduł analizy częstotliwościowej w programie analiza widma częstotliwościowego sygnału odbywa się za pomocą szybkiej transformaty Fouriera FFT, zgodnie z algorytmem Colley-Tuckey a opisanego w [2, 4], moduł filtracji cyfrowej sygnału moduł ten pozwala na dobranie współczynników filtru cyfrowego rekursywnego IIR lub nierekursywnego FIR. Do projektowania filtrów FIR wykorzystano metodę okien opisaną w [3]. Wyboru okien można dokonać pomiędzy oknami: prostokątnym, trójkątnym, Bartletta oraz Hamminga, moduł rejestrujący sygnał pozwala na zapis otrzymanych przebiegów do pliku wave oraz ich późniejsze odtworzenie. 2.1. Interfejs programu 2. REALIZACJA STANOWISKA Interfejs programu został zaimplementowany w środowisku programistycznym Visual Studio 2012, przy użyciu języka C#. Takie rozwiązanie pozwoliło na stworzenie jednocześnie zaawansowanego i przyjaznego dla użytkownika interfejsu aplikacji. Graficznie interfejs składa się z trzech części. Pierwsza część interfejsu, przedstawionego na rysunku 1, pozwala na wybór jednego z dwóch trybów pracy stanowiska: trybu symulacyjnego lub trybu pomiaru sygnałów za pomocą karty pomiarowej. Druga część interfejsu pozwala na ustawienie parametrów toru przetwarzaniach sygnałów, takich jak: częstotliwość próbkowania, parametry filtracji cyfrowej oraz analizy częstotliwościowej sygnałów. W dolnej części interfejsu prezentowane są przebiegi sygnałów (takich jak sygnał wejściowy, wyjściowy) oraz wyniki pomiarów. Komunikacja pomiędzy aplikacją a środowiskiem Matlab odbywa się za pomotechnologii MATLAB COM Automation Server, zgodnej ze standardem COM. Program w momencie rozruchu tworzy niewidoczną dla użytkownika instancję środowiska MATLAB (tzw. serwer automatyzujący). Wszystkie parametry obliczeń wprowadzone jako dane wejściowe zostają przetłumaczone na komendy zgodne z konstrukcją języka programowania MATLAB-a. Następnie są wysyłane do przestrzeni roboczej (z ang. Workspace) serwera automatyzującego w postaci komend lub zmiennych. Po wykonaniu obliczeń wyniki pobierane są z przestrzeni roboczej do pamięci aplikacji za pomocą odnośników do nazw zmiennych.

Stanowisko laboratoryjne do cyfrowego przetwarzania sygnałów 163 Rys. 1. Interfejs graficzny stanowiska laboratoryjnego 2.2. Komunikacja z kartą pomiarową Przesyłanie informacji pomiędzy kartą pomiarową, a aplikacją odbywa się pośrednio przez środowisko MATLAB z wykorzystaniem modułu Data Acquisition Toolbox. Cały proces komunikacji przedstawiono na schemacie z rysunku 2. Pomiędzy przestrzenią roboczą a kartą pomiarową tworzona jest sesja pomiarowa. Do jej utworzenia potrzebna jest indywidualna nazwa danej karty pomiarowej w systemie operacyjnym. Po utworzeniu sesji niezbędne jest przypisanie do niej karty pomiarowej oraz wykorzystywanych kanałów karty. Użytkownik może zdefiniować używane kanały oraz ustawienia karty pomiarowej takie jak: częstotliwość próbkowania czy zakres. Sesja pomiarów z karty może się odbywać w trybie skończonym i ciągłym. Po rozruchu sesji pomiarowej karta zapisuje do bufora próbki sygnału. W momencie zapełnienia bufora próbki zostają zapisane do przestrzeni roboczej Matlaba. W programie zastosowano zaimplementowaną w Data Acquisition Toolbox wielowątkowość, dzięki czemu zachowano ciągłość komunikacji pomiędzy interfejsem a użytkownikiem. Aby komunikacja pomiędzy kartą pomiarową a przestrzenią roboczą Matlaba odbywała się z wykorzystaniem wątku pobocznego, musi zostać zdefiniowane odwołanie do funkcji wykonywanej w tym wątku w sytuacji, gdy bufor danych zostanie zapełniony. Wielkość bufora danych (liczba pobranych z karty próbek sygnału) jest konfigurowalna. Mechanizm Data Acqusition Toolbox wprowadza jednak ograniczenia dotyczące liczby odczytów i zapisów danych z bufora karty pomiarowej. Skutkiem tego ograniczenia jest brak możliwości przesyłu danych z karty próbka po próbce, a więc aplikacja nie jest w stanie działać online. Obliczenia odbywają się cyklicznie, na podstawie pakietów danych.

164 Stanisław Mikulski Aplikacja.NET Parametry DAQ Wyniki Obliczeń Przestrzeń robocza MATLAB Utworzenie Sesji Pomiarowej Deklaracja i konfiguracja użytkowanych kanałów karty Utworzenie wątku obsługującego odczyt z karty DAQ Wątek obsługujący komunikację z kartą DAQ Karta DAQ Data Acquisition ToolBox Zapis pomiarów do przestrzeni roboczej MATLAB Cyfrowe Przetwarzanie Danych: FFT, filtracja Rys. 2. Schemat komunikacji pomiędzy aplikacją.net a przestrzenią roboczą Matlaba w przypadku pomiarów z wykorzystaniem karty pomiarowej 3. ANALIZA SYGNAŁÓW Z WYKORZYSTANIEM STANOWISKA LABORATORYJNEGO Badania zostały przeprowadzane na komputerze klasy notebook z procesorem głównym Intel Core-i5 3317U. Układ ten skonstruowany w technologii 22 nm, posiada 3 MB pamięci cache. Częstotliwość taktowania procesora wynosi 1,7 GHz. W jednostce tej zaimplementowana jest także technologia Turbo Boost pozwalająca na zwiększenie częstotliwości taktowania maksymalnie do 2,6 GHz. Notebook wyposażono także w 8 GB pamięci podręcznej oraz kartę graficzną ATI Mobility Radeon HD 8720. Stanowisko wyposażono także w kartę pomiarową firmy National Instruments NI USB-6251. Karta ta posiada 16 wejść analogowych oraz 16 bitowy przetwornik analogowo-cyfrowy. Maksymalna częstotliwość próbkowania każdego wejścia to 1,25 MS/s. Rys. 3. Wynik symulacji (linia ciągła) oraz dyskretyzacji sygnału wejściowego (prążki)

Stanowisko laboratoryjne do cyfrowego przetwarzania sygnałów 165 Rys. 4. Przebieg sygnału zarejestrowanego z karty pomiarowej Na rysunkach 3 i 4 pokazano dwa zarejestrowane za pomocą aplikacji przebiegi sygnałów. Na rysunku 3 widać przebieg sygnału sinusoidalnego 50 Hz o amplitudzie 2 V otrzymanego w wyniku symulacji. Na rysunek 4 przedstawiono zarejestrowany za pomocą karty pomiarowej sygnał elektryczny o takich samych parametrach (kształt, częstotliwość i amplituda), jak w przypadku sygnału symulowanego na rysunku 3. Dla tego sygnału, przy zachowaniu takiej samej konfiguracji całego stanowiska przeprowadzono analizę widma amplitudowego przy pomocy algorytmów FFT. Wyniki przedstawiono na rysunku 5. Rys. 5. Widmo amplitudowe sygnału z karty pomiarowej W trakcie badań częstotliwość próbkowania karty pomiarowej była ustawiona na 1000 S/s. 4. WNIOSKI I PODSUMOWANIE W artykule przedstawiono przykład praktycznego zastosowania połączenia platformy programistycznego.net oraz środowiska obliczeniowego Matlab, przy wykorzystaniu interfejsu MATLAB Automation Server. Oprogramowania Matlab jest jednym z wiodących narzędzi służących do zaawansowanych obliczeń inżynierskich. Zaimplementowana jest w nim szeroka gama narzędzi obliczeniowych, pozwalających na wykonywanie symulacji, analizy oraz przetwarzania cyfrowego m. in. sygnałów, obrazów. Niestety, pomimo bardzo szerokich możliwości obliczeń, interfejs graficzny MATLAB GUI tego środowiska

166 Stanisław Mikulski jest narzędziem o bardzo ograniczonych możliwościach. Dlatego w opinii autora zastosowanie techniki wymiany danych pomiędzy opisanymi w artykule platformami ma swoje uzasadnienie przede wszystkim w zwiększeniu funkcjonalności Matlaba. Z drugiej strony, w trakcie tworzenia aplikacji na platformie.net przeniesienie obliczeń do Matlaba pozwala na ominięcie żmudnego procesu tworzenia algorytmów i kodu obliczeń, co skraca czas tworzenia aplikacji oraz redukuje prawdopodobieństwo popełnienia błędów obliczeniowych. Po analizy współpracy pomiędzy aplikacją a kartą pomiarową autor stwierdza, że komunikacja między interfejsem graficznym i DAQ odbywała się w sposób płynny i poprawny. Karta zwiększa możliwości stanowiska laboratoryjnego o fizyczny pomiar sygnałów elektrycznych. Dzięki temu otrzymano proste stanowisko do przetwarzania sygnałów cyfrowych wraz z implementacją filtrów cyfrowych. Stanowisko takie może być alternatywą dla specjalistycznych układów z procesorami sygnałowymi. Wadą połączenia karty pomiarowej z Matlabem w stosunku do układów z procesorami sygnałowymi jest ograniczona liczba odczytów próbek z bufora w jednostce czasu. W ramach artykułu nie został przeanalizowany wpływ komunikacji pomiędzy środowiskiem MATLAB a platformą.net na czas wykonania obliczeń. Autor planuje dalsze badania w tej tematyce. LITERATURA [1] Oppenheim, A. V. and R. W. Schafer, Discrete-Time Signal Processing, Prentice- Hall, 1989. [2] Cooley, J. W. and J. W. Tukey, "An Algorithm for the Machine Computation of the Complex Fourier Series,"Mathematics of Computation, Vol. 19, April 1965, pp. 297-301. [3] Zieliński T., Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, Warszawa 2007, ISBN 978-83-206-1640-8 2007. [4] www.mathworks.com, Fourier Analysis and Filtering, 2014.02.12 15:00 [5] www.msdn.microsoft.com, Component Object Model, 2014.02.09 13:30 [6] www.ni.com/white-paper/3215/en/, NI-DAQmx Hardware-Timed Single Point Lateness Checking, 2014.01.20 15:30 IMPLEMENTATION OF DSP LABORATORY STAND IN.NET PLATFORM CONNECTED TO MATLAB The article describes example of laboratory stand for the analysis and processing of digital signals. This stand has been created with use of the MATLAB Automation Server, newest National Instruments DAQ drivers (NI-DAQmx) and user interface implemented in.net framework with use of C# language. Stand can work in simulation mode or in data acquisition mode with use of National Instruments Data Acquisition devices connected to computer. The author of the paper describes mechanism of data transmission between two random environments: Matlab Workspace and.net Framework and show impact of this solution on calculation time.