Co znajdziesz w tym artykule:
Kontynuujmy pracę z programowaniem układu rozruchowego dla podajnika w języku LAD i SCL.
Lista zmiennych:
Nazwa zmiennej | Typ | Adres |
xPrzyciskStart Bool | Bool | %I0.0 |
xPrzyciskStop | Bool | %I0.1 |
xPodajnikUruchom | Bool | %Q0.0 |
xSensor | Bool | %I0.2 |
Scenariusz nr 4: Układ rozruchu po wciśnięciu Start i zatrzymania przyciskiem Stop😀 – z przerzutnikiem
Wciśnięcie przycisku Start uruchamia podajnik. Po puszczeniu przycisku podajnik zatrzymuje się.
Jak to napisać w języku SCL?🤔
W języku SCL musisz wykorzystać instrukcję wywołania warunkowego IF… ELSEIF…
IF NOT "xPrzyciskStop" THEN
"xPodajnikUruchom" := 0;
ELSIF "xPrzyciskStart" THEN
"xPodajnikUruchom" := 1;
END_IF;
Scenariusz nr 5: Dojazd na czujnik😀
Wciśnięcie przycisku Start uruchamia podajnik. Po puszczeniu przycisku podajnik zatrzymuje się. Dodatkowo, przecięcie wiązki czujnika, zatrzymuje podajnik. Zwróć uwagę, że sygnał z czujnika jest typu NC – tzn, że gdy wiązka nie jest przecięta sterownik na wejściu widzi wartość TRUE, stan wysoki.
Jak to napisać w języku SCL?🤔
W języku SCL do instrukcji wywołania warunkowego IF… ELSEIF… musisz dodać kolejny warunek logiczny dotyczący zmiennej czujnika – „xSensor”.
IF NOT "xPrzyciskStop"
OR NOT "xSensor"
THEN
"xPodajnikUruchom" := 0;
ELSIF "xPrzyciskStart" THEN
"xPodajnikUruchom" := 1;
END_IF;
Scenariusz nr 6: Dojazd za czujnik😀
Aby kontener znalazł się za czujnikiem, konieczne będzie wykrycie zbocza narastającego sygnału z czujnika (przypominam, że jest to sygnał NC). W tym celu zastosujemy w języku LAD instrukcję triggera.
Jak to napisać w języku SCL?🤔
W języku SCL musisz osobno wywołać blok funkcyjny triggera w linijce nr 1. W lini nr 4 odnosimy się do wyjścia Q z tego bloku funkcyjnego.
"R_TRIG_DB"(CLK:="xSensor");
IF NOT "xPrzyciskStop"
OR "R_TRIG_DB".Q
THEN
"xPodajnikUruchom" := 0;
ELSIF "xPrzyciskStart" THEN
"xPodajnikUruchom" := 1;
END_IF;
Co dalej?
Przejdź do części nr 3, w której rozwiniemy funkcjonalność naszego programu. Pokażę Ci nowe instrukcje w języku SCL!
- Część #1: Operator przypisania, operacje bool’owskie – programowanie PLC w języku SCL na przykładach
- Część #2: Przerzutniki w SCL – programowanie PLC w języku SCL na przykładach
- Część #3: Triggery, timery – programowanie PLC w języku SCL na przykładach