Oprogramowanie NI LabVIEW i przenośne urządzenia testowo-pomiarowe Digilent

Przykład obsługi wejścia i wyjścia analogowego

Pobierz i rozpakuj przykładowy plik frequency_sweep.zip, a następnie kliknij dwukrotnie, aby otworzyć go w LabVIEW Community. Wszystkie komponenty użyte w przykładzie mogą być użyte we własnej aplikacji VI – sprawdź sam co jeszcze możesz z nimi zrobić.

Aby wykorzystać generator funkcyjny w aplikacji LabVIEW należy dodać do diagramu blokowego wbudowane funkcje Sub VI dostępne w menu Measurement I/ODigilent WF VIsFGEN container:

  • Initialize: umożliwia użytkownikowi wybranie urządzenia testowo-pomiarowego Digilent i przekazuje obsługę urządzenia do innego bloku Sub VI.
  • Standard: służy do ustawiania kształtu sygnału, amplitudy funkcji, składowej stałej, współczynnika wypełnienia, a także częstotliwości.
  • Run: służy do uruchamiania generatora funkcyjnego.
  • Stop: zatrzymuje generator.
  • Close: wyłącza urządzenie po zakończeniu działania programu, zwalniając go dla innego oprogramowania (żaden instrument nie może być sterowany przez dwa programy jednocześnie).
  • Dostępne są również inne funkcje do generowania dowolnych przebiegów, zwracające dane o stanie generatora, odpowiedzialne za resetowanie instrumentu itd. (nie są używane w przykładowym programie).

Do obsługi oscyloskopu w LabVIEW również służą bloki Sub VI dostępne w Measurement I/ODigilent WF VIsMSO container po kliknięciu prawym przyciskiem myszki w diagramie blokowym:

  • Initialize: umożliwia wybranie urządzenia i przekazuje obsługę urządzenia do innego bloku Sub VI.
  • Read: służy do pobierania danych z wybranego kanału oscyloskopu.
  • Run: służy do uruchamiania oscyloskopu.
  • Stop: zatrzymuje oscyloskop.
  • Close: wyłącza instrument po zakończeniu pracy programu, zwalniając go dla innego oprogramowania (instrument nie może być sterowany przez dwa programy naraz).
  • Analog: umożliwia wybór kanału i ustawienie typu sprzężenia oraz tłumienia sondy (co może być przydatne w przypadku sond BNC).
  • Analog Edge: służy do ustawiania poziomu wyzwalania, zbocza wyzwalającego i histerezy dla wybranego kanału.
  • Dostępne są również inne funkcje do ustawiania właściwości kanału i wyzwalania, zwracania danych o stanie oscyloskopu, resetowania instrumentu itp. (nieużywane w przykładowym programie).

Panel przedni

Wirtualny przyrząd (VI) w programie LabVIEW składa się z dwóch części: panelu i schematu blokowego. Panel zawiera wszystkie kontrolki i wskaźniki do wprowadzania i odczytywania danych. Służy więc jako interfejs użytkownika podczas działania programu. Schemat blokowy zawiera bloki, które są obecne w panelu, ale także inne bloki, niezbędne do przetwarzania informacji i połączenia między tymi blokami. Można dodać nowy blok do obu okien, klikając prawym przyciskiem myszy puste miejsce w odpowiednim oknie i wybierając żądany element z biblioteki. Bloki już dostępne w oknie można modyfikować, klikając prawym przyciskiem myszy. Poniżej przedstawiono panel i schemat blokowy opisanego przykładu.

Panel, oprócz paska menu, ustawień wyrównania, przycisków wyszukiwania itp., zawiera również przycisk Run (1) oraz sam panel (3). Elementy sterujące i wskaźniki są umieszczone na panelu.

W podanym przykładzie panel jest podzielony na trzy części. W lewej górnej części znajduje się rozwijana lista Device, która służy do wyboru używanego urządzenia. Znajduje się tu również przycisk Stop (2). Za pomocą tego przycisku można zatrzymać zarówno działanie programu, jak i pracę oscyloskopu oraz generatora sygnałów.

Dolna lewa część zawiera wszystkie elementy sterujące dla generatora: rozwijane listy wyboru kanałów i funkcji, suwaki i pola tekstowe do ustawiania amplitudy i napięcia składowej stałej oraz pola tekstowe do ustawiania współczynnika wypełnienia, częstotliwości początkowej i końcowej oraz przyrostu podczas tzw. przemiatania częstotliwości.

Prawa część, Oscilloscope, zawiera cztery rozwijane listy do wyboru kanału oscyloskopu, ustawienia typu sprzężenia, zbocza wyzwalania i tłumienia sondy (domyślnie jest ustawione na 1X, powinno zostać zmodyfikowane jeśli używane są sondy BNC). Oprócz pól kontrolnych znajduje się również okienko wykresu: tutaj zostanie wyświetlony zmierzony sygnał. Zakres osi ustawiany jest automatycznie.

Diagram blokowy

Diagram blokowy zawiera przycisk Run (program można uruchomić również z tego miejsca) oraz sam panel. Bloki i struktury sterowania, wskaźników i przetwarzania danych są umieszczone w panelu i połączone ze sobą.

W tym przykładzie schemat blokowy podzielono na cztery części. Pierwsza część o nazwie Device selection zawiera rozwijaną listę Device i porównuje dane wyjściowe z wcześniej zdefiniowanymi ciągami znaków wysyłającymi wybraną nazwę urządzenia. Ta część ma zero sygnałów wejściowych i jeden wyjściowy – nazwę wybranego urządzenia, która jest później przekazywana do bloków inicjalizatora urządzenia.

Następna sekcja odpowiada za ustawienie przyrządów zgodnie z parametrami pobranymi z elementów sterujących panelu. Procesy konfiguracji instrumentów Wavegen i Scope są wykonywane równolegle.

W górnej części następuje inicjalizacja wybranego kanału przyrządu generatora, a następnie parametrów sygnału. Częstotliwość generowanego sygnału jest początkową częstotliwością przemiatania. Instrument Wavegen jest uruchamiany za pomocą bloku Run.

W dolnej części inicjalizowany jest oscyloskop, następnie wybierany jest kanał, ustawiane sprzężenie i tłumienie sondy. Przesunięcie pionowe jest równe składowej stałej ustawionej na generatorze, a zakres pionowy jest dwukrotnością amplitudy generowanego sygnału. Następnie układ wyzwalania dołączany jest do wybranego kanału, zbocze wyzwalania jest ustawiane zgodnie z elementem sterującym na panelu, natomiast poziom wyzwalania jest ustawiany na połowę amplitudy generowanego sygnału a histereza na 0,01 V. Zakresy osi okienka wykresu również ustawia się w tym miejscu: oś X obejmuje zakres od 0 do czasu pełnego okresu sygnału początkowego, a oś Y jest ustawiona w taki sposób, aby wyświetlić pełen przebieg.

Pętla główna

Następna część znajduje się w pętli while. Będzie więc powtarzana aż do spełnienia określonego warunku z czasem oczekiwania między iteracjami równym 10 ms. Ta część zawiera sygnały wejściowe obsługiwane przez instrument, sygnały błędów z poprzedniej sekcji, a także parametry generatora (współczynnik wypełnienia, częstotliwość początkowa, kształt sygnału, amplituda i składowa DC). Pętla zawiera blok Standard (ustawienia Wavegen), który otrzymuje jako parametry te same wartości co blok Standard w poprzedniej sekcji, ale częstotliwość jest zmieniana przy każdej iteracji, przy czym nowa częstotliwość jest obliczana jako suma częstotliwości początkowej oraz iloczynu między przyrostem częstotliwości a numerem iteracji pętli. Jeśli ta częstotliwość stanie się większa lub równa częstotliwości końcowej, pętla zostaje zakończona. Inne warunki, które powodują wyjście programu z pętli, to pojawienie się błędów lub naciśnięcie przycisku Stop na panelu.

Pętla zawiera również blok Run, który uruchamia oscyloskop i dokonuje pomiaru. Blok Read połączono ze wskaźnikiem danych analogowych, czyli okienkiem wykresu na panelu. Sygnały pochodzące z tej sekcji to jedynie sygnały błędów i obsługi urządzenia.

Jeśli pętla zostanie zakończona, działanie obu przyrządów zostaje zatrzymane i zamknięte, co pozwala zwolnić je dla innych programów. Dwa sygnały błędów są łączone i obsługiwane: jeśli wystąpiły błędy podczas wykonywania operacji, wyświetli się komunikat o błędzie.

Aby uruchomić VI, najpierw na panelu wybierz używane urządzenie testowo-pomiarowe, ustaw parametry generowanego przebiegu przemiatania częstotliwości, a następnie naciśnij przycisk Run. Pomiar można zatrzymać w dowolnym momencie przyciskiem Stop lub też może się zakończyć po osiągnięciu częstotliwości końcowej.

Aby przetestować przykład, podłącz kanał 1 oscyloskopu urządzenia testowo-pomiarowego (pomarańczowy przewód/złącze) do kanału 1 generatora (żółty przewód/złącze). W przypadku urządzeń korzystających z różnicowych kanałów wejściowych, takich jak Analog Discovery Studio z kablami MTE, należy podłączyć ujemny pin kanału 1 oscyloskopu (pomarańczowy przewód z białymi paskami) do uziemienia związanego z kanałem 1 generatora (czarny przewód).

O autorze