How to setup gearbox/reducer
15 Aug 2024 10:45 #307791
by DPFlex
How to setup gearbox/reducer was created by DPFlex
Hello,
I have AC servo motor which has harmonic gearbox with ratio is 80:1
How can I setup LCNC to work correctly with the gearbox ratio ?.
Thank you.
I have AC servo motor which has harmonic gearbox with ratio is 80:1
How can I setup LCNC to work correctly with the gearbox ratio ?.
Thank you.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Away
- Platinum Member
Less
More
- Posts: 5055
- Thank you received: 1433
15 Aug 2024 19:55 #307835
by Todd Zuercher
Replied by Todd Zuercher on topic How to setup gearbox/reducer
Depending on if your a controling your servo closed loop or open loop in Linuxcnc. You have to calculate the encoder counts or steps per unit of measure that you wish to use with this joint. The units could be inches, mm or other if the joint is linear, or if the joint is rotary the units would be degrees, radians, revolutions, or other.
If for example this joint is for a rotary C-axis in degrees and your servo motor is closing the loop to Linuxcnc with a 2000 line encoder directly coupled to the motor and the motor is directly connected to your 80:1 gearbox. You would use 2000(4)*80/360=1777.777778 counts/degree. So in your ini file you'd put ENCODER_SCALE = 1777.777778
If for example this joint is for a rotary C-axis in degrees and your servo motor is closing the loop to Linuxcnc with a 2000 line encoder directly coupled to the motor and the motor is directly connected to your 80:1 gearbox. You would use 2000(4)*80/360=1777.777778 counts/degree. So in your ini file you'd put ENCODER_SCALE = 1777.777778
The following user(s) said Thank You: tommylight, DPFlex
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 18767
- Thank you received: 6309
16 Aug 2024 00:46 #307856
by tommylight
Replied by tommylight on topic How to setup gearbox/reducer
You did not give us enough info to be able to help:
-what is the motor driving
-how is that motor coupled to the machine
-how much does the machine move for one turn of the reduction
etc.
-what is the motor driving
-how is that motor coupled to the machine
-how much does the machine move for one turn of the reduction
etc.
The following user(s) said Thank You: DPFlex
Please Log in or Create an account to join the conversation.
16 Aug 2024 07:16 #307889
by DPFlex
Replied by DPFlex on topic How to setup gearbox/reducer
Hi Tommylight,
My system is:
- Drive: AC Servo EtherCAT drive
- Motor is installed in SCARA robot
- The encoder: 17 bit optical absolute multi-turn. Its resolution is 131072, so I understand it has 131072 counts for one turn.
- The mechanical gearbox ratio is 80:1, fixed with motor.
Hope it is all you need Thank you.
My system is:
- Drive: AC Servo EtherCAT drive
- Motor is installed in SCARA robot
- The encoder: 17 bit optical absolute multi-turn. Its resolution is 131072, so I understand it has 131072 counts for one turn.
- The mechanical gearbox ratio is 80:1, fixed with motor.
Hope it is all you need Thank you.
Please Log in or Create an account to join the conversation.
16 Aug 2024 07:27 #307890
by DPFlex
Replied by DPFlex on topic How to setup gearbox/reducer
Hello Todd,
I understand that you make example of "incremental encoder" with quadrature.
My encoder is 17 bit absolute multi-turn type, so the counts for one turn is huge value 131072.
I calculate: 131072*80/360 = 29127.111111. Is it still correct to apply ?.
I put ENCODER_SCALE = 29127.111111 to INI file, but nothing happen.
I understand need to revise HAL file to use ENCODER_SCALE, but it seem encoder component is only suitable to incremental encoder type.
linuxcnc.org/docs/devel/html/man/man9/encoder.9.html
Please advise Thank you.
I understand that you make example of "incremental encoder" with quadrature.
My encoder is 17 bit absolute multi-turn type, so the counts for one turn is huge value 131072.
I calculate: 131072*80/360 = 29127.111111. Is it still correct to apply ?.
I put ENCODER_SCALE = 29127.111111 to INI file, but nothing happen.
I understand need to revise HAL file to use ENCODER_SCALE, but it seem encoder component is only suitable to incremental encoder type.
linuxcnc.org/docs/devel/html/man/man9/encoder.9.html
Please advise Thank you.
Please Log in or Create an account to join the conversation.
16 Aug 2024 08:59 #307895
by Aciera
Replied by Aciera on topic How to setup gearbox/reducer
Looking at my notes on my Melfa robot config using absolute encoders it seems that the value in [Joint_n] SCALE is
360/gearbox_ratio
So for my 80:1 geared J0 I have SCALE = -4.5
for my 120:1 J1 I have SCALE = -3
And so on.
I'm not sure how I came up with that idea but it certainly works for me.
360/gearbox_ratio
So for my 80:1 geared J0 I have SCALE = -4.5
for my 120:1 J1 I have SCALE = -3
And so on.
I'm not sure how I came up with that idea but it certainly works for me.
The following user(s) said Thank You: DPFlex
Please Log in or Create an account to join the conversation.
16 Aug 2024 13:49 #307917
by DPFlex
Replied by DPFlex on topic How to setup gearbox/reducer
Hello Aciera,
Can you share your note here ?.
I searched in DH-parameters for Genserkins and Vismach/Melfa-sim, could not find your note or anything mentioned about absolute encoder
Thank you.
Can you share your note here ?.
I searched in DH-parameters for Genserkins and Vismach/Melfa-sim, could not find your note or anything mentioned about absolute encoder
Thank you.
Please Log in or Create an account to join the conversation.
16 Aug 2024 14:08 - 16 Aug 2024 14:26 #307919
by Aciera
Replied by Aciera on topic How to setup gearbox/reducer
Actually, looking at this more closely, it's probably specific to dmitrys Mechatrolink hardware as 'nyx' refers to his hardware driver:
Looks like you have an EtherCAT setup so my input is not really relevant after all.
[edit]
I would expect that you need set the gear ratio in the motor drives.
setp nyx.0.servo-00.pos-scale [JOINT_0]SCALE
Looks like you have an EtherCAT setup so my input is not really relevant after all.
[edit]
I would expect that you need set the gear ratio in the motor drives.
Last edit: 16 Aug 2024 14:26 by Aciera.
Please Log in or Create an account to join the conversation.
19 Aug 2024 09:46 #308125
by DPFlex
Replied by DPFlex on topic How to setup gearbox/reducer
Hello Aciera,
I have no "nyx" hardware to test, so I chose other option.
I revise "pos-scale" of cia402: "gear ratio" * "encoder counts" / 360 degreeIt runs well this moment.
Have you triedin EtherCAT option ?.
I think it is better solution. My drive does not support, so I could not try. Please share your experience.
Thank you.
I have no "nyx" hardware to test, so I chose other option.
I revise "pos-scale" of cia402: "gear ratio" * "encoder counts" / 360 degree
setp cia402.0.pos-scale 29127.111111
Have you tried
<modParam name="encoderResolution" value="xxx" />
I think it is better solution. My drive does not support, so I could not try. Please share your experience.
Thank you.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Away
- Platinum Member
Less
More
- Posts: 5055
- Thank you received: 1433
19 Aug 2024 14:52 #308141
by Todd Zuercher
This is a little bit of late reply, the encoder component documentation you referenced is a software encoder counting component applicable for reading an encoder via gpio such as through a parallel port. This would not be applicable to your situation with Ether CAT. But it sounds like you are on the right track now.
(I have no experience with Ether CAT.)
Replied by Todd Zuercher on topic How to setup gearbox/reducer
Hello Todd,
I understand that you make example of "incremental encoder" with quadrature.
My encoder is 17 bit absolute multi-turn type, so the counts for one turn is huge value 131072.
I calculate: 131072*80/360 = 29127.111111. Is it still correct to apply ?.
I put ENCODER_SCALE = 29127.111111 to INI file, but nothing happen.
I understand need to revise HAL file to use ENCODER_SCALE, but it seem encoder component is only suitable to incremental encoder type.
linuxcnc.org/docs/devel/html/man/man9/encoder.9.html
Please advise Thank you.
This is a little bit of late reply, the encoder component documentation you referenced is a software encoder counting component applicable for reading an encoder via gpio such as through a parallel port. This would not be applicable to your situation with Ether CAT. But it sounds like you are on the right track now.
(I have no experience with Ether CAT.)
The following user(s) said Thank You: DPFlex
Please Log in or Create an account to join the conversation.
Time to create page: 0.077 seconds