Return to search

Enabling Test Automation for Industrial PLC Programs

Testing safety-critical systems, particularly those controlled by Programmable Logic Controllers (PLC), is crucial for ensuring the safe and reliable operation of industrial processes. This thesis addresses the critical need for automated testing of safety-critical PLC systems used in various industrial settings. Despite the significance of testing, current practices rely heavily on manual methods, leading to challenges in scalability and reliability. This work investigates enabling test automation for PLCs to facilitate and assist the current manual testing procedures in the industry. The thesis proposes and evaluates test automation techniques and tools tailored to PLCs, focusing on Function Block Diagram and Structured Text languages commonly used in industry. We systematically compare test automation tools for PLC programs, after which we propose a PLC to Python translation framework called PyLC to facilitate automated test generation. The experiment employing the EARS requirement engineering pattern reveals that while engineers use semi-formal notations in varied ways to create requirements, leading to completeness issues, it confirms the viability of employing EARS requirements for PLC system testing. Subsequently, the proposed automation approaches are fully implemented and evaluated using real-world PLC case studies, comparing their efficiency against manual testing procedures. The findings highlight the feasibility and benefits of automating PLC testing, offering insights into improving development and testing processes through carefully selected automation tools for the CODESYS IDE, a well-known PLC development environment. Additionally, we show that leveraging Python-based automated testing techniques and mutation analysis enhances testing effectiveness. Furthermore, incorporating best practices in requirement engineering, as demonstrated by the EARS approach, contributes to further enhancing testing efficiency and effectiveness in PLC development. / VeriDevOps, SmartDelta

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:mdh-66351
Date January 2024
CreatorsSalari, Mikael Ebrahimi
PublisherMälardalens universitet, Inbyggda system
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeLicentiate thesis, comprehensive summary, info:eu-repo/semantics/masterThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationMälardalen University Press Licentiate Theses, 1651-9256 ; 358

Page generated in 0.0017 seconds