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

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

Pobierz i rozpakuj dostarczony przykładowy plik digital_io.zip, a następnie kliknij na niego dwukrotnie, aby otworzyć go w LabVIEW Community. Wszystkie komponenty użyte w przykładzie można również użyć we własnej aplikacji VI – sprawdź sam co jeszcze możesz z nimi zrobić.

Aby uzyskać dostęp do cyfrowych pinów wejścia/wyjścia urządzenia testowo-pomiarowego w oprogramowaniu LabVIEW, możesz wykorzystać bloki Sub VI dostępne w Measurement I/ODigilent WF VIsDig container:

  • Initialize: umożliwia użytkownikowi wybranie urządzenia testowo-pomiarowego Digilent i wysyła funkcję obsługi urządzenia do kolejnych bloków Sub VI.
  • Read: służy do odczytu stanów cyfrowych linii we/wy.
  • Write: służy do ustawiania stanów cyfrowych linii we/wy.
  • Close: wyłącza instrument po zakończeniu pracy programu, zwalniając go dla innego oprogramowania
  • Dostępne są również inne bloki Sub VI przeznaczone m.in. do dodawania buforów trójstanowych do linii we/wy, resetowania przyrządu lub pobierania informacji o stanie linii trójstanowych/statycznych (nieużywane w przykładowym programie).

Panel przedni

Panel aplikacji VI zawiera przycisk Run (1) oraz sam panel (3). W podanym przykładzie panel podzielono na trzy części. W górnej części znajduje się rozwijana lista Device, która służy do wyboru urządzenia testowo-pomiarowego. Znajduje się tu również przycisk Stop (2). Za pomocą tego przycisku można zatrzymać działanie programu oraz ustawić wszystkie cyfrowe linie w stanie niskim.

Dolna część zawiera suwak sterowania w zakresie od 0 do 16, a także 16 wirtualnych diod LED, z których każdą nazwano tak, jak odpowiadająca jej cyfrowa linia we/wy. Gdy program jest uruchomiony, suwak określa ile linii cyfrowych będzie w stanie wysokim. Przesuwając suwak można zmienić liczbę linii ustawionych w tym stanie. Wirtualne diody LED wskazują czy linia jest w stanie wysokim czy niskim – zapalona oznacza stan wysoki, a zgaszona – niski.

Diagram blokowy

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

W tym przykładzie schemat blokowy został podzielony na trzy części. Pierwsza część, o nazwie Device selection and initialization, zawiera rozwijaną listę Device. Program porównuje dane wyjściowe ze wstępnie zdefiniowanymi ciągami znaków i inicjalizuje urządzenie o wybranej nazwie. Część ta ma zero sygnałów wejściowych i dwa sygnały wyjściowe: funkcję obsługi urządzenia i sygnał błędu.

Pętla programu

Następna część znajduje się w pętli while. Program powtarza ją aż do spełnienia określonego warunku, z czasem między iteracjami równym 100 ms. Ta część zawiera sygnały wejściowe pochodzące z poprzedniej sekcji. Sygnał błędu i obsługa urządzenia są podłączone do bloku DIO-Write, który otrzymuje również dane z suwaka wejściowego. Program odczytuje liczbę ustawianą na suwaku i konwertuje na tablicę boolowską, a następnie jej zawartość zapisuje na cyfrowych liniach we/wy. Sygnały błędu i obsługi podłączono do bloku DIO-Read. Za pomocą tego bloku program odczytuje wartości cyfrowych linii od 0 do 15, a następnie konwertuje tablicę boolowską na liczbę. Liczba ta jest porównywana z wartościami stałymi, a wynik każdego porównania decyduje o stanie wirtualnych diod LED. Pętla kończy sie w przypadku wystąpienia błędu lub naciśnięcia przycisku Stop na panelu przednim. Obsługa instrumentu i błędy są wysyłane do następnej części.

Jeśli pętla zostanie zakończona, stan wszystkich wirtualnych diod LED jest ustawiany na niski (diody są wyłączone) za pomocą kontrolek Property Node, a następnie tablica wypełniona zerami jest zapisywana na cyfrowych liniach we/wy (tzn. wszystkie linie są ustawiane w stan niski). Przyrząd jest wyłączany, zwalniając go dla innych programów, a następnie wyświetlany jest komunikat o błędzie, jeśli jest to konieczne.

Aby uruchomić aplikację VI, wybierz na panelu urządzenie testowo-pomiarowe, a następnie naciśnij przycisk Run.

Teraz za pomocą suwaka można ustawić stan cyfrowych linii we/wy od 0 do 15. Program również odczytuje stan wyprowadzeń i wyświetla za pomocą wirtualnych diod LED. Program można zakończyć za pomocą przycisku Stop dostępnym na panelu.

O autorze