Sequential Function Chart

Z Wikipedii, wolnej encyklopedii

Sequential Function Chart (SFC) („Sekwencyjny Schemat Funkcjonalny”; niem. Ablaufsprache (AS) – „sekwencyjny język”) – wizualny język programowania dla sterowników PLC. Jest jednym z pięciu języków normy IEC 61131-3. SFC jest rozwinięciem języka GRAFCET i opiera się na strukturze sieci Petriego. W pakiecie STEP7 koncernu Siemens język ten występuje pod nazwą S7-GRAPH.

Program w SFC składa się z kroków, do których są przypisane akcje, oraz przejść, łączących kroki. Do przejść są przypisane warunki logiczne. Przejście SFC może mieć jeden lub więcej kroków wejściowych oraz jeden lub więcej kroków wyjściowych. W trakcie wykonania programu każdy krok może być aktywny lub nieaktywny. Jeden lub więcej kroków (kroki inicjujące) są aktywowane przy rozpoczęciu wykonania programu. Kilka kroków może być aktywnych jednocześnie, dzięki czemu SFC pozwala opisywać algorytmy równoległe sterowania logicznego. Jeśli wszystkie kroki wejściowe danego przejścia są aktywne oraz przypisany do niego warunek jest spełniony, wówczas wszystkie kroki wejściowe przestają być aktywne, a wszystkie kroki wyjściowe tego przejścia stają się aktywne. Akcje, przypisane do kroków, mogą być opisane jako proste operacje na zmiennych logicznych albo jako podprogramy, wyrażone w języku SFC, ST lub innych językach normy IEC 61131-3. Do akcji są przypisane kwalifikatory działań, które określają sposób, w jaki akcja będzie wykonywana – ona może być m.in. wykonana jednokrotnie przy aktywizacji kroku, cyklicznie dopóki odpowiedni krok jest aktywny, lub z opóźnieniem.

Czasami SFC jest rozumiany nie jako osobny język programowania, a jako sposób organizacji programów, napisanych w innych językach; tak, według sformułowania Polskiego Komitetu Normalizacyjnego, SFC to „zbiór elementów graficznych i równoważnych im elementów tekstowych ... zdefiniowany w celu utworzenia wewnętrznej organizacji programów i bloków funkcyjnych sterownika programowalnego”[1].

Do programowania sterowników SIMATIC są stosowane dwie wersje języka SFC, opracowane przez firmę Siemens. Są to wyżej wymieniony S7-GRAPH, stosowany do programowania sterowników SIMATIC S7-300 i S7-400, oraz wersja wykorzystywana w systemie programowania dla SIMATIC PCS 7. SFC jest szeroko stosowany w systemach SCADA.

Na wykorzystanie języka SFC pozwala szereg środowisk programistycznych dla przemysłowych sterowników, takich jak CODESYS lub ISaGRAF.

Przypisy[edytuj | edytuj kod]

  1. PN-EN 61131-3:2013-10 – wersja angielska. [dostęp 2014-05-27]. [zarchiwizowane z tego adresu (2014-05-27)].

Bibliografia[edytuj | edytuj kod]