Ethercat HAL driver

More
12 years 3 months ago - 12 years 3 months ago #48694 by roschi
Replied by roschi on topic Ethercat HAL driver
Hi

first of all your xml-config-file for the HAL driver is wrong for the dcconf.

You have:
<dcConf assignActivate="730" sync0Cycle="250000" sync0Shift="50000"/>
You should have:
<dcConf assignActivate="730" sync0Cycle="*1" sync0Shift="50000"/>

Next Test should go like this:
1. Unplug cable
2. start or restart ethercat master
3. reboot drive
4. plug cable
--> no error should appear -->5.
--> if an error appears than it is no Linuxcnc/HAL-Driver issue.
5. test for the drive with "ethercat slaves" (soe_write won't work as far as i know forthat drives)
--> check for product ID and compare/search in original xml file --> check parameters
6. start lcnc

Hope that will solve your problem.

Regards
Andreas
Last edit: 12 years 3 months ago by roschi.
The following user(s) said Thank You: Nico2017
More
12 years 3 months ago #48726 by Coyote
Replied by Coyote on topic Ethercat HAL driver
Beckhoff AX5xxx uses Sercos over Ethercat (SOE), while drivers of Sacha work for CanOpen over Ethercat (COE). Beckhoff anounced that new drives will use COE and SOE will be deprecated. If you succed, you will be the first one to connect linuxcnc with AX5xxx, please post your solution when it will be available, I am interested to use AX5xxxx.
More
12 years 3 months ago #48751 by lincnc
Replied by lincnc on topic Ethercat HAL driver
Hi,

I've tried Roschi's steps but still there is the same error running on the screen. Error documentation says that error F581 indicates that "The PDI has no access rights to the ESC eeprom", could some part of IgH Ethercat Master prohibits the slave from accessing it's EEPROM memory? If yes, how can I disable that?


Thank you.
More
12 years 3 months ago - 12 years 3 months ago #48760 by roschi
Replied by roschi on topic Ethercat HAL driver
Hi "lincnc",

please describe excatly at which time the error comes up.

1. Unplug cable
2. restart ethercat master, close all lcnc, even stop or be sure that '/etc/init.d/realtime stop'
3. reboot drive
4. plug cable
5. test for the drive with "ethercat slaves" (soe_write won't work as far as i know forthat drives)
--> Is up to this Point a Problem/error?

Problem could be that Beckhoff components have fixed PDO's so you can't configure them (configure them means write Access to EEPROM)
keyword "config_pdo=true" in XML file.

By the way SoE drives will work without problems because the Mailbox communication is only nessesary for configuration.
(The drives I use: Bosch Rexroth have only SoE up to now --> configure them with Rexroth Software via EoE or TwinCAT)

Regards Andreas
Last edit: 12 years 3 months ago by roschi.
More
12 years 3 months ago #48803 by lincnc
Replied by lincnc on topic Ethercat HAL driver
Hi, my name is Ivan, sorry for the bad username.

Because of the unexplainable error we've got with the AX5xxx driver, we've switched to Lenze 94xxx HighLine drives which impelement the CoE protocol. However, I still have some problems with these drives too.

The Lenze 94xx HighLine drive is configurated to work with CiA 402 and it's tested with TwinCAT.

Here is the XML description file for Lenze 94xxx HighLane exported from TwinCAT:

File Attachment:

File Name: Lenze.xml
File Size:65 KB


Here is the XML file used for the EtherCAT HAL Driver:

File Attachment:

File Name: ethercat_c...7-15.xml
File Size:1 KB


I start the driver with these commands:

(from ~/linuxcnc-dev/scripts)
. ./rip-environment
halcmd loadrt threads name1=master period1=2000000(value taken from the xml file)
halcmd loadusr -W lcec_conf ethercat_config_n.xml
halcmd loadrt lcec
halcmd addf lcec.read-all master
halcmd addf lcec.write-all master
halcmd start

Everything seems to go fine, the "ethercat slave -v" command shows that the drive is in OP state and no error flag is present. However, when I use the "halcmd show" command, none of the pin values seems to correspond with the "real" drive values. For example, I can read the Actual Position with the "ethercat upload" command but hal's Actual Position pin stays at 0. At first sight it seems that there is no communication between HAL driver and the drive itself.
BUT, when i use the "ethercat download" command to change objects like Control Word, Target Position, Mode of operation or any other, the command is issued without an error but the value is not written. After using "ethercat download" for specific index and subindex (object) and then checking the change with "ethercat upload" I can see that the value of the object is not changed although there wasn't an error issuing "ethercat download" command.
If I read the CiA 402's error object (index: 0x603F subindex: 00) it's value is 0x1000, which according to Lenze's manual means that "An error has occurred in the controller (system fault, fault, trouble, or warning)". Which doesn't seem to appear while testing it with TwinCAT.
I tried restarting the drive but the error is stil present.

Any help would be appreciated,
thank you in advance.
Attachments:
More
12 years 3 months ago #48810 by roschi
Replied by roschi on topic Ethercat HAL driver
Hi Ivan,

so now this is another issue. --> Lenze drives, CoE, CiA402 drive Profile.

Based on your provided informations I can not see any mistake.
So my advise is to go step by step.
Perhaps see the Video first

approx. begin at 4:00

- don't use any HAL, LCNC modules, application
- Try to get the drive running only via the "ethercat" commandline tool (like in my Video)
- set op mode to x6060 to Cylic Velocity Mode
- set target velocity to value gt 0
- start Operation via state machine value x6040; see docs on Cia 402

Perhaps an issue with HAL Driver could be the alias address. I have this Problem when i use Beckhoff EK1100 and 2 MOdules + 4 drives
--> HAL Driver from Sachsa has hard coded alias adress 0 for all slaves. (see lcec.c near line 200)
In the XML file only the bus Position is configured.

Regards Andreas
The following user(s) said Thank You: Nico2017
Time to create page: 0.197 seconds
Powered by Kunena Forum