Instrukcja do laboratorium z przedmiotu AUTOMATYKA w inżynierii środowiska Zawartość: 1. Karta Zadania nr1 2. Karta Zadania nr2 3. Objaśnienia do programu TAC MENTA 4. Opis bloków funkcyjnych Opracowanie: dr inż. Piotr Jadwiszczak mgr inż. Piotr Kowalski mgr inż. Paweł Szałański na podstawie materiałów producenta wersja trzecia (2015) 1
2
Karta Zadania 1 ZASOBNIKOWY UKŁAD PRZYGOTOWANIA C.W.U. Programem narzędziowym TAC MENTA stworzyć algorytm sterowania i regulacji dla sterownika TAC XENTA 301 zasobnikowego układu przygotowania ciepłej wody użytkowej. Schemat ideowy układu według załączonego rysunku. Wymagane funkcje, które mają być realizowane przez sterownik to: 1. Regulacja temperatury ciepłej wody użytkowej. Zbudować algorytm stałowartościowej, dwustawnej regulacji temperatury ciepłej wody użytkowej. Niezależnie od pojawiających się zakłóceń układ ma utrzymywać stałą temperaturę wody. Dane: Temperatura zadana c.w.u: Tcwu = 60 C Dopuszczalna histereza: 5 C (55 60 C) Grzałka elektryczna: załącz/wyłącz Cyrkulacja c.w.u.: brak Zadania pomocnicze: 1.1. Narysuj schemat blokowy regulacji dla tego układu. Poszczególnym blokom przyporządkuj konkretne urządzenia. 1.2. Według jakiego scenariusza powinien działać ten algorytm regulacji? Jakie zakłócenia występują w układzie? 1.3. Ile elementów pomiarowych i wykonawczych powinno się znaleźć w tym układzie automatycznej regulacji? Określ i uzasadnij ich lokalizację. 2. Okresowa dezynfekcja termiczna Zbudować algorytm okresowej dezynfekcji termicznej układu. Ma ona polegać na okresowym podnoszeniu temperatury w zasobniku w celu zabicia bakterii (głównie Legionella). Temperatura dezynfekcji: Tcwu = 70 C Czas trwania dezynfekcji: 1 godzina Częstotliwość dezynfekcji: dwa razy w tygodniu Zadania pomocnicze: 2.1. Kiedy najlepiej przeprowadzać dezynfekcję? W jakich warunkach, godzinach? 2.2. Od czego zależy czas trwania dezynfekcji? Schemat układu: c.w.u. podgrzewacz pojemnościowy GE grzałka elektryczna 3 woda zimna
Karta Zadania 2 WĘZEŁ CIEPŁOWNICZY Programem narzędziowym TAC MENTA stworzyć algorytm sterowania i regulacji dla sterownika TAC XENTA 301 dwufunkcyjnego, wymiennikowego węzła ciepłowniczego. Schemat ideowy węzła według załączonego rysunku. Wymagane funkcje, które mają być realizowane przez sterownik to: 1. Regulacja temperatury ciepłej wody użytkowej. Stałowartościowa, ciągła regulacja temperatury ciepłej wody użytkowej (PID). Niezależnie od pojawiających się zakłóceń układ ma utrzymywać stałą temperaturę wody. Temperatura zadana c.w.u. Tcwu = 60 C. W module regulacyjnym c.w.u. ustawić odpowiednio: wartość zadaną, zakres proporcjonalności 50 K, czas całkowania 30 s, czas różniczkowania 0 s, czas ruchu siłownika 60 s, okres próbkowania 1 s. 2. Nadążna (pogodowa) regulacja temperatury wody zasilającej w instalacji c.o. Ciągła regulacja (PID) temperatury czynnika grzejnego na zasilaniu instalacji c.o. Tzco w funkcji temperatury zewnętrznej Te według zadanego wykresu regulacyjnego (tzw. krzywej grzania). W module regulacyjnym PID c.o. ustawić odpowiednio: zakres proporcjonalności 60 K, czas całkowania 15 s, czas różniczkowania 0 s, czas ruchu siłownika 120 s, okres próbkowania 10 s. 3. Funkcja ograniczenia maksymalnej i minimalnej temperatury czynnika c.o. Algorytm zabezpieczający instalację c.o. przed przekroczeniem minimalnej i maksymalnej temperatury czynnika obiegowego. 4. Funkcja zakończenia sezonu ogrzewczego dla c.o. Automatyczne wyłączenie ogrzewania ma następować przy temperaturze zewnętrznej Te>16 C, ponowne załączenie przy Te<14 C. Wyłączenie instalacji c.o. polega na zamknięciu zaworu regulacyjnego ZRco i wyłączeniu pompy obiegowej PO z podtrzymaniem pracy przez 60 minut. 5. Funkcja priorytetu c.w.u. Priorytet realizowany przez przymykanie ZRco, a tym samym okresowe ograniczenia dostawy ciepła do c.o. i skierowanie go do układu przygotowania c.w.u. Priorytet częściowy: dopuszczalne przymknięcie zaworu ZRco = 40% otwarcia. Wskazówka: sygnał z regulatora PID c.w.u. podzielić w na dwie części, np.: 0 70% i 70 100%. Pierwszą część (0...70%) wykorzystać na sterowanie otwarciem ZRcwu w zakresie 0...100%. Drugą część (70...100%) wykorzystać na sterowanie zaworem ZRco w zakresie 100...40% (przymknięcie w czasie priorytetu przy już w pełni otwartym zaworze ZRcwu). Sygnał AO z regulatora c.w.u. (wyjście nr 8) 0% 70% 100% 6. Funkcja osłabienia nocnego parametrów c.o. Nocne i weekendowe obniżenie parametrów czynnika c.o. o 10 C. Osłabienie ma być załączenie zegarem zewnętrznym, według kalendarza tygodniowego: DI = 1 oznacza załączenie osłabienia. Uwzględnić wpływ długiego osłabienia weekendowego. 7. Sterowanie pompą cyrkulacyjną c.w.u. 0% sterowanie zaworem 100% 100% sterowanie 40% ZRcwu zaworem ZRco Pompa cyrkulacyjna PC ma pracować tylko w godzinach użytkowania budynku. 4
wymiennik c.o. Automatyzacja w IŚ laboratorium Schemat węzła: c.w.u. ZRcw cyrkulacja wymiennik c.w.u. II stopień ZRco PO PC sieć ciepłownicza instalacja c.o. wymiennik c.w.u. I stopień woda zimna AI AO DI DO 5
OBJAŚNIENIA DO PROGRAMU TAC MENTA TAC Menta jest narzędziem do programowania sterowników serii TAC Xenta, ułatwiającym pracę programisty oraz osoby uruchamiającej układy automatyki. TAC Menta korzysta z podstawowych funkcji Windows i możliwe jest równoczesne uruchamianie wielu aplikacji TAC Menta. TAC Menta posiada następujące funkcje: graficzny język programowania tryb edycji programu tryb symulacji pracy programu funkcje on-line narzędzie do konfiguracji panelu operatora OP kreator ładowania programu do sterownika (wizard) funkcje pomocy 1. Uruchamianie i ograniczenia wersja DEMO Po zainstalowaniu uruchamianie poprzez: START >Wszystkie Programy >TAC >TAC Tools >Menta. Uruchomienie w wersji demo sygnalizowane jest odpowiednim komunikatem. W wersji demo nie ma możliwości wgrania stworzonego algorytmu do pamięci sterownika lub regulatora. Po uruchomieniu aplikacji lub wybraniu opcji nowy projekt (>File >New) należy wybrać rodzaj i parametry regulatora TAC Xenta dla którego będzie tworzony program aplikacyjny (Device Configuration). Następnie podaje się dane dotyczące programu aplikacyjnego (Program Specification). 6
2. Programowanie i tworzenie programów Tworzenia aplikacji (programu) dla sterownika odbywa się za pomocą interface u graficznego i nie wymaga znajomości języków programowania maszynowego. Program aplikacyjny tworzony jest poprzez wybieranie i łączenie odpowiednich bloków funkcyjnych (tzw. function block diagram, FBD). Obliczenia dla wszystkich bloków FBD wykonywane są w stałych cyklach czasowych zdefiniowanych przez użytkownika. Każde wykonanie jest nazywane cyklem programu. Podstawowymi elementami FBD są bloki funkcyjne (function blocks, FB) i ich połączenia. Każdy rodzaj FB przetwarza w określony sposób dane z sygnałów wejściowych i generuje sygnał wyjściowy. Większość bloków funkcyjny (FB) zawiera zmienne parametry określające sposób ich pracy czy przetwarzania przez nie sygnałów wejściowych. Parametry te mogą być stałymi wartościami numerycznym podanymi przez programistę, być na bieżąco wyliczane lub pochodzić z innych bloków funkcyjnych. Połączenie bloków funkcyjnych liniami sygnałowymi stanowi drogę przesyłania informacji od jednego bloku do drugiego lub do kilku bloków. Dozwolone są połączenia jedynie pomiędzy blokami o takich samych typach sygnałów. każda linia sygnałowa przesyła sygnał w kierunku oznaczonym grotem strzałki. Domyślny kierunek przebiegu sygnałów to od lewej do prawej. blok źródłowy linia sygnałowa blok funkcyjny linia sygnałowa blok wynikowy 3. Rodzaje sygnałów W TAC Menta informacje przesyłane są za pomocą trzech typów sygnałów: sygnał analogowy jako liczba całkowita (INTEGER, 16 bitowa liczba ze znakiem), sygnał analogowy jako liczba rzeczywista (, 32-bitowa liczba ze znakiem, z dokładnością do 7 znaków), sygnał cyfrowy jako binarny (BINARY, 0/1 = FAŁSZ/PRAWDA). Dozwolone są połączenia jedynie pomiędzy blokami o takich samych typach sygnałów. 7
4. Biblioteka bloków W programie TAC Menta dostępna jest biblioteka gotowych bloków funkcyjnych (FB), z których graficznie buduje się schemat algorytmu działania. Dostęp do bibliotek poprzez naciśniecie lewego przycisku myszy na ekranie roboczym: Bloki podzielone są na cztery grupy bloków: 1. Simple Block podstawowe bloki funkcyjne 2. Operator bloki operatorów (operacje na sygnałach) 3. Expression blok wyrażeń matematycznych 4. Test Probe Block bloki I/O do testów aplikacyjnych Wybranie odpowiedniej grupy otwiera szczegółową listę dostępnych w niej bloków. Wykorzystując opcje Comment wprowadza się komentarze do obszarze programu. Line wryswuje się linie przerywane. REctangle wrysowuje się prostokąty (ramki). 4.1 Bloki podstawowe (Simple Block) Istnieje dziesięć różnych grup bloków prostych: 1. bloki wejść/wyjść (I/O) 2. źródła sygnałów 3. funkcje logiczne 4. funkcje nieliniowe 5. bloki opóźnienia 6. akumulatory 7. regulatory i filtry 8. zmienne systemowe 9. programy czasowe i alarmy 10. funkcje transformacji Każdy z podstawowych bloków posiada określoną funkcję, ustaloną liczbę wejść i parametrów. Każdy blok generuje jeden sygnał wyjściowy. Parametry bloku mogą być różnych typów, przy czym każdy typ posiada wcześniej ustalony zakres wartości. 4.2 Blok wyrażeń matematycznych (Expression) Bloki wyrażeń stosowane są gdy chcemy stworzyć logiczne lub arytmetyczne wyrażenie w jednym bloku. Blok może zawierać zmienną liczbę wejść, wyrażenie (może być złożone) oraz jedno wyjście. Wyrażenie może zawierać wejścia analogowe (oznaczane dużą literą A, B, C,...) lub wejścia binarne (oznaczane małą literą a, b, c,...). Zmienne wejściowe sortowane są w kolejności alfabetycznej po lewej stronie bloku wyrażenia. Wyrażenia mogą również zawierać zdefiniowane w programie stałe. 4.3 Bloki operatorów (Operator) Operatory są predefiniowanymi blokami wyrażeń z charakterystycznymi ikonami graficznymi. Istnieje pięć grup operatorów: 8
stałe operatory matematyczne operatory porównań operatory bitowe inne 9
5. Tryby pracy w TAC Menta 5.1 Tryb edycji (Edit Mode) Główne okno trybu edycji TAC Menta składa się z pojedynczego okna schematu z dwoma paskami przewijania, gdzie będą wyświetlone zastosowane bloki funkcyjne. Programista tworzy program FBD przy pomocy myszy, klawiszy funkcyjnych, rozwijanych menu, poprzez umieszczanie bloków funkcyjnych w oknie schematu i rysowaniu połączeń pomiędzy blokami funkcyjnymi. 5.2 Tryb symulacji (Simulation Mode) Tryb symulacji pozwala sprawdzić poprawność działania budowanego algorytmu regulacji i sterowania. Podczas symulacji można zmieniać wartości sygnałów i symulować stan wejść fizycznych oraz rejestrować sygnały na wykresie w oknie rejestracji. W trybie symulacji okno aplikacji posiada dwa podokna, okno schematu i okno rejestrów. Okno schematu wyświetla bloki FBD, a okno rejestrów wykres z wielkościami monitorowanymi. 5.3 Tryb on-line (połączenia ze sterownikiem) Tryb on-line TAC Menta jest przeznaczony do ładowania i uruchamiania programu aplikacyjnego w rzeczywistym sterowniku. Niedostępny w wersji demo. 5.4. Tryb demo TAC Menta może pracować bez licencji w trybie demo. Tryb demo umożliwia użytkownikowi wypróbowanie wszystkich funkcji programu (takich jak: zapamiętywanie, symulacje, edycje). Jednakże aplikacja może być zapamiętana jedynie jako aplikacja demo. Oznacza to, że nie będzie możliwe załadowanie aplikacji do jakiegokolwiek sterownika TAC Xenta. Aplikacja demo może być otwarta w licencjonowanym programie TAC Menta, ale nie może być przekonwertowana na wersję dającą się wgrać do sterownika. 6. Uwagi odnośnie obsługi programu 1. Wstawianie bloków polega na wybraniu z listy, dostępnej po kliknięciu lewym przyciskiem myszy na ekranie roboczym schematu blokowego, wybranego bloku i umiejscowienia go na ekranie roboczym. 2. Kliknięcie na bloku funkcyjnym prawym przyciskiem myszy otwiera krótkie menu funkcji dostępnych dla danego bloku: edytuj, powiel, odłącz, skasuj itp. 3. Dwukrotne kliknięcie lewym przyciskiem myszy na bloku funkcyjnym otwiera okno z jego właściwościami, parametrami i opcjami połączenia (Bind). 4. Zaznaczanie bloków (do usunięcie, przesunięcia itp.) odbywa się za pomocą okienna obszaru, analogicznie jak w CADzie. 5. Łączenie bloków odbywa się za pomocą linii sygnałowych poprzez kliknięcie wyjścia z bloku pierwszego, a następnie kliknięciu na wejściu bloku drugiego. 6. Kasowanie połączeń odbywa się poprzez wybranie z krótkiego menu bloku funkcyjnego opcji odłącz (disconnect) lub poprzez zaznaczenie linii sygnałowej i jej skasowanie. 7. Zapis dziesiętny za pomocą KROPKI, np. 20.5 8. Każdy sterownik ma ograniczoną liczbę wejść i wyjść sygnałów fizycznych (rys.2) i są one zajmowane przez kolejne, wykorzystywane podczas tworzenia algorytmu sygnały I/O. Znak # oznacza, że dane wejście/wyjście jest już zajęte przez inny sygnał i należy wybrać inne. Ilość I/O danego typu zależy od rodzaju wybranego regulatora. 10
7. Sterowniki swobodnie programowalne TAC Rys.1 Sterownik TAC Xenta 300 TAC Xenta to rodzina kompaktowych, swobodnie programowalnych sterowników przeznaczonych głównie dla instalacji HVAC (Heating, Ventilation, Air Conditioning), węzłów ciepłowniczych, oświetlenia itp. Zaprojektowane są do montażu w standardowych szafach AKPiA. Mogą być obsługiwane lokalnie przez panel operatora TAC Xenta OP oraz zdalnie z systemu BMS (Building Management System). Sterowniki TAC Xenta wyposażone są w funkcje sterownicze obejmujące pętle regulacyjne, krzywe grzewcze, sterowanie czasowe (harmonogramy), obsługę alarmów i inne. Są łatwy do zaprogramowania i uruchomienia przy pomocy graficznego programu narzędziowego TAC Menta. Sterowniki TAC Xenta danego modelu posiada określoną liczbę wejść i wyjść. Mogą być rozbudowane o dodatkowe moduły wejść/wyjść (moduły I/O). Rodzaje wejść i wyjść w sterownikach TAC Xenta: wejścia cyfrowe DI (ozn. X1, X2 ), wejścia termistorowe TI (ozn. B1, B2 ), wejścia uniwersalne UI konfigurowane jako DI lub AI (ozn. U1, U2 ), wyjścia cyfrowe DO (ozn. K1, K2 ), wyjścia analogowe AO (ozn. Y1, Y2 ). Sterownik DI DO UI TI AO Moduł I/O DI DO UI TI AO TAC Xenta 281 2 3 4-3 411/412 10 TAC Xenta 282 2 4 4 2 4 421/422 4 5 TAC Xenta 283 2 6-4 - 421A/422A1 5 4 TAC Xenta 301 4 6 8-2 451/4521 4 4 2 TAC Xenta 302 4 4 8 - - 451A/452A1 8 2 TAC Xenta 401 wymaga modułów I/O 471 8 TAC Xenta 901 adapter LonkTalk 491/492 8 11
1. Bloki wejścia/wyjścia (I/O Blocks) 1.1 AI Analog Input Wejście analogowe OPIS WYBRANYCH BLOKÓW TAC Menta Fizyczny sygnał AI AI Wejście fizycznego sygnału analogowego do regulatora (np. sygnał z elementu pomiarowego, czujnika). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: zmienna sieciowa (Network Variable), liniowe wejście analogowe (Linear Analog Input), nieliniowe wejście analogowe (Non Linear Analog Input), zmienna LON (SNVT), wartość stała (Constant Value). 2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wejścia do sterownika (Terminal Ref). Znak # oznacza, że dane wejście jest już zajęte przez inny sygnał. 4. Typ czujnika (Sensor) podłączonego do sterownika. 5. Stała czasowa czujnika (Time Const) i wartość początkowa sygnału (Initial Value), które są parametrami dodatkowymi. 1.2 AO Analog Output Wyjście analogowe AO + Fizyczny sygnał AO Wyjście fizycznego sygnału analogowego (0 100%) z regulatora (np. sygnał do elementu wykonawczego siłownika). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). 12
Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: fizyczny sygnał wyjściowy (Physical Output), wyjście nie podłączone (Not connected), zmienna LON (SNVT). 2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wyjścia ze sterownika (Terminal Ref). Znak # oznacza, że dane wyjście jest już zajęte przez inny sygnał. 4. Wartość początkowa sygnału (Initial Value), napięcie odpowiadające sygnałowi wejściowemu 0% (Voltage 0%) i 100% (Voltage 100%), które są parametrami dodatkowymi. 1.3 CNT - Digital Input - Pulse Counter Wejście cyfrowe Zliczanie impulsów Fizyczny sygnał DI CNT Blok zlicza fizyczne sygnały cyfrowe (np. impulsy z ciepłomierza) i przemnaża je przez zadaną wartość (Multipler factor). Przepełnienie licznika następuje przy 32767. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: licznik impulsów (Pulse Counter), wyjście nie podłączone (Not connected). 2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wejścia do sterownika (Terminal Ref). Znak # oznacza, że dane wejście jest już zajęte przez inny sygnał. 4. Mnożnik (Multiplier) stosowany do przemnażania liczby zliczanych sygnałów DI. 5. Tryb pracy licznika impulsów: normalnie otwarty zlicza impulsy DI = 1 (Normally Open), normalnie zamknięty zlicza impulsy DI = 0. 13
1.4 DI - Digital Input Wejście cyfrowe Fizyczny sygnał DI DI BINARY Wejście fizycznego sygnału cyfrowego (0/1) pochodzącego z urządzenia zewnętrznego. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: zmienna sieciowa (Network Variable),wejście fizycznego sygnału (Physical Input), sygnał z innego regulatora (Online Device), zmienna LON (NSVT), wartość stała (Constant Value). 2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wejścia do sterownika (Terminal Ref). Znak # oznacza, że dane wejście jest już zajęte przez inny sygnał. 4. Wartość początkowa (Initial Value) i tryb pracy bloku (Normaly Open / Normaly Close), które są parametrami dodatkowymi. 1.5 DO - Digital Output Wyjście cyfrowe BINARY DO Fizyczny sygnał DO Wyjście fizycznego sygnału cyfrowego (0/1) do urządzenia zewnętrznego. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: wyjście fizycznego sygnału (Physical Output), nie podłączony (Not connected), zmienna LON (NSVT). 14
2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wyjścia ze sterownika (Terminal Ref). Znak # oznacza, że dane wejście jest już zajęte przez inny sygnał. 4. Wartość początkowa (Initial Value), która jest parametrem dodatkowym. 1.6 DOPU - Digital Pulse Output Wyjście impulsu cyfrowego DOPU Fizyczny sygnał DO Wyjście fizycznego sygnału cyfrowego w postaci impulsu (0/1) o konkretnej długości trwania. Blok generuje impuls cyfrowy (0/1) którego czas trwania w sekundach określony jest sygnałem wejściowym bloku (w sekundach). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Bind>> Dla przeprowadzenia symulacji wymagana jest parametryzacja bloku (Bind ). Określane są: 1. Charakterystyka sygnału: wyjście fizycznego impulsu (Digital Pulse Output), nie podłączony (Not connected). 2. Nazwa sterownika lub jego modułu do którego ma być podłączony sygnał (Mod Number). 3. Numer fizycznego wyjścia ze sterownika (Terminal Ref). Znak # oznacza, że dane wejście jest już zajęte przez inny sygnał. 4. Początkowa długości trwania impulsu (Initial Value) podana w sekundach. 5. Minimalna długość impulsu cyfrowego (Min. Pulse) podana w sekundach rozkazy wygenerowania krótszego impulsu nie są realizowane. Takie rozkazy są przechowywane do realizacji w następnym cyklu programu (są sumowane). 2. Bloki nadajniki sygnału (Signal Sources) 2.1 NCYC - Program Cycle Counter Licznik cykli programu NCYC InitValue Final INTEGER Licznik cykli zaprogramowanego algorytmu sterowania lub regulacji. Blok (licznik) zwiększa wartość wyjścia za każdym cyklem programu. 15
Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej wskazania licznika (InitValue) oraz wartości końcowej (Final), po osiągnięciu której licznik wraca do InitValue i kontynuuje zliczanie cykli. Gdy InitValue < Final licznik zwiększa sygnał o 1 z każdym cyklem programu, a zmniejsza o 1 gdy InitValue > Final. 2.2 OSC Oscillator Oscylator cyfrowy OSC Cycle Time Pulse Time BINARY Oscylator cyfrowy 0/1. Generuje parametryzowany cyfrowy sygnał pulsacyjny 0/1 o zadanym okresie i czasie trwania (sekundy). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: okresu pulsowania (Cycle Time - co ile impuls) w sekundach oraz czasu trwania impulsu (PulseTime - jak długi impuls) w sekundach. Wartości te zaokrąglane są automatycznie do krotności czasu trwania cyklu programu (np. 1 sekundy). 2.3 PVB - Binary Value Parameter Cyfrowa wartość stała PVB InitValue BINARY Cyfrowa wartość stała. Blok stale generuje sygnał cyfrowy o stałej wartości (0 lub 1).Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości generowanego sygnału (InitValue). 16
2.4 PVI - Integer Value Parameter Analogowa wartość stała, liczba całkowita PVI InitValue INTEGER Analogowa wartość stała (liczba całkowita). Blok stale generuje sygnał analogowy o zadanej wartości w postaci liczby całkowitej. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości generowanego sygnału (InitValue). 2.5 PVR - Real Value Parameter PVR InitValue Analogowa wartość stała (liczba rzeczywista). Blok stale generuje sygnał analogowy o zadanej wartości w postaci liczby rzeczywistej. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości generowanego sygnału (InitValue). 3. Bloki funkcji logicznych (Logical Functions) 3.1 AND - Logical AND Gate Logiczne I wejście 1, BINARY wejście 2, BINARY AND BINARY, wyjście Bramka logiczna AND (I). Blok generuje sygnał wyjściowy jako sumę logiczną dwóch sygnałów wejściowych (tabela). wejście1 wejście2 wyjście 0 0 0 0 1 0 1 0 0 1 1 1 17
3.2 NOT - NOT Gate Negacja logiczna wejście, BINARY BINARY, wyjście Bramka logiczna NOT (zaprzeczenie). Blok odwraca wejściowy sygnał cyfrowy z 1 na 0 i z 0 na 1 (tabela). 3.3 OR - OR Gate Logiczne ORAZ wejście 1, BINARY wejście 2, BINARY wejście wyjście 0 1 1 0 BINARY, wyjście Bramka logiczna LUB (alternatywa). Blok generuje sygnał wyjściowy jako alternatywę logiczną dwóch sygnałów wejściowych (tabela). wejście1 wejście2 wyjście 0 0 0 0 1 1 1 0 1 1 1 1 3.4 PULSE - Pulse Generator Generator impulsów wywołanie impulsu, BINARY długość impulsu, sek, OR t pl PULSE BINARY, impuls o długości pl Generator impulsów. Blok generuje impuls cyfrowy, którego parametry określają dwa sygnały wejściowe bloku: 1. t (Trig) cyfrowy sygnał inicjujący generowanie impulsu. Gdy sygnał t zmienia się z 0 na 1 generowany jest impuls cyfrowy. 2. pl (PulseLength) analogowy sygnał typu określający długość trwania impulsu wyjściowego w sekundach. Wartości te zaokrąglane są automatycznie do krotności czasu trwania cyklu programu (np. 1 sekundy). 18
Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). 3.5 SR - Set-Reset Flip-flop Przełącznik binarny set, BINARY reset, BINARY s r SR InitValue BINARY, wyjście Zależnie od wartości cyfrowych sygnałów wejściowych blok generuje cyfrowy sygnał wyjściowy w następnym cyklu (t+1) programu według zależności podanej w tabeli: set (t) reset (t) wyjście (t+1) 0 0 wyjście (t) 0 1 0 1 0 1 1 1 not (wyjście (t)) t = cykl aktualny, t+1 = cykl następny Gdy oba wejścia są wyłączone (0), wyjście pozostaje bez zmian. Gdy oba wejścia są aktywne (1) wyjście zmienia się co cykl (negacja poprzedniego). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej generowanego sygnału (InitValue). 3.6 TRIG Trigger Pojedynczy impuls cyfrowy s - set 1 0 r - reset 1 0 Output 1 0 wejście, BINARY Mode TRIG BINARY, wyjście Po pojawieniu się sygnału wejściowego o wartości 1 blok generuje cyfrowy sygnał wyjściowy (impuls), którego czas trwania równa się długości cyklu programu. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości typu INTEGER określającej tryb pracy bloku (Mode). 19
Zależnie od trybu pracy (Mode) blok generuje impuls: Mode = 0 i 1: gdy wejście zmienia się z 0 na 1 Mode = 2: gdy wejście zmienia się z 1 na 0 Mode = 3: przy dowolnej zmianie wartości sygnału wejściowego Wartość większa od 3 powoduje pracę bloku w trybie 3. 3.7 XOR - Exclusive OR Gate Logiczne LUB wykluczające wejście 1, BINARY wejście 2, BINARY BINARY, wyjście Bramka logiczna LUB (alternatywa). Blok generuje sygnał wyjściowy jako wykluczającą alternatywę logiczną dwóch sygnałów wejściowych (tabela). wejście1 wejście2 wyjście 0 0 0 0 1 1 1 0 1 1 1 0 4. Bloki funkcji nie liniowych (Non-linear Functions) 4.1 AHYST - Analog Hysteresis Histereza z wyjściem analogowym wejście, AHYST Rise Fall, wyjście Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: górnego ograniczenia sygnału wejściowego (Rise), dolnego ograniczenia sygnału wyjściowego (Fall). Sygnał wyjścia = wyjścia, gdy jego wartość znajduje się poza zakresem <Fall, Rise>. Gdy Rise>Fall to przebieg sygnału w pętli jest przeciwny do ruchu wskazówek zegara (patrz rysunek poniżej) lub gdy Rise>Fall to przebieg sygnału w pętli jest zgodny z ruchem wskazówek zegara. 20
Output 100% 0 0 Fall Rise 100% Variable 4.2 HYST - Binary Hysteresis Histereza z wyjściem cyfrowym wejście, HYST Activate Deactivate BINARY, wyjście Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości typu będącej progiem załączenia sygnału wyjściowego o wartości 1 (Activate), wartości typu będącej progiem wyłączenia sygnału wyjściowego o wartości 0 (Deactivate). Jeżeli Activate<Deactivate blok działa następująco: Jeżeli wartość wyjścia wynosi 1 i wartość sygnału wejściowego jest większa od progu deaktywacji, wartość sygnału wyjściowego zmienia się na 0. Jeżeli wartość sygnału wyjściowego wynosi 0 i wartość sygnału wejściowego spada poniżej progu aktywacji wyjście zmienia się na 1. Jeżeli sygnał wejściowy znajduje się pomiędzy progami aktywacji i deaktywacji sygnał na wyjściu nie ulega zmianie. Jeżeli Activate>Deactivate blok działa zgodnie ze schematem zamieszczonym na poniższym rysunku. Output 1 0 Deactivate Activate Variable 4.3 LIMIT - High/Low Signal Limit Ogranicznik sygnału LIMIT wejście, MinValue MaxValue, wyjście 21
Blok ogranicza sygnał wejściowy do zadanych wartości maksymalnej i minimalnej (wyjście nie przekroczy wartości maksymalnej i minimalnej podanej w bloku).edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: minimalnej wartości sygnału wyjściowego (MinValue), maksymalnej wartości sygnału wyjściowego (MaxValue). 4.4 MAX - Maximum Signal Selektor Wybór większej wartości analogowej wejście 1, wejście 2, MAX, wyjście Blok wybiera większą wartość z dwóch analogowych sygnałów wejściowych. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). 4.5 MIN - Minimum Signal Selector Wybór mniejszej wartości analogowej wejście 1, wejście 2, MIN, wyjście Blok wybiera mniejszą wartość z dwóch analogowych sygnałów wejściowych. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). 5. Bloki opóźniające (Delay Blocks) 5.1 DELAY - Delayed On/Off Opóźnienie załączenia/wyłączenia DELAY wejście, BINARY DelayOn DelayOff BINARY, wyjście 22
Blok opóźnia zmianę sygnału wejściowego opóźnia zmianę sygnału z 0 na 1 oraz z 1 na 0 o czas podany w sekundach osobno dla załączenia i wyłączenia. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości (typ ) opóźnienia załączenia (zmiany sygnału z 0 na 1) w sekundach (DelayOn), wartości (typ ) opóźnienia wyłączenia (zmiany sygnału z 1 na 0) w sekundach (DelayOff). Input 1 0 Output 1 0 DelayOn DelayOff 5.2 DELB - Binary Value Delay Opóźnienie sygnału cyfrowego o jeden cykl wejście, BINARY DELB InitValue BINARY, wyjście Blok opóźnia przejście sygnału cyfrowego o jeden cykl programu. W danym cyklu sygnał wyjściowy jest równy sygnałowi wejściowemui z poprzedniego cyklu. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej (InitValue) sygnału wyjścia (0 lub 1). 5.3 DELI - Integer Value Delay Opóźnienie sygnału analogowego typu INTEGER o jeden cykl wejście, INTEGER DELI InitValue INTEGER, wyjście Blok opóźnia przekazanie sygnału analogowego (w postaci liczby całkowitej) o jeden cykl programu. W danym cyklu sygnał wyjściowy jest równy sygnałowi wejściowemu z poprzedniego cyklu. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej (InitValue) jako liczby całkowitej. 23
5.4 DELR - Real Value Delay Opóźnienie sygnału analogowego typu o jeden cykl wejście, DELR InitValue, wyjście Blok opóźnia przekazanie sygnału analogowego (w postaci liczby rzeczywistej) o jeden cykl programu. W danym cyklu sygnał wyjściowy jest równy sygnałowi wejściowemu z poprzedniego cyklu. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej (InitValue) jako liczby rzeczywistej. 5.5 SHB - Sample and Hold Binary Value Próbkowanie sygnału cyfrowego próbka, BINARY załącz próbkowanie, BINARY d c SHB InitValue BINARY, wyjście Blok próbkuje i kopiuje na wyjście wartość sygnału wejściowego d, gdy załączone jest próbkowanie sygnałem c = 1. Gdy próbkowanie zostanie wyłączone (c = 0) sygnał wyjściowy przyjmuje wartość stałą z chwili wyłączenia próbkowania i pozostaje stały, aż do ponownego uruchomienia próbkowania sygnałem c. próbka (t) załącz próbkowanie (t) wyjście (t+1) 0 0 wyjście (t) 1 0 wyjście (t) 0 1 0 1 1 1 t = cykl aktualny, t+1 = cykl następny Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej (InitValue) sygnału wyjściowego (0/1). 5.6 SHI - Sample and Hold Integer Value Próbkowanie sygnału analogowego typu INTEGER próbka, INTEGER D SHI INTEGER, wyjście 24
załącz próbkowanie, BINARY Blok próbkuje i kopiuje na wyjście wartość sygnału wejściowego D, gdy załączone jest próbkowanie sygnałem c = 1. Gdy próbkowanie zostanie wyłączone (c = 0) sygnał wyjściowy przyjmuje wartość stałą z chwili wyłączenia próbkowania i pozostaje stały, aż do ponownego uruchomienia próbkowania sygnałem c. Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: wartości początkowej (InitValue) sygnału wyjściowego (l.całkowita). D - variable c - control 1 0 Output 6. Regulatory i filtry (Controllers and Filters) 6.1 FILT - First Order Filter Opóźnienie zmian sygnału wejście, FILT Time Const, wyjście Filtr tłumiący zmienność sygnału wejściowego. Blok tłumi zmiany sygnału wejściowego zgodnie ze stałą czasową filtra (TimeConst). Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). Parametryzacja bloku obejmuje podanie: stałej czasowej filtra w sekundach (TimeConst). 6.2 PIDA - PID Controller - Analog Output Regulator PID Blok regulatora PID z wyjściem analogowym Wartość mierzona Wartość zadana MV SP PIDA Control Int Tryb pracy INTEGER Zakres proporcjonalności Mode G UMin Czas całkowania Ti UMax Czas różniczkowania Td StrokeTime DZ TSg 25
Strefa martwa Poprzedni sygnał sterujący Wejścia bloku: MV = Wartość regulowana, pomiar (Measured value). SP = Wartość zadana (Set point). Mode = Tryb pracy regulatora określony jest wartością tego parametru: G Mode = 0 => Wyłącz, regulator jest wyłączony, sygnał wyjściowy stale równa się TSg (ΔU=0) Mode = 1 => Praca, regulator realizuje proces regulacji. Mode = 2 => Wymuszenie maksymalnej wartości sygnału wyjściowego PID (Umax). Mode = 3 => Wymuszenie minimalnej wartości sygnału wyjściowego PID (Umin). = 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 = Czas całkowania I regulatora (Integral time) podany w sekundach. Td = Czas różniczkowania D regulatora (Derivative time) podany w sekundach. DZ = Strefa martwa regulatora (Dead zone). Gdy odchyłka regulacji jest mniejsza od DZ, to sygnał sterujący 0. TSg = 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 (aktualna wartość poprzedniego sygnału regulacyjnego wyjścia z PIDA). Parametry bloku: ControlInt () = okres próbkowania w sekundach. Gdy zmienna wynosi 0, to czas próbkowania jest automatycznie dostosowywany do długości cyklu programu. UMin () = minimalna wartość sygnału sterującego (wyjścia z PIDA). Domyślnie 0%. UMax () = maksymalna wartość sygnału sterującego (wyjścia z PIDA). Domyślnie 100%. StrokeTime () = 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 wyjścia. 26
6.3 RAMP - Ramp Filter RAMP Increment Filtr ograniczający szybkość zmiany sygnału analogowego do prędkości podanej w jednostkach na sekundę. Parametry bloku: Increment = maksymalna szybkość zmiany sygnału podana w jednostkach na sekundę. Sposób działania: Input 100 0 Output 100 7. Bloki zliczające, liczniki (Accumulators) 7.1 ACCUM Accumulator 0 Licznik przyrostu sygnału analogowego. Wykorzystywany do zliczania przyrostu zliczanego sygnału analogowego (rosnącego) o wartość podawaną na wejście i w każdym cyklu programu. Sygnał zliczany, Reset, BINARY i rs ACCUM InitValue Wartość wyjścia dla Reset =1, rv 27
Wejścia bloku: Increment (i) () = wartość sygnału akumulowana w każdym cyklu programu Reset (rs) (BINARY) = Reset input (1 = reset) ResetValue (rv) (RESET) = Wartość jaką przyjmuje sygnał wyjścia po aktywacji resetu. Gdy Reset = 0, to wartość wyjścia przyrasta w każdym cyklu programu. Maksymalna wartość licznika określona jest możliwościami programowanego regulatora. 7.2 INTEG Integrator Całkowanie Ten blok umożliwia całkowanie wartości przepływu w czasie. Wartość na wyjściu obliczana jest jako suma iloczynów wartości na wejściu r i czasu występowania tej wartości. Sygnał zliczany, Reset, BINARY Wartość wyjścia dla Reset =1, Wejścia bloku: Rate (r) () = zmienna wartość wejściowa Reset (rs) (BINARY) = Reset input (1 = reset) ResetValue (rv) (RESET) = wartość jaką przyjmuje sygnał wyjścia po aktywacji resetu W stanie początkowym wyjście przyjmuje wartość początkową (InitValue). Gdy Reset jest aktywny (rs=1), wyjście bloku jest resetowane do wartości podanej na wejściu rv. Kiedy Reset jest nieaktywny (rs=0), całkowanie jest kontynuowane rozpoczynając od ostatniej wartości podanej na wejściu rv. Maksymalna wartość licznika określona jest możliwościami programowanego regulatora. 7.3 RT - Run Time Measurement Licznik czasu pracy Zlicza czas występowania sygnału o wartości 1 na wejściu i. r rs rv INTEG InitValue Wskaźnik stanu pracy, BINARY Reset, BINARY i rs RT Unit INTEGER RunIndication (i) (BINARY)= Wskaźnik stanu pracy (wartość i=1 oznacza pracę) Reset (rs) (BINARY) = Reset input (reset = 1, zeruje stan licznika) Unit (INTEGER) = Wybór jednostki wyjścia (0 = godziny, 1 = minuty, 2 = sekundy). Wartość domyślna = 0 (godziny) Maksymalne wskazanie licznika to 32767. Następnie licznik zatrzymuje się, lecz nie zeruje. 8. Bloki zmiennych systemowych (System Variables) 8.1 DATE Day Numer dnia miesiąca DATE INTEGER Podaje numer aktualnego dnia w aktualnym miesiącu (od 1 do 31) na podstawie wewnętrznego zegara. 28
8.2 HOUR Hour Godzina doby HOUR INTEGER Podaje aktualną godzinę (od 0 do 23) na podstawie wewnętrznego zegara. 8.3 MINUTE Minute Minuta godziny MINUTE INTEGER Podaje aktualną minutę aktualnej godziny (od 0 do 59) na podstawie wewnętrznego zegara. 8.4 MONTH Month Miesiąc roku MONTH INTEGER Podaje numer aktualnego miesiąca roku (od 1 do 12) na podstawie wewnętrznego zegara. 1 = styczeń, 12 = grudzień. 8.5 RST Restart Rozruch instalacji RST BINARY Wyście bloku aktywuje się (DO=1) podczas uruchomienia programu (rozruchu instalacji) po awaryjnym zatrzymaniu (warm start). 8.6 SECOND Second Sekunda minuty INTEGER Podaje aktualną sekundę aktualnej minuty (od 0 do 59) na podstawie wewnętrznego zegara. 8.7 TCYC - Cycle Time Czas trwania cyklu programu Podaje w sekundach czas jednego cyklu programu (Cycle Time określony w specyfikacji programu). 8.8 WDAY - Weekday INTEGER Podaje numer aktualnego dnia tygodnia (od 1 do 7) na podstawie wewnętrznego zegara. 1 = poniedziałek, 7 = niedziela. 29
9. Harmonogramy czasowe i alarmy (Time Schedules and Alarms) 9.1 ALARM Alarm - Alarm BINARY BINARY Blok monitoruje stan cyfrowego sygnały wejściowego. Zmiana wejścia z 0 na 1 powoduje uruchomienie zegara, który po zaprogramowanym czasie uruchamia alarm (Alarm Set). Zmiana z 1 na 0 powoduje uruchomienie zegara, który po zaprogramowanym czasie kasuje alarm (Alarm Reset). Parametry bloku: DelayOn Opóźnienie uruchomienia alarmu (sekundy) DelayOff Opóźnienie kasowania alarmu (sekundy) Priority INTEGER Poziom priorytetu alarmu: 0 = najniższy, 10 = najwyższy priorytet. AlarmText STRING Treść alarmu wyświetlanego na panelu operatora (opcjonalnie) Sposób działania bloku: 9.2 TSCH - Time Schedule Harmonogram czasowy TSCH INTEGER Harmonogram tygodniowy lub roczny. Blok generuje rosnący sygnał wyjściowy dodatni odliczając w sekundach czas pozostały do rozpoczęcia zdefiniowanego w harmonogramie zdarzenia oraz sygnał wyjściowy malejący ujemny odliczając czas pozostały do zakończenia zdarzenia. Week charts Harmonogram tygodniowy programuje się godziny rozpoczęcia i zakończenia zdarzenia oraz dzień tygodnia w którym ma występować. Holiday charts Harmonogram roczny programuje się datę i godzinę rozpoczęcia oraz zakończenia zdarzenia oraz dni tygodnia w których ma występować w ciągu roku. Można zaprogramować kilka harmonogramów. 30
10. Transformation Functions 10.1 CURVE - Curve Function - Wykres regulacyjny (krzywa regulacyjna) (x) CURVE Limit Dimension (y) Blok realizuje zależność sygnału wyjściowego od wejściowo według zadanej zależności liniowej (prostej lub łamanej). Linia opisywana jest współrzędnymi x, y punktów początku załamania końca linii. Między punktami tworzącymi wykres wartości są interpolowane liniowo. Parametry bloku: Limit (BINARY) = wybór między trybem ograniczenia (1) lub ekstrapolacji (0). Dimension () = punkty opisujące kształt krzywej regulacyjnej (Pair list x,y) podane jako współrzędne każdego punktu (x,y). y = f(x). Jedna para współrzędnych w jednym wierszu. Krzywa może zawierać maksymalnie 127 punktów. Wartość współrzędnej x ma być rosnąc w kolejnych punktach krzywej. Parametr ograniczenie (Limit) służy do uruchamiania funkcji ograniczającej sygnał wyjścia (y), gdy sygnał wejścia znajduje się poza zakresem opisanym pierwszym i ostatnim punktem krzywej. Gdy ograniczenie jest wyłączone (Limit = 0) wartość sygnału wyjścia jest w takich sytuacjach ekstrapolowana liniowo. 10.2 31
10.3 CURVE - Curve Function - Wykres regulacyjny (krzywa regulacyjna) T H ENTH Blok oblicza entalpię (kj/kg) z wilgotnego powietrza przy normalnym ciśnieniu atmosferycznym jako funkcję temperatury termometru suchego ( C) i wilgotności względnej (%). Parametry bloku: Temperature (T) Temperatura powietrza termomoetru suchego C Humidity (H) Wilgotność względna powierza (%) 10.4 POLY - Polynomial Function - Funkcja wykładnicza Parametry bloku: POLY Order Blok oblicza funkcję wykładniczą opisaną wzorem: Stopień wielomianu równa się liczbie podanych współczynników minus 1. Maksymalnie można ich podać 255. Order () = lista współczynników a0,...,an. Podane w kolejnych wierszach. 10.5 PRCNT Percentage Procent p( x ) a x n n a x n 1 n 1... a1 x a0 PRCNT Value 0% Value 100% Blok podaje aktualny procent jaki stanowi sygnał wejściowy ze sparametryzowanego zakresu według zależności: Wyjście = 100 (Wejście - Value0%) / (Value100% - Value0%) Sygnał wyjściowy zmienia się w zakresie od 0 do 100. Parametry bloku: Value 0% () = wartość sygnału wejściowego odpowiadająca 0% na wyjściu. Value100% () = wartość sygnału wejściowego odpowiadająca 100% na wyjściu. 10.6 VECTOR - Vectorial Curve Function Parametry bloku: Blok zamienia sygnał wejściowy na wyjściowy według zadanej zależności liniowej z uwzględnieniem górnego i dolnego ograniczenia sygnału wejściowego. Funkcja y = f(x) definiowana jest poprzez podanie dolnego i górnego ograniczenia wartości sygnału wejściowego (x) oraz określonej liczby wartości sygnału wyjściowego (y), które są równomiernie rozkładane w zakresie opisanym limitami (x). Między zadanymi punktami wartość funkcji jest interpolowane liniowo. Xmin () = dolny limit sygnału wejścia (sygnały mniejsze są ignorowane i nie zmieniają wyjścia) Xmax () = górny limit sygnału wejścia (sygnały większe są ignorowane i nie zmieniają wyjścia) Dimension (Y(X)) () = lista wartości funkcji (minimum dwóch, maksymalnie 255) podanych w osobnych wierszach. Przykłady: VECTOR Xmin Xmax Dimension 32
1) Ograniczenie sygnału wejściowego (x) do 10 do 80. Zdefiniowane cztery wartości sygnału wyjściowego (y): 20, 30, 50 i 60. Przedział <10, 80> dzielony jest automatycznie na trzy równe części i tym wartościom przyporządkowywane są zdefiniowane wartości (y). 2) Ograniczenie sygnału wejściowego (x) do 10 do 80. Zdefiniowane dwie wartości sygnału wyjściowego (y): 20 i 60. W przedziale <10, 80> sygnał wyjściowy (y) zmienia się liniowo. 60 50 Output (y) 60 Output (y) 30 20 20 Input (x) 1) X min X max 2) X min X max Input (x) 33
11. Wyrażenia matematyczne (Expressions) XPR, XPI, XPB Wejście 1,, INTEGER, BINARY Wejście n-1,, INTEGER, BINARY Wejście n,, INTEGER, BINARY (XPR), INTEGER (XPI), BINARY (XPB) W blokach Expression można zapisać proste lub złożone wyrażenia arytmetyczne. Zależnie od rodzaju wyrażenia blok ma kilka różnych wejść sygnału. Graficzny symbol bloku zmienia się zależnie od wielkości równania i liczby wejść. Zależnie od rodzaju sygnału wyjściowego rozróżnia się trzy rodzaje bloku Expression (ustawiane podczas parametryzowania bloku): XPB = Binary output = blok równania z wyjściem cyfrowym. Gdy wynik obliczeń = 0, to wyjście = 0. Gdy wynik obliczeń jest różny od zera, to wyjście = 1. XPI = Integer output = blok równania z wyjściem typu INTEGER (liczba całkowita) XPR = Real output = blok równania z wyjściem typu (liczba rzeczywista) Zmienne będące wejściami bloku definiowane są bezpośrednio w wyrażeniu arytmetycznym: wejścia analogowe za pomocą dużych liter (A, B, C,...), wejścia cyfrowe małymi literami (a, b, c,...). W jednym wyrażeniu nie można stosować tych samych liter małych I dużych np. "A" i "a". Blok wymaga podania wartości stosowanych zmiennych jako sygnałów zewnętrznych. Operatory działań matematycznych:! negacja logiczna * mnożenie / dzielenie % moduł liczby + dodawanie - odejmowanie, zmiana znaku << left shift >> right shift < mniejszy niż > większy niż <= mniejszy lub równy >= większy lub równy = równy!= nie równy (inny niż) & ^ logiczne i (AND) logiczne LUB (OR) logiczne LUB (OR) XPR Expression? : IF-THEN-ELSE Zapis "a? b : c" oznacza: "jeżeli a to b w przeciwnym wypadku c". x**y x do potęgi y LN (x) logarytm naturalny LOG (x) logarytm dziesiętny EXP (x) exponent, e do potęgi x COS (x) cosinus x (radiany) SIN (x) sinus x (radiany) TAN (x) tangens x (radiany) ACOS (x) ASIN (x) ATAN (x) SQRT (x) arcus cosus x arcus sinus x arcus tangens x pierwiastek kwadratowy x ABS (x) wartość bezwzględna x INT(x) liczba całkowita z x 34
12. OPERATORS Operatory 12.1 Digital mux - Przełącznik binarny BINARY (wejście 1 ) BINARY (wejście 0 ) Sterowanie 0/1 BINARY wyjście BINARY Blok przełącznie przepuszcza jeden z binarnych sygnałów wejściowych z wejścia oznaczonego 0 lub wejścia oznaczonego 1. Wybór dokonywany jest przez zmianę binarnego sygnału sterującego (0/1). Sygnał sterujący = 1 Sygnał sterujący = 0 wejście 1 wejście 0 wyjście Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). 12.2 Analog mux. - Przełącznik analogowy wejście 1 wejście 0 wyjście (wejście 1 ) (wejście 0 ) anie 0/1 BINARY wyjście Blok przełącznie przepuszcza jeden z analogowych sygnałów wejściowych z wejścia oznaczonego 0 lub wejścia oznaczonego 1. Wybór dokonywany jest przez zmianę binarnego sygnału sterującego (0/1). Sygnał sterujący = 1 Sygnał sterujący = 0 wejście 1 wejście 0 wyjście wejście 1 wejście 0 Edytując właściwości bloku (Edit) nadaje się mu nazwę (Identifier, bez cyfr, spacji, i polskich znaków), jednostki sygnału wejściowego (Unit) oraz opis (Description). wyjście 35
Spis wszystkich bloków dostępnych w TAC Menta Bloki wejścia/wyjścia (I/O Blocks) AI Analog input Wejście analogowe AO Analog output Wyjście analogowe CNT Pulse counter Licznik impulsów DI Digital input Wejście cyfrowe DO Digital output Wyjście cyfrowe DOPU Digital pulse output Wyjście impulsu cyfrowego Źródła sygnału (Signal Sources) NCYC Program cycle counter Licznik cykli programu OSC Oscillator, gives a pulse train Oscylator cyfrowy, generator sygnałów PVB Binary value parameter Binarna wartość stała (BINARY) PVI Integer value parameter Analogowa wartość stała, liczba całkowita (INTEGER) PVR Real value parameter Analogowa wartość stała, liczba rzeczywista () Bloki funkcji logicznych (Logical Functions) AND And function on 2 Binary signals Suma logiczna dwóch sygnałów binarnych NOT Inverts a Binary signal Negacja logiczna sygnału binarnego OR Or function on 2 Binary signals Alternatywa (lub) logiczna dwóch sygnałów binarnych PULSE Monostable pulse generator (signal) Generator impulsów SR Set-reset flip-flop Przełącznik binarny TRIG Trigger, true on input change of state Pojedynczy impuls cyfrowy XOR XOR function on 2 Binary signals Logiczne LUB wykluczające Bloki funkcji nieliniowych (Non-linear Functions) AHYST Analog hysteresis Histereza analogowa HYST Binary hysteresis (relay function) Histereza z wyjściem cyfrowym LIMIT Max/min limit Ogranicznik wartości maks. lub minimalnej sygnału MAX Maximum value of 2 signals Wybór większego z 2 sygnałów analogowych MIN Minimum value of 2 signals Wybór mniejszego z 2 sygnałów analogowych Bloki opóźnijące (Delay Blocks) DELAY Delay on or delay off Opóźnienie załączenia/wyłączenia DELB Binary value delay in 1 cycle Opóźnienie sygnału cyfrowego o jeden cykl DELI Integer value delay 1 cycle Opóźnienie sygnału analogowego (Integer) o 1 cykl DELR Real value delay in 1 cycle Opóźnienie sygnału analogowego (Real) o 1 cykl SHB Sample and hold Binary value Próbkowanie sygnału cyfrowego SHI Sample and hold Integer value Próbkowanie sygnału analogowego typu Integer SHR Sample and hold Real value Próbkowanie sygnału analogowego typu Real Regulatory I filtry (Controllers and Filters) FILT First order filter Opóźnienie zmian sygnału OPT Start/stop time optimizing Optymalizacja czasu włączenia/wyłączenia PIDA PID-controller (Analog output) Regulator PID z wyjściem analogowym PIDI PID-controller (increase/decrease output) Regulator PID (narastający AO) RAMP Ramp filter (rate limit) Ogranicznik szybkości zmian sygnału analogowego SEQ Sequencer Przełącznik urządzeń pracujących w kaskadzie 36