• Nie Znaleziono Wyników

Regulatory i filtry (Controllers and Filters)

W dokumencie AUTOMATYKA w inżynierii środowiska (Stron 32-37)

6.3 OPIS WYBRANYCH BLOKÓW

1.1.5 Regulatory i filtry (Controllers and Filters)

PIDA - PID Controller - Analog Output – Regulator PID z wyjściem analogowym (AO)

Blok regulatora PID z wyjściem analogowym

A

Czas różniczkowania

MV (AI) = Wartość regulowana, pomiar (Measured value).

SP (AI) = Wartość zadana (Set point).

Mode (AI) = Tryb pracy regulatora określony jest wartością tego parametru:

Mode = 0 => Wyłącz, regulator jest wyłączony, nie działa, sygnał AO = 0 (inaczej AO = TSg).

Mode = 1 => Praca, regulator realizuje proces regulacji.

Mode = 2 => Wymuszenie wartości sygnału AO = UMax.

Mode = 3 => Wymuszenie wartości sygnału AO = UMin.

G (AI) = Zakres proporcjonalności P regulatora (Proportional gain). Gdy wartość regulowana MV jest mniejsza od zadanej SP, to przy dodatnim G sygnału sterujący rośnie (sterowanie grzaniem), a przy ujemnym G maleje (sterowanie chłodzeniem).

Ti (AI) = Czas całkowania I regulatora (Integral time) podany w sekundach.

Td (AI) = Czas różnickowania D regulatora (Derivative time) podany w sekundach.

DZ (AI) = Strefa martwa regulatora (Dead zone). Gdy odchyłka regulacji jest mniejsza od DZ, to sygnał sterujący AO = 0.

TSg (AI) = Tracking signal (actual value of the previous control signal).

Wejście zazwyczaj podłączone bezpośrednio z wyjściem tego samego regulatora lub np. po zewnętrznych ograniczeniach tego sygnału sterującego.

Parametry bloku:

ControlInt (A) = okres próbkowania w sekundach. Gdy zmienna wynosi 0, to czas próbkowania jest automatycznie dostosowywany do długości cyklu programu.

UMin (A) = minimalna wartość sygnału sterującego AO (wyjścia z PIDA).

Domyślnie 0%.

UMax (A) = maksymalna wartość sygnału sterującego AO (wyjścia z PIDA).

Domyślnie 100%.

StrokeTime (A) = czas ruchu siłownika w sekundach (czas przejścia od otwarcia do zamknięcia). Parametr ten określa szybkość zmian sygnału wyjściowego modułu PIDA: określa czas konieczny do zmiany sygnału z wartości maksymalnej do minimalnej (lub odwrotnie). Wartość 0 oznacza brak ograniczenia prędkości zmian sygnału AO.

SEQ – Sequencer - Przełącznik urządzeń pracujących w kaskadzie

Wejście, AI typu Real, %

Wyjście, AO typu Integer

Stages REAL Liczba procesów wyjsciowych (1 to 16).

Rotation BINARY Zdefiniowanie rotacjiprocesów lub jej braku Period INTEGER Opóźnienie jednoczesnej aktywacji procesów (milisek.)

Hysteresis REAL Wartość histerezy (%).

Ten blok używany jest do uruchomienia N z M etapów gdzie M jest całkowitą liczbą procesów wyjściowych zdefiniowanych za pomoca parametru Stages (maksymalnie do 16), a N jest częścią całkowitą wyniku poniższego działania:

N=(M+1)*Input/100

gdzie: Input jest wartością pomiędzy 0% a 100%. M procesów jest reprezentowane przez pierwsze M bitów całkowitej wartości wyjścia bloku. Pierwsze N z tych bitów określane jest jako prawda (1), a reszt jako fałsz (0).

Przykład: Jeżeli Stages równe jest 4 i ani Hysteresis ani Rotacja nie są użyte, jeden proces będzie uruchomiony (Wyjście=1;0001) przy 20% sygnału wejściowego, dwa procesy (Wyjście=3;0011) przy 40%, trzy procesy (Wyjście=7;0111) przy 60% i cztery procesy

(Wyjście=15;1111) przy 80%. Warto zauważyć, że TAC Menta używa dwóch komplementarnych sposobów określania liczb całkowitych, np.: sygnał wyjsciowy dla uruchomienia 16 etapów bedzie -1 (1111111111111111).

Jeżeli parametr Hysteresis jest równy zero, wyżej wspomniane działanie da liczbę procesów aktywowanych w funkcji sygnału wejściowego. Jeżeli Hysteresis ma wartość różną od zera, pętla histerezy bedzie aktywna. W tym przypadku, wartości aktywujace poszczególne etapy będą przesunięte względem wartości deaktywujących te procesy. Na przykład, jeżeli zdefiniujemy cztero procesowy SEQ, zgodnie z wcześniejszym wzorem przy 20% zostanie uruczomiony jeden proces, przy 40% dwa procesy, przy 60%

trzy procesy, przy 80% cztery procesy. Jeżeli zdefiniowana jest histereza o wartości dodatniej, np.: równa 10, aktywacja procesów będzie przesunieta w prawo o 10%, w taki sposób, że aktywacja procesów nastapi odpowiednio przy wartościach sygnału wejściowego równych 30%, 50%,

70% i 80%

i 90%, ale deaktywacja nastapi zgodnie z wcześniejszymi wartościamy sygnału wejściowego.

Z drugiej strony, jeżeli histereza ędzie ujemna, np.: -15%, deaktywacja będzie przesunięta w lewo i tak procesy będą aktywowane przy warościach 20%, 40%, 60% i 80%, ale deaktywowane przy 5%, 25%, 45% i 65%.

Parametr Period jest używany w celu unikniecia aktywacji dwóch lub więcej procesów jednocześnie. Jeżeli wartość tego parametru jest różna od zera,

procesy bedą zawsze aktywowane sekfencyjnie

z interwałem czasowym zdefiniowanym przez parametr Period (milisek.).

Jednakże, jeżeli wartośc tego parametru bedzie równa zero, procesy mogą byc aktywowane jednocześnie.

Parametr Rotation określa, czy powinna następować rotacja aktywnych procesów. Różnica pomiędzy Rotation = 1 (z rotacją) i Rotation = 0 (bez rotacji) jest taka, że w pierwszym przypadku procesy bedą deaktywowane w takiej samej kolejności w jakiej były aktywowane, dzieki czemu proces aktywny najdłużej bedzie wyłączany jako pierwszy. W drugim przypadku kolejność aktywacji procesów jest odwrotna do kolejności aktywacji. Kiedy SEQ zdefiniowany jest z rotacją, można uznać, iż czas w którym poszczególne procesy są aktywne, w długim okresie czasu bedzie w przybliżeniu równy dla każdego z procesów.

This block is used to start N of M stages, where M is the total number of output stages as defined by the parameter Stages (up to a maximum of 16) and N is the integer part of the result of the following calculation:

where Input is a value between 0% and 100%. The M stages are represented by the first M bits of the integer block output value. The first N of these bits will be true (1) and the rest false (0).

Example: If Stages is 4, and neither Hysteresis nor Rotation is used, stage

(Output = 3; 0011) at 40%, stage three (Output = 7; 0111) at 60% and stage four (Output = 15; 1111) at 80%. Note that TAC Menta uses two-complement representation of signed integers, i.e. the output signal for starting 16 stages will be -1 (1111111111111111).

If the parameter Hysteresis is zero, the previous formula will give the number of stages activated as a function of the input signal. If Hysteresis has a non-zero value, a hysteresis loop will exist to the left or to the right (depending if Hysteresis is a negative or a positive number) of the points calculated in the prior equation. In this case, the activation values of the stages will be displaced with respect to the deactivation values. For example, if we define a 4 stage sequencer, the stages started according to the previous formula will be one stage at 20%, two stages at 40%, three stages at 60% and four stages at 80%. If a positive hysteresis is defined, e.g. equal to 10, the activation of the stages will be displaced to the right by 10%, that is the activation of the stages will be produced at 30%, 50%, 70% and 90%, but the deactivation is maintained at the previous values.

On the other hand, if the hysteresis were negative, for example -15%, the deactivation would be displaced to the left and therefore, the stages would activate at 20%, 40%, 60% and 80% and be deactivated at 5%, 25%, 45%

and 65%.

The parameter Period is used to prevent two or more stages from being activated simultaneously. If the value is non-zero, the stages will always be activated sequentially with an interval equal to Period (milliseconds), even though the input were to vary sharply, obliging the simultaneous activation of the stages. However, if this value is zero, the stages may be activated simultaneously.

The parameter Rotation determines if the active stages should rotate or not. The difference between Rotation = 1 (with rotation) and Rotation = 0 (without rotation) is that in the first case the stages will deactivate in the same order in which they were activated, that is the stage which has been active the longest time will always be deactivated first, while in the second case, the deactivation order is the opposite of the activation order. When the sequencer is defined with rotation, it may be assumed that the time

which each stage remains active will in the long term be approximately the

DelayOn REAL opóźnienie włączenia

alarmu (sec) wejściowego. Narastające zbocze impulsu (przejście od 0 do 1) uruchamia zegar, który mierzy jak długo wejście jest prawdą (1). Jeśli wynik pomiaru przekracza określone opóźnienie aktywacji alarmu (set) opóźnienia, zapis alarmu z informacją o stanie, czasie, nazwie sygnału, priorytecie i wraz tekstem alarmu (opcja) jest generowany przez oprogramowanie. Gdy alarm jest włączony, blok alarmu czeka na zmianę sygnału wejścia na wartość fałsz (0). Opadający sygnał wejściowy uruchamia zegar w taki sam sposób jak zbocze narastające. Po upływie czasu opóźnienia wyłączenia alarmu, alarm jest kasowany przez oprogramowanie.

Sygnał wyjściowy bloku ALARM wskazuje aktualny stan alarmu. 1 = alarm jest włączony., 0 = brak alarmu (reset).

Czasy opóźnienienia włączenia i wyłączenia alarmu określane są w sekundach odpowiednio za pomocą parametrów DelayOn i DelayOff. Proszę odnieść się do rysunku czas poniżej, który pokazuje włączanie i wyłączanie alarmu. Jeżeli awaria zasilania powinna nastąpić podczas trwania opóźnienia, czas opóźnienia który upłynął jest zapisywany, jeśli pole wyboru jest ustawione.

Opcjonalny tekst alarmu jest określany w panelu operatorskim OP za pomocą parametru Alarm Text, który jest ciągiem znaków o zmiennej długości. Naciskając przycisk Edytuj w TAC Vista alarm parameter, można

W dokumencie AUTOMATYKA w inżynierii środowiska (Stron 32-37)

Powiązane dokumenty