The definitive answer to G93/G94 with Mach3 and Mach4.
If you want the fastest cut time when performing simultaneous cuts using G94 with “A-Rotations Enables”, “Use Radius for Feedrate” and setting X Rotation Radius tolerance to +0.0001 with G94XYZA F then Mach3 is it.
If you want the best outcome, but more cut time on simultaneous cutting then Mach4 G93XYZA F is it.
On non-simultaneous cutting XZA then Mach3 and Mach4 with above settings are very close in time.
Mach3 calculates G93 mode on the fly for the A Axis, while doing G94 on the XYZ.
Mach4 does no calculation just processes the G-Code therefore on simultaneous cutting you can only use G93XYZA F mode, therefore XYZ will run slower than G94.
The best for Mach4, with simultaneous cutting, would be if you could process G-Code G94XYZ F G93A F on the same line, this would do exactly the same process as Mach3 (but this does not work).
Art was very clever in his approach to this and he knew that this was the only way of handling the issue. (i.e.) to calculate it on the fly with the Mach4 program.
I have been doing lots of experimentation with all types of G-Code outputs as described below.
What I have found is that when using G94 or G93, XYZA Axis must send to G-Code on the same one line as per a normal G-Code Post.
Also this means that the calculation for F Speed G93 is then only calculated on A Axis and but applies to the XYZA Axis.
This still reduces the cutting time on an example like pictured below in Mach4.
30 Mins 23 Sec with G93 and 39min 33sec with G94, but is not optimal speed (like in Mach3).
If you split out the A Axis and have XYZ Axis on the one line then this will cause incorrect cutting on non-circular cuts on the simulator.
However if you use XYZA on the same line, then the cutting simulation comes out perfectly.
So all these G-Code outputs will NOT provide a good result and also results will vary between them.
G93 XYZ F
G93 A F
OR
G94 XYZ F
G93 A F
OR
G94 XYZ F
G94 A F
OR
G94 X
G94 Y
G94 Z
G94 X
OR
G93 X
G93 Y
G93 Z
G93 X
Or any other combination with the XYZA split out for the standard XYZA.
The only G-Code output that works smoothly and correctly with Mach4 is:
G93 XYZA F
OR
G94 XYZA F
If however you are just machining continual circles then it does not matter, but as soon as a Y axis movement is made like in a 4 Axis simultaneous G-Code, then it will not produce a smooth cutting result.
So in closing Non Simultaneous G-Code is OK, but Simultaneous G-Code will not be OK.
Mach3 calculated the A Axis on the fly while sending the code to the motor controller so it does the fastest process as this fully optimizes the G94/G93 process on all XYZA.
So on Mach4 we will have to be satisfied when using Simultaneous cutting with G93 XYZA F.
Regards,
Mauri.