EtherCAT, as an efficient fieldbus network technology, relies on a high real-time operating system to fully demonstrate its real-time performance. This article takes the ZMC600E as an example to test system real-time performance and analyze operating system jitter data.

ZMC600E EtherCAT Master Controller is a new generation intelligent bus-type controller developed by Guangzhou Zhiyuan Electronics Co., Ltd. It uses a multi-core heterogeneous application processor as the core, which includes 2 64-bit Arm® Cortex®-A53 cores with a frequency of 1.0GHz; and 4 Cortex®-R5F cores with a frequency of 800MHz. It also has 1GB DDR4, 4GB eMMC, and 32KB FRAM onboard.
The ZMC600E EtherCAT master controller is used in machine motion to ensure precise control and coordinated actions, guaranteeing the stability and accuracy of machine operation. During the development process, ZLG Zhiyuan Electronics deeply optimized the operating system based on years of experience in the embedded field, providing a stable and reliable RT patch for adapting the Linux system, and repeatedly testing and optimizing to achieve better system jitter parameters. Below, we use a tool called “cyclictest” to measure the real-time performance of the operating system.
Testing Tool Introduction
The testing principle of “cyclictest” is based on the scheduling and execution of periodic tasks to create one or more periodic tasks, simulating the operation of real-time tasks by setting the task’s priority and scheduling policy. These tasks will continuously run at fixed time intervals, recording the start and end times of each run. By analyzing this time data, the response time and delay of the tasks can be obtained.
Testing Steps
1. Prepare a test computer, a ZMC600E controller, a 24V regulated power supply, and a network cable.

2. Set the regulated power supply to 24V/1A, connect the network cable from the ZMC600E controller’s NET1 to the test computer’s network port. Turn on the power to supply the ZMC600E controller.

3. Set the test computer’s IP to 192.168.1.168, and use the ping tool to confirm connectivity to the ZMC600E’s NET1 IP address: 192.168.1.136.
4. Open the serial debugging tool “Putty” on the test computer, enter the control board’s IP address “192.168.1.136” in the “Host Name” field, enter “22” in the Port field, select the “SSH” protocol, as shown in Figure 4. Click “Open” to connect to the ZMC600E controller.
5. Enter the username “root” and password “root” to log in. Then enter “cd /usr/bin” to access the bin directory, and input the command “cyclictest -p 98 -t 1” to perform the test.

6. Maintain the testing environment for approximately 15 hours of continuous system jitter testing, resulting in the output: maximum jitter of 98us, average jitter of 15us.
Test Result Analysis
Using the same method, we tested the system jitter data of the ZMC300E and ZMC900E EtherCAT master controllers, obtaining the following table.
From the testing steps and results, it can be seen that the real-time performance of the system varies across different product platforms. The ZMC300E achieves system real-time performance through the Xenomai patch, while the ZMC600E and ZMC900E achieve it through the RT patch. To ensure precise machine control and coordinated actions, it is essential to minimize the jitter of the EtherCAT master controller operating system as much as possible to fully utilize the advanced network performance of EtherCAT.
The selection table for ZMC300E/ZMC600E/ZMC900E is as follows.
For more articles, please click ” Read Original “

