EtherCAT with TI Sitara's PRU
Development of SysEthernet driver for PRU-ICSS for low communication jitter
Our customer approached us to optimize the EtherCAT performance of their CODESYS programmable PLC (using CODESYS EtherCAT). The CODESYS runtime control provides a standard SysEthernet driver for Linux platforms which utilizes raw sockets to communicate via the Ethernet Controller. The performance of this driver is affected by the system load which results in high jitter. This results in a non-robust communication for Industrial communication protocols which depend on Ethernet for communication such as EtherCAT.
The SysEthernet driver for PRU-ICSS was developed which enables the CODESYS runtime to access PRU-ICSS for Ethernet communication. This can be used for standard Ethernet based industrial protocols such as EtherCAT. The SysEthernet also supports the time triggered send (TTS) functionality available in the PRU-ICSS to provide a communication setup with very small transmission jitter.
The network performance of the implementation was evaluated using the Real Time Test Framework (RTTF) which uses the CODESYS test manager to perform a series of tests on the target system varying the system and network load and evaluating the transmission jitter and the round trip time of the system.
The solution achieves a decrease of 40% in the max transmission jitter and 60% for max round trip time over the standard solution with only 1 frame reporting a transmission jitter >20us out of 100000 frames.
More information in the whitepaper
"EtherCAT with TI Sitara`s PRU"