OOP – nowy wymiar programowania sterowników PLC w e!COCKPIT

29

Najnowsza aktualizacja normy IEC 61131 zawiera standard programowania zorientowanego obiektowego (OOP – object oriented programming). Na bazie nowych wytycznych powstał e!COCKPIT – nowoczesne oprogramowanie do sterowników WAGO.

W dotychczasowych aplikacjach wykorzystywane były techniki programistyczne oparte na strukturalnej budowie programu, co zapewniało przejrzystość oraz łatwą możliwość rozbudowy programu dla sterownika. W nowej aplikacji połączyliśmy technologię programistyczną IT z narzędziem do programowania sterowników przemysłowych PLC. I w ten sposób powstało oprogramowanie inżynierskie  e!COCKPIT. Należy zaznaczyć, że nowa funkcjonalność programowania obiektowego w e!COCKPIT jest opcjonalna, tzn. użytkownik ma możliwość wyboru pomiędzy klasycznym, czyli strukturalnym lub zorientowanym obiektowo programowaniem sterowników PLC.

Teminologia w programowaniu zorientowanym obiektowo w e!COCKPIT

  • Blok funkcyjny jest klasą zawierającą dokładnie jedną metodę. Dzięki rozszerzeniu do funkcjonalności pełnej klasy, metody i interfejsy mogą być implementowane w jednym bloku funkcyjnym.
  • Metody to procedury, które są przypisane do bloku funkcyjnego lub interfejsu. Wykorzystują one dane z bloków funkcyjnych, ale mogą, tak jak funkcje w IEC 61131, posiadać zmienne wejściowe, wyjściowe lub zmienne lokalne.
  • Interfejs to zbiór metod wraz z deklaracją zmiennych niezbędnych do działania tych metod. Ciało metody jest programowane w bloku funkcyjnym (klasie), który implementuje dany interfejs.
  • Obiekty to instancje bloków funkcyjnych (klas)
  • IMPLEMENTS (nowe słowo kluczowe) umożliwia implementację interfejsu przez dany blok funkcyjny. Poprzez to wszystkie metody zadeklarowane w interfejsie muszą być zrealizowane w bloku funkcyjnym.
  • EXTENDS to możliwość dziedziczenia metod i właściwości innego bloku funkcyjnego.

Typowe zastosowania aplikacyjne w automatyce przemysłowej

  • Programowanie różnych napędów za pomocą identycznych funkcjonalności (np. pozycjonowanie, status błędu, najazd na punkt startowy) wykorzystujące interfejsy i metody
  • Programowanie różnych modułów do obsługi maszyn za pomocą identycznych lub podobnych funcjonalności (np. tryb ręczny, tryb automatyczny)
  • Obsługa różnych rodzajów komunikacji (np. start, stop, asynchroniczne wysyłanie wiadomości) za pomocą interfejsów i metod

źródło: https://wagodirect.pl/