Instrukcje TIA Portal

Operacje logiczne na bitach
Styki, cewki i wykrywanie zboczy

Serce programowania PLC. Instrukcje logiczne na bitach obsługują każdą operację boolowską — od prostych styków i cewek po przerzutniki i wykrywanie zboczy. Opanuj je, a będziesz w stanie zbudować dowolną logikę automatyzacji.

Czym są operacje logiczne na bitach?

Operacje logiczne na bitach to najbardziej podstawowe instrukcje w programowaniu PLC. Pracują na sygnałach boolowskich (TRUE/FALSE, 1/0) — odczytują stany wejść, łączą warunki za pomocą logiki AND/OR i sterują wyjściami. W języku LAD pojawiają się jako styki i cewki na szczeblach. W FBD występują jako bloki bramek AND/OR/NOT.

Każdy program PLC intensywnie korzysta z instrukcji logicznych. Układ start/stop silnika, warunek alarmu, blokada zaworu — wszystko zaczyna się od styków odczytujących stany czujników, a kończy na cewkach sterujących elementami wykonawczymi.

Styki — odczyt stanów wejściowych

Styki odczytują stan boolowski zmiennej i przekazują go dalej w łańcuchu logiki

Styk zwierny (Normally Open)

—| |—
F9

Jak to działa

Odczytuje zmienną boolowską (BOOL). Jeśli zmienna ma wartość TRUE (1), styk zamyka się i przekazuje sygnał (RLO = TRUE) do następnego elementu. Jeśli zmienna ma wartość FALSE (0), styk pozostaje otwarty i blokuje przepływ sygnału. Jest to najczęściej używana instrukcja w programowaniu LAD.

Kiedy używać

Zawsze, gdy musisz sprawdzić, czy warunek jest spełniony (TRUE): czy przycisk jest wciśnięty? Czy czujnik jest aktywny? Czy flaga jest ustawiona? Umieść styk zwierny i przypisz do niego swoją zmienną.

Porady eksperta

Nazwa 'Normally Open' (normalnie otwarty) pochodzi z logiki przekaźnikowej — styk jest otwarty (nie przewodzi prądu) w swoim stanie spoczynkowym. Zamyka się po wzbudzeniu.

Wiele styków NO połączonych szeregowo tworzy logikę AND (I). Wiele styków NO w gałęziach równoległych tworzy logikę OR (LUB).

W języku FBD odpowiednikiem jest po prostu podłączenie zmiennej BOOL do wejścia bloku AND/OR — nie jest wymagany jawny symbol styku.

Styk rozwierny (Normally Closed)

—|/|—
F10

Jak to działa

Odwrotność styku zwiernego. Jeśli zmienna ma wartość FALSE (0), styk jest zamknięty i przekazuje sygnał. Jeśli zmienna ma wartość TRUE (1), styk otwiera się i blokuje sygnał. Działa jak operacja NOT na wartości zmiennej.

Kiedy używać

Gdy musisz sprawdzić, czy warunek NIE jest spełniony: przycisk bezpieczeństwa nie jest wciśnięty, brak aktywnego błędu, wyłącznik krańcowy nie został osiągnięty. Bardzo powszechne w blokadach bezpieczeństwa i warunkach alarmowych.

Porady eksperta

Używaj styków NZ dla przycisków bezpieczeństwa i obwodów zabezpieczających — są one bezpieczne w razie awarii (fail-safe). Jeśli przewód zostanie przerwany, styk NZ otworzy się i zatrzyma maszynę.

W języku FBD odpowiednikiem jest zanegowane wejście (małe kółko na pinie wejściowym bloku AND/OR).

Nie myl instrukcji styku NZ z fizycznym przyciskiem rozwiernym. To niezależne pojęcia.

Inwersja RLO (NOT)

—|NOT|—

Jak to działa

Odwraca (neguje) aktualny wynik operacji logicznej (RLO). Jeśli łańcuch logiki do tego punktu ma wartość TRUE, NOT zamienia go na FALSE i odwrotnie. Operuje na skumulowanym wyniku logiki, a nie na konkretnej zmiennej.

Kiedy używać

Gdy musisz odwrócić złożone wyrażenie logiczne, a nie pojedynczą zmienną. Zamiast przepisywać cały warunek z odwróconymi stykami, umieść NOT na końcu, aby zmienić wynik.

Porady eksperta

NOT odwraca cały RLO w danym punkcie łańcucha — różni się od styku NZ, który odwraca tylko jedną zmienną.

W języku FBD użyj bloku NOT lub zaneguj wyjście bramki logicznej.

Używaj z umiarem — nadmierne stosowanie NOT utrudnia czytanie logiki. Często restrukturyzacja logiki jest bardziej przejrzysta.

Cewki — sterowanie wyjściami

Cewki zapisują wynik łańcucha logiki do zmiennej wyjściowej

Przypisanie

—( )—
Shift + F7

Jak to działa

Zapisuje aktualny RLO (wynik operacji logicznej) do zmiennej boolowskiej. Jeśli łańcuch logiki ma wartość TRUE, zmienna staje się TRUE. Jeśli FALSE, zmienna staje się FALSE. Jest to standardowa cewka wyjściowa — bezpośrednio odzwierciedla logikę wejściową w każdym cyklu skanowania.

Kiedy używać

Dla każdego wyjścia, które powinno bezpośrednio podążać za warunkami wejściowymi. Lampka sygnalizacyjna, która świeci, gdy silnik pracuje; zawór, który otwiera się, gdy spełnione są warunki. Wyjście śledzi wejście — gdy warunki stają się FALSE, wyjście również staje się FALSE.

Porady eksperta

Cewka przypisania jest 'niepodtrzymywana' (non-retentive) — zapisuje stan w każdym cyklu. Jeśli logika zmieni się na FALSE, wyjście natychmiast staje się FALSE.

Zmienna powinna być przypisana tylko w JEDNEJ sieci. Wielokrotne przypisania do tej samej zmiennej powodują, że ostatnie wygrywa, co prowadzi do nieprzewidywalnych zachowań.

W języku FBD przypisanie to po prostu połączenie wyjścia bramki logicznej ze zmienną BOOL.

Zanegowane przypisanie

—(/)—

Jak to działa

Zapisuje zanegowany RLO do zmiennej boolowskiej. Jeśli łańcuch logiki ma wartość TRUE, zmienna staje się FALSE. Jeśli łańcuch logiki ma wartość FALSE, zmienna staje się TRUE. Łączy Przypisanie + NOT w jednej instrukcji.

Kiedy używać

Gdy wyjście powinno być aktywne w przeciwnym warunku. Na przykład lampka 'system OK', która gaśnie po wykryciu błędu. Zamiast odwracać cały łańcuch logiki, użyj zanegowanej cewki.

Porady eksperta

Odpowiednik umieszczenia NOT przed zwykłą cewką przypisania, ale bardziej kompaktowy.

Używaj ostrożnie — zanegowane cewki mogą być mylące. Czasami przejrzyściej jest przebudować logikę.

W języku FBD jest to zanegowane połączenie wyjściowe.

Kasowanie wyjścia (Reset)

—(R)—

Jak to działa

Gdy RLO ma wartość TRUE, zmienna jest ustawiana na FALSE (0). Gdy RLO ma wartość FALSE, zmienna pozostaje bez zmian (zachowuje swoją aktualną wartość). Jest to operacja jednokierunkowa — może tylko wyłączyć, nigdy włączyć.

Kiedy używać

W układach Set/Reset: jedna sieć ustawia wyjście (włącza), inna je kasuje (wyłącza). Używaj Reset do warunków zatrzymania, kasowania błędów i potwierdzania alarmów. Reset zazwyczaj ma priorytet w logice bezpieczeństwa.

Porady eksperta

Reset działa tylko wtedy, gdy jego RLO ma wartość TRUE. Gdy RLO jest FALSE, wyjście pozostaje bez zmian — NIE ustawia go na TRUE.

W parze S/R instrukcja, która pojawia się OSTATNIA w programie, ma priorytet (jeśli oba warunki są TRUE jednocześnie).

Reset jest podtrzymywany — po wykonaniu Resetu wyjście pozostaje FALSE aż do jawnego ponownego ustawienia (Set).

Ustawianie wyjścia (Set)

—(S)—

Jak to działa

Gdy RLO ma wartość TRUE, zmienna jest ustawiana na TRUE (1). Gdy RLO ma wartość FALSE, zmienna pozostaje bez zmian (zachowuje swoją aktualną wartość). Jest to operacja jednokierunkowa — może tylko włączyć, nigdy wyłączyć.

Kiedy używać

W układach Set/Reset: używaj Set dla warunków startu, sygnałów zatrzaskowych i flag pierwszego uruchomienia. Raz ustawione wyjście pozostaje TRUE aż do jawnego skasowania (Reset) — co czyni je 'samopodtrzymującym' bez potrzeby stosowania styku podtrzymującego.

Porady eksperta

Set działa tylko wtedy, gdy jego RLO ma wartość TRUE. Gdy RLO jest FALSE, wyjście pozostaje bez zmian — NIE kasuje go.

Klasyczne sterowanie silnikiem: Sieć 1 = przycisk Start → Set Silnik. Sieć 2 = przycisk Stop LUB błąd → Reset Silnik.

Uważaj na zmienne podtrzymywane w obwodach bezpieczeństwa — po cyklu zasilania wyjścia Set mogą zachować swój ostatni stan zależnie od ustawień bloku danych (DB).

Operacje na polach bitowych

Ustawianie lub kasowanie zakresu bitów w jednej operacji

SET_BF — Ustaw pole bitowe

Jak to działa

Ustawia ciągłą grupę bitów na TRUE, zaczynając od określonego adresu. Definiujesz bit początkowy i liczbę bitów do ustawienia. Gdy RLO ma wartość TRUE, wszystkie określone bity są ustawiane na 1.

Kiedy używać

Gdy musisz aktywować wiele powiązanych wyjść jednocześnie — na przykład ustawiając wszystkie bity słowa statusu, inicjując grupę flag lub aktywując bank wyjść naraz.

Porady eksperta

Przydatne do operacji wsadowych zamiast pisania indywidualnych instrukcji Set dla każdego bitu.

Parametr liczby bitów określa, ile kolejnych bitów zostanie zmienionych.

Podobnie jak Set, działa tylko gdy RLO jest TRUE — bity pozostają bez zmian gdy RLO jest FALSE.

RESET_BF — Kasuj pole bitowe

Jak to działa

Kasuje ciągłą grupę bitów na FALSE, zaczynając od określonego adresu. Definiujesz bit początkowy i liczbę bitów do skasowania. Gdy RLO ma wartość TRUE, wszystkie określone bity są zerowane (0).

Kiedy używać

Gdy musisz wyczyścić wiele flag lub wyjść naraz — na przykład kasując wszystkie bity alarmowe w słowie statusu, resetując grupę wyjść podczas wyłączania lub inicjując obszar danych.

Porady eksperta

Odpowiednik SET_BF — używaj ich razem do operacji Set/Reset na poziomie grupowym.

Szczególnie przydatne do czyszczenia słów alarmowych lub rejestrów statusu w jednej operacji.

Podobnie jak Reset, działa tylko gdy RLO jest TRUE — bity pozostają bez zmian gdy RLO jest FALSE.

Przerzutniki — układy zatrzaskowe

Elementy bistabilne, które pamiętają swój stan aż do jawnej zmiany

SR — Przerzutnik Set/Reset

Jak to działa

Bistabilny przerzutnik z priorytetem ustawiania (Set). Posiada dwa wejścia: S (Set) i R (Reset) oraz jedno wyjście Q. Gdy S=TRUE, Q staje się TRUE. Gdy R=TRUE, Q staje się FALSE. Gdy oba wejścia S i R są TRUE jednocześnie, Q ma wartość TRUE (Set dominuje).

Kiedy używać

Dla układów zatrzaskowych, gdzie warunek ustawienia powinien mieć priorytet. W przerzutniku SR, jeśli jednocześnie wciśnięto start i stop, wyjście pozostanie włączone. Używaj, gdy 'priorytet startu' jest akceptowalny.

Porady eksperta

SR = Priorytet Set. Jeśli S=1 i R=1 → Q=1. Używaj, gdy uruchomienie jest ważniejsze niż zatrzymanie.

W aplikacjach krytycznych dla bezpieczeństwa preferuj RS (priorytet Resetu) — jest bezpieczniejszy, jeśli oba warunki wystąpią jednocześnie.

Przerzutnik jest pojedynczym blokiem w LAD i FBD z wejściami S, R i wyjściem Q.

RS — Przerzutnik Reset/Set

Jak to działa

Bistabilny przerzutnik z priorytetem kasowania (Reset). Posiada dwa wejścia: R (Reset) i S (Set) oraz jedno wyjście Q. Gdy S=TRUE, Q staje się TRUE. Gdy R=TRUE, Q staje się FALSE. Gdy oba wejścia R i S są TRUE jednocześnie, Q ma wartość FALSE (Reset dominuje).

Kiedy używać

Dla układów zatrzaskowych, gdzie bezpieczeństwo jest najważniejsze. Warunek kasowania (stop) ma priorytet — jeśli zarówno start jak i stop są aktywne, wyjście jest wyłączone. Jest to standardowy wybór dla sterowania silnikami i blokad bezpieczeństwa.

Porady eksperta

RS = Priorytet Reset. Jeśli S=1 i R=1 → Q=0. Bezpieczniejszy wybór dla większości zastosowań przemysłowych.

Klasyczny wzorzec sterowania silnikiem: S = Przycisk_Start AND NOT Błąd, R = Przycisk_Stop OR Wyłącznik_Awaryjny OR Błąd.

Wyjście Q jest podtrzymywane w obrębie cyklu skanowania — zachowuje swoją wartość do czasu ponownej oceny przerzutnika.

Wykrywanie zboczy — detekcja zmian sygnału

Wykrywanie przejścia sygnału z FALSE→TRUE lub TRUE→FALSE

Skanowanie zmiennej pod kątem zbocza narastającego

—|P|—

Jak to działa

Wykrywa zbocze narastające (przejście FALSE→TRUE) na konkretnej zmiennej. Instrukcja porównuje aktualną wartość z wartością z poprzedniego cyklu skanowania. Jeśli wartość zmieniła się z 0 na 1, RLO jest TRUE przez dokładnie jeden cykl. Wymaga bitu pamięci zbocza (np. marker M) do przechowywania poprzedniego stanu.

Kiedy używać

Gdy potrzebujesz pojedynczego impulsu z sygnału ciągłego: liczenie naciśnięć przycisku, wyzwalanie pojedynczej akcji przy zmianie poziomu, inkrementacja licznika przy każdej aktywacji. Bez wykrywania zboczy, trzymany przycisk wyzwalałby akcję w każdym cyklu.

Porady eksperta

MUSISZ przypisać unikalny bit pamięci zbocza — NIE używaj tego samego bitu M dla wielu detekcji zboczy, bo będą się wzajemnie zakłócać.

Wyjście jest TRUE przez dokładnie jeden cykl skanowania PLC (zazwyczaj 1-50 ms). Jeśli potrzebujesz dłuższego impulsu, użyj timera.

W LAD pojawia się jako styk z oznaczeniem 'P'. Zmienna bitu pamięci jest widoczna nad lub pod stykiem.

Skanowanie zmiennej pod kątem zbocza opadającego

—|N|—

Jak to działa

Wykrywa zbocze opadające (przejście TRUE→FALSE) na konkretnej zmiennej. Porównuje aktualną wartość z wartością z poprzedniego cyklu. Jeśli wartość zmieniła się z 1 na 0, RLO jest TRUE przez dokładnie jeden cykl. Wymaga bitu pamięci zbocza.

Kiedy używać

Gdy musisz zareagować na wyłączenie sygnału: wykrycie puszczenia przycisku, wyzwalanie przy deaktywacji czujnika lub uchwycenie momentu zakończenia kroku procesu.

Porady eksperta

Te same zasady co przy zboczu narastającym — każda detekcja zbocza opadającego potrzebuje własnego, unikalnego bitu pamięci.

Przydatne dla akcji 'przy zwolnieniu przycisku': uruchom timer, gdy przycisk zostanie puszczony, a nie wciśnięty.

W sekwencji wyłączania używaj zboczy opadających, aby wykryć zakończenie każdego kroku (wyjście przechodzi z ON do OFF).

Ustawianie zmiennej przy zboczu narastającym

—(P)—

Jak to działa

Ustawia (zapisuje TRUE) określoną zmienną na jeden cykl skanowania, gdy na RLO wykryte zostanie zbocze narastające (FALSE→TRUE). Łączy wykrywanie zbocza i przypisanie wyjścia w jednej instrukcji.

Kiedy używać

Gdy chcesz ustawić flagę lub wyjście na dokładnie jeden cykl przy zboczu narastającym, bez konieczności stosowania oddzielnego styku detekcji zbocza i cewki.

Porady eksperta

Jest to instrukcja typu cewka — umieszcza się ją na końcu szczebla, a nie w środku.

Wymaga bitu pamięci zbocza, podobnie jak wersja ze stykiem.

Zmienna jest TRUE tylko przez jeden cykl, a następnie automatycznie wraca do FALSE.

Ustawianie zmiennej przy zboczu opadającym

—(N)—

Jak to działa

Ustawia (zapisuje TRUE) określoną zmienną na jeden cykl skanowania, gdy na RLO wykryte zostanie zbocze opadające (TRUE→FALSE). Łączy wykrywanie zbocza opadającego i przypisanie wyjścia w jednej instrukcji.

Kiedy używać

Gdy chcesz ustawić flagę lub wyjście na dokładnie jeden cykl przy zboczu opadającym. Przydatne do wyzwalania akcji po deaktywacji sygnału.

Porady eksperta

Instrukcja typu cewka — umieść na końcu szczebla.

Wymaga własnego, unikalnego bitu pamięci zbocza.

Często używane do akcji 'sprzątających', które powinny wydarzyć się raz po zatrzymaniu procesu.

P_TRIG — Skanowanie RLO pod kątem zbocza narastającego

Jak to działa

Wykrywa zbocze narastające na RLO (wyniku operacji logicznej), a nie na konkretnej zmiennej. Gdy skumulowany wynik logiki przechodzi z FALSE na TRUE, wyjście jest TRUE przez jeden cykl. Pamięć zbocza jest przechowywana wewnątrz instancji instrukcji.

Kiedy używać

Gdy chcesz wykryć zbocze narastające na złożonej kombinacji logiki, a nie tylko na pojedynczej zmiennej. Na przykład: wykryj, kiedy (Czujnik1 AND Czujnik2 AND NOT Błąd) po raz pierwszy staje się TRUE.

Porady eksperta

P_TRIG operuje na skumulowanym RLO — wykrywa zbocze całego łańcucha logiki przed nim.

Pamięć zbocza jest wbudowana w instrukcję — nie jest potrzebny oddzielny bit M.

W języku FBD P_TRIG to blok z wejściem CLK i wyjściem Q.

N_TRIG — Skanowanie RLO pod kątem zbocza opadającego

Jak to działa

Wykrywa zbocze opadające na RLO. Gdy skumulowany wynik logiki przechodzi z TRUE na FALSE, wyjście jest TRUE przez jeden cykl. Pamięć zbocza jest przechowywana wewnątrz instancji instrukcji.

Kiedy używać

Gdy chcesz wykryć, kiedy złożony warunek przestaje być spełniony. Na przykład: wykryj moment, w którym (Tryb_Auto AND Wszystko_OK) zmienia się z TRUE na FALSE.

Porady eksperta

N_TRIG jest odpowiednikiem P_TRIG dla zbocza opadającego.

Nie jest potrzebny oddzielny bit M — pamięć zbocza jest wewnętrzna.

Przydatne do wykrywania końca złożonego warunku, a nie tylko pojedynczego sygnału.

R_TRIG — Wykrywanie zbocza narastającego sygnału

Jak to działa

Blok funkcyjny (FB) zgodny z normą IEC 61131-3, służący do wykrywania zbocza narastającego. Posiada wejście CLK i wyjście Q. Gdy CLK przechodzi z FALSE na TRUE, Q ma wartość TRUE przez jeden cykl. Pamięć zbocza jest przechowywana w danych instancji bloku FB.

Kiedy używać

Gdy chcesz stosować standardową detekcję zboczy IEC z własnymi danymi instancji. R_TRIG to blok funkcyjny — każda instancja automatycznie utrzymuje własną pamięć zbocza. Preferowany w strukturalnym, wielokrotnego użytku kodzie.

Porady eksperta

R_TRIG to FB — wymaga danych instancji (własnego bloku DB lub jako multi-instancja w bloku nadrzędnym). Dzięki temu jest samowystarczalny i reużywalny.

Dostępny od wersji V1.0 na S7-1200/1500. Jest to standardowy sposób detekcji zboczy według IEC 61131-3.

W SCL: myRTRIG(CLK := mySignal); IF myRTRIG.Q THEN ... END_IF;

F_TRIG — Wykrywanie zbocza opadającego sygnału

Jak to działa

Blok funkcyjny (FB) zgodny z normą IEC 61131-3, służący do wykrywania zbocza opadającego. Posiada wejście CLK i wyjście Q. Gdy CLK przechodzi z TRUE na FALSE, Q ma wartość TRUE przez jeden cykl. Pamięć zbocza jest przechowywana w danych instancji bloku FB.

Kiedy używać

Gdy chcesz stosować standardową detekcję zbocza opadającego IEC z własnymi danymi instancji. F_TRIG jest odpowiednikiem R_TRIG dla zbocza opadającego.

Porady eksperta

F_TRIG to FB z własną instancją — podobnie jak R_TRIG, jest samowystarczalny i zgodny z IEC 61131-3.

W SCL: myFTRIG(CLK := mySignal); IF myFTRIG.Q THEN ... END_IF;

Preferuj R_TRIG/F_TRIG nad stykami |P|/|N| przy pisaniu bibliotek wielokrotnego użytku, ponieważ nie wymagają one zewnętrznych bitów M.

Szybki przegląd — Wszystkie 20 instrukcji logicznych bitów

#InstrukcjaSymbol LADSkrótOpis
1Styk zwierny (Normally Open)—| |—F9Przekazuje sygnał, gdy zmienna jest TRUE
2Styk rozwierny (Normally Closed)—|/|—F10Przekazuje sygnał, gdy zmienna jest FALSE
3Inwersja RLO (NOT)—|NOT|—Odwraca wynik operacji logicznej
4Przypisanie—( )—Shift + F7Zapisuje RLO do zmiennej wyjściowej
5Zanegowane przypisanie—(/)—Zapisuje zanegowany RLO do zmiennej wyjściowej
6Kasowanie wyjścia (Reset)—(R)—Ustawia zmienną na FALSE, gdy RLO jest TRUE
7Ustawianie wyjścia (Set)—(S)—Ustawia zmienną na TRUE, gdy RLO jest TRUE
8SET_BF — Ustaw pole bitoweUstawia zakres bitów na TRUE
9RESET_BF — Kasuj pole bitoweKasuje zakres bitów na FALSE
10SR — Przerzutnik Set/ResetPrzerzutnik z priorytetem Set (S=1,R=1 → Q=1)
11RS — Przerzutnik Reset/SetPrzerzutnik z priorytetem Reset (S=1,R=1 → Q=0)
12Skanowanie zmiennej pod kątem zbocza narastającego—|P|—Wykrywa zbocze narastające na zmiennej
13Skanowanie zmiennej pod kątem zbocza opadającego—|N|—Wykrywa zbocze opadające na zmiennej
14Ustawianie zmiennej przy zboczu narastającym—(P)—Ustawia zmienną na 1 cykl przy zboczu narastającym
15Ustawianie zmiennej przy zboczu opadającym—(N)—Ustawia zmienną na 1 cykl przy zboczu opadającym
16P_TRIG — Skanowanie RLO pod kątem zbocza narastającegoWykrywa zbocze narastające na RLO
17N_TRIG — Skanowanie RLO pod kątem zbocza opadającegoWykrywa zbocze opadające na RLO
18R_TRIG — Wykrywanie zbocza narastającego sygnałuDetektor zbocza narastającego IEC (FB)
19F_TRIG — Wykrywanie zbocza opadającego sygnałuDetektor zbocza opadającego IEC (FB)

Często zadawane pytania

Jaka jest różnica między cewkami Set/Reset a przerzutnikami SR/RS?

Cewki Set (S) i Reset (R) są oddzielnymi instrukcjami umieszczanymi w różnych sieciach — kontrolujesz priorytet poprzez kolejność sieci (ostatnia wygrywa). Przerzutniki SR/RS to pojedyncze bloki z oboma wejściami — priorytet jest w nie wbudowany (SR = priorytet Set, RS = priorytet Reset). Przerzutniki są bardziej kompaktowe i sprawiają, że priorytet jest jawny.

Której detekcji zboczy powinienem użyć: |P|/|N|, (P)/(N), P_TRIG/N_TRIG czy R_TRIG/F_TRIG?

Styki |P|/|N| wykrywają zbocza na konkretnej zmiennej i potrzebują zewnętrznego bitu M. Cewki (P)/(N) łączą detekcję z przypisaniem wyjścia. P_TRIG/N_TRIG wykrywają zbocza na RLO (logice kombinowanej). R_TRIG/F_TRIG to standardowe bloki IEC z wbudowaną pamięcią. Dla reużywalnego kodu bibliotecznego wybierz R_TRIG/F_TRIG. Dla prostej logiki liniowej styki |P|/|N| są w porządku.

Dlaczego mój układ Set/Reset zachowuje się nieprzewidywalnie?

Najczęstszą przyczyną jest jednoczesne wystąpienie warunków Set i Reset (oba TRUE). W takim przypadku wygrywa ostatnia instrukcja w programie. Jeśli sieć Resetu znajduje się przed siecią Set, wyjście zostanie ustawione (Set). Rozwiązanie: użyj przerzutnika RS (priorytet Resetu) dla obwodów krytycznych pod kątem bezpieczeństwa lub upewnij się, że warunki wykluczają się wzajemnie.

Czy wykrywanie zboczy działa na wartościach analogowych, czy tylko BOOL?

Instrukcje wykrywania zboczy (|P|, |N|, R_TRIG, F_TRIG) działają tylko na sygnałach boolowskich. Dla wartości analogowych musisz najpierw stworzyć porównanie (np. wartość > próg), które daje wynik BOOL, a następnie zastosować detekcję zbocza do tego wyniku BOOL.

Generuj logikę bitową za pomocą AI

Opisz swoją logikę sterowania zwykłym tekstem, a T-IA Connect wygeneruje kod PLC — w tym styki, cewki, przerzutniki i wykrywanie zboczy.