Diagnostyka sterownika S7-300. Część 2 - wykrywanie błędów funkcjonalnych.

| Technika

W procesie produkcyjnym zdarza się, że zaprojektowana aplikacja zaczyna źle działać. Do zadań inżyniera utrzymania ruchu należy szybka reakcja na zaistniałą sytuację oraz znalezienie i próba wyeliminowania błędów. W artykule przedstawione zostały podstawowe funkcje sterowników PLC Simatic firmy Siemens, które pozwalają na przeprowadzenie testów diagnostycznych i wykrywanie błędów występujących wtedy, gdy sterownik wciąż pracuje, ale zapisana na nim aplikacja działa nieprawidłowo. Dobra znajomość omawianych funkcji pozwala na szybką reakcję obsługi, próbę poprawy działania aplikacji oraz skrócenie czasu przestoju, co pozwala na zmniejszenie strat i poniesionych kosztów związanych z zaistniałymi błędami.

Diagnostyka sterownika S7-300. Część 2 - wykrywanie błędów funkcjonalnych.

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 PLC np. S7-300 z wykorzystaniem środowiska STEP 7, w którym zaimplementowano mechanizmy pozwalające na szybkie wykrycie błędów funkcjonalnych. Pozwala to na usystematyzowanie testów diagnostycznych działającej aplikacji.

MONITOROWANIE I MODYFIKOWANIE ZMIENNYCH - TABLICA VAT

Do przeprowadzenia testów diagnostycznych często przydatna jest aplikacja Monitor/Modify Variables, uruchamiana z poziomu Simatic Managera lub z edytora LAD/STL/ FBD po wybraniu opcji PLC -> Monitor/ Modify Variables (rys. 1). Służy do monitorowania oraz ewentualnej modyfikacji zmiennych w dowolnym formacie.

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.