Projekt GROWE
Nový Člen
Registrován: Jul 2014
Příspěvků: 20
|
Program je navržen na plně automatický běh, bez nutnosti zásahů uživatele. Na začátku procesu GROWE se nadefinuje řídící skript, vloží se do řídícího programu a tento se spustí. Nicméně toto je až jeden z posledních kroků, předchází mu kompletní zapojení všech spotřebičů, kontrola funkčnosti, natavení jejich vlastností (průtok čerpadla, výkon zvlhčovače) a další konfigurace prostředí.
Nicméně manuální ovládání je umožněno a to jak lokálně tj. přepnutí programu do manuálního modu, a ovládání jednotlivých relé klávesnicí, tak vzdáleně, a to pomocí komunikačního programu Client RemoteControl, pomocí kterého se lze připojit po síti LAN s řídícím programem. Pro tuto komunikaci se používají síťové služby Microsoft (protokol TCP/IP, služba sdílení RAM disku). Vzdálená služba je vytvořena systémem Server-Client, má několik úrovní zabezpečení použití příkazů, kdy např. uživatel bez uživatelských práv je schopen zjišťovat běh vzdálené služby, testovat rychlost odpovědi služby SERVER, ale nemůže zasáhnout do procesu G. Po úspěšném přihlášení ke službě SERVER (pomocí uživatelského jména a hesla) dojde ke zvýšení práv a s tímto i rozšíření dostupných příkazů.
Uživatel s právy USER může např. zjišťovat a měnit systémový datum a čas na řídícím PC (počítač, na kterém běží řídící program), zjišťovat stav a aktuální hodnoty procesu, odeslání logovacích souborů s historií záznamu všech klíčových událostí, zobrazení aktuálního náhledu na hlavní obrazovku řídícího programu.
Pokud se uživatel připojí s právy ADMINISTRATOR může navíc provádět přerušení automatického běhu procesu, změna stavů jednotlivých relé (zapnutí - vypnutí spotřebičů), spuštění auto testu řídící reléové desky (kompletní test se zjišťováním kompletní funkčnosti všech relé systémem - zapnutí relé, zjištění stavu, vypnutí relé, zjištění stavu). Dále může zaměnit řídící skript za jiný, restartovat proces GROWE (dojde k restartu programu s načtením řídících příkazů, např. po záměně skriptu), deaktivovat služby v řídícím programu jako je odpojení čtení stavu klávesnice (program nebude možné lokálně ovládat, ani přerušit jeho běh), restart služby dálkové správy (např. při chybě komunikace) a další. Služba SERVER navíc umí automaticky odpojit přihlášeného uživatele po určité době nečinnosti, pro zajištění bezpečnosti proti neoprávněnému přístupu do procesu.
Veškerá komunikace probíhá v šifrované podobě, lze ji možno proto použít v sítí VPN pro vzdálený přístup přes Internet. Služba SERVER zasílá všechny soubory (.LOG soubory, řídící skript) v šifrované podobě, pro jeho dešifrování slouží program Cryptor eXtended, který je součástí programového balíku.
Jako další program, který je rovněž součástí tohoto balíku je program Builder Pro, pro tvorbu a editaci řídícího skriptu.
Pro kontrolu obsahu tohoto skriptu slouží program DBF Read, který po jeho úspěšné kontrole přidá do skriptu digitální podpis s CRC kontrolním součtem. Pokud by došlo po vložení podpisu do skriptu k jeho jakékoli změně obsahu, zneplatní se tím tento digitální podpis. A při dálkové změně skriptu by (podle nastavení stupně ochrany řídícího programu) může dojít k odmítnutí tohoto skriptu, výměna v tomto případě neproběhne a program bude dále používat původní skript.
Všechny přístupy a zásahy do řídícího programu jsou ukládány do .LOG souborů, pro další analýzu, popř. zjišťování chyb při běhu programu.
Program sám je vytvořen tak, aby byl schopen se vypořádat se vzniklými chybami při běhu, takto vzniklá chyba je zapsána do .LOG souboru a program běží dále bez přerušení. Pro udržení funkcionality běhu procesu GROWE je naprosto nežádoucí jakékoli přerušení běhu programu, s výjimkou úmyslného přerušení ze strany uživatele, kdy tento "ví co dělá...". Program umí i vyřešit chyby ve čtení externích hodnot (např. teploty), kdy by mohlo dojít nárůstu hodnot na kritickou hranici. Vyhodnotí cyklicky se opakující se chybu a upraví běh programu na "bezpečný běh", kdy procesy, které by mohly být klíčové v nárůstu hodnot nad hraniční, budou nastaveny na stav vypnuto, jejich funkci převezme "bezpečné zařízení" a program ignoruje příkazy pro jejich opětovné zapnutí. V tomto stavu program setrvá do zásahu uživatele, který je v tomto případě klíčový pro nápravu chyby a změně do standardního běhu programu.
Pro příklad lze uvést stav, kdy dojde k chybě při čtení teploty:
Program zjistí cyklickou chybu čtení této hodnoty. V této situaci není možné monitorovat výši této hodnoty, hrozí situace, že dojde k dosažení nebo překročení kritické hodnoty a protože o této situaci program "neví", nedojde k zapnutí přídavného odsávání. Po několikátém neúspěšném čtení, program vyhodnotí chybu jako trvalou a protože je předpoklad nárůstu této hodnoty, dojde k vypnutí hlavního osvětlení, které toto teplo produkuje. Ale aby nedošlo k nežádoucímu přerušení osvětlení, sepne se náhradní zářivkové osvětlení, které nezpůsobuje nárůst teploty, ale nepřeruší světelný cyklus. Program potom ohlásí trvalou chybu a v tomto stavu čeká na zásah uživatele, který vymění vadné teplotní čidlo a restartuje řídící program. Tento přepne zpět hlavní osvětlení dle příkazu z řídícího skriptu a proces běží dále.
Samotný program má i ochranu proti chybě neprovedení příkazu z řídícího skriptu. Dobrým příkladem je v tomto případě stav, že dojde k přerušení cyklické zálivky co 15 minut. Kontrola stavu vlhkosti měřenou čidlem není v současné verzi programu zahrnuta (nicméně po přechodu na platformu Mini-PC je možné, že tato funkce bude dopracována) a hrozí riziko "nezalitého stavu". Pro kontrolu platnosti stavu všech relé (a tím i spouštěné příslušné spotřebiče) běží paralelně procedura, která nezávisle kontroluje fyzický stav všech relé a jejich okamžitých stavů, vyplývající z řídícího skriptu. Tato kontrola se nazývá Validace, pokud dojde k neshodě mezi fyzickou a kontrolní hodnotou, nastane stav, kdy běh procesu GROWE může být negativně ovlivněn a změněn oproti požadavkům podle řídícího skriptu. Pokud se chyba detekuje jako cyklická, musí dojít k nápravě tohoto stavu a t této chvíli program zaznamená chybu a restartuje se do výchozího stavu. Poté dále normálně pokračuje v běhu procesu G.
Program obsahuje 4 nezávislé obrazovky (řekněme pracovní plochy), na které se nezávisle zapisují aktuální informace, o řídícím skriptu, stavu validace, seznam příkazů pro aktuální den, o stavu teplot a jejich max. a min. dosažených hodnot, stavu jednotlivých relé, stavu odsávání a dalších.
Přepínání mezi nimi probíhá za použití klávesových zkratek.
Program je dostupný pro širší (ne ale veřejné použití a distribuce), z toho důvodu je běh programu svázán s licenčním souborem, ve kterém jsou informace o hardware PC, na jiných zařízeních běží pouze v DEMOnstračním módu. Při zjištění neplatnosti licence, při startu programu je uživatel o této skutečnosti informován.
Program má možnosti nastavení konfigurace uložené v .INI souboru. Konfigurační informace hlavního programu jsou uloženy v souboru ŘÍZENÍMI.INI, konfigurace služby vzdálené správy používá soubor SERVER.INI.
.INI soubory jsou ve formátu zápisu inicializačních souborů MS-Win3.1. Zápis do nich je možný, pokud "víte, co děláte". Pokud dojde k neplatnému zápisu určité konfigurační hodnoty, program ji odmítne a načte se výchozí hodnota a v souboru .INI se na tuto hodnotu neplatný záznam přepíše, nebo vloží nový, platný. Stejný postup je zvolen při smazání těchto souborů, při spuštění programu dojde k jejich vytvoření s výchozími hodnotami, které jsou i načteny.
|
Projekt GROWE
|