IDENTYFIKACJA BŁĘDÓW FUNKCJONALNYCH
W poprzedniej części kursu dokonano podziału błędów na dwie podstawowe kategorie, w zależności od miejsca gdzie się pojawiają. Pierwsze to błędy systemowe, identyfikowane przez system operacyjny PLC, zwykle związane z błędami CPU oraz modułów peryferyjnych, m.in. błędy komunikacji, zasilania, uszkodzenie sterownika. Diagnostyka błędów systemowych z wykorzystaniem STEP 7 została opisany w poprzednim artykule z tej serii.
Rys. 1. Okno aplikacji Monitor/Modify Variables - tablica VAT
|
Rys. 2. Pasek narzędziowy aplikacji Monitor/Modify Variables
|
Znacznie poważniejszy problem pojawia się, gdy CPU przetwarza program sterowania, ale skonfigurowana funkcja systemu nie jest w całości przetwarzana lub jest przetwarzana błędnie. Użytkownik potrafi stwierdzić, że występuje błąd, ale CPU wciąż jest w trybie RUN. Występują wtedy błędy funkcjonalne, znacznie trudniejsze do zidentyfikowania niż błędy systemowe.
Istnieją dwie podstawowe grupy błędów funkcjonalnych: błędy procesowe - identyfikowane jako złe funkcjonowanie różnych elementów systemu sterowania m.in. okablowanie czujnika/elementu wykonawczego, uszkodzenie czujnika/elementu wykonawczego oraz błędy logiczne programu - błędy programowe, które nie zostały zidentyfikowane podczas pisania oraz uruchomienia programu, np. dwukrotne wysterowanie wyjścia w programie, złe adresowanie wejść/wyjść, itp.
W artykule zostaną opisane podstawowe procedury diagnozowania sterownika
Rys. 3. Okno Trigger oraz możliwe punkty sprawdzenia zmiennych
Rys. 4. Modyfikacja lub wymuszenie wyjść w trybie Stop
|
Dotyczy to wszystkich zmiennych z pamięci sterownika i adresów z wyjątkiem zmiennych lokalnych przypisanych do bloku programowego. Funkcja ta może być wykorzystywana do następujących procedur testowych: test okablowania wejść, symulowanie stanu wejść, znalezienie różnic pomiędzy błędami sprzętowymi/programowymi.
Sposób pracy z aplikacją Monitor/Modify Variables może być następujący:
- utworzenie nowej lub otworzenie istniejącej tablicy zmiennych VAT (VAriable Table),
- edycja lub sprawdzenie zawartości tablicy VAT,
- utanowienie połączenia online pomiędzy daną tablicą VAT a określonym CPU,
- określenie punktu czasowego odczytania zmiennej i częstotliwości odczytu,
- włączenie lub wyłączenie funkcji monitorowania/modyfikacji zmiennych,
- zapisanie tabeli VAT.
Rys. 5. Forsowanie wartości zmiennych
|
Rys. 6. Ustawianie punktów zatrzymania w edytorze LAD/FBD/STL
|
Zmienne, których wartości są sprawdzane lub modyfikowane, należy wprowadzić do tablicy zmiennych VAT. Sposób wyświetlania zmiennych w tablicy definiuje się, korzystając z opcji View. W tablicy możemy wyświetlić następujące kolumny:
- Address - absolutny adres zmiennej,
- Symbol - symboliczna nazwa zmiennej,
- Symbol comment - komentarz do wyświetlanej zmiennej, pobierany z tablicy symboli i wyświetlany bez możliwości modyfikacji,
- Display format - format w jakim ma być wyświetlana dana (np. binarny, dziesiętny),
- Status value - aktualna wartość zmiennej w wybranym formacie,
- Modify value - wartość, jaką wpisujemy do zmiennej.
Każdą zmienną możemy wprowadzać poprzez podawanie adresu absolutnego lub symbolicznego (jeżeli został wcześniej wprowadzony). W przypadku sprawdzania okablowania wejść/wyjść (bez względu na warunki wysterowania w programie) można także monitorować i wymuszać adresy na poziomie narzędzia HWConfig. Punkt czasowy odczytania zmiennej definiuje się za pomocą funkcji Variable -> Set Trigger... lub poprzez wciśnięcie odpowiedniej ikony na pasku narzędziowym aplikacji Monitor/Modify Variables (rys. 2).
Otwiera się wtedy okno Trigger (rys. 3), w którym definiujemy się punkty czasowe monitorowania i modyfikacji zmiennych. W polach Trigger Point for Monitoring/Trigger Point for Modifying definiowane są punkty uaktualniania wartości monitorowanych/modyfikowanych zmiennych (rys. 3). W polach Trigger Condition for Monitoring/Trigger Condition for Modyfying definiuje się, czy wartość wyświetlanej/ modyfikowanej zmiennej będzie sprawdzana tylko raz, czy też w każdym cyklu programowym.
Tablica VAT jest zapisywana w katalogu "Blocks" w programie S7 i może być w każdym momencie powtórnie wykorzystana poprzez podwójnie wybranie jej klawiszem myszy. Jednak przed uaktywnieniem funkcji Monitor i Modify musi być ustalone połączenie online z CPU.
Ustanowienie połączenia może być wykonanie poprzez wybranie następujących opcji z menu PLC -> Connect to i wybranie odpowiedniej opcji: Configured CPU - automatycznie ustalane połączenie ze stacją MPI, której konfiguracja została zdefiniowana w projekcie i tablica VAT jest zapisana w programie tej stacji; Direct CPU - połączenie jest ustalane z CPU bezpośrednio podłączonym z programatorem poprzez kabel PG-MPI; Accessible CPU - wyświetlane okno dialogowe z listą programów, po wybraniu programu połączenie z CPU jest ustalane na podstawie konfiguracji sprzętowej w programie.
MODYFIKACJA WYJŚĆ W TRYBIE STOP
Modyfikację wyjść umożliwia funkcja Enable Peripheral Outputs, która może być aktywowana tylko w przypadku, kiedy jednostka centralna jest w trybie STOP. Pozwala ona na test okablowania wyjść peryferyjnych. Funkcja ta może być również wykorzystana do sterowania urządzeniami w przypadku wystąpienia błędów.
Rys. 7. Blok typu LAD otworzony za pomocą aplikacji Monitor Block
|
Rys. 8. Wybór trybu testowania CPU z poziomu edytora LAD/STL/FBD
|
Sposób modyfikacji wyjść w trybie STOP jest następujący (rys.4):
- otworzyć tablicę zmiennych (VAT) zawierającą listę wyjść peryferyjnych, które muszą być przetestowane lub modyfikowane (modyfikować można poprzez adresowanie typu bajt, słowo lub podwójne słowo - nie można modyfikować pojedynczych bitów wyjściowych!),
- ustanowić połączenie z CPU, wybierając opcje PLC -> Connect to, przełączyć CPU w tryb STOP,
- wprowadzić wartość dla odpowiednich adresów w kolumnie Modify Value,
- uaktywnić modyfikację wyjść, wybierając opcje Variable -> Enable Peripheral Outputs,
- wymusić wartość na wyjściach wybierając opcje Variable -> Activate Modify Values, uaktualnić nowo wpisaną wartość, wybierając Variable -> Activate Modify Values.
Modyfikacja lub wymuszanie wyjść peryferyjnych jest aktywne do momentu dezaktywacji poprzez Variable -> Enable Peripheral Outputs lub wciśnięcie przycisku ESC. Przy zmianie trybu pracy CPU ze STOP na RUN lub STARTUP funkcja jest dezaktywowana z wyświetleniem meldunku.