SFC Validation Tool for PLC Logic Error Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Sequential Function Chart (SFC) programming techniques face challenges in detecting logic errors, often requiring live execution on programmable logic controllers (PLCs), which can be time-consuming and difficult, especially when infinite loops occur, necessitating system resets.

Innovation Solution

A software validation tool that transforms SFC program components into basic model elements, allowing for simulated execution to validate program validity offline, reducing the need for live PLC execution and facilitating error detection and correction before actual deployment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If SFC programs are validated through live execution on PLC, then program validity can be determined, but debugging time increases significantly and system components must be operational

Engineering Contradiction:
Improveprogram validityVSAvoiddebugging time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by transforming and validating SFC programs offline before actual PLC execution. The system performs syntax validation, semantic validation, and simulation of SFC programs in advance, identifying errors such as infinite loops, unreachable steps, and transition conflicts before deployment. This preliminary validation eliminates the need for time-consuming live debugging on the PLC, significantly reducing debugging time while ensuring program reliability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If SFC programs are validated through live execution on PLC, then program validity can be determined, but system complexity increases as all components must be operational

Engineering Contradiction:
Improveprogram validityVSAvoidsystem requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies copying by creating a virtual model or simulation environment that replicates PLC behavior without requiring actual hardware components. The system transforms SFC programs into an intermediate representation and executes them in a software-based simulator, copying the essential execution logic without needing physical PLCs, I/O devices, or process equipment. This approach validates program correctness while eliminating the complexity of requiring all system components to be operational.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If SFC programs allow flexible loop configurations, then programming versatility increases, but risk of infinite loops and logic errors increases

Engineering Contradiction:
Improveloop configuration flexibilityVSAvoidinfinite loops and logic errors
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies feedback by implementing comprehensive validation mechanisms that analyze SFC program structures and provide immediate feedback on potential errors. The system performs static analysis to detect infinite loops, unreachable steps, and transition conflicts, as well as dynamic simulation to verify program behavior under various conditions. This feedback mechanism allows programmers to maintain flexible loop configurations while automatically identifying and correcting logic errors before execution, preventing harmful infinite loops without restricting programming versatility.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7827022B2Sequential function chart validation tool
Publication Date: 2010.11.02 ROCKWELL AUTOMATION TECH INC
  • US7827022B2 patent drawing
  • US7827022B2 patent drawing
  • US7827022B2 patent drawing

AI summary

Automated program validation components are provided to facilitate software program development for industrial control systems and processes. In one aspect, a simulation tool is provided for an industrial automation system. The simulation tool includes a transform component that receives one or more program chart components as input and outputs a subset of model components for simulation. A simulation component executes the subset of model components in order to validate the program chart components.