EtherCAT Slave

SimWB supports the EtherCAT protocol both as master and slave. SimWB can be configured to act as a master to query EtherCAT remote I/O slave devices on the network. It can also be configured to act as a slave with a flexible I/O configuration. In this case it responds to the EtherCAT’s master queries to set and get RTDB variable values.

In order to run the slave, you need an ESD™ ECS-PCIe/1100 PCIe board, driver, and EtherCAT slave libraries. For more information, please refer to the ESD™ web site at https://esd.eu/en/products/ecs-pcie1100i .

The slave must be properly configured. For more information, see Write Slave EEPROM.

Reference Information

I/O Card Model Number

ECS-PCIe/FPGA (recommended for better performance).

ECS-PCIe/1100.

I/O Driver Model Number

N/A.

I/O Module License:

ICS-SWB-1237

For the slave configuration, define the I/O points that the slave will access and map them to specific memory locations in the slave’s input and output sync managers. When the configuration is saved to the real-time host, a slave Object Dictionary file is generated.

Configuration Workflow

There are 2 ways you can go about to configure the SimWB EtherCAT slave.

  Manual Configuration:

  • Define the slave properties (Vendor Id, Product Code, Revision Number, Slave Name) as well as the COE output and input mailbox Sync manager addresses and size. Thos addresses must match your slave EEPROM configuration for the master to be able to communicate with the slave.
  • Configure the input/output Sync Manager
  • Define TxPDO and RxPDO on the selected Sync Manager
  • Define PDO entries on the selected PDO
  • Map the individual PDO entries to SimWB RTDB items.

  

Note:  Entries - PDO, PDO Index and PDO Sub Index added manually to the mapping panel will be lost if they are not mapped to RTDB items.

Slave Properties

Define slave vendor Id, Product Code, mailbox output and input sync manager addresses.


Sync Manager

Define the address and the size (bytes) of the selected sync manager.
 
Click on the New PDO button to add a PDO to the sync manager..


Tx / Rx PDOs

Define PDO address and the optional PDO description. The description will be shown when listing the PDOs from the master.
 
Click on the new PDO Index button to add a new Index to the PDO..


PDO Index

Define the PDO index with its address.
 
Click on the new PDO Sub Index button to add a new Sub Index (Entry) to the PDO Index..


PDO Sub Index

Define the PDO Sub index with its associated raw data type and optional entry name.
 
The PDO Sub Index entries can now be mapped to items in the selected RTDB.
 


  Import a pre created ESI XML file:

  • Select the ESI file to import
  • Pick a slave definition from the list
  • Use the selected to create the mappable PDO entries in the PDO Mapping tab
  • Map the individual PDO entries to SimWB RTDB items.

Choose ESI File

Pick the ESI file that contains the slave v definition that you want to use.


Pick the slave from the list

Pick the ESI file that contains the slave definition that you want to use.
 
Click on the Use Selected for Mapping button to select the slave and add its PDO/PDO Index,etc. into the PDO Mapping tab. All existing definitions in the PDO Mapping tab list will be deleted.
Make sure that the slave properties defined in the ESI file correspond to what you want you SimWB ECAT slave to be.
You can now use the PDO Sub Index entries to map to RTDB items.

.

Generate ESI / XML File

You can save your slave configuration to an XML ESI file by clicking on the Generate ESI XML button. The file will be displayed under the ESI / XML tab in the editor window.

ESI / XML File:

You can save the content of the editor by clicking on the Save ESI File button.
You will need this file later in your master configuration tool (TwinCAT™ , KPA Studio ™) to program the configuration into the slave SII/EEPROM.

Write Slave EEPROM

In order for the master to talk to the slave using the Sync Managers / PDO / PDO entries you defined, you will have to store the configuration into the slave's EEPROM.
Unfortunately, the slave's EEPROM is under the control of the EtherCAT master which means that the slave cannot burn its own EEPROM.
You will need to use your master configuration tool (TwinCAT™,etc) to generate the binary version of the ESI file and store it into the slave's EEPROM.
If you are using the EtherLab® tool as a master , you can burn the slave EEPROM with the following command:

ethercat sii_write -pxx bin_eeprom_file ethercat rescan
 
where xx is the slave number corresponding to the ESD EtherCAT slave in your network and bin_eeprom_file is the binary version of the ESI file.

Mapping PDO Entries

 

Configuration Column

Slave PDO Sub Index entry.

Mapped Point(s) Column

I/O point(s) a field is mapped to.

To map a field to a PDO entry, select the PDO entry on the left side of the I/O Mappings form, then click on a check box for an I/O point on the right side of the form. See I/O Mappings... for details.