Obsah

Kaskádní regulátor

Pojmenování funkčního bloku

Lib.Mervis.v2_0.CascadeController

Popis

Blok slouží pro řízení zařízení zapojených do kaskády

Potřebné reference projektu

Použití v ST

program test
    var
        cctrl: lib.mervis.v2_0.CascadeController;
    end_var

    cctrl();
end_program

Popis vstupu a výstupu

Vstupy

Jméno

Datový typ

Povolený rozsah

Retain

Nutno poipojit

Význam

FirstStageRequest

usint

0..4

Ano

Ne

Určuje první aktivní zařízení (0 = automaticky, 1..4 = odpovídající zařízení)

StageCountLimit

usint

0..NumberOfStages

Ano

Ne

Maximální počet povolených zažízení v kaskádě (0 = určeno automaticky)

Stage1

StageInfoType

 

Ne

Ano

Sdružené info o prvním zařízení

Stage2

StageInfoType

 

Ne

Ne

Sdružené info o druhém zařízení

Stage3

StageInfoType

 

Ne

Ne

Sdružené info o třetím zařízení

Stage4

StageInfoType

 

Ne

Ne

Sdružené info o čtvrtém zařízení

MeasuredOutput

real

 

Ne

Ano

Skutečná hodnota regulované veličiny

SetPoint

real

 

Ne

Ano

Žádaná hodnota regulované veličiny

Enable

bool

 

Ne

Ano

Povolení provozu

TrackingInput

real

0..100 %

Ne

Ne

Omezení výstupního výkonu v procentech - počítáno jako celkový výkon kaskády. Využitelné pouze v paralelním módu.

NumberOfStages

usint

1..4

Ne

Ne

Instalovaný počet zařízení

LimitForRunTime

time

 

Ne

Ne

Doba nutná pro automatické vystřídání prvního zařízení v pořadí

LimitForAttach

real

 

Ne

Ne

Limitni hodnota kritéria pro aktivaci dalšího zařízení

LimitForDettach

real

 

Ne

Ne

Limitni hodnota kritéria pro deaktivaci posledního zařízení

ChangeOrderStrategy

ChangeOrderStrategyType

 

Ne

Ne

Volba metody pro střídání prvního zařízení

Diff

real

 

Ne

Ne

Pásmo necitlivosti okolo žádané hodnoty

TrackingSetpointTolerance

real

 

Ne

Ne

Hranice přepnutí ve sledovacím módu pro žádanou hodnotu. V případě nulové hodnoty je sledování vypnuté. Využitelné pouze v paralelním módu.

TrackingTolerance

real

 

Ne

Ne

Hranice přepnutí ve sledovacím módu pro sledovanou hodnotu. Využitelné pouze v paralelním módu.

ParallelMode

bool

 

Ne

Ne

Určuje způsob řízení jednotlivých stupňů

HodnotaVýznam
False Poslední aktivní zařízení je řízeno procentuálně, ostatní aktivní jsou zapnuty na 100%
True Všechny aktivní zařízení jsou řízeny společně procentuálně (vhodné např. pro kondeznační kotle).

MinimalRunningCount

usint

0..NumberOfStages

Ne

Ne

Minimální počet aktivních zařízení. Využitelné pouze v paralelním módu.

OnlyFirstStageControllable

bool

 

Ne

Ne

Určuje, že pouze zařízení #1 má řiditelný výkon. Dochází tedy k přesměrování „necelých“ požadavků na první vstup/výstup

AllowFirstStageOnMinimum

bool

 

Ne

Ne

Určuje, že pokud je povolený provoz, tak první stupeň jede vždy alespoň na minimální výkon

FullPowerTolerance

real

 

Ne

Ne

Hranice pro určení minimálního nebo maximálního výkonu.

Výstupy Jméno Datový typ Význam
Request1 StageControlTypeSdružený požadavek na první zařízení
Request2 StageControlTypeSdružený požadavek na první zařízení
Request3 StageControlTypeSdružený požadavek na první zařízení
Request4 StageControlTypeSdružený požadavek na první zařízení
ActualSetPoint real Aktuální žádaná hodnota regulované veličiny
ActualFirstStage usint Číslo aktualního prvního zařízení
ActualNumberOfActive usint Aktuální počet aktivních zařízení
TrackingCommand bool Povolení sledování pro externí regulátor
TrackingValue real Hodnota sledované veličiny pro externí regulátor
RequestedTotalPower usint Celkový požadovaný výkon kaskády
ActualTotalPower usint Aktuální výkon kaskády
IntegralValue real Aktuální hodnota integrálního kriteria
Failure bool Sdružená porucha
FailurePowerInsufficientbool Varování o nedostatečném výkonu
AlarmsStatus AlarmsStatus Sdružené rozhraní k alarmové funkci
BlokyJméno Datový typ Význam
IC Lib.Mervis.v1_0.IntegralCriterionIntegrální kritérium pro určování počtu aktivních stupňů

Podrobný popis funkce

Celý blok je postaven na základě bloku IntegralCriterion a proto je nutné začít pochopením tohoto bloku.

Blok slouží pro určení optimálního počtu aktivních zařízení pro dosažení žádané hodnoty společného výstupu. Základní zapojení je vždy blok kaskádního regulátoru s odpovídajícím počtem výstupních bloků pro daná zařízení. Blok umožňuje řídit kaskádu i pouze s pomocí čidla společného výstupu, nicméně pro zkvalitnění regulace je vhodnější mít čidla i pro jednotlivá zařízení. Kaskádní regulátor určuje, která zařízení budou v provozu a řídí jejich výkon, výstupní bloky zajišťují předání těchto požadavků konkrétnímu zařízení (RequestX → Demand) a ošetření provozních a poruchových stavů. Tyto stavy jsou následně předány zpět do kaskádního regulátoru (State → StageX).

Určování aktivních zařízení se děje na základě integrálních kriterií a na základě hlášení o stavu nejpozději přiřazeného zařízeni (konkrétně jeho aktuálního výkonu). Pro aktivaci dalšího zařízení musí být tedy splněny následující podmínky:

Přidáním dalšího zařízení se změní požadované výkony pro jednotlivá zařízeni, všem kromě posledního se nastaví požadovaný výkon na 100%, u posledního se provádi regulace podle režimu řízení daného výstupního bloku. Pro deaktivaci platí podmínky opačné, pokud se zařízení deaktivuje, vypne se, přechází regulace na předchozí stupeň s tím, že začíná na 100% výkonu aby nedošlo ke skokové ztrátě dodávaného výkonu a tím k rozkmitání.

Interní postup výpočtu

  1. Výpočet aktualní hodnoty žádané veličiny na základě Setpoint a MinimalOutput z jednotlivých zařízení, které jsou v následujících stavech
    • Start, Preheat, Run, MinRuntime, AfterCooling
  2. Mapování/Přiřazení vstupů
  3. Přiřazení výkonu jednotlivým zařízením do pracovních proměnných
    • Určení indexu posledního aktivního zařízení
    • Pro stavy Ready, Start, Preheat, MinRuntime, AfterCooling, NotRun se Enable nastavuje na true a RequestedPower na nulu
    • Pro stav Run se Enable nastavuje na true a RequestedPower dle režimu (buď 100 % nebo výtup PI)
    • Pro stav MinStop se Enable nastavuje na false a RequestedPower na nulu
    • Pro ostatní stavy je Enable roven false a RequestedPower nulový
  4. Oprava mapování vstupů (předchozím krok mohlo dojít ke změne)
  5. Korekce výstupu PI regulátoru (např. při zmenšení počtu aktivních zařízení je nutné přenastavit výstup na maximum)
  6. Určení počtu aktivních zařízení
    • Výpočet ActualNumberOfActive
    • Při přidání zařízení v paralelním režimu se výstup PI upravuje na hodnotu 100 - 100 / Počet aktivních zařízení, jinak se výstup nuluje
    • Pokud existuje nějaké zaříení ve stavu MinStop nebo MinRuntime nedochází ke zvětšení resp. zmenšení počtu zařízení
  7. Kontrola provozních hodin a posunutí prvního v pořadí
  8. Výpočet nového akčního zásahu PI regulátoru - určení výkonu posledního zařízení v závislosti na typu řízení:
    • PowerCascadeOutput + PowerStageOutput - výstup PI regulátoru
    • StageCascadeOutput + StageStageOutput - fixně 100 %
    • Pokud je poslední zařízení v jiném stavu než Run, dojde k resetu PI regulátoru a nastavení výkonu na nulu
  9. Zpracování alarmů
  10. Nastavení výstupů