Ethercat HAL driver

More
8 years 6 months ago #108251 by Ilya
Replied by Ilya on topic Ethercat HAL driver
Hello all

I installed your driver using deb repo.modusoft.de/linuxcnc/wheezy ./
My problem is running the program using "loadrt lcec" in the hal file.
I getting that:
Error: could not insert module /usr/realtime-3.4-9-rtai-686-pae/modules/linuxcnc/lcec.ko: Unknown symbol in module
I know little about this and I hope for Your help. Would you mind pointing me in the right direction?

regards
ilya
__________________________________________
decided
I used a RTAi, whereas it was necessary to use RT-PREEMPT

Please Log in to join the conversation.

More
8 years 6 months ago #109007 by ChrisB
Replied by ChrisB on topic Ethercat HAL driver
Thank you for your help.
i cant figure out the problem.
Datatype complex makes more sens, but this is not the problem.

i have two scenarios.
the first one is, if i use configpdos = false
Then linuxcnc does not stars and the debuginfo says failed to set safeop. 0x0017 invalid sync manager configuration.

The other one is configpdos = true
then the drives gets an error F29 invalid ECAT command-value mapping length.

can you imagine what the problem is?
Tanks

Please Log in to join the conversation.

More
8 years 6 months ago #109050 by sirop
Replied by sirop on topic Ethercat HAL driver

ChrisB wrote: Thank you for your help.
i cant figure out the problem.
Datatype complex makes more sens, but this is not the problem.

i have two scenarios.
the first one is, if i use configpdos = false
Then linuxcnc does not stars and the debuginfo says failed to set safeop. 0x0017 invalid sync manager configuration.

The other one is configpdos = true
then the drives gets an error F29 invalid ECAT command-value mapping length.

can you imagine what the problem is?
Tanks


Hard to guess for me.
However, I noticed one inconsistent thing in your configs:
if
Code:
<Entry> <Index>#x606b</Index> <SubIndex>0</SubIndex> <BitLen>32</BitLen> <Name></Name> <DataType>UINT32</DataType> </Entry>
then its haltype should be "u32"?

That which is more questionable for me is:
Code:
SM1: PhysAddr 0x1c00, DefaultSize 512, ControlRegister 0x22, Enable 1 SM2: PhysAddr 0x1100, DefaultSize 0, ControlRegister 0x24, Enable 1
the default size of a non mailbox sync manger is 0.
Quick google search yields:

The buffered mode is typically used for cyclic data exchange, i.e. process data (PDO) since the buffered mode allows access to the communication buffer at any time for both sides [...]

It can be noted that SyncManagers running in buffered mode need three times the process data size allocated in the DPRAM (fig. A.5).

sir.upc.edu/wikis/roblab/index.php/Development/Ethercat

Is the EEPROM correct?

Please Log in to join the conversation.

More
8 years 6 months ago #109066 by ChrisB
Replied by ChrisB on topic Ethercat HAL driver
Hi,
i red this article sir.upc.edu/wikis/roblab/index.php/Development/Ethercat.
But now i don't know how to check the EEPROM

Please Log in to join the conversation.

More
8 years 6 months ago #109072 by sirop
Replied by sirop on topic Ethercat HAL driver

ChrisB wrote: Hi,
i red this article sir.upc.edu/wikis/roblab/index.php/Development/Ethercat.
But now i don't know how to check the EEPROM


I can not tell you more than :

A quick solution for the missing information is to generate the SII contents from the slave description XML file using Beckhoff's TwinCAT, and write them to the slave.

www.etherlab.org/en/ethercat/faq.php

Please Log in to join the conversation.

More
8 years 6 months ago #109113 by Automata27
Hi All,

First of all Thank you very much to Sascha Ittner for adding pll patch for linuxcnc in ethercat hal driver of lcec...
I have tried with linuxcnc-ethercat hal driver with pll patch applied to linuxcnc v2.7.11 branch and my dc issue is solved...

after applying pll patch to linuxcnc i had to use isolcpus in my boot command line, using isolcpus had solved the problem of dc synchronization...

i have attached my hal file and xml file for reference...

Any comment/ suggestion on attached file or result are most welcome...:):) :)

FYI...
linux ketnel is stretch rt-preempt:- Linux automata 4.9.0-3-rt-amd64 #1 SMP PREEMPT RT Debian 4.9.30-2+deb9u2 (2017-06-26) x86_64 GNU/Linux
linuxcnc :- linuxcnc v2.7.11
motors & Drives :- Panasonic minas- A6 400W(Ethercat) & panasonic Minas- A5 400W (Ethercat)

Attachment not found

Attachment not found

Attachment not found

Attachment not found

Attachment not found



Thank You,
Regards.

Please Log in to join the conversation.

More
8 years 6 months ago #109114 by Automata27
attached here is the video with 3 motors on linuxcnc v2.7.11 with pll patch applied...

3 axis with ethercat drives and motors on linuxcnc v2.7.11 with pll patch

velocity & pos plot without isolcpus

Please Log in to join the conversation.

More
8 years 6 months ago #109146 by sqmathlete
@Automata27

Nice work! Are you planning on using the internal homing routine of the servo amps?

Dan

Please Log in to join the conversation.

More
8 years 6 months ago #109170 by ChrisB
Replied by ChrisB on topic Ethercat HAL driver
@Sirop
Thank you. Some weeks ago i updated the plugin Ethercatcard with the kollmorgen xml file. So i think it was the wrong file or kollmorgen has a wrong config in it. Now extracted a old configuration form another card and now it works for the first moment.

Please Log in to join the conversation.

More
8 years 6 months ago #109184 by Automata27
Hi sqmathlete,

right now i am planning to use linuxcnc homing only with modification as per requirement because i am using absolute encoder motor...but i will definitely try servo amp homing too... :)

Regards.

Please Log in to join the conversation.

Time to create page: 0.303 seconds
Powered by Kunena Forum