Ethercatcpp is a C++ software framework aiming at simplifying the development of drivers for any kind of EtherCAT based devices. The intent is to develop reusable device drivers for an EtherCAT master station and to be able to describe a complete EtherCAT BUS that can in turn be reused. Its final purpose is to provide drivers for various kind of robots whose hardware control architecture is designed on top of an EtherCAT BUS.

About EtherCAT devices

The framework provides different projects for various kind of robots, for instance:

  • a dexterous hand from Shadow company
  • a dual arm cable robot
  • a surgical robot

It also already provides reusable device drivers for various EtherCAT devices like:

  • Maxon EPOS 3 and EPOS 4 drives
  • Beckhoff EtherCAT terminals and network heads/queues (included in the core package)
  • HMB ClipX analog amplifier
  • Sensodrive sensojoints

Design

Ethercatcpp is designed on top of the SOEM library. SOEM is the Simple Open Source EtherCAT Master from the Open EtherCAT Society. It is provided with a GPL license but a commercial use license can be obtained from RT-labs company (see https://rt-labs.com/products/).