Simon Daykin wrote: > Kirk, > > Thanks for the reply, I can't decide whether to implement it as > ClassicLadder or a .comp file. > > However, I have discovered a more critical problem. > > When I run a G95 move I don't get the correct pitch. > This happens in Mach3 also which is why I set off down the EMC road in the > first place, to see if it was software or machine specific. > I do not get the problem on a desktop machine only on my laptop. > > I found it interesting that both Mach3 and EMC produce approximately the > same incorrect pitch with G95 moves. Obviously until I either fix the pitch > problem or change the computer then my machine is useless for threading! > > FWIW if I command a G95 G1 F2 Z0 from a Z-70 position then the resulting > pitch as shown by a very shallow cut (scratch) then the pitch over 33 > pitches of 2mm = 68.2mm measured using a Mitutoyo digital caliper. >
Getting 68.2mm when you wanted 66mm is a 3.3% error. G95 (feed per rev) is not for threading, it is used to maintain constant chip load at varying spindle speeds. As such, extreme precision is not needed. If you are threading, or need accurate pitch for some other reason, you should be using G33 (spindle synchronized motion). G33 is also at the core of the G76 threading canned cycle. Spindle synchronized motion is also used for rigid tapping. Spindle synchronized motion uses the _position_ feedback from an encoder to control the Z axis. G95 uses _speed_ feedback, which is less accurate. The speed value is taken from the HAL pin motion.spindle-speed-in (in revs per second) to compute the feedrate. It is up to you to provide a signal at that pin. One method is to use the velocity output of an encoder on the spindle. If that is what you are doing, check the scaling, etc, for the spindle encoder. If you don't have a spindle encoder, you can feed back the "motion.spindle-speed-out" signal. You have to use a scale block, since speed-in is in revs/second (for better compatibility with encoders) and speed-out is in revs/minute (traditional way of specifying spindle speed. If you feed speed-out back to speed-in, that means that EMC will calculate the feed-per-rev based on the commanded speed. It has no idea of the actual speed, so if your spindle speed control is inaccurate, you will get an inaccurate feed. Regards, John Kasunich ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
