[etherlab-users] complete_sdo()
Andrej Mueller
andrej.mueller at afpt.de
Wed Oct 13 11:57:51 CEST 2010
Hello,
We'r trying to configure the Beckhoff module EL6731-0010 Profibus Slave with the function ecrt_slave_config_complete_sdo(). By the description of the state machine from Beckhoff two SDO objects 0x8000
and 0x8002 must be downloaded to configure the module for Profibus. When we'r downloading the objects with ...complete_sdo() the following error messages appears:
[ 7699.448924] EtherCAT WARNING 0-8: CoE Emergency Request received:
[ 7699.448927] Error code 0xA010, Error register 0x00, data:
[ 7699.448933] EtherCAT DEBUG: 00 00 80 21 13
[ 7699.488851] EtherCAT ERROR 0-8: SDO download 0x8000 (25 bytes) aborted.
[ 7699.488855] EtherCAT ERROR 0-8: SDO abort message 0x06090031: "Value of parameter written too high".
[ 7699.488858] EtherCAT ERROR 0-8: SDO configuration failed.
[ 7710.749184] EtherCAT 0: Domain 0: Working counter changed to 9/11.
[ 7710.839024] EtherCAT 0-4: Acknowledged state SAFEOP.
[ 7711.757414] EtherCAT 0: Domain 0: 3 working counter changes - now 11/11.
The values for the objects are from TwinCAT and stored in an array and the usage of the function you can see below:
if (!(sc_parameter = ecrt_master_slave_config(master, ProfibusSlave, Beckhoff_EL6731S))) {
fprintf(stderr, "Failed to get slave configuration.\n");
return -1;
}
uint8_t sdo[]={0xE9, 0xD9,};
uint8_t sdo_1[]={0x33, 0x00, 0x02 , 0x00 , 0x00, 0x09, 0x5f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x00, 0xf4, 0x00, 0xf4, 0x00, 0x00, 0x01};
int xx=(sizeof(sdo_1));
ecrt_slave_config_complete_sdo(sc_parameter, 0x8000, sdo_1 , xx);
ecrt_slave_config_complete_sdo(sc_parameter, 0x8002, sdo , 2);
My first question, is the usage of the function correct? How I can find out which value is too high? Or does it mean something else?
Thanks and kind regards
Andrej Mueller
--
AFPT GmbH
Trinkbornstraße 15-17
56281 Doerth
Germany
Phone: +49 6747 950185-0 | Fax: +49 6747 950185-9 | Url: www.afpt.de
Amtsgericht Koblenz | HRB 20 638 | USt-IdNr. DE253125882
Geschäftsführer: Dr.-Ing. Patrick Kölzer, Frank-Andre Rittenbruch
More information about the Etherlab-users
mailing list