fbpx

Obsługa błędów – przycisk Reset

przycisk-reset

Normy bezpieczeństwa określają, jakie rodzaje błędów powinny być potwierdzone przyciskiem Reset, a jakie mogą się resetować automatycznie. W przypadku naszej linii technologicznej mamy jasno określone, że każdy błąd powinien zostać zatwierdzony poprzez naciśnięcie przycisku Reset.

Obsługa błędów – przycisk Reset

Zajmiemy się obsługą przycisku Reset, a dokładnie wykonaniem punktu 12 z założeń projektowych. Jego treść to: „Usunięcie błędu jest możliwe poprzez potwierdzenie jego w wyniku naciśnięcia przycisku Reset

Kod programu

Obsługa błędów znajduje się w warstwie Error, a dokładnie w funkcji ERR_ClassError(). Do tej funkcji dodamy kod realizujący punkt 12 z założeń projektowych.

Obecnie program został tak napisany, że usunięcie błędu pozwala na natychmiastowe uruchomienie linii. Wynika to z kodu przedstawionego na poniższym listingu

"MAN_LineMode".Error := "ERR_Error".EmergencyButton OR "ERR_Error".ChangeMode;

Ten kod należy tak zmodyfikować, aby pojawienie się błędu nie pozwalało na włączenie linii. Zmieniony kod przedstawiono na poniższym listingu

IF("ERR_Error".EmergencyButton OR "ERR_Error".ChangeMode) THEN
"MAN_LineMode".Error := TRUE;
END_IF;

Jeżeli pojawi się jakikolwiek z błędów, to warunek instrukcji IF będzie spełniony. Wówczas do zmiennej Error z bloku danych MAN_LineMode zostaje przypisana wartość TRUE. To spowoduje natychmiastowe zatrzymanie linii oraz brak możliwości ponownego jej włączenia.

Teraz zajmiemy się napisaniem kodu obsługi przycisku Reset. W momencie wciśnięcia błąd powinien zostać skasowany. Kod przedstawiono na poniższym listingu

IF (Reset) THEN
"MAN_LineMode".Error := FALSE;
END_IF;

Jeżeli ten warunek będzie spełniony, to do zmiennej Error z bloku danych MAN_LineMode zostaje przypisana wartość FALSE. Dzięki temu linię będzie można uruchomić.

Jeżeli błąd dalej występuje (np. przycisk bezpieczeństwa E-Stop jest ciągle wciśnięty), to naciśnięcie przycisku Reset nie spowoduje skasowania błędu. Wynika to z faktu, że ciągle do zmiennej Error będzie przypisywana wartość TRUE.

Testowanie

Zaczynamy jak zawsze od kompilacji kodu i następnie wgraniu do sterownika PLC. Sprawdzenie wykonamy w Factory IO. Uruchamiamy symulację i następnie transport palet w trybie automatycznym. Naciskamy przycisk bezpieczeństwa. W tym momencie linia się zatrzymuje. Odciągamy przycisk bezpieczeństwa i próbujemy włączyć linię naciskając przycisk Start. Jednak linia się nie uruchamia. Należy naciśnąć przycisk Reset. To powoduje wyłączenie czerwonej lampy na kolumnie sygnalizacyjnej. Wciskamy przycisk Start jeszcze raz. Dopiero teraz linia się uruchomiła, ponieważ nastąpiło potwierdzenie błędu.

W ten sposób możemy stwierdzić że kolejna funkcjonalność została dodana do linii transportowej i działa poprawnie.

Kurs wideo

Więcej na temat programowania w języku SCL znajdziesz w kursie Sterownik PLC w praktyce:

pl-usb-1p1-tia-1200-scl_sterownik-plc_w-praktyce-1

Podziel się tym wpisem na:
  • Facebook
  • Google Bookmarks
  • Twitter
  • Wykop

Komentarzy

  1. Mariusz

    Bardzo fajny blog, poruszasz ciekawe zagadnienia :) Na pewno będę tu zaglądał częściej :)

    Powtórz

Pozostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Newsletter - Zapisz się i jako pierwszy otrzymasz najnowsze informacje