C-Axis (Angular) and sprockets configuration..

More
04 Mar 2014 01:02 - 05 Mar 2014 05:23 #44373 by cts1085
First off let me tell you that what I have works, i just don't know why.

[Edited - Nevermind - I cannot count - the jack outer sprocket is 30 teeth not 40 - The math works]

On my XZC lathe, i have the following mechanical on my "C" axis.

Stepper motor (200 steps/rev)
Driver (Half stepping enabled) - so result is 400 steps / rev)

I have sprocket w/chain setup as the following:

Motor (10 teeth) - > Jack outer (40 teeth) with same spindle Jack inner (10 teeth) -> Lathe spindle (18 teerh).

By my calculations:

400 Steps / Rev * 4 (first reduction) * 1.8 (second reduction) gives me 2880 steps / revolution

So 2880 / 360 (degrees) gives me a scale of 8
When i enter the scale = 8 in the .INI file - and i tell it to run from G0 C0 to G0 C360 it overshoots by quite a lot.

When I change the scale to "6" - it is spot on.

Why? What am i missing?


Here are the relevant portions from my .INI file (I think):

[AXIS_5]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 360.0
MAX_ACCELERATION = 1200.0
STEPGEN_MAXACCEL = 1500.0
SCALE = 8.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.0

[TRAJ]
AXES = 6
COORDINATES = X Z C
MAX_ANGULAR_VELOCITY = 360.00
DEFAULT_ANGULAR_VELOCITY = 36.00
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 9.50
MAX_LINEAR_VELOCITY = 95.00
Last edit: 05 Mar 2014 05:23 by cts1085.

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

More
08 Aug 2015 18:44 #61222 by pkasy

G0 C0 to G0 C360 it overshoots by quite a lot.
When I change the scale to "6" - it is spot on.

I have a similar situation. but even more.

I have five axes on the machine. fifth - the rotary axis.
the simple move from 0 to 180 blows this axis to 202, and then back to 179 and then 180.
even if you move just one degree, axis still overshoots and returns.

why?

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

More
08 Aug 2015 23:29 #61226 by cts1085
Would it be possible to post a picture of the setup? in my case I was really worried about backlash and devised a chain tensioner that keeps the chain seated in the socket - it may be that this is your issue.

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

More
10 Aug 2015 19:43 #61271 by andypugh

I have five axes on the machine. fifth - the rotary axis.
the simple move from 0 to 180 blows this axis to 202, and then back to 179 and then 180.
even if you move just one degree, axis still overshoots and returns.


Is this a stepper or a servo system?

In either case this is probably due to a miss-match in acceleration values. If it is a stepper check that the axis accel and stepgen accel are about the same value, with stepgen slighly higher.

Your rotary axis numbers rise aproximatey 360 x as fast as linear axis numbers in engineering units.
The following user(s) said Thank You: pkasy

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

More
03 Feb 2016 08:04 #69495 by pkasy
please help me calculate the SCALE value for B axis.

there is a stepper motor 1.8 degree step running in the half-step mode
it wears a pulley, with the number of teeth - 18.
the shaft of the reducer also has pulley, with a number of teeth 23
reducer has a gear ratio of 1:80 (passport, ie pdf)
pulleys are connected by a belt, that is, the stepping motor rotates the reducer

just how to calculate SCALE?

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

More
03 Feb 2016 10:24 #69502 by andypugh

please help me calculate the SCALE value for B axis.
there is a stepper motor 1.8 degree step running in the half-step mode
it wears a pulley, with the number of teeth - 18.
the shaft of the reducer also has pulley, with a number of teeth 23
reducer has a gear ratio of 1:80 (passport, ie pdf)
pulleys are connected by a belt, that is, the stepping motor rotates the reducer
just how to calculate SCALE?


The final number you want is motor step pulses per degree.

Your mechanical gearing is 80 * (23/18) : 1 = 102.2222..
You have a 200 step motor and half stepping. = 400 steps per motor rev.
So that is 40888.888... step pulses per rev.
Divide by 360 for step pulses per degree = 113.58. That should be your SCALE value.

(Actually, to be pedantic, that should be your stepgen.N.position-scale value. You could put that number directly in the HAL, or use a completely different name for the INI file entry if you wanted to. What I am saying is that the [AXIS_3]SCALE INI entry is not anything special to the system. )

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

More
03 Feb 2016 13:23 #69506 by pkasy
Yes, all think so.
SCALE = 113.58024691358
But Linux CNC thinks differently, or more precisely
SCALE = 123.828938408304 (about)
As you have guessed, if there was a question, then it is not that simple.
What could be wrong?
The gear ratio of the gear unit is engraved on its body.
Number of teeth on the pulleys I recounted many times.
The step value?
or there is some other variables that affect LinuxCNC?

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

More
03 Feb 2016 13:32 #69508 by andypugh

What could be wrong?


What makes you think that anything is wrong?

What scale number are you using? What do you see? What would you expect to see?

I just answered the question on how to calculate the scale.

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

More
03 Feb 2016 13:42 - 03 Feb 2016 13:43 #69509 by pkasy

What scale number are you using?

now SCALE = 123.828938408304

What would you expect to see?

I expect that when command G0B180 B axis is rotated at 180 degrees. But this does not happen, if the SCALE = 113.58024691358
Last edit: 03 Feb 2016 13:43 by pkasy.

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

More
03 Feb 2016 13:47 #69510 by pkasy
my INI:
#********************
# Axis B
#********************
[AXIS_4]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 8.0
MAX_ACCELERATION = 8.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXACCEL = 10
STEPGEN_MAXVEL = 10.0
SCALE = 123.828938408304
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.0
# these are in nanoseconds
DIRSETUP   = 1000
DIRHOLD    = 4000
STEPLEN    = 500
STEPSPACE  = 4000
# 23/18
HOME_SEQUENCE = 1
#HOME_USE_INDEX = NO
HOME_SEARCH_VEL = -5.000000
HOME_LATCH_VEL = 0.5
HOME_FINAL_VEL = -0.100000
#SCALE = 113.58024691358

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

Time to create page: 0.094 seconds
Powered by Kunena Forum