Zde bylo úkolem vyřešit vizualizaci tepelného procesu, který je principielně shodný s principem modelu teplovzdušného agregátu (MTVA). Proto byla aplikace nazvána “Model”. Na této aplikaci bylo odzkoušeno komunikační spojení se serverem pomocí komunikačního protokolu NetDDE v síti Intranet a dále poskytování těchto technologických dat síti Internet. Aplikace byly provozovány v operačním systému Windows 95 a Windows NT 4.0. Na základě této úspěšné komunikace a tím i zdárnému poskytování dat síti Intranet/Internet byly ostatní aplikace připojeny podle stejného principu.
Obrázek 2-1 Hlavní okno aplikace “Model” vizualizující model dvoupolohové regulace tepelné soustavy
Soustava (skleněná baňka žárovky), která je ohřívaná teplem vznikajícím průchodem el. proudu vláknem žárovky a je vyjádřena proporcionálním členem se setrvačností 1.řádu. Aktuální napětí na termistoru umístěném na baňce žárovky je označeno napeti_t a vyjadřuje regulovanou veličinu, tj teplota na baňce žárovky. Žádaná veličina je představována žádanou teplotou na baňce žárovky (vyjádřena napětím [V], v aplikaci je toto napětí označeno napeti_z). Akční veličina je představována napětím na žárovce (0 [V] vypnuto - 10 [V] zapnuto). Aplikace se jmenuje “Model”.
Popis jednotlivých technologických části aplikace:
Dvoupolohový regulátor - TERMISTOR
Regulovaná soustava - BAŇKA ŽÁROVKY
Matematický model:
Soustava (skleněná baňka žárovky), která je ohřívaná teplem vznikajícím průchodem el. proudu vláknem žárovky, je vyjádřena proporcionálním členem se setrvačností 1.řádu
Proporcionální člen se setrvačností 1.řádu:
Přechodová charakteristika: |
h(t) = k * (1-e -t/T1) |
po přepisu na naše proměnné: |
napeti_t = (napeti_z * 1,2) * (1-e -Cassimulace/2) |
kde: |
(napeti_z * 1,2) = k |
Proměnné a jejich hodnoty:
Proměnná |
Typ proměnné |
Poznámky |
Cas |
Memory Real |
pro výpočet času simulace |
Cassimulace |
Memory Real |
čas jako proměnná při výpočtu přechodové charakteristiky proporc. členu h(t) = k*(1-e - Cassimulace/T1) |
hyst |
Memory Real |
zadaná hystereze (0-10V) |
napeti_t |
I/O Real |
napětí na termistoru vyjadřující teplotu na baňce žárovky, h(t) = napeti_t (0-10V) |
pomoc |
Memory Real |
pomocná proměnná pro ukládání mezivýsledků |
s |
Memory Discrete |
pomocná proměnná vyjadřující stav teploty: s=0 (teplota klesá), s=1 (teplota stoupá) |
napeti_z |
Memory Real |
Žádaná teplota na baňce žárovky (vyjádřena napětím 0-10V |
start |
Memory Discrete |
proměnná pro spouštění aplikace |
Tabulka 2-1 Tabulka proměnných veličin aplikace “Model”
Použité skripty:
Aplikační skript - Je určen pro spouštění alarmového okna.
Podmínkový skript - Je aplikován na dvoupolohové regulaci, kdy teplota na baňce žárovky (vyjádřena napětím) se může pohybovat v přípustných hranicích (hysterezi). Při výpočtu jsem použil stavovou proměnnou s.
Část kódu podmínkového skriptu generující dvoupolohovou regulaci.
Cas = Cas + 0.1;
Cassimulace = Cassimulace + 0.001;
IF napeti_t < napeti_z + hyst/2 AND s == 1 THEN
napeti_t = pomoc + (napeti_z * 1.2) * (1 - Exp( - Cassimulace/2));
pomoc = napeti_t;
ENDIF;
IF napeti_t >= napeti_z + hyst/2 OR s == 0 THEN
IF s == 1 THEN
s = 0;
Cassimulace = 0;
ENDIF;
napeti_t = pomoc - ( napeti_z ) * (1 - Exp( - Cassimulace/2));
pomoc = napeti_t;
ENDIF;
IF napeti_t <= napeti_z - hyst/2 AND s == 0 THEN
napeti_t = pomoc + (napeti_z * 1.2) * (1 - Exp( - Cassimulace/2));
IF s == 0 THEN
s = 1;
Cassimulace = 0; ENDIF;
pomoc = napeti_t;
ENDIF;
Okna v aplikaci:
Hlavní okno: |
Obsahuje samotnou vizualizaci dvoupolohové regulace. |
Parametry regulace: |
Obsahuje objekty s animačními vazbami pro zadávání vstupních parametrů (žádaná hodnota a hystereze). |
První: |
Spouští se jako první a hlásí nutnost se přihlásit se do systému. |
Přihlášení: |
Toto okno slouží k nalogování operátora. |
Alarm: |
Alarmové okno upozorňující na malé práva operátora. |
Help: |
Obecná nápověda o aplikaci. |
Aplikace je jednoduchou interpretací dvoupolohové regulace. Je využito grafického prostředí programu InTouch k její vizualizaci. Jako první se v aplikaci spustí okno První, které upozorní na nutnost přihlásit se do systému. Odkazuje se na okno Přihlášení, kde se operátor naloguje do systému. Bezpečnost aplikace s hlediska přístupových práv je vyjádřena neumožněním sledovat reálný trend při přístupových právech menších než 2000. Uživatelské jméno a heslo zní: “Host” s heslem “host”. Odkazem s tohoto okna se již dostaneme do Hlavního okna, které obsahuje samotnou vizualizaci a můžeme nastavit parametry regulace stejnojmenným tlačítkem. Vizualizace se spouští tlačítkem Není v provozu, které zároveň indikuje stav procesu vizualizace. Alarmovou proměnnou je napětí na termistoru, které nesmí překročit hodnotu 10V. Tato hodnota je dána žádanou hodnotou, ke které se přičítá ± 1/2 hystereze. V případě překročení této meze se objeví okno alarm. Výsledné napětí, které se mění v závislosti na čase je zobrazeno v reálném trendu a také na display “Napětí na termistoru”. Dvoupolohová regulace je vyřešena jednoduše pomocí třech podmínek IF - THEN a změny stavu teploty na baňce žárovky (teplota klesá a stoupá - mění se proměnná “s”).
Zdrojové soubory pro InTouch (ZIP 134 kB)