SFC Program Hierarchy
The system enables the description of the vertical structure of SFC programs. SFC programs are organized in a hierarchical-tree structure. Each SFC program can control (start, terminate,...) other SFC programs. Such programs are called children of the SFC program which controls them. SFC programs are linked together into a main hierarchy tree, using a "parent - child" relationship:
Parent
Program
Child
ProgramThe basic rules implied by the hierarchy structure are:
- SFC programs having no parent are called "main" SFC programs
Within a controller, the relative positions of programs within the hierarchy have certain restrictions:
- All SFC programs must be adjacent within the hierarchy.
- SFC Child must use the same language as their parent.
Main SFC programs are activated by the system when the application starts
- A program can have several child programs
- A child of a program can only have one parent
- A child program can only be controlled by its parent
- A program cannot control the children of one of its own children
The basic actions that a parent SFC program can take to control its child program are:
Actions | Description |
---|---|
Start (GSTART) | Starts the child program: activates each of its initial steps. Children of this child program are not automatically started. |
Terminate (GKILL) | Stops the child program by deactivating each of its active steps. All the children of the child program are also stopped. |
Freeze (GFREEZE) | Deactivates each of the active steps of the program, and memorizes them so the program can be restarted. All the children of the child program are also frozen. |
Restart (GRST) | Restarts a frozen SFC program by reactivating all the suspended steps. Children of the program are not automatically restarted. |
Get status (GSTATUS) | Gets the current status (active, inactive or frozen) of a child program. |
Provide Feedback