Čtvrthodinové maximum
Název bloku
T34_E_MAX
Volání v ST
PROGRAM TEST_T34 VAR REAL1,REAL2,REAL3,REAL4,REAL5: REAL; BOOL1,BOOL2: BOOL; UDINT1,UDINT2:UDINT; ARRAYOFUDINT1,ARRAYOFUDINT2,ARRAYOFUDINT3: ARRAY[0..7] OF UDINT; ARRAYOFBOOL1: ARRAY[0..7] OF BOOL; ARRAYOFREAL1: ARRAY[0..7] OF REAL; FB: LIB.HVAC.V1_0.T34_E_MAX; END_VAR FB(TIN:=UDINT1, EIN:= REAL1, BGRP:=ARRAYOFBOOL1, EMAX:=REAL2, TPERIOD:=UDINT2, TNMIN:=ARRAYOFUDINT1, TFMIN:=ARRAYOFUDINT2, TFMAX:=ARRAYOFUDINT3, DOFF:= REAL3, D:=ARRAYOFREAL1, BWARN=>BOOL1, BCRIT=>BOOL2, BYGRP=>ARRAYOFBOOL1, ESOLL=>REAL4, EEST=>REAL5); END_PROGRAM
Knihovna
LIB\HVAC
Verze
V1.0
Popis
Blok reguluje čtvrthodinové maximum (el. energii spotřebovanou během 15 minut) odpínáním až 8 skupin spotřebičů.
Vstupy
Vstup | Typ | Význam | Výchozí hodnota |
TIN | UDINT | Aktuální čas periody ve vteřinách | 0 |
EIN | REAL | Kumulovaná energie, spotřebovaná během aktuální periody | 0 |
BGRP | ARRAY[0..7] OF BOOL | Signály o chodu skupin, pokud jsou k dispozici (jinak musí být vstup nastaven na true) | [False,…,False] |
EMAX | REAL | Hodnota čtvrthodinového maxima; max. množství energie, které se smí spotřebovat během periody, viz pozn. níže | 100 |
TPERIOD | UDINT | Měřená perioda, obvykle 900 s (= 15 min) | 900 |
TNMIN | ARRAY[0..7] OF UDINT | Minimální povolená doba provozu skupiny | [0,0,…,0] |
TFMIN | ARRAY[0..7] OF UDINT | Minimální doba vypnutí po odstavení skupiny (např. pro chladicí kompresory) | [0,0,…,0] |
TFMAX | ARRAY[0..7] OF UDINT | Maximální povolená doba odstavení skupiny (po jejím uplynutí se skupina povolí, i když by došlo k překročení maxima) | [0,0,…,0] |
DOFF | REAL | Diference pro bezpečné připínání skupin | 0 |
D | ARRAY[0..7] OF REAL | Diference pro odpínání jednotlivých skupin (odpovídá příkonům skupin, tj. spotřeba dané skupiny za periodu) | [10,10,…,10] |
Výstupy
Výstup | Typ | Význam |
BWARN | BOOL | Signál varování - aktuální spotřeba překročila hodnotu ESOL |
BCRIT | BOOL | Signál alarmu - aktuální spotřeba překročila hodnotu EMAX |
BYGRP | ARRAY[0..7] OF BOOL | Výstupy pro povolení nebo odepnutí jednotlivých skupin spotřebičů |
ESOL | REAL | Ideální spotřeba k aktuálnímu času (pro info) |
EEST | REAL | Predikovaná spotřeba ke konci periody (pro info) |
Funkce
Blok čte ze vstupního modulu M710 dvě hodnoty: spotřebu el. energie v aktuální čtvrthodině (počet impulsů elektroměru násobený konstantou na impuls, což odpovídá spotřebované energii) a čas aktuální čtvrthodiny v sekundách (tento čas je nulován synchronizačním impulsem z elektroměru, přivedeným na modul M710). Blok počítá podle zadané maximální spotřeby pro čtvrthodinu (EMAX) ideální spotřebu ESOL k aktuálnímu času, což je hodnota lineárně vzrůstající od 0 v čase 0 po EMAX v čase ke konci čtvrthodiny. Dále je počítána predikovaná spotřeba EEST, tedy energie spotřebovaná ke konci čtvrthodiny za předpokladu, že spotřeba bude růst stejným tempem jako dosud. Ideální spotřeba je porovnávána s aktuální spotřebou a pokud je ideální spotřeba překročena, tedy hrozí překročení emax ke konci čtvrthodiny, dochází k postupnému odpínání skupin spotřebičů. Pakliže se během dalšího průběhu čtvrthodiny aktuální spotřeba dostává pod přímku ESOL, skupiny se postupně opět připínají. Diference d určují oblasti odpínání a připínání jednotlivých skupin, DOFF je bezpečnostní oblast, za níž začíná zpětné připínání.
Místo modulu M710 je možné použít softwarovou strukturu, která na vstup TIN přivede aktuální čas periody ve vteřinách (tedy postupně vzrůstající hodnotu 0…900 pro případ čtvrthodiny) a na vstup EIN spotřebovanou práci (neboli energii) od začátku periody (čtvrthodiny).
Výstupy pro povolování skupin spotřebičů jsou k dispozici v podobě pole binárních hodnot BYGRP. Vstupní pole BGRP slouží k zadání informace o tom, které skupiny jsou právě aktivní a tedy jejich odepnutí má smysl. Neaktivní skupiny jsou přeskakovány.
Vektory s časovými parametry TNMIN, TFMIN a TFMAX umožňují zadat omezení pro max. a min. dobu vypnutí a minimální dobu běhu (TNMIN, tedy když je skupina povolena, neodstaví se před uplynutím této doby, ani kdyby to algoritmus vyžadoval).
Poznámka: Hodnota emax je zadávána v kWh za (typicky) 15 minut. Jedná se o energii, práci, nikoli o příkon. Ačkoli je udávána v kilowatthodinách, tato energie je spotřebována během periody, tedy např. patnácti minut. Pokud máme budovu se sjednaným příkonem 1000 kW, maximální práce spotřebovaná za čtvrthodinu je 250 kWh. Hodnota emax tedy není průměrný příkon (v kW), hodnota průměrného příkonu by byla rovna emax pouze v případě, že by perioda byla jedna hodina.
Příklad použití
Dvě proměnné, které snímají počet impulsů energie a čas čtvrthodiny v modulu M710, jsou přivedeny na vstupy TIN a EIN. Proměnná E_MAX je hodnota MAX. čtvrthodinové spotřeby. Povely k odpínání skupin jsou ve výstupní proměnné BYGRP, což je pole s osmi hodnotami typu bool. Blok HELPER_MULTIOUTBOOL8 slouží jako “dekodér” pole na 8 binárních proměnných, aby bylo možné strukturu použít i v jazyce FUPLA; v ST by se odkázalo přímo na BYGRP[INDEX], tedy na prvek pole. Na vstupu BGRP je vektor skupin, které jsou právě v provozu; pole je sestaveno z proměnných OPER_CHILLERS, OPER_DHW_EL_1 a OPER_DHW_EL_2. Signály chodu máme tedy pouze u skupin 1, 4 a 5; ostatní skupiny 2, 3, 6, 7 a 8 signál o chodu nemají k dispozici (nejspíše se jedná o větší množství malých zařízení, spojených do skupin).