That is a neat idea. Actually, it is quite useful for not only PCBs, but a whole lot of areas such as engraving. The board traces are cut quite sharp compared to some I have seen.
Thank you for sharing that idea, and welcome to cnczone.
HarryN
Those of you trying to produce fine features by isolation routing may find this interesting:
http://phk.freebsd.dk/CncPcb/
Enjoy,
Poul-Henning
That is a neat idea. Actually, it is quite useful for not only PCBs, but a whole lot of areas such as engraving. The board traces are cut quite sharp compared to some I have seen.
Thank you for sharing that idea, and welcome to cnczone.
HarryN
really interesting hope to see more
Well I think that is quite brilliant. In conception, and, from the picture on your web site, in practice. I gave up on isolation routing because I could not guarantee producing smd pads at 32thou centres. You have there 4thou lands at 20thou centres.
Unfortunately I use different control software, and my brain clouds over when I see C code.
Mach3 uses G31 to probe, and stores the coordinates in #2000 to #2005. I should be able to work out where to substitute those and hopefully the rest of the syntax would parse ok.
I'm going to give it a go, anyway.
Any pointers would be appreciated.
Dave
this is my first posting so sorry if there are any errors...
Reply to DHookings,
I'm in the same boat, C-Code makes my head hurt..
I currently make pc boards on my Mach3 driven mill with much success, but recently have discovered board thickness variations (insert grumpy sound here!).
A floating head spindle could work, but my Wolfgang spindle isn't threaded to accommodate the foot that I have (long story, could send pictures to clarify).
Any development ideas?
Anything I can do to help??
Cheers!
Mark
Has there been any further work on this? This could be a VERY valuable tool. Too valuable to just let the development go dormant. I would love to help, but unfortunately it is beyond my current capability.
al
Very clever!
Best,
BW
Try G-Wizard Machinist's Calculator for free:
http://www.cnccookbook.com/CCGWizard.html
I have made a couple of PCBs using this method, you can see one of them here:
http://ing.dk/uploads/society/content/201.png
The method has a lot of potential, but there are some ugly corners that need to be cleaned up, before it is ready for "prime time" use by people who cannot tweak C-code at will.
Right now, it works well enough for me, that I don't spend a lot of time on it, and since I only make a few PCB's a month, that is unlikely to change fast.
If somebody wants to adopt the project, I'll happily hand it over, along with a long email with random notes and observations...
Poul-Henning
All,
Can anyone give me any clues as to how to compile and get the code running (Ubuntu 8.04), I get an error pretty early in teh compile that I can;t get past...
make plt2g
cc -g -O0 plt2g.c -o plt2g
plt2g.c: In function ‘stitch’:
plt2g.c:1038: error: ‘list’ undeclared (first use in this function)
plt2g.c:1038: error: (Each undeclared identifier is reported only once
plt2g.c:1038: error: for each function it appears in.)
plt2g.c:1038: error: expected ‘;’ before ‘{’ token
make: *** [plt2g] Error 1
peter@peter-mini-CNC:~/Code$
From looking at the code the probelm appears to be either an include thats gone wrong (though there are not other errors shown, or the code is out os synce` with teh header from the web page that I downloaded...
Anyone happen to have a pre-compiled binary for the EMC2 release of Ubuntu 8.04 ?
in plt2g.c change
make sure you downloaded the queue.h from the websiteCode:#include <sys/queue.h> to #include "queue.h"
you may or may not have to deal with srandomdev(), which srandom(time(NULL)) should take care of.
Thank you, that got me further (and yes I did need to put the srandomdev fix in) and now I'm looking at another compile error...
Seems that the hypot function does not exist in my math.h libraries...I presume.
peter@peter-mini-CNC:~/Code$ make plt2g
cc -g -O0 plt2g.c -o plt2g
/tmp/ccn6ddff.o: In function `sort_seg':
/home/peter/Code/plt2g.c:340: undefined reference to `hypot'
/home/peter/Code/plt2g.c:348: undefined reference to `hypot'
/home/peter/Code/plt2g.c:354: undefined reference to `hypot'
/tmp/ccn6ddff.o: In function `draw_vectors':
/home/peter/Code/plt2g.c:539: undefined reference to `hypot'
/home/peter/Code/plt2g.c:570: undefined reference to `hypot'
/tmp/ccn6ddff.o:/home/peter/Code/plt2g.c:630: more undefined references to `hypot' follow
/tmp/ccn6ddff.o: In function `do_file':
/home/peter/Code/plt2g.c:1210: undefined reference to `emit_gcode'
collect2: ld returned 1 exit status
make: *** [plt2g] Error 1
peter@peter-mini-CNC:~/Code$
I created a simple "result=sqrt(x*x+y*y)" substitute function that seems to satisfy that requirement but now a call to "emit_gcode(j) fails since emit_gcode is not defined anywhere., though there is a prototype for it in plt2g.h
You can probably tell my coding is very rusty...