One more addendum to this and then I'll leave it alone. I played around with a few more Z axis accel and spindle speed values.
It looks like it only starts decelerating the spindle to 0 after the Z distance has finished. Then Z decelerates as does the spindle. Since the Z position after it's stopped exceeds the Z starting point it then moves the Z back. So there's an extra Z move in there that wasn't apparent when the line following the G31 was G01 Z 0.5. When I removed the Z 0.5 it became clear the Z has overshot Z=0.0 and is brought back to Z=0.0.. And it looks like Z tries to track the spindle as it decelerates but can't keep up when the spindle speed is too high and has a high ACCEL value. One other interesting side effect. S200 M3 G33.1 Z-0.7 K0.05 I12 Tapping is done at 200 RPM and Z=10 IPM. The return RPM is 2400 RPM and Z should be 120 IPM. Both speeds are within the capability of the system. However it just stops at the end of the retraction point. The S200 M3 doesn't occur. No fault message. John > -----Original Message----- > From: John Dammeyer [mailto:jo...@autoartisans.com] > Sent: July 5, 2023 12:08 AM > To: 'Enhanced Machine Controller (EMC)' > Subject: Re: [Emc-users] G33.1 error then g-code file parsed > > Hi Gene, > > > -----Original Message----- > > From: gene heskett [mailto:ghesk...@shentel.net] > > That Z following until the spindle is completely stopped is a > > possibility I hadn't considered. And I don't read src code that easily. > > I have always considered the sync was released when z had been > withdrawn > > to the starting point even though inertia is going to make it over shoot > > and either motion or the PID's are going to force the reset to the > > starting position, doing it independently. So if you're correct then > > we've both learned something. And your fix would appear to be the > > correct one. If the z is your knee, turning that around and bringing it > > back up to 2 or 4 thou is the hardest part of the job. > > > > I also don't have any machines with a heavy knee. Out of sight, out of > > mind. I'll get my coat now. > > > > I've done some other tests too. With the reduced acceleration on the > spindle it takes a while now for it to go from 0 to 3000 RPM. Here's what's > interesting. If I tell it S0 it sets the speed to 0 and does the M5 and stops > instantly. If I do an S1 it slows from 3000 RPM down to 1 RPM and no M5. > Now if I then do an M5 it stops. All that makes sense. > > Next. I have it running at S1200 M4 (CCW). I then tall it S200 M3. I get the > slow smooth deceleration and then change in direction and acceleration back > up to 200 RPM with the new ACCEL values. Still fairly smooth. > > Therefore I'm guessing that at the end of the I6 which is turning 1200 RPM > CCW the internal behavior is like immediately executing an M3 with tracking > disabled since we no longer want the Z to move the work into the tap again. > (or the tap into the work). > > If I put the higher spindle accel values back the change from 600 RPM CCW to > 200 RPM CW (the original M3 speed for tapping) is almost instant. > > So why might that be? My theory is that Z tracks the spindle until it's reached > the original start position. > > G33.1 Z-0.7 K0.05 I3.0 > Let's take a look at trajectory planning here remembering like threading on a > lathe the Z axis tracks the spindle speed. The question is what does it do as > it's unscrewing the tap. > 1. The hole was -0.7" deep. > 2. Z takes 0.1" to decelerate at 30 ipm (the I3 speed) so starts to decelerate at > Z=-0.1 to reach Z0.0. > 3. The trajectory planner should decelerate the spindle to 0 RPM during that > last 0.100" Z axis motion using the Z ACCEL value > 4. When Z is back at the start (Z=0.000) the spindle should also be stopped > and at this point the G33.1 command is complete.. > 5. Except we have to put the spindle back to where we were when it started > which was S200 M3. > > Except maybe, the system issues the S200 M3 at the -0.1" Z position > assuming the Z will finish it's deceleration and the spindle will stop and go > back to CW at 200 RPM. > Z (Joint 2) is still tracking the spindle which is now decelerating way too fast > and we get the following error. > > Or maybe at Z=-0.1 the system issues an M5 to stop the spindle which it does > almost instantly and Z can't keep up and a following error. > > When I change the spindle acceleration so it slows down to zero at a rate that > Z can keep up with and I don't get a following error. > > Anyway, the behaviour is now repeatable and I suspect how the I parameter > is handled with respect to tracking is a problem. > > John > > > > > If the system knows that at Z ACCEL values it takes say 0.1" to come to a halt > then it likely tells spindle to now slow down to 0 as the Z axis decelerates to 0 > arriving at the Z starting point of the tapping process. > > > > > _______________________________________________ > 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