Podstawy programowania w środowisku LabVIEW, projekt oscyloskopu cyfrowego

Podobne dokumenty
Podstawy programowania w środowisku LabVIEW, program do pomiaru napięcia

Gromadzenie danych. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 15 minut.

Podstawy budowy wirtualnych przyrządów pomiarowych

Program ćwiczenia: SYSTEMY POMIAROWE WIELKOŚCI FIZYCZNYCH - LABORATORIUM

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

Wirtualne przyrządy kontrolno-pomiarowe

Parametryzacja przetworników analogowocyfrowych

Wirtualne przyrządy pomiarowe

Ćw. 2. Wprowadzenie do graficznego programowania przyrządów pomiarowych

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium przyrządów wirtualnych. Ćwiczenie 3

Multimetr cyfrowy MAS-345. Instrukcja instalacji i obsługi oprogramowania DMM VIEW Ver 2.0

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

Laboratorium Komputerowe Systemy Pomiarowe

Programowanie w języku G - Laboratorium 4

Reprezentacja zmiennych numerycznych

Instrukcja do oprogramowania ENAP DEC-1

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

Część I. Pomiar drgań własnych pomieszczenia

Laboratorium Komputerowe Systemy Pomiarowe

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

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

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

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

INSTALACJA DOSTĘPU DO INTERNETU

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

Konsola operatora TKombajn

Rejestrator VIDIUS III (PSE-HD1648F)

Laboratorium Komputerowe Systemy Pomiarowe

STEROWNIK LAMP LED MS-1 Konwerter sygnału 0-10V. Agropian System

Konfiguracja karty akwizycji danych pomiarowych DAQ

Wahadło. Celem ćwiczenia jest zapoznanie się z zasadą dokonywania wideopomiarów w systemie Coach 6 oraz obserwacja modelu wahadła matematycznego.

Tworzenie zespołu. Ustalenie aktualnego projektu. Laboratorium Technik Komputerowych I, Inventor, ćw. 4

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

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu

Przetwornik analogowo-cyfrowy

Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. Wyświetlanie naprzemienne Numer parametru Wartość parametru

INSTRUKCJA OBSŁUGI PROGRAMU LOGGER PRO

Multimetr cyfrowy VA18B Instrukcja instalacji i obsługi. oprogramowania PC-LINK

Robert Barański, AGH, KMIW For Loops While Loops v1.0

VI od podstaw. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 30 minut.

1. Opis okna podstawowego programu TPrezenter.

Analiza obwodów elektrycznych z zastosowaniem LabVIEW

Wzmacniacze napięciowe i ograniczniki dynamiki

Wykorzystanie karty PCI-6014 NI jako karty pomiarowej prostego wirtualnego oscyloskopu

Praca w programie Power Draft

1. Opis. 2. Wymagania sprzętowe:

Rejestratory Sił, Naprężeń.

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

Interfejs analogowy LDN-...-AN

Systemy operacyjne I Laboratorium Część 3: Windows XP

PRZENOŚNY MIERNIK MOCY RF-1000

Przetworniki AC i CA

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

Po naciśnięciu przycisku Dalej pojawi się okienko jak poniżej,

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

Tworzenie i zapis plików w VI

Siemens S Konfiguracja regulatora PID

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

RF-graph 1.2 POMOC PROGRAMU

Modelowanie układów sekwencyjnych w LabView - ćwiczenie 8

LabVIEW PLATFORMA EDUKACYJNA Lekcja 1 Pierwsze kroki w środowisku LabVIEW

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

Podstawy użytkowania programu LabView

Ćw. 0: Wprowadzenie do programu MultiSIM

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Ploter I-V instrukcja obsługi

Ćwiczenie C1. Utworzenie wielokanałowego systemu zbierania danych i prezentacja zarejestrowanych przebiegów na ekranie PC

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Licznik rewersyjny MD100 rev. 2.48

Ćw. 8 Bramki logiczne

przedmiot kilka razy, wystarczy kliknąć przycisk Wyczaruj ostatni,

Przetwarzanie A/C i C/A

Konfiguracja modułu alarmowania w oprogramowaniu InTouch 7.11

PRZYRZĄDY WIRTUALNE. Część 6 Macierze, klastry, wzory. Prof. Krzysztof Jemielniak

Instrukcja obsługi programu Creative Fotos

Konfiguracja Połączenia

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

Opis obsługi programu KALKULACJA

Schemat blokowy karty

Cyfrowe Przetwarzanie Obrazów i Sygnałów

2.2 Opis części programowej

LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED

TWORZENIE POŁĄCZENIA INTERNETOWEGO PRZEZ TELEFON

1. Instalacja modułu w systemie Windows.

Ćw. 7 Przetworniki A/C i C/A

Akceleracja symulacji HES-AHDL. 1. Rozpoczęcie pracy aplikacja VNC viewer

Katedra Metrologii i Systemów Diagnostycznych Laboratorium Metrologii II. 2013/14. Grupa: Nr. Ćwicz.

ActionFX oprogramowanie do sterowania efektami platform i kin 7D V1.0.1

Ćwiczenie 4: Próbkowanie sygnałów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Wyznaczanie prędkości dźwięku w powietrzu

Program V-SIM tworzenie plików video z przebiegu symulacji

w w w. m o f e m a. c o m

Praca w Gabinecie lekarskim

Praca w programie Power Draft

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych.

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

INSTRUKCJA OBSŁUGI PROGRAM DO ODCZYTU DANYCH Z PIROMETRU IR THERMOMETER

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

Transkrypt:

Podstawy programowania w środowisku LabVIEW, projekt oscyloskopu cyfrowego Celem ćwiczenia jest doskonalenie umiejętności tworzenia typowych aplikacji w środowisku LabVIEW na przykładzie projektu witrualnego oscyloskopu cyfrowego. Podstawą sprzętową wspomnianego przyrządu jest karta akwizycji sygnałów PCI DAS-1200 firmy Measurement Computing Corp. Jest to 16 kanałowa karta pomiarowa wyposaŝona w 12 bitowy przetwornik A/C o maksymalnej częstotliwości próbkowania 330kHz, dwa 12 bitowe przetwornik C/A, 3 liczniki oraz 24 cyfrowe we/wy. Programowa obsługa funkcji sprzętowych karty odbywa się poprzez wywołania odpowiednich funkcji zapisanych w bibliotece dynamicznej DLL. Dostępna jest równieŝ biblioteka takich funkcji dla środowiska LabVIEW. Funkcje te są znajdują się w palecie Functions Pallete jako grupa o nazwie Universal Library. Oscyloskop cyfrowy działa na zasadzie cyklicznej rejestracji w zadanym czasie stałej liczby próbek sygnału i wyświetlaniu ich na ekranie. Dlatego podstawą projektowanego oscyloskopu powinna być funkcja pozwalająca na rejestrację z zadaną częstotliwością zadanej liczby próbek. Jedną z takich funkcji dla karty DAS-1200 jest AInScFg (rys.1) z grupy Analog Input. Rys.1. Parametry funkcji AInScFg Jest to funkcja dokonująca rejestracji Count próbek z częstotliwością Rate na wejściach analogowych o numerach od LowChan do HighChan z karty pomiarowej o numerze podanej w BoardNum. Zakres pomiarowy napięć podawany jest jako Range. Przy pomocy parametru Options moŝna sterować trybem realizacji funkcji AInScFg (m.in. sposobem wyzwalania rejestracji i przesyłania danych do pamięci). Wyjściowy parametr ADData jest tablicą z zarejestrowanymi próbkami. Natomiast wyjście ErrCode słuŝy do sygnalizowania poprawności przetwarzania i ewentualnych przyczyn błędnego działania. Wyjściowa wartość Rate jest rzeczywistą częstotliwością próbkowania. Część praktyczna Po uruchomieniu programu LabVIEW rozpoczynamy tworzenie programu od wyboru nowego instrumentu New VI (moŝemy równieŝ rozpocząć pracę nad nowym projektem wybierając z menu File opcję New VI ). Pojawi się wówczas na ekranie pusty panel uŝytkownika. 1

1. Na panelu uŝytkownika w pierwszej kolejności umieszczamy elementy pozwalające na wybór numeru karty pomiarowej oraz numeru kanału wejściowego. W tym celu poleceniem Show Controls Pallete wybranym z menu Windows, otwieramy okno Controlls Pallete, w którym wybieramy grupę Numeric a w niej z kolei wybieramy (klikając myszką) Digital Control. Następnie przesuwamy kursor do panelu uŝytkownika i ponownie klikając myszką wstawiamy wybrany element. Następnie moŝemy od razu wprowadzić z klawiatury właściwą jego nazwę: Nr karty. Identycznie postępujemy aby umieścić na panelu uŝytkownika następną kontrolkę: Nr kanału (poniewaŝ projektowany oscyloskop ma umoŝliwić obserwację tylko jednego sygnału dlatego do wyboru kanału wejściowego wystarczy nam ta jedna kontrolka). Trzecim niezbędnym parametrem wejściowym funkcji AInScFg jest liczba rejestrowanych próbek Count dlatego umieszczamy na panelu uŝytkownika jeszcze jedną kontrolkę Liczba próbek, co pozwoli nam na sterowanie ilością próbek rejestrowanych w kolejnych cyklach pracy oscyloskopu. Aby oscyloskop mógł prawidłowo pracować Liczba próbek oczywiście powinna być większa od zera, dlatego dobrze jest nadać jej dodatnią wartość początkową. Powinna to być wartość na tyle duŝa, aby zapewnić wystarczającą rozdzielczość poziomą obrazu (co najmniej 100 punktów) a zarazem niezbyt duŝa, Ŝeby oscyloskop w rozsądnym czasie odświeŝał ekran (co najwyŝej 1000). W naszym przykładzie moŝe to być 200 próbek. 2. Kolejny parametrem wejściowym funkcji AInScFg jest częstotliwość próbkowania Rate. W przypadku oscyloskopu zamiast podawania częstotliwości próbkowania, przy pomocy pokrętła podstawy czasu ustawia się czas trwania pomiaru (tzn. ustalamy ile czasu przypada na jednostkę długości osi poziomej ekranu np.: 5 ms/cm). W naszym przypadku wygodniejsze będzie określanie całkowitego czasu trwania fragmentu sygnału wyświetlanego na ekranie w pojedynczym cyklu pracy oscyloskopu. Dlatego umieszczamy na panelu uŝytkownika kolejną kontrolkę typu Horizontal Pointer Slide wybraną z grupy Numeric i nazywamy ją Czas obserwacji [ms]. Konieczny parametr wejściowy funkcji AInScFg jakim jest częstotliwość próbkowania Rate uzyskamy dzieląc Liczbę próbek przez Czas obserwacji. 3. Kolejny krok to umieszczenie w programie funkcji AInScFg. Znajduje się ona podgrupie funkcji Analog Input grupy Uniwersal Library. Funkcję AInScFg umieszczamy na prawo od pozostałych elementów na panelu programu. Następnie szpulką łączymy Nr karty z wejściem BoardNum funkcji AInScFg, a Nr kanału z oboma wejściami LowChan i HighChan funkcji AInScFg. Wejście Count łączymy z Liczbą próbek. Do obliczenia częstotliwości próbkowania konieczne jest zastosowanie operatora dzielenia, do którego wejścia x dołączamy Liczbę próbek a do wejścia y Czas obserwacji [ms]. PoniewaŜ Czas obserwacji [ms] będziemy zadawać w milisekundach, dlatego otrzymany iloraz naleŝy pomnoŝyć przez 1000 aby otrzymać częstotliwość w hercach a nie w kilohercach. MnoŜenie to realizujemy wykorzystując operator mnoŝenia i element Numeric Constant o wartości 1000. Wyjście operatora mnoŝenia moŝemy teraz połączyć z wejściem Rate funkcji AInScFg. Nie obsadzone parametry wejściowe funkcji AInScFg Range i Options przyjmą wartości domyślne, które w naszym przypadku zapewnią poprawną pracę programu. W tym miejscu naleŝy wrócić do pane- 2

lu uŝytkownika i wpisać odpowiedni zakres nastawiania Czasu obserwacji [ms]. Jego wartość minimalna jest ograniczona maksymalną częstotliwością próbkowania przetwornika A/C, poniewaŝ Czas obserwacji musi byś większy od iloczynu Liczby próbek i minimalnego okresu próbkowania. W naszym przypadku maksymalną częstotliwością próbkowania wynosi 330 khz i dlatego rejestracja 200 próbek musi trwać co najmniej 0,606 ms. Jeśli próbek będzie 330 to minimalny czas obserwacji wyniesie 1 ms i taką wartość moŝemy ustawić jako dolny zakres nastaw Czasu obserwacji [ms]. Maksymalny czas obserwacji moŝe być dowolny, ale rozsądnie jest go ograniczyć do co najwyŝej kilku sekund (proponujemy 100 ms). 4. Aby moŝna było w trakcie uŝywania naszego przyrządu rozpoznać ewentualne przyczyny nieprawidłowego jego działania, naleŝy obsłuŝyć wyjście ErrCode funkcji AInScFg. W tym celu do panelu programu wstawiamy funkcję ErrMsg, którą moŝna znaleźć w podgrupie Calibration and Configuration biblioteki Universal Library. Funkcja ErrMsg zamienia kod błędu na jego krótki opis. Aby moŝna było przeczytać ten komunikat o błędzie potrzebny nam będzie wskaźnik tekstowy String Indicator, który z podgrupy String & Path wstawiamy do panelu uŝytkownika. Wskaźnik ten moŝemy nazwać jako Błąd. Następnie wracamy do panelu programu i łączymy wyjście ErrCode funkcji AInScFg z wejściem ErrCode funkcji ErrMsg oraz wyjście ErrMsg tej funkcji z wskaźnikiem Błąd. 5. W celu umoŝliwienia obserwacji na ekranie rzeczywistej częstotliwości próbkowania sygnału, konieczne jest jeszcze wstawienia do panelu uŝytkownika odpowiedniego wskaźnika. MoŜe to być wskaźnik cyfrowy, który nazywamy f pr. [Hz] i łączymy z wyjściem Rate (po prawej stronie) funkcji AInScFg. 6. W następnym kroku musimy zająć się obsługą wyjścia ADData funkcji AInScFg. PoniewaŜ wartości wyjściowe tej funkcji są liczbami całkowitymi z zakresu od 0 do 2 n -1 (n rozdzielczość przetwornika A/C) naleŝy dokonać ich konwersji na wartość napięcia. MoŜna do tego wykorzystać funkcję ScaleArr, która dokonuje konwersji wejściowych wartości całkowitoliczbowych zapisanych w tablicy ADData na wartości rzeczywiste z zakresu Rys.2. Parametry funkcji ScaleArr podanego na wejścia Min i Max. Funkcja ScaleArr dodatkowo wymaga podania czy wartości ADData zapisane są na 12 czy na 16 bitach. Funkcję ScaleArr pobieramy z podgrupy funkcji Signal Conditioning grupy Uniwersal Library i umieszczamy na prawo od funkcji AIn- ScFg. Następnie szpulką łączymy wyjście ADData AInScFg z analogicznym wejściem funkcji ScaleArr. Do wejścia Min i Max funkcji ScaleArr podłączymy natomiast wartości stałe -5 i 5, poniewaŝ taki jest domyślny zakres napięć wejściowych naszej karty pomiarowej. Do wejścia 16 or 12 bit podłączamy wyjście z dowolnej kontrolki typu boolean umieszczonej na panelu uŝytkownika i opisanej 12/16 bit. 3

7. W oscyloskopie do obserwacji badanego sygnału niezbędny jest oczywiście ekran, do którego budowy wykorzystamy instrument o nazwie Waveform Graph. SłuŜy on do wykreślania przebiegów czasowych i znajduje się w z grupie Graph palety Controls. Po umieszczeniu Waveform Graph na panelu uŝytkownika wracamy do panelu programu, gdzie konieczne będzie odpowiednie przygotowanie danych dla Waveform Graph. Dane te muszą mieć postać wiązki (bundle) złoŝonej z: wartości początkowej x 0 współrzędnej x wykresu, przyrostu x współrzędnej x wykresu, właściwych danych kreślonego przebiegu zapisanych w tablicy y. Taką wiązkę tworzymy wykorzystując element Bundle z grupy Cluster. Po umieszczeniu go w panelu programu ma on tylko dwa wejścia, dlatego konieczne jest dodanie mu jeszcze jednego (ustawiamy kursor na lewej części Bundle, klikamy prawym klawiszem myszki i wybieramy Add Input ). Następnie łączymy wyjście Val funkcji ScaleArr z dolnym wejściem Bundle. Do górnego wejścia dołączamy stałą o wartości 0, poniewaŝ chcemy, Ŝeby oś czasu na ekranie miała początek w zerze. Natomiast na wejście środkowe naleŝy podać długość okresu próbkowania tzn. odwrotność okresu próbkowania. PoniewaŜ chcemy, Ŝeby skala czasowa ekranu była w milisekundach dlatego okres próbkowania równieŝ musi być w milisekundach. Taką wartość otrzymamy dzieląc Czas obserwacji [ms] przez Liczbę próbek. PoniewaŜ odwrotne dzielenie nasz program juŝ wykonuje (patrz pkt.4), dlatego wystarczy obliczyć jego odwrotność (wykorzystując operator Reciprocal z grupy Numeric ), i podłączyć do środkowego wejścia Bundle. Teraz wystarczy tylko połączyć wyjście output cluster elementu Bundle z wejściem Waveform Graph i tor przetwarzania naszego oscyloskopu jest gotowy. 8. Następnie musimy zapewnić ciągłą pracę naszego oscyloskopu przez umieszczenie napisanego przez nas programu wewnątrz pętli warunkowej While Loop, którą znajdziemy w grupie Structures palety Function. Pętlę wstawiamy do panelu program i do warunku jej zatrzymania podłączamy przycisk STOP, który wcześniej musimy umieścić na panelu uŝytkownika. Pamiętamy równieŝ o zaznaczeniu opcji Stop If True na warunku zakończenia pętli. 9. Zanim uruchomimy nasz oscyloskop naleŝy jeszcze tak skonfigurować instrument Waveform Graph, Ŝeby obraz sygnału na ekranie był zawsze czytelnie wyświetlany bez konieczności ręcznego skalowania obrazu. Taki efekt uzyskamy ustawiając dla obu osi opcje Auto Scale, Loose Fit i Visible Scale Label oraz wpisując dla osi x nazwę t [ms] a dla osi y nazwę U [V]. Aby obsługa oscyloskopu była prosta i wygodna naleŝy jeszcze uporządkować rozmieszczenie elementów na panelu i zmienić ich rozmiary. Tak zbudowany program został przedstawiony na rysunkach poniŝej. 4

Literatura: 1. National Instruments Corporation: LabView User Manual, November 2001 Edition. 2. W. Tłaczała : Środowisko LabVIEW w eksperymencie wspomaganym komputerowo. WNT, Warszawa 2002 5

Imię i Nazwisko. Rok... Grupa.. Data: Podstawy programowania w środowisku LabVIEW, projekt oscyloskopu cyfrowego Sprawozdanie Zadania do wykonania: 1. Zbudować wg powyŝszych wskazówek działający oscyloskop. 2. Ustawić nr karty pomiarowej na 0, a przełącznik 12/16 bit na 16 bit. 3. Wpisać liczbę próbek 200 i dokonać obserwacji sygnałów okresowych z kanałów od 0 do 4. Zmieniając liczbę próbek na 199 i 201 sprawdzić kierunek przesuwania sygnału na ekranie. 4. Ustawić nr karty pomiarowej na 1, nr kanału na 0, a przełącznik 12/16 bit na 12 bit. 5. Podłączyć do zacisków analogowego wejścia karty generator i dokonać obserwacji sygnałów wytwarzanych przez generator. 6. Sprawdzić działanie suwaka czasu obserwacji i wpływ jego ustawienia na częstotliwość próbkowania. 7. Dla trzech ustawień czasu obserwacji zanotować w tabeli uzyskaną częstotliwość próbkowania i sprawdzić czy spełniona jest zaleŝność: f pr = liczba próbek / czas obserwacji (1) czas obserwacji [ms] liczba próbek Uzyskana f pr [Hz] Obliczona wg (1) f pr [Hz] 8. Do sprawozdania dołączyć wydruki panelu uŝytkownika i panelu programu. Wnioski: 6