Enhancing Industrial Communication with Ethernet/Internet Protocol: A Study and Analysis of Real-Time Cooperative Robot Communication and Automation via Transmission Control Protocol/Internet Protocol
Abstract
:1. Introduction
- Our study undertakes a rigorous verification of data exchange mechanisms involving a control box, a Programmable Logic Controller (PLC), and a robotic system. This comprehensive evaluation forms the foundation of our research.
- We bridge the gap between theoretical simulations and real-world applications by integrating a virtual PLC simulation platform and an actual PLC apparatus. This integration enhances the practicality and relevance of our findings.
- An innovative industrial communication module designed specifically to facilitate seamless data aggregation and archival is introduced. This module represents a significant technological advancement, providing a valuable solution for industrial automation.
- We present the verification of data transmission, including event and packet verification, utilizing an EIP simulator and EIP(XGL EFMTB) [9]. Through these tests, we provide empirical evidence of the reliability and robustness of the developed modules, which has practical implications for the field of industrial automation.
2. Related Work
3. Work Methodology
Data Communication among a Control Device, a PLC, and a Robot Using a Virtual PLC Simulator
- The communication between the control device and the robot was tested with a PLC simulator before conducting experiments with a live PLC. Technical abbreviation will be explained upon first use.
- Figure 1 shows the direct message process utilizing an industrial communication module that enables communication between the control device (Rainbow Robotics Ether-Net/IP module), the PLC simulator, and the robot. The main aim is to ascertain the dependability of communication between the devices and evaluate the effectiveness of data collection and storage procedures.
- The communication process starts with the control device transmitting a “Set Attribute” command to the PLC simulator.
- The PLC simulator involves sending a memory payload with randomly generated numbers ranging from 0 to 255. The second stage involves monitoring memory changes. To assess the communication process, we utilize the EIP explorer tool to keep track of alterations in the memory values of the PLC simulator. Specifically, we monitor changes in memory locations 0, 1, 2, and 3 within category 4, instance 101, and attribute 3, as depicted in Figure 2.
- Subsequently, the PLC simulator sends a “Set-Attribute” command to the Rainbow Robotics virtual simulator and robots by Rainbow Robotics to transmit data to the robot. This instruction entails the transmission of eight bytes of data, spanning from V20 to V23, as designated in Table 1.
- The robot receives the “Set_Attribute” command, processes it, and finally generates output results.
Index | Element | Status |
---|---|---|
0 | V20 | 60 |
1 | V21 | 215 |
2 | V22 | 26 |
3 | V23 | 68 |
4. Proposed Structure
4.1. Physical Communication Verification: PLC EIP (XGL EFMTB) and Clients
4.2. Decoding LS Elc.’s Frame Format
5. Results
5.1. Verification of Data Transmission
5.2. Protocol and Frame Components for User Data Transmission
5.3. Trigger Activation and Coil Control in the LS Electric System
- The trigger condition is initiated when the value 1 is assigned to the D variable 0.
- The term “<Coil>(P00024)”, as shown in Figure 9, denotes a coil function that exists on the LS Electric side. This particular coil function performs the action of switching on and off within a specific duration when the trigger condition has been reached.
- The aforementioned program is intended to trigger the block’s startup condition by activating the <Coil> when the D variable 0 is assigned a value of 1. The aforementioned program is intended to trigger the block’s startup condition by activating the <Coil> when the D variable 0 is assigned a value of 1. The following points provide a more professional summary: 1.
- The aforementioned program is intended to trigger the block’s startup condition by activating the <Coil> when the D variable 0 is assigned a value of 1.
- The block’s startup condition is activated when the D variable 0 is assigned a value of 1. 2. “<Coil>” denotes a coil function located on the LS Electric side.
- The LS Electric side turns on and off for a specific duration when the trigger condition is met. 3. The program is intended to activate the block’s start-up condition by turning on the “<Coil>” when there is a value of 1 assigned to D variable 0.
- After the value 1 is written to block D0, the coil switches to the “On” position. Furthermore, the bit value of P00024 changes to alternate between on and off states for a duration determined by the user.
5.4. Ensuring Data Integrity and Content Accuracy
6. Conclusions and Discussion
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Cheng, C.; Fu, J.; Su, H.; Ren, L. Recent advancements in agriculture robots: Benefits and challenges. Machines 2023, 11, 48. [Google Scholar] [CrossRef]
- Xian, W.; Yu, K.; Han, F.; Fang, L.; He, D.; Han, Q.-L. Advanced Manufacturing in Industry 5.0: A Survey of Key Enabling Technologies and Future Trends. IEEE Trans. Ind. Inform. 2023, 1–15. [Google Scholar] [CrossRef]
- Park, J.-H.; Kim, Y.-S.; Seo, H.; Cho, Y.-J. Analysis of Training Deep Learning Models for PCB Defect Detection. Sensors 2023, 23, 2766. [Google Scholar] [CrossRef] [PubMed]
- Brito, T.; Queiroz, J.; Piardi, L.; Fernandes, L.A.; Lima, J.; Leitão, P. A Machine Learning Approach for Collaborative Robot Smart Manufacturing Inspection for Quality Control Systems. Procedia Manuf. 2022, 51, 11–18. [Google Scholar] [CrossRef]
- Liu, W.; Venayagamoorthy, G.K.; Wunsch, D.C., II. Design of an adaptive neural network based power system stabilizer. Neural Netw. 2003, 16, 891–898. [Google Scholar] [CrossRef] [PubMed]
- Zunino, C.; Valenzano, A.; Obermaisser, R.; Petersen, S. Factory communications at the dawn of the fourth industrial revolution. Comput. Stand. Interfaces 2020, 71, 103433. [Google Scholar] [CrossRef]
- Kiran, R.; Jetti, S.R.; Venayagamoorthy, G.K. Online training of a generalized neuron with particle swarm optimization. In Proceedings of the IEEE International Joint Conference on Neural Network Proceedings, Vancouver, BC, Canada, 16–21 July 2006. [Google Scholar] [CrossRef]
- Danielis, P.; Skodzik, J.; Altmann, V.; Schweissguth, E.B.; Golatowski, F.; Timmermann, D.; Schacht, J. Survey on real-time communication via ethernet in industrial automation environments. In Proceedings of the 2014 IEEE Emerging Technology and Factory Automation (ETFA), Barcelona, Spain, 16–19 September 2014; pp. 1–8. [Google Scholar] [CrossRef]
- XGL-EXMTB. Available online: https://www.ls-electric.com/ko/product/view/P01134 (accessed on 15 June 2023).
- Lu, S.; Cai, Z.J.; Liu, T. Study on intelligent communication module for programmable logic controller. In Proceedings of the 2009 International Conference on Artificial Intelligence and Computational Intelligence, Shanghai, China, 7–8 November 2009; Volume 4, pp. 45–49. [Google Scholar] [CrossRef]
- ODVA. Available online: https://www.odva.org/ (accessed on 15 June 2023).
- Bajpai, S.; Ranjan, R.; Lee, S.; Lee, K.O.; Kye, J. Development of EIPAdapter for Explicit Messaging in Cooperative Robot Communication. In Proceedings of the 22nd International Conference on Control, Automation and Systems (ICCAS), Jeju, Republic of Korea, 27–30 November 2022. [Google Scholar] [CrossRef]
- Sagstetter, F.; Lukasiewycz, M.; Steinhorst, S.; Wolf, M.; Bouard, A.; Harris, W.R.; Jha, S.; Peyrin, T.; Poschmann, A.; Chakraborty, S. Security challenges in automotive hardware/software architecture design. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE), Grenoble, France, 18–22 March 2013. [Google Scholar] [CrossRef]
- Cao, Y.; Jiang, T.; Kaiwartya, O.; Sun, H.; Zhou, H.; Wang, R. Toward Pre-Empted EV Charging Recommendation Through V2V-Based Reservation System. IEEE Trans. Syst. Man Cybern. Syst. 2021, 5, 3026–3039. [Google Scholar] [CrossRef]
- Zhang, K.; Kianfar, J. An Automatic Incident Detection Method for a Vehicle-to-Infrastructure Communication Environment: Case Study of Interstate 64 in Missouri. Sensors 2022, 22, 9197. [Google Scholar] [CrossRef] [PubMed]
- Gupta, M.; Benson, J.; Patwa, F.; Sandhu, R. Secure V2V and V2I communication in intelligent transportation using cloudlets. IEEE Trans. Serv. Comput. 2020, 15, 1912–1925. [Google Scholar] [CrossRef]
- Khan, A.R.; Jamlos, M.F.; Osman, N.; Ishak, M.I.; Dzaharudin, F.; Yeow, Y.K.; Khairi, K.A. DSRC technology in Vehicle-to-Vehicle (V2V) and Vehicle-to-Infrastructure (V2I) IoT system for Intelligent Transportation System (ITS): A review. In Recent Trends in Mechatronics Towards Industry 4.0; Selected Articles from iM3F; Springer: Malaysia, Asia, 2020. [Google Scholar] [CrossRef]
- Cherdo, Y.; Miramond, B.; Pegatoquet, A.; Vallauri, A. Unsupervised Anomaly Detection for Cars CAN Sensors Time Series Using Small Recurrent and Convolutional Neural Networks. Sensors 2023, 23, 5013. [Google Scholar] [CrossRef] [PubMed]
- Lee, T.-Y.; Lin, I.-A.; Wang, J.-J.; Tsai, J.-T. A Reliability Scheduling Algorithm for the Static Segment of FlexRay on Vehicle Networks. Sensors 2018, 18, 3783. [Google Scholar] [CrossRef] [PubMed]
- Hank, P.; Müller, S.; Vermesan, O.; Van Den Keybus, J. Automotive ethernet: In-vehicle networking and smart mobility. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE), Grenoble, France, 18–22 March 2013. [Google Scholar] [CrossRef]
- Pensawat, T. Real-Time Ethernet Networks Simulation Model; DiVA: diva2:238095; Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE): Halmstad, Sweden, 2006; pp. 11–13. [Google Scholar]
- Alessandria, E.; Seno, L.; Vitturi, S. Performance analysis of EIPnetworks. IFAC Proc. Vol. 2007, 40, 391–398. [Google Scholar] [CrossRef]
- Gwak, K.-Y.; Lee, S.-W. A Development of PC/Ethernet based Fieldbus Network for Large Realtime Data Communication. In Proceedings of the International Conference on Control, Automation and Systems, KINTEX, Gyeong Gi, Republic of Korea, 2–5 June 2005; pp. 362–367. [Google Scholar]
- Wang, Z.; Zhang, Y.; Chen, Y.; Liu, H.; Wang, B.; Wang, C. A Survey on Programmable Logic Controller Vulnerabilities, Attacks, Detections, and Forensics. Processes 2023, 11, 918. [Google Scholar] [CrossRef]
- Folgado, F.J.; González, I.; Calderón, A.J. Data Acquisition and Monitoring System Framed in Industrial Internet of Things for PEM Hydrogen Generators. Int. Things 2023, 22, 100795. [Google Scholar] [CrossRef]
- Tapia, E.; Sastoque-Pinilla, L.; Lopez-Novoa, U.; Bediaga, I.; López de Lacalle, N. Assessing Industrial Communication Protocols to Bridge the Gap between Machine Tools and Software Monitoring. Sensors 2023, 23, 5694. [Google Scholar] [CrossRef] [PubMed]
- Do-more® PLC Simulator. Available online: https://www.automationdirect.com/do-more/brx/software/simulator (accessed on 15 June 2023).
- EIPExplorer & C# Stack. Available online: https://sourceforge.net/projects/enipexplorer/ (accessed on 15 August 2023).
- Wrieshark. Available online: https://www.wireshark.org/ (accessed on 15 August 2023).
- LS-ELECTRIC. Available online: https://sol.ls-electric.com/us/en/main (accessed on 15 June 2023).
- XGL-EFMTB_T8_Manual_V3.4_202211_KR. Available online: https://sol.ls-electric.com/kr/ko/product/document/1809 (accessed on 15 June 2023).
- XG5000. Available online: https://sol.ls-electric.com/ww/en/product/document/2897 (accessed on 21 August 2023).
- LS ELECTRIC. XGL-EFMTB User Manual; LS ELECTRIC: Seoul, Republic of Korea, 2021; pp. 1–114. Available online: https://www.manualslib.com/products/Ls-Electric-Xgl-Efmtb-12838634.html (accessed on 15 June 2023).
- LS ELECTRIC. EtherNet/IP I/F Module User Manual; LS ELECTRIC: Seoul, Republic of Korea, 2020; pp. 1–144. Available online: automationdirect.com (accessed on 15 June 2023).
Field Name | Field Size (Byte) | Field Value | |
---|---|---|---|
Company ID | 10 |
| |
PLC Info | 2 |
(XGK/I/R-CPUH: 0x01. XGK/I-CPUS: 0x02, XGK-CPUA: 0x03. XGK/I-CPUE: 0x04. XGK/I-CPUU: 0x05, XGK-CPUHN: 0x11. XGK-CPUSN: Ox12, XGI-CPUUN: 0x15) Bit06: 0 (Duplexing Master), 1 (Duplexing Slave) Bit07: 0 (CPU Run), 1(CPU Error) Bit08~12: System State (RUN: 0x01. STOP: 0x02. ERROR: Ox04. DEBUG:0x08) Bit13~15: Reserved | |
CPU Info | 1 | Determine that it is an XGK/XGI/XGR series. | |
|
| ||
Source of Frame | 1 | Client (HMI, Human Machine Interface) → Server (PLC): 0x33 Server (PLC) ➔ Client (HMI): 0x11 | |
Invoke ID | 2 | ID to distinguish the order between frames. (Send this number in the response frame) | |
Length | 2 | The byte size of the command structure | |
Ethernet Position | 1 | Bit0-3: Slot number of the Ethernet module Bits4-7: Base number of the Ethernet module | |
Reserved 2(BCC) | 1 | 0x00: Reserved Area (Byte Sum of Header) |
Command | Command Code | Data Type | Description | ||
---|---|---|---|---|---|
Write | Request: h’ 0058 | Individual | h’ 0000 | BIT | Request to write data for each data type |
h’ 0100 | BYTE | ||||
h’ 0200 | WORD | ||||
h’ 0300 | DWORD | ||||
h’ 0400 | LWORD | ||||
Continuous | h’ 1400 | BYTE | Request to write a byte variable in blocks |
Field Name | Field Size (Byte) | Field Value |
---|---|---|
Command | 2 | 0x0058: Request to write |
Data Type | 2 | See the data type table [32] |
Reserved Area | 2 | - |
Number of blocks | 2 | The number of variables you want to write to, up to 16 |
Variable Length | 2 | Maximum of 16 characters for the length of the direct variable |
Variable Name | Variable Length | Only direct variables can be used |
Data Size | 2 | Byte size of the data |
Data | Data Size | The data you want to write |
… | … | Repeat as many times as variables/max 16 characters |
Variable Length | 2 | Maximum of 16 characters for the length of the direct variable |
Variable Name | Variable Length | Only direct variables can be used |
Data Size | 2 | Byte size of the data |
Data | Data Size | The data you want to write |
Frame Name | Header | Command | Data Type | Reversed | Number of Blocks | Variable Length | Variable Name | Data Size | Data |
---|---|---|---|---|---|---|---|---|---|
Code (Example) | .. | h’ 0058 | h’ 0002 | h’ 0000 | h’ 0002 | h’ 0006 | %MW100 | h’ 0002 | h’ 1234 |
STX | Node Number | Command | Data | Carriage Return | Line Feed |
---|---|---|---|---|---|
0x02 | 1~99 | - | - | 0x0D | 0x0A |
- | FRAME DATA | ||||
---|---|---|---|---|---|
HEAD (1) | HEAD_00 | ||||
TAIL (2) | TAIL_00 | TAIL_01 | |||
BODY (14) | HEAD | SEGMENT_00 | TAIL |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Seong, J.; Ranjan, R.; Kye, J.; Lee, S.; Lee, S. Enhancing Industrial Communication with Ethernet/Internet Protocol: A Study and Analysis of Real-Time Cooperative Robot Communication and Automation via Transmission Control Protocol/Internet Protocol. Sensors 2023, 23, 8580. https://doi.org/10.3390/s23208580
Seong J, Ranjan R, Kye J, Lee S, Lee S. Enhancing Industrial Communication with Ethernet/Internet Protocol: A Study and Analysis of Real-Time Cooperative Robot Communication and Automation via Transmission Control Protocol/Internet Protocol. Sensors. 2023; 23(20):8580. https://doi.org/10.3390/s23208580
Chicago/Turabian StyleSeong, JuYong, Rahul Ranjan, Joongeup Kye, Seungjae Lee, and Sungchul Lee. 2023. "Enhancing Industrial Communication with Ethernet/Internet Protocol: A Study and Analysis of Real-Time Cooperative Robot Communication and Automation via Transmission Control Protocol/Internet Protocol" Sensors 23, no. 20: 8580. https://doi.org/10.3390/s23208580