You are on page 1of 40

Virtuální instrumentace v biomedicínském

inženýrství – kombinované studium


Graficky orientované programování v LabVIEW jako
plnohodnotná alternativa k textově orientovanému
programování

doc. Ing. Radek Martinek, Ph.D.


15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 1
Z minulé přednášky
● Ovládací prvky (Controls) - prvky čelního panelu simulující skutečné ovládací prvky.
● Indikační prvky (Indicators) - prvky čelního panelu simulující indikační prvky skutečných přístrojů.
● Dekorační prvky (Decorations) - prvky slouží pouze k doplnění vzhledu čelního panelu VI.
● Datový typ - definuje druh nebo význam hodnot, kterých smí nabývat proměnná nebo konstanta.
● Paleta prvků (Controls Palette) - nabídka prvků čelního panelu s ovládacími a indikačními prvky.
● Nástrojová lišta (Tools Menu) - souhrn nástrojů umístěných v liště příslušného okna.
● Objekt blokového diagramu (Object) - jsou subVI, funkce, konstanty, struktury a vodiče.
● Paleta funkcí (Controls Palette) - nabídka prvků čelního panelu s ovládacími a indikačními prvky.
● Konektor (Connector) - definice rozhraní VI nebo funkce.
● Terminál (Terminal) - reprezentace prvků čelního panelu v diagramu a jedna z položek konektoru.
● Paleta nástrojů (Tools Palette) - paleta s nástroji pro tvorbu uživatelského kódu i diagramu.
● Tok dat (Data flow) - princip, na základě kterého je řízeno vykonávání LabVIEW kódu.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 2
Obsah přednášky
● Tvorba virtuálního přístroje - čelní panel.
● Prvky čelního panelu a jejich datová reprezentace.
● Numerické prvky.
● Logická hodnota (Boolean).
● Textový řetězec (String) a cesta (Patch).
● Prvek Enumerator.
● Prvek Tab (záložky).
● Prvek seznam (Listbox) a stromová nabídka (Tree Control).
● Datové typy – příklady.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 3
Tvorba virtuálního přístroje - čelní panel
● Návrh uživatelského rozhraní
● Ve fázi analýzy a následné definice řešeného problému byly identifikovány vstupy a výstupy dané
úlohy. Tento postup, kdy jsou definovány vstupy a výstupy, vede přímo k návrhu čelního panelu VI.
● Vstupní data pro danou úlohu lze získat následujícími metodami:
● sběrem ze zařízení jako jsou převodníkové karty a samostatně stojící měřicí přístroje např.
multimetry,
● čtením přímo ze souboru nebo z ovládacích prvků čelního panelu VI.
● Výstupní data z úlohy mohou být:
● zobrazena pomocí indikačních prvků čelního panelu,
● uložena do souboru,
● zaslána zařízením, která generují signál.
15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 4
Jméno a popisek
● Jméno (label) prvku čelního panelu je shodné jak na čelním panelu, tak v diagramu.
● Popisek (caption) se nezobrazuje v diagramu. Popisek (caption) slouží k popisu prvku
na čelním panelu a usnadňuje označování prvku.
● Rozdíl mezi jménem prvku (label) a popiskem (caption) je ten, že popisek (caption)
lze programově měnit (tedy změnit za běhu programu) na rozdíl od jména (label), u
kterého toto možné není. Tato vlastnost popisku (caption) umožňuje vytvářet VI
s programově modifikovatelnými popisky prvků, např. při potřebě měnit jazyk označení
prvku na čelním panelu.
popisek prvku (caption)
jméno prvku
jméno prvku (name)

prvek na čelním panelu prvek v blokovém diagramu

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 5
Zapínání a vypínání viditelnosti částí prvku
● U každého prvku čelního panelu je možné zapínat a vypínat viditelnost jména (label),
popisku (caption) a některých dalších částí prvku (to v závislosti na prvku),
prostřednictvím kontextového menu prvku volbou Visible Items (viditelné prvky) >>
volená položka.

jméno (label)

prvek se skrytým
jménem (label)

prvek se
zobrazeným
kontextové menu
jménem (label)
prvku

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 6
Prvky čelního panelu a jejich datová reprezentace
● Každý prvek umístěný na čelní panel odpovídá deklaraci proměnné, chápáno pohledem
textového programovacího jazyka. Každé proměnné, a tedy i prvku čelního panelu, je
při umístění na čelní panel (tedy deklaraci), přiřazen datový typ a jméno.
● Datový typ stanovuje, jak je hodnota proměnné uložena v paměti, a jak mají být data z
paměti prezentována.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 7
Přehled datových typů LabVIEW

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 8
Přehled datových typů LabVIEW

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 9
Přehled datových typů LabVIEW

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 10
Přehled datových typů LabVIEW

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 11
Vytváření prvku čelního panelu z blokového

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 12
Numerické prvky
● Numerické prvky (Numeric) - objekty pro zadávání a zobrazení číselných hodnot různého tvaru:
● prvky s číselnou formou, prvky s posuvníky, prvky s rotačním elementem, prvky s časovou informací, prvky s informací o
barvě.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 13
Prvek Numeric a volba jeho datového typu
● Přes položku menu Representation v roletovém menu lze zvolit způsob reprezentace proměnné v
paměti počítače.
● v prvním řádku paletového menu jsou volby pro reprezentaci čísel s desetinnou částí,
● ve druhém řádku jsou reprezentace celých čísel kladných i záporných,
● ve třetím řádku jsou reprezentace celých čísel pouze kladných,
● v posledním řádku je reprezentace pro komplexní čísla

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 14
Ovládací prvek Time Stamp s oknem nastavení času a v
podobě indikační prvku

ovládací prvek indikační prvek


s tlačítkem
nastavení času

tlačítko nastavení
data a času

okno nastavení
data a času

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 15
Logická hodnota (Boolean)
● Logická hodnota (Boolean) - jsou určeny pro práci s logickou proměnnou, která může nabývat pouze
dvou hodnot True („1“) a False („0“). Na paletě jsou k výběru různé grafické reprezentace těchto prvků.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 16
Mechanické akce booleanovských ovládacích prvků

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 17
Textový řetězec (String) a cesta (Patch)
● V paletové nabídce String & Path jsou grafické reprezentace prvků pro práci s textem. První řádek
obsahuje prvky pro práci s jednoduchým textem (String), druhý řádek prvek pro práci s prvky tvorby a
zobrazení cesty k souborům (Patch).

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 18
Přehled forem zobrazení prvku string

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 19
Výčtový datový typ (Enumerator, Ring)
● Prvek Ring je datového typu numeric a v digramu se sním také pracuje jako s číslem:
● položky v prvku ring je možné programově modifikovat za běhu kódu.
● Prvek Enumerator je datového typu Enum:
● datový typ nese informace, jak o numerické hodnotě (shodné s prvkem Ring), tak o textových položkách (rozdíl oproti prvku
Ring),
● položky prvku Enumerator není možné za běhu programu modifikovat.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 20
Prvek Enumerator
● Výčtové ovládací prvky se ovládají tak, že po kliknutí otevírá menu se seznamem položek, z něhož
uživatel vybere opětovným kliknutím na požadovanou položku.
● Editace jednotlivých položek se prování přes Properties (vlastnosti) --- Edit Items (editace položek).

ovládací prvek
na čelním panelu

výběr z menu
prvku na čelním
panelu

položky seznamu numerické


hodnoty

okno vlastností
prvku

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 21
Prvek Tab a Subpanel
● Prvek čelního panelu Tab a Subpanel lze nalézt ve skupině Containers (kontejnery) v paletovém menu.
● Skupina Containers obsahuje prvky, které slouží k organizaci prvků do skupin, jež se mají zobrazit
společně dále k zobrazení čelního panelu jiného VI na panelu aktuálního VI nebo k zobrazení ActiveX
objektů.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 22
Prvek Tab (záložky)
● Prvek Tab je tvořen stránkami a záložkami.
zobrazena stránka zobrazena stránka
● Prvek Tab umožňuje zorganizovat skupiny Page 1 Page 2
prvků do jednotlivých záložek a tedy umístit
požadovanou množinu prvků na menší
plochu.
● Prvek Tab je datového typu Enum, položky
odpovídají názvům jednotlivých záložek.

prvek Tab prvek Tab

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 23
Prvek Subpanel
● Prvek čelního panelu Subpanel slouží k zobrazení čelního panelu jiného VI na panelu aktuálního VI.

uzel vlastností (Invoke


prvek subpanel na
Node) prvku subpanel
čelním panelu

prvek subpanel

panel jiného VI
zobrazený v prvku
subpanel

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 24
Prvek seznam (Listbox) a stromová nabídka (Tree
Control)
● Prvek seznam (Listbox) je určen k zobrazení a především výběru jedné nebo více položek ze seznamu.
● Listbox je k dispozici ve dvou podobách, a to s jedním sloupcem a s více sloupci (Multicolumn Listbox).
Tree Control

uzel – sbalené položky

uzel – rozbalené
položky
položka

● Prvek stromová nabídka (Tree Control) je určena k zobrazení hierarchické nabídky položek.
položka seznamu

symbol

oddělovač

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 25
Prvek tabulka (Table)
● Prvek tabulka (Tabel) je určen k zobrazení položek s více řádky a více sloupci s možností přistupovat ke
každé z položek.
● Prvek Table je datového typu dvojrozměrného pole string.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 26
Nápovědy a popisy - tipy a popisy prvků čelního panelu
● Typy (Tips) jsou krátké vysvětlující popisky, které se objevují, pokud se kurzor myši zastaví nad příslušným
ovládacím nebo indikačním prvkem.

tip

● Popis (Description) prvku je podrobnější informace o daném prvku, která se zobrazuje v kontextové
nápovědě

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 27
Tvorba nápovědy a popisy prvku čelního panelu
● Vytvoření popisu, resp. nápovědy a tipu pro prvek čelního panelu se prování z kontextového menu prvku
volbou Descriptions and Tips.

následně otevřené
okno kontextové
nápovědy
s nápovědou
text k prvku
popisu/nápovědy
k prvku čelního panelu

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 28
Tipy a popisy VI

následně otevřené okno


kontextové nápovědy
s popisem VI

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 29
Komentáře kódu VI
komentář (volný text) –
popis určení dat vodiče

komentář (volný text) –


popis funkcionality dané
části kódu

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 30
Souhrn přednášky
● Datový typ - stanovuje jak je hodnota proměnné uložena
v paměti, a jak být prezentována.
● Datová reprezentace - datový typ prvku čelního panelu
nebo konstanty.
● Numeric - prvky pro zadávání a zobrazení číselných
hodnot různého tvaru.
● Boolean - prvky pro zadávání a zobrazení logických
hodnot různého tvaru.
● Listbox, Tree Control a Table - prvky pro výběr z množiny
možností, zadávání a zobrazení tabulek.
● Subpanel - slouží k zobrazení čelního panelu jiného VI na
panelu aktuálního VI.

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 31
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 32
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 33
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 34
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 35
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 36
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 37
Datové typy

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 38
Děkuji za pozornost

doc. Ing. Radek Martinek, Ph.D.

+420 597 325 995


radek.martinek@vsb.cz

http://homel.vsb.cz/~mar944

15/10/19 Graficky orientované programování v LabVIEW jako plnohodnotná alternativa k textově orientovanému programování. 39

You might also like