Kurs obsługi sterowników PLC M
- Wprowadzenie do oprogramowania UperLogic
- Pierwszy program i wgranie do PLC
- Karta Stanu i Wykresy Zmiennych
- Zegary i liczniki
- Widok urządzenia
- Moduły analogowe (w budowie)
- Moduły temperaturowe (w budowie)
- Przerwania
- Modbus
- Język Stukturalny
- Bloki funkcyjne
- Import Projektu z WinProLadder do UperLogic
Przerwania - wejścia cyfrowe
PLC skanuje wejścia cyklicznie. Jeżeli zmiana sygnału nastąpi między cyklami program może zareagować z opóźnieniem. Szybka reakcja jest często niezbędna w układach automatyki, na pomoc temu problemowi przychodzą przerwania wejść cyfrowych.
Konfiguracja PLC na podstawie przykładowego programu
Szybkie przerwania używane są np. dla czujników krańcowych, gdzie krótki czas reakcji jest niezbędny by szybko zatrzymać mechanizm w przypadku osiągniecia określonej pozycji. W przykładowym programie czujnik jest podłączony do wejścia cyfrowego X1 i pracuje w logice odwróconej (aktywny niski). Gdy czujnik da sygnał, sterownik wyłącza siłownik pneumatyczny.
- Kliknąć Konfiguracja we/wy
- Wejść w zakładkę Przerwania sprzętowe
- Wybrać wejście odpowiadające za przerwanie oraz na jakie zbocze ma reagować.
Czujnik posiada aktywny stan niski, więc prawidłowym wyborem jest by sterownik reagował na zbocze opadające.
Tworząc nowy program obsługi przerwania sprzętowego, należy na początku określić, typ przerwania sprzętowego oraz w jakim języku zostanie napisany program. Następnie zatwierdzić wybór klikając OK.
Przerwania – zegar cykliczny
Przerwania zegarowe w PLC to mechanizm umożliwiający wykonywanie określonego fragmentu kodu w stałych odstępach czasu, niezależnie od czasu skanowania programu głównego. Działają one priorytetowo względem cyklu głównego i są niezbędne w aplikacjach, w których krytyczny jest stabilny czas reakcji.
Dostępne zegary cykliczne (przerwania)
Przerwania w PLC Fatek serii M dzielą się na STM, LTM i HST. Gdzie w STM jednostką czasu jest 1ms, LTM to 10 ms, a dla HST to 0.1 ms.
W sekcji Tagi systemowe znajdują się informacje określające, który rejestr odpowiada za wartość zadaną oraz który rejestr przechowuje wartość bieżącą danego przerwania. W przykładowym programie zostanie użyte przerwanie $STM1 w którym wartości PV (wartość zadana) oraz CV (wartość bieżąca) odpowiadają rejestry odpowiednio: R35437, R35438. Dane poszczególnych przerwań pokazują tabele poniżej:
Konfiguracja PLC na podstawie przykładowego programu
W przykładowym programie zostanie wykorzystane przerwanie zegarowe $STM1$, skonfigurowane z interwałem 10 ms.
W programie głównym Main należy wykonać następujące czynności:
- Aby konfiguracja została wykonana jednokrotnie po uruchomieniu sterownika, należy użyć bitu pomocniczego $CLK_PULSE_INIT, który przyjmuje stan wysoki wyłącznie podczas pierwszego cyklu skanowania programu.
- Aktywować bit sterujący $STM1_CTRL, przypisany do przerwania $STM1, za pomocą instrukcji SET. Bit ten może być również włączany i wyłączany w trakcie działąnia programu w zależności od potrzeb użytkownika.
- Ustawić wartość zadaną przerwania na 10 ms, wykorzystując w tym celu instrukcję MOV.
Następnie należy nacisnąć prawym przyciskiem myszy na Programy przerwań sprzętowych. A następnie Dodaj program obsługi przerwania sprzętowego.
Następnie po zatwierdzeniu przyciskiem OK, przejść do programowania obsługi cyklicznego przerwania sprzętowego:
Dzięki temu został uzyskany sygnał pulsujący na wyjściu Y1 z odstępem czasowym 10ms.
Przerwania od szybkiego licznika
Czas cyklu sterownika jest zazwyczaj dłuższy niż okres występowania szybkich impulsów, co może prowadzić do ich pominięcia. Problem ten eliminują przerwania od szybkich liczników (HSCI – High Speed Counter Interrupt), które są realizowane równolegle i niezależnie od cyklu skanowania programu głównego.
Sposoby zliczania sygnałów
Sterowniki Fatek serii M dają możliwość 6 sposobów zliczania impulsów.
Up-down pulse
W trybie U zbocza narastające na wejściu UP zwiększają wartość licznika o 1, natomiast zbocza narastające na wejściu DOWN zmniejszają jego wartość o 1. W trybie U×2 licznik reaguje zarówno na zbocza narastające, jak i opadające sygnału.
Pulse-direction
W trybie Pulse–Direction sygnał podany na wejście Direction (R) określa kierunek zliczania, natomiast impulsy pojawiające się na wejściu Pulse (P) powodują zmianę wartości licznika. W zależności od stanu wejścia Direction, impulsy z wejścia Pulse będą zwiększały lub zmniejszały wartość licznika. Stan wysoki na wejściu Direction powoduje odwrócenie kierunku zliczania.
AB phase
Sygnały A oraz B są przesunięte fazowo na wykresie czasu względem siebie. Gdy pierwszy pojawia się sygnał A wartość licznika będzie rosła, gdy pierwsza będzie pojawiać się faza B wartość licznika będzie maleć. W wersji A/B zliczane są tylko zbocza narastające fazy A. W wersji A/B×2 zliczane są zbocza narastające oraz opadające fazy A. W wersji A/B×4 zliczane są zbocza narastające oraz opadające fazy A oraz B.
Przykładowy problem i rozwiązanie
Silnik napędza podajnik materiału, który ma zostać pocięty na zadane długości poprzez nóż. Do sterownika jest podpięte sprzężenie zwrotne z enkodera, oraz czujnik informujący nas o obecności materiału. W razie skończenia się go, proces ma zostać zatrzymany. Aby zrealizować tą aplikację zaczniemy od konfiguracji szybkiego licznika. Na wejście X0 i X1 będą podawane fazy A i B z enkodera. Wybierzemy tryb zliczania A/B*4, w którym będą zliczane zbocza narastające i opadające na każdej z faz enkodera. Wejście X2 jest to sygnał maski, po jego podaniu sterownik przestaje zliczać impulsy przychodzące z enkodera. Sygnał X3 pozwala na wyzerowanie licznika.
W programie:
Należy w drzewie projektu wejść w Konfiguracje we/wy.
Następnie w programie głównym Main:
Włączenie wyjścia Y0 następuje po zboczu narastającym z wejścia X4 (pod warunkiem, że X2 jest aktywne), a dzięki podtrzymaniu wyjście pozostaje włączone nawet po puszczeniu przycisku. Gdy wyjście Y1 zostanie uruchomione, timer T0 odlicza dokładnie 100 milisekund. Po upływie tego czasu funkcja resetu automatycznie wyłącza wyjście Y1, co tworzy precyzyjny krótki impuls.
Pod procedura załącza wyjście Y1 a następnie instrukcja IMDIO wymusza odświeżenie wyjścia Y1, ignorując standardowy cykl skanowania sterownika. Następnie wartość zadana licznika w rejestrze R35282 jest powiększana o wartość z R0 i przesyłana do sprzętowej konfiguracji licznika HSC0 jako nowy parametr PV.
