Przejdź do treści

Programowanie PLC w praktyce: języki za automatyką

Od schematów drabinkowych do tekstu strukturalnego — tak się pisze logikę, która steruje instalacją

Wstęp

Gdy technik automatyki buduje sterowanie PLC, cel kompetencji nr 5 w szkoleniu dotyczy właśnie możliwości wykonania programowania z towarzyszącą dokumentacją zgodnie z obowiązującymi standardami. Standard, na którym niemal wszystkie urządzenia PLC dzisiaj się opierają, nosi nazwę IEC 61131-3. Niezależnie od tego, czy system sterowania pochodzi od Siemensa S7, Allen-Bradley ControlLogix, sterownika Beckhoff TwinCAT czy PLC Omron, podstawowe zasady programowania są takie same — to jedna z wielkich zalet standardu.

Z pięciu języków na cztery

IEC 61131-3 pierwotnie definiował pięć języków programowania dla sterowników PLC: Diagram Drabinki (LD), Diagram Bloków Funkcji (FBD), Tekst Strukturalny (ST), Sekwencyjny Diagram Funkcji (SFC) i Lista Instrukcji (IL). W 4. wydaniu normy, opublikowanym w maju 2025 r., Lista Instrukcji została usunięta z normy, więc dzisiaj formalnie pozostały cztery. IL był językiem tekstowym niskiego poziomu, który przypominał asembler i który w praktyce został wypierany przez Tekst Strukturalny długo zanim formalnie wyszedł.

  • 01Diagram Drabiny (LD) — logika podobna do przekaźnika z kontaktami i cewkami, łatwa do czytania dla osób z doświadczeniem elektr.
  • 02Diagram Bloków Funkcji (FBD) — logika jest zbudowana z połączonych bloków, odpowiednia do regulacji i przetwarzania sygnałów
  • 03Structured Text (ST) — język tekstowy z pętlami i warunkami, odpowiedni do obliczeń i złożonych algorytmów
  • 04Sequential Function Chart (SFC) — strukturuje program w kroki i przejścia, odpowiedni do sterowania wsadami i sekwencjami

Kiedy się używa czego

W praktyce wiele projektów miesza języki według zadania. Diagram Drabinkowy jest wciąż najczęściej rozpowszechnianym językiem do zwykłej logiki binarnej — start/stop, łańcuchy bezpieczeństwa i proste sekwencje — ponieważ przypomina diagramy przekaźników, na których przedmiot został historycznie zbudowany. Diagram Bloku Funkcyjnego jest często używany do pętli regulacyjnych, gdzie gotowe bloki (np. regulator PID) są połączane. Tekst Ustrukturyzowany zyskuje grunt, gdy muszą być obliczane, sortowane dane lub zbudowana bardziej zaawansowana logika, która jest ciężka do wyrażenia w drabinie. Sekwencyjny Wykres Funkcji jest silny w strukturowaniu ogólnych stanów pracy systemu — np. rozruch, produkcja, czyszczenie i wyłączenie — z których każdy może zawierać logikę drabiny lub ST.

Standaryzacja zapewnia bezpieczeństwo i możliwość śledzenia

Zaletą wspólnego standardu jest to, że kompetencje i programy mogą się przemieszczać między producentami w znacznie większym stopniu. Technik przeszkolony w jednym systemie może się znacznie szybciej zaznajomić z innym, ponieważ podstawowa struktura — zmienne, bloki funkcji, typy danych — jest rozpoznawalna. Organizacja branżowa PLCopen pracuje właśnie nad tą spójnością i za wspólnymi strukturami bibliotek między dostawcami, aby ponowne wykorzystanie logiki było łatwiejsze.

JęzykTypowe zastosowanie
Ladder Diagram (LD)Logika binarna, łańcuchy bezpieczeństwa, start/stop
Function Block Diagram (FBD)Regulacja, przetwarzanie sygnału, liczniki i timery
Structured Text (ST)Obliczenia, obsługa danych, zaawansowana logika
Sekwencyjny schemat funkcyjny (SFC)Tryby pracy, sterowanie sekwencją i partią

Dokumentacja jest częścią programu

Dobrze napisany program to nie tylko taki, który działa — to taki, którą następny technik może zrozumieć bez dzwonienia do ciebie. Chodzi o spójne nazewnictwo zmiennych, komentarze, które wyjaśniają dlaczego (a nie tylko co), zaktualizowane diagramy i wyraźną kontrolę wersji, więc zawsze wiesz, która wersja programu rzeczywiście działa na obiekcie. Cel kompetencji nr 9 w edukacji dotyczy właśnie umiejętności czytania, stosowania i modyfikacji dokumentacji technicznej — umiejętności, która jest równie ważna co samo kodowanie.

Program, którego nie potrafisz zrozumieć za rok, nie jest skończony — tylko sprawiłeś, że dziś działa.