[en] The manufacturing industry has entered a new era of highly changeable customer requirements and tailor-made products. To meet market demands, manufacturing systems need to be redefined to be able to cost-effectively produce a wide variety of products. Sustainability is key in this endeavour, maximising the utilisation of all available resources to address new bills of processes. To achieve this, however, the development of new capabilities are imperative to seamlessly adapt the manufacturing sector to the new paradigm. At the core of the production system, the Programmable Logic Controller (PLC) orchestrates all necessary resources to initiate new processes, including modifications to the PLC program. For this reason, PLC software must be thoroughly tested after each adaptation, to ensure operational safety. At present, testing is conducted during commissioning, which typically takes place at the end of the development process, resulting in a significant impact in time and cost. In addition, the manual nature of testing practices requires considerable effort, and leaves the PLC open to errors. All these issues are further compounded in frequently changing and adaptive environments, hence the need to adopt new practices. In this research project, therefore, we present an automated and cost-effective methodology to test highly reconfigurable PLC programs in industry. The presented approach is industry oriented, and thus we focus on the transfer of best-practices in software engineering, to the manufacturing environment. To this end, we introduce a theoretical virtual commissioning framework to enhance commissioning practices. Moreover, our approach is based on testing the logic of Functional Block Diagram (FBD) programs, one of the most widely employed PLC programming languages in Europe. Our methodology comprises the generation of the test cases based on the IEC 61131-3 standard, cost-effective test selection of the test cases, and simulation-based testing in commercially used automation solutions (the Siemens TIA portal) with the use of test oracles. The proposal is validated with two real industrial case studies: 1) Omnifactory, which is the future automated aerospace assembly demonstrator, recently launched at the University of Nottingham, and 2) the machine tool manufacturing industry at Danobatgroup. The results demonstrate that by automating conventional practices our methodology can effectively test real industrial PLC programs, which ultimately reduces costs and time, and ensures the reuse of available resources.

[es] La industria manufacturera se está embarcando en una nueva era, impulsada por una demanda sin precedentes y una necesidad de productos hechos a medida. De este modo, los sistemas de fabricación deben redefinirse para poder producir una gran variedad de productos de manera rentable. La sustentabilidad es clave en este proceso, prestando especial atención a la reutilización de los recursos disponibles para abordar nuevos procesos. Sin embargo, para adaptar la industria al nuevo paradigma exitosamente, es necesario el desarrollo de nuevas capacidades impulsados por la digitalización. El controlador lógico programable (PLC) es la unidad central del sistema de producción, y debe de orquestar todos los recursos necesarios para abordar nuevos procesos. Esto implica modificaciones en el programa del PLC. Por lo tanto, el software del PLC requiere un proceso de verificación y validación exhaustivo para garantizar la correcta funcionalidad del sistema. Tradicionalmente, este proceso se lleva a cabo durante la puesta en marcha, donde se testea todo el sistema por primera vez. En general, los sistemas son manualmente testeados durante este proceso, el cual requiere un esfuerzo significativo y que en gran parte esta sujeto a errores. Todos estos problemas se agravan aún más en entornos donde los cambios son frecuentes, y por lo tanto existe la necesidad de adoptar nuevas prácticas. En esta tesis se presenta una metodología automatizada para testear PLCs altamente reconfigurables de una manera eficaz y efectiva en la industria. Primeramente, se ha propuesto un marco teórico donde los gemelos digitales son clave para mejorar las prácticas de la puesta en marcha. De este modo, el trabajo principal de esta tesis se ha centrado en testear la lógica de los programas FBD, uno de los lenguajes de programación de PLC más utilizados en Europa. La metodología cosiste principalmente de tres pasos, 1) generación de los tests basados en el estándar IEC 61131-3, 2) optimización de los tests para seleccionar los más eficaces y efectivos, y 3) testeo de PLCs basado en entornos de simulación comerciales mediante el uso de oráculos. Esta tesis está orientado a la industria y, por lo tanto, la solución expuesta se ha implementado en el entorno TIA Portal de Siemens, transfiriendo las buenas prácticas de ingeniería de software a la industria. De este modo, la propuesta se ha validado con dos casos de estudio industriales reales 1) Omnifactory, el futuro demostrador de ensamblaje aeroespacial automatizado desarrollado en la Universidad de Nottingham, y 2) Industria de fabricación de máquina-herramienta en Danobatgroup. Según los resultados, la metodología presentada es válida para automatizar el testeo de programas PLC industriales eficazmente, lo que en definitiva reduce costes y tiempo, y permite la reutilización de los recursos.