KWALIFIKACJA ELM6 - STYCZEŃ 2021

PYTANIE NR 25.
Jeżeli wartość zmiennej "Bieżący stan" będzie równa 3 to realizowana będzie instrukcja warunkowa rozpoczynająca się od linii o numerze
Ilustracja przedstawia fragment kodu programu w języku programowania, który jest używany w kontekście egzaminu zawodowego
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Gdy zmienna "Bieżący stan" ma wartość 3, wykonywana jest ta gałąź instrukcji warunkowej, której warunek odpowiada tej wartości.
W konsekwencji realizuje się blok rozpoczynający się w linii 1, a do zmiennej "L1 1-5" zostaje wpisana wartość 1, zgodnie z logiką pokazaną w programie.

Pełne wyjaśnienie:

W zadaniach z eksploatacji i programowania systemów mechatronicznych często analizuje się fragment programu sterownika, w którym wartunek (np. równość zmiennej stanu) decyduje o tym, który blok programu zostanie wykonany.

Jeżeli podano, że "Bieżący stan" = 3, to należy odszukać w instrukcji warunkowej gałąź odpowiadającą tej wartości (np. porównanie z 3 albo odpowiedni "przypadek" dla 3). Po znalezieniu właściwej gałęzi odczytuje się dwa elementy:

  • numer linii, od której zaczyna się wykonany blok,
  • skutek wykonania, czyli jakie przypisanie/ustawienie zmiennych następuje w tej gałęzi.

Poprawna odpowiedź wskazuje, że dla wartości 3 realizowany jest blok rozpoczynający się w linii 1 i że w tym bloku zmienna "L1 1-5" otrzymuje wartość 1. To jest spójne z typową interpretacją: warunek wybiera gałąź, a gałąź wykonuje przypisanie.

Pozostałe odpowiedzi są błędne z typowych powodów:

  • Wariant z linią 1 i wartością 0 miesza poprawny punkt startu bloku z nieprawidłowym skutkiem (błąd "0/1" przy odczycie przypisania).
  • Warianty z linią 7 przenoszą wykonanie na inny blok, czyli inną gałąź instrukcji warunkowej (błąd lokalizacji gałęzi dla danej wartości stanu).
  • Warianty z "L2 6-10" wskazują inną zmienną/inną grupę, co jest typowym skutkiem pomylenia podobnie nazwanych sygnałów.

Na egzaminie warto stosować prostą procedurę: (1) odczytaj wartość zmiennej sterującej, (2) znajdź dokładnie pasujący warunek, (3) odczytaj numer linii początku bloku, (4) dopiero potem odczytaj przypisania w tym bloku i zweryfikuj, czy dotyczą właściwej zmiennej.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Instrukcja warunkowa to fragment logiki, który wybiera jeden z możliwych bloków działań na podstawie spełnienia warunku (np. równości, zakresu, stanu bitu). Dzięki temu sterownik wykonuje różne przypisania lub akcje zależnie od aktualnego stanu procesu.
Należy znaleźć w programie porównanie zmiennej "Bieżący stan" z liczbą 3 albo przypadek odpowiadający wartości 3. To ta gałąź zostanie wykonana. Dopiero w obrębie tej gałęzi odczytuje się, od której linii się zaczyna i jakie zmienne są w niej ustawiane.
Numer linii pozwala jednoznacznie wskazać miejsce w kodzie, w którym rozpoczyna się wykonany blok instrukcji warunkowej. W diagnostyce i analizie programu ułatwia to szybkie odszukanie logiki odpowiedzialnej za daną reakcję oraz porównanie z innymi gałęziami.
W wielu zadaniach sterowania wartość 1 oznacza stan aktywny (TRUE, załączone wyjście, spełniony sygnał). Przypisanie 1 do zmiennej zwykle powoduje ustawienie bitu lub wyjścia, co może uruchomić element wykonawczy albo włączyć funkcję w sekwencji.
Najczęstsze błędy to: odczytanie wartości z sąsiedniej linijki, pomylenie "ustawienia" z "skasowaniem", nieuwzględnienie, że przypisanie jest skutkiem gałęzi, a nie warunkiem, oraz pomylenie podobnie nazwanych zmiennych (np. L1 i L2).
Nie. Takie pytanie z definicji wymaga analizy konkretnego fragmentu programu (zwykle pokazanego na ilustracji). Bez odczytu warunku i przypisań nie da się pewnie ustalić, od której linii zaczyna się wykonywany blok ani jaka wartość jest przypisywana do wskazanej zmiennej.
Warto traktować je jako różne grupy sygnałów/wyjść (np. inne zakresy lub inne moduły). Podczas czytania kodu trzeba sprawdzać pełną nazwę zmiennej, a nie tylko początek. Dobrą praktyką jest śledzenie, w której gałęzi i w jakim kontekście dana nazwa występuje.
Zmienna stanu jest typowa w sterowaniu sekwencyjnym (automaty stanów): każda wartość oznacza etap cyklu maszyny. Na jej podstawie program wybiera odpowiednie działania, np. załączenia wyjść, warunki przejścia do następnego etapu, blokady bezpieczeństwa czy sygnalizację.
Ćwicz krótkie fragmenty logiki: instrukcje IF/ELSE lub CASE, porównania, ustawianie/kasowanie bitów i przypisania wyjść. Trenuj metodę "warunek → gałąź → skutek" oraz dokładne sprawdzanie nazw zmiennych. Pomaga też rozwiązywanie zadań na czas.
Kroki:
1) Odczytaj podaną wartość (tu: 3).
2) Znajdź gałąź odpowiadającą 3.
3) Zapisz numer linii początku tej gałęzi.
4) Odczytaj przypisania w tej gałęzi.
5) Porównaj z odpowiedziami, zwłaszcza 0/1 i nazwę zmiennej.
info

Około 43% zdających odpowiada poprawnie na to pytanie. trudne

Źródła:

  • IEC 61131-3:2013, Programmable controllers – Part 3: Programming languages (ogólne zasady dot. języków PLC i struktur sterowania warunkowego)

Materiały:

  • Podstawy programowania PLC (logika drabinkowa LAD, FBD oraz tekst strukturalny ST)
  • Ćwiczenia z instrukcjami IF/ELSIF/ELSE oraz CASE w przykładach sekwencji stanów
  • Materiały producentów sterowników PLC dotyczące struktur programu i diagnostyki online

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego