View Full Version : making double sided PCB's
djh82uk 09-09-2007, 01:51 PM Hiya
How do you guys go about making double sided pcb's on your mill? I can do single sided with no problems, but when i flip the board, i cannot get it to line up right.
I use mach2 and eagle/pcb-gcode.
i do the bottom first, then drill, then mill, flip, line up the spindle with one of the holes, switches off the steppers controllers and line mach2 up to the same hole.
I then switch on the stepper drives, and move the axis to the origin onscreen, zero all axis
then start the job.
It lines up but is far from perfect.
I know milling is not optimal for pcb's, but i would like to perfect it somewhat.
Any ideas?
DJH
Oldmanandhistoy 09-09-2007, 02:04 PM i do the bottom first, then drill, then mill, flip, line up the spindle with one of the holes, switches off the steppers controllers and line mach2 up to the same hole.
I then switch on the stepper drives, and move the axis to the origin onscreen, zero all axis
There could be part of your problem; do you notice the steppers kick when you switch them back on?
Might be worth a try doing the same without switching the stepper off/on.
John
djh82uk 09-09-2007, 03:13 PM I guess i could use the enable line on the drives?
My biggest problem is getting the workpiece flat, i cannot find any spring loaded or floating heads, and im 90% sure that most of the un eveness is dues to the double sided tape as it gets air bubbles that i cannot get rid off.
I need some way of holding the boards, i was thinking what about say 1/2" aluminium with an inverted keyway milled down it that the board fits into, then screw them down tight into the mdf bed?
any thoughts?
DJH
djh82uk 09-09-2007, 03:42 PM I found this in a tutorial, does it make sense to anyone?
"Phase 3 was the one I was dreading the most, flipping the board over and lining it all up ready for the back. This turned out very straight forward. I had made a note of the dimensions of the 3 mounting holes. This can be done in Eagle by clicking the info button then clicking on the holes. Pcb-gcode references the back face dimensions using negative X. So all I had to do was send the mill to the hole offsets with a -ve X, jog down the z to line up with the drilled hole, then clamp the board down."
what that about -ve X?
DJH
Robin Hewitt 09-09-2007, 06:40 PM Have you not found Olimex yet?
I used to make my own pcb's but it really isn't worth the effort any more :D
1 piece 6.3" x 3.9" DS, pth, 2 resist, 1 legend, gold plated £17 plus shipping from Bulgaria. Okay he only cuts to rectangles but you have CNC.
http://www.olimex.com/pcb/index.html
djh82uk 09-09-2007, 07:05 PM Well I may well use Olimex for semi large runs in the future, but I have 32 various projects at different stages of prototyping that I hope to turn into products withing the next year or so, olimex is ruled out purley by cost, lets say an avergae board costs £10 to prototype, thats £320, and thats only if each board only requires one prototype, I don't have that much faith in my use of Eagle, or even in my electronics design. I could well be looking at over £400.
Wheras If I proto them myself, I find the problems, and I have only wasted a board that cost me less than £1. Plus i get to try and learn & perfect something I could not do before.
I have more time than money at the moment.
plus I have never gotten on with chemical etching etc, I found it very hard to get repeatable results.
DJH
samco 09-09-2007, 07:09 PM I flip the board and use 2 different sets of registration pins (and 2 different coordinate systems.) This is so I am using the same 2 edges on the copper clad as the lineup edges.
http://www.electronicsam.com/images/KandT/servostart/top.JPG
sam
martinw 09-09-2007, 07:15 PM Have you not found Olimex yet?
I used to make my own pcb's but it really isn't worth the effort any more :D
1 piece 6.3" x 3.9" DS, pth, 2 resist, 1 legend, gold plated £17 plus shipping from Bulgaria. Okay he only cuts to rectangles but you have CNC.
http://www.olimex.com/pcb/index.html
Dear Robin,
Many thanks for that. I stopped doing prototypes in my ferric chloride tank when the one-off Eurocard price got below £70. £17 plus shipping???? I'm gasping.
Best wishes
Martin
djh82uk 09-09-2007, 07:20 PM I agree that Olimex is very cheap compared to other proto services
Samco
How do you line them up? Thats a very precise looking board
Could you just go through a brief walkthrough of what you do, do you use PCb-Gcode and mach 2/3?
DJH
kreutz 09-09-2007, 07:27 PM I agree that the fastest way to test a design is by making your own PCB prototypes, that way you send only the finished tested design to the fabrication house and can sit for a few days waiting for the boards, knowing that your design is ready to hit the market.
Unfortunately, so far, I have no way to make my own pcbs, so my designs take a couple of weeks breaks between revisions to allow for the time it takes for the revised PCB designs to come back from the fab. That is the main reason I joined the CNCzone, in order to make my own PCB router someday...
Kreutz.
Robin Hewitt 09-09-2007, 08:00 PM Many thanks for that. I stopped doing prototypes in my ferric chloride tank when the one-off Eurocard price got below £70. £17 plus shipping???? I'm gasping.
It used to be $25 until RoHS and he had to start gold plating. He also tacks on VAT if you're in the union :(
Can't afford to make quantity anything in the UK but fortunately my main product was picked up by a company in Kowloon. Less fortunately I got cloned in Taiwan but they didn't do it so well.
Not for quantity, Olimex is really one off bargains. OTOH I do use them for a little interface card. I get 40+ from his standard panel plus an extra £1.65 for exceeding his 500 hole limit :D
You have to jump through all his hoops if you want to shop, this was my last $33 panel...
martinw 09-09-2007, 08:47 PM Dear Robin,
Nice boards.
Thank-you for the information.
Best wishes,
Martin
epineh 09-09-2007, 10:32 PM Thanks for the link to Olimax Robin, I had it bookmarked but lost it when my PC died suddenly and without warning (how rude!).
DJH, I can't add too much for the alignment for double sided boards but for hold down we found a vac clamp works very well. You can make a small table to screw down to your mill, thick perspex works well, surface it and drill the holes with the mill so it runs true and you are in business.
A vacuum cleaner works, as we found out, but you can mod cheap air compressors or fridge compressors to do a better job.
Good Luck.
Russell.
samco 09-10-2007, 09:30 AM This is sort of how I have it setup. I have the board 0,0 set about 1/4 inch in from the edges so that I can mill the boards to dimension without milling the tab pins.
I have to say - this only works good if you have a way to accurately home your machine. You drill the tab pin holes - then from those known locations you can calculate your coordiate offsets for the top, bottom of the board.
sam
djh82uk 09-10-2007, 04:36 PM hmm, im stilla little confused
I see the reasons for the holes i think, but how does the whole G55 and G56 codes work? As a manual input?
How do they know where to go?
I don't have a home switch or anything, do you use one?
do you do anything special in eagle? or just in Mach3 or whatever control software you use?
DJH
acondit 09-10-2007, 10:06 PM hmm, im stilla little confused
I see the reasons for the holes i think, but how does the whole G55 and G56 codes work? As a manual input?
How do they know where to go?
I don't have a home switch or anything, do you use one?
do you do anything special in eagle? or just in Mach3 or whatever control software you use?
DJH
DJH,
The G55 and G56 use different work origins. The work origins are set up with a a G10 and then invoked by the G55 or G56 at the appropriate place in your code. Note the P1 would equal G54, P2 = G55, P3 = G56 and so on.
I don't know how Sam sets them up but I do it by knowing the positions of the dowel holes and then calculating the offsets from the dowel centers. I have home and limit switches so that I can move to precisely the same location, quickly.
Example
G10 L2 P2 X#500 Y#501 Z#502 ( Setup the Location of Coordinate System 2 )
G10 L2 P3 X[#500+#1] Y[#501+#2] Z#502 ( Setup the Location of Coordinate System 3 )
G55 ( Select Coordinate system 2 )
( mill one side)
G56 ( Select Coordinate system 3 )
(mill the other side)
Alan
samco 09-10-2007, 10:17 PM alan has it exactly.
I use emc2 as the machine controller. I also use eagle and pcb-gcode. When I use eagle on ubuntu - I use a converter program created by the emc2 developers. It works about the same.
sam
DJH,
The G55 and G56 use different work origins. The work origins are set up with a a G10 and then invoked by the G55 or G56 at the appropriate place in your code. Note the P1 would equal G54, P2 = G55, P3 = G56 and so on.
I don't know how Sam sets them up but I do it by knowing the positions of the dowel holes and then calculating the offsets from the dowel centers. I have home and limit switches so that I can move to precisely the same location, quickly.
Example
G10 L2 P2 X#500 Y#501 Z#502 ( Setup the Location of Coordinate System 2 )
G10 L2 P3 X[#500+#1] Y[#501+#2] Z#502 ( Setup the Location of Coordinate System 3 )
G55 ( Select Coordinate system 2 )
( mill one side)
G56 ( Select Coordinate system 3 )
(mill the other side)
Alan
djh82uk 09-11-2007, 10:59 AM Thank you both, that makes sense now.
So I guess the holes need to go on the outside of the board limit?
Also, I guess you have to be very precise when turning it over to make sure it is occupying the same space on the bed?
what if you don't mill it out first?
as when you flip it, unless the design is 100% ont he center of the board it would mess up yes?
i only ask as i had problems holding the boards flat, so i made a clamping system that hold the outer perimeter of the board size i use
so once milled it will no longer be flat as it would be too small to be held by the clamps (as the clamps are basically bolts with wide washers)
Sorry to be a pain
DJH
samco 09-11-2007, 12:40 PM the last thing you do - after milling both sides and drilling is cutting the perimeter.
sam
acondit 09-11-2007, 12:42 PM DJH,
I have tried to answer your questions in line.
Thank you both, that makes sense now.
So I guess the holes need to go on the outside of the board limit?
Also, I guess you have to be very precise when turning it over to make sure it is occupying the same space on the bed?
NO, it doesn't have to occupy the same position. The starting position is determined by the right-most dowel, then its new position (after the flip) is determined by the left-most dowel.
what if you don't mill it out first?
as when you flip it, unless the design is 100% on the center of the board it would mess up yes?
NO, Because you are using the same two edges of the board to register in the two different coordinate systems, it doesn't really matter if the circuit design is centered on the board. What does matter is that the offsets from the dowel centers is precisely the same and that the centers of the two dowel (left position and right position are precisely known. The right-most dowel will determine the offset position for the one face (and right edge) and when flipped over the left-most dowel will determine the offset position for the other face (and now left edge). The right edge of the first side milled is on the left when flipping it over. So 0.250 from the right for the first side, must be precisely 0.250 from the left when cutting the second side. Since the bottom edge dowels are aligned along the X-axis, the bottom edge is in the same position whether facing up or down.
i only ask as i had problems holding the boards flat, so i made a clamping system that hold the outer perimeter of the board size i use
so once milled it will no longer be flat as it would be too small to be held by the clamps (as the clamps are basically bolts with wide washers)
I would use a slightly larger board than needed for the circuit design, mill the design in to the board using the extended edges for clamping and then cut the board to size after the circuit is completed (traces and holes milled).
Sorry to be a pain
DJH
Hope this helps some more,
Alan
Andre' B 09-11-2007, 12:46 PM Don't take this personally, but I think going thru all the trouble of building a CNC mill and not fitting some kind of home switches is just dumb.
Even if it is just some scratch marks on the slides you can manually jog until they line up and then jog until a second set of scratches on the motor/screw coupler line up then tell the control it is at home.
Should get you within a thou or two of the same position each time.
At least then you can start out with the machine in a known position and make proper use of the work offsets.
djh82uk 09-11-2007, 04:49 PM once again, thanks Sam and Allen
well the boards now seem flat, takes a bit long to swap/flip boards but at least i am not getting through loads of double sided tape.
Id like to just go over it in my own way, and if you could tell me if i messed up in my understanding.
Now when you say dowels, i assume you mean wooden dowels, so that every time i insert a board, it butts up against all 4 dowels, 2 along the X and 2 on the Y (at both ends of the board)
when designing the board I start the board outline at exactly 0.250 away from 0.0 on both axis, when flipped the I use the alternate dowel
I start on the top of the board, with cutting bit aligned perfectly center of the first y axis dowel, then once flipped, i butt the board up against the dowels again, center on the other y axis dowel (using G55/G56), and start milling the other side of the board.
but I have to make sure that the dowels on the Y axis are exactly 0.250" inches away from the the boards outline corners?
im presuming to do this I need to know the exact length of the outlin in inches, add on 5", measure from the center of the first dowel that distance and place the 2nd dowel (need to do for each board design)
I guess i could also increase the 0.250" if I need to dodge the clamps as long as my design reflects thise in eagle.
So my next problem is getting the machine to the center of the dial to get the co-ordinates from home, do you do this by eye with manual jogging?
Also I presume the benfits of a home switch in this case would be, once i know the location of both dowels relative to the fixed home, i simply use P2/P3 and G55/g56 to make the corresponding dowel Home.
is that all correct?
I don't have a home switch yet as I have not built the machine that long ago and I have been looking for ways to fit one on this model machine.
I can understand now how important it is to this operation (if my understanding is correct)
DJH
acondit 09-11-2007, 07:03 PM DJH,
Now when you say dowels, i assume you mean wooden dowels, so that every time i insert a board, it butts up against all 4 dowels, 2 along the X and 2 on the Y (at both ends of the board)
I use precision ground steel dowels. You could create a removeable jig out of aluminum, with precision bored holes for the dowels. You could mount it on your table and remove it for other cutting. Once you have your home and limit switches you could cut dowel holes in the table and the jig so that it would realign quickly and precisely.
when designing the board I start the board outline at exactly 0.250 away from 0.0 on both axis, when flipped the I use the alternate dowel
When designing the board, you can set the bottom-left corner of the design to be exactly 0,0. The G10 offset takes care of moving the design away from the edge of the pc material.
I start on the top of the board, with cutting bit aligned perfectly center of the first y axis dowel, then once flipped, i butt the board up against the dowels again, center on the other y axis dowel (using G55/G56), and start milling the other side of the board.
but I have to make sure that the dowels on the Y axis are exactly 0.250" inches away from the the boards outline corners?
I'm presuming to do this I need to know the exact length of the outline in inches, add on 5", measure from the center of the first dowel that distance and place the 2nd dowel (need to do for each board design)
The right-most dowel and the left most dowel just need to be positioned at some distance greater than the width of the pc material that you are cutting. (Actually they could be positioned such that your pc material would just exactly fit between them). The important thing is that when you set the g10 coordinates, you specify precisely where your offset point is and the left offset point and the right offset point must be precisely equidistant from the respective dowel centers. So if your right offset point is -0.375" from the right-most dowel center, then your left offset point must be +0.375" from the left-most dowel center. You also specify the distance that the bottom edge offset is from the bottom dowel centers.
I guess i could also increase the 0.250" if I need to dodge the clamps as long as my design reflects this in eagle.
I don't see why Eagle needs to reflect the offset you are using, as long as the pc material that you are cutting is large enough to include both the offset and your circuit design. The point of using the 0.250 offset was to move your machining operations away from the edge of the board and your clamps.
So my next problem is getting the machine to the center of the dial to get the co-ordinates from home, do you do this by eye with manual jogging?
Home switches.
Also I presume the benefits of a home switch in this case would be, once i know the location of both dowels relative to the fixed home, i simply use P2/P3 and G55/g56 to make the corresponding dowel Home.
Actually not the center of the dowel but the offset from the center of the dowel. I may not have been clear earlier. So, yes.
is that all correct?
I don't have a home switch yet as I have not built the machine that long ago and I have been looking for ways to fit one on this model machine.
I can understand now how important it is to this operation (if my understanding is correct)
Good luck,
Alan
DJH
djh82uk 09-11-2007, 07:18 PM Thank you
I can understand how the home switch helps you to move back the the same point each time, but how does it help you get the spindle 0.25" from the dowel initially? when i first set it up?
Also you said that I just have to make sure that the dowels are equidistant from where i want to start cutting, but surely they both need to be 0.25" from the start of the border of the design? Otherwise they won't line up? Ok scrap that, I just figured out how thick I am, obviously when i flip the board it will automatically be in the correct place as the board has been flipped, just so long as the dowels are at the end of the board on both side.
Ok so i know how that works now :)
My only problem is figuring out how to get the spindle exactly 0.25" from the dowel on both axis.
Im sorry this must be so painful for you, as you can tell this is not my strong point, but iam trying to learn, albeit slowly.
DJH
djh82uk 09-11-2007, 08:07 PM Hmm, are Home and Limit switches essentailly the same thing?
I have found a few peoples exampls of them on the taig mill, and they use upto 5 swtiches, 1 for Z and 2 for X and 2 for Y
DJH
acondit 09-11-2007, 08:14 PM DJH,
Thank you
I can understand how the home switch helps you to move back the the same point each time, but how does it help you get the spindle 0.25" from the dowel initially? when i first set it up?
By drilling the dowel holes at specified locations in relation to home (i.e., use the cnc to drill the holes for the dowels), you can move under cnc control to the offsets that you want. Lets say that you drill the right most dowel hole at x10.0 y1.0 and you want an offset of 0.25 from the edge of the dowel and you used a 0.250 dowel. You would specify G10 L2 P2 X9.625 Y1.375 Z???? (X is 10" minus 0.250 offset from the edge of the dowel and minus the radius of the dowel 0.125" or 9.625"). Then you drilled the left-most dowel hole at x4.0 y1.0. You would specify G10 L2 P3 X4.375 Y1.375 Z???? (X is 4" plus 0.250 offset from the edge of the dowel and plus the radius of the dowel 0.125" or 4.375").
Also you said that I just have to make sure that the dowels are equidistant from where i want to start cutting, but surely they both need to be 0.25" from the start of the border of the design? Otherwise they won't line up? Ok scrap that, I just figured out how thick I am, obviously when i flip the board it will automatically be in the correct place as the board has been flipped, just so long as the dowels are at the end of the board on both side.
Ok so i know how that works now :)
OK, great.
My only problem is figuring out how to get the spindle exactly 0.25" from the dowel on both axis.
See above.
Im sorry this must be so painful for you, as you can tell this is not my strong point, but I am trying to learn, albeit slowly.
Writing directions is not my strong point either. I just hope this helps.
DJH
Best wishes,
Alan
djh82uk 09-11-2007, 08:23 PM Ahh right ok, so i get the locations of the dowels while im actually drilling them, I then write them down somewhere
I then enter the G55 commands etc into the top of the Gcode, and it goes to the offset and pretends that is a temporary 0,0 home while doing that side of the board. That correct?
Also i have the home switches figured out now, found somewhere that sells them with adapter plates for the taig, just hope he will ship to the Uk.
Thanks
DJH :)
acondit 09-11-2007, 09:09 PM DJH,
It sounds like you got it.
Alan
djh82uk 09-13-2007, 11:36 AM Thank you for all your help :)
DJH
djh82uk 09-27-2007, 09:13 PM Hiya
I have my home switches now
What would be the easiest way to do the dowel holes?
The boards I use are 100mm x 160mm, I guess I just draw it in cad?
And grab the co-ordiantes of the dowels from the Gcode to setup the G55/G56 offsets?
DJH
djh82uk 09-28-2007, 06:01 AM Ok. beings as the only place I could mount the Home switches was at the limit of the machines travel, i am still struggling to drill the holes in the right place. I can do it using an offset, but then i do not know the co-ordinates of the dowels then, or perhaps I could use the machine coords in mach2?
DJH
acondit 09-28-2007, 12:08 PM Hiya
I have my home switches now
What would be the easiest way to do the dowel holes?
The boards I use are 100mm x 160mm, I guess I just draw it in cad?
And grab the co-ordiantes of the dowels from the Gcode to setup the G55/G56 offsets?
DJH
DJH,
You could draw a dxf of the work surface of your machine and the location of the dowels. Then you create gcode to drill the dowel holes at those locations. Use those coordinates (adjusted by the radius of your dowels) for your offsets. This is because you want your offsets to be the edge of the dowels not the center of the dowels.
Alan
djh82uk 09-28-2007, 02:38 PM Hiya
Thanks I think i got it now, Only i flipped the board the wrong way :(
where do you get your cutting bits from? I have been using the 60 degree bits from max uk, only they are either snapping right at the end, or going blunt very quickly :(
I may go back to V cutters.
Plus the spindle belt on my Taig has frayed now :(
DJH
acondit 09-29-2007, 11:50 AM DJH,
Here is a link to cutters that someone else provided.
http://www.thinktink.com
Also take a look at this thread. http://www.cnczone.com/forums/showthread.php?t=2078
Alan
|
|