====== Jednoduchý PI regulátor ====== {{:cs:mervis-ide:35-help:simplepicontroller.png}} ===== Pojmenování funkčního bloku ===== Lib.Mervis.v1_0.SimplePiController ===== Popis ===== Pomocný blok sloužící pro realizaci jednoduchého PI regulátoru. ===== Potřebné reference projektu ===== * Lib.Mervis ===== Omezení použití bloku ===== [[..\..\generic\usagelimits.htm|**Obsolete**]] - nahrazen blokem [[cs:mervis-ide:35-help:035-software_basic:060-libraries:060-lib-mervis:020-m㬣¸㭣㭭a-㸣­dic㭭bloky:015-regul㡴ory:005-simplepicontrollerwithen|SimplePiControllerWithEn]] ===== Použití v ST ===== program test var pi: lib.mervis.v1_0.SimplePiController := (Xp := ..., Ti := ..., Max := ...); end_var pi(Input := ..., SetPoint := ..., Output => ...); end_program ===== Popis vstupů a výstupů ===== |Vstupy |Jméno|Datový typ|Retain|Nutno připojit |Význam| |Input |real |Ne |Ano |Skutečná hodnota | | |SetPoint|real |Ne |Ano |Žádaná hodnota | | |Max |real |Ne |Ne |Omezení maximální hodnoty výstupu| | |Xp |real |Ne |Ne |Šířka pásma | | |Ti |real |Ne |Ne |Integrační konstanta | | |Výstupy|Jméno|Datový typ|Význam| |Output |real |Výstup | | |Metody bloku |Jméno |Význam| |[[SimplePiController_Adjust.htm|Adjust]] |Slouží pro úpravu integrační složky tak, aby byla na výstupu maximální hodnota | | |[[SimplePiController_AdjustToValue.htm|AdjustToValue]]|Slouží pro úpravu integrační složky tak, aby byla na výstupu požadovaná hodnota| | |[[SimplePiController_Restart.htm|Restart]] |Slouží pro vynulování interních hodnot a restartu výpočtu | | ===== Podrobný popis funkce ===== Funkční blok realizuje PI regulátor. Pro výpočet výstupu jsou použité nasledující vzorce: * Regulační odchylka\\ **e = SetPoint - Input** * Integrační složka (každý scan cyklus)\\ **IPart = IPart + Max / (Xp * Ti) * e * ΔT** * Výstup\\ **Output = Max / Xp * e + IPart** Regulátor obsahuje algoritmy pro omezení velikosti integrační složky v případě dosažení saturace - **Anti-windup** ==== Poznámky k použití ==== * Pro použití při řízení **ohřevu** se regulátor zapojuje následovně * SetPoint = Žádaná hodnota * Input = Měřená hodnota * Pro použití při řízení **chlazení** se regulátor zapojuje následovně * SetPoint = Měřená hodnota * Input = Žádaná hodnota