Operacje Licznikowe
CTU, CTD, CTUD i Legacy S5
Zliczanie zdarzeń jest kluczowe w sterowaniu przemysłowym. Opanuj standardowe liczniki IEC i instrukcje legacy w TIA Portal dla swoich aplikacji produkcyjnych.
Czym są operacje licznikowe w TIA Portal?
Operacje licznikowe w TIA Portal pozwalają na zliczanie zdarzeń wewnętrznych programu lub sygnałów zewnętrznych (zbocza narastające). Są to bloki funkcjonalne zgodne z normą IEC 61131-3, które obsługują inkrementację, dekrementację, resetowanie i porównywanie z wartością zadaną (PV).
TIA Portal oferuje 3 typy liczników IEC (CTU, CTD, CTUD) oraz instrukcje kompatybilności S5 (Legacy) i cewki licznikowe. Każda instancja licznika wymaga własnego bloku danych instancji (IDB) lub może być zintegrowana jako multi-instancja w FB.
Liczniki IEC
3 standardowe bloki funkcjonalne zliczania — elastyczne i solidne
CTU — Licznik w górę (Count Up)
Co robi
Zlicza zbocza narastające na wejściu liczącym CU. Przy każdej zmianie z FALSE na TRUE na CU, aktualna wartość licznika CV zwiększa się o 1. Gdy CV stanie się większa lub równa wartości zadanej PV, wyjście Q ustawia się na TRUE. Wejście R (Reset) zeruje CV i ustawia Q na FALSE.
Kiedy używać
Używany do liczenia detali na przenośniku, liczby cykli maszyny lub częstotliwości występowania alarmu. Idealny do każdego procesu, w którym należy osiągnąć cel liczbowy, aby wyzwolić akcję.
Porady Pro
Zliczanie zatrzymuje się na maksymalnej wartości użytego typu danych (Int, DInt itp.). CV nie wraca automatycznie do zera bez Resetu.
Wejście R ma priorytet: dopóki R jest TRUE, licznik pozostaje na 0 i ignoruje zbocza na CU.
W SCL: myCTU(CU := trigger, R := reset, PV := 10); IF myCTU.Q THEN ... END_IF;
CTD — Licznik w dół (Count Down)
Co robi
Odlicza w dół od wartości początkowej. Przy każdym zboczu narastającym na wejściu CD, aktualna wartość CV zmniejsza się o 1. Gdy CV jest mniejsza lub równa 0, wyjście Q ustawia się na TRUE. Wejście LD (Load) ładuje wartość zadaną PV do CV.
Kiedy używać
Przydatny do zarządzania zapasami (odejmowanie detali), odliczania procesów lub monitorowania pozostałej pojemności zbiornika lub magazynu.
Porady Pro
Wejście LD służy do 'przeładowania' licznika. Dopóki LD jest TRUE, CV jest równe PV.
W przeciwieństwie do CTU, warunek wyjściowy Q jest spełniony, gdy CV osiągnie 0 (lub mniej).
Licznik zatrzymuje się na minimalnej wartości typu danych (np. -32768 dla Int).
CTUD — Licznik Dwukierunkowy (Up/Down)
Co robi
Łączy funkcje CTU i CTD w jednym bloku. Posiada dwa wejścia liczące (CU do inkrementacji, CD do dekrementacji) i dwa wyjścia (QU dla 'Osiągnięto próg górny', QD dla 'Osiągnięto zero'). Posiada zarówno wejście Reset (R), jak i Load (LD).
Kiedy używać
Idealny do śledzenia pozycji (przód/tył), zarządzania parkingiem (wjazd/wyjazd pojazdów) lub dynamicznego śledzenia zapasów.
Porady Pro
QU przechodzi w TRUE, jeśli CV >= PV. QD przechodzi w TRUE, jeśli CV <= 0.
R (Reset) zeruje CV. LD (Load) inicjalizuje CV wartością PV. R ma priorytet nad LD.
Bardzo przydatny w magazynach automatycznych: inkrementacja przy wjeździe paczki, dekrementacja przy wyjeździe.
Instrukcje Legacy i Cewki
Liczniki S5 i instrukcje typu cewka dla LAD/FBD
S_CU / S_CD / S_CUD
Co robi
Stare instrukcje liczenia (Legacy S5) używane w S7-300/400. Używają globalnych numerów liczników (C0...C255) zamiast bloków DB instancji. Pozwalają na parametryzację, liczenie i resetowanie w jednej złożonej instrukcji.
Kiedy używać
Tylko do konserwacji istniejących programów lub migracji projektów S5/S7-300 do S7-1500. Unikać w nowych projektach.
Porady Pro
Te liczniki nie są 'typowane' jak liczniki IEC. Ich zakres jest ograniczony (0-999).
Ich zachowanie względem zboczy narastających może różnić się od standardów IEC.
Zastępuj je systematycznie licznikami IEC CTU/CTD podczas refaktoryzacji dla lepszej przenośności.
—(SC)— Ustaw Wartość Licznika
—(SC)—Co robi
Instrukcja typu cewka, która ładuje wartość zadaną do określonego licznika, gdy RLO przechodzi w TRUE. Jest to graficzny odpowiednik wejścia Load (LD).
Kiedy używać
W LAD/FBD, aby wymusić załadowanie wartości do licznika z osobnego segmentu.
Porady Pro
Używane głównie z licznikami legacy.
Ładowana wartość jest często definiowana przez stałą lub zmienną całkowitą.
W przypadku liczników IEC używaj wejścia LD bloku lub uzyskuj dostęp bezpośrednio do instancji.
—(CU) / —(CD)— Cewki Liczące
—(CU)—Co robi
Instrukcje typu cewka, które inkrementują (CU) lub dekrementują (CD) licznik przy każdym zboczu narastającym RLO. Pozwalają sterować licznikiem bez użycia pełnego bloku funkcjonalnego.
Kiedy używać
Do bardzo zwartego programowania LAD, gdzie chcemy tylko wyzwolić liczenie na końcu linii.
Porady Pro
Te cewki odwołują się do konkretnego licznika (np. C1 lub DB licznika IEC).
Uwaga na czytelność: trudniej jest zobaczyć aktualną wartość (CV) przy użyciu cewek niż bloków.
Preferuj bloki FB dla lepszej dokumentacji kodu.
Uwaga o kompatybilności S5
Liczniki globalne
Liczniki S5 (S_CU, S_CD, S_CUD) są ograniczone do 256 globalnych instancji i zakresu 0-999. Liczniki IEC (CTU, CTD, CTUD) są preferowane, ponieważ używają bloków DB instancji, obsługują szersze typy danych (LInt) i nie mają sztywnego limitu ilości.
Porównanie liczników — Którego użyć?
Wybór odpowiedniego licznika dla Twojej aplikacji przemysłowej
| Potrzebujesz... | Użyj tego licznika | Przykład |
|---|---|---|
| Liczyć zdarzenia narastająco | CTU | Liczba zapakowanych produktów |
| Odliczać do zera | CTD | Pozostałe miejsca na półce |
| Śledzić przepływ dwukierunkowy | CTUD | Pojazdy na parkingu |
| Załadować wartość docelową | PV / LD | Ustawienie partii 50 sztuk przez HMI |
| Automatyczny reset | Reset (R) | Koniec partii, gotowość na następną |
| Zarządzać milionami jednostek | IEC (DInt/LInt) | Licznik całkowity produkcji rocznej |
Często Zadawane Pytania
Jaka jest różnica między licznikiem IEC a licznikiem S5?
Liczniki IEC używają bloków danych (DB) instancji, co pozwala na tworzenie ich w nieskończoność. Obsługują liczby całkowite 16, 32 lub 64-bitowe. Liczniki S5 są ograniczone do 256 numerów globalnych (C0-C255) i liczą tylko do 999.
Jak sprawić, by licznik automatycznie startował od zera?
Możesz połączyć wyjście Q licznika z jego własnym wejściem R (Reset). Dzięki temu, gdy cel zostanie osiągnięty, licznik natychmiast się zeruje.
Czy mogę użyć licznika do pomiaru prędkości?
Sam licznik nie mierzy prędkości. Musisz zliczać impulsy w ustalonym czasie (okno czasowe zarządzane przez Timer), a następnie wykonać obliczenie: Prędkość = Impulsy / Czas.
Czy liczniki tracą wartość po zatrzymaniu PLC?
Podobnie jak w przypadku Timerów, aktualna wartość (CV) jest przechowywana w bloku DB instancji. Jeśli DB jest skonfigurowany jako 'Retentive', licznik zachowa wartość po restarcie.