![]() | |
| Home Page | Mark Forums Read | Today's Posts | My Replies | Classifieds | Reviews | Photo Gallery | Web Links | Share Files | Advertise With Us | Ad List |
| |||||||
| PCB milling Discuss PCB milling here. |
| This forum is sponsored by: |
![]() |
| | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
| |||
| |||
I have posted a similar thread on this subject on www.millpcbs.com. I have taken some publicly available code posted on the PCB-Gcode Yahoo forum for optimizing the output from the Eagle CAD ulp PCB-Gcode and improved it. It is a DOS application and now I'm making plans to update it with a Windows GUI. Long story short, I'd appreciate feedback on the UI. I'm only initially coding for PCB-gcode output, but if I see opportunities to modify it to be more generic I'll give them consideration. For now, if you have a current program that you like the UI on that would match the functionality of what you would like in a GUI for "Optimizer for PCB-Gcode" please post them here or on the www.millpcbs.com thread. Jay |
|
#2
| |||
| |||
I have updated the code to be more universal in how it treats the paths in the input files. It now looks for the first G00 X... Y... line to start the path, and the next G00 X... Y... line to end the path. Using the code posted by Dan above here are the results: Input: c:\temp\suice.nc Output: c:\temp\suice_OPT.nc Old Length : 60869.8 New Length :5376.26 saved 91.1676% Optimizations took: 1.36 seconds. Done! Please review the generated gcode before proceeding to use the output. Yep that's 60 thousand units of travel reduced to 5 thousand! Jay Last edited by Jay C; 07-10-2008 at 06:40 PM. |
|
#3
| |||
| |||
| |
|
#5
| |||
| |||
| Hi, I guess I'll be the first one to respond. I'm observing the progress of your program almost from the beginning. It started at the pcb-gcode mailing list (which is btw not working at the moment), then at millpcbs.com forum and now on cnczone. Personally I tried to optimize a few gcode files which I generated with pcb-gcode and all of them look just fine. Unfortunately I haven't had the chance to try them out in practice. Hhopefully I'll be milling a few PCBs next weekend - on my cheap DIY CNC . I also have to say that I'm really glad that someone finally made a public and a working version of an optimizer because that "random" path selector from pcb-gcode generator really annoyed me, especially as my CNC doesn't have fast feedrates (25 cm/min or 9.8 inch/min) so any unnecessary movements add quite a lot to the final work time. So, keep up the good work and keep us uposted with the progress of the GUI. BTW, which IDE do you use with QT - Visual Studio, Eclipse or perhaps something else? I'm also starting to experiment with it but I have some difficulties with the Eclipse plugin for QT because g++ doesn't seem to find main.cpp |
| Sponsored Links |
|
#6
| |||
| |||
![]() Jay |
|
#7
| |||
| |||
| Today I tried to mill a smal PCB and found an error in optimized gcode. When first path is milled CNC continues to the next path without raising the spindle thus braking one connection on its way. All other paths are milled without a problem. I attached the original and optimized gcode files so you can analyze them. *The problematic line in optimized file is line number 34 (spindle should be raised to Z 0.5000 but instead it stays at Z -0.2000). I hope I provided enough information so you can locate the cause of the problem. EDIT: I'm not sure if line 34 is "the problematic one", but the path of the traveling spindle at the wrong height can be clearly seen in Mach3. |
|
#8
| |||
| |||
| The issue is that the Z up movement occurs after the (File Footer) tag and thus is not included in this path. HMMM, the best solution I can think of (which would also remove the need for the (File Footer) tag is to make the last path always the footer path (my terminology for the last path in the source file). I will work on a solution and post an update. In the mean time, you can just add G00 Z0.5000 before the (File Footer) tag as a work around. Jay |
|
#11
| |||
| |||
| Hmm, your source code looks familiar nice to know it's going to good use.I see you've put a bit more care into how it reads in the files, you've done a nice job with it. I'm surprised someone didn't make an optimiser for it sooner, it's such a crude algorithm but it works so well here. Please feel free to make whatever you want with it, just as long as I get some credit |
|
#12
| |||
| |||
| Yes the code you posted is the kernel of the optimizer. At the top of the source file is: Code: /* * PCB-Gcode Optimiser * Original code: Daniel * Updated Code: Jay C * * Release: Beta ... use at your own risk I have fixed this. Oh, and I gave you full credits on PCB-Gcode, unfortunately that is now lost Not sure the Google Group is much of an improvement.Jay |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Cutting optimizer | kurt5 | General CAM Discussion | 2 | 12-07-2007 08:00 AM |
| New M&G code 3D Viewer, Editor, DNC Dripfeeder and optimizer software! | BinaryCam | Product Announcements & Manufacturer News | 4 | 05-05-2007 09:56 PM |
| Gcode I think | Mr.Chips | DIY-CNC Router Table Machines | 2 | 10-26-2006 07:52 PM |
| I have a problem with my gcode or my conversion to gcode , everything is tiny? | NickLatech | G-Code Programing | 0 | 03-10-2005 01:46 PM |
| gcode to gcode converter | july_favre | General CAM Discussion | 4 | 05-24-2004 07:51 PM |