I found a strange behaviour with a simple g-code file (see attachment)
Basically this file is a simple hole chamfer path replicated 6 times in a matrix fashion.
The strange thing is that in a random fashion, according to the coordinates used in file, the interpreted goes past the G0 statement even if that motion segment is still not completed. As a result kflop detects a following error and the axis is disabled. I payed attention to every single previous G0 line and the interpreter, correctly, does not proceed if the motion is not completed.
In the attached G-Code it happens at line 423 when positioning to the 5th hole (marked with arrow in the following code).
Code: Select all
...
G1 X111.4993 Y85.0 Z-2.0
(Phase:Exit)
G0 Z19.5
(Phase:Exit)
G0 Z99.5
M9
(Phase:Approach)
G0 X149.499 Y35.000 Z99.500 <------
G0 Z19.500
(Phase:Direct Entrance)
M8
F250
G1 Z-2.000
(Phase:Open Profile)
F760
G1 X149.4993 Y35.0 Z-2.0
...
Please note that this happens only if we make a traverse X-Y combined move; if I change the line to make single axis move everything works fine.
i.e.
Code: Select all
(Phase:Approach)
(G0 X149.499 Y35.000 Z99.500)
G0 X149.499
G0 Y35.000
G0 Z19.500
In simulation everything is ok.
I'm using 4.35f version with latest patch to GCodeInterpreter.
Params of TP are pretty standard, but we have CollinearTolerance to 0.0
Any idea?
Thanks
Giancarlo