[etherlab-users] (configuring pdo and sdo for a slave motion controller)

Gavin Lambert gavin.lambert at tomra.com
Wed Jan 16 01:13:33 CET 2019

On 16 January 2019 01:52, quoth Samiha Islam:
> I was a bit confused so as to how to modify the SDO data for the 'ethrcat xml' command. I am concerned that the commands 'ethercat config' and 'ethercat domain' yields nothing. I am working on a modified version of the 'user' example for my slave. It contains the cyclic task.

The "ethercat xml" command displays an SII XML document inferred from the slave's SII EEPROM and/or CoE; it should be similar (but less detailed) to the one supplied by the slave vendor.  It's not something that you can modify.

It is normal for "ethercat config" and "ethercat domain" to display nothing when no application is running.  They provide information about the config and data requested by the running application.

> So the PDO cyclic control loop only works in OP state? Not in PREOP? Do I change the state and then run the code? 

The cyclic loop in the application will execute while slaves are in any state.  Slaves only provide valid PDO inputs in SAFEOP or OP, and only follow PDO outputs in OP.  The master will automatically try to transition the slaves from PREOP to OP over several cycles after you've called ecrt_master_activate, based on the configuration you supplied before calling that.  It's up to your application logic to detect when the slaves are in a good state to perform whatever task is required (and to detect if they encounter an error or other abnormal state).

It sounds like you should have a read of both the documentation for the EtherLab master itself and for the EtherCAT protocol in general.

Gavin Lambert
Senior Software Developer

Direct dial: +64 (9) 929 2632 

COMPAC SORTING EQUIPMENT LTD | 4 Henderson Pl | Onehunga | Auckland 1061 | New Zealand
Switchboard: +49 2630 96520 | https://www.tomra.com

The information contained in this communication and any attachment is confidential and may be legally privileged. It should only be read by the person(s) to whom it is addressed. If you have received this communication in error, please notify the sender and delete the communication.

More information about the etherlab-users mailing list