1. Introduction

1.1. What is EtherCAT?

EtherCAT is an IEEE802.3 Ethernet based fieldbus system.

EtherCAT defines a new standard in communication speed and is due to its flexible topology and simple configuration to handle like a conventional Fieldbus. The implementation of EtherCAT is inexpensive to implement which allows the system to use fieldbus technology in applications which had to ommit fieldbus use in the past. EtherCAT is an open technology which is standardized within the IEC (International Electrotechnical Commission). The system itself is supported and powered by the EtherCAT Technology Group, which is an international community of users and vendors where more than 3100 members already joined including acontis technologies GmbH.

Fieldbusses are proved and established in automation and most applications depend on them. The use of PC based control systems in a reasonable way was only made possible by the introduction of fieldbus technology. Since the control CPU’s speed is increasing rapidly (especially with IPC’s), the conventional fieldbus systems are moreover become the bottle neck and limit the reachable performance of the control systems. Additionaly the control topology becomes multi layered with some subsided cyclic systems: the control task himself, the fieldbus system and propably some local extension busses in the I/O system or simply the local firmware cycle in the peripheral device.

Because of this latency times are generated which are typically a multiple of 3 or 5 of the control cycle time, which is not a satisfying solution in most applications. On top of the fieldbus systems, to interconnect control systems, ethernet is state of the art for a long time. The use of Ethernet to control drives or I/O systems is pretty new and was reserved for the conventional fieldbus systems in the past. In this focus the propability to carry small data, hard real time possibilities and of course low costs are the primary requirements. EtherCAT fulfills those requirements and brings internet technologies to the level of I/O communication.

1.2. What is a EtherCAT protocol?

The EtherCAT protocol is optimized for process data transfer and is transported directly within the Ethernet frame thanks to a special Ethertype. It may consist of several EtherCAT telegrams, each serving a particular memory area of the logical process image which can address up to 4 gigabytes in size. The data sequence is independent of the physical order of the Ethernet terminals in the network; addressing can be in any order. Broadcast, Multicast and communication between slaves are possible. Direct Ethernet frame transfer is used in cases where maximum performance is required and the EtherCAT components are operated in the same subnet as the controller.

However, EtherCAT applications are not limited to a single subnet: EtherCAT UDP packages the EtherCAT protocol into UDP/IP datagrams. This enables any control with Ethernet protocol stack to address EtherCAT systems. Even communication across routers into other subnets is possible. In this variant, system performance obviously depends on the real-time characteristics of the control and its Ethernet protocol implementation. The response times of the EtherCAT network itself are hardly restricted at all: the UDP datagram only has to be unpacked in the first station.

In addition to data exchange according to the master/slave principle, EtherCAT is also very suitable for communication between controllers (master/master). Freely addressable network variables for process data and a variety of services for parameterization, diagnosis, programming and remote control cover a wide range of requirements. The data interfaces for master/slave and master/master communication are identical. For slave to slave communication, two mechanisms are available. Upstream devices can communicate to downstream devices within the same cycle and thus extremely fast. Since this method is topology dependent, it is particularly suitable for slave to slave communication relationships given by machine design - e.g. in printing or packaging applications. For freely configurable slave to slave communication, the second mechanism applies: the data is relayed by the master. Here two cycles are needed, but due to the extraordinary performance of EtherCAT this is still faster than any other approach.

EtherCAT only uses standard frames according to IEEE802.3 - the frames are not shortened. EtherCAT frames can thus be sent from any Ethernet MAC, and standard tools (e.g. monitor) can be used.

1.3. The EC-Monitor - Features

1.4. Protected version

The EC-Monitor software can be delivered in 3 different versions:

  • Protected: Binary with MAC protection

  • SDK: Binary without MAC protection

  • Source: Source code

The protected version will automatically stop after about 10 minutes of continuous operation. In order to remove this restriction a valid runtime license key is required. The runtime license protection is based on the MAC address of the Ethernet controller used for the EtherCAT protocol. With a valid License Key the protected version will automatically become an unrestricted version.

1.4.1. Licensing procedure for Development Licenses

  1. Installation of EC-Monitor protected version

  2. Determine the MAC Address by calling emGetSrcMacAddress() or from a sticker applied on the hardware near the Ethernet controller

  3. Send an Email with the subject “Development License Key Request” with the MAC address to sales@acontis.com

  4. Acontis will create the license keys and return them in a License Key Text File (CSV format).
    Number;MAC Address;License Key
    1;00-00-5A-11-77-FE;DA1099F2-15C249E9-54327FBC
    2;64-31-50-80-20-4E;1B7C1F86-D08E40A8-4F96F2BA
    
  5. Activate the License Key by calling emSetLicenseKey() with the license key that corresponds to the MAC address on the hardware and check the return code. The license key is 26 characters long.
    dwRes = emSetLicenseKey(0, "DA1099F2-15C249E9-54327FBC");
    

1.4.2. Licensing procedure for Runtime Licenses

  1. Installation of EC-Monitor protected version

  2. Determine the MAC Address by calling emGetSrcMacAddress() or from a sticker applied on the hardware near the Ethernet controller

  3. Provide the MAC Addresses and numbers from previously ordered and unused runtime license stickers in a text file to acontis as described in the example below. Please use a separate line for each runtime license sticker number and MAC Address.
    S/N; MAC Address
    100-105-1-1/1603310001;00-00-5A-11-77-FE
    100-105-1-1/1603310002;64-31-50-80-20-4E
    
  4. Send an Email with the subject “Runtime License Key Request” with the MAC address to sales@acontis.com

  5. Acontis will create the license keys and return them in a License Key Text File.
    Number;MAC Address;License Key
    1;00-00-5A-11-77-FE;DA1099F2-15C249E9-54327FBC
    2;64-31-50-80-20-4E;1B7C1F86-D08E40A8-4F96F2BA
    
  6. Activate the License Key by calling emSetLicenseKey() with the license key that corresponds to the MAC address on the hardware and check the return code.
    dwRes = emSetLicenseKey(0, "DA1099F2-15C249E9-54327FBC");
    

1.5. License

1.5.1. EC-Monitor license

According to EC-Monitor Software License Agreement (SLA).

1.5.2. Free Open Source Software contained in EC-Monitor

1.5.2.1. Expat XML parser license

Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
and Clark Cooper
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers.

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

1.5.3. Free Open Source Software supported by EC-Monitor

The following components are not part of EC-Monitor, but relate to it:

1.5.3.1. acontis atemsys Linux kernel module

The acontis atemsys is licensed under the GPL:

Copyright (c) 2009 - 2020 acontis technologies GmbH, Ravensburg, Germany
All rights reserved.

This program is free software; you can redistribute  it and/or modify it
under  the terms of  the GNU General  Public License as published by the
Free Software Foundation;  either version 2 of the  License, or (at your
option) any later version.

1.5.3.2. WinPCap

The WinPCap library is supported, but not shipped with the EC-Monitor.

1.5.3.3. Npcap

The Npcap library is supported, but not shipped with the EC-Monitor.