VI od podstaw Przybliżony czas ćwiczenia Poniższe ćwiczenie ukończysz w czasie 30 minut. Wstęp Jest wiele szablonów VI, które możesz wybrać i rozbudować, aby stworzyć aplikację dostosowaną do własnych potrzeb. Jednak może zdarzyć się sytuacja, w której twoich wymagań nie spełnia żaden szablon. To ćwiczenie nauczy cię, jak stworzyć i dostosować własny VI od podstaw. Przegląd ćwiczenia W tym ćwiczeniu otworzysz pusty VI, dodasz odpowiednie struktury diagramu blokowego. Głównym celem jest stworzenie VI generującego sygnał, redukującego ilość próbek dla sygnału oraz wyświetlającego wyniki na panelu przednim. 1
Gotowe ćwiczenie 2
Krok po kroku 1. Otwieranie pustego VI Jeśli żaden z dostępnych szablonów nie jest pomocny w tworzeniu danego VI, możesz stworzyć pusty projekt i uzupełnić go o odpowiednie elementy, spełniające określone przez ciebie zadania. Wykonaj poniższe kroki, aby otworzyć pusty VI: a. W oknie Getting Started, kliknij w odnośnik Blank VI lub skorzystaj ze skrótu <Ctrl+N> na klawiaturze. Otworzy się puste okna panelu przedniego oraz diagramu blokowego. Możesz również otworzyć pusty VI wybierając z menu File New VI, lub klikając w File New i wybierając Blank VI z listy Create New. b. Aby wyświetlić panel Controls w oknie panelu przedniego (Front Panel), kliknij prawy przycisk myszy. Panel pojawi się z ikonką szpilki w lewym górnym rogu i zniknie po kliknięciu w dowolne miejsce na panelu przednim. Aby pojawił się na stałe, kliknij ikonkę szpilki. 3
2. Dodawanie Express VI generującego sygnał. Express VI to inaczej bloczki budujące diagram blokowy i odpowiadające za konkretne działania. Wykonaj poniższe kroki, aby znaleźć i dodać do diagramu Express VI odpowiadający za generowanie sygnału: a. Aby uzyskać pomoc, kliknij przycisk Show Context Help Window w oknie panelu przedniego lub diagramu blokowego. Możesz również wybrać z menu obydwu okien Help Show Context Help. Możesz również wyświetlić okno pomocy podręcznej korzystając ze skrótu <Ctrl+H> na klawiaturze. b. Przejdź do okna diagramu blokowego. W panelu Functions wejdź do kategorii Express Input. Jeżeli pomoc podręczna jest włączona, po najechaniu kursorem na bloczek, wyświetlą się szczegółowe informacje na jego temat. c. Korzystając z informacji wyświetlanych w oknie pomocy podręcznej, znajdź bloczek generujący sygnał sinusoidalny. Nie zamykaj na razie okna pomocy. d. Wybierz bloczek Simulate Signal i umieść go na diagramie blokowym. Okno ustawień bloczku powinno pojawić się automatycznie. e. Przesuń kursor nad dowolny parametr, na przykład częstotliwość (Frequency), lub amplitudę (Amplitude). Zauważ, że pomoc podręczna wyświetli informacje na temat każdego z nich. 4
f. Zmień parametry bloczku Simulate Signal tak, aby generował on sygnał sinusoidalny o częstotliwości 10.7 i amplitudzie równej 2. W okienku Result Preview możesz zobaczyć charakterystykę sygnału. g. Kliknij przycisk OK, aby zapisać zmiany i wrócić do diagramu blokowego. h. Przesuń kursor nad bloczek Simulate Signal i przeczytaj informacje w oknie Context Help. Okno pomocy podręcznej wyświetli między innymi parametry, które zadaliśmy. i. Zapisz VI pod nazwą Custom VI.vi. 5
3. Szukanie pomocy oraz modyfikowanie sygnału. Wykonaj poniższe kroki, aby korzystając z pomocy znaleźć bloczek redukujący ilość próbek sygnału. a. Przesuń kursor nad bloczek Simulate Signal. W oknie pomocy podręcznej kliknij w odnośnik Detailed help. Aby go zobaczyć, musisz przewinąć okno pomocy. Odnośnik ten znajduje się na samym końcu. Możesz również uzyskać dostęp do szczegółowej pomocy klikając prawym przyciskiem myszy na bloczku lub funkcji i wybierając z menu Help, lub klikając na górnym pasku Help Search the LabVIEW Help. b. Przejdź do zakładki Wyszukaj (Search) i wpisz sample compression (redukcja ilości próbek) w polu tekstowym. Wciśnij <enter>. c. Kliknij podwójnie w Sample Compression Express VI. Zostanie wyświetlona pomoc. 6
d. Po przeczytaniu informacji na temat bloczku, kliknij przycisk Add to the block diagram. e. Przesuń kursor na okno diagramu blokowego. f. Kliknij, aby umieścić bloczek na diagramie. Postaraj się, aby umiejscowić go z prawej strony bloczku Simulate Signal. Przeciągając strzałkę na dole bloczku, odsłoń dwie pozycje. Klikając w nie, kiedy bloczek nie jest zaznaczony, możemy zmienić, które pozycje będą wyświetlane. Jako pierwszą pozycję, wybierz Signals, jako drugą Mean. g. W oknie konfiguracji bloczka, ustaw wartość Reduction factor na 25. Zaznacz opcję Mean - na wyjściu bloczka będzie dawana średnia z 25 próbek. h. Wciśnij przycisk OK, aby zapisać zmiany. i. Połącz wyjście Sine na Simulate Signal z wejściem Signals na Sample Compression. 7
4. Dobór pozycji wejść i wyjść w bloczku. W poprzednim ćwiczeniu dodawałeś pokrętła i wskaźniki wykorzystując okienko Controls w oknie panelu przedniego. Możesz to zrobić również z poziomu diagramu blokowego. Wykonaj poniższe kroki, aby tego dokonać: a. W oknie diagramu blokowego, kliknij prawym przyciskiem myszy na pozycji Mean w bloczku i wybierz Create Numeric Indicator. Wskaźnik zostanie dodany do diagramu blokowego. b. Kliknij prawym przyciskiem myszy na pozycji Mean i wybierz z menu Insert Input/Output, aby dodać pozycję Enabled, włączającą lub wyłączającą działanie bloczku. W poprzednim ćwiczeniu nauczyłeś się, jak dodawać pozycje wejściowe i wyjściowe poprzez rozciągnięcie bloczku w dół. Używanie menu dostępnego po naciśnięciu prawego przycisku myszy jest kolejną metodą, aby dodać pozycję do bloczku. c. Kliknij prawym przyciskiem myszy w pozycję Enable i wybierz Create Control. Do diagramu blokowego zostanie dodany przełącznik typu boolean (zadający wartości true lub false). Krawędź przycisków, pokręteł i przełączników jest grubsza od krawędzi wskaźników. Możesz też zauważyć, że strzałka na tych pierwszych jest po prawej stronie, symbolizując wyjście z kontrolera, natomiast na wskaźnikach jest ona umieszczona po lewej stronie. 8
d. Kliknij prawym przyciskiem myszy na przewodzie łączącym wyjście Sine bloczku Simulate Signal z wejściem Signals bloczku Sample Compression. Z menu wybierz Create Graph Indicator. e. Połącz ze sobą wyjście Mean i wejście wyświetlacza (Waveform Graph) o nazwie Sine. Zostanie automatycznie utworzone połączenie dwóch sygnałów (bloczek Merge Signals), umożliwiające porównanie ich na jednym wykresie. f. Kliknij okno panelu przedniego. Wskaźniki i przełączniki, które dodałeś w diagramie blokowym, pojawiły się na panelu. Ich nazwy odpowiadają wejściom i wyjściom, do których zostały podłączone. Jeżeli nie widzisz wszystkich przełączników, pokręteł, wskaźników, przewiń lub rozciągnij okno panelu przedniego. g. Rozmieść elementy tak jak pokazano na obrazku. Uruchom VI. h. Kliknij w przełącznik tak, aby zmienił pozycję. Uruchom VI ponownie. Zauważ, że zmieniła się wartość wskaźnika Mean. Również na wyświetlaczu nastąpiła zmiana. i. Zapisz VI. 9
5. Ustawienie VI tak, aby pracował do momentu zastopowania go przez użytkownika W aktualnym stanie, VI uruchamia się, wykonując tylko jeden krok generując jeden sygnał. Po wykonaniu tego pojedynczego kroku kończy pracę. Aby program wykonywał się ciągle, należy umieścić go w pętli (While Loop). Wykonaj poniższe kroki, aby dodać pętlę do diagramu blokowego. a. Przejdź do panelu przedniego i uruchom program <Ctrl+R>. VI wykona jeden krok po czym zatrzyma swoje działanie. b. Kliknij w okno diagramu blokowego. c. W panelu Functions kliknij przycisk Search. d. Wpisz While w polu tekstowym i wciśnij <enter>. LabVIEW znajduje i wypisuje wszystkie pasujące rezultaty. Jeżeli wynikiem wyszukiwania jest kategoria narzędzi bądź funkcji, z lewej strony pojawi się ikonka folderu. Jeżeli przy wyniku pojawi się ikonka na błękitnym tle, jest to bloczek Express VI. e. Kliknij podwójnie w rezultat wyszukiwania o nazwie While Loop <<Execution Control>>, aby przejść do kategorii Execution Control, gdzie zostanie przez chwilę podświetlony pożądany bloczek. f. Wybierz bloczek While Loop. g. Kliknij w lewym górnym rogu diagramu blokowego i przeciągnij myszkę w prawy dolny róg. Zaznaczysz w ten sposób, które elementy ma zawierać pętla. Obejmij nią wszystkie elementy stworzonego VI. 10
h. Po objęciu wszystkich elementów, puść przycisk myszy. Pojawi się pętla While Loop, do której podłączony został automatycznie przycisk STOP zatrzymujący ją na żądanie użytkownika. Jeśli nie udało Ci się zamknąć wszystkich elementów w pętli, możesz je zaznaczyć i przeciągnąć do jej wnętrza. i. Przejdź do okna Front Panel i uruchom VI. VI będzie działać aż do momentu w którym naciśniesz przycisk STOP. j. Wciśnij przycisk STOP na panelu przednim i zapisz VI. 6. Korzystanie z okna Error List Window Jeżeli nie potrzebujesz któregoś z istniejących wskaźników na VI, możesz go usunąć. Wykonaj poniższe kroki, aby usunąć wskaźnik aktualnej wartości Mean z panelu przedniego: a. Będąc w oknie panelu przedniego, kliknij we wskaźnik Mean i wciśnij <delete>. b. Zmień okno na diagram blokowy. c. Połączenie, które doprowadzało sygnał do wskaźnika, zmieniło wygląd na linię przerywaną, z czerwonym X pośrodku. Przycisk Run zmienił wygląd na przerwaną strzałkę, uniemożliwiając uruchomienie niepoprawnego VI. 11
d. Kliknij przerwaną strzałkę przycisku Run, aby wyświetlić okno błędów Error List Window. Okno to wyświetla wszystkie błędy i szczegółowe informacje na temat każdego z nich. e. Wybierz Wire: Wire Has loose ends. (brak podłączenia końcówek) i kliknij przycisk Help, aby uzyskać więcej informacji. Możesz również nakierować kursor na czerwony znak X na przerwanym przewodzie, aby wyświetlić powód błędu. Informacja ta wyświetli się również w oknie pomocy podręcznej, jeśli ta jest aktualnie włączona. f. Klikając podwójnie na Wire: Wire Has loose ends, zaznaczysz przerwane połączenie. g. Wciśnij <Ctrl+B>, aby usunąć lub naprawić przerwane połączenie. Wciśnięcie tej kombinacji powoduje usunięcie wszystkich przerwanych połączeń diagramu blokowego. Wciśnij <delete>, aby usunąć tylko zaznaczone połączenie. h. Wybierz View Error List, aby wyświetlić okno błędów. Nie powinny zostać wyświetlone żadne błędy. Możesz również otworzyć okno błędów wciskając kombinację <Ctrl+L>. i. Wciśnij przycisk Close, aby zamknąć okno błędów. Przycisk Run powrócił do standardowego wyglądu. 12
7. Dopasowywanie prędkości działania Aby spowolnić wyświetlanie punktów na wykresie, możesz dodać opóźnienie czasowe w diagramie blokowym. Aby tego dokonać, postępuj według poniższych kroków: a. W oknie diagramu blokowego, w panelu Functions poszukaj bloczku Time Delay i umieść go wewnątrz pętli While Loop. Użyjesz go do określenia tempa działania pętli. b. Wprowadź wartość 0.25 w polu tekstowym Time Delay (seconds). Ten czas informuje ile będzie trwała jedna iteracja pętli. W tym wypadku pętla wykona się czterokrotnie w ciągu jednej sekundy. c. Wciśnij przycisk OK, aby zapisać zmiany. d. Przełącz widok na panel przedni i uruchom VI. e. Kliknij w przełącznik Enable i zobacz jak zachowuje się wykres. Jeśli przełącznik Enable jest załączony, wyświetlacz pokaże sygnał ze zredukowaną ilością próbek. Jeżeli jest rozłączony widoczny będzie tylko rzeczywisty sygnał sinusoidalny. f. Wciśnij przycisk STOP, aby zatrzymać VI. 13
8. Wyświetlanie danych w tabeli Wykonaj poniższe kroki, aby wyświetlić wiele zczytanych wartości na panelu przednim. a. W oknie Front Panel, znajdź wskaźnik Express Table i umieść go na panelu. b. Przejdź do diagramu blokowego. LabVIEW stworzył i połączył automatycznie dwa potrzebne bloczki. c. Zaznacz stworzone właśnie bloczki. d. Przeciągnij zaznaczone bloczki do wewnątrz pętli While Loop. Postaraj się umieścić je po prawej stronie bloczku Sample Compression. Kiedy przeciągniesz element do środka pętli tuż przy jej krawędzi, obszar obejmujący pętlę zostanie automatycznie poszerzony, aby zrobić miejsce nowemu elementowi. e. Połącz wyjście Mean bloczku Sample Compression, z wejściem Signals na bloczku Build Table. f. Przejdź do panelu przedniego i uruchom VI. g. Gdy przełącznik Enable jest załączony, w tabeli co 0.25 sekundy w tabeli będzie rejestrowana średnia z 25 próbek sinusa. Jeśli przełącznik jest rozłączony, w tabeli nie zostanie zapisana żadna wartość. h. Wciśnij STOP, aby zatrzymać działanie VI. i. Wypróbuj różne opcje tabeli, klikając w nią prawym przyciskiem myszy i wybierając Properties. j. Zapisz i wyjdź z VI. 14