Implementacja środowiska inżynierskiego na przykładzie pakietu CPDev

pol Article in Polish DOI: 10.14313/PAR_235/21

send Dariusz Rzońca , Jan Sadolewski , Andrzej Stec , Zbigniew Świder , Bartosz Trybus , Leszek Trybus Politechnika Rzeszowska, Katedra Informatyki i Automatyki

Download Article

Streszczenie

Norma IEC 61131-3 definiuje pięć języków programowania sterowników przemysłowych. Norma ta jest powszechnie stosowana, wiele środowisk inżynierskich jest z nią całkowicie, bądź częściowo zgodnych. W literaturze opisano kilka akademickich rozwiązań, jednak zazwyczaj implementują one jedynie wybrane elementy normy (np. tylko jeden lub dwa języki). Komercyjne środowiska inżynierskie zwykle obsługują wszystkie języki, ale ich dokumentacja skupia się na korzystaniu ze środowiska, natomiast rzadko ujawniane są szczegóły dotyczące wewnętrznej architektury i implementacji. W artykule przedstawiono takie rozwiązania dla pakietu inżynierskiego CPDev. Architektura bazująca na maszynie wirtualnej sprawia, że środowisko jest przenośne, co ułatwia wdrożenie na różnych platformach sprzętowych. W artykule przedstawiono kilka wdrożeń przemysłowych środowiska CPDev.

Słowa kluczowe

hmi, IEC-61131-3, język pośredni, komunikacja, maszyna wirtualna, środowisko inżynierskie, sterownik przemysłowy, translator

Implementation of Engineering Environment - Case Study: CPDev Package

Abstract

The IEC 61131-3 standard defines five languages, dedicated for programming industrial controllers. The standard is commonly used, there are numerous engineering environments fully or partially compatible with it. Several academic solutions have been described in the literature, but they typically implement only selected parts of the IEC 61131-3 standard (e.g. only one or two languages). On the other hand, commercial engineering environments usually implement all languages, but their documentation focuses on the application of the environment, whereas details about internal architecture and implementation are rarely disclosed. The paper describes such internal details of the CPDev engineering environment. The architecture based on the virtual machine makes the environment portable, thus facilitate implementation on diverse hardware platforms. Several industrial implementations of CPDev are also mentioned.

Keywords

communication, engineering environment, hmi, IEC-61131-3, industrial controller, intermediate language, translator, virtual machine

Bibliography

  1. Vogel-Heuser B., Schütz D., Frank T., Legat C., Model-driven engineering of Manufacturing Automation Software Projects – A SysMLbased approach, “Mechatronics”, Vol. 24, No. 7, 2014, 883–897, DOI: 10.1016/j.mechatronics.2014.05.003.
  2. Thramboulidis K., A cyber–physical system-based approach for industrial automation systems, “Computers in Industry”, Vol. 72, 2015, 92–102, DOI: 10.1016/j.compind.2015.04.006.
  3. IEC 61131-3 - Programmable controllers - Part 3: Programming languages, 2003, 2013.
  4. Hsieh S.-J., Cheng Y.-T., Algorithm and intelligent tutoring system design for programmable controller programming, “The International Journal of Advanced Manufacturing Technology”, Vol. 71, No. 5–8, 2014, 1099–1115, DOI: 10.1007/s00170-013-5539-z.
  5. ISaGRAF Technology, [www.isagraf.com].
  6. COPA-DATA France, Software components for industrial control, [www.straton-plc.com].
  7. Rzońca D., Sadolewski J., Stec A., Świder Z., Trybus B., Trybus L., Mini-DCS system programming in IEC 61131-3 Structured Text, “Journal of Automation, Mobile Robotics and Intelligent Systems”, Vol. 2, No. 3, 2008, 48–54.
  8. Cisek J., Mikluszka W., Świder Z., Trybus L., A Low-Cost DCS with Multifunction Instruments and CAN Bus, “IFAC Proceedings Volumes”, Vol. 34, No. 29, 2001, 64–69, DOI: 10.1016/S1474-6670(17)32794-5.
  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. Jamro M., Rzońca D., Rząsa W., Testing communication tasks in distributed control systems with SysML and Timed Colored Petri Nets model, “Computers in Industry”, Vol. 71, 2015, 77–87, DOI: 10.1016/j.compind.2015.03.007.
  11. Jamro M., POU-Oriented Unit Testing of IEC 61131-3 Control Software, “IEEE Transactions on Industrial Informatics”, Vol. 11, No. 5, 2015, 1119–1129, DOI: 10.1109/TII.2015.2469257.
  12. B. Venners, Inside the Java Virtual Machine. New York: McGraw-Hill Inc., 1997.
  13. Richter J., Richter A., CLR via C#. Microsoft Press, 2006.
  14. Schoeberl M., A Java Processor Architecture for Embedded Real-time Systems, “Journal of Systems Architecture”, Vol. 54, No. 1–2, 2008, 265–286, DOI: 10.1016/j.sysarc.2007.06.001.
  15. Zhou C., Chen H., Development of a PLC Virtual Machine Orienting IEC 61131-3 Standard, [in:] 2009 International Conference on Measuring Technology and Mechatronics Automation, Vol. 3, 2009, 374–379, DOI: 10.1109/ICMTMA.2009.422.
  16. Zhang M., Lu Y., Xia T., The Design and Implementation of Virtual Machine System in Embedded SoftPLC System, [in:] 2013 International Conference on Computer Sciences and Applications, 775–778, DOI: 10.1109/CSA.2013.185.
  17. Cavalieri S., Puglisi G., Scroppo M.S., Galvagno L., Moving IEC 61131-3 applications to a computing framework based on CLR Virtual Machine, [in:] 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA), 1–8, DOI: 10.1109/ETFA.2016.7733632.
  18. De Tommasi G., Pironti A., An educational open-source tool for the design of IEC 61131-3 compliant automation software, [in:] 2008 International Symposium on Power Electronics, Electrical Drives, Automation and Motion, 486–491, DOI: 10.1109/SPEEDHAM.2008.4581144.
  19. Shin S., Kwon M., Rho S., Whimori CDK: A Control Program Development Kit, [in:] 2009 International Conference on Computing, Engineering and Information, 115–118, DOI: 10.1109/ICC.2009.33.
  20. Palma L.B., Brito V., Rosas J., Gil P., WEB PLC simulator for ST programming, [in:] 2017 4th Experiment@International Conference (exp.at’17), 303–308, DOI: 10.1109/EXPAT.2017.7984410.
  21. Inzunza Villagómez H.I., Pérez Arce B., Hernández Ruiz S.I., López Corella J.A., Design and implementation of a development environment on ladder diagram (HT-PLC) for Arduino with Ethernet connection, [in:] 2018 IEEE International Conference on Automation/XXIII Congress of the Chilean Association of Automatic Control (ICAACCA), 1–6, DOI: 10.1109/ICA-ACCA.2018.8609850.
  22. Cooper K.D., Torczon L., Engineering a Compiler (Second Edition). Morgan Kaufmann, Boston 2012.
  23. Fen G., Ning W., A Transformation Algorithm of Ladder Diagram into Instruction List Based on AOV Digraph and Binary Tree, [in:] TENCON 2006 – 2006 IEEE Region 10 Conference, 1–4, DOI: 10.1109/TENCON.2006.343937.
  24. Huang L., Liu W., Liu Z., Algorithm of transformation from PLC ladder diagram to structured text, [in:] 2009 9th International Conference on Electronic Measurement Instruments, 4-778–4-782, DOI: 10.1109/ICEMI.2009.5274701.
  25. Milik A., Hrynkiewicz E., Distributed PLC Based on Multicore CPUs – Architecture and Programming, “IFAC-PapersOnLine”, Vol. 49, No. 25, 2016, 1–7, DOI: 10.1016/j.ifacol.2016.12.001.
  26. Fiset J.-Y., Human-Machine Interface Design for Process Control Applications. Instrumentation, Systems and Automation Society, 2009.
  27. VDI/VDE 3699 Process control using display screens, 2015. 
  28. Jamro M., Rzońca D., Automatic connections in IEC 61131-3 Function Block Diagrams, [in:] 2013 Federated Conference on Computer Science and Information Systems, 463–469.
  29. Hart P.E., Nilsson N.J., Raphael B., A Formal Basis for the Heuristic Determination of Minimum Cost Paths, “IEEE Transactions on Systems Science and Cybernetics”, Vol. 4, No. 2, 1968, 100–107, DOI: 10.1109/TSSC.1968.300136.
  30. OMG, “OMG Systems Modeling Language, V1.3,” 2012.
  31. Jamro M., Rzońca D., Agile and hierarchical round-trip engineering of IEC 61131-3 control software, “Computers in Industry”, Vol. 96, 2018, 1–9, DOI: 10.1016/j.compind.2018.01.004.
  32. Sadolewski J., Szmyd E., Polski kompilator oraz sterowniki programowane za pomocą języka IL normy IEC 61131-3, „Pomiary Automatyka Robotyka”, R. 13, Nr 2, 2009, 615–622.
  33. Lumel S.A. [www.lumel.com.pl/en].
  34. Light OPC Server. [www.ipi.ac.ru].
  35. Praxis Automation Technology B.V. [www.praxis-automation.nl].
  36. Nauka i Technika. [www.nit.pl].
  37. iGrid T&D. [www.igrid-td.com].
  38. Bart-Com. [www.bart-com.pl].