Research Article
BibTex RIS Cite

Bilinmeyen PLC Programının Makine Öğrenmesi Yöntemleriyle Taklit Edilmesi

Year 2023, Volume: 15 Issue: 3, 257 - 269, 31.12.2023
https://doi.org/10.29137/umagd.1364512

Abstract

Programlanabilir Mantık Denetleyiciler (PLC) uzun yıllardır endüstrinin hemen her alanında kullanılmaktadır. Kullanılan bu PLC’ lerin eskimesi, bozulması veya şifreyle korunması gibi durumlarda PLC programlarının yedeklenmesi mümkün olmamaktadır. Herhangi bir arıza sonucu PLC programının silinmesi durumunda veya PLC' nin yenilenmesi ihtiyacı oluştuğunda programın yeniden yazılması gerekir. Böyle bir durumunda sistemin çalışma adımlarının detaylı bir şekilde bilinmesi gerekir ve program yazılması esnasında atlanacak bir adım sistemin tamamında çok büyük problemlere sebep olabilir. Bu çalışmada, çeşitli makine öğrenmesi algoritmaları kullanılarak PLC içerisinde çalışan ve bilinmeyen bir programın çalışma adımlarının taklit edilmesi işlemi yapılmıştır. Bunun için ilk olarak bir veri günlüğü oluşturularak PLC’ nin giriş ve çıkış bilgileri kaydedilmiştir. Daha sonra bu giriş-çıkış verileri Makine Öğrenmesi algoritmaları ile eğitilmiştir. Eğitilen bu algoritmaların giriş veri setine karşılık verdiği çıktıları, PLC çıkışlarıyla paralel olarak izlenmiştir. Makine öğrenmesi algoritması olarak karar ağacı, k-en yakın komşu ve rastgele orman algoritmaları kullanılmıştır. Algoritmaların performans ölçüm metriği olarak doğruluk puanı (accuracy score) kullanılmıştır. Yapılan çalışmalar sonunda Rastgele Orman algoritmasının daha iyi sonuç verdiği gözlemlenmiştir.

References

  • Barthelmey, A., Störkle, D., Kuhlenkötter, B., & Deuse, J. (2014). Cyber physical systems for life cycle continuous technical documentation of manufacturing facilities. Procedia Cirp, 17, 207-211.
  • Bayindir, R., & Cetinceviz, Y. (2011). A water pumping control system with a programmable logic controller (PLC) and industrial wireless modules for industrial plants—An experimental setup. ISA transactions, 50(2), 321-328.
  • Bolton, W. (2015). Programmable logic controllers. Newnes.
  • Brodley, C. E., & Utgoff, P. E. (1995). Multivariate decision trees. Machine learning, 19(1), 45-77.
  • Brusso, B. C. (2018). 50 Years of Industrial Automation [History]. IEEE Industry Applications Magazine, 24(4), 8-11.
  • Carayol, A., & Nicaud, C. (2012). Distribution of the number of accessible states in a random deterministic automaton. In STACS'12 (29th Symposium on Theoretical Aspects of Computer Science) (Vol. 14, pp. 194-205). LIPIcs.
  • Charbuty, B., & Abdulazeez, A. (2021). Classification based on decision tree algorithm for machine learning. Journal of Applied Science and Technology Trends, 2(01), 20-28.
  • de MBA Dib, L., Fernandes, V., Filomeno, M. D. L., & Ribeiro, M. V. (2017). Hybrid PLC/wireless communication for smart grids and internet of things applications. IEEE internet of things Journal, 5(2), 655-667.
  • Erickson, K. T. (1996). Programmable logic controllers. IEEE potentials, 15(1), 14-17.
  • Glavaš, M., Krčmar, I., & Marić, P. (2021, March). Modelling of a sequential system. In 2021 20th International Symposium Infoteh-Jahorına (INFOTEH) (pp. 1-6). IEEE.
  • Guasch, A., Quevedo, J., & Milne, R. (2000). Fault diagnosis for gas turbines based on the control system. Engineering Applications of Artificial Intelligence, 13(4), 477-484.
  • Hulstaert, L., (2019). Black-box vs. white-box models. https://towardsdatascience.com/machine-learning-interpretability-techniques-662c723454f3
  • IBM, What is a Decision Tree?, https://www.ibm.com/topics/decision-trees.
  • Kaid, H., Al-Ahmari, A., Nasr, E. A., Al-Shayea, A., Kamrani, A. K., Noman, M. A., & Mahmoud, H. A. (2020). Petri net model based on neural network for deadlock control and fault detection and treatment in automated manufacturing systems. IEEE Access, 8, 103219-103235.
  • Lee, J. I., Chun, S. W., & Kang, S. J. (2002). Virtual prototyping of PLC-based embedded system using object model of target and behavior model by converting RLL-to-statechart directly. Journal of systems architecture, 48(1-3), 17-35.
  • Liu, J., & Darabi, H. (2002, October). Ladder logic implementation of Ramadge-Wonham supervisory controller. In Sixth International Workshop on Discrete Event Systems, 2002. Proceedings. (pp. 383-389). IEEE.
  • Lobov, A., Lastra, J. L. M., Tuokko, R., & Vyatkin, V. (2003). Methodology for modeling visual flowchart control programs using net condition/event systems formalism in distributed environments. In EFTA 2003. 2003 IEEE Conference on Emerging Technologies and Factory Automation. Proceedings (Cat. No. 03TH8696) (Vol. 2, pp. 329-336). IEEE.
  • Marzena Dobosz, (2020). The Role of PLCs in Industrial IoT. (https://knowhow.distrelec.com/automation/the-role-of-plcs-in-industrial-iot/).
  • Otto, H. P., & Rath, G. (1996). State Diagrams A New Programming Method for Programmable Logic Controllers. In Software Engineering for Manufacturing Systems (pp. 27-37). Springer, Boston, MA.
  • Özerdem, Ö. C. (2016). Design of two experimental setups for programmable logic controller (PLC) laboratory. International Journal of Electrical Engineering Education, 53(4), 331-340.
  • Rullan, A. (1997). Programmable logic controllers versus personal computers for process control. Computers & industrial engineering, 33(1-2), 421-424.
  • Silva, B. G., & De Sousa, M. (2016, September). Internal inconsistencies in the third edition of the IEC 61131-3 international standard. In 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA) (pp. 1-4). IEEE.
  • Soliman, D., Thramboulidis, K., & Frey, G. (2012). Transformation of function block diagrams to Uppaal timed automata for the verification of safety applications. Annual Reviews in Control, 36(2), 338-345.
  • Sönmez, M., Nil, M., & Kandilli, U. İ. (2005). Üç serbest dereceli endüstriyel bir robotun yapay sinir ağları İle denetimi
  • Wan, J., Tang, S., Shu, Z., Li, D., Wang, S., Imran, M., & Vasilakos, A. V. (2016). Software-defined industrial internet of things in the context of industry 4.0. IEEE Sensors Journal, 16(20), 7373-7380.
  • Zimmerman, G. P. (2008). Programmable logic controllers and ladder logic. Rapid City: Dr. Alfred R. Boysen, Department of Humanities, South Dakota School of Mines and Technology.

Imitating of an Unknown PLC Program with Machine Learning Methods

Year 2023, Volume: 15 Issue: 3, 257 - 269, 31.12.2023
https://doi.org/10.29137/umagd.1364512

Abstract

Programmable Logic Controllers (PLC) have been used in almost every field of industry for many years. It is not possible to back up PLC programs in cases such as aging, deterioration or password protection of these PLCs. If the PLC program is deleted as a result of any malfunction or when the PLC needs to be replaced, the program must be rewritten. In such a case, the working steps of the system must be known in detail, and a step that is skipped during the writing of the program can cause major problems in the entire system. In this study, various machine learning algorithms are used to imitate the execution steps of an unknown program running in a PLC. For this purpose, a data log was first created and the input and output information of the PLC was recorded. Then, these input-output data were trained with Machine Learning algorithms. The outputs of these trained algorithms in response to the input data set were monitored in parallel with the PLC outputs. Decision tree, k-nearest neighbor and random forest algorithms were used as machine learning algorithms. Accuracy score was used as the performance measurement metric of the algorithms. At the end of the studies, it was observed that the Random Forest algorithm gave better results than the Machine Learning algorithms.

References

  • Barthelmey, A., Störkle, D., Kuhlenkötter, B., & Deuse, J. (2014). Cyber physical systems for life cycle continuous technical documentation of manufacturing facilities. Procedia Cirp, 17, 207-211.
  • Bayindir, R., & Cetinceviz, Y. (2011). A water pumping control system with a programmable logic controller (PLC) and industrial wireless modules for industrial plants—An experimental setup. ISA transactions, 50(2), 321-328.
  • Bolton, W. (2015). Programmable logic controllers. Newnes.
  • Brodley, C. E., & Utgoff, P. E. (1995). Multivariate decision trees. Machine learning, 19(1), 45-77.
  • Brusso, B. C. (2018). 50 Years of Industrial Automation [History]. IEEE Industry Applications Magazine, 24(4), 8-11.
  • Carayol, A., & Nicaud, C. (2012). Distribution of the number of accessible states in a random deterministic automaton. In STACS'12 (29th Symposium on Theoretical Aspects of Computer Science) (Vol. 14, pp. 194-205). LIPIcs.
  • Charbuty, B., & Abdulazeez, A. (2021). Classification based on decision tree algorithm for machine learning. Journal of Applied Science and Technology Trends, 2(01), 20-28.
  • de MBA Dib, L., Fernandes, V., Filomeno, M. D. L., & Ribeiro, M. V. (2017). Hybrid PLC/wireless communication for smart grids and internet of things applications. IEEE internet of things Journal, 5(2), 655-667.
  • Erickson, K. T. (1996). Programmable logic controllers. IEEE potentials, 15(1), 14-17.
  • Glavaš, M., Krčmar, I., & Marić, P. (2021, March). Modelling of a sequential system. In 2021 20th International Symposium Infoteh-Jahorına (INFOTEH) (pp. 1-6). IEEE.
  • Guasch, A., Quevedo, J., & Milne, R. (2000). Fault diagnosis for gas turbines based on the control system. Engineering Applications of Artificial Intelligence, 13(4), 477-484.
  • Hulstaert, L., (2019). Black-box vs. white-box models. https://towardsdatascience.com/machine-learning-interpretability-techniques-662c723454f3
  • IBM, What is a Decision Tree?, https://www.ibm.com/topics/decision-trees.
  • Kaid, H., Al-Ahmari, A., Nasr, E. A., Al-Shayea, A., Kamrani, A. K., Noman, M. A., & Mahmoud, H. A. (2020). Petri net model based on neural network for deadlock control and fault detection and treatment in automated manufacturing systems. IEEE Access, 8, 103219-103235.
  • Lee, J. I., Chun, S. W., & Kang, S. J. (2002). Virtual prototyping of PLC-based embedded system using object model of target and behavior model by converting RLL-to-statechart directly. Journal of systems architecture, 48(1-3), 17-35.
  • Liu, J., & Darabi, H. (2002, October). Ladder logic implementation of Ramadge-Wonham supervisory controller. In Sixth International Workshop on Discrete Event Systems, 2002. Proceedings. (pp. 383-389). IEEE.
  • Lobov, A., Lastra, J. L. M., Tuokko, R., & Vyatkin, V. (2003). Methodology for modeling visual flowchart control programs using net condition/event systems formalism in distributed environments. In EFTA 2003. 2003 IEEE Conference on Emerging Technologies and Factory Automation. Proceedings (Cat. No. 03TH8696) (Vol. 2, pp. 329-336). IEEE.
  • Marzena Dobosz, (2020). The Role of PLCs in Industrial IoT. (https://knowhow.distrelec.com/automation/the-role-of-plcs-in-industrial-iot/).
  • Otto, H. P., & Rath, G. (1996). State Diagrams A New Programming Method for Programmable Logic Controllers. In Software Engineering for Manufacturing Systems (pp. 27-37). Springer, Boston, MA.
  • Özerdem, Ö. C. (2016). Design of two experimental setups for programmable logic controller (PLC) laboratory. International Journal of Electrical Engineering Education, 53(4), 331-340.
  • Rullan, A. (1997). Programmable logic controllers versus personal computers for process control. Computers & industrial engineering, 33(1-2), 421-424.
  • Silva, B. G., & De Sousa, M. (2016, September). Internal inconsistencies in the third edition of the IEC 61131-3 international standard. In 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA) (pp. 1-4). IEEE.
  • Soliman, D., Thramboulidis, K., & Frey, G. (2012). Transformation of function block diagrams to Uppaal timed automata for the verification of safety applications. Annual Reviews in Control, 36(2), 338-345.
  • Sönmez, M., Nil, M., & Kandilli, U. İ. (2005). Üç serbest dereceli endüstriyel bir robotun yapay sinir ağları İle denetimi
  • Wan, J., Tang, S., Shu, Z., Li, D., Wang, S., Imran, M., & Vasilakos, A. V. (2016). Software-defined industrial internet of things in the context of industry 4.0. IEEE Sensors Journal, 16(20), 7373-7380.
  • Zimmerman, G. P. (2008). Programmable logic controllers and ladder logic. Rapid City: Dr. Alfred R. Boysen, Department of Humanities, South Dakota School of Mines and Technology.
There are 26 citations in total.

Details

Primary Language Turkish
Subjects Electronic Instrumentation
Journal Section Articles
Authors

Faruk Ulamış 0000-0002-7863-755X

Yasin Yüce 0000-0003-4738-7057

Bülent Cesur 0009-0001-6166-0745

Publication Date December 31, 2023
Submission Date September 22, 2023
Published in Issue Year 2023 Volume: 15 Issue: 3

Cite

APA Ulamış, F., Yüce, Y., & Cesur, B. (2023). Bilinmeyen PLC Programının Makine Öğrenmesi Yöntemleriyle Taklit Edilmesi. International Journal of Engineering Research and Development, 15(3), 257-269. https://doi.org/10.29137/umagd.1364512

All Rights Reserved. Kırıkkale University, Faculty of Engineering and Natural Science.