SMHCC – Regulátor pro procesy s topením a chlazením

Symbol blokuPotřebná licence: ADVANCED
PIC

Popis funkce
Regulátor SMHCC (Sliding Mode Heating/Cooling Controller) je snadno nastavitelný regulátor pro kvalitní regulaci teplotních soustav s dvoustavovým (ON-OFF) topením a dvoustavovým (ON-OFF) chlazením. Klasickým příkladem takových soustav je plastikářský lis. SMHCC může být samozřejmě nasazen i na jiné soustavy, kde se dosud běžně používají konvenční termostaty. Pro zajištění správné funkce je nutné blok SMHCC doplnit blokem PWM (Pulse Width Modulation), jak je patrné z následujícího obrázku.

PIC

Blok SMHCC pracuje se dvěma časovými periodami. První perioda TS je vzorkovací perioda měřené teploty a je rovněž rovna periodě, se kterou se blok regulátoru SMHCC spouští. Druhá perioda TC = ipwmcTS je perioda řízení, se kterou blok SMHCC generuje akční zásahy. Tato perioda TC je totožná s periodou cyklu bloku PWM. V každém okamžiku, když se změní akční zásah mv bloku SMHCC, algoritmus bloku PWM přepočte šířku pulsu a spustí nový PWM cyklus. Třetí perioda, kterou je třeba stanovit, je perioda spouštění TR bloku PWM. Obecně může být TRTS. Pro dosažení co nejlepší kvality řízení je doporučeno nastavit periodu TS na minimální možnou hodnotu (ipwmc na maximální možnou hodnotu), poměr TCTS maximální, ale TC by měla být dostatečně malá vzhledem k dynamice procesu. Pro aplikace v plastikářském průmyslu jsou doporučeny následující hodnoty:

TS = 0.1,ipwmc = 100,TC = 10s,TR = 0.01s.

Zákon řízení bloku regulátoru SMHCC v automatickém režimu (MAN=off) je založen na diskrétní technice dynamického řízení s klouzavým režimem a dále je použit speciální filtr třetího řádu pro odhad první a druhé derivace regulační odchylky.

Po změně požadované hodnoty sp (setpoint) se regulátor dostane do první fáze, tzv. přibližovací, kdy diskrétní proměnná klouzavého režimu

sk=ëk + 2ξΩėk + Ω2e k

je stlačena do nuly. Ve výše uvedené definici neznámé ek ,ėk,ëk po řadě označují filtrovanou regulační odchylku (pv-sp), první a druhou derivaci ek v čase k. Parametry ξ a Ω jsou popsány níže. V druhé fázi (kvazi klouzavý režim) je proměnná sk držena v okolí nulové hodnoty pomocí patřičných zásahů řízení, režim topení se střídá s režimem chlazení. Amplitudy topení a chlazení se adaptují tak, aby se dosáhlo přibližně sk = 0. V důsledku toho je hypotetická spojitá proměnná klouzavého režimu

s=ë + 2ξΩė + Ω2e

stále přibližně nulová. Jinak řečeno regulační odchylka e je popsána diferenciální rovnicí druhého řádu

s=ë + 2ξΩė + Ω2e = 0.

Z toho plyne, že vývoj e může být ovlivněn volbou parametrů ξ a Ω. Poznamenejme, že pro stabilní chování musí být splněno ξ > 0 a Ω > 0. Typická optimální hodnota ξ leží v intervalu [0.1,8]. Optimální hodnota Ω je silně závislá na řízeném procesu, pomalejší procesy mají menší hodnotu a rychlejší větší. Doporučená hodnota Ω pro začátek ladění parametrů je π(5TC).

Řídicí veličena mv je obvykle v intervalu [1,1]. Kladná hodnota odpovídá topení, záporná chlazení, např. mv = 1 znamená plné topení. Omezení na mv může být zadáno parametry hilim_p a hilim_m. Omezení může být potřebné, když existuje velká nesymetrie mezi topením a chlazením. Jestliže je například chlazení mnohem agresivnější než topení, je vhodné nastavit hilim_p = 1 and hilim_m < 1. Pokud chceme omezení aplikovat pouze v intervalu po změně požadované hodnoty sp, volíme u0_p a u0_m tak, že platí u0_p hilim_p a u0_m hilim_m.

Hodnoty amplitud proměnných pro topení a chlazení t_ukp, t_ukm se automaticky adaptují speciálním algoritmem tak, aby byl dosažen kvazi klouzavý režim, ve kterém se střídají znaménka sk po každém kroku. V tomto případě se výstup isv přepíná mezi 1 a 1. Rychlost adaptace amplitud topení a chlazení je dána časovými konstantami taup a taum. Obě tyto časové konstanty musí být dostatečně velké, aby zajistily správnou funkci adaptace, ale jejich jemné doladění není nezbytné pro výslednou kvalitu regulace. Pro úplnost dodejme, že mv je určena na základě amplitud t_ukp a t_ukm podle následujícího výrazu

if(sk < 0.0)thenmv = t_ukpelsemv = t_ukm.

Dále je třeba říci, že dosažení kvazi klouzavého režimu nastává velmi zřídka, protože řízené procesy obsahují dopravní zpoždění a působí na ně poruchy. Vhodným indikátorem kvality "klouzání"je opět výstup isv. Pro jemné doladění je možno v mimořádných případech použít parametr beta definující šířku pásma derivačního filtru. Ve většině případů však vyhovuje přednastavená hodnota beta = 0.1.

V manuálním režimu (MAN = on) je vstup regulátoru hv kopírován po případném omezení saturačními mezemi na výstup mv.

Vstupy

sp

požadovaná hodnota (setpoint)

Double (F64)

pv

regulovaná veličina (process variable)

Double (F64)

hv

výstup regulátoru v manuálním režimu (hand value)

Double (F64)

MAN

režim činnosti regulátoru

Bool

0 ....

automatický režim

1 ....

manuální režim

Výstupy

mv

řídicí veličina (manipulated variable)

Double (F64)

de

regulační odchylka (deviation error) de = sppv

Double (F64)

SAT

příznak saturace

Bool

0 ....

regulátor pracuje v lineární oblasti

1 ....

výstup regulátoru je saturován, mv hilim_p nebo mv hilim_m

isv

počet kladných nebo záporných kroků přepínací proměnné sk

Long (I32)

t_ukp

aktuální hodnota amplitudy topení

Double (F64)

t_ukm

aktuální hodnota amplitudy chlazení

Double (F64)

t_sk

přepínací proměnná sk

Double (F64)

t_ek

filtrovaná regulační odchylka de

Double (F64)

t_dek

filtrovaná první derivace regulační odchylky t_ek

Double (F64)

t_2dek

filtrovaná druhá derivace regulační odchylky t_ek

Double (F64)

Parametry

ipwmc

počet PWM cyklů během jedné periody spouštění bloku SMHCC (TCTS)

Long (I32)

xi

relativní tlumení xi > 0

Double (F64)

om

přirozená frekvence om > 0

Double (F64)

taup

časová konstanta adaptace amplitudy topení v sekundách

Double (F64)

taum

časová konstanta adaptace amplitudy chlazení v sekundách

Double (F64)

beta

šířka pásma derivačního filtru; beta > 0; doporučená hodnota 0.1

Double (F64)

hilim_p

horní saturační mez amplitudy topení (0 < hilim_p 1)

Double (F64)

hilim_m

horní saturační mez amplitudy chlazení (0 < hilim_m 1)

Double (F64)

u0_p

počáteční hodnota amplitudy topení po změně požadované hodnoty nebo startu bloku

Double (F64)

u0_m

počáteční hodnota amplitudy chlazení po změně požadované hodnoty nebo startu bloku

Double (F64)

sp_dif

Práh pro detekci změny setpointu  10.0

Double (F64)

tauf

Časová konstanta filtru ekvivalentní akční veličiny  400.0

Double (F64)

2022 © REX Controls s.r.o., www.rexygen.com