Lab. 3 Typy danych w LabView, zapis do pliku

Podobne dokumenty
Lab. 3 Typy danych w LabView, zapis do pliku

Robert Barański, AGH, KMIW Arrays and Clusters v1.0. Poniższy poradnik wprowadza do tworzenia oraz obsługi tablic i typów danych klastra.

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 4

Reprezentacja zmiennych numerycznych

Gromadzenie danych. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 15 minut.

Maszyna stanu State Machine

ZROZUMIENIE MODUŁOWOŚCI (Understanding Modularity)

PRZYRZĄDY WIRTUALNE. Część 6 Macierze, klastry, wzory. Prof. Krzysztof Jemielniak

VI od podstaw. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 30 minut.

Modelowanie obiektowe - Ćw. 1.

1. CEL ĆWICZENIA Celem ćwiczenia jest zapoznanie studentów ze środowiskiem LabVIEW oraz podstawami programowania w języku graficznym G.

Lab. 2 Tablice, struktura warunkowa

Lab. 3 Tablice, struktura warunkowa

Politechnika Wrocławska, Katedra Inżynierii Biomedycznej Systemy Pomiarowo-Diagnostyczne, laboratorium

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium przyrządów wirtualnych. Ćwiczenie 3

Robert Barański, AGH, KMIW For Loops While Loops v1.0


Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

5.4. Tworzymy formularze

Programowanie w języku G - Laboratorium 12

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

Programowanie w języku G - Laboratorium 4

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Programowanie w języku G - Laboratorium 7

Zaawansowane aplikacje internetowe - laboratorium

Robert Barański, AGH, KMIW Struktura petli v1.1. Instrukcja użycia dla For Loop lub While Loop w celu kontrolowania powtarzających się czynności Loop.

Instalowanie VHOPE i plików biblioteki VHOPE

Compas 2026 Vision Instrukcja obsługi do wersji 1.07

Kolory elementów. Kolory elementów

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Budowa i oprogramowanie komputerowych systemów sterowania. Wykład 2. Labview

5.2. Pierwsze kroki z bazami danych

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3

Wirtualne przyrządy kontrolno-pomiarowe

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

6.4. Efekty specjalne

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Bazy danych raporty. 1. Przekopiuj na dysk F:\ bazę M5BIB.mdb z dysku wskazanego przez prowadzącego.

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

ActionFX oprogramowanie do sterowania efektami platform i kin 7D V1.0.1

ZINTEGROWANY SYSTEM ZARZĄDZANIA TREŚCIĄ

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Ćw. 2. Wprowadzenie do graficznego programowania przyrządów pomiarowych

DODAJEMY TREŚĆ DO STRONY

1. Przypisy, indeks i spisy.

Praca z widokami i nawigacja w pokazie

Lekcja 1: Origin GUI GUI to Graficzny interfejs użytkownika (ang. GraphicalUserInterface) często nazywany też środowiskiem graficznym

I. Program II. Opis głównych funkcji programu... 19

Tworzenie prezentacji w MS PowerPoint

Sekretariat Optivum. Jak przygotować listę uczniów zawierającą tylko wybrane dane, np. adresy ucznia i jego opiekunów? Projektowanie listy

Wstęp do graficznego programowania w środowisku LabVIEW

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

Dodanie nowej formy do projektu polega na:

MS Excell 2007 Kurs podstawowy Filtrowanie raportu tabeli przestawnej

Galileo v10 pierwszy program

Przedszkolaki Przygotowanie organizacyjne

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista

Laboratorium 8 ( Android -pierwsza aplikacja)

Wirtualne przyrządy pomiarowe

MS Access formularze

Baner internetowy w standardzie GIF - metoda tworzenia tandemem aplikacji Illustrator - ImageReady.

VComNet Podręcznik użytkownika. VComNet. Podręcznik użytkownika Wstęp

OPROGRAMOWANIE DEFSIM2

Ćwiczenie 1. Modelowanie prostego procesu

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

Rozdział 5. Administracja kontami użytkowników

INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia

5.4. Efekty specjalne

LabVIEW w połączeniu z urządzeniami rejestrującymi obraz, ruch, może zostać użyty równie funkcjonalnie jak przyrządy GPIB, PXI, RS232 i RS485.

Prezentacja multimedialna MS PowerPoint 2010 (podstawy)

Tworzenie prezentacji, PowerPoint

Programowanie obiektowe

1. Tworzenie prezentacji multimedialnych w programie Microsoft Office PowerPoint Artur Grabowski

Podręczna pomoc Microsoft Power Point 2007

SysML rozpoczynanie projektu SysML001

Podstawy użytkowania programu LabView

EXCEL TABELE PRZESTAWNE

Ćwiczenie 3 Akwizycja danych pomiarowych za pomocą karty pomiarowej NI USB-6008 w programie LabVIEW

Instrukcja użytkownika

UONET+ - moduł Sekretariat. Jak wykorzystać wydruki list w formacie XLS do analizy danych uczniów?

Edycja szablonu artykułu do czasopisma

Laboratorium 9 (Więcej Aktywności, w Androidzie)

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy.

Nagrywamy podcasty program Audacity

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:

Lekcja 1 Nawigacja w LabView

5.3. Tabele. Tworzenie tabeli. Tworzenie tabeli z widoku projektu. Rozdział III Tworzenie i modyfikacja tabel

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:

LabVIEW PLATFORMA EDUKACYJNA Lekcja 1 Pierwsze kroki w środowisku LabVIEW

Szybka instrukcja tworzenia testów dla E-SPRAWDZIAN-2 programem e_kreator_2

Transkrypt:

Lab. 3 Typy danych w LabView, zapis do pliku 1 Wprowadzenie 1.1 Tworzenie projektu (wersja 0.4) Filip A. Sala, Marzena M. Tefelska W celu utworzenia projektu należy uruchomić środowisko LabView i wybrać Create Project. Następnie wybrać Blank Project i kliknąć w przycisk Finish. Pojawi się wtedy okno projektu (Project Explorer). W celu dodania nowego VI należy kliknąć File New VI. W celu dołączenia do projektu zapisanego wcześniej pliku należy prawym klawiszem myszy kliknąć na My computer i z menu kontekstowego wybrać Add File. Pliki takie jak na przykład *.vi czy *.ctl można również dodawać metodą Drag & Drop przeciągając pliki *.vi na diagram blokowy (ang. Block diagram), a *.ctl (kontrolki) na panel przedni (ang. Front panel). 1.2 Klastry Klastry są obiektami, które grupują elementy różnych typów. Na przykład różne rodzaje przycisków, przełączników, wskaźników itp. (patrz rys 1). Rysunek 1: Ikona klastra (po lewej) oraz wygląd przykładowego klastra na panelu przednim (po prawej). Wskazówka: Klastrów należy szukać w oknie Controls Modern Array, Matrix & Cluster Uwaga: Klaster może być albo kontrolką (ang. control) albo wskaźnikiem (ang. indicator). Nie może zawierać i kontrolek i wskaźników jednocześnie. Elementy klastra posiadają ściśle określoną kolejność zgodną z kolejnością dodawania obiektów. Pierwszy dodany obiekt jest elementem 0, kolejny 1 itd. Kolejność obiektów decyduje o kolejności w jakiej elementy pojawiają się jako terminale klastra. Kolejność tę można zmienić otwierając definicję typu (klikając prawym klawiszem myszy na brzeg klastra i wybierając Open Type Def.), a następnie w nowo otwartym oknie ponownie klikając na brzeg klastra i wybierając Reorder Controls In Cluster. Klastry z założenia mają łączyć w sobie elementy różnych typów. Na przykład mogą to być pola zwracające jakąś wartość np. kierunek wiatru i jego prędkość. Cały klaster zatem przekazuje nam i kierunek wiatru i jego prędkość w postaci jednego strumienia danych. Zazwyczaj jednak chcielibyśmy wyodrębnić (rozgrupować) takie dane. Gdy będziemy chcieli znowu wysłać kilka danych do klastra to zajdzie konieczność ich zgrupowania w jeden strumień. Do tych celów służą cztery funkcje Bundle, Bundle by Name, Unbundle, Unbundle by Name (rys. 2). Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 1

Rysunek 2: Ikony funkcji służących do grupowania i rozgrupowania danych. Funkcja Bundle grupuje elementy i tworzy z nich klaster zgodnie z kolejnością podłączenia elementów do terminala. Jeżeli na wejściu podłączymy istniejący już klaster to jego elementy zostaną zastąpione nowymi. Rozmiar klastra oraz liczba podłączonych elementów muszą być zgodne. Funkcja Bundle by Name natomiast, zastępuje istniejące w klastrze elementy na podstawie ich nazwy (a nie kolejności podłączenia do terminala). W przypadku tej funkcji konieczne jest podłączenie klastra wejściowego. Funkcja Unbundle rozgrupowuje elementy klastra na podstawie ich kolejności. Funkcja Unbundle by Name rozgrupowuje elementy klastra na podstawie nazw elementów. 1.3 Funkcja Select Funkcja Select posiada dwa wejścia danych t oraz f, a także wejście logiczne s. Jeżeli na wejściu s panuje stan PRAWDA (ang. TRUE) to do wyjścia przekazywana jest wartość z wejścia t. Jeżeli na wejściu s panuje stan FAŁSZ (ang. FALSE) to do wyjścia przekazywana jest wartość z wejścia f. Przykład działania funkcji Select znajduje się na rysunku 3. Wskazówka: Funkcji Select należy szukać w Functions Programming Comparison Rysunek 3: Przykład działania funkcji Select. Na rysunku a) na wejściu s panuje stan PRAWDA, zatem na wyjście przekazana zostanie wartość 123 (wartość z wejścia t). Na rysunku b) przedstawiony jest przykład gdy na wejściu s panuje stan FAŁSZ, zatem do wyjścia przekazana zostanie wartość 456 (wartość z wejścia f). 1.4 Tworzenie własnej kontrolki Gdy chcemy utworzyć własną kontrolkę należy w oknie projektu (Project Explorer) wybrać File New..., a następnie Custom control. Na potrzeby naszych zajęć kontrolka powinna być oznaczona jako Ścisła Definicja Typu (ang. Strict Type Definition) - (patrz rys. 4). Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 2

Rysunek 4: Oznaczenie kontrolki jako ścisła definicja typu Możliwe jest również stworzenie kontrolki poprzez utworzenie definicji typu z klastra. W tym celu należy utworzyć klaster, umieścić w nim obiekty (kontrolki, wskaźniki), a następnie kliknąć prawym klawiszem myszy na brzegu klastra (rys. 5) i wybrać Make Type Def.. Do projektu dodany zostanie wtedy nowy plik z kontrolką. Rysunek 5: Tworzenie kontrolki (definicji typu) z klastra Uwaga: Ścisła Definicja Typu różni się od Definicji Typu jedynie tym, że wygląd kontrolki nie może być zmieniony, jest stały. Ustalone, na etapie tworzenia ikonki, właściwości takie jak kolor, rozmiar itp. nie będą mogły być zmienione z poziomu Panelu przedniego. W celu zmiany właściwości kontrolki należy otworzyć definicję typu (klikając prawym klawiszem na brzeg kontrolki/klastra i wybierając Open Type Def.). Następnie należy dokonać zmian (koloru, rozmiaru, zakresów itp.), po czym zapisać zmiany i zamknąć okno. Wtedy dopiero, wprowadzone zmiany zostaną zastosowane. 1.5 Typy danych W poniższej tabeli przedstawione są podstawowe typy zmienno- i stałoprzecinkowe używane w LabView. Wiele kontrolek i wskaźników ma możliwość zmiany reprezentacji (typu) obsługiwanych danych. Na przykład jeżeli mamy jakiś wskaźnik, który ma nam wyświetlać wartość rzeczywistą (zmiennoprzecinkową) to należy również reprezentację tego wskaźnika zmienić na jeden z typów zmiennoprzecinkowych. W tym celu klikamy prawym klawiszem myszy na nasz obiekt i wybieramy z menu kontekstowego Representation. Pojawia się wtedy lista dostępnych typów (rys. 6). Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 3

Typ Liczba Zakres bitów Single-precision, floating-point 32 +1.40e 45 do +3.40e+38 oraz 1.40e 45 do 3.40e+38 Double-precision, floating-point 64 +4.94e 324 do +1.79e+308 oraz 1.79e+308 do 4.94e 324 Extended-precision, floating-point 128 +6.48e 4966 do +1.19e+4932 oraz 1.19e+4932 do 6.48e 4966 Byte signed integer 8-128 do 127 Word signed integer 16-32768 do 32767 Long signed integer 32 2 147 483 648 do 2 147 483 647 Quad signed integer 64 1e19 do 1e19 Byte unsigned integer 8 0 do 255 Word unsigned integer 16 0 do 65 535 Long unsigned integer 32 0 do 4 294 967 295 Quad unsigned integer 64 0 do 2e19 Rysunek 6: Wybór typów (reprezentacji) dostępny w LavView 1.6 Pętla for Działanie pętli for w LabView (rys. 7) jest bardzo podobne do pętli for w innych języków programowania. Obiekt posiada jedno wejście, na które podajemy liczbę iteracji jaka ma zostać wykonana oraz jedno wyjście, które podaje numer aktualnie wykonywanej iteracji. W pętli wykonują się jedynie funkcje znajdujące się w obrębie pętli. Rysunek 7: Przykład pętli for, która zostanie wykonana N = 10 razy. Numer iteracji wyświetlany będzie na wskaźniku. Numer iteracji przyjmie wartości od 0 do 9 (czyli od 0 do N 1). Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 4

1.7 Indeksowanie tablic przy użyciu pętli Do automatycznego indeksowania tablicy można użyć pętli for lub while. Przykład wykorzystanie pętli for znajduje się na rysunku 8. Wystarczy utworzyć tablicę oraz podłączyć ją do krawędzi pętli. Na wejściu otrzymujemy automatycznie już indeksowaną tablicę. W tym przypadku na wyjściu również jest tablica tyle, że wskaźników (indykatorów) na panelu przednim. Należy pamiętać o odpowiednim doborze typów danych. Jeżeli korzystamy z automatycznego indeksowania przy użyciu pętli for, nie jest konieczne podawanie liczby iteracji ponieważ zostanie ona ustawiona automatycznie na rozmiar tablicy. W przypadku podłączenia kilku tablic, liczba iteracji będzie odpowiadała rozmiarowi najmniejszej tablicy. Rysunek 8: Automatyczne indeksowanie tablicy. Po lewej diagram blokowy, po prawej wynik działania programu. Do każdego elementu tablicy dodana została stała wartość, w tym przypadku 5. Na rysunku 9 znajduje się przykład indeksowania tablicy przy użyciu pętli while. Zarówno w przypadku indeksowania przy użyciu pętli while jak i for należy pamiętać o ustawieniu trybu tunelowania na indexing. W tym celu należy kliknąć prawy klawiszem myszy na tunel (kwadracik) a następnie wybrać odpowiedni tryb. W poniższym przykładzie przedstawiono również sposób na utworzenie tablicy dwuwymiarowej. Na wyjściu pętli zastosowana została funkcja Build Array w celu utworzenia tablicy dwuwymiarowej z dwóch tablic jednowymiarowych. Należy przy tym pamiętać aby funkcja ta miała odznaczoną opcję Concatenate Inputs. W przeciwnym razie zostanie utworzona tablica jednowymiarowa. Rysunek 9: Przykład zastosowania pętli while do indeksowania tablicy oraz funkcji Build Array do utworzenia tablicy dwuwymiarowej. 1.8 Zapis danych do pliku Do zapisu danych do pliku można posłużyć się funkcją Write to Spreadsheet File (rys. 10). Ma ona wejście dla danych jednowymiarowych (1D) oraz dwuwymiarowch (2D). Stan logiczny na terminalu append? decyduje o tym czy dane mają być dopisywane do pliku czy plik ma być zapisywany od początku. Jeżeli do terminala append? dołączymy stan PRAWDA (TRUE) to kolejne dane będą dopisywane na końcu pliku. Funkcja posiada Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 5

też terminal path do którego należy dołączyć ścieżkę do pliku. Jeżeli ścieżka nie zostanie podana to podczas działania programu w momencie wywołania funkcji pojawi się okno dialogowe, w którym należy podać nazwę pliku. Rysunek 10: Opis funkcji Write to Spreadsheet File 2 Zadania do wykonania Celem tego laboratorium jest stworzenie aplikacji do wizualizacji oraz zapisu danych ze stacji meteo. Dane pogodowe symulowane będą za pomocą przygotowanych subvi (dostępnych w materiałach do ćwiczenia). 1. Stwórz pusty projekt o nazwie Stacja Pogodowa 2. Stwórz plik VI o nazwie WeatherStation. 3. Dodaj do projektu pliki ReadTemp, ReadRain, ReadWind. Z tych podprogramów pochodzić będą dane o temperaturze, opadach oraz prędkości i kierunku wiatru. Następnie, pliki te należy dodać do programu. W tym celu można, na przykład, przeciągnąć pliki z okna projektu Project Explorer na diagram blokowy Block Diagram i upuścić (metoda Drag & Drop). 4. Utwórz klaster zawierający następujące dane: aktualna data i godzina, temperatura, opady, prędkość wiatru. Wykorzystaj graficzne kontrolki do prezentacji danych podobnie jak na rysunku 11. (1.5 pkt.) 5. Zapisz klaster jako ścisłą definicję typu (ang. Strict Type Def.) (0.5 pkt.) 6. Narysuj schemat blokowy, tak aby program wyświetlał w pętli co 300 ms dane pogodowe. Program powinien się zatrzymywać w chwili naciśnięcia przycisku STOP. (1 pkt.) 7. Dodaj do programu funkcję wyświetlania ostrzeżenia o gołoledzi, dużej sile wiatru oraz o upałach. Program powinien wyświetlić następujące informacje: (1.5 pkt.) Uwaga ryzyko gołoledzi gdy T < 2 C Uwaga silny wiatr gdy V wiatru > 30km/h Uwaga upały gdy T > 35 C Ostrzeżenia mogą być wyświetlane poza klastrem w dowolny sposób (np. tekstowy czy graficzny). 8. Dodaj możliwość zapisywania wszystkich pomiarów temperatury oraz opadów do pliku. Zapis powinien odbywać się po naciśnięciu przycisku STOP. Do zapisu pliku wykorzystaj funkcję Write to spreadsheet file. Dane powinny być zapisane w dwóch kolumnach. (1.5 pkt.) 9. Zadanie dodatkowe: Zapisz do pliku tekstowego nagłówek według przykładu z pliku tekstowy.txt. Wykorzystaj funkcję Write to Text File oraz Refnum to Path. W funkcji Write to Spreadsheet File ustaw flagę append jako true. (2 pkt.) Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 6

10. Zadanie dodatkowe: Dodaj do programu funkcję umożliwiającą prezentację kierunku wiatru. W tym celu stwórz nową własną kontrolkę i użyj kontrolki Classic Ring & Enum Pict Ring umożliwiającej wyświetlanie obrazków. Do kontrolki dołącz odpowiednie obrazki (strzałki wskazujące kierunek wiatru w kolejności N, E, W, S). Strzałki można wykonać samodzielnie w programie graficznym lub skorzystać ze strzałek dostępnych w palecie Controls Modern Decorations. Ustaw kolor kontrolki na przezroczysty (T od ang. transparent). Należy w tym celu skorzystać z narzędzia malowania, w palecie Tools (patrz rys. 12). Tak utworzoną kontrolkę zapisz jako Ścisła definicja typu (Strict Type Def.) i dodaj do klastra z danymi pogodowymi. Zmień kolejność elementów w klastrze tak aby element Kierunek wiatru znajdował się przed elementem Siła Wiatru. Zapisz zmiany w kontrolce i odpowiednio zmodyfikuj program stacji pogodowej. (2 pkt.) Rysunek 11: Przykład klastra prezentującego dane pogodowe Rysunek 12: Wybór koloru przezroczystości Wydział Fizyki, Politechnika Warszawska - Podstawy Projektowania Przyrządów Wirtualnych 7