During the development of an ECC, it may be in an intermediate state which, if compiled, could produce behaviors that would be contrary to the design intent and may even lead to failure of the control system with accompanying damage or unsafe operation of the controlled machine or process. The FBDK provides several validation tools to help you avoid the compilation of such invalid ECCs:
- The EC Transition dialog automatically prevents the creation of EC transitions that may cause self-cycles or guard-only cycles in the ECC.
- The EC State dialog automatically prevents the accidental creation of a transient EC state from an existing unconnected EC state by giving it the name of an event input that is already in use in an EC transition condition.
- The popup menu of the ECC editor
provides a Validate item, which can detect the following
invalid topologies as shown in Figures 1 and 2 below:
- Unreachable EC states ("orphan states"), i.e., states that are not transient EC states, and to which a path cannot be found from the EC initial state by following the directed links defined by the EC transitions.
- Terminal EC states ("dead end states"), i.e., states that are reachable, but which do not have any outgoing EC transitions.
- Unused event inputs, i.e., event inputs of the FB type containing the ECC that are not used in any EC transitions.
- Unused event outputs, i.e., event outputs of the FB type containing the ECC that are not used in any EC actions.