[etherlab-users] FW: ERRORs on slaves after ethercat start in dmesg

Ian Norton I.Norton at CranfieldAerospace.com
Mon Mar 29 12:34:12 CEST 2010



-----Original Message-----
From: Ian Norton 
Sent: 29 March 2010 11:07
To: 'Florian Pose'
Subject: RE: [etherlab-users] ERRORs on slaves after ethercat start in
dmesg


Hi Florian,

Thanks, that makes sense to me now.

Since this post, we have had a firmware update for slave 0 that has cleaned up the SDO issue!

By completely defining and registering the PDO's for slave 1, its now working. YAAAHOOO!!!!!

However, slave 0 (a Kollmorgen S300 servo drive) is not!!!!????

The attached main.c does no PDO configuring, just sets the sync manager to the required PDO mapping which want and which appears to be set when doing -v pdos after a first poweron of the drive.

The sii is configured to set the following..



gcs at gcs-laptop:~/gseat/ethercat-default/examples/user$ sudo /opt/etherlab/bin/ethercat -v pdos
SM0: PhysAddr 0x1800, DefaultSize  512, ControlRegister 0x26, Enable 1
SM1: PhysAddr 0x1c00, DefaultSize  512, ControlRegister 0x22, Enable 1
SM2: PhysAddr 0x1100, DefaultSize    0, ControlRegister 0x24, Enable 1
  RxPDO 0x1702 "Outputs"
    PDO entry 0x606b:00, 32 bit, "Velocity demand value"
    PDO entry 0x6040:00, 16 bit, "Control word"
SM3: PhysAddr 0x1140, DefaultSize    0, ControlRegister 0x20, Enable 1
  TxPDO 0x1b03 "Inputs"
    PDO entry 0x6064:00, 32 bit, "Position actual value"
    PDO entry 0x6077:00, 16 bit, "Torque actual value"
    PDO entry 0x6041:00, 16 bit, "Status word"


THEN FAILING when our main.c runs, OR, if the master is started AFTER the drive has powered up, it reverts to.......



gcs at gcs-laptop:~/gseat/ethercat-default/examples/user$ sudo /opt/etherlab/bin/ethercat -v pdos
SM0: PhysAddr 0x1800, DefaultSize  512, ControlRegister 0x26, Enable 1
SM1: PhysAddr 0x1c00, DefaultSize  512, ControlRegister 0x22, Enable 1
SM2: PhysAddr 0x1100, DefaultSize    0, ControlRegister 0x24, Enable 1
  RxPDO 0x1702 ""
    PDO entry 0x606b:00, 32 bit, ""
    PDO entry 0x6040:00, 16 bit, ""
SM3: PhysAddr 0x1140, DefaultSize    0, ControlRegister 0x20, Enable 1
  TxPDO 0x1b01 ""
    PDO entry 0x6064:00, 32 bit, ""
    PDO entry 0x6041:00, 16 bit, ""


The dmesg o/p after running main.c is as attached and contains loads of stuff I dont understand.

Can you say whats going on with this DIFFICULT device please? It's driving me insane!!!!!

regards
Ian

-----Original Message-----From: etherlab-users-bounces at etherlab.org
[mailto:etherlab-users-bounces at etherlab.org]On Behalf Of Florian Pose
Sent: 26 March 2010 16:24
To: etherlab-users at etherlab.org
Subject: Re: [etherlab-users] ERRORs on slaves after ethercat start in
dmesg


Hi,

On Thu, Mar 18, 2010 at 03:14:13PM -0000, Alison Eve wrote:
> [ 1852.616999] EtherCAT: Scanning bus.
> [ 1852.815792] EtherCAT ERROR: SDO upload 0x1702:00 aborted on slave 0.
> [ 1852.815800] EtherCAT ERROR: SDO abort message 0x06020000: "This object does not exist in the object directory".
> [ 1852.815803] EtherCAT ERROR: Failed to read number of mapped PDO entries.
> [ 1852.815807] EtherCAT ERROR: Failed to read mapped PDO entries for PDO 0x1702.
> [ 1852.822636] EtherCAT ERROR: SDO upload 0x1B01:00 aborted on slave 0.
> [ 1852.822642] EtherCAT ERROR: SDO abort message 0x06020000: "This object does not exist in the object directory".
> [ 1852.822646] EtherCAT ERROR: Failed to read number of mapped PDO entries.
> [ 1852.822649] EtherCAT ERROR: Failed to read mapped PDO entries for PDO 0x1B01.
> [ 1853.876031] EtherCAT ERROR: Timeout after 1000 ms while waiting for SDO 0x1c12:0 upload response on slave 1.
> [ 1853.876038] EtherCAT ERROR: Failed to read number of assigned PDOs for SM2 of slave 1.
> [ 1854.876026] EtherCAT ERROR: Timeout after 1000 ms while waiting for SDO 0x1c13:0 upload response on slave 1.
> [ 1854.876032] EtherCAT ERROR: Failed to read number of assigned PDOs for SM3 of slave 1.
> [ 1854.876036] EtherCAT: Bus scanning completed in 2260 ms.
> 
> Can anyone help explain what is happening and what we should do to get rid of these errors please?

Slave 0: The master successfully reads out the PDO assignment, but fails
to read the PDO mapping of the PDOs 0x1702 and 0x1B01. The're obviously
assignt, but in that case the above objects have to exist, for a master
to read out the corresponding PDO entries. Anyway, if you *know* the
mapped PDO entries, you can operate the slave anyway, if you hand the
actual PDO tree to the ecrt_slave_config_pdos() method.

Slave 1: The master fails to read out the current PDO assignment/mapping, because
the slave does not answer. If the slave announces to support CoE (see
output of 'ethercat slaves -v'), then the objects 0x1c12 and 0x1c13
must be readable, anything else does not conform to the EtherCAT
specification. Please notify the vendor about this. The device will not
pass the conformance test! But again: If you know the config, you can
use ecrt_slave_config_pdos() to pass the config to the master.

-- 
Best regards,
Florian Pose

http://etherlab.org
_______________________________________________
etherlab-users mailing list
etherlab-users at etherlab.org
http://lists.etherlab.org/mailman/listinfo/etherlab-users
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dmesg7
Type: application/octet-stream
Size: 14688 bytes
Desc: dmesg7
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20100329/d955cbac/attachment-0006.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: main.c
Type: application/octet-stream
Size: 11231 bytes
Desc: main.c
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20100329/d955cbac/attachment-0007.obj>


More information about the Etherlab-users mailing list