Tutorial
Here you can find all tutorial that you should read to get a deep understanding of ethercatcpp usage.
Before reading these tutorials, you need a PID workspace and ethercatcpp-core installed on your workstation.
Writing a simple application
This tutorial gives an overall understanding of how to use the framework. It presents a simple application that use an ethercat terminal to get state of an encoder.
Creating device drivers
The principal task when using ethercatcpp is to develop device drivers for the new ethercat devices you want to use. In the following tutorials, you can learn how to create new device drivers compatible.
EtherCAT devices can be of different natures: with/without input or output; configurable (CoE mode like a CanOpen device) or not. The next tutorials try to regroup a panel of those possibilities.
Input only device: example of a Beckhoff EL1018
This tutorial explains how to create a new input device driver for a beckhoff EL1018 device.
Output only device: example of a Beckhoff EL2008
This tutorial explains how to create a new output device driver for a beckhoff EL2008 device.
Complex device (input,output and configurable): example of EPOS4
This tutorial explains how to create a new device driver for a Maxon Epos4 motor drive. This tutorial is particularly important in order to understand how to deal with complex device configuration using CoE (CANOpen over ethercat).
Creating reusable driver for robots
Now you know how to make a simple application and create new devices drivers, this tutorial explains how to regroup many devices to create a reusable driver for more complex hardware architectures like the ones you would need for robots.
Before reading this tutorial, be aware that you need all devices packages present in your robot installed on your workstation.
Utilities for CoE capable devices
Devices supporting CANOpen over Ethercat (CoE) may be quite complex to configure. This is particularly due to the existence of an object dictionnary containing definitions that can be put into PDO Mappings, and one or more mappings can be in turn used into PDO buffers.
The following tutorial presents the different utilities provided by the ethercatcpp API in order to simplify CoE management.
CiA 402 devices
The ciA 402 norm is a standard for CANOpen devices user fo rmotor control. This norm is widely used for CoE devices like servodrives / ESC. We provide a pattern class for CiA 402 devices that implements basics features of this norm and ease the correct implementation of drivers for such devices.