Podręcznik
6. Synteza algorytmu dla systemu mechatronicznego
6.4. Algorytm SFC
Dążenie do ujednolicenia w budowie sterowników PLC, które jak wiadomo począwszy od ich powstania były produkowane przez wiele firm z branży automatyki, oraz dążenie do ujednolicenia zasad programowania tych urządzeń znalazło swoje potwierdzenie w opublikowanej w 1993 roku normie IEC 1131. (O normie tej będzie mowa obszerniej w rozdziale trzecim). W trzecim jej tomie norma ta (w wydaniu europejskim EN 61131) oprócz języków programowania wprowadziła również formalizm dla algorytmu o nazwie SFC (ang. Sequential Function Chart), opartym na poznanym już formalizmie GRAFCET. W tym miejscu podajmy jedynie tę podstawową różnicę, która sprowadza się do tego, iż w przeciwieństwie do algorytmu GRAFCET formalizm SFC w tworzeniu tranzycji pokazuje dokładne warunki i zależności logiczne między nimi zamiast ogólnych warunków tranzycji. Jest to powodem, iż algorytm SFC jest nazywany algorytmem sterowania, w odniesieniu do algorytmu GRAFCET, który jest nazywany algorytmem procesu. Wyjaśnijmy to na przykładzie na rysunku 18.
Rysunek 18: Algorytmy typu PN: a) algorytm GRAFCET: algorytm SFC
W algorytmie GRAFCET (rysunek 18a) w tranzycjach T1 i T2 pod postacią warunków S1 i S2 kryją się uwarunkowania, które w tym algorytmie nie są pokazywane, pomimo tego, że podczas tworzenia programu sterującego dla sterownika PLC w oparciu o ten algorytm są znane. Do analizy sieci programowej tego algorytmu wystarczająca jest wiedza, że przejście od jednego kroku algorytmu do drugiego odbędzie się wtedy, gdy raz spełniony zostanie warunek S1 (co oznaczono jako ON) i następnie S2 (co oznaczono identycznie). Odwrotna sytuacja występuje w grafie algorytmu SFC (rysunek 18b). Tutaj w tranzycjach T1 i T2 pod postacią warunków S1 i S2 kryją się uwarunkowania, które w tym algorytmie są pokazane. Warunek S1 to jednoczesne zadziałanie czujnika CK (CK=1) i niezadziałanie czujnika CP (CP=0), a warunek S2 to alternatywa: albo niezadziałanie czujnika CI (CI=0) albo zadziałanie czujnika P1 (P1=1). Zatem, podczas analizy sieci programowej algorytmu jest wiadomo, jakie czujniki oraz w jaki sposób powinny zadziałać, aby następowało przejście od jednego kroku algorytmu do drugiego. (Dokładne omówienie zasad tworzenia algorytmu SFC zawarto w rozdziale trzecim).