Wykres funkcji sekwencyjnych - Sequential function chart

Sekwencyjny schemat funkcji ( SFC ) to graficzny język programowania używany w programowalnych sterownikach logicznych (PLC). Jest to jeden z pięciu języków zdefiniowanych w normie IEC 61131-3 . Standard SFC definiuje się jako przygotowanie wykresów funkcji dla systemów sterowania i został oparty na GRAFCET (sam w sobie oparty na binarnych sieciach Petriego ).

Może być używany do programowania procesów, które można podzielić na etapy.

Basic Batch SFC, z oznaczonymi ważnymi elementami

Główne składniki SFC to:

  • Kroki z powiązanymi działaniami;
  • Przejścia z powiązanymi warunkami logicznymi;
  • Ukierunkowane powiązania między krokami i przejściami.

Kroki na diagramie SFC mogą być aktywne lub nieaktywne. Akcje są wykonywane tylko dla aktywnych kroków. Krok może być aktywny z jednego z dwóch powodów:

  • Jest to pierwszy krok określony przez programistę.
  • Został aktywowany podczas cyklu skanowania i od tego czasu nie został dezaktywowany.

Kroki są aktywowane, gdy wszystkie kroki powyżej są aktywne, a przejście łączące jest nadające się do nadawania (tj. Powiązany z nim warunek jest prawdziwy). Po przejściu przejścia wszystkie powyższe kroki są dezaktywowane od razu i po tym, jak wszystkie poniższe kroki są aktywowane od razu.

Działania związane z krokami mogą być kilku typów, z których najważniejsze to: ciągłe (N), ustawianie (S) i resetowanie (R). Oprócz oczywistego znaczenia Ustaw i Resetuj, akcja N zapewnia, że ​​zmienna docelowa jest ustawiona na 1, o ile krok jest aktywny. Reguła SFC stwierdza, że ​​jeśli dwa kroki mają akcję N na tym samym celu, zmienna nie może nigdy zostać zresetowana do 0. Możliwe jest również wstawienie akcji LD (schematu drabinkowego ) do programu SFC (i jest to standardowy sposób, na przykład do pracy ze zmiennymi całkowitymi).

SFC jest z natury językiem równoległym pod tym względem, że wiele przepływów sterowania - jednostek organizacyjnych programu (POU) w języku standardu - może być aktywnych jednocześnie.

Niestandardowe rozszerzenia języka obejmują makra akcji, tj. Akcje wewnątrz jednostki programu, które wpływają na stan innej jednostki programu. Najbardziej istotną taką makroakcją jest „wymuszanie”, w którym POU może decydować o aktywnych krokach innego POU.

Zobacz też

Bibliografia

Linki zewnętrzne

  • Darmowe szablony SFC / GRAFCET dla Microsoft Visio ( link )
  • Rockwell Automation, Allen-Bradley. Wykresy funkcji sekwencyjnych ( [1] )