- Posts: 85
- Thank you received: 0
linuxcnc+ethercat drives the AKD servo motor it cannot be moved
5 years 1 month ago #219916
by wang
Replied by wang on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
Can you talk about your formula in detail? Or provide me with a learning tutorial webpage, documentation or something.
Please Log in to join the conversation.
5 years 1 month ago #219934
by db1981
Replied by db1981 on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
for this case there is not realy an formula.
halPin="pos" halType="float" scale="-0.000001" tells, that 1 increment send from the servo drive is equal to 0.000001 Machine Unit (mm or inch set in the ini file.)
halPin="poscommand" halType="float" scale="-1000000" tells, that 1000000 increments are equal to 1 Machine Unit (mm or inch set in the ini file)
so if you tell to move 3mm, the drive will get an command of 3000000 increments, in the case of 0.5mm the output is 500000.
In an system like yours when feedback and motor is on unit, poscommand scale should be the reciprocal of the feedback scale. Like you have set it.
To match the scaling factor to the mechanics, you have to know how the scaling in you servodrive is set, or if it is fix, how the resolution of the linearmotor is. (datasheet of the motor)
Example: Beckhoff linear , pole pair distance 24mm, beckhoff drive does 20bit increments per pair; 24mm = (2^20) 1048576 increments; 1inc = 0.000022888mm; feedback scale (pos) = 0.000022888; command scale = 43690.666667 (2^20 / 24)
halPin="pos" halType="float" scale="-0.000001" tells, that 1 increment send from the servo drive is equal to 0.000001 Machine Unit (mm or inch set in the ini file.)
halPin="poscommand" halType="float" scale="-1000000" tells, that 1000000 increments are equal to 1 Machine Unit (mm or inch set in the ini file)
so if you tell to move 3mm, the drive will get an command of 3000000 increments, in the case of 0.5mm the output is 500000.
In an system like yours when feedback and motor is on unit, poscommand scale should be the reciprocal of the feedback scale. Like you have set it.
To match the scaling factor to the mechanics, you have to know how the scaling in you servodrive is set, or if it is fix, how the resolution of the linearmotor is. (datasheet of the motor)
Example: Beckhoff linear , pole pair distance 24mm, beckhoff drive does 20bit increments per pair; 24mm = (2^20) 1048576 increments; 1inc = 0.000022888mm; feedback scale (pos) = 0.000022888; command scale = 43690.666667 (2^20 / 24)
Please Log in to join the conversation.
5 years 1 month ago #220022
by wang
Replied by wang on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
I probably understand what you mean. I think the linear motor should be adaptable in this way. I will go to understand what you said about the scale factor.
At the same time, I also have a rotating motor for the Z axis, which uses a ball screw. How should the rotating motor match?
At the same time, I also have a rotating motor for the Z axis, which uses a ball screw. How should the rotating motor match?
Please Log in to join the conversation.
5 years 1 month ago #220046
by db1981
Replied by db1981 on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
For this you also need to know resolution of the Drive/motor...
example:
The Drive has 65536 increments / per Motor Revolution,
Ballscrew pitch is 5mm -> 65536inc = 5mm ->
1mm = 13107.2 inc ->
feedback scale (pos) = 1 Machine Unit / 13107.2 inc = 0.000076229 mm/inc
command scale = 1 Machine Unit = 13107.2 increments
example:
The Drive has 65536 increments / per Motor Revolution,
Ballscrew pitch is 5mm -> 65536inc = 5mm ->
1mm = 13107.2 inc ->
feedback scale (pos) = 1 Machine Unit / 13107.2 inc = 0.000076229 mm/inc
command scale = 1 Machine Unit = 13107.2 increments
Please Log in to join the conversation.
5 years 1 month ago #220106
by wang
Replied by wang on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
Okay
thank you very much for your patient explanation, I feel I have understood it.
But there is another point that I am not very clear about.
How to understand this "increments"?
How should I confirm whether my device is 20bit and 65536?
thank you very much for your patient explanation, I feel I have understood it.
But there is another point that I am not very clear about.
Attachment not found
Attachment not found
How to understand this "increments"?
How should I confirm whether my device is 20bit and 65536?
Please Log in to join the conversation.
5 years 1 month ago #220111
by db1981
Replied by db1981 on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
you have to find this in the manual/datasheets of your Drive or Motor.
There have to be an chapter about resolution.
What kind of drives/Motors are this?
If you post datasheets or links . maybe i can help.
There have to be an chapter about resolution.
What kind of drives/Motors are this?
If you post datasheets or links . maybe i can help.
Please Log in to join the conversation.
4 years 10 months ago #228099
by wang
I am currently controlling a five-axis machine tool and ran into this problem again. I found that I still have a lot of questions. My AC-axis drive is a BDHB servo drive from SERVOTRONLX.
This is my drive configuration interface
And motor units
I tried to input 131072 in the control interface (because I thought it should make it make a full circle), but then I tried to make the C axis make a full circle when the number 1310720 was reached.I don't understand why there is a 10 times difference?
Because the units of AC axis are all degrees when we write G code for processing, so I hope that the 1 that I send through PosCommd is 1 degree. You can control the A or C axis to rotate one degree.
Can you tell me how I should set this scale now? thanks
Replied by wang on topic linuxcnc+ethercat drives the AKD servo motor it cannot be moved
Under your guidance, I have mastered the scale calculation method of linear motors and roller screws. At the same time, I have successfully controlled the three-axis machine tool.For this you also need to know resolution of the Drive/motor...
example:
The Drive has 65536 increments / per Motor Revolution,
Ballscrew pitch is 5mm -> 65536inc = 5mm ->
1mm = 13107.2 inc ->
feedback scale (pos) = 1 Machine Unit / 13107.2 inc = 0.000076229 mm/inc
command scale = 1 Machine Unit = 13107.2 increments
I am currently controlling a five-axis machine tool and ran into this problem again. I found that I still have a lot of questions. My AC-axis drive is a BDHB servo drive from SERVOTRONLX.
This is my drive configuration interface
Attachment not found
And motor units
Attachment not found
I tried to input 131072 in the control interface (because I thought it should make it make a full circle), but then I tried to make the C axis make a full circle when the number 1310720 was reached.I don't understand why there is a 10 times difference?
Attachment not found
Because the units of AC axis are all degrees when we write G code for processing, so I hope that the 1 that I send through PosCommd is 1 degree. You can control the A or C axis to rotate one degree.
Can you tell me how I should set this scale now? thanks
Please Log in to join the conversation.
Time to create page: 0.053 seconds
