Ticket #6049 - EDM postprocessor

Hello!

I have an old EDM (wire cut), and it has a very strange brain for gcode.
Only in increment and in a 6 digit axis language can go.
So like this:

N115%
N132G01X+000100Y+000100G40M21
N135P01D01S01T01G43
N136G01Y+009000G44
N137G01G01X+001500Y+000000G40
N138G01X+030000Y+000000G44
N139G02X-002000Y-002000I-002000J+000000
N140G01X-000500Y+000000
N141G03X-001500Y-001500I+000000J-001500
N142G02X-001500Y-001500I-001500J+000000
N143G01X-018500Y+000000
N144G01X+000000Y-004488
N145G01Y-000500
N150P01D02S02T02G43
N154G01X-000000Y+004988G44
N156G01X+018500Y+000000G44
N158G03X+001500Y+001500I+000000J+001500
N160G02X+001500Y+001500I+001500J+000000
N162G01X+000500Y+000000
N164G03X+002000Y+002000I+000000J+002000
N166G01X-030000Y+000000
N168G01X+000000Y-009490
N170G01Y+000490
N171D03S01T01G43
N175G01X+005750G44
N180G01Y-000100
N181G45
N190M02

The first three is milimeter integer and the rest are fractional. No space dots or comma allowed.
Anybody can help me to solve this issue?

Sliptonic once tried but he said that freecad (then) cannot put out gcode in increment…

Sincerely
Gergő

Created issue 4320

Can you provide the G-code for the example on the Path Postprocessor Customization page. It helps e.g. seeing how circles are defined.

Hello!

Sorry, but I am so novice to this machine and programming it, I have no idea how this machine handles with circles.
But I found this little article:

http://www.cam-1.com/Agie_programming.htm

The main rules are:

“The file must be programmed in incremental.
To achieve the best possibility accuracy the file should be programmed in metric.
No decimal points are allowed. Trailing zeroes must be programmed.
Entry and exit moves from the contour should be perpendicular.
The entry move (lead in) and the first contour move are in reversed order.
A “dummy move” which is tangent to the last contour move must be programmed before the exit move (lead out).
All intersections must be tangent. A fillet radius must be programmed in sharp corners.
All inside corner radii must be larger than the largest programmed wire offset or overcutting may occur.
When alternating directions are to be used to trim a part the offset for the reverse cuts will be negative.”

I will search and ask further.

Thanks a lot!

I attached a post-processor to the mantis ticket. Since I don’t have a test file, it’s a shot in the dark but please take a look at it.

Just took out the F (feed,velocity) parameters from the postprocessor, cause we don’t need it. Actually there is another file who only contains the technical datas like wire width and wire speed and so on. Feed is calculated by these parameters by the EDM.
Also we need somehow get rid of the spaces between coordinates and N line numbers…
We will getting close.

Thanks everybody!

Getting rid of the space after the line number is easy. Just modify the linenumber function around line #294. Take off that trailing space.

Ticket migrated to GH https://github.com/FreeCAD/FreeCAD/issues/6049

@Gegsite care to follow up? Ticket has moved to https://github.com/FreeCAD/FreeCAD/issues/6049

Just added a pull request that mostly covers this issue, tried to make it as flexible as possible to help as much people as possible
check https://github.com/FreeCAD/FreeCAD/pull/11248

I could add support for @Gegsite machine if feedback and testing is provided