Verifying Correctness of PLC Software during System Evolution using Model Containment Approach

📅 2025-09-06
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Verifying functional correctness after PLC software upgrades remains challenging. To address this, this paper proposes a model-inclusion-based verification method: sequential function charts (SFCs) of both legacy and upgraded PLC programs are automatically translated into Petri net models, followed by rigorous inclusion checking via symbolic path equivalence theory. The key contribution is a novel, efficient symbolic path equivalence decision algorithm, enabling the development of a lightweight, custom Petri net inclusion checker. Evaluated on 80 real-world industrial benchmarks from the OSCAT library, the approach demonstrates strong scalability and high precision. Compared to the state-of-the-art tool verifAPS, it achieves an average 3.9× speedup while maintaining soundness and completeness. This significantly enhances the automation level and practical applicability of PLC upgrade verification.

Technology Category

Application Category

📝 Abstract
Upgradation of Programmable Logic Controller (PLC) software is quite common to accommodate evolving industrial requirements. Verifying the correctness of such upgrades remains a significant challenge. In this paper, we propose a verification-based approach to ensure the correctness of the existing functionality in the upgraded version of a PLC software. The method converts the older and the newer versions of the sequential function chart (SFC) into two Petri net models. We then verify whether one model is contained within another, based on a novel containment checking algorithm grounded in symbolic path equivalence. For this purpose, we have developed a home-grown Petri net-based containment checker. Experimental evaluation on 80 real-world benchmarks from the OSCAT library highlights the scalability and effectiveness of the framework. We have compared our approach with verifAPS, a popular tool used for software upgradation, and observed nearly 4x performance improvement.
Problem

Research questions and friction points this paper is trying to address.

Verifying correctness of PLC software upgrades during system evolution
Ensuring existing functionality is preserved in upgraded PLC versions
Checking model containment between old and new software versions
Innovation

Methods, ideas, or system contributions that make the work stand out.

Model containment approach for PLC verification
Converts SFC to Petri nets for comparison
Symbolic path equivalence algorithm for containment checking
🔎 Similar Papers
No similar papers found.