Automatically eliminate gouging script
09 Jun 2022 00:09 - 09 Jun 2022 00:13 #244789
by thadwald
Automatically eliminate gouging script was created by thadwald
Hi
I'm looking for a script that will run through a gcode file and "fix" gouging issues when using G41 tool radius offset so that the interpreter no longer throws the gouging error message.
Either that or a script that will apply a tool radius offset to gcode.
Any help would be appreciated.
I'll add that my gcode is fairly simple--something like a C-shaped curve.
I'm looking for a script that will run through a gcode file and "fix" gouging issues when using G41 tool radius offset so that the interpreter no longer throws the gouging error message.
Either that or a script that will apply a tool radius offset to gcode.
Any help would be appreciated.
I'll add that my gcode is fairly simple--something like a C-shaped curve.
Last edit: 09 Jun 2022 00:13 by thadwald.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5008
- Thank you received: 1441
09 Jun 2022 12:30 #244802
by Todd Zuercher
Replied by Todd Zuercher on topic Automatically eliminate gouging script
It may help if you posted a copy of the problem piece of g-code and the size of the offset you're trying to use.
Running g-code using large radial offsets (such as a tool radius) can be problematic on any cnc control. You need to be sure that your g-code shape is even possible considering the radial offset and tool diameter used, plus appropriate lead-in and lead-out moves must be programed. It is often easier to generate your g-code for the tool center of your intended diameter tool, and only use the radial offsets for tool wear compensation.
Running g-code using large radial offsets (such as a tool radius) can be problematic on any cnc control. You need to be sure that your g-code shape is even possible considering the radial offset and tool diameter used, plus appropriate lead-in and lead-out moves must be programed. It is often easier to generate your g-code for the tool center of your intended diameter tool, and only use the radial offsets for tool wear compensation.
Please Log in or Create an account to join the conversation.
10 Jun 2022 05:19 - 10 Jun 2022 05:23 #244845
by thadwald
Replied by thadwald on topic Automatically eliminate gouging script
The issue is that I am trying to solve a problem using existing tools, instead of building custom tools.
The gcode is automatically generated by measuring a profile with a scanning CMM and parsing the output file to place a G1 on each line. The irregular surface finish of the measured profile together with measurement errors creates line that has a rough look to it when viewed closely. The overall precision of the profile is within my tolerances and I can easily smooth the profile with G64. But the small irregularities are significant enough to make it impossible to "touch" each line segment with the cutting tool.
I am currently looking into the dxf2gcode project, to see if I could either use it as-is or borrow the cutter compensation code.
Not to complain but I was surprised to learn that cutter comp doesn't have an "ignore gouging" or, better yet, a "avoid invalid geometry" mode. Maybe this is because I do not yet appreciate how involved the process is.
The gcode is automatically generated by measuring a profile with a scanning CMM and parsing the output file to place a G1 on each line. The irregular surface finish of the measured profile together with measurement errors creates line that has a rough look to it when viewed closely. The overall precision of the profile is within my tolerances and I can easily smooth the profile with G64. But the small irregularities are significant enough to make it impossible to "touch" each line segment with the cutting tool.
I am currently looking into the dxf2gcode project, to see if I could either use it as-is or borrow the cutter compensation code.
Not to complain but I was surprised to learn that cutter comp doesn't have an "ignore gouging" or, better yet, a "avoid invalid geometry" mode. Maybe this is because I do not yet appreciate how involved the process is.
Last edit: 10 Jun 2022 05:23 by thadwald.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5008
- Thank you received: 1441
10 Jun 2022 17:08 #244887
by Todd Zuercher
Replied by Todd Zuercher on topic Automatically eliminate gouging script
If I were doing this, I'd probably just import the code into the CAD/CAM software I use at work and either run a smoothing operation on it, or do an outline and/or inline of the original path to smooth it, then generate the tool path I wanted. But I don't know what software you have access to.
Please Log in or Create an account to join the conversation.
10 Jun 2022 17:36 #244890
by thadwald
Replied by thadwald on topic Automatically eliminate gouging script
I need to automate the entire process.
Please Log in or Create an account to join the conversation.
15 Jun 2022 09:39 #245167
by andypugh
Replied by andypugh on topic Automatically eliminate gouging script
Conveting noisy XY data into smooth curves is a fairly involved task. But I would expect that there are standard routines out there to do the task.
I feel that it would be best to convert the data to valid geometry first.
Maybe this helps? stackoverflow.com/questions/20618804/how...rve-in-the-right-way
I feel that it would be best to convert the data to valid geometry first.
Maybe this helps? stackoverflow.com/questions/20618804/how...rve-in-the-right-way
Please Log in or Create an account to join the conversation.
17 Jun 2022 05:19 - 17 Jun 2022 05:23 #245303
by thadwald
Replied by thadwald on topic Automatically eliminate gouging script
Thank you for the link. I may have to do some smoothing to my profile.
I actually ran into some issues with profiles that are "impossible" to machine--even with perfect measurements. I need the cutter to follow these the best that it possibly can, without gouging. This is exactly the same problem as you would run into when generating a tool path for a pocket roughing tool.
I *think* I solved this problem by using a polygon clipping tool. I got this idea by inspecting the Kiri:moto project and finding out how they do it. It turns out they use a C++ clipper library. This one:
www.angusj.com/delphi/clipper.php
Someone wrote a python wrapper for it here:
github.com/fonttools/pyclipper
and with a simpleI have the clipper library ready to use.
With this library, I feed the point cloud into the array and expand or contract it. It returns a new set of points. It appears to do exactly what I want; cull those points that are impossible to reach.
I actually ran into some issues with profiles that are "impossible" to machine--even with perfect measurements. I need the cutter to follow these the best that it possibly can, without gouging. This is exactly the same problem as you would run into when generating a tool path for a pocket roughing tool.
I *think* I solved this problem by using a polygon clipping tool. I got this idea by inspecting the Kiri:moto project and finding out how they do it. It turns out they use a C++ clipper library. This one:
www.angusj.com/delphi/clipper.php
Someone wrote a python wrapper for it here:
github.com/fonttools/pyclipper
and with a simple
pip3 install pyclipper
With this library, I feed the point cloud into the array and expand or contract it. It returns a new set of points. It appears to do exactly what I want; cull those points that are impossible to reach.
Last edit: 17 Jun 2022 05:23 by thadwald.
Please Log in or Create an account to join the conversation.
17 Jun 2022 23:34 #245359
by andypugh
Make notes
Replied by andypugh on topic Automatically eliminate gouging script
Sounds like one of those fin projects that is fascinating at the time, you really understand it, and then 3 years later have _no_ idea how it worked or what you did.
With this library, I feed the point cloud into the array and expand or contract it. It returns a new set of points. It appears to do exactly what I want; cull those points that are impossible to reach.
Make notes
Please Log in or Create an account to join the conversation.
18 Jun 2022 01:12 #245370
by thadwald
Replied by thadwald on topic Automatically eliminate gouging script
Noted!
Please Log in or Create an account to join the conversation.
Time to create page: 0.080 seconds