Category: EtherCAT
Hello,
if your config with profibus needs a sync movements... It is necessary to use a Equidistant mode... if not it should be in the free run -
DC sync in your case 1C32 parameter is -
“03 00 03 00 40 42 0F 00 00 00 00 00 00”
- 40 42 0f 00 == 1ms but it is too short and I can guarantee timing incidents ..
Free run in your case 1C32 parameter is -
“03 00 01 00 40 42 0F 00 00 00 00 00 00”
- 40 42 0f 00 == 1ms but real synchronization it based on scan time of profibus
then you configuration is missing the SDOs -
<!--Slave PDO configuration shaping...-->
<!--EL67xx CoE Init Cmd 0 (1C32:00)-->
<sdoConfig idx="1C32" subIdx="complete">
<sdoDataRaw data="03 00 03 00 40 42 0F 00 00 00 00 00" />
</sdoConfig>
<!--EL67xx CoE Init Cmd 1 (1C33:00)-->
<sdoConfig idx="1C33" subIdx="complete">
<sdoDataRaw data="03 00 22 00 00 00 00 00 00 00 00 00" />
</sdoConfig>
<!--EL67xx CoE Init Cmd 2 (F800:00)-->
<sdoConfig idx="F800" subIdx="complete">
<sdoDataRaw data="11 00 01 09 E8 03 0B 00 20 03 09 10 64 7E 04 01 0A 00 04 00 10 00 00 00 00 00 05 00" />
</sdoConfig>
<!--EL67xx CoE Init Cmd 3 (8000:00)-->
<sdoConfig idx="8000" subIdx="complete">
<sdoDataRaw data="2D 00 0A 00 00 00 00 00 00 00 00 00 00 00 A8 01 00 00 40 34 00 00 00 00 26 02 00 00 00 00 88 01 14 0B BE CE 00 C0 00 08 00 00 00 00 40 00 63 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11 21" />
</sdoConfig>
<!--EL67xx CoE Init Cmd 4 (8010:00)-->
<sdoConfig idx="8010" subIdx="complete">
<sdoDataRaw data="2D 00 1F 00 00 00 00 00 00 00 00 00 00 00 A0 01 00 00 06 00 00 00 00 00 0A 05 00 00 00 00 80 01 14 0B 81 22 00 00 00 00 C0 07 0D 01 00" />
</sdoConfig>
<!--download pdo 0x1C12 index-->
<sdoConfig idx="1C12" subIdx="complete">
<sdoDataRaw data="02 00 00 16 01 16" />
</sdoConfig>
<!--download pdo 0x1C13 index-->
<sdoConfig idx="1C13" subIdx="complete">
<sdoDataRaw data="03 00 00 1A 01 1A 80 1A" />
</sdoConfig>
<!--DP PrmData Slave 010-->
<sdoConfig idx="8001" subIdx="00">
<sdoDataRaw data="80 01 14 0B BE CE 00 C0 00 08 00 00 00 00 40 00 63 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" />
</sdoConfig>
<!--DP CfgData Slave 010-->
<sdoConfig idx="8002" subIdx="00">
<sdoDataRaw data="11 21" />
</sdoConfig>
<!--DP PrmData Slave 031-->
<sdoConfig idx="8011" subIdx="00">
<sdoDataRaw data="80 01 14 0B 81 22 00 00 00 00" />
</sdoConfig>
<!--DP CfgData Slave 031-->
<sdoConfig idx="8012" subIdx="00">
<sdoDataRaw data="C0 07 0D 01 00" />
</sdoConfig>
<!--Slave PDO configuration shaping end...-->
it will be right behind the "complete" mapping guys but in front off sync managers ...
How can I understand this?
Your config is missing of the DC configuration adn SDO datas cofig too
What have I forgotten?
If you will choose the DC operation mode - somewhere in the slave config it has to be a DC configuration of the slave - something like
<!-- EL6731 -->
<pdo idx="1A80">
<pdoEntry idx="F102" subIdx="01" bitLen="08" halPin="state-Slave-F102-01" halType="u32" />
<pdoEntry idx="F102" subIdx="02" bitLen="08" halPin="state-Slave-F102-02" halType="u32" />
<pdoEntry idx="F102" subIdx="03" bitLen="08" halPin="state-Slave-F102-03" halType="u32" />
<pdoEntry idx="F102" subIdx="04" bitLen="08" halPin="state-Slave-F102-04" halType="u32" />
<pdoEntry idx="F102" subIdx="05" bitLen="08" halPin="state-Slave-F102-05" halType="u32" />
<pdoEntry idx="F102" subIdx="06" bitLen="08" halPin="state-Slave-F102-06" halType="u32" />
<pdoEntry idx="F102" subIdx="07" bitLen="08" halPin="state-Slave-F102-07" halType="u32" />
<pdoEntry idx="F101" subIdx="03" bitLen="08" halPin="state-EL6731" halType="u32" />
<pdoEntry idx="F101" subIdx="14" bitLen="01" halPin="diagFlag-EL6731" halType="bit" />
<pdoEntry idx="F103" subIdx="01" bitLen="01" halPin="diagFlagSlave-F103-01" halType="bit" />
<pdoEntry idx="F103" subIdx="02" bitLen="01" halPin="diagFlagSlave-F103-02" halType="bit" />
<pdoEntry idx="F103" subIdx="03" bitLen="01" halPin="diagFlagSlave-F103-03" halType="bit" />
<pdoEntry idx="F103" subIdx="04" bitLen="01" halPin="diagFlagSlave-F103-04" halType="bit" />
<pdoEntry idx="F103" subIdx="05" bitLen="01" halPin="diagFlagSlave-F103-05" halType="bit" />
<pdoEntry idx="F103" subIdx="06" bitLen="01" halPin="diagFlagSlave-F103-06" halType="bit" />
<pdoEntry idx="F103" subIdx="07" bitLen="01" halPin="diagFlagSlave-F103-07" halType="bit" />
<pdoEntry idx="0000" subIdx="00" bitLen="08" halPin="GAP-0000-0" halType="u32" />
</pdo>
</syncManager>
<dcConf assignActivate="1000" sync0Cycle="*1" sync0Shift="0" sync1Cycle="*1" sync1Shift="100"/>