EC-Master V3.1: New Features
EC-Master has been updated…
New Features Version 3.1.3
Built-in Performance Measurement
The acontis EC-Master software has a built-in performance measurement capability. This can be used to measure the execution times of the job functions that are called within the cyclic part of the application, as well as application specific functions. In addition, it is possible to measure the location of benchmarks within a cycle. Execution times can be recorded in form of overall statistics (min/avg/max) and in form of histograms of all measured times. In the included example application, performance measurements can be activated using the command line parameter (-perf).
Out-of-the box support for Xenomai 3 on ARM CPUs
EC-Master V3.1.3 supports out-of-the-box the real-time development framework Xenomai v3.x (Cobalt) on ARM systems. The hard real-time performance of the operating system guarantees a stable EtherCAT cycle with the optional usage of Distributed Clocks (DC). For the implementation a BeagleboneBlack Board equipped with the Texas Instruments Sitara™ ARM® Cortex®-A8 AM3358 MPU was used.
Support for Microchip LAN7430 PCIe Ethernet Controller
The acontis Ethernet Driver LAN743x supports Microchip´s LAN743x PCIe Ethernet Controller. The link layer is available for Linux, Windows and other operating systems.
For development and testing the Microchip evaluation board EVB-LAN7430 is used.
Support for FreeRTOS on Xilinx UltraScale+ on R5 Core
EC-Master V3.1.3 can either run on one ARM® Cortex-A53 Core or on one ARM® Cortex-R5 of the Xilinx UltraScale + MPSoC. The acontis Ethernet Driver GEM uses one of the on-chip Ethernet MACs to run the EtherCAT protocol. Powered by the Real-time operating system FreeRTOS, even on the R5 Core network update rates of 4 kHz (250 us cycle time) are possible.
New Features Version 3.1.2
Support for latest Intel Atom® x6000E Series (Elkhart Lake)
EC-Master V3.1.2 supports out-of-the-box the Intel Atom® x6000E Series (Elkhart Lake) processor. For the two on chip Ethernet MACs an dedicated high performance real-time Ethernet driver (Link Layer) is provided. The solution is available for the operating systems Linux, Windows and others.
For the implementation the module conga-SA7 from congatec was used.
Support for NXP i.MX RT1064 Crossover MCU with Arm® Cortex®-M7 Core
EC-Master V3.1.2 supports out-of-the-box the NXP i.MX RT1064 MCU together the development environment MCUXpresso SDK with FreeRTOS .
The MCUXpresso SDK is a comprehensive software enablement package designed to simplify and accelerate application development with Arm® Cortex®-M-based devices from NXP.
The on chip Ethernet MACs is controlled by a specific Ethernet driver (Link Layer) which realizes the fast and direct exchange of data between the master core and the Ethernet controller.
For the implementation the evaluation board MIMXRT1064-EVK: i.MX RT1064 from NXP was used.
Support for STMicroelectronics STM32MP1 microprocessor series with dual Arm® Cortex®-A7
The STM32MP1 on chip Ethernet Controller is supported by the acontis Real-time Driver DW3504. This driver replaces the standard Linux Ethernet network adapter (MAC) driver for real-time EtherCAT usage. The driver runs in User Space and handles the MAC directly for high performance cyclic operation. The driver requires direct access to the MAC that is made possible by Kernel Module called atemsys which is available under GPL.
The reference implementation is based on the discovery kit STM32MP157D-DK1 from STMicroelectronics.
New Features Version 3.1.1
Interface for Programming Language Python
EC-Master V3.1.1 enables customers to program an EtherCAT application in the Python programming language.
Based on a wrapper library which provides the EC-Master APIs for object oriented access and the Python wrapper module, scripts can be developed and executed.
Similar to the other example applications the EcMasterDemoPython example app shows how to use the EtherCAT Master API. The python demos can also run in an interactive mode to, for example, set an output of the EtherCAT network. This is very useful to quickly test different behaviors of the EtherCAT network like with the new acontis EC-Simulator.
Support for Linux Foundation Zephyr Project RTOS
EC-Master V3.1.1 supports the Zephyr Project out-of-the-box. Zephyr is an open-source real-time operating system (RTOS) for connected resource-constrained devices, built to be secure and safe.
Assisted by the acontis high performance real-time Ethernet drivers (link layers) an update rate of 5 kHz can be guaranteed.
The EcMasterDemo example application includes the complete source code and a ready-to-run project file for the free integrated development environment CMake.
Support for VxWorks 7 SR650 64-Bit on ARM64 CPUs
EC-Master is now available out-of-the-box for systems running the VxWorks 7 SR650 on 64-bit versions of ARM (aarch64).
A specially developed real-time Ethernet driver (link layer) is also used on this architecture, which realizes the fast and direct exchange of data between the master core and the Ethernet controller.
The freely available evaluation version contains a sample application which, in conjunction with an EtherCAT network configuration (ENI) file, can set any EtherCAT network into the operational (OP) state. The complete source code of the sample application, along with detailed documentation, is also included.
Linux Device tree support: Out-of-the-box support for many customer specific boards
The Linux operating system provides drivers for most common Ethernet controllers and the related physical transceivers (PHY). The manufacturer specific PHY circuit is handled by a dedicated kernel driver.
To make use of this infrastructure, the acontis kernel module atemsys has to be included in the Linux device tree as an official driver for the Ethernet controller. As a result atemsys can interact with Linux drivers.
Depending on the hardware architecture, atemsys can grant access to the MDIO bus to the Linux drivers, or request MDIO operations by Linux drivers.
The PHY “OS Driver” functionality is configured exclusively through the Linux device tree and doesn’t required any additional configuration at the application level.
New Features Version 3.1.0
Refactored Example Applications
The structure and content of the EC-Master example applications have been fundamentally revised for the Master Version 3.1. The goals of the conversion were, among other things, to provide a better overview, to make the main function more understandable and to get rid of identical files in several folders.
This was achieved by implementing a dedicated main file (EcDemoMain.cpp) for each operating system. This file is now available specifically for Windows, Linux, QNX, VxWorks and all other operating systems that are supported out-of-the-box. This makes it possible to completely dispense with #ifdef instructions, which means that the individual files are significantly shorter and, overall, more understandable for the user. Furthermore, common files that are used by the various sample applications have been moved to the new folder (ExamplesCommon). This causes that these files are only available once, which simplifies maintenance.
The new structure thus makes it easier to get started with EC master programming and, thanks to the clear, modular structure, allows certain modules to be used easily in your own EtherCAT application.
Software-in-the-loop EtherCAT network simulation
Starting with EC-Master V3.1 the network simulation software EC-Simulator can be loaded as a link layer. This enables the simulation of a complete EtherCAT network including all slaves on the master system without any additional external hardware. The EtherCAT frames are transferred directly from the master core to the simulator, processed there and then returned to the master core.
The application may use various EC-Simulator functions, e.g., esGetProcessImageInputPtr() and esGetProcessImageOutputPtr() to access the process data in the simulator. Additional functions are available for implementing test cases for error scenarios, e.g., a slave can be switched off and on again by using the API esPowerSlave().
The Network Driver Interface Specification (NDIS) is the specification for a network driver architecture that allows transport protocols like TCP/IP to communicate with an underlying physical network adapter. For sending and receiving EtherCAT frames in Windows, EC-Master previously made use of the well-known Windows packet capture library, WinPcap. However, WinPcap was based on the NDIS 5.x driver model, and development there has ceased. The latest versions of Windows 10 do not support the old NDIS 5.x version anymore, so now EC-Master V3.1 includes a new NDIS Link Layer (emllNdis.dll) so it is possible for EC-Master to work without WinPcap on all Windows 10 versions.
Support for CMSIS on STMicroelectronics STM32H7
EC-Master is now out-of-the-box available for systems using the CMSIS hardware abstraction layer for Arm® Cortex® based processors. The CMSIS defines generic tool interfaces and enables consistent device support.
The reference implementation is based on the STM32H747I-DISCO kit from STMicroelectronics.
The link layer uses the driver library CMSIS-Driver Ethernet (Driver_ETH.h) and thus supports numerous controllers from different STM32 series.
For the widely used Integrated Development Environments STM32CubeIDE from STMicroelectronics and µVision MDK5 from ARM ready-to-run project files are supplied.
Support for QNX 7 64-Bit on ARM64 CPUs
EC-Master is now available out-of-the-box for systems running the QNX SDP 7.0 on 64-bit versions of ARM (aarch64). The reference implementation is based on the Zynq UltraScale+ MPSoC ZCU102 evaluation kit.
A specially developed real-time Ethernet driver (link layer) is also used on this architecture, which realizes the fast and direct exchange of data between the master core and the Ethernet controller.
On the one hand, this reduces the computing power required and, on the other hand, the jitter of the outgoing EtherCAT frames is significantly smaller. This means that cycle times below one millisecond are possible.
Find out more: https://www.acontis.com/en/ethercat-master.html
Acontis technologies, based in Ravensburg Germany, was founded in 2001 by the todays managers Christoph Widmann and Stefan Zintgraf.
As a leading provider for EtherCAT® software and Windows® Real-time solutions acontis serves customers in the sectors machine builders, medical technology, automation, semiconductors and robotics.
In the future, expansion in the EtherCAT and real-time businesses are plant as well as new investments in the area of Time Sensitive Networking and OPC UA.
Our company is known for high quality products "Made in Germany". The product portfolio is supplemented by professional Training-, Support- and Software Services.
acontis technologies GmbH
Gartenstraße 46
88212 Ravensburg
Telefon: +49 (751) 5603030
Telefax: +49 (751) 5603031
https://www.acontis.com
Head of Sales & Marketing
E-Mail: r.schele@acontis.com