Ethercat HAL driver

More
9 years 2 months ago #97441 by sirop
Replied by sirop on topic Ethercat HAL driver
Yes, you guessed the most things about RAW sdo right.

But I tried to explain to you how to avoid RAW sdo.

Please Log in or Create an account to join the conversation.

More
9 years 2 months ago #97813 by cnclanka
Replied by cnclanka on topic Ethercat HAL driver
Dear ETHERCAT Forum,
I have been following you for a long time an quite confident that I want to set-out on a project I have been thinking for a long time.

layout


I need to use the ETHERCAT Technology with matching bus coupler and motors and spindle to integrate a 3 Axis small but reliable CNC Router.

I was hoping to get your opinion on whether I could use a board like the following
www.casanovasadventures.com/catalog/comp...HOPPING#.WZqx3Liddq3

For Single Board Computer to run LinuxRT and LinuxCNC

I know in the forum various solutions have been successful, my plan is to package final solution in a industrial package.
Please let me know your views.
I see this Forum a GREAT resource for real Enthusiasts.

regards,
ajith

Please Log in or Create an account to join the conversation.

More
9 years 2 months ago #97818 by sirop
Replied by sirop on topic Ethercat HAL driver

cnclanka wrote: Dear ETHERCAT Forum,

I was hoping to get your opinion on whether I could use a board like the following
www.casanovasadventures.com/catalog/comp...HOPPING#.WZqx3Liddq3

ajith


Keep in mind that if the network driver of the board has no adjusted version within sourceforge.net/p/etherlabmaster/code/ci/default/tree/devices/ , then you'll have to put up with higher latency of the
so called "generic" driver.

Please Log in or Create an account to join the conversation.

More
9 years 2 months ago #97959 by cnclanka
Replied by cnclanka on topic Ethercat HAL driver
Sure I will double check the ETHERNET side of things with the supplier, thanks.

Please Log in or Create an account to join the conversation.

More
9 years 2 months ago #98263 by sqmathlete
Replied by sqmathlete on topic Ethercat HAL driver
Hi Sirop,

I found that great attention must be paid to the formatting of the .xml file. I basically cleaned it up and LinuxCNC was able to communicate with the servo amp. :)

That being said I can now initialize the amp through hal command once LinuxCNC is running but issuing commands to 6060 Control Word doesn't seem to work in the hal setup files however, setting 6040 Mode to 0x08 (CSP Mode)seems to work? I can see in Roschi's files that he is initializing the amp by breaking the out PDO's into bits and then connecting those to LinuxCNC enable.in etc which is then reflected in the status word value. This all makes sense but, makes me wonder if a custom gui might be useful for the ethercat hal driver?

That being said, what is really bothering me about Roschi's files is where he defines some halType="special32"? is this some custom wizardry that handles converting + scaling LinuxCNC float (e.g. position value) output to a s32 value that the servo amp is expecting for that PDO?
Also, while figuring out the scale value for conversion of position value to machine units I defined the servo amps target position (607A) as a float in the xml, scaled by 100000 in hal not expecting it to work but it did...interesting, no? When LinuxCNC is sending a position command what exactly is it sending? Pos in Machine Units? which is then scaled to Pulse/mm which would be based on lead screw pitch(mm),gear ratio, and max rpm of motor. I think this is defined as Pulse of User-defined Unit in the manual...

Cheers,
Dan

Please Log in or Create an account to join the conversation.

More
9 years 2 months ago #98267 by sirop
Replied by sirop on topic Ethercat HAL driver

sqmathlete wrote: Hi Sirop,
That being said I can now initialize the amp through hal command once LinuxCNC is running but issuing commands to 6060 Control Word doesn't seem to work in the hal setup files however, setting 6040 Mode to 0x08 (CSP Mode)seems to work?


Hard to guess what's going on without seeing your xml config file.

I can see in Roschi's files that he is initializing the amp by breaking the out PDO's into bits and then connecting those to LinuxCNC enable.in etc which is then reflected in the status word value.


I only know halType="complex" as in github.com/sittner/linuxcnc-ethercat/blo...-conf_X.xml#L98-L116

Also, while figuring out the scale value for conversion of position value to machine units I defined the servo amps target position (607A) as a float in the xml, scaled by 100000 in hal not expecting it to work but it did...interesting, no? When LinuxCNC is sending a position command what exactly is it sending? Pos in Machine Units?


In case of TARGET POSITION INDEX 0X607A would be motor counts. How you transform your kinematics or CNC code to motor counts, is a question that goes beyond EtherCAT.
The following user(s) said Thank You: sqmathlete

Please Log in or Create an account to join the conversation.

Time to create page: 0.306 seconds
Powered by Kunena Forum