Lab 11


1
Programowanie w języku G - Laboratorium 11
Ćwiczenie 11.1  Zapis plików binarnych
Cel: Stworzenie programu zapisującego dane w pliku binarnym o prostym
formatowaniu.
Pogram będzie zapisywał dane w pliku binarnym bazującym na prostym formacie, polegającym na zamieszczaniu
w nagłówku pliku wartości I32 (long word integer) informującej o liczbie danych (punktów pomiarowych)
zamieszczonych dalej w pliku. W kolejnym z ćwiczeń zostanie utworzony program do odczytywania danych z
takich plików.
Panel czołowy ________________________________________________________________________
1. W oknie nowego projektu wprowadzić brakujące elementy i rozmieścić je w sposób zbliżony do
pokazanego na zamieszczonym poniżej rysunku panelu czołowego. Panel zawiera:
a) wykres Waveform graph,
b) kontrolkę tekstową Menu Ring (Select Waveform),
c) wskaznik liczbowy Numeric Indicator (Number of Data Points).
2. Charakterystyczne elementy zamieszczonych na panelu obiektów to:
a) Reprezentacja danych wskaznika liczbowego Numeric Indicator (Number of Data Points) to
32-bitowa liczba całkowita (menu kontekstowe /Representation /I32).
b) Pozycje Menu Ring to kolejno (menu kontekstowe /Properties /Edit Items): 0  Zero, 1  Sinus,
2 - Prostokąt, 3  Piła. Reprezentacja liczbowa menu to nieoznaczona liczba szesnastobitowa U-16
(menu kontekstowe /Representation /U16). Jeśli chcemy obserwować wartości liczbowe
towarzyszące wybieranym pozycjom tekstowym (np. Sinus = 1), konieczne jest wyświetlenie
wskaznika (menu kontekstowe /Visible Items /Digital Display).
Schemat blokowy _____________________________________________________________________
1. Uzupełnić schemat blokowy o brakujące elementy i połączenia. Są to:
a) Węzeł Open/Create/Replace File.vi (paleta Functions /All Functions / File I/O). Węzeł zgodnie
z nazwą, w zależności od konfiguracji, otwiera, tworzy lub nadpisuje pliki. W bieżącym
ćwiczeniu jako podstawowa wykorzystywana będzie funkcja tworzenia plików.
b) Funkcja Write File (paleta Functions /All Functions /File I/O). Funkcja występuje na schemacie
dwukrotnie. Pierwsze wystąpienie funkcji Write File zapisuje binarny nagłówek pliku zawierający
liczbę wartości zapisywanych w pliku. Drugie wystąpienie Write File zapisuje tablicę danych.
Programowanie w języku G strona 1
2
c) Funkcja Close File (paleta Functions /All Functions /File I/O). Funkcja Close File zamyka plik
po zapisaniu w nim danych.
d) Program Simple Error Handler.vi (paleta Functions /All Functions /Time & Dialog), który w
przypadku wystąpienia błędu powoduje wyświetlenie okna dialogowego z opisem błędu i
miejscem jego wystąpienia.
e) Stała wejściowa funkcji Write File - pos mode równa start (menu kontekstowe wejścia funkcji
Write File i polecenia Create /Constant). Zadeklarowanie stałej wejściowej  pos mode wartości
 start wymusza zapis nowych danych od początku pliku.
f) Stała wejściowa funkcji Open/Create/Replace File równa create or replace (menu kontekstowe
wejścia funkcji Open/Create/Replace File i polecenia Create /Constant). Wybór wartości  create
or replace umożliwia użytkownikowi utworzenie nowego lub nadpisanie istniejącego pliku.
g) Program Acquire Signal.vi (paleta Functions /All Functions /Select a VI& ) zlokalizowany w
miejscu wskazanym przez prowadzącego. Program generuje przebieg o kształcie wybranym za
pomocą kontrolki Select Waveform (Wybierz przebieg).
h) Funkcja tablicowa Array Size (paleta Functions /All Functions /Array), on the block diagram.
W bieżącym ćwiczeniu funkcja zwraca liczbę jednowymiarowej tablicy elementów zapisywanych
w pliku.
2. Zapisać plik programu pod nazwą Binary File Writer.vi.
3. Uruchomić program, a otrzymane dane zapisać na dysku pod nazwą data.bin.
4. Zatrzymać program i zamknąć wszystkie jego okna.
Ćwiczenie 11.2  Odczyt plików binarnych
Cel: Stworzenie programu odczytującego dane z pliku binarnego (utworzonego w
poprzednim ćwiczeniu).
Panel czołowy ________________________________________________________________________
Programowanie w języku G strona 2
3
1. W oknie nowego projektu wprowadzić brakujące elementy Panel zawiera:
a) wykres Waveform graph,
b) wskaznik liczbowy Numeric Indicator (Number of Data Points). Reprezentacja danych wskaznika
to 32-bitowa liczba całkowita (menu kontekstowe /Representation /I32).
Schemat blokowy _____________________________________________________________________
1. Uzupełnić schemat blokowy o brakujące elementy i połączenia. Są to:
a) Węzeł Open/Create/Replace File.vi (paleta Functions /All Functions / File I/O). Zadaniem
węzła jest otworzenie pliku.
b) Funkcja Read File (paleta Functions /All Functions /File I/O). Funkcja występuje na schemacie
dwukrotnie. Pierwsze wystąpienie funkcji Read File odczytuje binarny nagłówek pliku
zawierający liczbę wartości zapisywanych w pliku. Drugie wystąpienie Read File odczytuje z
pliku tablicę danych.
c) Funkcja Close File (paleta Functions /All Functions /File I/O). Funkcja Close File zamyka plik
binarny po odczytaniu z niego danych.
d) Program Simple Error Handler.vi (paleta Functions /All Functions /Time & Dialog), który w
przypadku wystąpienia błędu powoduje wyświetlenie okna dialogowego z opisem błędu i
miejscem jego wystąpienia.
e) Stała liczbowa  byte stream type (paleta Functions /All Functions / Numeric) o reprezentacji I32
(domyślna reprezentacja stałych liczbowych). Stała definiuje typ danych, na które oczekuje
funkcja Read File przy odczycie nagłówka.
f) Stała liczbowa  byte stream type (paleta Functions /All Functions /Numeric) o reprezentacji
Double Precision (DBL) (menu kontekstowe /Representation /Double Precision). Stała definiuje
typ danych, na które oczekuje funkcja Read File przy odczycie danych  pomiarowych .
2. Zapisać plik programu pod nazwą Binary File Reader.vi
3. Otworzyć plik data.bin utworzony w poprzednim ćwiczeniu. Po otworzeniu pliku, funkcja Read File
wykorzystuje wejście byte stream type skonfigurowane czterobajtową wartością long integer, do
odczytania pierwszych czterech bajtów pliku zapisanych jako nagłówek. Funkcja wyświetla liczbę
przechowywanych wartości na wskazniku Number of Data Points. Drugie wystąpienie węzła Read
File odczytuje tablicę danych o reprezentacji wymuszonej za pomocą wejścia byte stream type
skonfigurowanego wartością o reprezentacji double precision. Wejście count definiuje liczbę
wartości odczytywanych z pliku bnarnego.
4. Zatrzymać program i zamknąć wszystkie jego okna.
Programowanie w języku G strona 3
4
Ćwiczenie 11.3  Podprogram  Zapis danych do pliku
Cel: Ukończenie programu zapisującego dane do pliku.
Tworzony w bieżącym ćwiczeniu program będzie obsługiwał przycisk opcji  Log Results to File programu
 Analyze & Present Data.vi z ćwiczenia 9.6  Analiza i prezentacja danych (panel czołowy zamieszczono
poniżej). Utworzony program będzie stanowił element większego systemu tworzonego w kolejnych ćwiczeniach.
W aktualnie tworzonym programie konieczne jest zapisanie na dysku danych różnego typu. Zestaw danych
stanowią proste dane liczbowe, tablica danych liczbowych i dane łańcuchowe. Wykonanie ćwiczenia doprowadzi
do stworzenia programu pozwalającego na zapis wymienionych danych do pliku.
Panel czołowy ________________________________________________________________________
1. Otworzyć plik Save Data to File.vi. Program posiada już panel czołowy. Dwie kontrolki panelu
używane są do wprowadzania danych do programu i stanowią część większego systemu budowanego
w trakcie ćwiczeń.  Data Cluster zawierał będzie część analizowanych danych przeznaczonych do
zapisu na dysk, zaś łańcuch  Operator Name nazwę pracownika również zapisywaną w pliku.
Programowanie w języku G strona 4
5
Schemat blokowy _____________________________________________________________________
1. Przekształć schemat blokowy wprowadzając wymagane modyfikacje, elementy i połączenia.
a) Usunąć stałą logiczną oznaczoną  Delete Me .
b) Zamieścić funkcję File Dialog (paleta Functions /All Functions /File I/O /Advanced File
Functions). Funkcja wyświetla okno dialogowe umożliwiające nadanie nazwy plikowi. Wyjścia
funkcji File Dialog o nazwach exists i cancelled podłączyć do wejść funkcji logicznej OR.
Dodatkowo wyjście exists podłączyć do wejścia struktury wyboru Case.
c) Utworzyć stałą  new file wejścia select mode funkcji File Dialog (menu kontekstowe wejścia
 select mode funkcji File Dialog i polecenia Create oraz Constant). Za pomocą lewego przycisku
myszy zadeklarować wartość utworzonej stałej równą  new file .
d) Utworzyć stałą  Nazwa dla nowego pliku danych: wejścia prompt funkcji File Dialog (menu
kontekstowe wejścia  prompt funkcji File Dialog i polecenia Create oraz Constant).
Wprowadzony łańcuch stanowi tytuł okna dialogowego. Do zapisu danych służy  zewnętrzna
struktura Case. Należy zwrócić uwagę, że połączone dane  operator name i  data cluster
dostarczają informacji o typie danych zamieszczanych w pliku (do funkcji New File i Write File).
e) Zamieścić funkcję New File (paleta Functions /All Functions /File I/O /Advanced File Functions).
Funkcja odpowiedzialna jest za utworzenie nowego pliku. Informacja o typie danych pliku
 dostarczana jest za pomocą wejścia  datalog type w dolnej części ikony funkcji.
f) Zamieścić funkcję Write File (paleta Functions /All Functions /File I/O).
g) Zamieścić funkcję Close File (paleta Functions /All Functions /File I/O).
Programowanie w języku G strona 5
6
h) Zamieścić program Simple Error Handler.vi (paleta Functions /All Functions /Time & Dialog),
który w przypadku wystąpienia błędu powoduje wyświetlenie okna dialogowego z opisem błędu i
miejscem jego wystąpienia.
2. Zapisać plik pod istniejącą nazwą (Save Data to File.vi). Zamknąć wszystkie okna programu.
3. Otworzyć plik programu  Analyze & Present Data.vi z ćwiczenia 9.6 (ćw. 9.6  Analiza i pre-
zentacja danych). Program Save Data to File zostanie dodany w ten sposób, aby był wywoływany po
wybraniu przycisku  Log Results to File .
4. Zmodyfikować przypadek nr 1 struktury wyboru (Case) (zamieścić podprogram Save Data to File
i brakujące połączenia) tak, jak to pokazano na powyższym rysunku. Zapisać plik pod istniejącą
nazwą tj.: Analyze & Present Data.vi.
5. Uruchomić program Analyze & Present data. Wybrać dowolny zakres danych z wykresu, a
następnie przycisk  Analyze Selected Subset . W kolejnym kroku wybrać przycisk  Log Results to
File . Zostanie wyświetlone okno dialogowe pozwalające na nadanie nazwy zapisywanemu plikowi.
Wprowadzić nazwę subset1.dat i zapisać plik.
6. Wybrać przycisk Return and zamknąć okno programu Analyze & Present Data.
Ćwiczenie 11.4  Przeglądanie danych plikowych  program View Analysis File
Cel: Zapoznanie z programem (View Analysis File) odczytującym dane z pliku
zapisanego za pomocą uprzednio utworzonego programu Save Data to File.
Panel czołowy ________________________________________________________________________
1. Z lokalizacji wskazanej przez prowadzącego, otworzyć plik View Analysis File.vi. Program jest w
pełni funkcjonalny posiada panel czołowy i kompletny schemat blokowy.
2. Po obejrzeniu panelu czołowego przejść do okna schematu.
Programowanie w języku G strona 6
7
Schemat blokowy _____________________________________________________________________
1. Zapoznać się z możliwym sposobem funkcjonowania programu. Jeżeli użytkownik wybierze w oknie
dialogowym przycisk Anuluj, program nie realizuje żadnych funkcji. Należy zwrócić uwagę, że
wejście  datalog type funkcji  File Dialog połączone jest z pustym klastrem tego samego typu,
jakiego mają być odczytywane dane. Takie połączenie powoduje, że program środowiska LabVIEW
wyświetla katalogi i pliki określonego rodzaju. P wybraniu pliku odczytywany jest on jako jeden
rekord.
2. Uruchomić program i wczytać utworzony wcześniej plik subset1.dat.
3. Zamknąć wszystkie okna programu nie zapisując w nim zmian.
Programowanie w języku G strona 7
8
Ćwiczenie 11.5  Zdalny panel
Cel: Demonstracja przeglądania i sterowanie programem ze zdalnego komputera
z zainstalowanym środowiskiem LabVIEW.
Panel czołowy ________________________________________________________________________
1. Uruchomić okno wyszukiwarki Example Finder (dowolne okno środowiska LabVIEW /menu Help
/Find Examples lub okno startowe środowiska LabVIEW /przycisk /Find Examples).
2. Na karcie Browse wybrać opcję przeglądania (Browse according to:) Task.
3. Wybrać grupę Analyzing and Processing Signals, a z niej Signal Processing i program Dynamic
Signal Analyzer (sim).vi. Powinien zostać wyświetlony poniższy panel czołowy.
4. Uruchomić program. Przetestować sposób funkcjonowania programu zmieniając ustawienia
kontrolek panelu.
5. Zakończyć działanie programu za pomocą przycisku STOP.
Programowanie w języku G strona 8
9
Konfiguracja serwera WWW ___________________________________________________________
6. Z menu Tools wybrać polecenie Options, a listy rozwijalnej Web Server: Configuration.
7. Skontrolować, czy pole opcji Enable Web Server jest wybrane. W przypadku braku wyboru,
zaznaczyć pole.
8. Z listy opcji wybrać Web Server: Browser Access. Skontrolować, czy pole opcji Allow Viewing
and Controlling jest zaznaczone (dla pozycji z Browser Access List oznaczonej dwoma zielonymi
checkmarkami).
9. Z listy opcji wybrać Web Server: Visible VIs. Skontrolować, czy pole opcji Allow Access jest
zaznaczone (dla pozycji z listy Visible VIs oznaczonej zielonym checkmarkiem).
10. Wybrać przycisk OK, aby zamknąć okno dialogowe Options.
11. Zidentyfikować i zanotować adres IP stacji roboczej. Informacje o sposobie adresowania (adresy
statyczne, dynamiczne) można uzyskać od prowadzącego zajęcia. W przypadku stacji roboczych
Windows 200X i XP adres IP stacji można uzyskać po wydaniu ciągu poleceń: przycisk Start
/Uruchom /cmd / ipconfig /all . W przypadku stacji roboczych systemu Windows 98 adres IP można
poznać po wykonaniu poleceń: Start /Uruchom /winipcfg.
12. Zasięgnąć informacji prowadzącego o sposobie ochrony stacji roboczych. Może istnieć konieczność
wyłączenia zapory sieciowej (firewall) lub zmiany jej konfiguracji.
13. Uruchomić program Dynamic Signal Analyzer (sim).vi.
14. Kolejne kroki ćwiczenia powinny być wykonywane z innej stacji roboczej lub w stosunku do
programu uruchomionego na innej stacji.
Zdalne przeglądanie panelu programu i zdalne sterowanie___________________________________
1. Otwórz okno nowego programu i z menu Operate wybierz polecenie Connect to Remote Panel.
2. W wyświetlonym oknie dialogowym wprowadz:
a) w pole Server IP address - adres IP sąsiedniego komputera,
b) w pole VI Name - nazwę uruchomionego na nim programu (Dynamic Signal Analyzer (sim).vi),
c) pole Port pozostawić bez zmian (port 80 odpowiada domyślnemu ustawieniu Options /Web
Server: Configuration),
d) zaznaczenie opcji Request Control.
3. Wybierz przycisk Connect.
4. Powinno zostać wyświetlone okno programu Dynamic Signal Analyzer (sim). Zwrócić uwagę, że na
zdalnym panelu został wyświetlony komunikat Control Granted wskazujący, że zdalny panel ma
możliwość sterowania programem na komputerze serwera. Dodatkowo na komputerze serwera
wyświetlany jest komunikat Control granted to nazwa komputera, gdzie nazwa komputera jest
nazwą zdalnej stacji. Kliknięcie w dowolnym miejscu panelu powoduje ukrycie komunikatu.
5. Wprowadzić różne ustawienia w działającym programie (modyfikować ustawienia kontrolek).
Zwrócić uwagę, że faktycznie sterowany jest komputera serwera.
6. Na komputerze serwera programu wybrać z menu kontekstowego (prawy przycisk myszy) panelu
programu polecenie Regain Control. Kontrolę nad aplikacją przejmuje komputer serwera.
Przeciwdziałanie ponownemu przejmowaniu kontroli uzyskuje za pomocą menu kontekstowego i
polecenia Remote Panel Server i Lock Control. Ponowne umożliwienie przejęcia możliwe jest za
pomocą poleceń kontekstowych Remote Panel Server /Unlock Control..
7. Zatrzymać program na komputerze serwera. Zwrócić uwagę, że program zatrzymał się również na
komputerze zdalnym.
8. Nie zamykać okna programu. Będzie on wykorzystywany w dalszych ćwiczeniach.
Programowanie w języku G strona 9
10
Ćwiczenie 11.6  Zdalny panel (2)
Cel: Demonstracja zdalnego przeglądania panelu programu i sterowanie programem
za pomocą przeglądarki internetowej.
Panel czołowy ________________________________________________________________________
1. Jeżeli program Dynamic Signal Analyzer (sim).vi został zamknięty, uruchomić go ponownie.
Postępować zgodnie z instrukcjami z ćwiczenia 11.5 tj.:
a) Uruchomić okno wyszukiwarki Example Finder (dowolne okno środowiska LabVIEW /menu
Help /Find Examples lub okno startowe środowiska LabVIEW /przycisk /Find Examples).
b) Na karcie Browse wybrać opcję przeglądania (Browse according to:) Task.
c) Wybrać grupę Analyzing and Processing Signals, a z niej Signal Processing i program
Dynamic Signal Analyzer (sim).vi. Powinien zostać wyświetlony panel czołowy programu
Dynamic Signal Analyzer (sim).vi.
2. Z menu Tools wybrać polecenie Web Publishing Tool.
3. W oknie dialogowym zadeklarować:
a) pole Document Title - tytuł okna dokumentu przeglądarce oraz pierwszego tekstu w oknie
przeglądarki (np. Zdalny program  Dynamic Analyzer);
b) pole Header  tekst (nagłówek) poprzedzający okno programu (np. Zdalny program  Dynamic
Analyzer);
c) pole VI Name  lista programów aktualnie obecnych w pamięci operacyjnej stacji roboczej.
Pozostawić Dynamic Signal Analyzer (sim).vi;
d) pole Viewing Options: Embedded  opcja pełnego sterowania zdalnego;
e) opcja Order: wybrana  wyświetlanie ramki wokół grafiki panelu czołowego w przeglądarce;
f) pole Request Control: pusta  po wybraniu, opcja automatycznego przejmowania kontroli
zdalnej;
Programowanie w języku G strona 10
11
g) pole Footer  tekst występujący na końcu okno programu w przeglądarce (np. Koniec panelu
programu).
4. Za pomocą przycisku Save to Disk zapisać program w domyślnej lokalizacji (domyślnie w miejscu
standardowej instalacji środowiska LabVIEW np. C:\Program Files\National Instruments\LabVIEW
7.1\www) pod domyślną nazwą (np. Dynamic Signal Analyzer (sim).htm).
5. Za pomocą Notatnika lub innego edytora tekstu skontrolować zawartość utworzonego pliku HTML
(np. C:\Program Files\National Instruments\LabVIEW 7.1\www \Dynamic Signal Analyzer
(sim).htm). Zwrócić uwagę na elementy tekstowe wprowadzone za pomocą edytora Web Publishing
Tool.



Zdalny program - Dynamic Analyzer


Zdalny program - Dynamic Analyzer


Program zarządzalny zdalnie. Wybierz "Request Control of VI".






TYPE="application/x-labviewrpvi71" WIDTH=666 HEIGHT=513
PLUGINSPAGE="http://digital.ni.com/express.nsf/express?openagent&code=ex3e33&">



Koniec okna programu.


6. Zamknąć program Notatnik lub inny edytor tekstu nie wprowadzając zmian.
7. Uruchomić program Dynamic Signal Analyzer (sim).vi.
8. W pasku adresu okna przeglądarki internetowej wprowadzić URL:
http://komputer_zdalny/Dynamic Signal Analyzer (sim).htm
gdzie komputer_zdalny oznacza adres IP lub nazwę NetBIOS sąsiedniego komputera (ćwiczenie
można również wykonywać w oparciu o adres IP lub nazwę własnej stacji roboczej). Jeżeli wpisaniu
URL nie będzie towarzyszyło wyświetlenie panelu programu, zasięgnąć informacji prowadzącego o
sposobie ochrony stacji roboczych. Może istnieć konieczność wyłączenia zapory sieciowej (firewall)
lub zmiany jej konfiguracji (otwarty port 80).
9. Z menu kontekstowego panelu programu wyświetlanego w oknie przeglądarki wybrać polecenie
(Remote Panel Client) Request Control of VI. Zostanie wyświetlony komunikat Control Granted.
10. Wprowadzać różne ustawienia kontrolek, tak jak przy normalnej pracy z programem.
Programowanie w języku G strona 11
12
11. W oknie przeglądarki wybrać przycisk STOP programu. Uruchomić ponownie program. Zwrócić
uwagę, że użytkownik posiada pełną kontrolę nad funkcjonowaniem aplikacji.
12. Za pomocą polecenia kontekstowego przekazać kontrolę serwerowi aplikacji (Regain Control).
13. Zamknąć okno przeglądarki internetowej.
14. Zatrzymać działanie programu Dynamic Signal Analyzer (sim).vi.
15. Usunąć plik HTML, który został utworzony w czasie publikacji programu (np.: C:\Program
Files\National Instruments\LabVIEW 7.1\www \Dynamic Signal Analyzer (sim).htm).
15. Zatrzymać funkcjonowanie serwera WWW za pomocą menu Tools /Options /Web Server:
Configuration, przez wyczyszczenie pola opcji Enable Web Server. Wybrać przycisk OK, aby
zamknąć okno dialogowe Options.
16. Przywrócić ustawienia sieciowe (firewall), jeśli były modyfikowane.
17. Zamknąć wszystkie okna środowiska LabVIEW.
Opracowane na podstawie:
LabVIEW 7 Express Basics Interactive Training CD. National Instruments 2003.
LabVIEW Basics I. Introduction Course Manual. National Instruments 2002.
Programowanie w języku G strona 12


Wyszukiwarka


Podobne podstrony:
Lab cpp
lab 2
T2 Skrypt do lab OU Rozdział 6 Wiercenie 3
IE RS lab 9 overview
lab pkm 3
lab chemia korozja
lab tsp 3
Konsp Lab TK ZiIP sem3d 1st
lab Projektowanie filtrow
Lab transopt instr
lab
lab
siso semVI lab

więcej podobnych podstron