ESTUN ED3M with Ethercat: HAL pins RW doesn't work
30 Dec 2020 14:56 #193550
by ioiotutu
ESTUN ED3M with Ethercat: HAL pins RW doesn't work was created by ioiotutu
Hi,
i'm working with ethercat and i have configured ESTUN PRONET following the instructions read on this forum (forum.linuxcnc.org/27-driver-boards/3559...uxcnc-how-to-install).
The driver work properly, and i tested velocity mode and position mode configurations with linuxcnc.
I have a problem with ESTUN EDM3 (dual motor drive). Reading the EDM3 manual, this drive seems to be equal to PRONET drive.
i have configured .xml file with the PDO for the second motor (these are shifted of 0x800) but using hal meter in linuxcnc i see al lcec pins to 0.
Ethercat configuration i think is ok, because with ethercat commands the drive work for example:
for motor 1
ethercat -p0 -t uint16 download 0x6040 0 0x0006 # EnableVoltage+QuickStop
ethercat -p0 -t uint16 download 0x6040 0 0x0007 # +SwitchOn
ethercat -p0 -t uint16 download 0x6040 0 0x000f # +EnableOperation
for motor 2
ethercat -p0 -t uint16 download 0x6840 0 0x0006 # EnableVoltage+QuickStop
ethercat -p0 -t uint16 download 0x6840 0 0x0007 # +SwitchOn
ethercat -p0 -t uint16 download 0x6840 0 0x000f # +EnableOperation
I can read the encoders and send command to move the motor. Etherlab module work fine.
The read/write operation with HAL lcec pins doesn't work.
I have connected two drives on ethercat, EDM3 slave 0 and PRONET slave 1, changing ethercat.xml file. The result is that reading HAL pins with HAL METER i see lcec pin of PRONET correctly but the pins of ED3M are fixed to 0.
Attached is the output of "ethercat slaves -v" command.
The slaves settings of the drive are little different. In particular there is a flags "Enable notLRW: yes" that is different from PRONET. I'm not expert of ethercat but probably read/write mode mybe different. Probably i must adjust the xml configuration for ED3M but i don't know how.
Suggestions are appreciated.
Thanks.
i'm working with ethercat and i have configured ESTUN PRONET following the instructions read on this forum (forum.linuxcnc.org/27-driver-boards/3559...uxcnc-how-to-install).
The driver work properly, and i tested velocity mode and position mode configurations with linuxcnc.
I have a problem with ESTUN EDM3 (dual motor drive). Reading the EDM3 manual, this drive seems to be equal to PRONET drive.
i have configured .xml file with the PDO for the second motor (these are shifted of 0x800) but using hal meter in linuxcnc i see al lcec pins to 0.
Ethercat configuration i think is ok, because with ethercat commands the drive work for example:
for motor 1
ethercat -p0 -t uint16 download 0x6040 0 0x0006 # EnableVoltage+QuickStop
ethercat -p0 -t uint16 download 0x6040 0 0x0007 # +SwitchOn
ethercat -p0 -t uint16 download 0x6040 0 0x000f # +EnableOperation
for motor 2
ethercat -p0 -t uint16 download 0x6840 0 0x0006 # EnableVoltage+QuickStop
ethercat -p0 -t uint16 download 0x6840 0 0x0007 # +SwitchOn
ethercat -p0 -t uint16 download 0x6840 0 0x000f # +EnableOperation
I can read the encoders and send command to move the motor. Etherlab module work fine.
The read/write operation with HAL lcec pins doesn't work.
I have connected two drives on ethercat, EDM3 slave 0 and PRONET slave 1, changing ethercat.xml file. The result is that reading HAL pins with HAL METER i see lcec pin of PRONET correctly but the pins of ED3M are fixed to 0.
Attached is the output of "ethercat slaves -v" command.
The slaves settings of the drive are little different. In particular there is a flags "Enable notLRW: yes" that is different from PRONET. I'm not expert of ethercat but probably read/write mode mybe different. Probably i must adjust the xml configuration for ED3M but i don't know how.
Suggestions are appreciated.
Thanks.
Please Log in or Create an account to join the conversation.
01 Jan 2021 11:43 #193718
by ioiotutu
Replied by ioiotutu on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
hi,
reading other posts i think that the problem was "Enable notLRW: yes" . Drive required different domains for read/ write PIDs. Unfortunately i could not find examples or docs to activate multiple domains on the master to fix my problems.
Probably other drives (i.e. Lenze) may to have the same problem. Someone tried to set up multiple domains on the master?
reading other posts i think that the problem was "Enable notLRW: yes" . Drive required different domains for read/ write PIDs. Unfortunately i could not find examples or docs to activate multiple domains on the master to fix my problems.
Probably other drives (i.e. Lenze) may to have the same problem. Someone tried to set up multiple domains on the master?
Please Log in or Create an account to join the conversation.
11 Jan 2021 16:35 #194922
by sirop
Replied by sirop on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
I doubt that there is an XML configuration or tags for more than one domain
as github.com/sittner/linuxcnc-ethercat/blo...src/lcec_main.c#L353 shows that only one domain is created.
So if you need two domains, then you have to adjust lcec_main.c and lcec.h .
as github.com/sittner/linuxcnc-ethercat/blo...src/lcec_main.c#L353 shows that only one domain is created.
So if you need two domains, then you have to adjust lcec_main.c and lcec.h .
Please Log in or Create an account to join the conversation.
11 Jan 2021 17:07 #194926
by CORBETT
Replied by CORBETT on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
Boris,
I wanted to send you a note and say thank you for all the help and work you have done on the EtherCAT driver. I see where you do a lot on GitHub and since you are one of the major players in helping I wanted to reach out and extend the thanks for all the work. There are 2 others here on the forum that help big time on EtherCAT and I always send thanks to them (Chimeno & Grotius), but I rarely see you here and wanted to send a quick note to you. I am always glad to see you guy's here helping us all.
Sincerely,
Robert
I wanted to send you a note and say thank you for all the help and work you have done on the EtherCAT driver. I see where you do a lot on GitHub and since you are one of the major players in helping I wanted to reach out and extend the thanks for all the work. There are 2 others here on the forum that help big time on EtherCAT and I always send thanks to them (Chimeno & Grotius), but I rarely see you here and wanted to send a quick note to you. I am always glad to see you guy's here helping us all.
Sincerely,
Robert
The following user(s) said Thank You: tommylight, sirop
Please Log in or Create an account to join the conversation.
11 Jan 2021 21:00 - 11 Jan 2021 21:25 #194955
by chimeno
Replied by chimeno on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
Hello @ioiotutu
I don't really understand what you need, are you trying to record parameters in OP mode?
Edit:
sorry I think now I understand a little what you were looking for.
Greeting
Chimeno
I don't really understand what you need, are you trying to record parameters in OP mode?
Edit:
sorry I think now I understand a little what you were looking for.
Greeting
Chimeno
Last edit: 11 Jan 2021 21:25 by chimeno. Reason: Edit
Please Log in or Create an account to join the conversation.
12 Jan 2021 15:17 #195064
by ioiotutu
Replied by ioiotutu on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
hello,
I'm searcing to configure ESTUN EDM3 (dual motor drive) using ethercat. I succesfull configured PRONET, but this drive has enablenotLRW setted to yes and needs multiple domains to work.
With etherlab commands I can read/write drive's registers, PDOs, SDOs, enable the drive, but in linuxcnc I cannot read lcec_ variables defined on xml.
Here is my xml:
start xml
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="0000060A" pid="00000001" name="shoulder" configPdos="true">
<sdoConfig idx="6060" subIdx="0"> <!-- mode. 8=CSP-->
<sdoDataRaw data="08"/>
</sdoConfig>
<syncManager idx="0" dir="out"/>
<syncManager idx="1" dir="in"/>
<syncManager idx="2" dir="out">
<pdo idx="1602">
<!--Entry idx="6040" subIdx="00" bitLen="16" halPin="control" halType="bit"/-->
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control" halType="u32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="1"/>
<pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="velocitycmd" halType="float" scale="1"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A02">
<!--Entry idx="6041" subIdx="00" bitLen="16" halPin="status" halType="bit"/-->
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velocity" halType="float" scale="1"/>
</pdo>
</syncManager>
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="250000"/>
<watchdog divider="2498" intervals="1000"/>
</slave>
</master>
</masters>
end xml
I think to have two ways to fix my problem:
1) set "enablenotLRW" to no with an etherlab command, but i don't know if it is possible.
2) Use LRD/LWR but for this i need to configure multiple domains adjusting lcec_main.c and lcec.h (sirop suggest this). in this case I don't know if I'm capable! Someone tried to configure LRD / LRW modifing lcec_main.c and lcec.h?
Thanks.
I'm searcing to configure ESTUN EDM3 (dual motor drive) using ethercat. I succesfull configured PRONET, but this drive has enablenotLRW setted to yes and needs multiple domains to work.
With etherlab commands I can read/write drive's registers, PDOs, SDOs, enable the drive, but in linuxcnc I cannot read lcec_ variables defined on xml.
Here is my xml:
start xml
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" vid="0000060A" pid="00000001" name="shoulder" configPdos="true">
<sdoConfig idx="6060" subIdx="0"> <!-- mode. 8=CSP-->
<sdoDataRaw data="08"/>
</sdoConfig>
<syncManager idx="0" dir="out"/>
<syncManager idx="1" dir="in"/>
<syncManager idx="2" dir="out">
<pdo idx="1602">
<!--Entry idx="6040" subIdx="00" bitLen="16" halPin="control" halType="bit"/-->
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="control" halType="u32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="poscommand" halType="float" scale="1"/>
<pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="velocitycmd" halType="float" scale="1"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1A02">
<!--Entry idx="6041" subIdx="00" bitLen="16" halPin="status" halType="bit"/-->
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="status" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="pos" halType="float" scale="1"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="velocity" halType="float" scale="1"/>
</pdo>
</syncManager>
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="250000"/>
<watchdog divider="2498" intervals="1000"/>
</slave>
</master>
</masters>
end xml
I think to have two ways to fix my problem:
1) set "enablenotLRW" to no with an etherlab command, but i don't know if it is possible.
2) Use LRD/LWR but for this i need to configure multiple domains adjusting lcec_main.c and lcec.h (sirop suggest this). in this case I don't know if I'm capable! Someone tried to configure LRD / LRW modifing lcec_main.c and lcec.h?
Thanks.
Please Log in or Create an account to join the conversation.
12 Jan 2021 22:04 #195132
by chimeno
Replied by chimeno on topic ESTUN ED3M with Ethercat: HAL pins RW doesn't work
Hello @ioiotutu
Thanks for the explanation, unfortunately I have not had to use those records, if I have a little time I will look at the section suggested by @Sirop in case I can help something
Greeting
Chimeno
Thanks for the explanation, unfortunately I have not had to use those records, if I have a little time I will look at the section suggested by @Sirop in case I can help something
Greeting
Chimeno
Please Log in or Create an account to join the conversation.
Time to create page: 0.074 seconds