Developing Automated Software Testing Processes for Critical PLCBased Control Systems at CERN
Niinimäki, Walter (2024)
Niinimäki, Walter
2024
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202405079826
https://urn.fi/URN:NBN:fi:amk-202405079826
Tiivistelmä
Tämä opinnäytetyö dokumentoi vuoden mittaisen työn teollisen automaation automatisoitujen ohjelmistotestausprosessien kehittämisessä CERNin SY-EPC-CCSosastolla. Osaston vastuulla olevat automaatiojärjestelmät on toteutettu Siemens S7-1500 PLC:illä käyttäen CERNin yleistä automaatiosovelluskehikkoa UNICOSia. Automatisoituun ohjelmistotestaukseen ja sen eri prosesseihin käytetään osaston sisäistä Python-pohjaista testauskirjostua nimeltään Pypowerplc, jolla voidaan luoda kokonaisia CI-putkia UNICOS-pohjaisia automaatiosovelluksia varten.
Päätavoitteena oli kehittää automatisoitu ohjelmistotestausputki Super Proton Synchrotronin Päävirtalähteiden ohjaus- ja Lukitusjärjestelmälle (SPS CIS), joka on vastuussa noin 151 MW huipputehon virransyöttöjärjestelmän ohjauksesta. Koska Pypowerplc oli alun perin kehitetty toimimaan rajoitetussa kontekstissa, piti testaustyökalu refaktoroida ennen kuin pääprojektia voitiin aloittaa.
Pypowerplc:n refaktoroinnin jälkeen SPS CIS:n SMD- ja Master-automaatiosovelluksille kehitettiin erilliset testausputket. PLC-pohjaisten hajautettujen ohjausjärjestelmien järjestelmätestausta tutkittiin Mini-CIS-simulaattorin avulla. Myös automatisoituja käyttönottotestejä varten tehtiin pienimuotoinen pilottiprojekti, jossa kehitettiin testiskriptejä käyttöönoton tueksi. Automatisoidut käyttöönottotestit suoritettiin osana 2023-2024 loppuvuoden huoltoseisokkia, ja hyvien tulosten seurauksena lisäresursseja varattiin konseptin jatkokehitystä varten.
Parannettujen ohjelmistotestausprosessien myötä löydettiin useita ohjelmointivirheitä niin PLC-ohjaussovelluksista kuin myös UNICOSista. Projektin seurauksena ohjausjärjestelmien luotettavuus ja saatavuus paranivat.
Päätavoitteena oli kehittää automatisoitu ohjelmistotestausputki Super Proton Synchrotronin Päävirtalähteiden ohjaus- ja Lukitusjärjestelmälle (SPS CIS), joka on vastuussa noin 151 MW huipputehon virransyöttöjärjestelmän ohjauksesta. Koska Pypowerplc oli alun perin kehitetty toimimaan rajoitetussa kontekstissa, piti testaustyökalu refaktoroida ennen kuin pääprojektia voitiin aloittaa.
Pypowerplc:n refaktoroinnin jälkeen SPS CIS:n SMD- ja Master-automaatiosovelluksille kehitettiin erilliset testausputket. PLC-pohjaisten hajautettujen ohjausjärjestelmien järjestelmätestausta tutkittiin Mini-CIS-simulaattorin avulla. Myös automatisoituja käyttönottotestejä varten tehtiin pienimuotoinen pilottiprojekti, jossa kehitettiin testiskriptejä käyttöönoton tueksi. Automatisoidut käyttöönottotestit suoritettiin osana 2023-2024 loppuvuoden huoltoseisokkia, ja hyvien tulosten seurauksena lisäresursseja varattiin konseptin jatkokehitystä varten.
Parannettujen ohjelmistotestausprosessien myötä löydettiin useita ohjelmointivirheitä niin PLC-ohjaussovelluksista kuin myös UNICOSista. Projektin seurauksena ohjausjärjestelmien luotettavuus ja saatavuus paranivat.