Lib.Mervis.v1_2.SimplePiControllerWithEn
Pomocný blok sloužící pro realizaci jednoduchého PI regulátoru doplněného o Enable.
program test
var
pi: lib.mervis.v1_2.SimplePiControllerWithEn := (Xp := ..., Ti := ..., Min := ..., Max := ...);
end_var
pi(Input := ..., SetPoint := ..., Enable := ..., Output => ...);
end_program
| Jméno | Datový typ | Povolený rozsah | Retain | Nutno připojit | Význam | |
| Input | real | Ne | Ano | Skutečná hodnota | ||
| SetPoint | real | Ne | Ano | Žádaná hodnota | ||
| Enable | bool | Ne | Ne | Povolení funkce, pokud je false je na výstupu hodnota 0 | ||
| Min | real | ⇐ 0 | Ne | Ne | Minimální hodnota výstupu | |
| Max | real | >= 0 | Ne | Ne | Maximální hodnota výstupu | |
| Xp | real | > 0 | Ne | Ne | Šířka pásma | |
| Ti | real | > 0 | Ne | Ne | Integrační konstanta |
| Jméno | Datový typ | Význam | |
| Output | real | Výstup | |
| InvalidParameters | bool | Indikace neplatného nastavení regulátoru (Xp, Ti, Min nebo Max mimo povolený rozsah) |
| Jméno | Význam | |
| Adjust | Slouží pro úpravu integrační složky tak, aby byla na výstupu maximální hodnota | |
| AdjustToValue | Slouží pro úpravu integrační složky tak, aby byla na výstupu požadovaná hodnota | |
| Restart | Slouží pro vynulování interních hodnot a restartu výpočtu |
Funkční blok realizuje PI regulátor. Pro výpočet výstupu jsou použité následující vzorce:
e = SetPoint - Input
IPart = IPart + (Max - Min) / (Xp * Ti) * e * ΔT
Output = (Max - Min) / Xp * e + IPart
Regulátor obsahuje algoritmy pro omezení velikosti integrační složky v případě dosažení saturace - Anti-windup