Języki programowania PLC

przez | 27/04/2021

Języki programowania sterowników PLC definiuje norma IEC 61131-3, która została opublikowana w 2013 roku przez Międzynarodową Komisję Elektrotechniczną. Języki programowania ze względu na sposób tworzenia programu zostały podzielone na dwie grupy: graficzne i tekstowe.

Rysunek 1 – Języki programowania sterowników PLC
  • Język LD (ang. Ladder Diagram) – język drabinkowy, który reprezentowany jest głównie przez symbole styków i cewek. Program napisany w tym języku kojarzony jest z odwróconym schematem elektrycznym.
  • Język FBD (ang. Function Block Diagram) – język bloków funkcyjnych, którego budowa przypomina logiczne układy bramkowe. Bloki funkcyjne posiadają wejścia i wyjścia, przez które przepływają sygnały.
  • Język IL (ang. Instruction List) – język listy rozkazów. Swoją składnią język IL przypomina język typu assembler.
  • Język ST (ang. Structured Text) – tekst strukturalny. Składnia języka podobna jest do języka C.
  • Język SFC (ang. Sequential Function Chart) – język sekwencyjny. Jest on mieszanką wszystkich języków, ponieważ główny schemat (graf) sekwencji ma postać graficzną, natomiast warunki przejść (tranzycje) pomiędzy stanami (krokami) oraz zadania (akcje) mogą być zrealizowane w innym języku, np. LD, FBD, ST.

Na rys. 2 przedstawiono przykład realizacji sterowania kombinacyjnego za pomocą języków graficznych i tekstowych.

Rysunek 2 – Porównanie języków graficznych (LD, FBD) i tekstowego (ST)

Na rys. 3 przedstawiono przykładowy program w języku SFC.

Rysunek 3 – Przykład programu w języku SFC

W sumie dostępnych jest 5 różnych języków programowania sterowników PLC. W przypadku prostszych sterowników PLC może okazać się, że producent udostępnia wyłącznie języki graficzne (LD, FBD). W średniozaawansowanych sterownikach dostępne będą języki graficzne (LD, FBD) oraz języki tekstowe (ST). W najbardziej zaawansowanych sterownikach dostępny będzie również język grafu sekwencji (SFC). Dla sterowników PLC programowanych z poziomu środowiska CODESYS dostępne powinny być wszystkie języki graficzne, tekstowe oraz SFC.

Najczęściej zadawanym pytaniem przez początkujących programistów jest pytanie, w którym języku programować sterowniki PLC? Odpowiedź to w każdym, ponieważ każdy z wymienionych języków zalecany jest do innego zadania. Oczywiście w zależności od użytego sterownika możemy być ograniczeni do 1 lub 2 języków. Język IL jest rzadko używanym językiem, ze względu na trudną czytelność, jak to bywa w przypadku języków typu assembler. Poniżej przedstawiam Ci przykładowe zastosowanie dla języków programowania sterowników PLC:

Język LD:

  • sterowanie kombinacyjne,
  • proste, kilkustanowe automaty sekwencyjne,
  • mapowanie wejść i wyjść

Język FBD:

  • wywołanie bloków funkcyjnych użytkownika,
  • monitorowanie działania aplikacji

Język ST:

  • obliczenia matematyczne,
  • wielostanowe automaty sekwencyjne

Język SFC:

  • główny automat maszyny lub procesu

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *