(Microsoft PowerPoint

Transkrypt

(Microsoft PowerPoint
Reprezentacja zmiennych numerycznych
W menu podręcznym wybieramy
Representation, a tam taki format zmiennej,
który nam jest potrzebny.
UWAGA! Trzeba zwracać uwagę na właściwy
dobór formatu zmiennych, aby niepotrzebnie
nie zwiększać rozmiaru aplikacji (zobacz
Numeric Data Types Table w pomocy
LabVIEW aby dowiedzieć się o wymaganiach
dotyczących rozmiaru pamięci potrzebnej na
przechowanie poszczególnych typów danych).
Prosta aplikacja
Aplikacja tworzona będzie interaktywnie w czasie
trwania wykładu, na slajdzie przedstawiono
jedynie jej końcowy wygląd.
Uwaga! Elementy na panelu czołowym jak i na
diagramie blokowym można w prosty sposób
kopiować metodą drag&drop. Przy przeciąganiu
elementu myszką należy wcisnąć klawisz Ctrl.)
Zmienne 1 i 2 ustawiamy jako Word (I16),
podobnie sumę i różnicę. Zmieniamy zakres
zmiennych 1 i 2 na od 0 do 255.
Do programu dodamy pętlę While Loop oraz
opóźnienie czasowe wykonania pętli Wait (ms),
100ms.
PRZEDYSKUTUJEMY JESZCZE, CO ZROBIĆ,
ABY PO PONOWNYM WCZYTANIU
APLIKACJI WYBRANE KONTROLKI MIAŁY
USTAWIONE DOMYŚLNE WARTOŚCI.
(Make Current Value(s) Default)
Tworzymy podprogram –subVI
Usuńmy pętlę While Loop i opóźnienie czasowe Wait (ms) oraz przycisk Stop.
Zapiszmy naszą prostą aplikację pod nową nazwą: prosta aplikacja subvi.vi.
Następnie zmieńmy wygląd ikony, tak aby symbolizowała ona możliwie jak
najbardziej funkcję lub procedurę, którą nasz podprogram będzie realizował.
Na ikonie wywołujemy prawym przyciskiem myszy funkcję Edit Icon
Tworzymy podprogram –subVI
Ustalimy wejścia i wyjścia naszego podprogramu, tak aby można go było
wykorzystać w programie nadrzędnym.
Na ikonie wywołujemy prawym przyciskiem myszy funkcję
Show Connector
Liczba prostokątów dobierana
jest domyślnie na podstawie
liczby wejść i wyjść dostępnych
na panelu czołowym. Prostokąty
po lewej stronie odpowiadają
wyjściom (controls), po prawej
wejściom (indicators).
Wybierając z Tools Palette
szpulke (o ile nie mamy
włączonego automatycznego
wybierania narzędzi z Tools
Palette) klikamy na wybrany
prostokąt w ikonie a następnie na
wybraną kontrolkę na panelu
czołowym. Po podłączeniu
wszystkich koniecznych wejść i
wyjść, wywołujemy ponownie
wygląd ikony (Show Icon) z
menu podręcznego ikony.
Tworzymy podprogram –subVI
Można teraz wykorzystać nasz podprogram w innym programie. Spróbujmy!
Aby wprowadzić nasz subVI
na diagram blokowy,
korzystamy z funkcji
Select a VI... z palety All
Functions
Potrzebne kontrolki tworzymy szybko,
wykorzystując funkcję Create
Control/Indicator z menu podręcznego
wywołanego na wybranym wejściu bądź wyjściu
naszego subVI (pamiętajmy, że wejście ikony
subVI to control, a wyjście to indicator!.
Następnie porządkujemy ikony na diagramie
blokowym oraz na panelu czołowym.
Tworzymy podprogram –subVI w trybie przyspieszonym!
Omówimy, jak na skróty zamienić część diagramu blokowego na subVI. Otwórzmy nasz
pierwszy program: prosta aplikacja.vi (powinien być w menu File/Recently Opened Files).
Na diagramie blokowym zaznaczamy część
schematu, z której chcemy stworzyć subVI. W
menu Edit wybieramy polecenie Create SubVI.
Nie zapomnijmy otworzyć panelu czołowego
nowego subVI (dwukrotne kliknięcie na jego
ikonie) i przeprowadzić edycję ikony. Na koniec
trzeba zapisać nowe subVI na dysku.
Tworzymy większy projekt
– zapisywanie podprogramów w bibliotece llb
Tworzone programy i podprogramy można przechowywać na dysku w postaci
oddzielnych plików z rozszerzeniem vi. Przy tworzeniu większej aplikacji, dla której
tworzymy swoje podprogramy, warto je wszystkie umieścić albo w jednym katalogu, albo
w jednym pliku, tzw. bibliotece llb. Plik ten można porównać do skompresowanego
archiwum zip, w którym przechowywane są podprogramy składające się na aplikację
główną, która to aplikacja również może być zapisana w tej samej bibliotece llb. Zaleca
się aby biblioteka llb nie przekraczała rozmiaru 1MB, ze względu na dłuższy czas dostępu
do skompresowanych plików vi.
Nową bibliotekę llb tworzymy przy pierwszym zapisywaniu naszej aplikacji lub
podprogramu ją tworzącego. Z menu File wybieramy polecenie Save lub Save as, a
następnie w wyświetlonym oknie wybieramy New VI Library. Wpisujemy nazwę nowo
tworzonej biblioteki i zatwierdzamy. Procedurę zobrazowano na następnym slajdzie.
Tworzymy większy projekt
– zapisywanie podprogramów w bibliotece llb
Wpisujemy nazwę naszego
programu, np. podprocedura
filtracji.vi
Wybieramy New VI Library
Wpisujemy nazwę biblioteki llb (nie jest
konieczne podawanie rozszerzenia llb).
Zatwierdzamy wybór.
Zadanie: zbudować wirtualny
termometr (symulator)
Stworzyć ikonę
Zapamiętać jako wartości domyślne
Konektor – kolor
odpowiada typowi
zmiennej!
Zapisać VI do nowej biblioteki tempmonitor.llb pod nazwą Termometr (symulacja).vi
Wykorzystanie
wirtualnego termometru
w nowym programie
Property Node
(patrz następny slajd)
UWAGA! Program zapisać pod
nazwą Monitor temperatury.vi
„Select a VI...” otwiera
okno dialogowe, w którym
można wybrać dowolny
przyrząd wirtualny VI.
Użyj go aby umieścić na
diagramie blokowym
wirtualny termometr.
Waveform Chart
Property Node
Property Node umożliwia zmianę wielu
parametrów i zachowań elementów panelu
czołowego w sposób programowy.
Wybieramy z menu podręcznego
(dla wybranego elementu – tutaj jest
to Waverorm Chart 2) polecenie
Create->Property Node
Standardowo wybierana jest własność
„Visible”
Property Node
Klikając na własności „Visible”
(lewy przycisk lub prawy – wtedy z menu
podręcznego wybrać „Properties”) wybieramy
własność „History Data”.
Standardowo mała strzałka widoczna na ikonie
umieszczona jest po lewej stronie, co oznacza,
że własność ustawiona jest do odczytu. Aby
zapisać coś do niej należy z menu podręcznego
wybrać polecenie „Change to Write”. Strzałka
pojawi się wtedy po stronie lewej własności.
W naszym przypadku wpisujemy do niej zerowy
wektor danych, wymazując tym samym zawartość
bufora pamięci wykresu Waveform Chart 2.
UWAGA! Należy zwrócić baczną uwagę na
kolejność przepływu danych (kolejność
„wykonywania” ikon), tak aby najpierw
wyczyszczony został bufor pamięci. Można np.
podłączyć property node do pętli, tak jak to
zrobione w przykładowej aplikacji Monitor
temperatury.vi
Mała przerwa w tworzeniu aplikacji
Wyjaśniamy różnicę pomiędzy Waveform Graph a Waveform Chart
Różnice zostaną omówione krok po kroku, przy
tworzeniu aplikacji, nieco innej niż ta,
widoczna na slajdzie. Dodatkowo, pojawi się
krótka wzmianka o funkcji property node (na
następnym slajdzie, gdzie pokażemy, w jaki
sposób programowo kasować stare dane z
Waveform Chart.
Mała przerwa w tworzeniu aplikacji
Wyjaśniamy różnicę pomiędzy Waveform Graph a Waveform Chart
Różnice zostaną omówione krok po kroku, przy tworzeniu aplikacji, nieco innej niż ta, widoczna na
slajdzie. Dodatkowo, pojawi się krótka wzmianka o funkcji property node.
Wystarczy kilkukrotnie uruchomić program aby
zobaczyć różnicę.
Bez
wykorzystania
Property Node
Z wykorzystaniem
Property Node
Zamiana Waveform Chart na Waveform Graph i konieczne do tego
celu modyfikacje diagramu blokowego
UWAGA! Program zapisać pod nazwą
Monitor temperatury (wersja1).vi
Przerywnik – wyjaśniamy jak formatować osie wykresu!
Szukać w All Functions/Analyze/Signal Processing/
Signal Generation/Sine Wave.vi
Wejście „f” dla funkcji Sine Wave.vi określa
częstotliwość znormalizowaną wyrażoną w
cyklach/l.próbek (cycles/samples). Domyślnie jest to
1/128. W przykładzie zastosowano takie przeliczenia,
aby na wykresie w czasie 1s rysowane było tyle
okresów przebiegu ile wynika z ustawionej
częstotliwości (frequency).
Wprowadzenie skalowania osi X (czasu) oraz automatycznej
zmiany nazwy osi Y (skala temperatury) – przykład wykorzystania
Property Node
UWAGA! Program zapisać pod nazwą
Monitor temperatury (wersja2).vi
Zapis danych do pliku tekstowego
Wczytać program Monitor temperatury.vi i zapisać go pod nową nazwą
Rejestrator temperatury.vi. Dokonać stosowane zmiany, tak jak na poniższym
diagramie blokowym.
Prawym przyciskiem
myszki na kwadracie
wybrać Enable Indexing
Stworzyć program do odczytu
danych (temperatury) z pliku.
Zapisać go pod nazwą:
Dane z pliku.vi.
Zbudować program Monitoring temperatury.vi.
Wybór przycisku z panelu czołowego powinien
wywołać panel czołowy odpowiedniego podprogramu.
Wykorzystać programy Monitor temperatury.vi,
Rejestrator temperatury.vi oraz Dane z pliku.vi.
Pętle „False” są puste
Dla każdego przycisku ustawić Mechanical Action
tak jak pokazano poniżej.
UWAGA! Jak szybko skonfigurować podprogram tak, aby jego
panel czołowy został automatycznie otwarty w momencie
wywołania podprogramu a następnie automatycznie zamknięty po
naciśnięciu odpowiedniego przycisku (np. STOP lub Koniec)?
Z menu podręcznego wywołanego na wybranym podprogramie wywołujemy polecenie
SubVI Node Setup. W otwartym oknie wybieramy opcje jak pokazano poniżej
UWAGA! Program zapisać
pod nazwą
Monitoring temperatury.vi