W tym typie zadania sprawdza się umiejętność rozpoznania równoważności funkcjonalnej programu zapisanego w dwóch różnych językach zgodnych z IEC 61131-3: LD (język drabinkowy) oraz FBD (bloki funkcyjne). Poprawność wyboru polega na tym, że oba zapisy muszą dawać taki sam wynik na wyjściu dla każdego możliwego zestawu sygnałów wejściowych.
Jak podejść do porównania bez zgadywania:
- Krok 1: odczytaj logikę w LD. Połączenia styków w szeregu odpowiadają operacji AND, a gałęzie równoległe odpowiadają OR. Styk normalnie zamknięty (NC) oznacza negację danego sygnału (NOT).
- Krok 2: przenieś tę logikę na FBD. W FBD szukasz bloków AND/OR/NOT i sprawdzasz, czy wejścia bloków odpowiadają tym samym sygnałom co w LD (w tym czy negacje są w tym samym miejscu).
- Krok 3: zweryfikuj skrajne przypadki. Dla pewności warto mentalnie (lub na brudno) sprawdzić kilka kombinacji: wszystkie wejścia = 0, wszystkie = 1 oraz przypadki, w których zmienia się tylko jeden sygnał. Jeśli choć w jednym przypadku stan wyjścia różni się, program nie jest równoważny.
Odpowiedź "D." jest poprawna, ponieważ odpowiada tej samej zależności logicznej między wejściami a wyjściem, co pokazany program w LD.
Dlaczego pozostałe odpowiedzi są błędne w typowych sytuacjach tego zadania:
- Jedna z niepoprawnych wersji zwykle zamienia AND z OR (np. traktuje gałęzie równoległe jak szereg), przez co wyjście załącza się zbyt łatwo lub zbyt trudno.
- Inna wersja często ma negację w złym miejscu (np. zanegowany jest inny sygnał niż w LD albo zanegowany jest wynik całego wyrażenia zamiast pojedynczego wejścia).
- Częsty błąd to również niezgodność semantyki wyjścia (np. wstawienie elementu o innym działaniu niż zwykła cewka), co zmienia zachowanie mimo podobieństwa graficznego.
Wskazówka egzaminacyjna: nie wybieraj odpowiedzi na podstawie "podobnego wyglądu". Zawsze sprowadź oba zapisy do tej samej postaci logicznej (AND/OR/NOT) albo porównaj zachowanie na kilku reprezentatywnych kombinacjach wejść.