TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií
Učební text pro základní výuku předmětu „Programové prostředky měření“
Učební text
Doc. Ing. Miroslav Svoboda
Liberec
2012
Vývojové prostředí LabVIEW pro vytváření virtuálních měřicích přístrojů Grafické vývojové prostředí čelní panel (Front Panel) - pomocí grafických ikon se tvoří čelní panel virtuálního přístroje, složený z ovládacích prvků a indikátorů (zobrazovacích prvků), blokový diagram (Block Diagram) - vzájemným grafickým propojováním funkčních bloků s ovládacími prvky a indikátory se vytváří vlastní program, panel nástrojů (Tools) - obsahuje nástroje pro vytváření a ladění programu (úlohy), panel ovládacích prvků (Controls) - obsahuje grafické ikony pro tvorbu čelního panelu úlohy, panel funkcí (Functions) - obsahuje grafické ikony pro vytváření programu. Čelní panel a blokový diagram se otevřou kliknutím na Blanc VI v okně Getting Started po spuštění prostředí LabVIEW. Panel ovládacích prvků je dostupný z View na liště čelního panelu, panel funkcí z View na liště blokového diagramu a panel nástrojů z View z lišt obou uvedených oken.
Vývojové prostředí LabVIEW obsahuje celou řadu dalších oken (palet), z nejdůležitějších např. okno sledovacích sond (Probe Watch Window), výpis chyb (Error List) a další. Běh programu není u LabVIEW řízen sekvenčně, jako u textových programovacích jazyků, ale je řízen tokem dat, tj. příslušná funkce je vykonána až když má na všech vstupech platná data. Aby bylo možno v některých případech zajistit následnost běhu programu, obsahuje soubor funkcí navíc sekvenční strukturu. Čelní panel
Ovládací prvky (příklady) -
Indikátory (příklady) -
Numeric
Numeric 2
Boolean
Boolean 2
String
String 2 Waveform Graf
Blokový diagram
Panel nástrojů přepínač režimu
editace textu
vkládání hodnot
otevření panelů prvků a fcí
práce s ikonami
posun celých objektů
propojování ikon
sledovací sonda hodnot
bod zastavení běhu programu
kopírování barev
barvení objektů
barvení ploch
Panel ovládacích prvků
Oba panely lze přispůsobit vlastním požadavkům na zobrazení prostřednictvím pokynů v „Customize“.
Panel funkcí
Lišta v okně blokového diagramu
spuštění úlohy (RUN)
zpomalení běhu programu (HIGHLIGHT Ex)
cyklické spuštění programu (Continously)
trasování konec krokování programu programu (STEP Over) (STEP Out)
zastavení programu přerušení běhu (ABORT Execution) programu (STOP)
krokování programu (STEP Into)
Uvedené prvky slouží ke spuštění a odlaďování programu (úlohy). Lišta čelního panelu obsahuje z těchto prvků pouze první čtyři. Skupiny ikon v paletě ovládacích prvků Obsahuje prvky pro vkládání a indikaci numerických hodnot. Umožňuje pracovat s celočíselnými hodnotami (bipolárními - I i unipolárními - U) v různých číselných soustavách (dec, hex, oct), numerickými hodnotami s desetinnou čárkou s volbou přesnosti a komplexními čísly. Vyjádření hodnot je možné ve standardním zobrazení, ve vědecké nebo technické notaci (exponenciálním tvaru). Prvky pracující s celočíselnými hodnotami (integer) mají barvu modrou , s desetinnou čárkou barvu oranžovou . Modrá soustava je připojitelná k oranžové. Obsahuje prvky pro vkládání a indikaci dvoustavových (boolovských) hodnot. Prvky mají barvu zelenou, spojovací čáry jsou tečkované . Obsahuje prvky pro vkládání a čtení textových řetězců (string) a cest (path) pro adresaci souborů. Text je generován v ASCII znacích. Prvky řetězců mají barvu růžovou, spojovací čáry jsou zvlněné . Ikony cest mají barvu modrozelenou, spojovací čáry jsou zvlněné
.
Obsahuje ikony pro vkládání a indikaci polí (array), klástrů (cluster) a matic (matrix). Pole obsahují prvky pouze jednoho datového typu, barva ikon a spojovacích čar odpovídá barvě použitého typu, čáry jsou tluštší, příp. u vícerozměrných polí dvojité. Příklad spojovací čáry jednorozměrného pole boolovských hodnot , dvourozměrného pole numerických hodnot . Klástry mohou sdružovat data různých typů. Pokud cluster obsahuje pouze numerická data, pak je jeho barva hnědá a spojovací čáry jsou . V ostatních případech je barva ikon i čar růžová . Ikony matic mají barvu okrovou a spojovací čáry mají tvar . Obsahuje listbox, tabulku a stromovou strukturu pro zápis a zobrazení alfanumerických dat. Výstupem listboxu je celočíselná hodnota odpovídající číslu označeného řádku, event. jednorozměrné pole integerů, označujících všechny označené řádky. Barva ikony je modrá. Tabulka obsahuje alfanumerická data v ASCII znacích a jejím výstupem je dvourozměrné pole typu string (indexy pole označují polohu prvku v řádku a sloupci). Barva ikony je růžová. Stromová struktura (tree) má barvu růžovou a jejím výstupem je textový řetězec. Obsahuje grafické zobrazovací prvky - waveform chart, umožňující zobrazování jednoho nebo více průběhů v reálném čase, vstupem jednotlivé numerické hodnoty, jedno- nebo dvourozměrné pole těchto veličin, - waveform graph, umožňující zobrazování jednoho nebo více průběhů současně offline, vstupem jedno- nebo dvourozměrné pole numerických hodnot, - XY graph, umožňuje zobrazení na sobě závislých veličin, vstupem numerický cluster. Dále obsahuje řadu dalších zobrazovacích prvků, včetně zobrazení 3D. Obsahuje ikony pro přiřazení číselných hodnot nenumerickým datům (textu, obrázkům). Výstupem je obvykle integer. Obsahuje ikony pro získávání a zobrazování zejména vstup-výstupních (I/O) dat. Jednotlivé prvky mají různý charakter a pracují tak s různým typem dat.
Paleta ikon pro numerické hodnoty Paleta umožňuje instalovat na čelním panelu různé podoby vkládání nebo indikace numerických hodnot. Současně s vložením některé z uvedených ikon na čelní panel se objeví odpovídající ikona též v blokovém diagramu a umožní programátoru s tímto prvkem komunikovat. Každá ikona obsahuje návěští (label), pomocí něhož je prvek identifikován. Defaultem nastavené návěští je možno přepsat po vložení na plochu čelního panelu nástrojem „vkládání hodnot“, nebo později „editací textu“. Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí tabulka, pomocí níž lze pracovat s nastavením parametrů tohoto prvku. Kliknutím na „Label“ lze návěští skrýt nebo vybavit. „Unit Label“ lze numerické hodnotě přiřadit fyzikální rozměr.
„Radix“ umožňuje pracovat s SI notací a při reprezentaci celočíselných hodnot s jinými číselnými soustavami (hex, oct). Pomocí „Find Terminal“ lze nalézt odpovídající ikonu v blokovému diagramu.
„Change to Indicator“ umožňuje změnit ovládací prvek za indikátor a naopak. Pomocí „Replace“ lze nahradit původní ikonu jinou.
„Make Current Value Default“ umožňuje změnit předem nastavenou hodnotu, což je důležité při ukládání programu na diskovou jednotku. Tabulka „Representation“ umožňuje zadávat číselné hodnoty v různých číselných formátech (s desetinnou čárkou s různou početní přesností první řádek, celočíselná kladná a záporná - druhý řádek, celočíselná pouze kladná - třetí řádek, komplexní čísla - čtvrtý řádek).
Kliknutím na „Display Format“ se objeví tabulka, v níž je možno nastavit způsob zobrazení číselné hodnoty („Type“) a určit počet zobrazených čísel (Significant digits) nebo počet číslic za desetinnou čárkou (Digits of precision) v okně „Digits“. Nutno potvrdit „OK“.
Kromě vkládání a indikace numerických hodnot obsahuje paleta ikon pro numerické hodnoty ještě ikonu „Framed Color Box“, pomocí níž lze přiřadit každé barvě celočíselnou kladnou hodnotu a naopak.
Paleta ikon pro boolovské hodnoty Paleta umožňuje instalovat na čelním panelu různé způsoby vkládání nebo indikace boolovských hodnot. Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí tabulka, pomocí níž lze pracovat s nastavením parametrů tohoto prvku. Kromě položek shodných s položkami uvedenými u numerických hodnot, obsahuje „Mechanical Action“, pomocí níž lze nastavit mechanickou podobu fukce tlačítka.
V prvním řádku je hardwarové ovládání tlačítka (boolovského prvku) - zapnutí i vypnutí se provádí ručně (levým tlačítkem myši), ve druhém řádku je smíšené ovládání, kdy počátek činnosti tlačítka je proveden ručně, ukončení je provedeno programem po vykonání příslušné operace, která je na tento prvek vázána.
Paleta ikon pro vkládání a čtení textových řetězců a cest Paleta umožňuje na čelním panelu instalovat ikony pro vkládání a čtení textových řetězců (string) a cest (path) pro adresaci souborů. Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí obdobná tabulka jako v předchozích případech.
V této sekci tabulky jsou přikazy k nastavení zobrazení kódu přenášeného textovým řetězcem. „Normal Display“ zobrazuje viditelné ASCII znaky, „‘\’Codes Display“ zobrazuje kromě ASCII znaků též řídicí znaky, „Password Display“ zobrazuje znaky skrytě, „Hex Display“ provádí výpis všech znaků v podobě hexadecimálního kódu. „Combo Box“ v paletě ikon umožňuje zápis několika textových řětězců a následný výběr některého z nich.
Paleta ikon pro vkládání a čtení polí, klástrů a matic Paleta umožňuje na čelním panelu instalovat ikony pro vkládání a čtení polí (array), klástrů (cluster) a matic (matrix). Aby bylo možno s polem nebo klástrem pracovat, je nutno je
naplnit konkrétním typem dat, u pole jedním typem, u klastrů jedním nebo více typy. Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí paleta ovládacích prvků, z níž se vybere příslušná ikona a vloží do pole nebo klástru.
Příklady: Pole
Klástr Pole numerických hodnot
Pole text. řetězců
Pole boolovských hodnot
Paleta ikon pro vkládání a čtení listboxů, tabulek a stromových struktur
Paleta umožňuje na čelním panelu instalovat ikony pro vkládání a čtení listboxů, tabulek a stromových struktur. Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí obdobná tabulka jako v předchozích případech. Důležitý je „Selection Mode“, pomocí něhož lze definovat práci s listboxem. Výběr žádné nebo jedné položky Výběr jedné položky Výběr žádné nebo více položek Výběr jedné nebo více položek Výstupem je v prvních dvou případech číslo řádku, v dalších dvou případech jednorozměrné pole s čísly označených řádků.
Paleta grafických zobrazovacích prvků Paleta umožňuje na čelním panelu instalovat grafické zobrazovací prvky. Pro zobrazení průběhu analogových veličin jsou nejdůležitější ikony v prvním řádku. Ikona „Ex XY Graph“ ve druhém řádku je totožná s „XY Graph“, zjednodušuje pouze programování využitím tzv. expresní funkce. První dva zobrazovací prvky „Waveform Chart“ a Waveform Graph“ zobrazují veličinu v sekvenčním sledu (obdobně jako na osciloskopu y(t)). Rozdíl mezi oběma prvky spočívá v tom, že „Waveform chart“ má paměť a zobrazení může probíhat postupným přidáváním hodnot až po naplnění paměti. Poté se nejstarší data přemazávají novějšími, takže zobrazení „roluje“, paměť má charakter FIFO. Vstupem mohou být jednotlivé veličiny, jednorozměrné, nebo dvourozměrné pole, pokud je požadováno zobrazení více veličin současně. „Waveform Graph“ umožňuje zobrazit pouze celý průběh (nebo více průběhů) najednou. Vstupem je tedy jedno- nebo dvourozměrné pole, kde v jednom rozměru jsou jednotlivé hodnoty jednoho průběhu, ve druhém jednotlivé průběhy (křivky). „XY Graph“ zobrazuje průběh závislost jedné veličiny (Y) na druhé (X). Vstupem je pole klástrů tvořených z hodnot X a Y.
Kliknutím pravého tlačítka myši na nainstalovanou ikonu se zobrazí následující tabulka. (U „Waveform Graph“ pouze chybí položky „Stack Plots“ a „Chart History Length…“.)
Kliknutím levým tlačítkem na „Visible Items“ se zobrazí paletka, v jejíž druhé sekci jsou uvedena pomocná okénka. Zaškrtnutá položka „Plot Legend“ zobrazuje název a barvu zobrazovaného průběhu nebo průběhů. „GraphPalette“ zobrazí podokno, pomocí něhož lze manipulovat se zobrazenými grafy (tvořit výřezy, posuny atd.) Kliknutím na „X Scale“ nebo „Y Scale“ se objeví tabulka umožňující nastavit zobrazení, měřítka a názvy os X nebo Y. Kliknutím na „Formating…“ se objeví obdobná tabulka jako u ikon pro numerické hodnoty („Display Format“). Kliknutím na „Stack Plots“ se objeví v tabulce na stejném místě „Overlay Plots“ a pro každý průběh se vytvoří samostatný display. Pomocí „Chart History Lenght“ lze nastavit délku paměťového bufferu pro zobrazení průběhu. Defaultem je nastavena hodnota 1024.
„XY Graph“ má pro nastavení parametrů podobnou tabulku jako „Waveform Graph“. Pro zobrazení více průběhů do jednoho zobrazovacího prvku je třeba vytvořit pole klástrů polí klástrů veličin X a Y.
Paleta zadávání nenumerických dat Paleta umožňuje na čelním panelu instalovat ikony pro vkládání nenumerických hodnot. Kliknutím pravého tlačítka na nainstalovanou ikonu se objeví obdoba známé tabulky.
Vkládání textu do jednotlivých položek se provede pomocí okna vyvolaného „Edit Items…“ v tabulce. Výstupem každé
položky je numerická hodnota uvedená v „Digital Display“ okna. Při vkládání obrázku se použije ikona „Pict Ring“ (příp. „Text&Pict Ring“). Obrázky se vkládají položkou „Import Picture from Clipboard“ z tabulky vyvolané kliknutím pravého tlačítka na ikonu. Přístup k této položce je možný po natažení obrázku, kdy clipboard není prázdný.
Paleta ikon pro komunikaci s periferiemi (I/O) Paleta umožňuje instalovat prvky pro komunikaci s periferními zařízeními připojenými k počítači např. měřicími kartami, měřicími přístroji a moduly prostřednictvím seriového rozhraní, USB portu, GPIB rozhraní apod. Dále obsahuje ikony pro čtení a tvorbu komplexních dat měření. Na prvním řádku jsou ikony pro vytvoření nebo čtení úplných dat měření, sestávajících z doby získání signálu (časového údaje), délky intervalu a průběhu veličiny. V další části tabulky jsou ikony pro adresaci zařízení.
Skupiny ikon v paletě funkcí „Programming“ Obsahuje paletu pro práci se strukturami.
Struktury „For Loop“ a „While Loop“ pracují s cykly. První provádí opakování operací uložených uvnitř struktury v předem nastaveném počtu. U druhé je počet opakování závislý na splnění resp. nesplnění podmínky vložené ve struktuře. „Case Structure“ umožňuje větvení programu dle rozhodovací podmínky. K zajištění časové sekvence běhu programu slouží „Flat Sequence“ a „Stacked Seq…“. Ve funkci jsou obě struktury shodné, vlastní ikony se liší zobrazením jednotlivých operací v sekvenci (první zobrazuje všechny jak jdou po
sobě, druhá zobrazuje pouze vybrané okno, ostatní okna jsou skrytá). „Math Script“ umožňuje vkládat části programu vytvořeného v MATLABU, “Formula Node“ dovoluje zadávat matematické vztahy, nebo sekvence v jazyce C. „Local Variable“ pracuje s lokálními proměnnými (v rámci jedné úlohy VI), „Global Varia…“ umožňuje přenos dat mezi úlohami v rámci souběžného běhu více programů (VI) současně. For Loop Struktura obsahuje dva prvky, vstupní „N“, pomocí něhož se zadává požadovaný počet opakování cyklů a výstupní „i“, který při běhu úlohy udává okamžité číslo cyklu (počáteční je vždy 0). Najetím kurzoru na svislou hranu struktury a kliknutím pravým tlačítkem se zobrazí tabulka. Pomocí „Conditional Terminal“ lze funkci struktury „For Loop“ rozšířit o funkci struktury „While Loop“. Je-li splněna zadaná podmínka dříve nežli počet cyklů dosáhne počtu „N“, dojde k předčasnému ukončení cyklování.
Vstupní bod pro zadání podmínky (dvoustavová veličina typu boolean).
Pro přenášení dat z předchozího do následujícího cyklu slouží posuvné registry, které je možno vytvořit pomocí „Add Shift Register“. Jejich počet není prakticky omezen. Jsou aktivní až po připojení konkrétního typu veličiny. Pro komunikaci s okolím slouží vstupní a výstupní brány. Ty se vytvoří přivedením veličiny na hranu struktury. (Příklady na obrázku.) Je-li na vstupní hranu struktury přivedeno pole veličin, potom lze do struktury přenést buď celé pole, nebo dekódovat toto pole na jednotlivé prvky dle indexace, tj. pro každý cykl je z pole vybrán prvek s odpovídajím indexem. Stejně se chová i výstupní brána. Z hodnot výstupní veličiny v jednotlivých cyklech
se vytvoří celé pole, nebo na výstupu zůstane po ukončení cyklování pouze poslední hodnota. Přepnutí funkce brány se děje pomocí položky „Disable Indexing“, resp. „Enable Indexing“ v tabulce vyvolané najetím kurzoru (prstu, šipky, cívky) na bránu a stisknutím pravého tlačítka.
While Loop Struktura obsahuje dva vnitřní prvky. Obdobně jako u struktury „For Loop“ index „i“ udává okamžité číslo probíhajícího cyklu. Červený terčík je vstupním bodem pro zadání podmínky typu boolean. Je-li na terčík přivedena po ukončení operace v příslušném cyklu hodnota „False“, pokračuje struktura dalším cyklem, v případě hodnoty „True“, je cyklování ukončeno. Najetím kurzoru na terčík a stisknutím pravého tlačítka se objeví tabulka, v níž lze označením „Continue if True“ funkci terčíku obrátit. Stejně jako v předchozí struktuře lze pro přenášení dat použít posuvné registry a pro komunikaci mimo strukturu použít vstupní a výstupní hradla se stejnými funkcemi. Na rozdíl od struktury „For Loop“ jsou defaultem u struktury „While Loop“ brány nastaveny na „Disable Indexing“, tj. data nejsou ovlivněna indexací. Při najetí programu na strukturu „While Loop“ je tato vždy minimálně jednou provedena, protože testování se provádí vždy jako poslední operace cyklu. Case structure Struktura obsahuje přepínací prvek pro větvení programu v podobě vstupní brány s otazníkem. Kromě toho na horní hraně struktury je okénko umožňující přepínání oken, v nichž jsou umístěny jednotlivé větve programu. Standardně jsou dvě okna, „False“ a „True“, a výběr okna se provádí pomocí dvoustavové veličiny typu boolean. Pokud je třeba zvětšit počet větvení programu na více oken než dvě, lze na přepínací prvek přivést jinou veličinu nežli boolean, např. numerickou nebo string (textový řetězec). Na následujícím obrázku je příklad řízení „Case“ struktury numerickou veličinou.
Najetím kurzoru do horního okénka a kliknutím pravého tlačítka se objeví tabulka pomocí jejichž položek je možno vkládat (příp. mazat) další programová okna. Dále lze okna přeskupovat a zadávat tzv. defaultní okno. U všech veličin, které mají nekonečné množství hodnot, musí být stanoveno defaultní okno pro případ, kdy řídicí veličina bude mít hodnotu, kterou neobsahuje žádné z horních okének. Pro komunikaci s okolím slouží vstupní a výstupní brány. Ty se vytvoří přivedením veličiny na hranu struktury. Na vstupní bránu může (ale nemusí) být připojen vstup funkčního prvku z kteréhokoliv programového okna. Každá výstupní brána musí být ale ošetřena ze všech programových oken. Flat Sequence Najetím kurzoru na hranu a stisknutím pravého tlačítka se objeví tabulka. Pomocí položek „Add Frame After“ („Add Frame Before“ při najetí na levou hranu, nebo „Insert Frame“ na vnitřní hranu) lze přidat další sekvenční okno, případně „Delete This Frame“ nebo „Merge Frames“ okna zrušit. Běh programu probíhá postupně okno za oknem jako ve filmu. Přenos dat do oken a z oken a dále mezi okny zprostředkovávají brány.
Stacked Sequence Najetím kurzoru na hranu a stisknutím pravého tlačítka se objeví tabulka obdobná jako u struktury „Flat Sequence“. Jednotlivá sekvenční okna jsou očíslována, zobrazeno je pouze jedno, ostatní jsou skryta. Přidávání příp. mazání oken se provádí pomocí položek „Add Frame After“, Add Frame Before“, „Duplikate Frame“ a „Delete This Frame“ obdobně jako u předchozí struktury. Přenos dat mezi okny vždy pouze směrem dopředu zprostředkovává speciální brána vytvořená položkou „Add Sequence Local“. Každá výstupní brána může být ošetřena pouze z jednoho okna
(na rozdíl od struktury „Case“).
Formula Node Najetím kurzoru na hranu a stisknutím pravého tlačítka se objeví tabulka. Pomocí položky „Add Output“ lze vytvořit výstupní brány které je nutno označit symboly (v příkladu z). Pomocí položky „Add Input“ lze vytvořit vstupní brány, které je třeba označit symboly (v příkladu x a y). Uvnitř struktury je zapsána matematická formule (v příkladu z se rovná x povýšenému na y). Každý výraz musí být ukončen oddělovacím znakem - středníkem. Feedback Node Funkce této ikony je vpodstatě shodná s funkcí posuvného registru u struktur „For Loop“ a „Whie Loop“. Umožňuje přenášet data z předchozího cyklu do následujícího.
Local Variable Najetím kurzoru na ikonu a stisknutím pravého tlačítka se objeví tabulka. Strukturu je třeba nejprve aktivovat pomocí „Select Item“ volbou některé dříve zadané veličiny, která se objeví v následující tabulce, např. „Numeric“. Ikona bude mít potom podobu: Je-li veličina požadována jako řídicí, lze jeji funkci pomocí „Change To Read“ změnit: Základní funkce spočívá v možnosti přepisování hodnoty příslušné veličiny v kterékoli části programu (zejména při větvení programu ve skrytých oknech). Svým způsobem nahrazuje terminálovou veličinu (v uvedeném příkladu ).
Global Variable Najetím kurzoru na ikonu a stisknutím pravého tlačítka se objeví tabulka. Pro aktivaci je nejprve vytvořit čelní panel globálních proměnných vyvoláním položky „Open Front Panel“. Na tomto panelu se pak vytvoří požadované proměnné, z nichž se následně výběrem prostřednictvím „Select Item“ přenese požadovaná veličina na ikonu např. Je-li požadováno vytvoření další globální proměnné z veličin stejného panelu globálních proměnných, je třeba původní veličinu zkopírovat pomocí clipboardu a pomocí „Select Item“ ji vybrat (např. ). Pokud se použije nová ikona „Global Variable“ vytvoří se další čelní panel globálních proměnných. Základní význam této struktury spočívá v možnosti přenášet data mezi více běžicími úlohami - softwarovém multitaskingu. Jedno okno s globálními veličinami může totiž sdílet více úloh najednou.
Obsahuje paletu pro práci s poli.
Výstupem ikony „Array Size“ je velikost pole. „Index Array“ umožňuje vybrat z pole určitý prvek. Pomocí „Replace Subs..“ lze měnit hodnotu prvků v poli. Pomocí „Insert Into Ar..“ lze do pole vkládat další prvky. Pomocí „Delete From..“ je možno mazat prvky pole. S ikonou „Initialize Array“ se iniciuje nové pole s prvky stejné hodnoty. Ikona „Build Array“ slouží k tvorbě nebo spojování polí. „Array Subset“ umožňuje výběr části pole. „Max&Min“ vybírá z pole prvek s maximální a minimální hodnotou. „Reshape Array“ slouží k přetvoření pole. „Sort 1D Array“ třídí jednorozměrné pole dle velikosti prvků od nejmenšího po největší. „Search 1D Ar..“ vyhledává index pole k prvku hledané hodnoty. „Split 1D Array“ rozděluje jednorozměrné pole na dvě části. „Reverse 1D A..“ reverzuje pole (zaměňuje poslední prvek pole za první, předposlední za druhý atd.). Pomocí ikony „Rotate 1D Ar..“ lze posouvat prvky v jednorozměrném poli a to jak vpřed, tak vzad. Pomocí „Interpolate 1..“ lze získat lineární interpolací hodnoty veličin mezi dvěma sousedními prvky. „Treshold 1..“ je inverzní funkcí interpolace, pracuje však pouze na úseku vzestupných hodnot. „Interleave 1D..“ slouží k prokládání polí, „Decimate 1D..“ k jejich rozkladu (inversní k prokladu). „Transpose 2..“ transponuje dvourozměrné pole (výměna řádků za sloupce a naopak). Pomocí „Array Consta..“ lze vytvořit konstantní pole se stejnými typy prvků různých hodnot. Ikony „Array To Clu..“ a „Cluster To Ar..“ slouží k převodu pole na klástry a naopak (klástr musí ale obsahovat prvky stejného nebo kompatibilního typu). Zbylé tři ikony slouží pro práci s maticemi.
Array Size Ikona má jeden vstup a jeden výstup. Vstupem je pole veličin (jedno- i vícerozměrné). Výstupem je numerická celočíselná hodnota udávající velikost pole tj. počet prvků pole. Každé pole začíná prvkem s indexem 0 a končí s indexem o jednotku menším než je počet prvků. Výstupem vícerozměrného pole je jednorozměrné pole, kde v každém prvku tohoto jednorozměrného pole je uveden počet prvků pole v příslušném rozměru vstupního pole. Index Array Ikona má v základní podobě dva vstupy a jeden výstup. Vstupem je jednorozměrné pole a číslo prvku (index), výstupem hodnota prvku pole vybraná indexem. Pomocí kurzoru se šipkou lze ikonu zvětšit, což umožňuje vybrat z jednoho pole více prvků současně. U vícerozměrných polí (příklad dvourozměrného pole) se v ikoně objeví více indexvstupů, každý je pro jeden rozměr pole. Je-li každý tento vstup ošetřen číselnou hodnotou, na výstupu bude hodnota prvku pole odpovídající vložené indexaci. Zůstane-li některý indexvstup neošetřen (čtvereček je nezačerněn), výstupem bude příslušné subpole (Subarray). Např. u dvourozměrného pole nebude-li ošetřena sloupcová indexace, bude výstupem jednorozměrné pole odpovídající indexovanému řádku. Stejně jako u jednorozměrného pole lze zvětšením ikony vybírat současně více prvků. Replace Subset Ikona má v základní podobě tři vstupy a jeden výstup. Hodnota prvku, který má být změněn, se přivede na vstup „newelement/subarray“, výběr se provede indexací. Pro vícerozměrná pole a změnu hodnot více prvků platí totéž jako ikony „Index Array“. Výstupem je příslušnými prvky změněné vstupní pole. Insert Into Array Ikona má v základní podobě tři vstupy a jeden výstup. Vložením nového prvku, jehož hodnota se přivede na vstup „newelement/subarray“, se zvětší původní pole o tento element. Prvek je vložen na místo určené indexem, ostatní prvky původního pole se posunou. Vše ostatní platí jako u ikony „Replace Subset“. Delete From Array Ikona má v základní podobě tři vstupy a dva výstupy. Dle zadaného počátečního indexu a zadaného počtu prvků (vstup „length) se ze stávajícího pole odeberou
odpovídající prvky. Výstupem je původní pole zmenšené o odebrané prvky, a dále je možno na výstupu „deleted portion“ tyto odebrané prvky získat. Pro vícerozměrná pole platí totéž jako u předchozích ikon, nelze ale odebírat více prvků najednou. Initialize Array Ikona má v základní podobě dva vstupy a jeden výstup. Pomocí ikony lze vytvořit pole, jehož všechny prvky mají stejnou hodnotu, zadanou vstupem „element“. Velikost pole je dána počtem prvků zadaných vstupem „dimension size“. Pro vytvoření vícerozměrného pole se ikona pomocí šipkového kurzoru příslušně zvětší, takže je možno zadat počet prvků i v dalších rozměrech. Build Array Základní ikona má jeden vstup a jeden výstup. Pomocí této ikony lze vytvořit ze vstupní veličiny jednorozměrné jednoprvkové pole (z jednorozměrného pole jednořádkové dvourozměrné pole apod.). Pro možnost spojování více prvků se ikona pomocí šipkového kurzoru zvětší na požadovaný počet vstupů. Tvorba výstupního pole má více variant. Připojením veličin (stejného typu) na jednotlivé vstupy se vytvoří jednorozměrné pole. Jednozorměrné pole lze vytvořit též přivedením jednorozměrných polí na některé ze vstupů a současně samotných veličin na další vstupy. Výstupem je pole složené ze všech vložených prvků v pořadí jednotlivých vstupů. V případě vstupů pouze jednorozměrných polí mohou nastat dvě varianty, a to buď se vytvoří jednorozměrné pole vzniklé pospojením těchto polí, nebo dvourozměrné, kde každý vstup bude jedním řádkem tohoto pole. Kliknutím pravého tlačítka na ikonu se objeví tabulka, v níž označením položky „Concatenate Inputs“ se vybere požadovaná varianta. Podobná pravidla platí i pro vícerozměrná pole. Array Subset Základní ikona má tři vstupy a jeden výstup. Pomocí této ikony lze vytvořit na výstupu subpole. Výběr z původního pole se děje zadáním počátečního indexu a délkou nového pole (vstup „length“). Počáteční prvek vytvořeného subpole má index 0. U vícerozměrných polí se vybaví index vstupu a délky pole pro každý rozměr.
Max&Min Tato ikona má jeden vstup a čtyři výstupy. Vybírá ze vstupního pole prvek s maximální a minimální hodnotou. Výstupem je jednak velikost max. a min. hodnoty, jednak indexy pole, kde se tyto hodnoty nacházejí. Pokud se v poli nachází více prvků se stejnou hodnotou, je označen prvek s nejmenším indexem. U vícerozměrných polí je indexvýstupem jednorozměrné pole, jehož prvky jsou indexy jednotlivých rozměrů. Reshape Array Ikona má v základní podobě dva vstupy a jeden výstup. Pomocí šipkového kurzoru lze zvětšit počet vstupů „dimension size“ a tím určit rozměr výstupního pole. Velikost výstupního pole je určena hodnotami prvků v jednotlivých rozměrech vložených na vstupech „dimension size“. Vstupní jedno- nebo vícerozměrné pole je pak přetvořeno na požadované výstupní pole. Obsahuje-li vstupní pole méně prvků nežli pole výstupní, jsou zbývající prvky výstupního pole doplněny defaultními hodnotami (např. u numerických polí nulou), je-li tomu naopak, přebývající prvky vstupního pole jsou z nového pole vyřazeny. Sort 1D Array Ikona má jeden vstup a jeden výstup. Výstupem je setříděné jednorozměrné vstupní pole dle velikosti hodnot prvků ve vzestupném sledu. Search 1D Array Ikona má tři vstupy a jeden výstup. V jednorozměrném poli je vyhledán index prvku, který má hodnotu shodnou s hodnotou vloženou na vstup „element“. Vyhledávání začíná od prvku s velikostí indexu vloženého na vstupu „start index“ (defaultní nastavení 0). Výstupem je index vyhledávaného prvku. Pokud vstupní pole vyhledávaný prvek neobsahuje, je výstupem hodnota -1. Pokud je v poli prvků se stejnou hodnotou více, objeví se na výstupu index s nejnižší hodnotou. Split 1D Array Ikona má dva vstupy a dva výstupy. Vloženým indexem je jednorozměrné pole rozděleno na dvě části. První část pole je tvořena původním pole od počátku až po index o jednotku nižší než je vložená hodnota, druhou část tvoří zbytek původního pole od vloženého indexu po konec. Počátek indexace výstupu obou částí pole začíná hodnotou 0. Reverse 1D Array Ikona má jeden vstup a jeden výstup. Výstupem je jednorozměrné pole jehož prvky jsou vzhledem k původnímu poli indexačně symetricky zaměněny.
Rotate 1D Array Ikona má dva vstupy a jeden výstup. Výstupem je jednorozměrné pole sestávající se shodných prvků se vstupním pole, pouze posunutých o vložený počet míst v poli. Posunutí se vkládá na vstup „n“. Hodnota posunutí může být kladná (potom se posun děje zleva doprava s tím, že vždy poslední prvek se přesune na počátek pole), nebo záporná (posun zprava do leva, prvek na počáteční pozici se přesune na konec). Interpolate 1D Array Ikona má dva vstupy a jeden výstup. Výstupem je hodnota daná lineární interpolací mezi hodnotami dvou sousedních prvků vstupního jednorozměrného pole. Vstupním parametrem pro interpolaci je vložená neceločíselná hodnota na vstup „fractional index of x“. Treshold 1D Array Ikona má tři vstupy a jeden výstup. Výstupem je lineární interpolací ve vstupním poli vyhledaný neceločíselný index odpovídající vložené hodnotě na vstupu „treshold y“. Vyhledávání začíná od počátečního prvku zadaného na vstupu „start index“. Vyhledávání je aktivní pouze na částech pole, kde hodnota veličiny s indexací roste. Pokud je hledaná hodnota mimo rozsah hodnot vstupního pole, je výstupem nejbližší celočíselný index vstupního pole. Interleave 1D Arrays Ikona má v základní podobě dva vstupy a jeden výstup. Výstupem je pole vzniklé složením dvou vstupních polí prokládáním jednotlivých prvků (zipováním). Pokud pole nemají stejný počet prvků je kratší pole doplněno prvky s defaultními hodnotami. Jeho délka je pak dána součtem délek obou polí. Pomocí šipkového kurzoru lze ikonu zvětšit a použít k prokládání více polí. Délka takto vytvořeného pole bude dána součinem počtu vstupních polí a počtu prvků v nejdelším z těchto polí. Decimate 1D Array Ikona má v základní podobě jeden vstup a dva výstupy. Provádí inverzní funkci k „Interleave 1D Array“, tj. rozzipovává vstupní pole na dvě pole, takže délka výstupních polí je poloviční počtu prvků původního pole. Kurzorem lze ikonu zvětšit a vstupní pole je tak možno podobným způsobem rozložit do více výstupních polí.
Transpose 2D Array Ikona má jeden vstup a jeden výstup. Výstupem je dvourozměrné pole vzniklé transpozicí vstupního dvourozměrného pole, kde se vymění řádky za sloupce a naopak. Array Constant Ikona má jeden výstup. Ikona bude aktivní až po naplnění konrétním typem veličiny. Výstupem je pole veličiny zadaného typu, jejíž hodnoty lze do jednotlivých prvků pole vkládat. Pomocí šipkového kurzoru lze indexový vstup roztáhnout na zadávání vícerozměrných polí.
Obsahuje paletu pro práci s klástry.
Výstupy ikon „Unbundle“ a „Unbundle By..“ jsou rozklíčovaná data, která obsahuje vstupní klástr. Pomocí „Bundle“ a Bundle By N..“ lze vytvořit z jedlotlivých vstupních veličin klástr. Pomocí ikony „Build Cluster..“ je možno vytvořit jednorozměrné pole klástrů ze vstupních prvků stejného typu. Ikona „Index & Bun..“ tvoří pole klástrů z veličin jednorozměrných vstupních polí i různých typů. Ikony „Array To Clu..“ a „Cluster To Ar..“ slouží k převodu pole na klástry a naopak (jsou shodné s ikonami v paletě „Array“). Pomocí ikony „Cluster Cons..“ lze vytvořit klástr jako konstantu.
Unbundle Ikona má v základní podobě jeden vstup a dva výstupy. Počet výstupů se automaticky nastaví dle vstupního klástru (dle počtu veličin, které obsahuje). Veličiny na výstupu jsou seřazeny v pořadí, v jakém jsou nastaveny ve vstupním klástru. V každém výstupním okénku se objeví typ příslušné veličiny.
Unbundle By Name Ikona má v základní podobě jeden vstup a jeden výstup. Veličiny, které mají ve vstupním klástru návěští, lze získat na výstupu dle tohoto návěští. Kliknutím pravým tlačítkem na výstupní okno ikony se objeví tabulka, kde pomocí položky „Select Item“ se k příslušnému výstupu výbere veličina s požadovaným návěštím. Pomocí šípkového kurzoru lze ikonu zvětšovat a získat tak požadovaný počet výstupů. Příklad:
Bundle Ikona má v základní podobě tři vstupy a jeden výstup. Výstupem je klástr vytvořený z jednotlivých vstupních veličin. Jejich počet lze rozšířit zvětšením ikony pomocí šipkového kurzoru. Vstup „cluster“ slouží k předdefinování výstupního klástru. Bundle By Name Ikona má v základní podobě dva vstupy a jeden výstup. Výstupem je klástr vytvořený z jednotlivých vstupních veličin. Vstup „input cluster“ slouží k definování návěští vstupních veličin. Jejich počet lze rozšířit zvětšením ikony pomocí šipkového kurzoru. Příklad:
Build Cluster Array Ikona má v základní podobě jeden vstup a jeden výstup. Počet vstupů lze zvětšit pomocí šipkového kurzoru. Výstupem je jednorozměrné pole klástrů. Index & Bundle Cluster Array Ikona má v základní podobě jeden vstup a jeden výstup. Počet vstupů lze zvětšit pomocí šipkového kurzoru. Výstupem je jednorozměrné pole klástrů.
Cluster To Array Ikona má jeden vstup a jeden výstup. Výstupem je jednorozměrné pole vytvořené z veličin, které obsahuje vstupní klástr. Podmínkou je, že všechny prvky vstupního klástru mají stejný charakter (representation). Vstupní klástr nesmí obsahovat pole, ale může mít vhnízděné další podobné klástry s různorodými veličinami. Array To Cluster Ikona má jeden vstup a jeden výstup. Výstupem je klástr vytvořený z prvků jednorozměrného pole. Rozměr klástru (počet prvků, které bude obsahovat) lze nastavit z tabulky, vyvolané kliknutím pravého tlačítka na ikonu, pomocí položky „Cluster Size..“ Cluster Constant Ikona má jeden výstup. Ikona bude aktivní až po naplnění konrétních veličin. Výstupem je klástr sestavený z vložených veličin.
Obsahuje paletu pro práci s numerickými veličinami.
„Add“ provádí součet dvou numerických čísel, „Subtract“ jejich rozdíl, „Multiply“ jejich součin, „Divide“ jejich podíl. „Quotient &..“ provádí dělení se zbytkem, „Compound..“ umožňuje sčítání resp. odečítání většího počtu sčítanců nebo násobení resp. dělení většího počtu činitelů. „Increment“ zvětšuje numerickou hodnotu o jednotku, „Decrement“ hodnotu o jednotku zmenšuje. „Add Array El..“ provádí součet všech hodnot numerických prvků v jednorozměrném poli, „Multiply Arra..“ provádí součin těchto prvků. Výstupem „Absolute Val..“ je absolutní hodnota vstupního čísla. „Round To N..“ a „Round Towa..“ zaokrouhlují čísla (normálně, nahoru nebo dolů). „Scale By Pow..“ umožňuje násobit vstupní hodnotu hodnotou dvě na n-tou. „Square Root“ vytváří druhou odmocninu, „Square“ druhou mocninu vstupního čísla. „Negate“ násobí vstupní veličinu minus jednou, „Reciprocal“ provádí reciprokou hodnotu. Výstupem „Sign“ je jedna ze tří hodnot -1, 0, +1, dle toho zda vstupní veličina je záporná, nula, nebo kladná. „Random Nu..“ slouží pro generování náhodných čísel v rozsahu nula až jedna. Dále paleta obsahuje ikony pro zadávání konstant a to v podobě jak numerických, tak nenumurecky zadaných čísel. Vnořená podpaleta „Conversion“ umožňuje konverzi čísel různého charakteru, „Data Manipu..“ manipulaci se vstupními čísly (rozklad, syntézu, rotaci, posuvy apod.), „Complex“ práci s komplexními čísly, „Scaling“ (převody radiánů a grad na úhlové stupně, převody hodnot dle charakteristik některých fyzikálních veličin apod.). Quotient & Remainder Ikona má dva vstupy a dva výstupy. Na výstupu „IQ“ je celočíselná hodnota dělení, na výstupu „R“ je zbytek, jehož absolutní hodnota je vždy menší nežli absolutní hodnota dělitele a větší nebo rovna nule. Compound Arithmetic Ikona má v základní podobě dva vstupy a jeden výstup. Počet vstupů lze zvětšit pomocí šipkového kurzoru. Ikonu lze využít jednak pro sčítání a odčítaní, nebo pro násobení a dělení. Kliknutím pravým tlačítkem na výstupní okno ikony se objeví tabulka. Výběrem položky „Change Mode“ se vyvolá podtabulka, pomocí níž se vybere zda výstupem ikony bude operace sčítání („Add“), nebo násobení (Multiply“). Je-li v původní tabulce iniciována položka „Invert“ u některého vstupu nebo u výstupu (označí se kroužek), změní u sčítání hodnota znaménko, u násobení se stane dělitelem (na výstupu reciprokou hodnotou).
Conversion Obsahuje podpaletu.
Number To Boolean Array Ikona má jeden vstup a jeden výstup. Na výstupu se vytvoří pole boolovských hodnot vyjadřujících ve dvojkové soustavě hodnotu čísla na vstupu. Index každého prvku pole udává bitovou významnost v převodu. Boolean Array To Number Ikona má jeden vstup a jeden výstup. Na výstupu se objeví dekadická celočíselná hodnota odpovídající hodnotě čísla na vstupu, zadaného ve dvojkové soustavě prostřednictvím booleovského pole. Boolean To (0,1) Ikona má jeden vstup a jeden výstup. Vstupní booleovskou hodnotu „F“ a „T“ převádí na výstupu na numerickou hodnotu „0“ a „1“. Complex Obsahuje podpaletu. Tato podpaleta obsahuje v podobě ikon funkce pro standardní práce s komplexními čísly, včetně převodů mezi různými způsoby vyjádření těchto čísel.
Square Root Ikona má jeden vstup a jeden výstup. Výstupem je druhá odmocnina číselné hodnoty na vstupu. Je-li na vstupu záporné číslo, je výstupem „NaN“. Pro práci v oboru komplexních čísel lze tuto ikonu použít v případě, že je záporné číslo na vstupu napřed převedeno na komplexní tvar, a též na výstupu jsou všechny připojené prvky (ikony) schopny pracovat s komplexními čísly, viz příklad:
Obsahuje paletu pro práci s booleovskými (dvoustavovými) veličinami.
„And“ provádí logický součin dvou vstupních veličin, „Or“ jejich logický součet, „Exclusive Or“ exklusivní součet (nonekvivalenci), „Not“ logickou negaci. Výstupem „Not And“, „Not Or“ a „Not Exclusiv..“ jsou negované hodnoty „And“, „Or“ a „Exclusiv Or“. Výstupem ikony „Implies“ je hodnota implicitní funkce vstupních velečin. Pomocí „And Array El..“ lze vytvořit logický součin hodnot všech prvků vstupního booleovského pole. „Or Array Ele..“ vytváří obdobně logický součet hodnot všech prvků vstupního pole. Pomocí „True Constant“ a „False Constant“ lze zadat booleovské konstanty. Ikony „Num to Array“, „Array to Num“ a Bool to (0,1) byly již popsány výše. Ikona „Compound..“ má podobnou funkci jako v numerické paletě, pracuje ale s booleovskými veličinami. Compound Arithmetic Ikona má v základní podobě dva vstupy a jeden výstup. Počet vstupů lze zvětšit pomocí šipkového kurzoru. Ikonu lze využít pro logický součet, logický součin a exklusivní součet. Kliknutím pravým tlačítkem na výstupní okno ikony se objeví tabulka, kde pod položkou „Change Mode“ je skryta podtabulka. Zde je možno zvolit požadovanou booleovskou funkci. Ikona „Compound Arithmetic“ je společná jak pro numerickou, tak pro booleovskou paletu.
Obsahuje paletu pro práci s textovými řetězci (stringy).
Výstupem „String Length“ je číslo udávající délku řetězce (počet znaků, který string obsahuje). „Concatenate..“ spojuje více řetězců do jednoho výstupního. „String Subset“ vybírá ze vstupního pole úsek - substring požadované délky. Pomocí „Replace Subs..“ lze vyjmout část řetězce a nahradit ji jinou. Podobně pracuje i „Search and R..“, s tím rozdílem, že je nejprve textově nalezena ta část řetězce, která má být nahražena. „Matsch Pattern“ a „Matsch Regul..“ umožňují rozdělit vstupní řetězec. Ikony „To Upper Case“ a „To Lower Case“ provádějí záměnu malých písmen za velké a naopak. Pomocí „String Const..“ lze zadávat textový řetězec jako konstantu. „Empty String..“ generuje prázdný string (bez znaků). Ikony „Space Const..“, „Carriage Ret..“, Line Feed Co..“, „End of Line..“ a „Tab Constant“ generují řídicí znaky, po řadě hexadecimálně 20H, 0DH, 0AH, 0D0AH a 09H. Vnořená podpaleta „Additional St..“ obsahuje další funkce pro práci s řetězci, pomocí „String/Num..“ se provádějí převody řetězců s numerickými znaky na číselné hodnoty a naopak a „Conversion“ převádí řetězce na jiné typy veličin a obráceně. Concatenate Strings Ikona má v základní podobě dva vstupy a jeden výstup. Výstupem je textový řetězec složený spojením dvou vstupních řetězců. Pro možnost spojování více řetězců se ikona pomocí šipkového kurzoru zvětší na požadovaný počet vstupů. Ikonu lze též zúžit pouze na jeden vstup, čehož je možno využít např. při vytvoření jednoho stringu pospojováním jednotlivých řetězců ze stringového pole.
Příklad:
String Subset Ikona má tři vstupy a jeden výstup. Výstupem je substring vzniklý ze vstupního řetězce vyjmutím počtu znaků zadaných vstupem „length (rest)“ počínaje znakem v pořadí vloženým číslem na vstup „offset (0)“. Replace Substring Ikona má čtyři vstupy a dva výstupy. Výstupem je jednak původní vstupní řetězec, v němž je část nahrazena novým stringem vloženým na vstupu „substring (“ “), jednak nahrazená část původního řetězce („replced substring“). Počátek a délka nahrazované části se vkládají na vstupy „offset“ a „length“. Search and Replace String Ikona má sedm vstupů a čtyři výstupy. Funkce je podobná jako u „Replace Substring“. Na vstupu „search string“ je vložena část řetězce, která je nejprve vyhledána jako součást původního vstupního řetězce. Na místo této vyhledané části je pak vložen nový string, vložený na vstupu „replace string“. Počátek vyhledávání lze určit na vstupu „offset“. Match Pattern Ikona má tři vstupy a čtyři výstupy. Výstupy jsou tři substringy, vzniklé rozdělením původního vstupního řetězce. Rozdělení je řízeno vstupem „regular expression“. Podrobná funkce tohoto vstupu je uvedena v „Help“ této ikony. String/Number Conversion Obsahuje podpaletu. Tato podpaleta obsahuje v podobě ikon funkce pro převod řetězců s numerickými znaky na číselné hodnoty a naopak. Číselné hodnoty mohou být v celočíselné podobě v dekadické, hexadecimální nebo oktalové soustavě, neceločíselné s desetinnou čárkou ve standardní podobě nebo v exponenciálním tvaru.
Obsahuje paletu pro práci s porovnávacími funkcemi.
Většina komparačních funkcí je polymorfních, tzn. umožňují práci s různými typy vstupních veličin (numerické, booleovské, stringy, pole, klástry apod.) U polí a klástrů lze navíc stanovit, zda je požadováno porovnování celku, nebo jednotlivých prvků. Kliknutím pravého tlačítka na zvolenou komparační ikonu se objeví tabulka, u níž volbou položky „Comparison Mode“ je možno požadovanou funkci zvolit. „Equal?“ porovnává dvě vstupní veličiny, při shodnosti generuje na výstupu booleovskou hodnotu „true“. „Not Equal?“ provádí totéž jako předchozí ikona, při shodě generuje „false“. „Greater?“ generuje „true“, je-li první veličina větší nežli druhá. Analogicky fungují i ikony „Less?“, Greater Or E..“ a „Less Or Equal?“. V případě vstupních signálů v podobě řetězců rozhoduje o velikosti hodnota jejich ASCII znaků. „Equal To 0?“, Not Equal To..“, Greater Than..“, Less Than 0?“, „Greater Or E..“ („Greater Or Equal To 0“) a „Less Or Equa..“ se porovnává vstupní veličina s hodnotou nula. U neceločíselných hodnot je třeba s těmito funkcemi pracovat opatrně, neboť vlivem vnitřní činnosti software může dojít k chybnému výsledku (např. exaktně je výsledek roven 0, při výpočtu s konečným počtem desetinných
míst a počítačovém zaokorouhlování má výsledek nepatrnou nenulovou hodnotu). „Select“ provádí funkci přepínače. „Max & Min“ určuje na výstupech ze dvou vstupních hodnot maximální a minimální. „In Range and..“ stanovuje, zda vstupní veličina je ve zvoleném rozsahu. Následující ikony slouží k rozpoznání, zda vstupní veličina obsahuje určitý prvek (např. prázdné pole, prázdný řetězec, dekadické číslo apod.). Select Ikona má tři vstupy a jeden výstup. Dvě veličiny stejného typu jsou přivedeny na vstupy „t“ a „f“. Na výstupu se objeví veličina ze vstupu, který je určen nastavením booleovské hodnoty true nebo false na vstupu „s“. In Range and Coerce Ikona má tři vstupy a dva výstupy. Výstup „In Range?“ signalizuje v podobě booleovské hodnoty, zda vstupní veličina se nachází v rozsahu, zadanému hodnotami na vstupech „upper limit“ a „lower limit“. Kliknutím pravého tlačítka na ikonu se objeví tabulka, kde lze označením položek „Include upper limit“ a „Include lower limit“ zahrnout nebo nezahrnout vložené hodnoty do rozsahu (ohraničená nebo neohraničená množina). Na výstupu „coerced x“ se objeví buď vstupní veličina, pokud je v rozsahu, nebo hodnota horní limity, pokud je vstupní hodnota nad rozsahem, příp. dolní limity, pokud je pod rozsahem.
Obsahuje paletu pro práci časovými funkcemi.
„Tick Count (..“ slouží jako časovač. Na výstupu generuje hodnotu okamžitého stavu kontinuálně běžícího vnitřního čítače (v ms). „Wait (ms)“ umožňuje vytvoření čekacího intervalu zadáním hodnoty v ms na vstup ikony. Na výstupu je
generována stejná hodnota jako u předešlé ikony. „Wait Until N..“ slouží k taktování cyklovacích struktur „For Loop“ a „While Loop“. Požadovaná délka cyklu v ms se vloží na vstup, na výstupu je opět okamžitá hodnota vnitřního čítače. „Get Date/Ti..“ („Get Date/Time In Seconds“) funguje jako generátor reálného času, řízeného hodinami počítače. Výstupem je speciální časový klástr obsahující datum a čas s rozlišením ms. Ikona „Get Date/Ti..“ („Get Date/Time String“) má dva výstupy (datum a čas) v podobě textových řetězců. Ikony „Date/Time T..“ a „Seconds To..“ převádějí spec. časový klástr na klasický klástr a naopak. „Time Stamp..“ jsou konstantou pro zadávání datumu a času v podobě spec. čas. klástru. „Format Date..“ převádí reálný čas v podobě spec. čas. klástru na textový řetězec. Get Date/Time String Ikona má tři vstupy a dva výstupy. Na horním výstupu „date string“ je generováno datum, na spodním „time string“ čas. Formát datumu a rozlišení času je možno nastavit vstupy „date format“ a „want seconds?“. Vstup „time stamp“ je defaultně připojen ke generátoru reálného času. Seconds To Date/Time Ikona má dva vstupy a jeden výstup. Funkce je znázorněna na příkladu. Date/Time To Seconds Ikona má dva vstupy a jeden výstup. Funkce je opačná než u předchozí ikony. Format Date/Time String Ikona má tři vstupy a jeden výstup. Funkce je obdobná jako u ikony „Get Date/Time String“ s tím rozdílem, že jeden výstupní řetězec obsahu datum i čas. Formát lze nastavit pomocí vstupu „time format string“.
Obsahuje paletu pro práci se soubory.
Pomocí „Write Spread..“ se ukládají numerická data v podobě jedno- nebo dvourozměrných polí do souborů. „Read Spread..“ umožňuje čtení jedno- nebo dvourozměrných numerických polí ze souboru. „Open/Create..“ a „Close File“ slouží k otevření a uzavření souboru. „Write Text File“ a Read Text File“ se používají k zápisu a čtení textových řetězců do souboru, „Write Binary..“ a Read Binary..“ k zápisu a čtení smíšených dat v podobě klástru. Vnořená podpaleta „File Constants“ obsahuje ikony pro zadávání a činnost související s adresací souboru. Write To Spreadseehet File.vi Ikona má sedm vstupů a jeden výstup. Pro ukládání numerických dat (v numerické podobě nebo jako textový řetězec numerických znaků) lze využít buď vstup „2D data“ nebo „1D data“. Adresa a název souboru je vkládán na vstup „file path (dialog if empty)“. Vstupem „Append to file? (new file:F)“ lze řídit režim zápisu, zda při novém zápisu se starý zápis přepíše, nebo zda se nová data připíší za stará. Pomocí „transpose? (no:F)“ lze při zápisu transponovat dvourozměrné vstupní pole. „delimiter (\t)“ nastavuje oddělovací znaky mezi jednotlivými hodnotami (defaultně nastaven tabulátor- 09H). Vstupem „format (%3f)“ lze nastavit formát zápisu numerické hodnoty. Výstup v podstatě přenáší vstupní adresaci souboru na výstup. Read From Spreadseehet File.vi Ikona má osm vstupů a čtyři výstupy. Kromě toho lze pomocí spodní lišty vybrat způsob výstupu numerických hodnot, a to buď pole neceločíselných hodnot (s desetinnou čárkou), nebo jako pole integerů, nebo jako textové pole, kde je každá číslovka a
desetinná čárka vyjádřena pomocí ASCII znaků. Výstupem je jedno- nebo dvourozměrné pole číselných hodnot uložených v souboru specifikovaném na vstupu. Open/Create/Replace File Ikona má šest vstupů a tři výstupy. Vstup „file path (use dialog)“ slouží pro adresaci souboru, s kterým se bude pracovat, pomocí „operation (0:open)“ se nastavuje požadovaná operace se souborem (otevření, vytvoření, výměna), vstup „access (0:read/write)“ nastavuje funkci souboru (umožnění čtení, zápisu nebo obojího). Výstup „refnum out“ reprodukuje adresaci souboru. Close File Ikona má dva vstupy a dva výstupy. Vstup „refnum“ slouží pro adresaci souboru.
Write to Text File Ikona má čtyři vstupy a tři výstupy. Na vstup „file (use dialog)“ se vloží adresa a název souboru, do kterého se bude zapisovat. Vlastní zapisovaný text se vkládá na vstup „text“. Adresace souboru je přenášena na výstup „refnum out“ pro snadné kaskádní připojení další ikony. Kliknutím pravého tlačítka se objeví tabulka, kde je zatržena kolonka „Convert EOL“. Tato zapnutá konverze převádí ukončovací řídicí znaky „Carriage Return Constant“
(0DH), „Line Feed
Constant“ (0AH) a „End of Line Constant“ (0D0AH) na znak „Line Feed Constant“ (0AH). Pokud je „Covert EOL“ vypnut, zůstávají ukončovací znaky v původní podobě. Příklad jednoduchého programu pro zápis textových dat:
Read from Text File Ikona má čtyři vstupy a čtyři výstupy. Na vstup „file (use dialog)“ se vloží adresa a název souboru, ze kterého se budou číst data v podobě textového řetězce na výstupu „text“. Pro čtení ukončovacích znaků platí totéž jako u ikony „Write to Text File“. Při programování je třeba nejprve soubor otevřít a po ukončení čtení zavřít, podobně jako v předchozím příkladu. Write to Binary File Ikona má šest vstupů a tři výstupy. Základní vstupy a programovací pravidla jsou shodná s předchozími ikonami pro zápis a čtení řetězců, pouze na vstup „data“ jsou přivedena data z klástru. Read from Binary File Ikona má šest vstupů a čtyři výstupy. Na výstupu „data“ se objeví data ve formátu v jakém byla do souboru zapsána. File Constants Obsahuje podpaletu. Tato podpaleta obsahuje ikony pro práci s adresací souborů. Např. ikona „Path Constant“ umožňuje vkládat adresu a název souboru jako konstantu.
Obsahuje paletu pro práci se signály.
Ikona „ Get Wfm Co..“ umožňuje rozložit speciální klástr signálových veličin na jednotlivé složky. „Build Wavef..“ je opakem předchzí ikony a z příslušných signálových
složek vytváří speciální klástr. Další ikony slouží pro práci s veličinami tohoto speciálního klástru. Využití uvedené palety je spíše ve starších verzích prostředí LabView, která neznala expresní funkce a tzv. dynamická data. Get Waveform Components Ikona má v základní podobě jeden vstup a jeden výstup. Pomocí šipkového kurzoru lze ikonu roztáhnout celkem na čtyři výstupy, z nichž nejdůležitější jsou první tři. Na příkladu je ke vstupu ikony připojen speciální klástr obsahující údaj o čase pořízení signálu (na výstupu „t0“), vzdálenost mezi jednotlivými vzorky signálu (na výstupu „dt“) a jednorozměrné pole hodnot signálu (na výstupu „Y“). Build Waveform Ikona má v základní podobě dva vstupy a jeden výstup. Pomocí šipkového kurzoru lze ikonu roztáhnout celkem na pět vstupů. Podobně jako u předchozí ikony jsou nejdůležitější tři základní a to „t0“, „dt“ a „Y“, pomocí nichž lze vytvořit speciální klástr, potřebný např. při zobrazování průběhů měřených signálů s údajem času, kdy byly tyto signály pořízeny.
Obsahuje paletu pro řídicí aplikace.
Ikona „Stop“ umožňuje okamžité ukončení běhu programu, ikona „Quit LabVIEW“ ukončení programu a výstup z prostředí LabView do operarčního systému.
Obsahuje paletu pro dialog a uživatelský interface.
Ikona „Color Box Co..“ umožňuje přiřadit každé barvě a jejímu odstínu celočíselnou hodnotu. Ikony „….Error..“ slouží pro práci s chybovými hláškami.
„Instrument I/O“ Obsahuje paletu pro práci se seriovým rozhraním.
Ikona „Configure P..“ slouží pro konfiguraci seriového portu. Pomocí „Write“ se na specifikovaný port zapisují data ve formě řetězce, prostřednictvím ikony „Read“ lze data ze seriového portu číst. „Close“ port uzavírá, „Break“ přerušuje komunikaci. Prostřednictvím „Bytes at Port“ lze zjistit počet nepřečtených bytů v příjmovém buferu, a pomocí „Set Buffer Size“ lze nastavit velikost příjmového buferu. VISA Configure Serial Port Ikona má deset vstupů a dva výstupy. Vstupem „VISA resource name“ se adresuje seriový port. Pomocí vstupu „baud rate (9600)“ se nastavuje přenosová rychlost
(defaultně 9600 bitů/s), vstup „data bits (8)“ nastavuje počet bitů v přenášeném znaku (bytu), „parity (0:none)“ určuje nastavení paritního bitu, „stop bits (10: 1 bit)“ počet stopbitů, vstup „timeout (10 sec)“ nastavuje maximální dobu, po kterou program čeká na činnost ikony (přísun dat do registru). VISA Write Ikona má tři vstupy a tři výstupy. Adresace portu se děje prostřednictvím vstupu „VISA resource name“. Přenášený řetězec se vkládá na vstup „write buffer“. VISA Read Ikona má tři vstupy a čtyři výstupy. Adresace portu se děje prostřednictvím vstupu „VISA resource name“. Na vstup „byte count“ se vkládá požadovaný počet znaků pro přečtení. Pokud vložený počet znaků je větší nežli počet znaků ve čtecím registru, program čeká dobu nastavenou timeoutem na příchod dalších znaků. Nenaplní-li se do té doby čtecí bufer, ohlásí se tato okolnost chybovou hláškou. Přečtená data ze seriového portu se objeví na výstupu „read buffer“ ve formě stringu. VISA Bytes at Seriál Port Ikona má dva vstupy a tři výstupy. Adresace portu se děje prostřednictvím vstupu „reference“. Aktuální počet bytů ve čtecím buferu je registrován na výstupu „Seriál Settings:Number of Bytes at Seriál Port“. VISA Set I/O Buffer Size Ikona má čtyři vstupy a dva výstupy. Adresace portu se děje prostřednictvím vstupu „VISA resource name“. Nastavení velikosti buferu se provádí vstupem „size (4096)“, (defaultně nastavena hodnota 4096 bytů). Vstupem „mask (16)“ se řídí funkce buferu („I/O Receive Buffer“, „I/O Transmit Buffer“, „I/O Receive and Transmit Buffer“).
„Mathematics“ Obsahuje paletu pro práci s numerickými veličinami. Je shodná s paletou v okně „Programming“. Obsahuje paletu pro práci se základními a speciálními funkcemi.
Trigonometric Functions Obsahuje podpaletu goniometrických a cyklometrických funkcí a funkci sinx/x .
Vstupní veličiny goniometrických fcí jsou vkládány v obloukové míře, výstupní hodnoty cyklometrických jsou v intervalu < 0, π/2 > . Exponential Functions Obsahuje podpaletu exponenciálních a logaritmických funkcí.
Hyperbolic Function Obsahuje podpaletu hyperbolických a hyperbolometrických funkcí.
Obsahuje paletu pro činnosti související s derivováním a integrováním.
„Numeric Inte..“ slouží pro výpočet určitého integrálu. Výstupem „Integral x(t)“ je neurčitý integrál, tj. funkce odpovídající integraci vstupní funkce. Výstupem ikony „Derivative x(t)“ je derivace vstupní funkce. Obsahuje paletu pro statistické a pravděpodobnostní výpočty.
Ikona „Mean“ slouží pro výpočet střední hodnot, „RMS“ pro výpočet efektivní hodnoty vstupních numerických dat v podobě jednorozměrného pole. Obsahhují palety funkcí umožňujících interpolace a extrapolace.
Dále jsou v této skupině palety pro lineární algebru, optimalizaci, geometrické transformace, rovnice a práce s polynomy.
„Signal Processing“ Obsahuje paletu ikon umožňujících simulaci generování signálů.
Pomocí ikony „Basic FuncGen“ lze generovat signál prezentovaný jednorozměrným polem ve tvaru sinusovky, pravoúhlých pulzů, trojúhelníkový a pilovitý průběh. „Formula Wfm“ generuje signál ve tvaru zadaného matematickým vztahem. Další ikony generují signál dle svého názvu. Basic Function Generator.vi Ikona má devět vstupů a tři výstupy. Výstupem je speciální klástr obsahující údaj o čase, vzdálenosti mezi jednotlivými vzorky signálu a jednorozměrné pole hodnot signálu). Na vstupu „signal type“ se zvolí požadovaný tvar signálu (sinusový, pravoúhlý, trojúhelníkový nebo pilovitý), pomocí vstupů „sampling info“, „frequency“, „amplitude“, „phase“ a „offset“ se nastaví parametry generovaného signálu. Formula Waveform.vi Ikona má sedm vstupů a dva výstupy. Požadovaný tvar výstupního signálu se zadává ve formě matematické formule jako textový řetězec na vstupu „formula“. Sine Waveform.vi, Square Waveform.vi, Triangle Waveform.vi, Sawtooth Waveform.vi
Ikony mají sedm („square wfm“ má osm) vstupů a dva výstupy. Jednotlivé vstupy mají shodnou funkci jako u ikony „formula wfm“ s tím rozdílem, že vstup „formula“ je nahrazen vstupem „phase“. U ikony „square wfm“ lze pomocí vstupu „duty cycle (%)“ nastavit střídu.
Obsahuje paletu ikon umožňujících simulaci generování signálů obdobně, jako v předchozím případě.
Výstupem ikon je vesměs jednorozměrné pole hodnot generovaného signálu. Sine Pattern.vi Ikona má čtyři vstupy a dva výstupy. Výstupem je jednorozměrné pole hodnot odpovídajících sinusovému průběhu. Vstupem „samples“ se zadává celkový počet vzorků, vstupem „cycles“ se nastaví počet generovaných cyklů. Sine Wave.vi Ikona má pět vstupů a tři výstupy. Funkce je obdobná jako „sine pattern“. Místo vstupu „cycles“ má ikona vstup „frequency“. Při stejném generovaném signálu je hodnota tohoto vstupu rovna podílu počtu cyklů k počtu vzorků. Ke generování dalších průběhů signálů slouží obdobně ostatní ikony uvedené palety. „Signal processing“ dále obsahuje palety pro spektrální analýzu, filtry, okna (pro analýzu signálů), transformace (FFT) apod.
„Express“ „Express“ obsahuje palety tzv. expresních funkcí. Tyto funkce jsou vesměs složeny z ikon uvedených v základní knihovně. Účelem je snazší vytváření programu, kde jedna expresní funkce je schopna nahradit několik základních ikon, přičemž nastavení parametrů programu této expresní funkce se děje prostřednictvím dialogového okna. Obsahují palety ikon umožňujících komunikaci s periferiemi.
DAQ Assist Ikona slouží zejména pro instalaci ovládačů (driverů) standardních zásuvných měřicích karet a modulů, které lze připojit prostřednictvím USB rozhraní, a které jsou součástí programového vybavení NI-DAQ. Po natažení této ikony do panelu blokového diagramu se objeví následující okno s dotazem, zda bude požadováno získávání (acquire), nebo generování (generate) dat. Následně se označí o jaký druh dat se bude jednat (analogová, digitální apod.), a dále bližší specifikace (napětí, proud, frekvence apod.). Po tomto dialogu se objeví všechny nalezené připojené periferní zařízení, pro které je v NI-DAQu nalezen příslušný ovladač, a které splňují zadané požadavky.
Příklad: Připojený modul USB-9221 nabízí k připojení celkem osm vstupních analogových kanálů, které lze označením vybrat. Potvrzení výběru a přechod k následující tabulce se provede kliknutím na „Finisch“. V zobrazené části (následující stránka) této tabulky lze formou dialogu vyplnit údaje o požadovaném počtu načítaných vzorků
signálu, vzorkovací frekvenci, způsobu (módu) sběru dat, rozsahu signálu, způsobu zapojení linek jednitlivých kanálů (Terminal Configuration), způsobu triggerování apod. Potvrzení zadaných údajů se provádí kliknutím na „OK“ v pravém dolním rohu celé tabulky. Výsledkem je ikona pro snímání analogových signálů ze zvolených kanálů. Ta má na vstupu vyvedeny linky pro nastavení vzorkovací frekvence („rate“) a počtu snímaných vzorků („number of samples“), takže lze tyto údaje měnit v programu proti původně zadaným v tabulce. Pomocí vstupu „timeout (s)“ je možno nastavit dobu čekání na příchod signálu obdobně jako u seriového kanálu. Obsahují palety ikon pro práci s tzv. dynamickými signály, které mají kromě vlastního měřeného nebo generovaného signálu též další souběžná data, např. časová, o délce vzorkovacího intervalu apod.
Convert from Dynamic Data Ikona konvertuje vstupní signál na dynamická data. Souběžně s touto ikonou se objeví tabulka pro volbu parametrů.
Convert to Dynamic Data Ikona konvertuje dynamická data na základní měřený signál. Je opačnou funkcí předchozí ikony.
„User Libraries“, „Select a VI..“ Slouží pro ukládání a výběr uživatelem vytvořených vlastních funkcí v podobě ikon. Rozdíl mezi „User Libraries“ a „Select a VI..“ spočívá v tom, že v prvním případě je ikona uložena v podadresáři „user.lib“, který je součástí základního adresáře „LabVIEW…“, v druhém případě lze vytvořenou funkci uložit prakticky kamkoliv. Z „user.lib“ se funkce natahuje do blokového diagramu stejně jako ostatní ikony, z obecného adresáře lze ikonu získat dvojitým kliknutím levým tlačítkem. Tvorba uživatelských funkcí. Uživatelské funkce jsou vytvořeny pomocí ikon z knihoven LabView. Mají zpravidla vstupy a výstupy a jejich použití se řídí stejnými pravidly jako u ikon z originální knihovny. Nesmějí ale obsahovat lokální a globální proměnné. Vlastní funkce se vytvoří v blokovém diagramu, na čelním panelu jsou pouze ikony pro zadávání a indikaci proměnných. Pro vytvoření vlastní ikony se použije okénko v pravém horním rohu čelního panelu. Kliknutím pravým tlačítkem na pravou část okénka se objeví tabulka, v níž je položka „Edit Icon..“. Kliknutím na tuto položku se objeví okno umožňující vytvoření vlastního obrazce charakterizujícího vytvořenou funkci. Levá část okénka horního rohu panelu představuje propojovací konektor pro vstupy a výstupy. Defaultně nastavený tvar lze změnit kliknutím pravého tlačítka. Objeví se tabulka, v níž položka „Patterns“ nabídne k výběru paletu konektorů s různým počtem spojovacích míst. Vlastní přiřazování vstupních a výstupních proměnných spojovacím místům na konektoru se provádí pomocí „cívky“ z „Tools“ palety. Po ukončení propojení se funkce uloží jako běžný „.vi“ soubor do zvoleného adresáře.
Tabulka vyvolaná kliknutím pravého tlačítka u libovolné ikony okna „Functions“ obsahuje zpravidla položku „Create“, pod níž je skryta podokno obsahující položky, pomocí nichž lze rychle připojit standardní vstupní řídicí, nebo výstupní indikační prvky.
K vytvoření tohoto interního učebního textu byly použity všechny dostupné materiály vývojového prostředí LabVIEW 2011 fy National Instruments.
Poděkování: Tento text vznikl za podpory projektu ESF CZ.1.07/2.2.00/07.0247 Reflexe požadavků průmyslu na výuku v oblasti automatického řízení a měření, KTERÝ JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ REPUBLIKY