Hi Kirk,
Every big windstorm we have has me wondering which tree will fall across our 
powerline or house.  But I like the trees too much to remove them.

The problem I find when looking for  " START_SPEED_FEED_SYNCH " is they are all 
either printf functions or null as in they don't appear to do anything: 

void START_SPEED_FEED_SYNCH(int spindle, double feed_per_revolution, bool 
velocity_mode) {}

After that function (wherever it is and whatever it does) returns the actual 
threading pass to the target_z position is done:
        STRAIGHT_FEED(block->line_number, boring? safe_x + depth: safe_x - 
depth, 
                      start_y, target_z - zoff, AABBCC); //over

The carriage is brought to the correct Z + offset location where the offset is 
the tan of the X distance and angle to follow the slope of the thread angle.  
Like setting the compound to 29.5 degrees.

Then we wait for some sort of sync.  It appears the Z may well be stopped at 
this point and the tool is at the depth for cutting the next pass.  I guess it 
depends on how slow the spindle is moving.

But that parameter "feed_per_revolution" probably is probably used along with 
the Z axis "MAX_ACCELERATION" in the INI and HAL files to count out a specific 
index position so the START_SPEED_FEED_SYNCH function returns not at the index 
position but where it would be given Z axis acceleration at the current angular 
velocity of the spindle.

Have I got that right?  And if so where is the real code for 
START_SPEED_FEED_SYNCH?
John Dammeyer
 

> -----Original Message-----
> From: Kirk Wallace [mailto:kwall...@wallacecompany.com]
> Sent: January-20-21 8:07 AM
> To: emc-users@lists.sourceforge.net
> Subject: Re: [Emc-users] Spindle speed changes with threading.
> 
> (bottom posted this one)
> 
> On 1/19/21 9:42 PM, John Dammeyer wrote:
> >> I dont think, the z position is "geared" to the counts beyond
> >> index so locked unambiguously to spindle angle beyond index,
> >> after initial sync is acheived.
> >>
> >>
> >> Peter Wallace
> >> Mesa Electronics
> > So far that makes sense.  From "LinuxCNC User manual"
> >
> > "The tool will pause briefly for synchronization before each threading 
> > pass, so a relief groove will be required at the entry unless the
> beginning of the thread is past the end of the material or an entry taper is 
> used."
> >
> > Following that is:
> > "Unless using an exit taper, the exit move is not synchronized to the 
> > spindle speed and will be a rapid move. With a slow spindle,the
> exit move might take only a small fraction of a revolution. If the spindle 
> speed is increased after several passes are complete,
> subsequent exit moves will require a larger portion of a revolution, 
> resulting in a very heavy cut during the exit move. This can be
> avoided by providing a relief groove at the exit, or by not changing the 
> spindle speed while threading."
> >
> > So there are side effects to changing the spindle speed but nothing that 
> > infers it can't or shouldn't be done.
> >
> > The implication is that at the start of the G76 based on spindle speed and 
> > Z axis acceleration along with target Z axis speed a specific
> spindle encoder value is used after that to determine when the axis is 
> synchronized.
> >
> > Or N encoder counts before the index is used as the starting point for the 
> > Z to begin so it's up to speed, ready to engage, at the
> spindle index mark.
> >
> > Synchronizing it to the index mark for up to speed condition if you want to 
> > create multi-start threads makes sense.   Move the start
> point by half the pitch to the right.  Since the position of tool entry at 
> speed is the index pulse regardless of spindle speed the thread
> should start 180 degrees from the first.
> >
> > So where is this calculated?  In the Trajectory Planner?  I'd like to look 
> > at the code but no idea where to even start looking.
> >
> > John Dammeyer
> >
> 
> snip ...
> 
> I left the trail here:
> 
> > https://github.com/LinuxCNC/linuxcnc/blob/master/src/emc/rs274ngc/interp_convert.cc#L4881-L5028
> 
> I think this is my next stop:
> 
> > https://github.com/LinuxCNC/linuxcnc/tree/master/src/emc/motion
> 
> (but after a day of 50 mph winds, there are a few chores to attend to)
> 
> Kirk Wallace
> 
> 
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users



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

Reply via email to