1 Struktura předmp edmětu : 1. Úvod LabVIEW, Front Panel, Block Diagram, Icon Pane Controls, Functions, Tools Palette, Help Otevření, úprava, spuštění VI 2. Základní funkce a prvky (1) Terminals, nodes Datové typy - Numeric, Boolean, String, Path, Cluster Structures; Global & Local variables Numeric, Boolean; 3. Základní funkce a prvky (2) Array & Cluster String & Path List & Table; Ring & Enum Struktura předmp edmětu: 4. Základní funkce a prvky (3) Graph, Refnum Documentation 5. Základní funkce a prvky (4) File I/O Timing 6. Získávání dat a komunikace s přístrojip 7. Tvorba SubVI + doplňky Ikona + SubVIs Containers, Decorations doplňky Ing. Anna Husáková 2 3 LabVIEW Úvod do LabVIEW Vývojové prostředí od firmy National Instruments pracující s grafickým programovacím jazykem G Programový kód v podobě blokového schématu Zpracovávání programu na základě toku dat (namísto vykonávání instrukcí) Programy = Virtuální měřicí přístroje (Virtual Instruments, VI s) Front Panel Uživatelské rozhraní VI s Indikátory a ovládací prvky pro vstup a výstup hodnot Ovládací prvky knoflíky, tlačítka, posuvné stupnice, Indikátory grafy, LED diody, tabulky, Obecně se vytváří jako první Panel nástrojů Tabulka Front panel Ikona Help Legenda Graf www.ni.com/czech 4 5 Numerický ovládací prvek Logický ovládací prvek Numerický indikátor Logický indikátor STOP tlačítko 6 Block diagram Po vytvoření předního panelu Místo pro sestavování grafického zdrojového kódu programu Propojení terminálů objektů z předního panelu pomocí vodičů Provádění nejrůznějších operací s daty pomocí expresních VI (funkcí) a operátorů Panel nástrojů SubVI Block diagram Funkce dělení Terminál grafu Dráty (tok dat) Express VI s, VI s s and Functions Express VI: interaktivní VI konfigurovatelným dialogovým oknem Standardní VI: podprogramy (SubVI s) mají block diagram i front panel Funkce: základní operační prvek v LabVIEW (nemá front panel a block diagram) Funkce Expresní VI Standardní VI 7 While Loop (smyčka) Numerická konstanta Funkce časovače Terminál logického ovladače 8 9
10 Icon and Connector pane Aby bylo možné použít VI jako snadno identifikovatelný subvi (podprogram) Grafická reprezentace programu Text, obrázek, kombinace Konektory - počet souhlasí s počtem indikátorů a ovládacích prvků v podprogramu Max 28 terminálů u jednoho podprogramu (více při tvorbě SubVI s) plovoucí paleta nástrojů používá se pro modifikaci objektů předního panelu i blokového schématu a operace s nimi Operace s objekty Tools Palette Umístění / změna velikosti Popis / text Spojování dráty Zobrazí menu objektu Automatický výběr nástroje Posouvání objektů Vytváření breakpoint Vytváří kontrolní body Kapátko (kopie barvy) Změna barvy objektů Controls palette Controls palette pouze u Front panelu obsahuje ovládací prvky a indikátory prvky uspořádány ve skupinách podle typu 11 12 Function Palette Help Error list Function palette pouze u Block diagramu obsahuje funkce a operátory pro vytváření programu také uspořádány ve skupinách Context Help Online help Uzamknout help Jednoduchý popis programu Ctrl + H Online help Otevře klasické okno help Error list varování závažné chyby detaily někde je chyba! 13 14 15 Panel nástrojn strojů Spouštěcí tlačítko Tlačítko pro opakované měření Ukončení programu Pause/Pokračování programu Vlastnosti textu Zarovnání objektů Rozložení objektů Uspořádání Změna velikosti objektů Další tlačítka u blokového diagramu Zvýrazněný průběh programu Zahájení krokování Další krok Ukončení krokování Základní úkony (1) Otevření VI Front panel Otevření palet Vkládání ovládacích prvků a indikátorů Změna umístění (zarovnání, uspořádání), velikosti, barvy Úprava vlastností objektů (akce, default value, stupnice ) Popisky (font, barva, velikost, ) Záměna prvků Klávesové zkratky Properties, VI properties Základní úkony (2) Block diagram Otevření palety funkcí Vkládání funkcí a operátorů Změna umístění, zarovnání, uspořádání Úprava vlastností objektů (popisky, default value ) Spojování prvků vodiči, broken wires, Properties 16 17 18
19 Základní úkony (3) Spuštení a zastavení programu po krocích X pomalé s náhledem X běžné X opakované pause, breakpoint, stop Tvorba ikony Panel nástrojů Návrh ikony Vlastnosti ikony Příklady Př. 1 matematické funkce program pro převod: 1. C na F, MPa na Torry, dny na sekundy 2. m/s na km/hod, km na míle Př. 2 logické funkce program pro přepouštění nádrží Př. 3 tvorba ikony tvorba ikony u př. 1 a 2 Konec první přednášky 20 21 (druhá přednáška) Výstupy z block diagramu do předního panelu (a vstupy opačným směrem) Terminály Ikona Uzlové body (nodes) Rozšiřitelný uzel Rozšířený uzel Zobrazení jako ikona a nebo pouze jako datový typ Zobrazení stejného VI třemi způsoby Žluté pole = standardní VI Modré pole = expresní VI 22 23 24 Datové typy Structures Příklady použit ití struktur Control Indicator Single-precision, floating-point numeric Double-precision, floating-point numeric Complex single-precision, floating-point numeric 8-bit signed integer numeric 8-bit unsigned integer numeric 16-bit signed integer numeric Boolean String Cluster Data Type Default Value 0,0 0,0 0,0+i0,0 0 0 0 FALSE empty string ---- Stacked sequence structure Flat sequence structure Case structure For loop While loop Formula node Event structure Feedback node Timed loop Variables Global a Local Variable - úprava While loop kontinuální průběh (stop) Sequence structure počáteční podmínky Case structure signalizace (vypnutí/zapnutí) For loop, Feedback node - opakování Path Picture <Not A Path> ---- 25 26 27
28 Front Panel Numeric Block diagram Numeric Front Panel Boolean Numeric Control & Indicator Fill Slide Pointer Slide Knob, Dial Tank Thermometer Time Stamp Control & Indicator Progress Bar Graduated Bar Gauge Meter Framed Color Box Základní numerické funkce Zaokrouhlování Numerické konstanty (prázdné) Tvorba vzorce (funkce) Změna vlastností signálu Převod signálu do časové roviny Převod datových typů Goniometrické funkce Logaritmické funkce Komplexní čísla Numerické konstanty (nejběžnější) Push Button Round / Square LED Cancel Button OK Button Radio Buttons Rocker Slide Switch Toggle Switch Stop Button 29 30 Block Diagram Boolean logické operátory log. operátory pro řetězce číslo na boolean boolean na číslo logické konstanty negace implikace boolean na 0;1 Konec druhé přednášky (třet etí přednáška) 31 32 33 Front Panel Array & Cluster Array Cluster Error In / Out Variant Front Panel - String & Path String Control / Indicator Combo Box File Path Control / Indicator Array Size Index Array Initialize Array Build Array Block Diagram - Array Search 1D Array Split 1D Array Transpose 2D Array Interpolate 1D Array Threshold 1D Array Array Constant Array Cluster Replace Array Subset Insert to Array Delete from Array Array Subset Rotate 1D Array Reverse 1D Array Sort 1D Array Array Max & Min Interleave 1D Arrays Decimate 1D Array Reshape Array 34 35 36
37 Block Diagram String Block Diagram - Cluster Front Panel - List & Table Stg length Concentrate Stgs Stg Subset Replace Substg Search & Replace Stg Scan from Stg Format into Stg konstanty Build text To Upper/Lower Case Additional Stg Functions Match Pattern Format Date/Time Stg Stg/Number conversions Spreadsheet Stg Array Stg/Array/Path conversions Unbundle / Bundle Unbundle / Bundle by Name Build Cluster Array Index & Bundle Cluster Array Cluster Constant Cluster Array Listbox Multicolumn listbox Table Tree Express table 38 39 Front Panel - Ring & Enum Text Ring Menu Ring Enum Pict Ring Pict & Text Ring Konec třetí přednášky (čtvrtá přednáška) 40 41 42 Graph Graph Chart Overlaid / Stacked Plot Waveform Chart / Graph XY Graph Express XY Graph Intensity Chart / Graph Digital Waveform graph 3D Surface Graph 3D Paramtric Graph 3D Curve Graph Controls Label Y-scale X-scale Plot legend Graph palette Cursor Grid mark Cursor legend Overlaid Plot Stacked Plot Scale legend 43 44 45
46 XY - Graph Digital Graph Report Generation Zdrojová data Vstupní data Binární vyjádření Digitální graf Easy Text Report Easy Print VI Panel or Documentation New Report Print Report Save Report to File Dispose Report Set Report Font Append Report Text Table to Report List to Report Front Panel to Report Control Image to Report Image to Report Report NI DIAdem Report Wizard 47 48 Další funkce pro report VI Documentation Append: Front panel Image VI Block diagram VI description VI Hierarchy VI History VI Icon VI List of Controls VI list of SubVIs Advanced Report Generation Append File to Report Clear Report Clear Report Text Get Report Settings Get Report Type Query Available Printers Report Generation Report Generation 49 50 51 Konec čtvrté přednášky (pátá přednáška) Write to / Read from Spreadsheet File Write Characters to File Open/Create/Replace File Read / Write File File Constants Configuration File Vis Read / Write Lab VIEW Measurement File File I/O 52 53 54
55 File I/O Read characters from File Read lines from File Scan from / Format into File Build / Strip Path Binary File VIs Close File Advanced File Functions Storage VIs Advanced File Functions File Dialog Open File New File EOF Seek Flush File Lock Range Access Rights Path Type Type and Creator File/Directory Info Volume Info Advanced File Functions Move, Copy, Delete List Directory New Directory Path to Array of Strings Array of Strings to Path Path to String String to Path Refnum to Path 56 57 Time and Dialog Tick Count (ms) Wait (ms) Wait until next ms multiple Format Date/Time String Get Date/Time String Get Date/Time In seconds Date/Time to seconds Seconds to Date/Time One/Two/Three Button Dialog Wait for Front Panel Activity Generate front panel activity Měření doby průběhu programu Časovače 58 59 60 Time and Dialog Simple Error Handler General Error Handler Clear errors Find First Error Merge Errors Time Delay Elapsed Time Prompt User for Input Display Message to User Error Cluster From Error Code Konec páté přednášky (šestá přednáška) 61 62 63
64 Data Acquisition (získ skávání dat) Měřicí sestava využívající DAQ kartu DAQ zařízení (karta) kabel počítač senzory konektorový blok Data Acquisition (získ skávání dat) Měřicí sestava s přístrojem měřicí přístroj počítač senzory rozhraní Univerzáln lní DAQ zařízen zení Generování nebo získávání dat z více kanálů Měření nejrůznějších typů dat (v závislosti na software a senzorech) Připojení přes PCI (PCMCIA) slot k počítači Ke kartě přísluší konektorový blok a software Ovládání pomocí řadičů a vhodných příkazů aplikačního software NI-DAQ řadiče (drivers) = soubor VIs pro konfiguraci zařízení, získávání dat a ovládání zařízení DAQ zařízení (karta) 65 66 Získávání dat v LabVIEW Traditional NI-DAQ Specifické VIs pro ovládání: Analogových vstupů Analogových výstupů Digitalních I/O Čítačových operací NI-DAQmx Řadiče nové generace : VIs pro vykonávání úkolů Soubor VIs pro všechny typy měření NI-DAQmx vs. Tradiční NI-DAQ NI-DAQmx Rozhraní pro programování analogových vstupů/výstupů, digitalních I/O, ovládání stovek multifunkčních DAQ zařízení Obsahuje Measurement & Automation Explorer, DAQ Assistant a VI Logger Lite software Tradiční NI-DAQ Používá se v případě, že: zařízení není podporováno NI-DAQmx softwarem (např. AT E série multifunkčních karet) Pokud používáte starší verzi programů National Instruments LabVIEW, LabWindows/CVI nebo Measurement Studio než verze 7.0 Pokud máte starší programy využívající NI-DAQ 6.9x Instalace a konfigurace hardwaru 1. Instalace LabVIEW a řadičů (NI-DAQmx/Trad. NI-DAQ) 2. Instalace hardwaru 3. Konfigurace hardwaru Tradiční NI-DAQ konfigurace v MAX (Measurement & Automation Explorer) NI-DAQmx použití DAQ Assistant (LabVIEW Function Palette NI Measurements DAQmx Data Acquisition) 67 68 69 Measurement & Automation Explorer Measurement & Automation Explorer Test panel Přímo z MAX bez nutnosti mít LabVIEW Testování komunikace s přístrojem Provádění jednoduchých měření DAQ Assistant Výběr zařízení, se kterým chceme komunikovat, řídit ho sbírat data 70 71 72
73 Vytvořen ení měřicí aplikace Front panel Paleta I/O specifikace přístroje, se kterým chceme komunikovat Trad. NI-DAQ Chanell control DAQmx Name Controls Traditional NI-DAQ Analog Input Analog Output Digital I/O Counter Calibration & Configuration Signal Conditioning Channel Constant Funkce pro čtení/ zápis dat, provádění úkolů, trigger, časování měření, konfiguraci zařízení, kalibraci, nastavení rozsahu,. NI-DAQmx 74 75 Postup vytvářen ení aplikace 1. Nastavení kanálů + vytvoření úkolů 2. Nastavení časování 3. Nastavení triggeru 4. Čtení / zápis dat Kanály Fyzický kanál Terminál, pin na kterém měřím nebo generuji analogový nebo digitální signál Každý má své jedinečné jméno (charakterizaci) Virtuální kanál Soubor vlastností, které zahrnují jméno, fyzický kanál, vstupní terminál, typ měření, informace o měření (rozsah, jednotky, ) Tasks úkoly meřen ení Task = soubor jednoho nebo více virtuálních kanálů s nastaveným časováním, triggerem a dalšími vlastnostmi. Task reprezentuje měření, které chceme provádět můžeme jej nastavit a poté automaticky používat v aplikaci. Kroky pro vytvoření: 1. Vytvoření úkolu (task) a kanálu pomocí DAQ Assistantu 2. Konfigurace kanálu, časování, trigger (nepovinné) 3. Zápis / čtení dat 4. Odstranění úkolu (kroky 2 a 3 se opakují, pokud to měření vyžaduje např. zaznamenám data, překonfiguruji trigger a provedu nové měření) 76 77 78 Příklad měřm ěření DC signálu DC signál stejnosměrný signál (napětí, teplota,otáčky, proud, ) Schéma měřicího řetězce Schéma zapojení amenomomeru (měření rychlosti větru) Příklad Tradiční NI-DAQ Měření s využitím Trad. NI-DAQ Device číslo přiřazené kartě během konfigurace Channel analogový vstupní kanál anemometru High / low limit hodnoty očekávaného rozsahu napětí AI Sample Channel funkce pro získání hodnot prostřednictvím karty Scaling přepočet napětí na rychlost větru Příklad NI-DAQmx Měření s využitím NI-DAQmx Physical channel určení fyzického kanálu použité karty Min / Max Value očekávaný rozsah napětí (0 až 10V) DAQmx Create Virtual Channel používá fyzický kanál pro vytvoření Virtuálního analogového vstupního napěťového kanálu DAQ Read čte vzorek z kanálu + přepočet napětí na rychlost větru 79 80 81
82 Komunikace s přístroji p (VISA) VISA = Virtual Instrument Software Architecture Umožňuje komunikovat s přístroji přes sběrnice GPIB, USB, PXI, VXI, sériový port Přístroj musí mít nainstalovaný ovladač příp. je možné ovladač vytvořit pomocí VISA Driver Development Wizard (zadání názvu přístroje a výrobce a PXI ID čísla) Nastavení komunikace, kroků měření a charakteru výsledných dat pomocí Instrument I/O Assistant VISA Driver Development Wizard Měření VISA (DMM digital multimetr) DMM Druh přístroje, se kterým komunikujeme MEAS:DC? instrukce přístroji (zaslání měřeného signálu) VISA Write zapisuje (posílá) instrukci do přístroje VISA Read čte odezvu přístroje (měřená data) Read buffer naměřená data 83 84 Konec šesté přednášky (sedmá přednáška) Icon and Connector pane Aby bylo možné použít VI jako snadno identifikovatelný subvi (podprogram) Grafická reprezentace programu Text, obrázek, kombinace Konektory - počet souhlasí s počtem indikátorů a ovládacích prvků v podprogramu Max 28 terminálů u jednoho podprogramu (více při tvorbě SubVI s) 85 86 87 Ikona / Terminály Terminály ikony 1. Označit program / část programu 2. Edit Create SubVI 3. Pojmenovat a uložit SubVI Tvorba SubVI s Vytvořen SubVI Původní program Přednáška č.7 88 89 90
91 Tvorba ikony Panel nástrojů Vlastnosti ikony Konec sedmé přednášky Návrh ikony 92