Digital Inputs (complex data) and generic type

More
1 year 5 months ago #328494 by kubes
I am trying to use a cia402 generic driver what as digital input that is exposed 0x60FD:00 which is a bit for each input signal 16-31 (I only have 9 so bits 16-25). see: infosys.beckhoff.com/english.php?content...18798074891.html&id=

How do I assign the digital input states to hal pins using the generic type driver and the ethercat-conf.xml?  All the sample I find are using custom defined types.  The pins are exposed to the hal in halshow, but they do not follow their state and also are low, so my guess the config is wrong and not reading the inputs states correctly.

Thanks!!!!!!

here is my sniplet of the slave config:

Code:
    <slave idx="1" name="Y" type="generic" vid="00000a88" pid="0a880617" configPdos="true">       <dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0" />       <syncManager idx="2" dir="out">         <pdo idx="1600">           <pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="controlword" halType="u32" />           <pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32" />           <pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32" />           <pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="target-velocity" halType="s32" />           <pdoEntry idx="60FD" subIdx="00" bitLen="1" halPin="pos-neg" halType="bit" />           <pdoEntry idx="60FD" subIdx="01" bitLen="1" halPin="pos-pos" halType="bit" />           <pdoEntry idx="60FD" subIdx="10" bitLen="1" halPin="din1" halType="bit" />           <pdoEntry idx="60FD" subIdx="11" bitLen="1" halPin="din2" halType="bit" />           <pdoEntry idx="60FD" subIdx="12" bitLen="1" halPin="din3" halType="bit" />         </pdo>       </syncManager>       <syncManager idx="3" dir="in">         <pdo idx="1a00">           <pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="statusword" halType="u32" />           <pdoEntry idx="6061" subIdx="00" bitLen="8" halPin="opmode-display" halType="s32" />           <pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="actual-position" halType="s32" />           <pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="actual-velocity" halType="s32" />         </pdo>       </syncManager>     </slave>  

Please Log in to join the conversation.

More
1 year 5 months ago #328497 by kubes
Here is the correct and working syntax if anyone else needs it in the future.
Code:
    <slave idx="1" name="Y" type="generic" vid="00000a88" pid="0a880617" configPdos="true">       <dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0" />       <syncManager idx="2" dir="out">         <pdo idx="1600">           <pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="controlword" halType="u32" />           <pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="opmode" halType="s32" />           <pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="target-position" halType="s32" />           <pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="target-velocity" halType="s32" />         </pdo>       </syncManager>       <syncManager idx="3" dir="in">         <pdo idx="1a00">           <pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="statusword" halType="u32" />           <pdoEntry idx="6061" subIdx="00" bitLen="8" halPin="opmode-display" halType="s32" />           <pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="actual-position" halType="s32" />           <pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="actual-velocity" halType="s32" />           <pdoEntry idx="60FD" subIdx="00" bitLen="32" halType="complex">             <complexEntry bitLen="1" halPin="limit-neg" halType="bit"/>             <complexEntry bitLen="1" halPin="limit-pos" halType="bit"/>             <complexEntry bitLen="1" halPin="home-switch" halType="bit"/>             <complexEntry bitLen="13" />             <complexEntry bitLen="1" halPin="din1" halType="bit"/>             <complexEntry bitLen="1" halPin="din2" halType="bit"/>             <complexEntry bitLen="1" halPin="din3" halType="bit"/>             <complexEntry bitLen="1" halPin="din4" halType="bit"/>             <complexEntry bitLen="1" halPin="din5" halType="bit"/>             <complexEntry bitLen="1" halPin="din6" halType="bit"/>             <complexEntry bitLen="1" halPin="din7" halType="bit"/>             <complexEntry bitLen="1" halPin="din8" halType="bit"/>             <complexEntry bitLen="1" halPin="din9" halType="bit"/>           </pdoEntry>         </pdo>       </syncManager>     </slave>

Please Log in to join the conversation.

Time to create page: 0.590 seconds
Powered by Kunena Forum