- Posts: 193
- Thank you received: 0
the choices of NIC for 6 DOF robot with linuxcnc
chuchengbing wrote: Thank sirop very much!!
All the things I need can be got through the pdos. Is it necessary to configure the sdos? What is the reasons for the PLL error? Does it have the relationship with the sdo just as you said?
Please follow now Frank#s advise and do on the termonal of the master:
Paste this output to this thread.
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
cgc wrote: Hello,
please start with a simple configuration and only with one slave.
If this is running, you can take all slaves and more registers.
Maybe try a config like this:
Warning: Spoiler!
<masters>
<master idx="0" appTimePeriod="2000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="99998888" pid="00020001" configPdos="true">
<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="drivecontrol" halType="bit"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="targetpos" halType="s32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1a00">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="drivestatus" halType="bit"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="Actual_Pos" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>
And try first without distributed clocks, disabe line <dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/>
Please tell us a litte bit about your hardware, manufacturer, type ....
If you start the PC, what say "ehercat slaves" ?
regards Frank
Please Log in to join the conversation.
you might need to consult:
download.beckhoff.com/download/document/...c2_registers_2i7.pdf
about registers 0x0980 and 0x0981 .
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
Now it also has the errors:
EtherCAT 0: Released.
EtherCAT ERROR 0-0: AL status message 0x0032: "PLL error".
EtherCAT 0-0: Acknowledged state SAFEOP.
EtherCAT ERROR 0-1: AL status message 0x0032: "PLL error".
EtherCAT 0-1: Acknowledged state SAFEOP.
EtherCAT ERROR 0-2: AL status message 0x0032: "PLL error".
EtherCAT 0-2: Acknowledged state SAFEOP.
I think the reasion is DC configruation in xml file and the parameter(now,AssignActivate="300", Sync0Cycle="*1", Sync0shift="0") which I set are not correctly. And the parameter which is most likely to go wrong is "Syncshift". Can any one can tell me how to set this parameter correctly?
Thanks very much!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Please Log in to join the conversation.
I mean the so called ESI XML that comes from the vendor.
The XML tag that part begins with is usually <DC> .
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
Of course, the below details is the DC contents contained in the XML file from the vendor:
I just plate the contents about the DC, thank you.
<Dc Unknown64Bit="1" UnknownFRMW="1">
<OpMode>
<Name>DcSync</Name>
<Desc>DC for synchronization</Desc>
<AssignActivate>#x0300</AssignActivate>
<CycleTimeSync0 Factor="1">0</CycleTimeSync0>
<ShiftTimeSync0>0</ShiftTimeSync0>
</OpMode>
<OpMode>
<Name>DcOff</Name>
<Desc>DC unused</Desc>
<AssignActivate>#x0000</AssignActivate>
</OpMode>
</Dc>
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
Does someone know the version of ethercat master which can configure the DC correctly?
Thanks again!!!!!!!!!!!!!!!!!!!
Please Log in to join the conversation.
chuchengbing wrote: I also think about it, when I don't use the DC,it is OK. So, is there a possibility that there is something wrong in the EtherCAT master? The master I am using now comes from the system and is embedded into the Linux kernel, when the system is on, the master run automatically.
Does someone know the version of ethercat master which can configure the DC correctly?
Thanks again!!!!!!!!!!!!!!!!!!!
I guess you use github.com/sirop/ec-debianize by S. Ittner, the etherlab master version used there is
github.com/sittner/ec-debianize/blob/mas...herlabmaster.tar.bz2 .
If you really think that some more recent patches to etherlab master could solve your problem,
try to use the source code from sourceforge.net/p/etherlabmaster/code/ci/default/tree/ .
But before doing this check some other options.
1. As said before, SII EEPROM maybe partially invalid.
2. The AssignActivate (0x0300) word in your slave manual maybe wrong or not apply for all cases.
3. Your slave seems to support 64 bit timestamps? But your master runs on 32 bit?
Mixing 32 and 64 bit timestamps can also be a problem.
See this example:
lists.etherlab.org/pipermail/etherlab-users/2012/001693.html
If you tried out everything of the above mentioned, but this "PLL" problem is still there,
you might need a more fine grained DC control. For this you'll have to edit
either at least github.com/sittner/linuxcnc-ethercat/blo...c_main.c#L1114-L1128
or code your own component following this example wiki.linuxcnc.org/cgi-bin/wiki.pl?Etherlab .
BTW, what is 3.4.9-rtai-686-pse? I thought there is only 3.4.9-rtai-686-pae in the LinixCNC world.
Please Log in to join the conversation.
- chuchengbing
- Topic Author
- Offline
- Senior Member
-
- Posts: 45
- Thank you received: 0
I will try the measures as you said on the top and I will tell you the results.
Please Log in to join the conversation.
