Thanks Jon.

More questions below then.

> > Quick question about threading with LinuxCNC.  If you do a feed hold 
> > between passes for cutting a thread and during that feed hold
> change the spindle speed what will happen?
> >
> No problem.  At the beginning of EACH pass, the spindle
> encoder is zeroed and synched to the index pulse.  Then, the
> Z axis is slaved to the spindle count.  You can even stop or
> back up the spindle during the threading pass, and the Z
> will stay synched to the thread, within the backlash of the
> Z axis.
> 
> 
> > >From a start it takes a certain amount of time to accelerate up to the 
> > >required speed.  If the spindle is turning twice as fast as the
> previous pass it then turns twice as far.  That doesn't line up the cutter 
> with the previous thread.
> >
> Well, as speed increases, it needs more air cut travel to
> get synched, depending on the acceleration and performance
> of the Z axis.
> 
> Jon

Yeah I get that if it can't accelerate fast enough it does need to have the 
BEGIN position far enough away. 

I thought (someone said) that the threading only used the index once at the 
beginning of the threading operation.  I take it then that's per pass.  

I'm not sure what is meant by slaved to the spindle count.  If the Z axis was 
400 steps per rev and the spindle 60 pulses (240 quadrature edges).  Does the 
system calculate how many steps it requires to get up to the threading speed?  
Then use that to get to a specific spindle count value?

Maybe an example:
1.  For simplicity lead screw pitch of 10 TPI (0.1" pitch)
2. for 0.001" resolution the stepper motor has to have at least 100 steps per 
rev which is pretty easy with a motor running full step of 200 steps per turn.
3. Assume acceleration of 1000 steps/sec/sec. In 0.1 seconds it's doing 100 
steps/second. In 0.2 seconds 200 steps/second or 1 rev per second which is 60 
RPM.
4. Spindle is turning 60 RPM for threading so we've reached threading speed in 
0.2 seconds.
5. Spindle is turning 1 rev per second or 2/10ths of a rev in that 0.2 seconds. 
 (48 encoder counts of the 240 per rev) assuming the Z axis started on the 
index pulse with a cleared encoder counter.

Now let's double the spindle speed.   The lead screw also has to turn twice as 
fast so it will get there in 0.4 seconds.  But the spindle will have reached 48 
encoder counts in half the original time or 0.1 second.  It will have travelled 
much further before the Z axis is up to speed.

Or does LinuxCNC calculate that now it will take 96 spindle encoder counts to 
for the Z axis to get up to speed.  To enter the thread at the same point it 
then detects the index.  Counts 240-96 pulses and then starts the Z axis?

If it does that for any speed then the Z axis would always be synchronized on 
the next spindle index.

Just trying to get my head around this.  The spindle position is really only 
known by the index pulse.  Knowing both Z axis acceleration and target speed 
the Z is started N spindle encoder counts before an index pulse so it's up to 
speed the instant the spindle ticks over another index.  How many turns of the 
spindle that takes then doesn't matter.

John





_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to