EC-Engineer V3.7: New Features

EtherCAT Performance Analysis

EC-Master software version V3.1.4 has a built-in performance measurement capability. This can be used to measure the execution times of job functions that are called within the cyclic part of the application, as well as application specific functions. The results are clearly displayed in EC-Engineer V3.7. The time offset related to the start of cycle and the duration of each cyclic job is shown in a network timing diagram and a table. This is very helpful to evaluate the total CPU load of the EtherCAT master and the total task duration of the EtherCAT cyclic task.
Learn more about the topic EtherCAT Master performance in this blog.

The most usual EtherCAT network timing starts with the processing of all received frames (job “P”) to update the process data inputs. Next, the application task is calculating the process data outputs. The job “S” is initiating the transmission of all cyclic frames to the EtherCAT network. Afterwards the job “MT” will execute the master administrative tasks (state machines etc.). The job “AS” is responsible to create and send the acyclic frame(s) in case there is a pending request.

The average job offset and job duration are displayed in the cycle overview graph.

The EtherCAT master determines the minimum and maximum for all values ​​and calculates their average. The times are shown in the table in micro second.

The EtherCAT Master is able to collect the data to construct a histogram of a specific job offset, job duration or cycle time. This is for example very helpful to evaluate the spread of the offset of the cyclic frame transmission time.

The logarithmic representation of the histogram is particularly helpful when the value range of the data represented covers many orders of magnitude. This representation makes it easier to figure out a time values which only rarely occurs.

EtherCAT Master Memory (RAM) Usage

The EtherCAT Master software EC-Master comes with a function for determining the maximum required dynamic memory (RAM) for a specific EtherCAT network configuration. This value is particularly useful in systems with limited resources. This value can easily be determined in the current EC-Engineer version.