On 2020-04-18 9:37 p.m., Reinhard wrote:
On Sonntag, 19. April 2020, 06:20:35 CEST Chris Morley wrote:
The Gcode interpreter is what defines the concept of offsets tool and
wok offsets and all other Gcode related concepts..
No! Definitely not!

Well it does.

ie G10 adjust the tool offsets.

How tool offsets work are defined by the Gcode rules.

We could produce a different interpreter that converts ChrisMorley code into motion moves.

maybe it doesn't have tool offsets, linuxcnc motion would be fine with it.


It's the interpreter that converts users made code into motion moves. This does seem to be the crux of the problem - motion needs to know some things about the parent language that the motion moves comes from. This is what state tags does.


Think about all languages that control a mill. There are may be thousands out
there. But all mills do the same kind of motion.
So the interpreter should transform cnc-language into binary command. With
that binary command all langugages are the same, so another intelligence can
think about what needs to be done.

This is what it does now more or less. The Interpreter/task converts to motion moves.

but motion moves don't know anything about gcode.



Any interpreter should not have any state or know anything about the machine.
Well, in my mind ;)

The difference between cnc-languages is how elegant the user can code motion at
the machine. Some languages are elegant, others are dumb, but all motion is
the same.

If using CAM cnc-language does not matter any more.
CAM creates motion from geometrics, which than get translated by a
postprocessor into cnc-language.
At machine, the interpreter is the counterpart to postprocessor - eliminating
the language from motion commands.

Well, theory from wonderland :)


cheers Reinhard

Sound like you would like to convert gcode to agnostic 'byte' code (sorta like python does) and have motion run byte code. It means motion would need to know about high level concepts like offsets. So a lot more code would need to run in realtime. I don't know about the practical problems of that I assume that is the reason the interpreter in user space.


Chris


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

Reply via email to