- Posts: 24
- Thank you received: 0
Ethercat HAL driver
- ChrisB
- Offline
- Junior Member
-
Less
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.
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.
- Automata27
- Offline
- New Member
-
Less
More
- Posts: 11
- Thank you received: 6
8 years 6 months ago #109184
by Automata27
Replied by Automata27 on topic Ethercat HAL driver dc synch issue solved...
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.
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.
- sqmathlete
- Offline
- Premium Member
-
Less
More
- Posts: 118
- Thank you received: 18
8 years 6 months ago #109195
by sqmathlete
Replied by sqmathlete on topic Ethercat HAL driver Homing
@Automatica27
I've been waiting for a while, hoping that someone with need and a bit of code savvy will turn up in this thread and be able to clean up the attached modified home.c file. The modified home.c file will allow you to home with either absolute or incremental encoders. By setting the the latch velocity = 0.0 and the search velocity = 6.6 or 9.9 (6.6 for absolute encoders) it envokes a special case (look back in the thread for Roschi's hints) where all linuxcnc can do is e-stop during the homing routine. Incremental encoders require a bit of ladder logic to switch into home mode, complete the homing routine, and switch back to CSP mode but, in your case you probably won't need more than a few rungs if any for absolute encoders.
If you look through the file for 6.6 and 9.9 you will see where I have made the changes. I am hoping that these changes could be implemented in such a way that they do not interfere with the regular homing routine of linuxcnc so that other non ethercat configurations can be used. Unfortunately, my coding level is not at a point where I am confident that these changes could be submitted but perhaps with some help we could push this along.
IMHO, one could argue that if the ethercat hal driver is to be fully utilized, a universal option for being able to use the internal homing routine of the servo amp would be of great value.
Kind Regards,
Dan
I've been waiting for a while, hoping that someone with need and a bit of code savvy will turn up in this thread and be able to clean up the attached modified home.c file. The modified home.c file will allow you to home with either absolute or incremental encoders. By setting the the latch velocity = 0.0 and the search velocity = 6.6 or 9.9 (6.6 for absolute encoders) it envokes a special case (look back in the thread for Roschi's hints) where all linuxcnc can do is e-stop during the homing routine. Incremental encoders require a bit of ladder logic to switch into home mode, complete the homing routine, and switch back to CSP mode but, in your case you probably won't need more than a few rungs if any for absolute encoders.
If you look through the file for 6.6 and 9.9 you will see where I have made the changes. I am hoping that these changes could be implemented in such a way that they do not interfere with the regular homing routine of linuxcnc so that other non ethercat configurations can be used. Unfortunately, my coding level is not at a point where I am confident that these changes could be submitted but perhaps with some help we could push this along.
IMHO, one could argue that if the ethercat hal driver is to be fully utilized, a universal option for being able to use the internal homing routine of the servo amp would be of great value.
Kind Regards,
Dan
- chimeno
- Offline
- Elite Member
-
Less
More
- Posts: 295
- Thank you received: 125
8 years 6 months ago #109219
by chimeno
Replied by chimeno on topic Ethercat HAL driver Homing
Hello dan
What would be useful to use this homing system?
regards
Chimeno
What would be useful to use this homing system?
regards
Chimeno
- sqmathlete
- Offline
- Premium Member
-
Less
More
- Posts: 118
- Thank you received: 18
8 years 6 months ago #109223
by sqmathlete
Replied by sqmathlete on topic Ethercat HAL driver Homing
@Chimeno,
Well, my thinking is that the servo amps have all of the things built in to handle acceleration, deceleration, encoder, e stop and of course homing. Thus once we set up the parameters via the xml file we can treat the amps as a black box and let them handle all of the complicated motion stuff which free's up the cpu for other tasks. Linuxcnc homing.c basically duplicates all of the amps internal functions hence the quick short cut through the code is all that is needed.
Also, it is my understanding that in order to reset the counter to zero the amp must be in home mode. You can use linuxcnc to home the servo to the home switch but the amps counter will not be reset to zero unless the amp is in home mode.
Furthermore Roschi, had to modify homing.c to use absolute encoders, I had to modify it to use incremental encoders so it seems like the more that people use the ethercat hal driver and get closer to the point of a working machine this issue will keep coming up.
Why keep having to duplicate? I was hoping that Automatica27 would come to the same conclusion now that he has his amps working. Perhaps not?
However, that being said I'm pretty new to all of this and I could be simply missing something... Is there another solution?
Kind Regards,
Dan
Well, my thinking is that the servo amps have all of the things built in to handle acceleration, deceleration, encoder, e stop and of course homing. Thus once we set up the parameters via the xml file we can treat the amps as a black box and let them handle all of the complicated motion stuff which free's up the cpu for other tasks. Linuxcnc homing.c basically duplicates all of the amps internal functions hence the quick short cut through the code is all that is needed.
Also, it is my understanding that in order to reset the counter to zero the amp must be in home mode. You can use linuxcnc to home the servo to the home switch but the amps counter will not be reset to zero unless the amp is in home mode.
Furthermore Roschi, had to modify homing.c to use absolute encoders, I had to modify it to use incremental encoders so it seems like the more that people use the ethercat hal driver and get closer to the point of a working machine this issue will keep coming up.
Why keep having to duplicate? I was hoping that Automatica27 would come to the same conclusion now that he has his amps working. Perhaps not?
However, that being said I'm pretty new to all of this and I could be simply missing something... Is there another solution?
Kind Regards,
Dan
- chimeno
- Offline
- Elite Member
-
Less
More
- Posts: 295
- Thank you received: 125
8 years 6 months ago #109269
by chimeno
Replied by chimeno on topic Ethercat HAL driver Homing
Hello dan,
I'm not an expert, every day I intend to learn more, it makes sense to handle the acceleration, stops .. etc I think for the position mode is perfect, I used it, but in the speed mode I think much better than Linux, auqnue As I say I'm not an expert and maybe I'm wrong, best regards
Chimeno
I'm not an expert, every day I intend to learn more, it makes sense to handle the acceleration, stops .. etc I think for the position mode is perfect, I used it, but in the speed mode I think much better than Linux, auqnue As I say I'm not an expert and maybe I'm wrong, best regards
Chimeno
Time to create page: 0.572 seconds