W tej części kursu omówimy wykorzystanie szybkich liczników sprzętowych, z uwzględnieniem ich konfiguracji i wykorzystamy go w programie wykorzystującym przerwania od szybkiego licznika.
Dlaczego warto korzystać z szybkich liczników?
Częstotliwość zliczania zwykłego licznika PLC wynosi maksymalnie kilkadziesiąt Hz (w zależności od czasu skanu programu). W przypadku, gdy częstotliwość sygnału wejściowego jest wyższa, konieczne jest zastosowanie szybkiego licznika (HSC). W innym wypadku, może nastąpić błąd zliczania lub zliczanie może zostać zatrzymane. W sterownikach PLC wykorzystywane są zazwyczaj dwa rodzaje szybkich liczników HSC: szybki licznik sprzętowy (HHSC) wyposażony w specjalny obwód sprzętowy, oraz szybki licznik software’owy (SHSC), który poprzez zmianę stanu podczas zliczania sygnału wyzwala operację zliczania w górę/w dół przez CPU. Sterownik FBs-PLC od Fatek może być wyposażony w 4 liczniki HHSC (w układach SoC) i 4 liczniki SHSC. Wszystkie są szybkimi licznikami 32-bitowymi.
Wykorzystanie szybkich liczników sprzętowych – przykład:
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:
Następnie wykorzystamy funkcję 93 do zapisania aktualnej wartości (CV) dla licznika HSC0 :
CN =0 wskazuje na liczniki o numerze 0 (HSC0)
D = 0 wskazuje na obecną wartość (CV)
Ponownie wykorzystamy funkcję 93, tym razem do zadania wartości (PV), która będzie długością cięcia dla licznika HSC0:
CN =0 wskazuje na liczniki o numerze 0 (HSC0)
D = 1 wskazuje na wartość zadaną (PV)
Funkcja FUN92 służy do odczytania zliczonej wartości z licznika HSC0 (zapis do rejestru DR4096).
W pod procedurze wykonamy obsługę przerwania. W funkcji 65 podamy etykietę przerwania, następnie wystawimy wyjście Y0, a funkcja 74 spowoduje natychmiastowe odświeżenie stanów wejść/wyjść. Po tym wyzerujemy licznik za pomocą FUN93 i wyjdziemy z przerwania korzystając z funkcji numer 69.
Teraz napiszemy fragment programu obsługujący silnik i nóż. Silnik może zostać uruchomiony poprzez podaniu sygnału na wejście X4, gdy obecny jest materiał wykrywany przez czujnik X2. Czas cięcia noża (Y1) określono na 0.1 sekundy. Po tym czasie wyjście Y1 zostanie zresetowane.
Czas na test. W karcie stanu obserwujemy następujące zmienne: DR0 mamy określoną długość cięcia, DR4096 mówi nam o wartości zliczone przez szybki licznik, X4 jest sygnałem uruchamiający silnik, X2 mówi o obecności materiału (stan wysoki=brak materiału), oraz Y1 uruchomienie noża:
Dodatkowo polecam film poruszający temat konfiguracji szybkiego licznika, oraz rozdział instrukcji poświęcony temu zagadnieniu.
Zapraszam do kolejnej części kursu.
![]() |
Autor: Jarosław PawełekAbsolwent Akademii Górniczo – Hutniczej im. Stanisława Staszica w Krakowie na kierunku Automatyka i Robotyka ze specjalnością Automatyka i Metrologia. Przygodę z automatyką rozpoczynał w firmie od stanowiska praktykanta. Przechodząc kolejno na stanowisko Doradcy ds. technicznych oraz obecnie zajmując stanowisko Kierownika Działu Wsparcia Technicznego stara się zapewniać najlepsze wsparcie merytoryczne dla naszych klientów. Prywatnie miłośnik fotografii. |