Kinko ECT coupler
- bkt
-
Topic Author
- Offline
- Platinum Member
-
Less
More
- Posts: 1111
- Thank you received: 114
19 Jan 2026 12:27 #341575
by bkt
Kinko ECT coupler was created by bkt
hello at all ... i try to load new coupler kinko etc .... with some in / out analogue in and out relays ... i try to use a custo xml based on pdos and sdos teminal reply .....
seems to work ... but for obtain the real value of pdos need to use these one ...
problem become create everytime a new .hal file based on new module added .... for obtain bit correctly need to use bitslice component .... that is no so fast .... there is a giude for create a new lcec-kinko-c e lcec-kinko.h library so no need to use bitsile or other component for reading and writing bit?? ... thanks to any help .... (p.s. analogue reading is good) .... for better explaine me I add some pdos reading ....
regards
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="0x00681168" pid="0x52503230" configPdos="true">
<sdoConfig idx="0x1c12" subIdx="0"><sdoDataRaw data="00"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="0"><sdoDataRaw data="00"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="1"><sdoDataRaw data="0216"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="2"><sdoDataRaw data="0316"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="0"><sdoDataRaw data="02"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="1"><sdoDataRaw data="001a"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="2"><sdoDataRaw data="011a"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="0"><sdoDataRaw data="02"/></sdoConfig>
<syncManager idx="2" dir="out">
<pdo idx="0x1602">
<pdoEntry idx="0x7020" subIdx="0x01" bitLen="8" halPin="out-byte-0" halType="u32"/>
<pdoEntry idx="0x7020" subIdx="0x02" bitLen="8" halPin="out-byte-1" halType="u32"/>
</pdo>
<pdo idx="0x1603">
<pdoEntry idx="0x7030" subIdx="0x01" bitLen="8" halPin="relay-byte-0" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="0x1a00">
<pdoEntry idx="0x6000" subIdx="0x01" bitLen="8" halPin="in-byte-0" halType="u32"/>
<pdoEntry idx="0x6000" subIdx="0x02" bitLen="8" halPin="in-byte-1" halType="u32"/>
</pdo>
<pdo idx="0x1a01">
<pdoEntry idx="0x6010" subIdx="0x01" bitLen="16" halPin="analog-0" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x02" bitLen="16" halPin="analog-1" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x03" bitLen="16" halPin="analog-2" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x04" bitLen="16" halPin="analog-3" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>seems to work ... but for obtain the real value of pdos need to use these one ...
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="0x00681168" pid="0x52503230" configPdos="true">
<sdoConfig idx="0x1c12" subIdx="0"><sdoDataRaw data="00"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="0"><sdoDataRaw data="00"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="1"><sdoDataRaw data="0216"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="2"><sdoDataRaw data="0316"/></sdoConfig>
<sdoConfig idx="0x1c12" subIdx="0"><sdoDataRaw data="02"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="1"><sdoDataRaw data="001a"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="2"><sdoDataRaw data="011a"/></sdoConfig>
<sdoConfig idx="0x1c13" subIdx="0"><sdoDataRaw data="02"/></sdoConfig>
<syncManager idx="2" dir="out">
<pdo idx="0x1602">
<pdoEntry idx="0x7020" subIdx="0x01" bitLen="8" halPin="out-byte-0" halType="u32"/>
<pdoEntry idx="0x7020" subIdx="0x02" bitLen="8" halPin="out-byte-1" halType="u32"/>
</pdo>
<pdo idx="0x1603">
<pdoEntry idx="0x7030" subIdx="0x01" bitLen="8" halPin="relay-byte-0" halType="u32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="0x1a00">
<pdoEntry idx="0x6000" subIdx="0x01" bitLen="8" halPin="in-byte-0" halType="u32"/>
<pdoEntry idx="0x6000" subIdx="0x02" bitLen="8" halPin="in-byte-1" halType="u32"/>
</pdo>
<pdo idx="0x1a01">
<pdoEntry idx="0x6010" subIdx="0x01" bitLen="16" halPin="analog-0" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x02" bitLen="16" halPin="analog-1" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x03" bitLen="16" halPin="analog-2" halType="s32"/>
<pdoEntry idx="0x6010" subIdx="0x04" bitLen="16" halPin="analog-3" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>problem become create everytime a new .hal file based on new module added .... for obtain bit correctly need to use bitslice component .... that is no so fast .... there is a giude for create a new lcec-kinko-c e lcec-kinko.h library so no need to use bitsile or other component for reading and writing bit?? ... thanks to any help .... (p.s. analogue reading is good) .... for better explaine me I add some pdos reading ....
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 3
0x00 0
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 4
0x08 8
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 3
[sudo] password for adm1:
0x00 0
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 2
0x03 3
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 1
0x00 0
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 0
0x11 17
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 4
0x08 8
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 3
0x00 0
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 2
0x03 3
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 1
0x00 0
adm1@db13:~$ sudo ethercat reg_read -p 0 -t uint8 0
0x11 17regards
Please Log in or Create an account to join the conversation.
Time to create page: 0.104 seconds