Hal to Registers. Come in, Registers. Over.
27 Sep 2023 20:38 #281739
by endian
Replied by endian on topic Hal to Registers. Come in, Registers. Over.
Hello,
Yes, there is running stuff from Sockheaven but be very carefully... there is config for AKD2G - which is gantry hardware...
Try :
1) put your DC config at the end of the configuration
2) configPdos="true" have to he true because you are something setuping
3) setup SDOs have to be at the beginning before definition of cyclic communicaiton objects
4) DC config should looks like thisand value of assignActivate="" should be greater by greating number of active cyclic PDOs ... I do not know if I am right but this parameter is like time window for communication slave in DC synchronized on the fly train ... I am with my old stuff running with 7 in and 4 out cyclic PDOs at assignActivate="660"
from my point of view your basic .xml file should looks like
I am glad to hear something was helpful... try to learn on someones fails no on your owns
Yes, there is running stuff from Sockheaven but be very carefully... there is config for AKD2G - which is gantry hardware...
Try :
1) put your DC config at the end of the configuration
<syncManager idx="0" dir="out"> </syncManager>
<syncManager idx="1" dir="in"> </syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="TxControlWord" halType="u32"> </pdoEntry>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="TxPositionCommand" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="RxStatusWord" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="RxPositionFeedback" halType="float"/>
</pdo>
</syncManager>
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/>
</slave>
</master>
</masters>
2) configPdos="true" have to he true because you are something setuping
3) setup SDOs have to be at the beginning before definition of cyclic communicaiton objects
<!-- Set OpMode to Cyclic Synchronous Position -->
<sdoConfig idx="6060" subIdx="00">
<sdoDataRaw data="08"/>
</sdoConfig>
<!-- Set Cycle Time -->
<sdoConfig idx="60C2" subIdx="01">
<sdoDataRaw data="01"/>
</sdoConfig>
<!-- Set Cycle exp -->
<sdoConfig idx="60C2" subIdx="02">
<sdoDataRaw data="FD"/>
</sdoConfig>
<syncManager idx="0" dir="out"> </syncManager>
<syncManager idx="1" dir="in"> </syncManager>
<syncManager idx="2" dir="out">
4) DC config should looks like this
<!-- <dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/> -->
from my point of view your basic .xml file should looks like
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="0000006A" pid="00414b44" configPdos="true">
<!-- Clear SM PDOs -->
<sdoConfig idx="1C12" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear SM PDOs -->
<sdoConfig idx="1C13" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear RX PDO1 -->
<sdoConfig idx="1A00" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Map status word to RX-PDO1 -->
<!-- 0x6041 0010 -->
<sdoConfig idx="1A00" subIdx="01">
<sdoDataRaw data="10 00 41 60"/>
</sdoConfig>
<!-- Map position feedback to RX-PDO1 -->
<!-- 0x6064 0020 -->
<sdoConfig idx="1A00" subIdx="02">
<sdoDataRaw data="20 00 64 60"/>
</sdoConfig>
<!-- Set RX-PDO1 count to 2 -->
<sdoConfig idx="1A00" subIdx="00">
<sdoDataRaw data="02"/>
</sdoConfig>
<!-- Clear RX-PDO2 -->
<sdoConfig idx="1A01" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear RX-PDO3 -->
<sdoConfig idx="1A02" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear RX-PDO4 -->
<sdoConfig idx="1A03" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear TX-PDO1 -->
<sdoConfig idx="1600" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Map control word to TX-PDO1 -->
<!-- 0x6040 0010 -->
<sdoConfig idx="1600" subIdx="01">
<sdoDataRaw data="10 00 40 60"/>
</sdoConfig>
<!-- Map position command to TX-PDO1 -->
<!-- 0x607A 0020 -->
<sdoConfig idx="1600" subIdx="02">
<sdoDataRaw data="20 00 7A 60"/>
</sdoConfig>
<!-- Set TX-PDO1 count to 2 -->
<sdoConfig idx="1600" subIdx="00">
<sdoDataRaw data="02"/>
</sdoConfig>
<!-- Clear TX-PDO2 -->
<sdoConfig idx="1601" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear TX-PDO3 -->
<sdoConfig idx="1602" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Clear TX-PDO4 -->
<sdoConfig idx="1603" subIdx="00">
<sdoDataRaw data="00"/>
</sdoConfig>
<!-- Download PDO 0x1C12:01 index -->
<!-- 0x1600 -->
<sdoConfig idx="1C12" subIdx="01">
<sdoDataRaw data="00 16"/>
</sdoConfig>
<!-- Download PDO 0x1C12 count -->
<sdoConfig idx="1C12" subIdx="00">
<sdoDataRaw data="01"/>
</sdoConfig>
<!-- Download PDO 0x1C13:01 index -->
<!-- 0x1A00 -->
<sdoConfig idx="1C13" subIdx="01">
<sdoDataRaw data="00 1A"/>
</sdoConfig>
<!-- Download PDO 0x1C13 count -->
<sdoConfig idx="1C13" subIdx="00">
<sdoDataRaw data="01"/>
</sdoConfig>
<!-- Set OpMode to Cyclic Synchronous Position -->
<sdoConfig idx="6060" subIdx="00">
<sdoDataRaw data="08"/>
</sdoConfig>
<!-- Set Cycle Time -->
<sdoConfig idx="60C2" subIdx="01">
<sdoDataRaw data="01"/>
</sdoConfig>
<!-- Set Cycle exp -->
<sdoConfig idx="60C2" subIdx="02">
<sdoDataRaw data="FD"/>
</sdoConfig>
<syncManager idx="0" dir="out"> </syncManager>
<syncManager idx="1" dir="in"> </syncManager>
<syncManager idx="2" dir="out">
<pdo idx="1600">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="TxControlWord" halType="u32"> </pdoEntry>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="TxPositionCommand" halType="s32" />
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="RxStatusWord" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="RxPositionFeedback" halType="s32"/>
</pdo>
</syncManager>
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/>
</slave>
</master>
</masters>
I am glad to hear something was helpful... try to learn on someones fails no on your owns
The following user(s) said Thank You: rwistort
Please Log in or Create an account to join the conversation.
Time to create page: 0.337 seconds