EtherCAT: recognise slave bit error

02 Oct 2021 10:35 #222004 by bkt
if I send one of my drives in error, for example by disconnecting the power of only one, I see from Lcnc the errors reported by drive statur only until aqundo the drive does not reset and automatically goes into OP. At that point, however, Lcnc master ethercat no longer communicates with the drive and I have no way of making the problem appear on the pyvcp panel ... the error is visible on the terminal:
x @ demo: ~ $ dmesg | grep -i EtherCAT [21.953357] EtherCAT: Master driver 1.5.2 unknown [21.964953] EtherCAT: 1 master waiting for devices. [21.972553] ec_generic: EtherCAT master generic Ethernet device module 1.5.2 unknown [21.972564] EtherCAT: Accepting 68: ED: A6: 02: 73: 21 as main device for master 0. ........ [11957.633114] EtherCAT WARNING 0-main-3: Slave has state error bit set (SAFEOP + ERROR)!

if would to use PDOS entry 603F error list of my driver for to check error code .... how to write my xml? actually they are:
  <slave idx="3" type="generic" vid="000007DD" pid="01" configPdos="true">
    <sdoConfig idx="6060" subIdx="0"><sdoDataRaw data="08"/></sdoConfig>
    <sdoConfig idx="60C2" subIdx="1"><sdoDataRaw data="01"/></sdoConfig>
    <sdoConfig idx="60C2" subIdx="2"><sdoDataRaw data="FD"/></sdoConfig>
    <sdoConfig idx="607E" subIdx="0"><sdoDataRaw data="E0"/></sdoConfig>
    <syncManager idx="0" dir="out"></syncManager>
    <syncManager idx="1" dir="in"></syncManager>
    <syncManager idx="2" dir="out">
      <pdo idx="1601">
        <pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="driverControl" halType="bit"/>
        <pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="posCommand" halType="float" scale="25437,5"/>
    <syncManager idx="3" dir="in">
      <pdo idx="1A01">
        <pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="driverStatus" halType="bit"/>
        <pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="posActual" halType="float" scale="0.000039312"/>
        <pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velActual" halType="float" scale="1"/>
    <dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="250000" sync1Cycle="0" sync1Shift="0"/>
    <watchdog divider="2048" intervals="1000"/>
OR Is there a way to detect this problem from Lcnc without making requests to the drive?

Thanks for any suggest

Please Log in or Create an account to join the conversation.

02 Oct 2021 15:47 #222025 by db1981

if you loose power or ethernet connection you are lost.... Etherlabmaster does no reconnect, you have to restart the system... (its not twincat...)

normal errors in connected state you can read out (overvoltage, overcurrent etc. ) with the error register.

you can try :

<pdoEntry idx="603F" subIdx="00" bitLen="16" halPin="errorcode" halType="u32"/>

at the end of the 1a01 section .
check if the mapping works, if not more informations about the drive are neccesary
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

Time to create page: 0.098 seconds
Powered by Kunena Forum