DIY PCBs are the fastest and cheapest way to iteratively prototype circuits, and there’s a lot of great tricks to get the copper layer just the way you want it. But if you’re using through-hole parts, you eventually have to suffer the tedium of drilling a potentially large number of precisely aligned holes. Until now. [Acidbourbon] has built up a very nice semi-automatic PCB drill machine.
Semi-automatic? The CNC machine (with PC-side software) parses the drill file that most PCB design software spits out, and moves an X-Y table under your drill press to just the right spots. The user manually drills the hole and hits enter, and the table scoots off to the next drilling location. All of this is tied together with a simple calibration procedure that figures out where you’ve got the board using two reference drill locations; you initially jog the platform to two reference drill holes, and you’re set.
The CNC conversion of a relatively cheap X-Y table is nicely documented, and the on-board touchscreen and USB interface seem to make driving the machine around painless. Or at least a lot less painful than aligning up and drilling all the holes the old-fashioned way. Everything is open-source, so head on over and check it out. (And while you’re there, don’t miss [Acidbourbon]’s tips and tricks for making PCBs using the toner transfer method.)
Seeing this machine in action, we can’t wait for the fully automatic version.
Wow, this is super cool! I love the idea of it and love the implementation.
My only comment for Acidbourbon would be that the video might perform better if you had intro – action – blurb/calibration etc.
I nearly gave up on the video because the calibration stuff was kind of boring and I didn’t immediately know what you were talking about.
Hook people in with the interesting stuff at the beginning of the video and then they’re more likely to stay around.
Thanks for the advice. I really could use a bit more media literacy.
I will put more thought into the next vid :D
I wouldn’t worry about it. On the contrary, that was my very first question when I fired up the video.
Excellent project, excellently documented. A true rarity to find on HaD any more.
:)
Is there any reason you didn’t attach the steppers in place of the cranks? I have stepper and couplers, what is the diameter of the shaft where the crank is?
I want to buy one of these and add a z axis as well. Do you think that would work? What the movement shaft – ball screw, trapezoidal screw, threaded rod?
Great project – keen to give it a go. The platform is about $130 here. Less in USD.
The cranks were not easy to disassemble, whereas the self locking nuts at the other ends could be accessed conveniently. The movement shaft is a simple threaded rod. (Might be an M4 thread, cannot check it because currently I am far away …) Sure you could add a z axis, why not, this is completely independent of the table.
If only we had the technology to skip ahead in these newfangled digital videos…
I did skip ahead, but I don’t always have a great connection, so it can be difficult to jump around a video.
I was just trying to give some useful feedback because I make a lot of Youtube videos myself and one thing that made a huge difference for me was to ensure I put an interesting hook at the start and then go into the more detailed bits later in the video.
I actually like the calibration technique, it’s very user friendly.
I was telling a younger person about the VCR era and how you could stop a movie and start from where you stopped the next day.
They were perplexed when I told them that you could even take the cartridge out and put in another player and it would continue from where it was stopped and it did this *without* any batteries or electronics.
Its an open loop system. There should be some way to get back the actual movement information to correct for errors (however tiny they may be which might get large cumulatively). Might be easy to implement by using a rotary encoder or something
If the stepper motors are kept within their torque/speed limits, the errors shouldn’t accumulate.
What you’re describing is a servo drive. Whilst these are sometimes used for CNC, steppers are far more common. You only really get missed steps if you’re pushing the limits of you setup. Very annoying when it happens though.
Steppers may be common for hobbyist cnc machines but any real cnc mill or vertical machining center will have feedback. It’s not hard to implement (either with linear slides or rotary encoders) and eliminates any errors from backlash or problems with the motors.
in this case there is a human being right there manually lowering and raising the drill bit, the human being has eye sensors calibrated by a ruler. The human being IS the feedback mechanism that will correct for any errors.
ssshhhhh… if our computer overlords realize that we’ve finally determined the reason for our existence, they will be most displeased.
there is a human being in the loop who has eyes and a ruler and can adjust the mechanics so it is most certainly not an open loop system
That’s very close to a full CNC solution. My Proxxon MF70 mill uses exactly the same table. All it takes is one more stepper motor. I also use mine for drilling home etched PCBs, but it has the advantage that you can route them out too.
http://0xfred.wordpress.com/2012/02/12/proxxon-mf70-cnc-mill-conversion/
Would you recommend the MF70? Two sentence review-time please?
The MF70 is a nice small easily CNC’d mill that will handle cutting aluminium and PCB routing. The downside is that it’s tiny – e.g. 48mm (1.88″) Y axis movement, hackable up to 82mm (3.23″)
Thanks. The small working area is really limiting. You should somehow de-weld/cut the base off and replace it with a bigger precision crosstable.
No affiliation, I picked up a Taig Micro Mill and CNC’d it (including a rotary axis). It would make a great machine for PCB routing and it’s got 9″ of Y travel and 5″ of X travel.
Oxfred, what cutter do you use for PCB routing? Mfg/PN/Vendor?
Correction, 9″ X and 5″ Y.
@dougm:
I can’t speak for 0xfred, but I’ve had good results with the 60° bits from here: http://precisebits.com/products/carbidebits/scoreengrave.asp
It looks like they also have some other special bits that might work well: http://precisebits.com/products/carbidebits/tapered_stub_125.asp
I believe the machines we use at work for routing PCBs use stub end mills, though I don’t know what kind of speeds/feeds they run at. They may be out of the range of reasonable DIY.
dbtayl – Thanks!
I would recommend adding an adjustment feature so the drill bit doesn’t have to travel so far up and down between holes. A few mm clearance would be enough to move the board, and makes it easier to control drilling force.
most drill presses, even the ell-cheapo ones, have mechanical stops that you can use to adjust the endpoints of the drill travel.
A foot peddle, instead of pressing enter and a beep/stacklight to indicate position reached could make a nice enhancement, if you are not going to automate the z axis.
A beep and put the laptop on the left side of the machine.
There’s a PCB I’ve been meaning to make for the past week. It only has about 10 holes but I just can’t be arsed to do it because I hate drilling the holes so much. Something like this sure would make the process less of a pain.
If drilling 10 holes is a pain, this might be a bit too much…
I am using a setup that I think I originally saw here on HAD that only took about 10-20 minutes to build. I am using a webcam mounted under the drill table facing up. With the PCB to be drilled removed, I can put a marker on my screen where the drill bit tip is displayed while in the down position. Then I put the PCB on the table with the copper side down. I line up the board with the marker on the screen, then simply pull the drill lever. Perfectly aligned holes every time. Nowhere near as cool as this setup. But as I said, it only took about 10-20 minutes to set up (most time was spent throwing together a rudimentary clamp to hold the webcam in place).
How about adding a normally open switch to the drill head so that the switch closes when the drill head reaches the top of its travel, and a line in your code to read the switch state before executing the next movement of the bed.
Nice idea!
excellent idea, reminds me of the automatic tool rotation on the old bridgeport turret lathes
I think a tutorial covering linear algebra is in order.
http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/video-lectures/lecture-16-projection-matrices-and-least-squares/
very cool. Since I’ve moved on to CNC milling boards, I get my machine to do the hole construction during the milling process, but I would have loved this when I was using the old etchant method….ate through more than my share of bits.
:D yeah, that feeling when … **crack** … okay, take a deep breath and accept that there goes another 3$ …
fortunately it was “okay, take a deep breath and remember to order replacements” in that I’m doing this at my workplace and while I didn’t like breaking bits, I didn’t feel the financial burden. Between the drill cycle my CAM software uses and the milling bits I use to drill I don’t miss doing it by hand AT ALL!
oh, and if the board in the video is one of your toner transfers….props! Nicely done.
Very nice work. Sometimes, partially automating a process is enough!
people are “afraid” of “self-driving cars” but most cars are already partially “self driving” between the automatic choke and the automatic transmission and the anti-lock brakes and the traction control, you are really just pointing the car in the right direction and letting the car do most of the work.
My car has a little green “Eco” button on the dashboard for fuel economy. I never turn it on because it feels like hitting the gas pedal is more of a suggestion than actually controlling the throttle. It’s subtle, but enough to notice.
All he needs now is to slap a continuous rotation hobby servo and some end stops onto the drill press for fully automatic holes!
if you are working with a hobby grade drill press and cheesy mechanical parts from ebay then you are probably better off with a human being there to supervise the process in case something goes wrong or the errors start to mount up. We are only talking about one or two circuit boards here, realistically if you were making more than that, you’d just contract the whole thing out to professionals
Hey, thx everyone for caring so much about my third axis! I’ll let you know when my arm gets tired!
cheers
this is a fantastic project! kudos to you, and thanks for sending it in!!! this is what HAD is all about.
Best-written HAD post in a long time.
Very cool. I have a CNC and occasionally fab my own boards but I’ve found it’s real easy to drill my boards manually. The natural divots in the middle of pads, created by the etching process, automatically center your bit as you lightly touch the board. Just keep a light touch on the board until the board has slipped under the bit then hold firm for the drill.
I think I’ll have some fun with Acidbourbon’s code, however, to fully automate a drill. The auto-translation of the physical board is particularly cool.
this is really cool! I love the idea of it and love the implementation.
This is really great post.