CNC Circuit Mill: Difference between revisions
Line 48: | Line 48: | ||
Q: What was your materials breakdown for the control electronics, motors, structure, mechanical drive, and router? What is the expected router lifetime? | Q: What was your materials breakdown for the control electronics, motors, structure, mechanical drive, and router? What is the expected router lifetime? | ||
A: I've attached the Eagle files for the control electronics. You should be able to generate a list form that. The motors are the cheapest NEMA17 motors I could get. I don't have a good documentation for the mechanical parts (yet). If you want, I can make one. The mechanics consists of the threaded rods, the steel profiles, the MDF groundplane, some aluminum profiles, teflon bearings and the skater ball bearings. | A: I've attached the Eagle files for the control electronics. You should be able to generate a list form that. The motors are the cheapest NEMA17 motors I could get. I don't have a good documentation for the mechanical parts (yet). If you want, I can make one. The mechanics consists of the threaded rods, the steel profiles, the MDF groundplane, some aluminum profiles, teflon bearings and the skater ball bearings. (available upon request) | ||
The Dremel I used was inherited from my father. It's lifetime is long over, I guess. At least it behaves this way.... Seriously speaking: The router is the critical part. A Dremel works, but won't last very long. Maybe a brushless motor for a model racing car can be used, but I have not checked that out. | The Dremel I used was inherited from my father. It's lifetime is long over, I guess. At least it behaves this way.... Seriously speaking: The router is the critical part. A Dremel works, but won't last very long. Maybe a brushless motor for a model racing car can be used, but I have not checked that out. | ||
=Controls= | |||
Q: Tell me more about the software that you are using for generating images and processing them for backlash. Are you using LinuxCNC? | |||
A: No, I'm software developer. I write my own software :-) Well, not entirely: The PCB software I use is EAGLE. And there's a freeware plugin "pcb-gcode" which exports the PCB as G-Code milling instructions. It's not efficient (it should be possible to write something which mills 3 times faster), but at least it works. | |||
Q: I don't understand this point. Don't you have to slow down the router anyway, so you don't break bits? | |||
A: The G-Code runs through my software which converts it to a stream of parameters for quadratic motion equations (speed + acceleration in 3 axes). This conversion includes (among other things) the backlash compensation. The stream of parameters is sent over USB and interpreted by the motor controller. The motor controller computes the desired motor positions as a function of time and generates pulse widths for the L298 drivers accordingly. This includes microstepping (dividing one motor step of 1.8 degrees into sub-steps). | |||
Q: Ok. How effective is the backlash compensation? Can you get it basically perfect by software compensation? Is this a practical route that can be applied for high precision, such as, .02 mm (~1/1000 inch)? Is the limit the irregularities in the threaded rod, or step size of motors? I am wondering how effective it would be to produce a dirt-cheap cnc system by using software compensation with threaded rod. What are the limits to that? | |||
A: Yes and no. I can see a difference in backlash compensation values of 0.12 and 0.15 mm. However, when milling hard material (~ 50 N force), the deviation due to the machine's elasticity is almost 1 mm. And there's also a deviation due to wobbling of the threaded rods (this could be improved, though). | |||
Q: Is the limit the irregularities in the threaded rod, or step size of motors? | |||
A: It's the wobbling of the rods (they are not exactly straight and the nuts don't fasten them perpendicularly on the bearings). | |||
Q: I am wondering how effective it would be to produce a dirt-cheap cnc system by using software compensation with threaded rod. What are the limits to that? | |||
A: The precision depends on what you mean by that term. If you want to run to a point, you can be quite precise (I guess several micrometers). However, if you want to DO something there (produce some force), you need a more stable design. I have some ideas for improving the Z axis stability, but for a really stable machine you need big profiles for all axes, not just 2 cm x 2 cm steel. | |||
[[Category:Circuit Board Fabrication]] | [[Category:Circuit Board Fabrication]] |
Revision as of 17:18, 6 August 2010
From Christian Starkjohann:
Images
Description
The machine can move at ca. 15 to 20 mm/s, but for milling PCBs, I use only ca. 5 mm/s. You can compute how long it takes to mill a PCB from that. If you like, I can mail you the control software, this software has an emulation mode where you can find out how long a particular sequence of Gcode commands takes.
In practice: Things like the UV dosimeter take half an hour to mill. The electronics for the machine itself takes almost 2 hours per layer and board (two boards, each with two layers). But there's plenty of room for improvements. The PCB to Gcode algorithm is far from perfect.
You can replicate it, of course. I have eagle schematics and PCBs (unfortunately dual layer) for the electronics. There are some parametric drawings for mechanical components, but this part is not yet complete. If you start building such a thing, I can continue the drawings...
Note, though, that the Z axis needs improvement. It's a bit too elastic now, if there is a force on the mill (not when milling PCBs, but when cutting boards, engraving etc), it may bend by half a millimeter. I have a sketch for a better version, but that has not been built and tested.
Regarding the mills: I have never seen one wear off, all have been damaged before that happens. My spindle motor (a Dremel) is not well balanced and if it goes off-center, the mill breaks. Also if I forget to configure the backlash compensation, the initial acceleration may be so high that the mill breaks when it starts moving. All this happens easily with epoxy boards. The mills should last "forever" on hard paper boards.
Discussion
The total time of milling + soldering vs. building on breadboard/stripboard is probably in the same order of magnitude. The big advantage of milling is that you can do something else while the mill works and that you can be reasonably sure that the circuit matches the schematics. You don't have to debug wiring errors.
The machine is good for prototyping, but not for production, not even for small scale production. The competing technology for production is a photo/etching process. The advantage of the photo/etching process is that it takes the same time, regardless of complexity of the board(s). For production, you can combine several boards to increase complexity so that the photo/etching process wins. For prototyping, you always want to build only one board. And a low complexity board (such as the UV dosimeter) is ready in 40 minutes.
You can use the same mechanics for the RepRap and the PCB milling, and time is not an issue for those who have little money. If you can break down the designs to single sided boards (even with a lot of wire bridges), you cut the milling time in half.
Stripboard is not an option. Somebody who is not experienced with electronics won't be able to do the debugging. And there IS debugging. Count the connections, then multiply by the human error rate (probably around 1%) and you have the number of expected errors.
On throughholes: Is this machine capable of doing throughholes with CNC, or do you do that manually? Do you think it makes sense to do it CNC, or does manual drilling typically suffice?
It's definitely capable of that, of course! And it DOES make sense. Even for etched boards, I would prefer to do the drilling on the CNC. It may be an option to drill all holes in 0.8 mm with the machine and then drill only a couple of them to the desired diameter by hand. This saves the tool change procedure which must be done manually.
More Discussion on RepRap
To convert RepRap to milling - Note that milling requires a force, contrary to plastic extrusion. Even a 1 mm diameter tool may produce 50 N force when milling. PCB milling produces almost no force, though, since the milling depth is only ~ 0.2 mm and the effective diameter is in the same order of magnitude.
If you go slowly on RepRap, do you think this would still allow for any meanigful PCB milling, or is that impractical?
I think it should work, even with "normal speed". But only experiments can tell you. I have no idea how much the actual force is when some micrometers of copper are milled.
Construction Notes
Q: Did you use simple threaded rod and tensioned nuts, not ball screws, on all the axes? What kind of lifetime are you expecting on your rod/nut system, and do you oil that?
A: I've used simple threaded rods (the more expensive ones, somewhat harder steel) and ordinary long nuts (not spring loaded). We have a reversal backlash between 0.1 and 0.2 mm and the software compensates for that. Don't know what lifetime this will give, but the components are cheap and easy to change, so I don't really care. I have to use oil, though, which is a bit of a mess. I used normal bicycle oil and that works great. Did not try teflon spray, but I tried silicon oil which failed miserably.
Q: What was your materials breakdown for the control electronics, motors, structure, mechanical drive, and router? What is the expected router lifetime?
A: I've attached the Eagle files for the control electronics. You should be able to generate a list form that. The motors are the cheapest NEMA17 motors I could get. I don't have a good documentation for the mechanical parts (yet). If you want, I can make one. The mechanics consists of the threaded rods, the steel profiles, the MDF groundplane, some aluminum profiles, teflon bearings and the skater ball bearings. (available upon request)
The Dremel I used was inherited from my father. It's lifetime is long over, I guess. At least it behaves this way.... Seriously speaking: The router is the critical part. A Dremel works, but won't last very long. Maybe a brushless motor for a model racing car can be used, but I have not checked that out.
Controls
Q: Tell me more about the software that you are using for generating images and processing them for backlash. Are you using LinuxCNC?
A: No, I'm software developer. I write my own software :-) Well, not entirely: The PCB software I use is EAGLE. And there's a freeware plugin "pcb-gcode" which exports the PCB as G-Code milling instructions. It's not efficient (it should be possible to write something which mills 3 times faster), but at least it works.
Q: I don't understand this point. Don't you have to slow down the router anyway, so you don't break bits?
A: The G-Code runs through my software which converts it to a stream of parameters for quadratic motion equations (speed + acceleration in 3 axes). This conversion includes (among other things) the backlash compensation. The stream of parameters is sent over USB and interpreted by the motor controller. The motor controller computes the desired motor positions as a function of time and generates pulse widths for the L298 drivers accordingly. This includes microstepping (dividing one motor step of 1.8 degrees into sub-steps).
Q: Ok. How effective is the backlash compensation? Can you get it basically perfect by software compensation? Is this a practical route that can be applied for high precision, such as, .02 mm (~1/1000 inch)? Is the limit the irregularities in the threaded rod, or step size of motors? I am wondering how effective it would be to produce a dirt-cheap cnc system by using software compensation with threaded rod. What are the limits to that?
A: Yes and no. I can see a difference in backlash compensation values of 0.12 and 0.15 mm. However, when milling hard material (~ 50 N force), the deviation due to the machine's elasticity is almost 1 mm. And there's also a deviation due to wobbling of the threaded rods (this could be improved, though).
Q: Is the limit the irregularities in the threaded rod, or step size of motors?
A: It's the wobbling of the rods (they are not exactly straight and the nuts don't fasten them perpendicularly on the bearings).
Q: I am wondering how effective it would be to produce a dirt-cheap cnc system by using software compensation with threaded rod. What are the limits to that?
A: The precision depends on what you mean by that term. If you want to run to a point, you can be quite precise (I guess several micrometers). However, if you want to DO something there (produce some force), you need a more stable design. I have some ideas for improving the Z axis stability, but for a really stable machine you need big profiles for all axes, not just 2 cm x 2 cm steel.