Podstawy programowania w środowisku LabVIEW,

projekt analizatora widma

Celem ćwiczenia jest doskonalenie umiejętności tworzenia typowych aplikacji w środowisku

LabVIEW na przykładzie projektu witrualnego analizatora widma. Analizator widma zostanie zbu-

dowany w oparciu o oscyloskop cyfrowy będący przedmiotem ćwiczenia nr 8, i będzie umoŜliwiał

równoczesną obserwację sygnału i jego widma częstotliwościowego.

Projektowany analizator powinien na bieŜąco dokonywać analizy częstotliwościowej sygnału

obserwowanego na ekranie oscyloskopu cyfrowego. Spośród wielu instrumentów przeznaczonych do

analizy częstotliwościowej, dostępnych w bibliotekach programu LabVIEW w naszym analizatorze

zastosujemy instrument o nazwie Amplitude and Phase Spectrum (rys.1) dostępny w podgrupie

Frequency Domain podgrupy Signal Processing grupy Analyse. Grupa Analyse widoczna jest na pa-

nelu funkcji, jeŜeli przy pomocy ikonki „Options” w oknie Functions ustawimy dla „Palette View”

opcję „default”.

Rys.1.Struktura instrumentu Amplitude and Phase Spectrum

Amplitude and Phase Spectrum jest instrumentem obliczający widmo amplitudowe i fazowe rzeczy-

wistego sygnału czasowego doprowadzonego do wejścia „Signal (V)”. Wartości skuteczne amplitud

składowych widma dostępne są na wyjściu „Amp Spectrum Mag (Vrms)” natomiast kąty fazowe

tych składowych obliczone w radianach dostępne są na wyjściu „Amp Spectrum Phase (radians)”.

Fazy mogą być obliczone w formie rozwiniętej jeśli wejście „unwrap phase (T)” jest ustawione jako

„True”- w przeciwnym wypadku są przedstawiane jako wartości z zakresu od -π do π. Do wejścia

„dt” naleŜy wprowadzić podaną w sekundach wartość okresu próbkowania sygnału. Na wyjściu „df”

dostępna jest w hercach wartość rozdzielczości częstotliwościowej obliczonego widma.

Część praktyczna

1. Po uruchomieniu programu LabVIEW wybieramy „Open VI” i wczytujemy nasz wirtualny oscy-

loskop cyfrowy napisany na ćwiczeniu nr 8. Na wstępie dobrze jest zapisać wczytany program

pod nową nazwą np.: „Analizator.vi”.

2. PoniewaŜ analizator tak jak oscyloskop będzie pracował w sposób cykliczny, na początku musi-

my w panelu programu powiększyć wielkość pętli warunkowej „While do” tak aby moŜna było

wewnątrz niej umieścić kilka dodatkowych elementów analizatora. Kolejny krok to umieszczenie

w programie instrumentu Amplitude and Phase Spectrum. Znajduje się on w podgrupie Frequen-

cy Domain podgrupy Signal Processing grupy Analyse. Grupa Analyse widoczna będzie na pane-

lu funkcji, jeŜeli przy pomocy ikonki „Options” w oknie Functions wybierzemy dla „Palette

1

View” opcję „default”. Instrument Amplitude and Phase Spectrum umieszczamy na prawo od

pozostałych elementów na panelu programu. Następnie szpulką łączymy wejście „Signal (V)”

wstawionego elementu z wyjściem „Val” funkcji ScaleArr. Do wejścia „dt” natomiast musimy

wprowadzić wartość okresu próbkowania w sekundach. W naszym programie okres próbkowania

w milisekundach jest dostępny na środkowym wejściu elementu „Bundle” poprzedzającym

„Ekran”. Wystarczy wobec tego pomnoŜyć go przez 0,001 (lub podzielić przez 1000) i moŜna go

wprowadzić do „dt”. Aby moŜliwe było obserwowanie widma fazowego w formie rozwiniętej

lub nie - do wejścia „unwrap phase (T)” naleŜy dołączyć logiczny sygnał sterujący z dowolnego

przełącznika typu boolean umieszczonego na panelu uŜytkownika i nazwanego „Rozw. fazy”.

3. W analizatorze do obserwacji widma sygnału niezbędny jest oczywiście ekran, do którego budo-

wy wykorzystamy instrument o nazwie „Waveform Graph”, który wstawiamy z grupy „Graph”

palety „Controls” do panelu uŜytkownika, najlepiej powyŜej lub poniŜej ekranu oscyloskopu. Na-

zywamy go „Widmo”, jego osie opisujemy odpowiednio jako „f [Hz]” i „Amplituda [V]”. 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ć format „Waveform” tzn zawierać:

• wartość początkową „t0” współrzędnej poziomej wykresu,

• przyrost „dt” współrzędnej poziomej wykresu,

• właściwe dane kreślonego przebiegu zapisane w tablicy „Y”.

Taką postać danych moŜemy uzyskać wykorzystując element „Build Waveform” z grupy „Wave-

form”. Po umieszczeniu go w panelu programu ma on dwa wejścia, górne do którego moŜna

wprowadzić gotową postać danych typu „waveform” i dolne oznaczone „t0”. Konieczne jest do-

danie mu jeszcze jednego wejścia (ustawiamy kursor na lewej części „Build Waveform”, klika-

my prawym klawiszem myszki i wybieramy „Add Element”). Teraz musimy zmienić oznaczenia

obu wejść, które nazywają się „t0”. W tym celu ustawiamy kursor na pierwszym „t0”, klikamy

prawym klawiszem myszki i przy pomocy „Select Item” wybieramy „Y”. Dla drugiego „t0” w

ten sam sposób wybieramy „dt”. Następnie łączymy wyjście „Amp Spectrum Mag (Vrms)” in-

strumentu Amplitude and Phase Spectrum z wejściem „Y” elementu „Build Waveform”. Wyjście

„df” instrumentu Amplitude and Phase Spectrum łączymy natomiast z wejściem „dt” elementu

„Build Waveform”, poniewaŜ „df” jest przyrostem współrzędnej poziomej wykresu widma. War-

tości „t0” nie ma potrzeby ustawiać na „0” poniewaŜ jest to wartość domyślana. Pozostaje jeszcze

połączenie wyjścia „Build Waveform” z wejściem „Widma”.

4. Identycznie jak w pkt.3. postępujemy aby umieścić na panelu uŜytkownika ekranu z widmem

fazowym. Jeśli znajduje się on bezpośrednio nad lub pod ekranem widma amplitudowego to

moŜna zrezygnować na nim z osi częstotliwości. Oczywiście widmo fazowe pobieramy z wyjścia

„Amp Spectrum Phase (radians) instrumentu Amplitude and Phase Spectrum.

2

5. W tym momencie analizator moŜe juŜ prawidłowo pracować, ale moŜna go jeszcze udoskonalić,

tak aby na przykład podawał nam jaka jest aktualnie podstawowa częstotliwość analizowanego

sygnału. Do tego celu wykorzystamy instrument o nazwie Harmonic Analyzer (rys.2), który mo-

Ŝemy znaleźć w tej samej podgrupie Frequency Domain podgrupy Signal Processing grupy Ana-

lyse. Jest to instrument znajdujący w widmie sygnału podanym na wejście „Auto Power Spec-

trum” częstotliwość podstawową i jej harmoniczne (całkowite wielokrotności) oraz obliczający

Rys.2. Struktura instrumentu Harmonic Analyzer

wartość zniekształceń sygnału w postaci współczynników THD (Total Harmonic Distortion) i

THD+Noise. Po umieszczeniu tego instrumentu w programie, dla naszych potrzeb wystarczy gdy

wprowadzimy informacje tylko do dwóch jego wejść. Do wejścia „Auto Power Spectrum” musi-

my oczywiście wprowadzić widmo z wyjścia „Amp Spectrum Mag (Vrms)” instrumentu Ampli-

tude and Phase Spectrum. Natomiast do wejścia „Sampling Rate” wprowadzamy częstotliwość

próbkowania czyli musimy obliczyć odwrotność wprowadzonego do Amplitude and Phase Spec-

trum okresu próbkowania. Pozostałe nie obsadzone wejścia instrumentu Harmonic Analyzer

przyjmą domyślne wartości, które dla naszej analizy są odpowiednie. PoniewaŜ interesuje nas

jedynie jaka jest podstawowa częstotliwość analizowanego sygnału a na wyjściu „Harmonic

Frequencies” udostępniana jest tablica wszystkich harmonicznych widma począwszy od podsta-

wowej, dlatego musimy z tej tablicy pobrać tylko pierwszy element. Wykorzystamy do tego

funkcję Index Array (z grupy Array), która zwraca z n -wymiarowej tablicy podanej na jej wej-

ście element o podanym indeksie. W naszym przypadku interesująca nas częstotliwość podsta-

wowa w jednowymiarowej tablicy „Harmonic Frequencies” ma indeks nr 0, i taką stałą wartość

podłączamy do wejścia „Index” funkcji „Index Array”. Oczywiście nie zapominamy o podłącze-

niu do jej wejścia „Array” wyjścia „Harmonic Frequencies”. śeby moŜna było zobaczyć jaka jest

to częstotliwość musimy jeszcze do panelu uŜytkownika wstawić Digital Indicator, nazwać go „f1

[Hz]” i połączyć z wyjściem „Element” funkcji „Index Array”.

6. Zanim uruchomimy nasz analizator naleŜy jeszcze tak skonfigurować instrumenty „Waveform

Graph” (słuŜące do wyświetlania widm amplitudowego i fazowego), Ŝeby obraz widma na ekra-

nie 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”. Aby

obsługa analizatora była prosta i wygodna naleŜy jeszcze uporządkować rozmieszczenie elemen-

tów na panelu i zmienić ich rozmiary. Tak zbudowany program został przedstawiony na rysun-

kach poniŜej.

Literatura:

1. National Instruments Corporation: LabView User Manual, November 2001 Edition.

3

2. W. Tłaczała : Ś rodowisko LabVIEW w eksperymencie wspomaganym komputerowo. WNT,

Warszawa 2002

4

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

2. Ustawić nr karty pomiarowej na 0, a przełącznik 12/16 bit na 16 bit.

3. Dokonać przy jego uŜyciu analizy sygnałów: sinusoidalnego i prostokątnego o róŜnym czasie

trwania (róŜnej liczbie próbek).

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ć dla kilku przypadków czy częstotliwość podstawowa f1 wskazywana przez anali-

zator jest poprawna, tzn. porównać z długością okresu sygnału na ekranie oscyloskopu wie-

dząc, Ŝe:

frsygnału = liczba widocznych cykli / czas ich trwania (1)

7. Dla trzech ustawień czasu obserwacji zanotować w tabeli wskazywaną przez analizator czę-

stotliwość podstawową sygnału i sprawdzić czy zgadza się obliczoną wg wzoru (1).

czas trwania

liczba widocz-

Wskazywana czę sto-

Obliczona wg (1)

cykli [ms]

nych cykli

tliwość f1 [Hz]

fsygnału [Hz]

8. Do sprawozdania dołączyć wydruki panelu uŜytkownika i panelu programu.

Wnioski:

5