G PROGRAMMING Part #1
Program zajęć Środowisko LabVIEW charakterystyka, instalacja, panel czołowy, schemat blokowy, palety Typy danych Analiza błędów Modularyzacja (subvi) Pętle while i for Funkcjonowanie przełączników logicznych Rejestr przesuwny Wykresy Tablice /funkcje tablicowe Klastry /funkcje klastrowe Struktury wyboru i sekwencyjne
Program zajęć (cd.) Funkcje matematyczne Expression i Formula Node Dane łańcuchowe Operacje plikowe we/wy Indywidualizacja programów panel czołowy, klawisze skrótów, modyfikacja właściwości, palet Planowanie aplikacji planowanie, projektowanie, implementacja, obsługa błędów Projektowanie panelu czołowego zagadnienia podstawowe, klastry logiczne, zdalne sterowanie panelem, dostęp przeglądarką WWW Techniki zarządzania danymi zmienne lokalne i globalne, datasocket Sprzęt pomiarowy (DAQ, GPIB, VISA, Serial)
Literatura, materiały Dokumentacja: G Programming Reference Manual, BridgeVIEW and LabVIEW. National Instruments. LabVIEW 7 Express Basics Interactive Training. CD. National Instruments 2003. Środowisko LabVIEW w eksperymencie wspomaganym komputerowo. Tłaczała W., WNT, W-wa 2002. Graficzne zintegrowane środowiska programowe do projektowania komputerowych systemów pomiarowokontrolnych. Winiecki W., Nowak J., Stanik S., MIKOM, W-wa 2001. Systemy pomiarowe laboratorium. Świsulski D., Wyd. PG, Gdańsk 2001.
LabVIEW - charakterystyka Programowanie graficzne Łatwość korzystania Przyśpieszenie czasu tworzenia aplikacji Graficzny interfejs użytkownika Graficzny kod źródłowy Prosta modularyzacja Łatwość tworzenia samodzielnych aplikacji (Application Builder) Lokalizacja (wersje angielska, francuska, niemiecka, japońska) Zgodność międzyplatformowa (Windows, Mac OS, Linux, Solaris)
LabVIEW - charakterystyka Graficzny język programowania pozwalający na tworzenie aplikacji do: prowadzenia testów i pomiarów, akwizycji danych (za pomocą np. DAQ), sterowania sprzętem, rejestracji danych, analizy wyników pomiarów, generowania reportów dotyczących sposobu działania aplikacji.
Konkurencyjne produkty National Instruments LabVIEW 7.1 Full Dev System Hewlett Packard/Agilent VEE Pro 7.0 Keithley Instruments TestPoint 5.1 Software Application Programming Package DasyLab DASYLab 8 Full Development License Advantech GenieDAQ for Windows
LabVIEW historia rozwoju 2004 Styczeń 2002 Sierpień 2000 Luty 1999 Marzec 1998 Czerwiec 1997 Marzec 1996 Grudzień 1994 Sierpień 1993 Październik 1992 Wrzesień 1992 Styczeń 1990 Październik 1986 Kwiecień 1983 7.1 (Express) Express VI, DAQmx drivers = 25 % podwyższenie wydajności obsługi punktów I/O 6.1 Ułatwienia, przyśpieszenie obsługi, zdalne panele 6i Pomiary i automatyzacja zadań z wykorzystaniem Internetu 5.1 Wykresy 3D, poprawa wydajności, narzędzia sieci WWW 5.0 ActiveX, wielowątkowość, Undo 4.1 Kreatory DAQ dla platformy Windows 4.0 Dostosowywanie interfejsu 3.1 Wprowadzenie obsługi platform HP-UX i Power Mac 3.0 Wieloplatformowa wersja LabVIEW, dodatki (toolkits, np. Signal Processing, Sound and Vibration, ) LabVIEW dla Sun LabVIEW dla Windows 2.0 dla Macintosh (wbudowany kompilator) 1.0 dla Macintosh Uruchomienie przez National Instruments projektu LabVIEW
LabVIEW - charakterystyka Zebrać (w dowolnym punkcie) Sieć Przeanalizować (w dowolnym punkcie) Sieć Pokazać (w dowolnym punkcie) Urządzenia: GPIB Urządzenia szeregowe Karty pomiarowe (DAQ) Zdalne karty pomiarowe (RDA) Urządzenia (PXI) Urządzenia IMAQ Karty RT Sterowniki PLC (przez serwer OPC) Przyrządy wirtualne do analizy: równania różniczkowe, optymalizacja, dopasowanie do krzywych, algebra liniowa, statystyka, Przyrządy wirtualne do przetwarzania sygnału: filtrowania, windowing, transformacje, wykrywanie szczytów, analiza harmonicznych, analiza widmowa Lokalnie: wykresy, grafiki, tabele, wskaźniki, zbiorniki, raporty, Internet: publikacja WWW, datasocket, obsługa TCP/IP, serwer VI, Enterprise Connectivity Toolset: - SQL Tools, Internet Tools (FTP, E-mail, Telnet, HTML)
LabVIEW Instrumenty wirtualne (VI) Instrumenty wirtualne (Virtual Instruments) programy (aplikacje) tworzone w LabVIEW. Wygląd zgodny/podobny do urządzeń fizycznych. Front panel interfejs użytkownika do sterowania urządzeniami, wprowadzania danych i odczytywania wyników Block diagram graficzny kod źródłowy odzwierciedlający zawartość panelu użytkownika, wykorzystywane funkcje, komunikację ze sprzętem CTRL+E
Instalacja 1/3 Standardowy instalator Nazwa użytkownika i i numer licencji Wybór składników Zatwierdzenie 2 umów licencyjnych Kopiowanie składników
Instalacja 2/3 Instalacja sterowników urządzeń Wybór składników Zatwierdzenie umowy licencyjnej Kopiowanie składników (2 (2 x CD) CD) Ponowne uruchomienie
Instalacja 3/3 Dysk ok. 900 MB Menu Start Usługi: - NI Service Locator (nisvcloc.exe) - element sieci sterowników do lokalizacji i komunikacji z innymi sterownikami - nidevldu (nipalsm.exe) menedżer komunikacji pomiędzy sterownikami NI na poziomie jądra - nipxirmu (nipalsm.exe) menedżer komunikacji pomiędzy sterownikami pxi
Front Panel first look Podstawowe typy obiektów - Controls (regulatory (wejścia)) / Indicators (wskaźniki (wyjścia)) Paleta Controls Menu Window, right-click na panelu Przed uruchomieniem/obejrzeniem diagramu trudno określić, co jest regulatorem, a co wskaźnikiem Pełny dostęp All Controls CONTROLS - WEJŚCIA INDICATORS - WYJŚCIA
Front Panel operacje na obiektach Umieszczanie obiektów (niekonieczne przeciąganie) Formatowanie wyglądu obiektów menu kontekstowe Formatowanie zachowania obiektów (sposób wyświetlania, rodzaj danych)
Front Panel - narzędzia Pasek narzędzi (toolbar) Paleta narzędzi - Tools (Window / Show Tools Palette) Automatyczny wybór narzędzia (Automatic Tool Selction) Obsługa (Operating tool) Pozycjonowanie (Positioning tool) Etykietowanie (Free label) Menu skrótów (Object shortcut menu) Przesuwanie (Scrolling tool) Próbnik kolorów (Color copy) Paleta kolorów (Coloring tool)
Block diagram first look Dodatkowe typy obiektów np. pętle, klastry, macierze, Podstawowa paleta Functions (pełny dostęp All Functions) Łatwiejsze określanie roli regulatora i wskaźnika Dodatkowe przyciski Paska narzędzi do analizy błędów Połączenia (Wiring) Breakpoint (Breakpoint) Próbówka (Probe)
Block diagram podstawowe elementy Terminal (złącze) porty we/wy pomiędzy panelem a diagramem Node (węzeł) obiekt wykonujący operacje w czasie pracy programu (VI) Terminale regulatorów (controls terminals) wejściowe Połączenia (wires) do transferu danych pomiędzy obiektami Terminal wskaźnika (indicator terminal) wyjściowy
Wiring tool drutowanie ;-) Tworzenie połączeń 1xclick przypięcie trasy (zakręt) 2xclick przypięcie tymczasowe spacja zmiana kierunku Zaznaczanie 1xclick prosty odcinek 2xclick odcinek do połączenia 3xclick całe połączenie Inne pożyteczne polecenia menu kontekstowe Clean up wire CTRL+B - Remove all broken wires
Block diagram Typy danych Liczbowe (Numeric) Logiczne (Boolean) Łańcuchowe (String) Dynamiczne Skalar Macierz 1D Macierz 2D Zmiennoprzecinkowe Całkowite (Integer) Zielone Różowe/Purpurowe Niebieska kratka
Typy danych liczbowych
Enumerated Logiczne Łańcuchowe Macierz dane jednego typu zamknięte w nawiasy kwadratowe o kolorze zgodnym z kolorem typu danych Klaster dane różnego typu; brązowy zawiera dane liczbowe, różowy dane mieszane Ścieżka dostępu Dynamiczne - (Express VI) zawiera dane sygnału oraz dodatkowe atrybuty sygnału (np. nazwa sygnału wraz z datą i czasem jego wygenerowania) Przebieg (waveform) zawiera dane, czas wystąpienia, odstępy czasowe próbek. Przebieg cyfrowy (digital waveform) zawiera dane, czas wystąpienia, odstępy czasowe próbek dla przebiegów cyfrowych Dane cyfrowy (digital) dane sygnału cyfrowego Refnum (reference number) liczba identyfikacyjna obiektu Variant zawiera nazwę regulatora lub wskaźnika, informacje o typie danych raz same dane. Nazwa we/wy (I/O name) do przekazywania danych konfiguracyjnych przy komunikacji z urządzeniami we/wy za pomocą instrumentów wirtualnych Obraz (picture) zawiera zestaw instrukcji do wyświetlania grafik (tj. linii, okręgów, tekstu i innych typowych kształtów graficznych.
Format i dokładność Domyślny typ danych double precision floating point Podstawowe operacje to deklarowanie zakresu danych formatu danych dokładności Automatyczne dopasowanie Niedopasowanie szara kropka (coercion dot) Dla wartości x,5 występuje zaokrąglanie do najbliższej parzystej (np. 4,5 -> 4,0, 5,5 ->6,0)
Podsumowanie Program w języku G (instrument wirtualny, VI) składa się z 2 elementów: panelu czołowego, diagramu blokowego (dodatkowo ikona i panel konektora). Panel czołowy stanowi interfejs użytkownika; diagram blokowy stanowi kod wykonywalny. Użytkownik posługuje się pływającymi paletami: narzędzi (Tools), regulatorów (Controls) (aktywne okno front Panel), funkcji (Functions) (aktywne okno front Diagram) Pomoc kontekstowa (Context Help, CTRL+H) wyświetla ogólne informacje o obiektach i sposobie podłączenia Terminale regulatorów mają grubsze ramki niż terminale wskaźników
End of Part #1