[Etherlab-users] What Hardware

Mercado, Ronaldo (DLSLtd,RAL,LSCI) ronaldo.mercado at diamond.ac.uk
Mon Feb 22 10:23:34 CET 2021

Thanks to Karl for asking. I find this thread very interesting.

I can comment on the requirements of Digital I/O and Analogue I/O. I think that a standard server will be enough. 
We have been using Dell servers (most recently the R340) that cost about £1200.  We use the generic driver at 1 ms cycle rate.

I don't have experience on SSI or serial using etherlab.
Sebastien mentioned moxa and I can second that - for serial we use Moxa terminal servers, e.g. NPort 6650-32

IPMI on a standard server is convenient for monitoring of the console. 
We enquired recently about Beckhoff IPCs that would support that. 
It seems we could use the Intel AMT technology of the more recent Intel chips. 
The advantage we see is the form factor of an IPC vs the deep rack-mounted server.
I recently ordered one C6030-0060 with the 6th Generation Intel® Core i5 6500 to trial.

I also find very interesting the link to the Xeon server from Thomas Krenn. 
The Dell servers are 600 mm deep and some equipment racks are not deep enough for them. 


Ronaldo Mercado

-----Original Message-----
From: Etherlab-users <etherlab-users-bounces at etherlab.org> On Behalf Of Sebastien BLANCHET
Sent: 16 February 2021 11:59
To: etherlab-users at etherlab.org
Subject: Re: [Etherlab-users] What Hardware


IgH EtherCAT master supports any EtherCAT vendors because all EtherCAT devices follow a very precise standard imposed by the EtherCAT Technology Group.

In practice (most) Beckhoff ELxxxx I/O modules are easy to use because they are designed to support only EtherCAT.

If you buy I/O modules which are compatible with several fieldbuses (for example Beckhoff BKxxx series or WAGO 750 series which support CANopen, Modbus, EtherCAT, etc) you have to configure them with SDO start-up list before be able to use the PDO.

Example with Kollmorgen AKD (it is not a basic I/O module but it shows the TxPDO and RxPDO setup) https://www.iram.fr/~blanchet/ethercat/akd/examples/

If you use TwinCAT, then it it not a real problem because you can just click in the GUI to setup the SDO startup lists, but if you use IgH EtherCAT master, you have to write your own C code to define these SDO startup lists.

List of Beckhoff couplers that I have tested
- EK1100
- EK1501-0010

To convert copper to fiber I use
- EK1521-0010
- EK1122

All these couplers work very well. They are plug-and-play, nothing to configure. You just need to use "ethercat alias" command to setup the wanted address on the EtherCAT bus.

List of easy-to-use modules that I have tested
- digital input: EL1xxx modules
- digital output: EL2xxx modules
- analog input EL3xxx modules
- analog output: EL4xxx modules
- position measurement module EL5xxx

List of difficult to use modules that I have tested with IgH EtherCAT
- Communication modules: EL6xxx
  I have tested EL6002 and EL6614. They work only in kernel mode.
- Compact drive modules: EL7xxx
  I have tested EL7031. It work but you have to implement yourself the finite-state-machine in the software to stop the motor when you hit end switches.

In Kernel mode, you can use only C (no C++). You cannot use neither libraries like libc nor floating-point instructions. So you have to split your application in several programs.

In my application, I have chosen to run only in user mode because I wanted to use C++/Qt.  So I cannot use neither serial-over-ethercat nor ethernet-over-ethercat in my application. So I use physical ports instead. I use Debian with a PREEMPT-RT Linux kernel.

The main advantage of IPMI is the remote KVM (Keyboard Video and Mouse) You can do all maintenance operation from a remote location, including reinstalling the operating system, editing the BIOS settings, etc.

I agree: the main advantage of the IgH EtherCAT master is the free 
software. I use only free software in my application and in the tool 
chain, so that I can maintain myself my application for decades if needed.

IgH EtherCAT master is a very good free software: the software runs very 
well, even on old computers with slow CPU and low memory. I use it since 
2011 and I do not have encountered bugs yet.
But the community is still small (there is less and less messages on the 
mailing list) and there is not a lot of documentation. At the end the 
learning curve is steep.

There are also some limitations:
As far as I know, IgH EtherCAT master does not support all the EtherCAT 
features like TwinCAT does. In particular I think that 
File-Over-EtherCAT, ServoProfile-Over-Ethercat are missing. On the other 
hand Serial-Over-EtherCAT and Ethernet-Over-EtherCAT work but only in 
kernel mode.

If you need an optimized Ethernet driver for EtherCAT that are not 
provided in the official IgH EtherCAT master release, you can get Gavin 
LAMBERT's unofficial patches for newer kernels. I use them for a couple 
of years and they work very well.


Sebastien BLANCHET

Le 15/02/2021 à 22:39, Karl Zeilhofer a écrit :
 > Dear Sebastian,
 > thank you very much for your answers. They are very accurate and helpful.
 > On 2/15/21 6:49 PM, Sebastien BLANCHET wrote:
 >> 1/
 >> For the EtherCAT IO, you can buy Beckhoff ELxxxx terminals
 >> because they work directly with IgH EtherCAT master.
 >> https://www.beckhoff.com/en-us/products/i-o/ethercat-terminals/
 >> For the coupler the standard EK1100 is very good. If you need to run
 >> over fiber optic, Beckhoff has also fiber optic model like EK1501
 > Currently I'm planning to use all IO terminals from Beckhoff. But I
 > would be glad, if the IGH EtherCAT master also supports other vendors of
 > EtherCAT components. What would be the difficulties there?
 >> 2/
 >> For the RS232 interface
 >> - The easier solution is to use physical serial port or USB-RS232
 >> adapters
 >> - Beckhoff Serial-Over-EtherCAT module (EL6002) work only
 >> with TwinCAT or with IgH EtherCAT master in **KERNEL** mode.
 >> It would be easier to drive your other I/O in user mode with the
 >> libethercat.so library, but maybe you can run one EtherCAT controller
 >> in kernel mode for the serial ports and the other one in user mode for
 >> the others I/O. I do not know if it works because I have never tried
 >> such a configuration.
 >> - MOXA sells nice serial-over-ethernet adapter but their NPREAL driver
 >> is not compatible yet with PREEMPT-RT kernel, so you have to drive the
 >> serial port from another computer
 > Thanks for this, I've to investigate the disadvantages of Kernel mode
 > master.
 >> 3/
 >> For cycle time between 1 and 10ms, you can use a PREEMPT-RT Linux
 >> kernel, and run your control program in user mode.
 >> - For 10ms you can use the generic Ethernet driver
 >> - For 1ms you must use an optimized Ethernet driver (actually e1000,
 >> e1000e or r8169)
 >> 4/
 >> You can use a PC desktop for the development but for the production an
 >> industrial or server computer is prefereable.
 >> The main advantage of Beckhoff IPC are
 >> - very robust
 >> - 24VDC power supply
 >> - very long lifecycle: you can buy exactly the same model for 10 years.
 >> - they can repair the IPC during 20 years.
 >> The only drawback: they lack of IPMI for remote management.
 >> My prefered models are the C6920 or C6930 with the optional plug-in
 >> card slots.
 > Thanks for that tip.
 >> If you need an IPMI interface for remote management, a compact
 >> Supermicro server with a Xeon-D processor is also an interesting option
 > IPMO is currently not needed, but the hardware looks very promising for
 > it's price.
 >> 5/
 >> Beckhoff has a new product called "TwinCAT/BSD" that may interest you.
 >> It is TwinCAT + FreeBSD.
 >> I have never tried yet, but if I have to start a new project from
 >> scratch with EtherCAT, it would be a serious design option.
 > My main motivation for the IGH EtherCAT master is the free software in
 > the whole tool chain. No licensing, no end of support.
 > Thanks again,
 > Karl
 >> Regards,
 >> ---
 >> Sebastien BLANCHET
 >> Le 15/02/2021 à 16:26, Karl Zeilhofer a écrit :
 >>> Hello users of EtherLab!
 >>> We are planing a retrofit a control system in the industrial field with
 >>> EtherCAT components.
 >>> * 500 digital I/Os
 >>> * 4 Analog Inputs
 >>> * 15 Analog Outputs
 >>> * SSI Input
 >>> * Some 9.6kbaud RS232 ports
 >>> Cycle Time should be in the range of 1 to 10ms.
 >>> What hardware would you recommend?
 >>> I have an offer for a Beckhoff IPC for around 2.000€ for an Core i7 
 >>> 4 LAN ports.
 >>> Another offer is about 800€ for a similar desktop system.
 >>> How critical is the decision for or against the supported Ethernet chip
 >>> sets (e1000, e1000e or r8169)? Would the generic driver be sufficient?
 >>> Kind regards,
 >>> Karl Zeilhofer

Etherlab-users mailing list
Etherlab-users at etherlab.org

This e-mail and any attachments may contain confidential, copyright and or privileged material, and are for the use of the intended addressee only. If you are not the intended addressee or an authorised recipient of the addressee please notify us of receipt by returning the e-mail and do not use, copy, retain, distribute or disclose the information in or attached to the e-mail.
Any opinions expressed within this e-mail are those of the individual and not necessarily of Diamond Light Source Ltd. 
Diamond Light Source Ltd. cannot guarantee that this e-mail or any attachments are free from viruses and we cannot accept liability for any damage which you may sustain as a result of software viruses which may be transmitted in or with the message.
Diamond Light Source Limited (company no. 4375679). Registered in England and Wales with its registered office at Diamond House, Harwell Science and Innovation Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom

More information about the Etherlab-users mailing list