Cykliczne harmonogramowanie zadań obliczeniowych i komunikacyjnych w systemach automatyki

pol Artykuł w języku polskim DOI: 10.14313/PAR_260/5

Andrzej Bożek , wyślij Dariusz Rzońca Politechnika Rzeszowska, Katedra Informatyki i Automatyki, ul. W. Pola 2, 35-021 Rzeszów

Pobierz Artykuł

Streszczenie

W pracy formułowany i rozwiązywany jest problem wyznaczania optymalnego harmonogramu cyklicznego, który przydziela zadania obliczeniowe do poszczególnych wątków wielowątkowego sterownika przemysłowego, z uwzględnieniem komunikacji z pozostałymi sterownikami tworzącymi system rozproszony, tak aby zminimalizować wynikowy czas cyklu. Przedstawiono formalny opis problemu oraz jego reprezentację grafową, a także zaproponowano metodę optymalizacji opartą na programowaniu z ograniczeniami. Przeprowadzone eksperymenty obliczeniowe wskazują na potencjał praktycznego zastosowania proponowanego podejścia.

Słowa kluczowe

harmonogram cykliczny, komunikacja, optymalizacja zasobów, programowanie z ograniczeniami, sterownik przemysłowy

Cyclic Scheduling of Computational and Communication Tasks in Automation Systems

Abstract

The paper investigates the problem of constructing a cyclic schedule that assigns computational tasks to individual threads of a multithreaded industrial controller, while explicitly incorporating communication with other controllers in the distributed system, with the objective of minimizing the resulting cycle time. A formal problem definition and its graph-based representation are presented, and an optimization approach based on a constraint programming is proposed. The computational experiments demonstrate the potential for practical application.

Keywords

communication, constraint programming, cyclic scheduling, industrial controller, resource optimization

Bibliografia

  1. Kwiecień A., Analiza przepływu informacji w komputerowych sieciach przemysłowych, „Studia Informatica”, Vol. 23, No. 1(47), 2002.
  2. Rzońca D., Sadolewski J., Stec A., Świder Z., Trybus B., Trybus L., Implementacja środowiska inżynierskiego na przykładzie pakietu CPDev, „Pomiary Automatyka Robotyka”, R. 24, Nr 1, 2020, 21–28, DOI: 10.14313/PAR_235/21.
  3. Rzońca D., Sadolewski J., Stec A., Świder Z., Trybus B., Trybus L., CPDev engineering environment for control programming, [In:] Trends in Advanced Intelligent Control, Optimization and Automation, AISC, Vol. 577, 2017, 303–314, DOI: 10.1007/978-3-319-60699-6_29.
  4. Trybus B., Development and Implementation of IEC 61131-3 Virtual Machine, “Theoretical and Applied Informatics”, Vol. 23, No. 1, 2011, 21–35, DOI: 10.2478/v10179-011-0002-z.
  5. Sadolewski J., Trybus B., Compiler and virtual machine of a multiplatform control environment, “Bulletin of the Polish Academy of Sciences Technical Sciences”, Vol. 70, No. 2, 2022, DOI: 10.24425/bpasts.2022.140554.
  6. Lyu G., Brennan R.W., Towards IEC 61499-Based Distributed Intelligent Automation: A Literature Review, “IEEE Transactions on Industrial Informatics”, Vol. 17, No. 4, 2021, 2295–2306, DOI: 10.1109/TII.2020.3016990.
  7. Ashiwal V., Miguel-Escrig O., Wiesmayr B., Zoitl A., Romero-Pérez J.-A., Identification and Evaluation of Pitfalls in the Migration From IEC 61131-3 to IEC 61499: A Review, “IEEE Open Journal of the Industrial Electronics Society”, Vol. 6, 2025, 575–590, DOI: 10.1109/OJIES.2025.3558685.
  8. Milik A., Chmiel M., Hrynkiewicz E., Multiple core PLC CPU with tight thread synchronization, [In:] International Conference on Signals and Electronic Systems (ICSES), 2016, 253–258, DOI: 10.1109/ICSES.2016.7593861.
  9. Hajduk Z., Trybus B., Sadolewski J., Architecture of FPGA Embedded Multiprocessor Programmable Controller, “IEEE Transactions on Industrial Electronics”, Vol. 62, No. 5, 2015, 2952–2961, DOI: 10.1109/TIE.2014.2362888.
  10. Hajduk Z., IEC61131-3 Instruction List Language Processor for FPGAs, “Electronics”, Vol. 12, No. 19, 2023, DOI: 10.3390/electronics12194052.
  11. Milik A., Hrynkiewicz E., Distributed PLC Based on Multicore CPUs – Architecture and Programming, “IFAC-PapersOnLine”, Vol. 49, No. 25, 2016, DOI: 10.1016/j.ifacol.2016.12.001.
  12. Canedo A., Al-Faruque M.A., Towards parallel execution of IEC 61131 industrial cyber-physical systems applications, [In:] Design, Automation & Test in Europe Conference & Exhibition (DATE), 2012, 554–557, DOI: 10.1109/DATE.2012.6176530.
  13. Specht F., Flatt H., Eickmeyer J., Niggemann O., Exploiting multicore processors in PLCs using libraries for IEC 61131-3, [In:] IEEE 20th Conference on Emerging Technologies & Factory Automation (ETFA), 2015, DOI: 10.1109/ETFA.2015.7301422.
  14. Hubacz M., Trybus B., Dual-Core PLC for Cooperating Projects with Software Implementation, “Electronics”, Vol. 12, No. 23, 2023, DOI: 10.3390/electronics12234730.
  15. Hubacz M., Sadolewski J., Trybus B., Model i implementacja dwurdzeniowego sterownika programowalnego opartego na maszynie wirtualnej, „Pomiary Automatyka Robotyka”, R. 28, Nr 3, 2024, 93-99, DOI: 10.14313/PAR_253/93.
  16. Thomesse J., Fieldbus Technology in Industrial Automation, “Proceedings of the IEEE”, Vol. 93, No. 6, 2005, 1073–1101, DOI: 10.1109/JPROC.2005.849724.
  17. Scanzio S., Wisniewski L., Gaj P., Heterogeneous and dependable networks in industry – A survey, “Computers in Industry”, Vol. 125, 2021, DOI: 10.1016/j.compind.2020.103388.
  18. Kwiecień R., Komputerowe systemy automatyki przemysłowej, Helion, 2012.
  19. Stój J., Wybrane zagadnienia sieci komunikacyjnych w przemysłowych systemach komputerowych, Wydawnictwo Politechniki Śląskiej, 2023.
  20. Dorota D., Smutnicki C., A boundle of on-line algorithms for scheduling computational tasks, “International Journal of Electronics and Telecommunication”, Vol. 71, No. 2, 2025, 397–402, DOI: 10.24425-ijet.2025.153585.
  21. Smutnicki C., A New Approach for Cyclic Manufacturing, [In:] IEEE 22nd International Conference on Intelligent Engineering Systems (INES), 2018, 275–280, DOI: 10.1109/INES.2018.8523903.
  22. Perron L., Didier F., Gay S., The CP-SAT-LP Solver, [In:] 29th International Conference on Principles and Practice of Constraint Programming (CP 2023), Vol. 280 of Leibniz International Proceedings in Informatics (LIPIcs), 2023, DOI: 10.4230/LIPIcs.CP.2023.3.