- Configuring LinuxCNC
- Advanced Configuration
- EtherCAT
- linear encoder + cia402 driver + delta a2 incremental
linear encoder + cia402 driver + delta a2 incremental
- mehdidadash
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 46
- Thank you received: 4
23 Feb 2023 11:55 #265114
by mehdidadash
linear encoder + cia402 driver + delta a2 incremental was created by mehdidadash
hi friends.
appreciate those who enlighten the path for people like me.
i want to add a linear encoder to one of my axis.
i cant find how to define linear encoder in the ini or the hal file.
i have a delta asd-a2 ethercat servo drive with an incremental type servo motor.
i have added a linear encoder to axis.
i changed the servo drive 0x214a to "0001"
i added 0x2511 to pdos and named it auxilary encoder.
should i change "actual-position" idx to 2511 ?
and i have another question about "cia402.0.pos-scale"
what should i write to its value?
linear encoder is 5000pulse/rev
my motor is 17 bit with 131072 puls/rev
but it is mentioned in the manuals that drive has 1,280,000 PUU
appreciate those who enlighten the path for people like me.
i want to add a linear encoder to one of my axis.
i cant find how to define linear encoder in the ini or the hal file.
i have a delta asd-a2 ethercat servo drive with an incremental type servo motor.
i have added a linear encoder to axis.
i changed the servo drive 0x214a to "0001"
i added 0x2511 to pdos and named it auxilary encoder.
should i change "actual-position" idx to 2511 ?
and i have another question about "cia402.0.pos-scale"
what should i write to its value?
linear encoder is 5000pulse/rev
my motor is 17 bit with 131072 puls/rev
but it is mentioned in the manuals that drive has 1,280,000 PUU
Please Log in or Create an account to join the conversation.
23 Feb 2023 20:51 #265149
by andypugh
Replied by andypugh on topic linear encoder + cia402 driver + delta a2 incremental
Are you sure that the drive accepts secondary feedback from a linear encoder?
Normally this would be done by adding a PID loop inside LinuxCNC to modify the commanded motor position slightly based on the linear encoder feedback.
Normally this would be done by adding a PID loop inside LinuxCNC to modify the commanded motor position slightly based on the linear encoder feedback.
Please Log in or Create an account to join the conversation.
- mehdidadash
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 46
- Thank you received: 4
25 Feb 2023 04:45 #265306
by mehdidadash
Replied by mehdidadash on topic linear encoder + cia402 driver + delta a2 incremental
Yes. It has a pdo entry . 0x2511 for auxiliary encoder.
My problem is that linear encoder resolution is 5000puls/rev but, driver has one pos-scale .
Should i make a new cia402.comp and add linear encoder or there is a possible way to handle the problem using current driver?
My problem is that linear encoder resolution is 5000puls/rev but, driver has one pos-scale .
Should i make a new cia402.comp and add linear encoder or there is a possible way to handle the problem using current driver?
Please Log in or Create an account to join the conversation.
25 Feb 2023 13:17 #265326
by andypugh
Replied by andypugh on topic linear encoder + cia402 driver + delta a2 incremental
Sorry, I can't help as I know nothing about EtherCAT, but it feels like it should be possible to set the parameters on the device?
Otherwise, maybe changing the .comp isn't difficult?
Otherwise, maybe changing the .comp isn't difficult?
The following user(s) said Thank You: mehdidadash
Please Log in or Create an account to join the conversation.
26 Feb 2023 09:41 #265395
by 0x2102
Replied by 0x2102 on topic linear encoder + cia402 driver + delta a2 incremental
I think it makes more sense to configure "full closed loop" within the Delta A2.
It is well documented for the Delta A3 drives but not for the A2.
You can google "DELTA_IA-ASD_ASDA-A3_UM_EN_20210121.pdf" (1177 pages) - 6.7.3 Steps for setting the full-closed loop function.
Parameter have a different format P1.073 vs P1-73 but they should match.
Make sure you test this on your bench and NOT on your machine - this is prone to error and probably requires extensive tuning before you can mount it on your actual machine.
It is well documented for the Delta A3 drives but not for the A2.
You can google "DELTA_IA-ASD_ASDA-A3_UM_EN_20210121.pdf" (1177 pages) - 6.7.3 Steps for setting the full-closed loop function.
Parameter have a different format P1.073 vs P1-73 but they should match.
Make sure you test this on your bench and NOT on your machine - this is prone to error and probably requires extensive tuning before you can mount it on your actual machine.
The following user(s) said Thank You: mehdidadash
Please Log in or Create an account to join the conversation.
26 Feb 2023 10:57 #265405
by db1981
Replied by db1981 on topic linear encoder + cia402 driver + delta a2 incremental
The Cia Comp only does scaling from an incoming position/velocity register.
If you have got raw increment count whose pos scaling can not be done in the drive,
then you would need an "encoder comp" which handels register overflow etc.. to get an working input value for lcncs pid.
this comp will need 2 functions for input and output, to get added at the right positions in the realtime cycle. the output function would be for getting the right pos command from pid back to the drive.
manual encoder handling is coded in the em7004 lcec module, you can extract this to an standalone comp.
if you have a little advanced c-expierence, the better way would be to create a comp which includes the lcec encoder class.
If you have got raw increment count whose pos scaling can not be done in the drive,
then you would need an "encoder comp" which handels register overflow etc.. to get an working input value for lcncs pid.
this comp will need 2 functions for input and output, to get added at the right positions in the realtime cycle. the output function would be for getting the right pos command from pid back to the drive.
manual encoder handling is coded in the em7004 lcec module, you can extract this to an standalone comp.
if you have a little advanced c-expierence, the better way would be to create a comp which includes the lcec encoder class.
Please Log in or Create an account to join the conversation.
- mehdidadash
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 46
- Thank you received: 4
06 Mar 2023 04:45 #265944
by mehdidadash
Replied by mehdidadash on topic linear encoder + cia402 driver + delta a2 incremental
i hate the fact that delta never updated A2 series documents. even its A3 documents are not complete. for example, there is nothing about 0x2511 or digital outputs register in its documents.
by the way, thank you for your detailed guidance.
by the way, thank you for your detailed guidance.
I think it makes more sense to configure "full closed loop" within the Delta A2.
It is well documented for the Delta A3 drives but not for the A2.
You can google "DELTA_IA-ASD_ASDA-A3_UM_EN_20210121.pdf" (1177 pages) - 6.7.3 Steps for setting the full-closed loop function.
Parameter have a different format P1.073 vs P1-73 but they should match.
Make sure you test this on your bench and NOT on your machine - this is prone to error and probably requires extensive tuning before you can mount it on your actual machine.
Please Log in or Create an account to join the conversation.
- mehdidadash
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 46
- Thank you received: 4
06 Mar 2023 04:54 #265945
by mehdidadash
Replied by mehdidadash on topic linear encoder + cia402 driver + delta a2 incremental
drive does the position scaling . for example it shows position in mm . so you say that i don't need to do anything in controller side ?
i have noticed that you consider Cyclic Synchronous Position Mode as a better option for use with Linuxcnc, Ethercat and Cia402 combination . is it true ? closing the loop in controler side does not provide enough accuracy comparing to closing the loop in drive side ?
i mean considering that ethercat has a 1ms sync loop, it will not give a good accuracy if we use it for high speed and high accuracy tasks if we use controller side pid control or loop closing. have i understanded your comments right?
i have noticed that you consider Cyclic Synchronous Position Mode as a better option for use with Linuxcnc, Ethercat and Cia402 combination . is it true ? closing the loop in controler side does not provide enough accuracy comparing to closing the loop in drive side ?
i mean considering that ethercat has a 1ms sync loop, it will not give a good accuracy if we use it for high speed and high accuracy tasks if we use controller side pid control or loop closing. have i understanded your comments right?
The Cia Comp only does scaling from an incoming position/velocity register.
If you have got raw increment count whose pos scaling can not be done in the drive,
then you would need an "encoder comp" which handels register overflow etc.. to get an working input value for lcncs pid.
this comp will need 2 functions for input and output, to get added at the right positions in the realtime cycle. the output function would be for getting the right pos command from pid back to the drive.
manual encoder handling is coded in the em7004 lcec module, you can extract this to an standalone comp.
if you have a little advanced c-expierence, the better way would be to create a comp which includes the lcec encoder class.
Please Log in or Create an account to join the conversation.
06 Mar 2023 11:00 #265951
by rodw
Replied by rodw on topic linear encoder + cia402 driver + delta a2 incremental
Don't fight the Ethercat paradigm or you will endure a lot of pain. Forget about linear encoders for now and just get your machine operational using the motor encoders.
Don't attempt to mix the linuxcnc paradigm with the ethercat paradigm without expert knowledge.
If the drives support a linear encoder attach it there...
Explore other options only when you fully understand what is going on.
Don't attempt to mix the linuxcnc paradigm with the ethercat paradigm without expert knowledge.
If the drives support a linear encoder attach it there...
Explore other options only when you fully understand what is going on.
Please Log in or Create an account to join the conversation.
- mehdidadash
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 46
- Thank you received: 4
06 Mar 2023 21:13 #265979
by mehdidadash
Replied by mehdidadash on topic linear encoder + cia402 driver + delta a2 incremental
i endured a lot of pain in the past 6 month because of that. every time that i changed an example of hal-cia402 or linuxcnc-cia402 git repositories, i lost lot of time. so i know that you are right. and i have to say thank your for your help. and db1981 and 0x2102(specially for linear encoder problem).
Don't fight the Ethercat paradigm or you will endure a lot of pain. Forget about linear encoders for now and just get your machine operational using the motor encoders.
Don't attempt to mix the linuxcnc paradigm with the ethercat paradigm without expert knowledge.
If the drives support a linear encoder attach it there...
Explore other options only when you fully understand what is going on.
The following user(s) said Thank You: rodw
Please Log in or Create an account to join the conversation.
- Configuring LinuxCNC
- Advanced Configuration
- EtherCAT
- linear encoder + cia402 driver + delta a2 incremental
Time to create page: 0.106 seconds