1 W dokumencie mFAQ.10.1.WinCC V7 Alarmowanie z PLC S7

Transkrypt

1 W dokumencie mFAQ.10.1.WinCC V7 Alarmowanie z PLC S7
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
W dokumencie mFAQ.10.1.WinCC V7 Alarmowanie z PLC S7 została przedstawiona
m.in. konfiguracja alarmów systemowych generowanych po stronie sterownika a nie
wizualizacji, czyli tzw. alarmy telegramowe. W klasycznych sterownikach (S7-300/400 lub
ET200) znajdziemy wiele funkcji, które pozwolą nam wykonać taką funkcjonalność. Wybierać
możemy pomiędzy funkcjami (np. Alarm_S/SQ, Alarm_D/DQ, Alarm_8, etc.) generującymi
komunikaty z potwierdzeniem lub bez potwierdzenia, zawierające zmienne powiązane lub,
posiadające odpowiednią ilość sygnałów wejściowych, itd.
Podobna funkcjonalność dostępna jest dla nowej rodziny sterowników S7-1500.
Konfiguracja wykonywana jest w tym przypadku z narzędzia inżynierskiego Step 7
Professional V12 lub wyższej. Sprawa jest tutaj znacznie uproszczona, gdyż mamy do
dyspozycji tylko jedną uniwersalną funkcję (Program_alarm), która we współpracy z
oprogramowaniem deweloperskim pozwoli nam stworzyć w swobodny sposób system
alarmowania chronologicznego.
Podstawowym pytaniem, które nasuwa się przed rozpoczęciem wdrażania takiej
konfiguracji jest: po co robić to w taki sposób skoro można skonfigurować w bardzo łatwy
sposób alarmy od strony systemu wizualizacji WinCC Professional lub panelu
operatorskiego? Po co obciążać program sterownika, zastanawiać się nad parametryzacją
funkcji i zajmować pamięć urządzenia wywoływaniem wielokrotnie funkcji alarmującej?
Otóż pomijając powyższe niedogodności (które w przypadku sterowników S7-1500 nie są
już praktycznie istotne – ze względu na prostotę konfiguracji, szybkość pracy PLC oraz
rozmiar pamięci każdej z jednostek) znajdziemy w rozwiązaniu alarmowania programowego
szereg zalet, które z pewnością okażą się bardziej istotne. Poniżej kilka z nich:

Odciążenie łącza komunikacyjnego – w przypadku standardowej konfiguracji
komunikatów w module alarmowania WinCC - system cyklicznie (standardowo z
cyklem 1s) sprawdza status zmiennych odpowiedzialnych za generowanie
alarmów, czyli ramka komunikacyjna raz na sekundę wymieniana jest ze
sterownikiem. W przypadku dużej ilości alarmów komunikacja z PLC może zostać
spowolniona. Przy wykorzystaniu funkcji alarmującej w PLC – telegram z
komunikatem alarmu zostaje wysłany do WinCC tylko w przypadku wystąpienia
alarmu – nie występuje cykliczne sprawdzanie statusu zmiennych alarmowych w
systemie SCADA.

Bardzo precyzyjny stempel czasowy komunikatu (stąd nazwa „alarm
chronologiczne”) – jak wspomniano powyżej cykl skanowania zmiennych
wywołujących komunikaty alarmowe w WinCC wynosi 1 sekundę. Cykl ten można
co prawda zmienić na niższy (do 250ms) edytując rejestry systemu Windows ale
zabieg ten nie jest zalecany. W przypadku wykorzystania funkcji systemowych w
sterowniku, każdy z alarmów otrzymuje znacznik czasowy z dokładnością zgodną
z cyklem pracy programu w sterowniku, czyli do setnej części sekundy.
Dokładność taka w wielu przypadkach jest nie jedynie zaletą, ale również
wymogiem.

Oszczędność zmiennych wymienianych z PLC – zmienne odpowiedzialne za
generowanie komunikatów alarmowych deklarowane są jedynie w sterowniku, co
pozwala zaoszczędzić ilość zmiennych licencjonowanych w WinCC.

Bufor komunikatów w sterowniku – wszelkie komunikaty alarmowe zapisywane są
w wewnętrznym buforze sterownika PLC, co daje możliwość utrzymania ciągłości
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
1
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
archiwum alarmów. W przypadku odłączenia lub awarii komputera
wizualizacyjnego alarmy, których przyczyna pojawiła się oraz zniknęła podczas
trwania przerwy w komunikacji PLC z komputerem zostaną przepisane z bufora
sterownika automatycznie po przywróceniu komunikacji.

Centralna konfiguracja – alarmy konfigurowane są jednokrotnie tylko w
sterowniku, a wysyłane mogą być do wielu urządzeń HMI (panele operatorskie,
stacje wizualizacyjne, systemy SCADA). Konfiguracja systemu alarmów dla
całego systemu odbywa się więc tylko jednokrotnie.

Potwierdzanie globalne – komunikat potwierdzony w urządzeniu HMI może
zostać potwierdzony w sterowniku, co wygeneruje automatyczne potwierdzenie
na pozostałych urządzeniach HMI.
Konfiguracja
Informacje na temat konfiguracji funkcji systemowej przewidzianej do definicji
komunikatów chronologicznych można odszukać w plikach pomocy pod hasłem
„Program_Alarm: Generate program alarm with associated values”. Kilka ciekawych
informacji (związanych również z migracją alarmów tego typu z wersji klasycznej) znajdziemy
również w poniższej lokalizacji sieciowej:
http://support.automation.siemens.com/WW/view/en/69817564
Poniżej w kilku krokach przedstawimy jak wykonać podstawową konfigurację
komunikatu alarmowego generowanego w sterowniku serii S7-1500 (do WinCC
Professional) przy pomocy funkcji systemowej Program_Alarm.
1. Pierwszym krokiem jest utworzenie bloku funkcyjnego FB w sterowniku, gdyż funkcja
Program_Alarm może być wywołana tylko i wyłącznie wewnątrz właśnie takiego
elementu. Dla przykładu nazwijmy sobie ten blok „ALARMY”.
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
2
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
2. Wewnątrz utworzonego bloku funkcyjnego należy teraz wywołać funkcję alarmującą
Program_Alarm znajdującą się w grupie Extended Instructions -> Alarmming zgodnie
z poniższym zrzutem ekranu.
Ponadto, jako interfejs bloku funkcyjnego definiujemy sygnały wejściowe:


Trigger – wyzwalacz alarmu podpięty do sygnały SIG; zmienna binarna, która
wywoła komunikat przy zmianie wartości 0 -> 1 (zbocze narastające),
AV_1, AV_2 – zmienne powiązane (maks. 10); parametry procesowe, których
wartości zostaną odczytane w momencie wystąpienia komunikatu
alarmowego; będą one mogły zostać umieszczone w tekście naszego
komunikatu alarmowego; w przykładzie parametry te zdefiniowane zostały
jako zmienne typu Real.
Oraz wyjściowe (opcjonalnie) sygnały statusowe:


Error – informacja binarna o błędzie (1 = błąd),
Status – kod błędu, jeśli takowy wystąpi (szczegółowy opis kodów błędów
znajduje się w plikach pomocy środowiska TIA Portal).
Funkcja Program_Alarm posiada jeszcze jeden parametr, a mianowice TIMESTAMP
czyli stempel czasowy. Możemy tutaj podać dowolną wartość, która zostanie
dopisana do alarmu jako data/czas jego wystąpienia lub pozostawić ten parametr
pusty – wtedy system przypisze aktualny stempel czasowy z chwili zmiany sygnału
SIG (0 -> 1). Znacznik czasowy zostanie wysłany w formie telegramu razem z
pozostałymi informacjami komunikatu alarmowego.
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
3
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
3. Kolejny krok konfiguracyjny to wywołanie naszego bloku funkcyjnego w programie
serownika (np. w bloku OB1) oraz podpięcie odpowiednich sygnałów.
W naszym przykładzie wyzwalaczem komunikatu będzie zmienna Tag_1 o adresie
M0.0, natomiast wartości zmiennych powiązanych statycznie przyjmą wartości
wpisane ręcznie. Mogą one oczywiście pochodzić ze zmiennych procesowych. Na
wyjście funkcji zostały również przypięte sygnały informujące o błędzie oraz jego
kodzie (Tag_2, Tag_3).
4. Po wywołaniu bloku funkcyjnego w programie oraz automatycznej generacji
instancyjnego bloku danych możemy przejść do konfiguracji tekstu komunikatu. W
tym celu przechodzimy w zakładkę PLC alarms znajdującą się w drzewie projektu
naszego sterownika.
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
4
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
Konfigurator zawiera już instancję alarmu, która została wygenerowane przez nasz
blok funkcyjny. W polu Alarm text pozostaje więc wprowadzić treść komunikatu alarmowego.
W naszym przykładzie jest to:
Alarm 1, wartość zmiennej powiązanej 1: @1%3.2f@,
wartość zmiennej powiązanej 2: @1%3.2f@
Poza opisem tekstowym, który przypisany został do komunikatu – w jego treści można
zawrzeć również wartości zmiennych powiązanych z alarmem, mających znaczenie dla
operatora. Zmienna powiązana przypisana jest do funkcji jak parametr AV_1 oraz AV_2
(punkt 2).
Aby dowiązać wartość tej zmiennej do komunikatu – w tekście wiadomości musimy
wprowadzić odpowiednią formułę. Wartości powiązane wprowadzamy rozpoczynając oraz
kończąc znakiem @ zgodnie z poniższym wzorem:
@[Pwn][Typ]%width[.precision]Format@
Gdzie:
Symbol
@
Pwn
Typ
%width
.precision
Format
@
Typ
"b" lub "B"
"y" lub "Y"
"c" lub "C"
"w" lub "W"
"i" lub "I"
"x" lub "X"
"d" lub "D"
"r" lub "R"
Znaczenie
Początek deklaracji
Numer zmiennej powiązanej procesowej (opcjonalnie)
Typ zmiennej procesowe (opcjonalnie)
Szerokość pola w HMI zarezerwowana na zmienną
Dokładność zmiennoprzecinkowa (opcja dla formatu "f")
Format wyświetlania zmiennej procesowej
Koniec deklaracji
Znaczenie
BOOL
BYTE
CHARACTER
WORD
INTEGER
DWORD
DINT
REAL
Format
"d"
"u"
"X"
"f"
"b"
"s"
Wartości
Domyślnie
1-6
Patrz poniżej
1
I
Patrz poniżej
Wyświetlanie
Dziesiętne ze znakiem
Dziesiętne bez znaku
Szesnastkowe
Zmiennoprzecinkowe ze znakiem
Binarne
String
Zgodnie z powyższymi informacjami zmienne powiązane zostały dołączone do
naszego komunikatu alarmowego. Należy pamiętać, aby typ danych zadeklarowany w
znaczniku zmiennej powiązanej był zgodny z typem danych wskazanym w parametrze
funkcji Program_Alarm – w naszym przypadku f dla wartości zmiennoprzecinkowej.
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
5
s
FAQ: 00000064/PL
WinCC Professional – Alarmowanie programowe z PLC S7-1500
Data: 02/06/2014
5. Po kompilacji projektu sterownika oraz wizualizacji w zakładce HMI alarms (projekt
WinCC) wśród systemowych komunikatów alarmowych sterownika powinien znaleźć
się nasz wzór alarmu zgodnie z poniższym zrzutem ekranu:
6. Aby dostosować format wyświetlania czasu w celu zwiększenia dokładności z rzędu
sekund na milisekundy przechodzimy jeszcze w zakładkę projektu wizualizacji HMI
alarms -> Alarm text blocks -> System blocks. W polu Format bloku Time ustawiamy
interesujący nas format stempla czasowego
.
7. Krokiem finalnym konfiguracji jest umieszczenie na ekranie procesowym urządzenia
HMI kontrolki alarmów. Nie wymaga ona żadnej dodatkowej konfiguracji poza
interesującymi nas blokami informacyjnymi. Tekst komunikatu wysłanego z PLC
zostanie umieszczony w bloku domyślnym Alarm text. W momencie zmiany wartości
bitu wyzwalającego (w naszym przykładzie M0.0) z 0 na wartość 1 powinniśmy
zaobserwować w kontrolce następujący efekt w formie komunikatu alarmowego:
Przykład przygotowany został w oparciu i TIA Portal V12 SP1 UPD2.
www.siemens.pl/simatic
Doradztwo techniczne: [email protected]
6