Při vizualizaci technologických procesů je způsob prezentace dat na obrazovce počítače tím nejdůležitějším pro přehlednost, snadnost ovládání i celkovou efektnost aplikace. Každý autor chce mít svůj aplikační program nejen správně funkční, ale také hezký. Proto je základní znalost vlastností a funkcí sady instalovaných virtuálních přístrojů pro tvorbu efektivních a pohledných aplikací dosti důležitá.
Aplikační program je sestavován z virtuálních přístrojů dostupných v "Paletě přístrojů"
Bez znalosti funkce jednotlivých komponent lze jen s obtížemi pochopit funkci aplikačního programu z těchto komponent sestaveného. Virtuálních přístrojů je ale mnoho a hlavně v úplných počátcích práce v prostředí systému Control Web může být "Průvodce přidáním nového přístroje" užitečným pomocníkem. Tento průvodce získá ze všech instalovaných virtuálních přístrojů informace o jejich funkci a může vám doporučit jeden nebo několik přístrojů, které nejlépe vyhovují vámi zadaným specifikacím.
"Průvodce přidáním nového přístroje" je velmi užitečný především v začátcích práce v prostředí systému Control Web, kdy se ještě v paletě přístrojů příliš neorientujete. Jak se budete postupně s vlastnostmi virtuálních přístrojů seznamovat, budete tohoto průvodce potřebovat stále méně často. A velmi brzy bude nepochybně váš přehled na takové úrovni, že "Průvodce přidáním nového přístroje" již nebudete potřebovat vůbec.
Úvodní stránka "Průvodce přidáním nového přístroje"
Průvodce si nejdříve po svém spuštění uspořádá nainstalované virtuální přístroje do jednotlivých kategorií podle druhu jejich funkce. První volbou, kterou vám "Průvodce přidáním nového přístroje" předloží, je výběr jedné z těchto kategorií. V první dialogovém okně tedy vyberte jednu z kategorií funkčnosti:
Druhou základní otázkou, kterou vám "Průvodce přidáním nového přístroje" položí, je dotaz na typ veličiny, se kterou chcete pracovat. Zde můžete volit mezi třemi základními typy veličin:
V dalším dialogovém okně již můžete vybírat mezi jednotlivými virtuálními přístroji. Přístroje jsou uspořádány tak, že vždy nejvýše nahoře jsou přístroje obecnější s širšími možnostmi použití a na konci seznamu jsou přístroje specializované a úžeji zaměřené. Má-li zvolený přístroj více módů, které se liší vzhledem nebo funkcí, nabídne průvodce ještě další dialogové okno pro upřesnění módu činnosti zvoleného přístroje.
Následující dialogové okno umožňuje správné zařazení zvoleného virtuálního přístroje do struktury časování a do struktury viditelnosti aplikačního programu. Veškeré možné pozice v těchto strukturách jsou zde nabízeny v podobě symbolických jmen časovacích přístrojů a panelů v aktuální aplikaci. Pro zjednodušení výběru vlastníka zvoleného přístroje ve struktuře viditelnosti je zde možno použít zaměřovacího kříže. Stiskněte levé tlačítko myši nad symbolem zaměřovacího kříže a přesuňte ukazatel nad vybraný panel zobrazený v grafickém vývojovém prostředí. Nad vybraným panelem pak levé tlačítko pusťte a jméno tohoto panelu se pak správně vybere ve výběrovém řádku dialogového okna průvodce. Podle místa nad kterým jste pustili levé tlačítko myši se doplní také pozice zvoleného přístroje ve vybraném panelu. Je-li místo, kam chcete zvolený přístroj vložit, právě skryto pod dialogovým oknem průvodce, je samozřejmě nutno před použitím zaměřovacího kříže průvodce na obrazovce odsunout tak, aby nepřekážel.
Dialog pro zařazení nového přístroje do struktury viditelnosti a časování
V posledním dialogovém okně průvodce můžete zadat symbolické jméno nového zvoleného přístroje a rozhodnout se, chcete-li ihned po dokončení průvodce zobrazit inspektora přístroje a bezprostředně pokračovat v nastavování vlastností přístroje, nebo chcete-li nechat přístroj vytvořit ve standardní podobě. Ne všechny virtuální přístroje musí mít svá unikátní symbolická jména, nicméně pro další rozvoj aplikačního programu může mít pojmenování každého přístroje jedinečným jménem velký význam. Jen takto pojmenovaným přístrojům totiž můžete později např. volat z jiných přístrojů jeho procedury. Některé přístroje, jako např. panely, však vždy musí mít svá jedinečná jména.
Nyní již nezbývá nic jiného, než stisknout tlačítko "Dokončit" a nově zvolený virtuální přístroj bude zařazen na správné místo do struktur aplikačního programu.
Nastavení typu proměnné v ploše "Datové inspektory" vývojového prostředí
Již v předchozí kapitole jsme uvedli, že systém Control Web dokáže pracovat s analogovými, binárními a textovými veličinami. Celá problematika typů datových elementů je složitější, prozatím si však vystačíme s tímto zjednodušením. Nebudeme se v této kapitole vůbec zabývat např. elementy typu buffer. To, že textové datové elementy (tj. konstanty, proměnné a kanály) skladují a přenášejí textovou informaci, a že binární datové elementy pracují se dvěma logickými stavy, je zcela zřejmé.
Jednotlivé základní druhy veličin pak mohou být těchto typů:
Za bližší zmínku však stojí tzv. analogové neboli číselné datové elementy. Je zřejmé, že opravdu spojité analogové veličiny jsou v počítači reprezentovány vždy s nějakým konečným rozlišením. To znamená, že se mohou měnit vždy po nějakých kvantech a nikoliv zcela spojitě. Z důvodů co nejpřesnější reprezentace analogových veličin jsou v systému Control Web všechna čísla skladována s přesností mantisy na 15 platných číslic a s rozsahem exponentu od E-308 do E+308. Jak sami vidíte, rozlišení i rozsah je obrovský a tedy s problematikou diskrétní reprezentace spojitých veličin se ve vašich aplikacích nemusíte nijak zatěžovat a znepokojovat.
Jednotná a nejpřesnější (na současných počítačích) možná reprezentace čísel přináší autorovi aplikačního programu veliké výhody. Tou hlavní výhodou je neomezená kompatibilita veškerých číselných typů. Při přiřazování hodnot do číselných proměnných tedy nemusíte dodržovat typ zapisovaných číselných hodnot. Stejně tak se ani při zápisu matematických výrazů nemusíte zatěžovat číselnými typy jednotlivých použitých datových elementů. A přitom dokonce ani neriskujete případnou ztrátu přesnosti výsledku výpočtu.
Tato vlastnost nesporně přináší značné zjednodušeni vývoje a zvětšení robustnosti aplikačních programů. Je zde však jeden důsledek, který je dobré mít při sestavovaní některých speciálních algoritmů a postupů uvědomovat. Když např. postupně přičítáme jedničku do proměnné typu shortcard (osmibitové celé nezáporné číslo), obsahuje tato proměnná celá čísla v rozsahu od 0 do 255. Přičteme-li tedy jedničku ve stavu, kdy tato proměnná obsahuje číslo 255, dojde k tzv. přetečení tohoto číselného typu a proměnná obsahuje pro typ shortcard nulu. Zapíšeme-li tedy tyto proměnnou do výstupního kanálu, který je rovněž typu shortcard, tento kanál zajistí přenos této nulové hodnoty až do daného vstupně-výstupního zařízení. Přiřadíme-li však tuto proměnnou typu shortcard do proměnné typu real, bude tato proměnná typu real obsahovat hodnotu 256 a nikoliv hodnotu 0. Toto je logickým důsledkem faktu, že hodnota proměnné je vnitřně uchovávána ve výše uvedeném nejvyšším možném rozlišení a rozsahu. Totéž samozřejmě platí i pro použití této proměnné typu shortcard v matematickém výrazu.
Bez nároků na úplnost a při vědomí trvalé otevřenosti sady virtuálních přístrojů uveďme několik nejčastěji používaných virtuálních přístrojů pro zobrazování hodnot veličin:
Podoby přístroje meter
Přístroj indicator ve standardních podobách pro stav false a true
Nyní již tedy máte v aplikaci virtuální přístroj, který je správně napojen na veličinu, jejíž hodnotu chcete tímto přístrojem zobrazovat. Vidíte-li tento přístroj na obrazovce počítače tam, kde jste jej chtěl mít, je přístroj správně zařazen do tzv. struktur viditelnosti aplikačního programu. Pravděpodobně, zvolil-li jste v "Průvodci přidáním nového přístroje" správné místo v časovací struktuře, je také správně časován. Podívejme se však na možnosti časování virtuálního přístroje trochu podrobněji. Zabývat se budeme pouze aplikacemi reálného času, u datově řízených aplikací se časováním zatěžovat vůbec nemusíme.
timer = 0.2;
Virtuální přístroj je pak aktivován s periodou 0.2s, tedy pětkrát za sekundu. Přístroj s takto definovaným časováním je pětkrát za sekundu nepřetržitě aktivován. Je tedy aktivován i tehdy, je-li např. panel s tímto přístrojem překryt jiným panelem nebo minimalizován. To může být užitečné v případě, že přístroj kromě prostého zobrazování provádí také nějakou další pro běh aplikace nutnou činnost. Slouží-li však přístroj pouze pro zobrazování, spotřebovává část výkonu počítače i tehdy, kdy to vůbec není nutné.
Struktura časování zobrazovaná v grafickém módu vývojového prostředí
receivers = my_new_instrument;
Stejného efektu lze docílit např. v proceduře tlačítka OnOutput příkazem send.
procedure OnOutput( Output : boolean ); begin send my_new_instrument; end_procedure;
Při každém stisku tlačítka s tímto parametrem nebo procedurou je pak vyvolán výjimečný časový krok virtuálního přístroje pojmenovaného symbolickým jménem my_new_instrument.
Veškeré možnosti časování lze samozřejmě neomezeně vzájemně kombinovat. Zde záleží jen na vás, na co si troufnete. Je však vždy vhodné preferovat přehlednost a srozumitelnost aplikace před uplatněním rafinovaně vymyšlených fint a triků, jejichž princip fungování stejně brzy zapomenete.
Existuje také řada virtuálních přístrojů, které časovány být nemusejí a některé ani nemohou. Příkladem přístroje zcela bez časování je httpd, tedy internetový server. Tento přístroj odvozuje veškerou svou činnost od požadavků svých klientů – www prohlížečů. Řada přístrojů pro nastavování veličin uživatelem, jako jsou různá tlačítka, přepínače, knoflíky a posuvné potenciometry časovány být nemusejí (aktivitu pak odvozují od akcí uživatele), ale v případě potřeby být mohou. Mohou se například periodicky nastavovat podle aktuální hodnoty svého výstupního datového elementu.
Nový přístroj vložený do aplikace průvodcem nebo přetažený myší z palety přístrojů ještě (až na výjimky) nebude okamžitě schopen nějaké smysluplné činnosti. V začátcích práce v prostředí Control Web pravděpodobně nebudete příliš často pracovat s textovým zápisem aplikačního programu. Budete tedy pracovat v grafickém vývojovém prostředí a pro modifikaci vlastností virtuálních přístrojů budete používat inspektory přístrojů. Vyvolání inspektoru je snadné – nad zvoleným přístrojem kliknete pravým tlačítkem myši pro vyvolání kontextového menu. V tomto menu zvolíte položku "Inspektor přístroje…" a objeví se inspektor. Přístup k inspektorům si můžete ještě více zjednodušit. V okně nastavení (menu "Nástroje/Nastavení...") v záložce "Systém" si zrušíte volbu položky "Po kliknutí pravým tlačítkem myši otevřít menu objektu" a inspektor se bude objevovat vždy ihned po kliknutí pravým tlačítkem myši.
Volba funkce pravého tlačítka myši na vybraným přístrojem v okně "Nastavení"
Inspektor přístroje je vlastně dialogové okno s několika záložkovými plochami. Toto okno není spouštěno modálně, můžete je tedy mít otevřeno a přitom dále pracovat v jiných oknech a plochách vývojového prostředí. Budete-li tedy při spuštěném inspektoru vybírat myší jednotlivé přístroje v ploše grafického editoru, bude se i inspektor přepínat vždy na právě vybraný virtuální přístroj.
Inspektor s vybraným editorem barev přístroje
Inspektor přístroje můžete ukončit dvěma způsoby:
Dále také můžete tlačítkem potvrdit veškeré provedené změny a ponechat okno inspektoru dále otevřené.
Prostřednictvím vodorovných záložek můžete přepínat mezi způsoby práce a jednotlivými typy dat zpracovávanými inspektorem.
V ploše "Parametry" je k dispozici svislá řada záložek s jednotlivými parametry přístroje. V záložkových plochách pak můžete modifikovat každý z parametrů.
V ploše "Lokální data" můžete editovat lokální konstanty, proměnné a lokální statické proměnné daného přístroje.
V ploše "Procedury" můžete modifikovat a přidávat uživatelské procedury a modifikovat událostní procedury přístroje (nativní procedury samozřejmě modifikovat nelze, ty má každý přístroj pevně dány).
V ploše "Barvy" je možno nastavit barvy, které se uplatňují při vykreslování přístroje na obrazovce počítače. U přístrojů, které mohou za provozu blikat, jsou k dispozici dvě sady barev. Tyto jsou pak při blikání přepínány. Inspektor pak v těchto případech umožňuje nastavení barev v obou těchto sadách.
V ploše "Zdrojový text" můžete celý virtuální přístroj převést do podoby zdrojového textu a takto jej editovat. Při návratu ze zdrojového textu zpět do jakékoliv jiné záložkové plochy je opět provedena syntaktická kontrola správnosti. Všechny případné chyby jsou v textu vyhledány a bez jejich opravení není přechod do jiných záložek možný.
V ploše "Nápověda" je k danému přístroji k dispozici hypertextová dokumentace. Jestliže jste zadali při instalaci systému volbu bez kopírování dokumentace na pevný disk, je pro správnou funkci prohlížeče dokumentace v inspektoru přístrojů nutno mít CD-ROM médium se systémem Control Web vloženo do CD-ROM mechaniky.