Konfiguracja i obsługa alarmów w sterownikach PLC
Kurs programowania PLC od podstaw
Odc. 14
Kontakt w sprawie artykułu: Kamil Zajdel - 2020-03-03
Z tego artykułu dowiesz się:
- Jak działają alarmy w sterownikach PLC?
- Jakie rodzaje alarmów wyróżniamy w sterownikach PLC?
- Jak wykorzystać obiekt alarmów w tworzonej aplikacji?
W poprzednim artykule dowiedziałeś/aś jak konfigurować oraz jak korzystać z obiektu menu. W tym odcinku nauczysz się, w jaki sposób konfigurować alarmy bieżące i historyczne w sterownikach PLC Horner.
Kurs programowania PLC od podstaw dla automatyków i elektryków
Podstawy programowania sterowników PLC
Programowanie sterownika PLC w języku drabinkowym
Programowanie zintegrowanego panelu HMI
Komunikacja sterowników PLC w sieci szeregowej i Ethernet
Zaawansowane funkcje sterownika PLC
Alarm Object to jeden z podstawowych obiektów wykorzystywanych w aplikacjach sterujących. Pokazuje on przekroczenie wartości wybranych rejestrów. Przy pomocy tego obiektu możesz gromadzić historię alarmów i zarządzać nimi z jednego miejsca.
System obsługi alarmów składa się z:
- menadżera alarmów, który działa w tle i monitoruje na bieżąco stany skonfigurowanych punktów alarmowych. Konfiguracja punktów alarmowych obejmuje podanie rejestru alarmowego, treści jaka ma być zwracana przy wystąpieniu alarmu, grupy do której należy alarm i schematu kolorów, jakie będą miały wpisy w oknie alarmów w zależności od bieżącego stanu punktu alarmowego;
- graficznego obiektu alarmów, który informuje operatora o zaistniałych alarmach i pozwala nimi zarządzać z jednego miejsca. Konfiguracja obiektu obejmuje podanie typu, grup wyświetlanych alarmów oraz formatu daty i godziny.
W sterownikach PLC Horner w Alarm Object możesz obsługiwać dwa typy alarmów:
- alarmy bieżące – okno przechowuje informacje dotyczące bieżących stanów skonfigurowanych punktów alarmowych i pozwala na potwierdzanie oraz kasowanie alarmów;
- alarmy historyczne – w oknie zbierane są wszystkie informacje o pojawiających się alarmach i akcjach podjętych przez operatora.
Skonfigurowany punkt alarmowy może mieć jeden z następujących stanów:
- ALM – punkt alarmowy aktywny, czekający na potwierdzenie operatora,
- ACK – punkt alarmowy potwierdzony przez operatora,
- RTN – punkt alarmowy nie potwierdzony przez operatora, ale stan monitorowanego, parametru wrócił do prawidłowego poziomu,
- CLR – punkt alarmowy skasowany przez operatora bez potwierdzenia.
Zasada działania alarmów w sterownikach Horner APG
Jeśli zostanie przekroczona konkretna wartość rejestru, monitorowana przy pomocy bloków funkcyjnych porównania, załącza się konkretny bit alarmowy.
Stan bitu alarmowego jest na bieżąco monitorowany przez menadżera alarmów i w chwili, gdy jego stan zmieni się z niskiego na wysoki, pojawi się informacja w oknie alarmów bieżących, wraz z datą i godziną jego wystąpienia. Ustawi się też stan alarmu na ALM.
Operator ma możliwość:
- potwierdzić alarm – jeśli alarm zostanie potwierdzony, jego stan zmienia się na ACK i będzie dostępny w oknie alarmów bieżących, dopóki nie ustąpi stan alarmowy. Informacja o potwierdzeniu alarmu pojawi się w oknie alarmów historycznych.
- usunąć alarm – jeśli alarm zostanie usunięty, wpis zostanie skasowany z okna alarmów bieżących. Informacja o usunięciu alarmu pojawi się w oknie alarmów historycznych.
- nic nie robić – jeśli alarm nie zostanie potwierdzony, a ustąpi stan alarmowy, w oknie alarmów bieżących alarm będzie miał stan RTN. Informacja o ustąpieniu alarmu pojawi się w oknie alarmów historycznych.
Programowanie w akcji!
Program sterujący oraz aplikację wizualizacyjną możesz teraz rozbudować o obsługę alarmów. W przykładowym ćwiczeniu, skonfigurujesz 6 punktów alarmowych, informujących o przekroczeniu stanów minimalnych i maksymalnych w zbiornikach oraz dodasz symbole graficzne przy zbiornikach, które poinformują operatora o wystąpieniu alarmu.
Alarmami będziesz mógł/mogła zarządzać z jednego ekranu, na którym oprócz alarmów bieżących pojawią się także alarmy historyczne. Dodatkowo skonfigurujesz składowanie alarmów na karcie pamięci MicroSD zainstalowanej w sterowniku.
Rozbudowa programu sterującego
Konfigurację alarmów rozpocznij od rozbudowy aplikacji o nowy podprogram, który będzie odpowiedzialny za monitorowanie poziomów cieczy w zbiorniku oraz za aktywację alarmów. Każdy zbiornik będzie posiadał dwa punkty alarmowe: osiągnięcie poziomu minimum oraz osiągnięcie poziomu maksimum. W chwili, gdy poziom zbiornika osiągnie stan alarmowy, odpowiedni punkt alarmowy przejdzie w stan wysoki.
Utwórz nowy podprogram wybierając z menu kontekstowego New Enhanced Ladder Logic Subroutine. Nazwij go Alarmy.
Utwórz szczebel odpowiedzialny za monitorowanie stanu maksimum. Pierwszym elementem szczebla będzie styk z podłączoną do niego zmienną Always ON. Drugi element to blok porównywania wartości typu większy lub równy (Greater Than or Equal). Na wejście IN 1 podłącz zmienną Zbiornik 1, a do wejścia IN 2 stałą 45.
Na końcu szczebla utwórz cewkę i podłącz do niej zmienną adresie %R30.1. Zmienną %R30.1 nazwij ZB1_ALM_HI. Zgodnie z logiką działania bloku, zmienna przypisana do cewki zostanie ustawiona w stan wysoki, jeśli wartość zmiennej Zbiornik 1 będzie większa lub równa 45.
Analogicznie utwórz szczebel odpowiedzialny za monitorowanie stanu minimum. Do tego celu wykorzystaj blok mniejszy lub równy. Do cewki podłącz zmienną o adresie %R30.2 i nazwij ją ZB1_ALM_LO.
Zmienne ZB1_ALM_HI i ZB1_ALM_LO wykorzystasz dodatkowo do odpowiedniego ustawienia słowa kontrolnego, które będzie potrzebne do wyświetlania obiektów graficznych informujących o wystąpieniu stanu alarmowego. W tym celu utwórz kolejny szczebel z rozgałęzieniem. Pod styki podłącz zmienne ZB1_ALM_HI i ZB1_ALM_LO, a do kolejnych cewek zmienne o adresach %R42.1 i %R42.2.
W analogiczny sposób utwórz szczeble odpowiedzialne za monitorowanie stanów maksimum i minimum dla zbiornika 2 i 3. W tym celu zaznacz i skopiuj fragment kodu przygotowany dla zbiornika 1 i wklej go dwa razy poniżej.
Dla zbiornika 2 zmień zmienne na Zbiornik 2 oraz dla punktów alarmowych dodaj zmienne ZB2_ALM_HI o adresie %R30.3 oraz ZB2_ALM_LO o adresie %R30.4. W szczeblu odpowiedzialnym za modyfikację słowa sterującego podłącz zmienne %R43.1 i %R43.2
Dla zbiornika 3 zmień zmienne na Zbiornik 3 oraz dla punktów alarmowych dodaj zmienne ZB3_ALM_HI o adresie %R30.5 oraz ZB3_ALM_LO o adresie %R30.6. W szczeblu odpowiedzialnym za modyfikację słowa sterującego podłącz zmienne %R44.1 i %R44.2.
Modyfikację programu logicznego zakończ na umieszczeniu w programie Main szczebla wywołującego podprogram Alarmy. Do styku podłącz zmienną o nazwie Alarmy, a w instrukcji Call z rozwijalnej listy wybierz podprogram Alarmy.
Rozbudowa ekranów operatorskich
Czas na konfigurację alarmów. Aby uruchomić menadżera alarmów, z menu Config wybierz Alarm.
Konfigurację rozpocznij od pola Number of Alarms – wprowadź liczbę 6. Tyle alarmów będzie obsługiwał menadżer. W polu Address podaj rejestr alarmowy %R30, w którym na poszczególnych bitach będą przechowywane informacje na temat zaistniałych alarmów.
Sekcja Remote Acknowledgement and Clear pozwala podać zmienne, przy pomocy których można w sposób zdalny potwierdzać i kasować alarmy – tę sekcję pozostaw bez konfiguracji.
Sekcja Alarm Point Configuration pozwala skonfigurować treści oraz grupy, do których będą należały alarmy. Wartość w kolumnie Number wskazuje bit rejestru alarmowego. Przejście bitu w stan wysoki spowoduje wyświetlenie odpowiedniego komunikatu w oknie alarmu. Treść alarmu skonfigurujesz w oknie Identifier String, a grupę do której będzie należał alarm w oknie Group.
Grupowanie alarmów ma na celu poprawienie czytelności aplikacji. W oknach alarmowych możesz skonfigurować, które grupy alarmowe będę w nich wyświetlane. W tej aplikacji przyjmij, że alarmy stanu wysokiego będą należały do grupy 1 natomiast alarmy stanu niskiego do grup 2.
Skonfiguruj alarmy zgodnie z poniższą listą:
- Bit 1 – grupa 1, treść: Zbiornik 1 – wysoki poziom zbiornika
- Bit 2 – grupa 2, treść: Zbiornik 1 – niski poziom zbiornika
- Bit 3 – grupa 1, treść: Zbiornik 2 – wysoki poziom zbiornika
- Bit 4 – grupa 2, treść: Zbiornik 2 – niski poziom zbiornika
- Bit 5 – grupa 1, treść: Zbiornik 3 – wysoki poziom zbiornika
- Bit 6 – grupa 2, treść: Zbiornik 3 – niski poziom zbiornika
Dodatkowo skonfiguruj składowanie alarmów na karcie MicroSD zainstalowanej w sterowniku.
W tym celu w oknie Alarm Logging to Removable Media:
- zaznacz pole Enable log to Removable Media
- skonfiguruj częstotliwość składowania danych jako dzienną – wybierz DAILY
- w polu Alarm Log Path podaj nazwę katalogu, w którym będą przechowywane pliki z alarmami – wpisz Alarmy
- ustaw format daty – MM/DD/YYYY
- ustaw format czasu – HH:mm
- jako rejestr statusowy podajemy rejestr %R300
Po zakończeniu konfiguracji w menadżerze alarmów, utwórz nowy ekran operatorski. Na górze dodaj nazwę okna oraz wstaw dwa obiekty Alarm.
Pierwszy obiekt skonfiguruj jako alarmy bieżące (Summary) i ustaw następujące parametry:
- zaznacz opcję Allow Operator to Clear – pozwoli to na usuwanie alarmów przez operatora,
- w sekcji Alarm Groups to Display wybierz grupę 1 i 2 – pozwoli to na wyświetlanie tylko alarmów pochodzących z tych grup,
Sposób wyświetlania alarmów w obiekcie konfigurujemy według własnego uznania podając:
- czcionkę,
- format daty,
- format czasu,
- stan.
Analogicznie konfigurujemy drugi obiekt, zmieniając typ alarmów na historyczne (History).
Dodaj na ekran obiekt Screen jump i skonfiguruj jego tryb pracy jako Simulate ESC.
Ekran z alarmami będzie wywoływany z Ekranu 2 – dodaj zatem obiekt Screen jump na ekranie 2, wskaż ekran docelowy i włącz opcję Allow ESC to return.
Ekrany, na których znajdują się zbiorniki, uzupełnij o obiekty graficzne pokazujące wystąpienie stanu alarmowego. Jeśli wystąpił alarm sygnalizujący wysoki lub niski poziom w zbiorniku,wokół zbiornika pojawi się czerwona ramka.
W tym celu na ekran dodaj obiekt prostokąta.
Dwukrotnie klikając w narysowaną ramkę, przejdź do jej konfiguracji. Ustaw odpowiednią grubość linii oraz kolor (na czerwony), a wypełnienie kształtu pozostaw puste.
W oknie Attributes wskaż rejestr kontrolny dla zbiornika 1 (%R42) i zaznacz Bit 1 odpowiedzialny za widoczność ramki oraz Bit 2 odpowiedzialny ze jej pulsowanie.
W analogiczny sposób przygotuj ramki alarmowe dla zbiornika 2 i zbiornika 3, pamiętając o podpięciu odpowiednich rejestrów kontrolnych: %R43 dla zbiornika 2 i %R44 dla zbiornika 3. Odpowiednie ramki umieść na właściwych ekranach.
Przygotowany program wgraj do sterownika i wprowadź sterownik w tryb Run. Przetestuj działanie obiektu alarmów, napełniając i opróżniając zbiorniki. Sprawdź, jak działa funkcja potwierdzania i kasowania alarmów oraz jakie informacje składowane są w oknie alarmów historycznych.
W kolejnym artykule dowiesz się, w jaki sposób skonfigurować obiekt trendów.
W kolejnym artykule z cyklu Kurs programowania PLC od podstaw: Jak konfigurować obiekt trendów?
- Co to jest obiekt Trend
- Jakie typy trendów występują w sterowniku PLC
- Jak w praktyce wykorzystać obiekt Trend w aplikacji