KWALIFIKACJA ELM6 - CZERWIEC 2024 (test 3)

PYTANIE NR 39.
Która operację należy bezwzględnie wykonać, aby z kodu źródłowego uzyskać wersję programu nadającą się do przesłania do pamięci sterownika?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Aby kod źródłowy można było przesłać do pamięci sterownika, musi zostać przekształcony do postaci wynikowej akceptowanej przez urządzenie (np. kodu pośredniego lub binarnego). Tę transformację wykonuje proces kompilacji. Wydruk, debug czy samo uruchomienie nie tworzą takiej wersji programu.

Pełne wyjaśnienie:

W praktyce automatyki i mechatroniki kod źródłowy (to, co edytuje programista w środowisku inżynierskim) nie jest zwykle bezpośrednio zapisywany w pamięci sterownika jako forma wykonywalna. Sterownik potrzebuje postaci wynikowej, czyli takiej, którą potrafi wykonać jego runtime/VM albo którą potrafi zinterpretować jego system. Żeby ją uzyskać, wykonuje się kompilację (często jako część procesu "build").

Odpowiedź "Skompilować." jest poprawna, bo kompilacja weryfikuje składnię i semantykę na poziomie kompilatora oraz generuje artefakt wynikowy (np. plik/obraz projektu) przygotowany do wgrania (download) do pamięci sterownika. Bez tego kroku zwykle nie ma czego wgrać poza samym tekstem źródłowym, który urządzenie nie potrafi wykonać.

Pozostałe odpowiedzi nie spełniają warunku "bezwzględnie", bo nie wytwarzają wersji do przesłania:

  • "Wydrukować." daje jedynie kopię na papierze lub w formie wydruku, bez zmiany postaci programu na wykonywalną.
  • "Zdebugować." oznacza analizę działania, wyszukiwanie błędów i obserwację zmiennych. Debugowanie może wymagać wcześniejszej kompilacji, ale samo w sobie nie jest krokiem generującym artefakt do wgrania.
  • "Uruchomić." dotyczy wykonania programu (na sterowniku lub w symulatorze). Uruchomienie jest etapem testów, natomiast przygotowanie wersji do wgrania wymaga wcześniej kompilacji/budowania.

Wskazówka egzaminacyjna: gdy pytanie mówi o przejściu od "kodu źródłowego" do "wersji do przesłania", szukaj czynności typu kompilacja/budowanie, a nie testowania (uruchomienie) ani diagnozowania (debug).

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Kompilacja to przekształcenie kodu źródłowego do postaci wynikowej, którą środowisko i sterownik potrafią uruchomić lub wgrać. W trakcie kompilacji wykrywane są m.in. błędy składni i typów, a wynikiem jest artefakt gotowy do kroku "wgrywanie/download".
W większości systemów sterownik nie wykonuje "tekstu" programu, tylko postać wynikową przygotowaną przez narzędzia inżynierskie (np. skompilowany projekt). Kod źródłowy jest przeznaczony do edycji przez człowieka, a nie do bezpośredniego wykonania przez runtime sterownika.
Najczęściej wygląda to tak: edycja kodu → kompilacja/build (powstaje wersja wynikowa) → wgrywanie/download do pamięci sterownika → uruchomienie i testy. Na egzaminie ważne jest rozróżnienie: kompilacja przygotowuje plik/obraz, uruchomienie tylko go wykonuje.
Nie zawsze. Debugowanie jest bardzo pomocne w znajdowaniu błędów logicznych i obserwacji zmiennych, ale formalnie nie jest krokiem "bezwzględnie wymaganym" do uzyskania wersji do wgrania. Natomiast często, aby w ogóle debugować, program musi być wcześniej skompilowany.
Błąd kompilacji zwykle oznacza problem, który uniemożliwia wygenerowanie wersji wynikowej: np. błąd składni, niezgodne typy danych, brak deklaracji zmiennej lub konflikt nazw. Dopóki błędy kompilacji nie zostaną usunięte, środowisko nie utworzy pliku/obrazu do wgrania.
Kompilacja to "przygotowanie" programu (powstaje wersja wynikowa), a uruchomienie to "wykonanie" programu (sterownik realizuje algorytm). Jeśli w treści pojawia się "z kodu źródłowego uzyskać wersję do przesłania", chodzi o kompilację/build, nie o start programu.
Nie. Wydruk jest jedynie formą dokumentacji (papier/plik do czytania), a nie formatem wykonywalnym dla sterownika. Sterownik wymaga danych w strukturze rozumianej przez jego oprogramowanie (wytworzonej przez kompilację/budowanie), a nie "ładnego" zapisu dla człowieka.
Zależy od producenta i platformy, ale ogólnie powstaje artefakt wynikowy projektu (np. plik wynikowy/obraz aplikacji) oraz czasem pliki pośrednie i raport z kompilacji. Na egzaminie nie trzeba znać nazw rozszerzeń, tylko sens: kompilacja tworzy wersję możliwą do wgrania.
W niektórych narzędziach kompilacja może uruchamiać się automatycznie przy próbie wgrania programu lub przy uruchomieniu symulacji. Mimo że użytkownik nie klika osobno "Compile", etap przekształcenia kodu źródłowego do postaci wynikowej nadal musi zajść.
Często mylą "debugowanie" z "przygotowaniem programu" lub zakładają, że skoro program da się uruchomić w edytorze, to jest gotowy do wgrania. Pomaga reguła: słowa "kod źródłowy → wersja do przesłania" niemal zawsze wskazują na kompilację/build.
info

Statystycznie 62% uczniów zna prawidłową odpowiedź. średnie

Specjaliści zwracają uwagę: "Aby kod źródłowy można było przesłać do pamięci sterownika, musi zostać przekształcony do postaci wynikowej akceptowanej przez urządzenie (np. kodu pośredniego lub binarnego)."

Źródła:

  • IEC 61131-3:2013, Programmable controllers — Part 3: Programming languages (opis koncepcji języków PLC i wytwarzania/kompilacji programów w środowiskach PLC)

Materiały:

  • Podstawy inżynierii oprogramowania: kompilator, linker, artefakt budowania
  • Wprowadzenie do programowania sterowników PLC (języki IEC 61131-3) w kontekście budowania i wgrywania projektu
  • Instrukcje producentów środowisk PLC (sekcje: Build/Compile/Download)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego