Yesterday, I learned that ZBrush (my 3D design program) now has an extension that lets it directly export files I can use with my Computer Aided Manufacturing (CAM) programs. I spent most of my work time today testing the output of various designs to see how they looked.
ZBrush has this 'built-in' since version 4R6 came out, it was available as a plug-in before, but since it calls itself a 3D printing plug-in, I ignored it, assuming it was software to sent object data to one or more of the commercial 3D printing services, like Shapeways. Turns out it's an exporter for standard 3D object file formats like .stl.
This is a huge improvement for my workflow of going from design to a finished part prototype in the real world. Before I had to use a very complex conversion program. Its control panel makes the flight deck of a 747 look simple. And if I didn't get the settings just right, I could get some really nasty effects in the final machining. Using the same settlings over again doesn't work, I had to adjust things based on the size of the object, the scale of features on it, the size of the material it would be cut out of, the relative size of the tool, etc., etc.
Now that difficult & frightening step is gone. I do a couple of passes to simplify the 3D object design as much as possible without losing detail (which I was doing anyway, it speeds up everything later), set a couple of simple settings in the exporter, like the real-world size the final object will be, then export.
The resulting files load just fine into the two different programs I use that create the list of instructions for my CNC machine to cut the 3D object out of a solid block of some material (usually a polyurethane plastic). I did a dry run to set up two test files tonight--doing everything short of actually making the parts. Tomorrow I plan to make an actual part from a new file as a final test. Probably something fun.
For those interested in trying this at home, I use both MeshCAM and Vectric's Cut3D for CAM. Cut3D is my usual preference, though I'm using an older version of MeshCAM (4). I prefer Cut3D's interface for setting tabs, and its included machining preview.
Both produce excellent GCode for my CNC (a MicroCarve A4 driven by EMC2 and a Gecko G540 controller.)
For doing image depth maps, I use EMC2's built in facility, though if you want to bypass the copious experimentation & two pages of notes I use to get it looking good, you might want to look into one of the dedicated commercial programs for this.
Showing posts with label gecko 540. Show all posts
Showing posts with label gecko 540. Show all posts
Tuesday, November 19, 2013
Monday, November 28, 2011
CNC Enclosure: A Home for My MicroCarve A4
I originally set up my microCarve A4 on my workbench as I got the various bits and pieces put together and checked out. This was a convenient place to do the work at that time, but once everything was working, there were two significant problems:
So it was time to take time off from making cool CNC projects and time to make an enclosure. I spent quite a bit of time thinking through what I wanted. If I put the computer and CNC side by side, it'd take up too much room in the shop. I tried a test arrangement of putting the computer below the CNC, the display above the CNC, and the keyboard and mouse in a drawer just under the tabletop that the CNC sat on. This did my neck no favors at all.
Finally I settled on putting the CNC itself a bit higher, with the computer completely underneath it. This worked out, barely. I had to replace my old CRT monitor with a lower-profile LCD display to get the heights I wanted. It was worth it.

The desktop is at 26 inches above the floor, the bottom of the CNC is at 48 inches above floor level. It's low enough to handle the tools, parts, and everything else inside as well as keep an eye on the machining as it goes, though an optimum height would probably be a bit lower. A different arrangement of the computer stuff down below could probably allow someone else to make theirs about six inches shorter, if they don't mind looking down at their computer monitor rather than propping it up on the computer cabinet for a comfortable height, as I did.
The desktop holds the computer, monitor, power control center, CNC power supply and Gecko G540 control unit, wireless network hub, keyboard, mouse, and an occasional can of soda (with care).

The CNC box has removable panels on the back and sides. The back panel is in three sections, so that a middle section can be taken out for working with stock that's too long for the enclosure. This leaves a panel at the bottom to catch chips, and a top panel to trap some of the high-flying chips. If necessary, one or both of the front doors can be left open with longer pieces, a bottom panel will still cover the lower three inches of the front to trap some of the chips from spilling out. I thought about making sectioned doors, but this project was already getting too complicated.

The top box can lift off of the base with the computer desk. It has small feet that rest inside the uprights on the base and lock it in, as well as a pair of angle brackets that screw into it. Basically the power and control cables that run into the box through the two PVC feed-throughs are are disconnected, the box is lifted off the top of the base (a two-person operation when the CNC is in there!), then set on its feet where ever it suits you.
The base has casters on the bottom, so I can roll it around the shop or out onto the concrete apron outside if I feel like doing my CNC work under the sky. ;)
I plan on adding a vacuum motor and dust trap below the desktop when the urge to take things a step further strikes. I'll cut another feed-through into the box for the vacuum as well as an air intake for the enclosure. Until then I'll just be reaching in with the hose of a nearby canister vacuum to clean things out.
- It was in the open air. Sawdust and plastic chips were flying everywhere.
- I wanted my workbench back for other projects!
So it was time to take time off from making cool CNC projects and time to make an enclosure. I spent quite a bit of time thinking through what I wanted. If I put the computer and CNC side by side, it'd take up too much room in the shop. I tried a test arrangement of putting the computer below the CNC, the display above the CNC, and the keyboard and mouse in a drawer just under the tabletop that the CNC sat on. This did my neck no favors at all.
Finally I settled on putting the CNC itself a bit higher, with the computer completely underneath it. This worked out, barely. I had to replace my old CRT monitor with a lower-profile LCD display to get the heights I wanted. It was worth it.

The desktop is at 26 inches above the floor, the bottom of the CNC is at 48 inches above floor level. It's low enough to handle the tools, parts, and everything else inside as well as keep an eye on the machining as it goes, though an optimum height would probably be a bit lower. A different arrangement of the computer stuff down below could probably allow someone else to make theirs about six inches shorter, if they don't mind looking down at their computer monitor rather than propping it up on the computer cabinet for a comfortable height, as I did.
The desktop holds the computer, monitor, power control center, CNC power supply and Gecko G540 control unit, wireless network hub, keyboard, mouse, and an occasional can of soda (with care).

The CNC box has removable panels on the back and sides. The back panel is in three sections, so that a middle section can be taken out for working with stock that's too long for the enclosure. This leaves a panel at the bottom to catch chips, and a top panel to trap some of the high-flying chips. If necessary, one or both of the front doors can be left open with longer pieces, a bottom panel will still cover the lower three inches of the front to trap some of the chips from spilling out. I thought about making sectioned doors, but this project was already getting too complicated.

The top box can lift off of the base with the computer desk. It has small feet that rest inside the uprights on the base and lock it in, as well as a pair of angle brackets that screw into it. Basically the power and control cables that run into the box through the two PVC feed-throughs are are disconnected, the box is lifted off the top of the base (a two-person operation when the CNC is in there!), then set on its feet where ever it suits you.
The base has casters on the bottom, so I can roll it around the shop or out onto the concrete apron outside if I feel like doing my CNC work under the sky. ;)
I plan on adding a vacuum motor and dust trap below the desktop when the urge to take things a step further strikes. I'll cut another feed-through into the box for the vacuum as well as an air intake for the enclosure. Until then I'll just be reaching in with the hose of a nearby canister vacuum to clean things out.
Labels:
cnc,
controls,
electronics,
engineering,
gadgets,
gecko 540
Monday, October 3, 2011
CNC Rooster: Third Time's a Charm
In a prior post, I'd made a mistake handling the material when cutting a full 3D object using gcode files generated by Vectric's Cut3D CAM software. After that I tried again. That time things were going swimmingly until I got some gunk on a leadscrew that hung up the X axis and ruined the cut.
Well, I tried again today. After doing some preventative maintenance on my microCarve A4 CNC, testing it thoroughly and making sure of myself as well, I managed to turn out a small urethane rooster:


The part turned out very well. The whole time the second side was cutting, I was fretting over how good my alignment would be. It turned out to be just fine.
The beak looks worse than it actually is because of a loose bit of plastic that'll come off when I scrape it with a thumbnail. It isn't perfect, however, because of the overcut depth I specified for the first side's cut. It's too deep for the thickness of the beak, and though the overall alignment of front and back side is excellent, the beak is at an angle, so one side is lower than the other. If I hadn't specified such a deep overcut, it would not have cut through this way.
Still, it'll clean up nicely.
Further Observations
The facets you see, particularly in areas like the chicken's breast, are part of the original 3D model. They aren't machining flaws. On the second side I cut the machining marks that are there are a little deeper than they should be because I trimmed my tab sizes down way too much, so they flexed a bit during machining.
Still, the overall quality of the part is such that I could clean it up to use as a casting master easily, if I were going to duplicate this part.
The Materials
The prior two tries were done using NC Proofboard, a urethane foam board, with densities of 60 and 48 lbs. per cubic foot. This last one was done in Butter-Board, which has a density of about 64 lbs per cubic foot. All are machinable plastics from Golden West Manufacturing.
60# NC Proofboard
The 60# proofboard was a very nice material. The cell size of the foam is very, very small and could easily be coated to smooth it enough to use a part made from it as a casting master. In fact, the mold release might be sufficient. It's very tough, and machines like a dream.
48# NC Proofboard
The 48# proofboard machines very easily as well, but tends to be a bit more brittle in thin sections than the 60# board. The cell size is about half again as large, but still small enough to be easy to coat, it'd just take more to do it--some sort of filler rather than a primer coat or a thick mold release agent.
Butter-Board
The Butter-Board machines to a fine, smooth surface. It takes a little more care in feed rates than the proofboards, which have a lot of resiliency thanks to being foamed products. But the completed part has an impeccable surface so far as the machining makes it so. It's not as tough in thin sections as the 60# proofboard, but it's stronger than the 48# board in thin sections in general, though it tends a bit toward the brittle.
I like all three materials quite a bit, and plan on getting some more of the Butter-board and 60# NC Proofboard soon for both business and hobby use.
Tooling
The rough cuts were done with a 1/8" 2 flute square end mill, the finishing cuts were done with a 1/16" 2 flute ball nose end mill. Both bits were purchased from IMService, at nice prices and the bits are very good. I was concerned that I may want to use single-flute bits, but these bits performed admirably with these materials. At some point I'll try a future cut with single-flute bits for comparison's sake, but these bits cut well, showed no propensity for clogging. They stayed sharp and cool through the cuts.
CAM Software
As to Cut3D, I'm quite happy with it so far, and I'm planning two more jobs for it in the immediate future. I'm also going to be giving MeshCAM a spin for a high relief piece of work in the near future, and I'll be reporting on that soon.
Well, I tried again today. After doing some preventative maintenance on my microCarve A4 CNC, testing it thoroughly and making sure of myself as well, I managed to turn out a small urethane rooster:
Rooster, Side A
Rooster, Side B
The part turned out very well. The whole time the second side was cutting, I was fretting over how good my alignment would be. It turned out to be just fine.
The beak looks worse than it actually is because of a loose bit of plastic that'll come off when I scrape it with a thumbnail. It isn't perfect, however, because of the overcut depth I specified for the first side's cut. It's too deep for the thickness of the beak, and though the overall alignment of front and back side is excellent, the beak is at an angle, so one side is lower than the other. If I hadn't specified such a deep overcut, it would not have cut through this way.
Still, it'll clean up nicely.
Further Observations
The facets you see, particularly in areas like the chicken's breast, are part of the original 3D model. They aren't machining flaws. On the second side I cut the machining marks that are there are a little deeper than they should be because I trimmed my tab sizes down way too much, so they flexed a bit during machining.
Still, the overall quality of the part is such that I could clean it up to use as a casting master easily, if I were going to duplicate this part.
The Materials
The prior two tries were done using NC Proofboard, a urethane foam board, with densities of 60 and 48 lbs. per cubic foot. This last one was done in Butter-Board, which has a density of about 64 lbs per cubic foot. All are machinable plastics from Golden West Manufacturing.
60# NC Proofboard
The 60# proofboard was a very nice material. The cell size of the foam is very, very small and could easily be coated to smooth it enough to use a part made from it as a casting master. In fact, the mold release might be sufficient. It's very tough, and machines like a dream.
48# NC Proofboard
The 48# proofboard machines very easily as well, but tends to be a bit more brittle in thin sections than the 60# board. The cell size is about half again as large, but still small enough to be easy to coat, it'd just take more to do it--some sort of filler rather than a primer coat or a thick mold release agent.
Butter-Board
The Butter-Board machines to a fine, smooth surface. It takes a little more care in feed rates than the proofboards, which have a lot of resiliency thanks to being foamed products. But the completed part has an impeccable surface so far as the machining makes it so. It's not as tough in thin sections as the 60# proofboard, but it's stronger than the 48# board in thin sections in general, though it tends a bit toward the brittle.
I like all three materials quite a bit, and plan on getting some more of the Butter-board and 60# NC Proofboard soon for both business and hobby use.
Tooling
The rough cuts were done with a 1/8" 2 flute square end mill, the finishing cuts were done with a 1/16" 2 flute ball nose end mill. Both bits were purchased from IMService, at nice prices and the bits are very good. I was concerned that I may want to use single-flute bits, but these bits performed admirably with these materials. At some point I'll try a future cut with single-flute bits for comparison's sake, but these bits cut well, showed no propensity for clogging. They stayed sharp and cool through the cuts.
CAM Software
As to Cut3D, I'm quite happy with it so far, and I'm planning two more jobs for it in the immediate future. I'm also going to be giving MeshCAM a spin for a high relief piece of work in the near future, and I'll be reporting on that soon.
Labels:
CAM,
cnc,
emc2,
gecko 540,
machinable plastics,
microCarve,
software
Tuesday, September 20, 2011
CNC with Vectric's Cut3D: It's Great, I'm So-So
After running through a bunch of free CAM software that didn't do what I wanted, I finally ended up where I pretty well knew I was going to end up. I downloaded a trial version of Vectric's Cut3D software.
I also happened to have some samples of machinable urethane plastics to try out, and the new software was just the thing to do that with.
I started with one of Vectric's sample files, the rooster statue. The statue is initially scaled to stand twelve inches tall. My material was about 3.5 by 2.4 by 0.9 inches in size. So I used Cut3D to scale the object, no problemo.
I positioned it in the block, added some tabs, again no problem.

Since this was my first time using Cut3D, my only concern as I went through the simple linear process of setting things up was what I would end up with in the way of files at the end. Would I get a file with some sort of pauses in it, during which I would do tool changes and material flips (to machine top and bottom), or would I have to edit these in, or what?
As it turned out, Cut3D produced four gcode files. Top rough cut, top finish cut, bottom rough cut, and bottom finish cut. For machines with tool changers, it can consolidate the files that have tool changes between them.
So this makes it easy. Load up the material, align the machine, run the rough cut for the side you start with, and wait for it to complete. Then change tools, recheck alignment, run the finish cut for that side. When that's over, flip the material, put in the correct bit for roughing, align, and run the other side's rough cut file. When that's complete, change bits and check alignment one last time then do the finish cut on the second side. Voila, you're done!
When machining a part on more than two sides, I presume that there are more files.
Well, Cut3D worked great. I didn't have the recommended post-processor file for my setup, but the Sherline inches was close enough so I tried that. I got the recommended post-processor for my setup from Vectric's support in my email today. The Sherline gcode worked fine, however.
The only thing that didn't work was me.
Here's my CNC setup. Here's what I got:


Everything started out fine, but I let myself get distracted by some visitors when I went to do the back side cut. I got the alignment right, but had it upside-down from the orientation I should have had it.
Moral of the story: put unambiguous markings on your workpiece to avoid mistakes during machining, and if a distraction gets introduced, set the work aside until it's gone. ;)
The material I'm machining out of is one of the denser varieties of NC Proofboard from Golden West Manufacturing. They're a short way away from me, and this was the first sample piece of their materials I've machined. And it machines like a dream! I may never machine wood again. Well, wood is awfully pretty so I'm sure I will, but not unless I really have to.
Their materials deserve their own article, so I'll be writing more about them once I've tried out a few more of my samples.
Upshot, Cut3D is a great program, and the price is great. I'm looking forward to doing a bunch of work with it, and possible upgrading to VCarve Pro some time later when I feel the need for more flexibility.
I also happened to have some samples of machinable urethane plastics to try out, and the new software was just the thing to do that with.
I started with one of Vectric's sample files, the rooster statue. The statue is initially scaled to stand twelve inches tall. My material was about 3.5 by 2.4 by 0.9 inches in size. So I used Cut3D to scale the object, no problemo.
I positioned it in the block, added some tabs, again no problem.
Since this was my first time using Cut3D, my only concern as I went through the simple linear process of setting things up was what I would end up with in the way of files at the end. Would I get a file with some sort of pauses in it, during which I would do tool changes and material flips (to machine top and bottom), or would I have to edit these in, or what?
As it turned out, Cut3D produced four gcode files. Top rough cut, top finish cut, bottom rough cut, and bottom finish cut. For machines with tool changers, it can consolidate the files that have tool changes between them.
So this makes it easy. Load up the material, align the machine, run the rough cut for the side you start with, and wait for it to complete. Then change tools, recheck alignment, run the finish cut for that side. When that's over, flip the material, put in the correct bit for roughing, align, and run the other side's rough cut file. When that's complete, change bits and check alignment one last time then do the finish cut on the second side. Voila, you're done!
When machining a part on more than two sides, I presume that there are more files.
Well, Cut3D worked great. I didn't have the recommended post-processor file for my setup, but the Sherline inches was close enough so I tried that. I got the recommended post-processor for my setup from Vectric's support in my email today. The Sherline gcode worked fine, however.
The only thing that didn't work was me.
Here's my CNC setup. Here's what I got:
Front Side, so far so good...
Back side. Whoops! It's Upside-Down!
Everything started out fine, but I let myself get distracted by some visitors when I went to do the back side cut. I got the alignment right, but had it upside-down from the orientation I should have had it.
Moral of the story: put unambiguous markings on your workpiece to avoid mistakes during machining, and if a distraction gets introduced, set the work aside until it's gone. ;)
The material I'm machining out of is one of the denser varieties of NC Proofboard from Golden West Manufacturing. They're a short way away from me, and this was the first sample piece of their materials I've machined. And it machines like a dream! I may never machine wood again. Well, wood is awfully pretty so I'm sure I will, but not unless I really have to.
Their materials deserve their own article, so I'll be writing more about them once I've tried out a few more of my samples.
Upshot, Cut3D is a great program, and the price is great. I'm looking forward to doing a bunch of work with it, and possible upgrading to VCarve Pro some time later when I feel the need for more flexibility.
Monday, June 20, 2011
microCarve CNC Project: Collectable Spoon Rack
Here's the initial results of my spoon rack projects as mentioned in prior posts:
My Spoon Rack Project Idea
Decorative Motifs for the Spoon Rack
Here's the first one:



I have parts for 3 cut out. There's a bit of manual finish work yet to do for the remaining ones. The weather has turned hot and dry, which is good for the staining work.
My Spoon Rack Project Idea
Decorative Motifs for the Spoon Rack
Here's the first one:
I have parts for 3 cut out. There's a bit of manual finish work yet to do for the remaining ones. The weather has turned hot and dry, which is good for the staining work.
Labels:
cnc,
emc2,
gecko 540,
microCarve,
woodworking
Tuesday, May 24, 2011
My GCode Gets a Bit Tricker: Working with the microCarve A4 CNC
We collect souvenir spoons when we travel. Unfortunately, we overflowed the little wooden rack that holds our spoons several years ago:

We have almost twice as many little spoons as will fit on the rack. So I decided that a good CNC project would be making some additional racks that will hold the additional spoons, plus any extras we acquire in the near future.
Building the Toolchain
I've been using this project as a sort of pilot for putting together an automated toolchain for my CNC. You know, draw the object in CAD, convert it to gcode, and cut on the CNC. In the past I've just used image maps as depth maps and hand-written gcode to produce things. This project seemed to have about the right level of complexity for an initial project with a new set of tools.
At first, I had already designed the rack for the spoons themselves by hand on paper, and written gcode to match. But I laid this aside and tried out several CAD tools. The CAD tool that I ended up with a decent file from in the least time was Google Sketchup, running on my Mac. Unfortunately, Sketchup doesn't write in the CAM-friendly file formats. So I pulled MeshLab, which converted a Sketchup Collabra file to STL for CAM.

The next step was CAM. After spending over a week trying out different free CAD packages (see below for why I'm starting with no-cost software), I was getting antsy to start cutting something. After three goes with different CAM packages on three OSes, and still no results worth cutting, I just decided to pull out the gcode and give it a once-over.
GCode FTW
I did a quick third pass over my gcode program on paper, then typed it in on my EMC2 system with gedit. The EMC2 preview was, as always, very helpful. It let me catch a bogus Z-value. Once that was fixed, I plunked down a piece of MDF for the trial run and let 'er rip.

The piece cut out very nicely. I ran it in three passes, the support for the piece was pretty minimal, so you can see where each pass cut across. A bit of sandpaper would fix this well enough.
However, I think I'd rather do the little shelf out of 1/4" stock. I used 1/2" because my prototype uses that thickness. But it's not like there's a lot of stress on the part from the spoons. So I'm going to re-build my code for a 1/4" thick piece before making the "production" units (probably three of them.) Then I may try to use the automated toolchain again for the backs of the spoon racks (all I have in gcode at this point is the little shelf.)
Why Free?
I don't have any aversion to spending money for quality software. In fact, much the opposite. However, I've already spent the money I had budgeted for the CNC. Plus I've tread on my money set aside for travel this summer because of some unexpected household expenses.
For the time being, I'm being a bit hairshirt when it comes to software.
I'm very happy with EMC2 for my CNC software at this point.
Sketchup is pretty well doing OK for me for CAD right now, though there are things I will want to do later that I'm not sure it does easily or well. When money permits, what I'd really like to do is pick up ZBrush. Hopefully within a year or so. Sooner if possible.
For CAM, I'm thinking that I'll want to pick up something like Cut3D from Vectric. It seems to have the functions I want. Cut2D is a possibility, too. I'll be doing the free trial on each in the not-too-distant future.
In the meanwhile, if you know of some free CAM software that doesn't just treat an STL object as something to be rastered over, drop me a note. I'm completely OS-agnostic. Most recently I was doing CAD in MacOS, running CAM (FreeMill, a good package but didn't do what I needed) on Windows, and I'm driving the CNC with EMC2 on Linux.
We have almost twice as many little spoons as will fit on the rack. So I decided that a good CNC project would be making some additional racks that will hold the additional spoons, plus any extras we acquire in the near future.
Building the Toolchain
I've been using this project as a sort of pilot for putting together an automated toolchain for my CNC. You know, draw the object in CAD, convert it to gcode, and cut on the CNC. In the past I've just used image maps as depth maps and hand-written gcode to produce things. This project seemed to have about the right level of complexity for an initial project with a new set of tools.
At first, I had already designed the rack for the spoons themselves by hand on paper, and written gcode to match. But I laid this aside and tried out several CAD tools. The CAD tool that I ended up with a decent file from in the least time was Google Sketchup, running on my Mac. Unfortunately, Sketchup doesn't write in the CAM-friendly file formats. So I pulled MeshLab, which converted a Sketchup Collabra file to STL for CAM.
Close-Up of the Item that Inspired my Project
The next step was CAM. After spending over a week trying out different free CAD packages (see below for why I'm starting with no-cost software), I was getting antsy to start cutting something. After three goes with different CAM packages on three OSes, and still no results worth cutting, I just decided to pull out the gcode and give it a once-over.
GCode FTW
I did a quick third pass over my gcode program on paper, then typed it in on my EMC2 system with gedit. The EMC2 preview was, as always, very helpful. It let me catch a bogus Z-value. Once that was fixed, I plunked down a piece of MDF for the trial run and let 'er rip.
My first go at the spoon rack's shelf, the back is another piece. But I've got an idea for improving on this...
The piece cut out very nicely. I ran it in three passes, the support for the piece was pretty minimal, so you can see where each pass cut across. A bit of sandpaper would fix this well enough.
However, I think I'd rather do the little shelf out of 1/4" stock. I used 1/2" because my prototype uses that thickness. But it's not like there's a lot of stress on the part from the spoons. So I'm going to re-build my code for a 1/4" thick piece before making the "production" units (probably three of them.) Then I may try to use the automated toolchain again for the backs of the spoon racks (all I have in gcode at this point is the little shelf.)
Why Free?
I don't have any aversion to spending money for quality software. In fact, much the opposite. However, I've already spent the money I had budgeted for the CNC. Plus I've tread on my money set aside for travel this summer because of some unexpected household expenses.
For the time being, I'm being a bit hairshirt when it comes to software.
I'm very happy with EMC2 for my CNC software at this point.
Sketchup is pretty well doing OK for me for CAD right now, though there are things I will want to do later that I'm not sure it does easily or well. When money permits, what I'd really like to do is pick up ZBrush. Hopefully within a year or so. Sooner if possible.
For CAM, I'm thinking that I'll want to pick up something like Cut3D from Vectric. It seems to have the functions I want. Cut2D is a possibility, too. I'll be doing the free trial on each in the not-too-distant future.
In the meanwhile, if you know of some free CAM software that doesn't just treat an STL object as something to be rastered over, drop me a note. I'm completely OS-agnostic. Most recently I was doing CAD in MacOS, running CAM (FreeMill, a good package but didn't do what I needed) on Windows, and I'm driving the CNC with EMC2 on Linux.
Labels:
cnc,
emc2,
gcode,
gecko 540,
hacking,
microCarve,
open source,
pc,
philosophy,
Programming
Friday, May 20, 2011
microCarve A4 CNC Assembly Instructions Online
I've posted step by step instructions of how I assembled my microCarve A4 CNC router on my website:
microCarve A4 Assembly
This is the first component of a new section of my site dedicated to CNC machining. Since I've gotten the A4, I've really enjoyed spending a lot of time working with it, learning what I can do with it. I'm still a long way away from solidly competent, but it's a state I'm enjoying working toward. And the stuff I'm making along the way is fun, too.
So, as time allows, I'll be expanding the content I have from the CNC Machining home page on my site to include project info, tips and tricks I learn along the way, and links to information from others that I've found especially helpful (if I linked everything that was helpful to me, it'd overwhelm me entirely!)
Labels:
cnc,
emc2,
engineering,
gadgets,
gcode,
gecko 540,
hacking,
microCarve
Friday, May 6, 2011
What I Learned with My CNC Machine Today
I'm in the second day of a one day project today. Hopefully I'll finish it on Day 3.
But, at each step I'm learning new and useful things.
Nonetheless, I managed to avoid anything worse than some minor marring of the surface of one work piece. It's still usable for the project.
So far, I've succeeded at using the CNC as a really complicated and finicky power planer. Unlike the first time I used a power planer, it did not throw a piece of wood across the shop at barely subsonic velocities. One piece came a bit loose in the clamp is all. I shut down the machine in time, re-clamped it, and picked up where I left off.
But, at each step I'm learning new and useful things.
Yesterday I learned:
- There's a point where you need to stop writing gcode by hand, and use CAD/CAM.
- Doing tool compensation by hand is a real bear.
- Don't think of designs that are too much more elaborate than what you've actually made before.
Today's Lessons:
- When your test piece is MDF and your work piece is real wood, there are going to be differences.
- Grain and cutting direction matter more when using a CNC than when you route by hand, where you make all sorts of little compensations that you don't even notice.
- Just because this piece looks like the last piece you cut doesn't mean that it really is, even if it's a piece off the same stock. This can be really important when you're clamping your work down.
Nonetheless, I managed to avoid anything worse than some minor marring of the surface of one work piece. It's still usable for the project.
So far, I've succeeded at using the CNC as a really complicated and finicky power planer. Unlike the first time I used a power planer, it did not throw a piece of wood across the shop at barely subsonic velocities. One piece came a bit loose in the clamp is all. I shut down the machine in time, re-clamped it, and picked up where I left off.
Wednesday, May 4, 2011
First Attempt at Engraving an IC with my CNC
I decided to try doing a smaller, more precise job with my microCarve A4 CNC today. I took some of my GCode program from yesterday, scaled it down (fortunately I provided variables to do all that automatically for me) and added a chip number in characters that I hoped would show with the bit I'm using.
Here's what I got:

The cut widths are about 35 thousandths. Too large for the level of detail in the smaller key pattern. The single large key above is scaled three times larger than the smaller keys. The base leg length for the small keys (the smallest segment size) is 25 thousandths. So it's easy to see why it didn't quite come out.
Still, the accuracy would have been plenty good, if I'd had a sharp enough bit.
Onward and upward! :)
Here's what I got:

My first shot at engraving an IC top. It's not really an 8085 microprocessor, it's a dead ROM I happened to have hanging around.
The cut widths are about 35 thousandths. Too large for the level of detail in the smaller key pattern. The single large key above is scaled three times larger than the smaller keys. The base leg length for the small keys (the smallest segment size) is 25 thousandths. So it's easy to see why it didn't quite come out.
Still, the accuracy would have been plenty good, if I'd had a sharp enough bit.
Onward and upward! :)
Labels:
8085,
cnc,
electronics,
emc2,
gadgets,
gcode,
gecko 540,
Graphics,
hacking,
microCarve,
Programming
Learning GCode with EMC2
I'm spending a lot of time with my new microCarve A4 CNC router this week. My first couple of items were made using a handy image to gcode converter that's built into the EMC2 control software I'm using.
But the image converter simply treats the image as a depth map which is cut by raster-scanning with the cutting head. For the designs I used, this was slow, and produced rougher results than would be produced using vector cuts.
So I looked at a couple of approaches to improve things. One is using CAD software that works well with a CAM package to covert the CAD design into machine control instructions to cut out the CAD shapes. The other is to go straight to writing my own machine control programs by hand. I know that I'll want to have both methods in my toolkit, but which to use first?
After a bit of back and forth yesterday morning, I decided to start with programming by hand first. So I dove into the EMC2 documentation for gcode, the programming language more properly called RS-274-NGC. What a catchy name, eh? You can bet that the folks who picked programming language names like "python" and "Java" are kicking themselves after seeing how "RS-274-NGC" rolls off the tongue.

Well, the EMC2 site has a link for a gcode tutorial, but what's there is...not much. Maybe I'll pitch in, since that's what wikis are for, right? The I went an read the EMC2 documentation, which has the standard cart-before-horse format of discussing details before generalities. Then I found the excellent LumenLabs GCode Tutorial. Much better!
I read some bits, scanned others, then hit the keyboard on my CNC control system. It's an old Athlon 800 with 768MB of RAM loaded up with the EMC2 LiveCD install for Ubuntu Hardy Heron, with EMC2 upgraded to the current version after install.
I fired up EMC2 with the SIM-Axis configuration for developing the gcode. I've got three different configurations of EMC2 on my desktop. I've got the SIM-Axis setup, and two different configurations for my microCarve A4, each with different origins for the axes.
I used gedit to create an initial gcode file, then opened it in EMC2. The gcode preview window is great. Whenever I edited the gcode file and saved, I'd click the reload button in EMC2 and immediately see the changes. Likewise, the error messages were good enough to let me find my problems, though the problems were usually typos rather than what was reported.
I used iterative development, of course. No sense writing too much code before finding out that I didn't understand some element of syntax. I started with initializing the mode settings, lifting the head to a safe traversal height, traversing to a point in space, then returning to machine zero. After fixing a couple of problems, I got what I wanted. Then I added a few additional move commands, and got the simulated CNC to follow them. At that point I could see that things would get out of hand pretty quick if I didn't learn some basic flow control.
So I read up on subroutines in gcode. I laid out a simple key pattern on graph paper, and wrote the necessary routines. That's the border you see in the picture above. That was the easy part. It's all straight lines.
Next was curves. I read up on G2 and G3. I hadn't thought about the ability to shift the depth of cut across the curve when I started reading, but by the time I was done I was thinking, "Hmmm, if I vary the depth of the cut with a V groove bit, I can vary the width of the cut just as I would vary the width of a line with a calligraphy pen."
So I broke out a fresh sheet of graph paper, and started drawing some letters. Well, it took me about three times as long to lay out the letters as it took me to lay out the key pattern, but I managed that. Not only that, but I set things up with scaling factors and variable settings that allow me to easily scale and move the letters.
Results
The results you see above are what I got from the first "live" run of my first gcode program. The cuts are a bit deeper than I'd like, and the 90 degree bit I'm using right now doesn't help. Also, the cutting was a bit fast for the plywood, causing the wood to be frayed on the cross-grain cuts. Still, the varying of "line weight" on the letters turned out well. Overall I'm happy with it, and the defects should be easy to fix when I run it again. I'm planning on building a complete alphabet for this font and throwing it into a file for later use.
But the image converter simply treats the image as a depth map which is cut by raster-scanning with the cutting head. For the designs I used, this was slow, and produced rougher results than would be produced using vector cuts.
So I looked at a couple of approaches to improve things. One is using CAD software that works well with a CAM package to covert the CAD design into machine control instructions to cut out the CAD shapes. The other is to go straight to writing my own machine control programs by hand. I know that I'll want to have both methods in my toolkit, but which to use first?
After a bit of back and forth yesterday morning, I decided to start with programming by hand first. So I dove into the EMC2 documentation for gcode, the programming language more properly called RS-274-NGC. What a catchy name, eh? You can bet that the folks who picked programming language names like "python" and "Java" are kicking themselves after seeing how "RS-274-NGC" rolls off the tongue.
Results of My First GCode Program.
Well, the EMC2 site has a link for a gcode tutorial, but what's there is...not much. Maybe I'll pitch in, since that's what wikis are for, right? The I went an read the EMC2 documentation, which has the standard cart-before-horse format of discussing details before generalities. Then I found the excellent LumenLabs GCode Tutorial. Much better!
I read some bits, scanned others, then hit the keyboard on my CNC control system. It's an old Athlon 800 with 768MB of RAM loaded up with the EMC2 LiveCD install for Ubuntu Hardy Heron, with EMC2 upgraded to the current version after install.
I fired up EMC2 with the SIM-Axis configuration for developing the gcode. I've got three different configurations of EMC2 on my desktop. I've got the SIM-Axis setup, and two different configurations for my microCarve A4, each with different origins for the axes.
I used gedit to create an initial gcode file, then opened it in EMC2. The gcode preview window is great. Whenever I edited the gcode file and saved, I'd click the reload button in EMC2 and immediately see the changes. Likewise, the error messages were good enough to let me find my problems, though the problems were usually typos rather than what was reported.
I used iterative development, of course. No sense writing too much code before finding out that I didn't understand some element of syntax. I started with initializing the mode settings, lifting the head to a safe traversal height, traversing to a point in space, then returning to machine zero. After fixing a couple of problems, I got what I wanted. Then I added a few additional move commands, and got the simulated CNC to follow them. At that point I could see that things would get out of hand pretty quick if I didn't learn some basic flow control.
So I read up on subroutines in gcode. I laid out a simple key pattern on graph paper, and wrote the necessary routines. That's the border you see in the picture above. That was the easy part. It's all straight lines.
Next was curves. I read up on G2 and G3. I hadn't thought about the ability to shift the depth of cut across the curve when I started reading, but by the time I was done I was thinking, "Hmmm, if I vary the depth of the cut with a V groove bit, I can vary the width of the cut just as I would vary the width of a line with a calligraphy pen."
So I broke out a fresh sheet of graph paper, and started drawing some letters. Well, it took me about three times as long to lay out the letters as it took me to lay out the key pattern, but I managed that. Not only that, but I set things up with scaling factors and variable settings that allow me to easily scale and move the letters.
Results
The results you see above are what I got from the first "live" run of my first gcode program. The cuts are a bit deeper than I'd like, and the 90 degree bit I'm using right now doesn't help. Also, the cutting was a bit fast for the plywood, causing the wood to be frayed on the cross-grain cuts. Still, the varying of "line weight" on the letters turned out well. Overall I'm happy with it, and the defects should be easy to fix when I run it again. I'm planning on building a complete alphabet for this font and throwing it into a file for later use.
Labels:
cnc,
controls,
emc2,
free software,
gadgets,
gcode,
gecko 540,
hacking,
Linux,
LiveCD,
microCarve,
open source,
Programming,
Ubuntu
Monday, May 2, 2011
microCarve A4 CNC First Cut Complete!
I got a router mounted on my microCarve A4 CNC machine this weekend. The router I'm using is an inexpensive 1/4" router from Harbor Freight. It's mounted on a base plate I made out of 3/4" plywood with a pair of muffler clamps holding the body of the router:

I've got two bands wrapped around the body of the router cut out of a bicycle inner tube. They help mate up the muffler clamps to the router body. I was expecting to drill and tap a hole into the router for a screw through the base plate, but with the rubber straps everything is very firm and tight.
Today I spent some time "cutting air" to make sure the tool would run properly before I put a bit in. I had to invert the Z and Y axes in the setup I was using as it turned out. Then I tested twice more, once again with no bit or wood, then again with a bit and wood in the machine, but the Z axis set high enough the bit of the router wouldn't quite reach the wood.
Everything looked good, so I made my first cut:



The material is some plywood I recovered from an old failed project. As you can see, it wasn't mounted completely flat. The top piece is held by some screws that hold it from underneath.
The G-Code was a raster pattern generated by an image-to-gcode converter that comes with the EMC2 software I'm using. That's why the bottoms of the letters look kinda scrappy, if they'd been cut continuously rather than raster-cut, they'd probably look a lot better.
The bit I used is a 1/2" 90 degree bit, I don't have any really nice bits yet. Now that I've got the machine actually cutting things out, I can work on refinements.
The depth of cut is 1/8".
Now I'm looking forward to getting some better bits, getting my CAM software in order, and so on.
Edit:
Had one more go with what I've got on hand this afternoon. It's a little more ambitious. Here you go:

I've got two bands wrapped around the body of the router cut out of a bicycle inner tube. They help mate up the muffler clamps to the router body. I was expecting to drill and tap a hole into the router for a screw through the base plate, but with the rubber straps everything is very firm and tight.
Today I spent some time "cutting air" to make sure the tool would run properly before I put a bit in. I had to invert the Z and Y axes in the setup I was using as it turned out. Then I tested twice more, once again with no bit or wood, then again with a bit and wood in the machine, but the Z axis set high enough the bit of the router wouldn't quite reach the wood.
Everything looked good, so I made my first cut:
The material is some plywood I recovered from an old failed project. As you can see, it wasn't mounted completely flat. The top piece is held by some screws that hold it from underneath.
The G-Code was a raster pattern generated by an image-to-gcode converter that comes with the EMC2 software I'm using. That's why the bottoms of the letters look kinda scrappy, if they'd been cut continuously rather than raster-cut, they'd probably look a lot better.
The bit I used is a 1/2" 90 degree bit, I don't have any really nice bits yet. Now that I've got the machine actually cutting things out, I can work on refinements.
The depth of cut is 1/8".
Now I'm looking forward to getting some better bits, getting my CAM software in order, and so on.
Edit:
Had one more go with what I've got on hand this afternoon. It's a little more ambitious. Here you go:
Labels:
cnc,
controls,
emc2,
engineering,
gecko 540,
hacking,
microCarve,
open source
Friday, April 8, 2011
microCarve A4 CNC Assembly Complete!
I finished my motor controller box day before yesterday, as described in Gecko G540 Power Up! as I build my microCarve A4 CNC router. Just take a look at the past several articles in my archive for more background and pictures of the A4.




Tomorrow I start testing without a spindle. If all goes well, I'll start assembling a spindle mount.
More at: my CNCZone Build Thread
Completed Controller Box with Improved Fan Cutouts
Front with Big Red Switch and Power Light. Needs personalized stickers.
Completed MicroCarve A4 without Motors.
Completed MicroCarve A4 CNC with stepper motors in place.
Tomorrow I start testing without a spindle. If all goes well, I'll start assembling a spindle mount.
More at: my CNCZone Build Thread
Labels:
cnc,
controls,
electronics,
emc2,
gadgets,
gecko 540,
microCarve
Sunday, April 3, 2011
MicroCarve A4 CNC Build Progress: Driver Enclosure
I'm getting closer to having a working CNC mill. I've been taking long as necessary to get the job done right the first time as much as possible, and to put on some polish at the outset.
My current work is to convert an old UPS into the power supply and motor driver enclosure for my CNC mill.
I started with this:

And cut the back panel to hold my Gecko G540 motor controller like this:

I go into more detail on these steps in an earlier article.
One of the problems with this enclosure is the airflow. I want to make sure there's plenty of it for the current electronics. I got another metal nibbler and made some cut outs this morning for the power supply:



I wanted to take advantage of the big red power switch the original UPS had, so I chopped of the section of the original PCB with the switch, then mounted it on the original mounting hardware with some minor mods to make it stay in place without the rest of the board.


I thought I might have to use the switch to pull a relay on the AC line for the power supply, but as it turns out it's adequate for passing the AC directly. Whew! That saved some work.


Then I wanted to have a power indication LED. I made up a resistor divider both to feed a lower voltage to the LED than the power supply's 48V nominal output, and to limit current to the LED. I planned on 6V at about 10mA, and made a divider. The original two-color LED didn't light up very bright at 10mA (I should have built the divider for 20mA), so I put in a red LED that's daylight visible at 10mA.


My last item on this cabinet will be finished tomorrow. Since the power supply puts out 48V and all my available fans are 12V, I put four fans in series. I'll have two fans drawing air in from the sides of the cabinet across the back of the G540. A third fan will exhaust air out the front of the cabinet. The fourth will try to stay out of the way. I marked out a place for the last fan to draw air into the cabinet from below the Gecko, but didn't cut it. If it gets warm inside the case while I'm testing it with motors attached and driving a CNC table around, I'll put in the hole for the fourth fan.

When I'm not working out in the shop, I'm personalizing my microCarve A4's paint job a little:

My current work is to convert an old UPS into the power supply and motor driver enclosure for my CNC mill.
I started with this:
And cut the back panel to hold my Gecko G540 motor controller like this:
I go into more detail on these steps in an earlier article.
One of the problems with this enclosure is the airflow. I want to make sure there's plenty of it for the current electronics. I got another metal nibbler and made some cut outs this morning for the power supply:
I didn't worry about cosmetics here, I just wanted to get on with the job. As long as I won't cut myself, I don't care how the cutouts look.
You can see that the cutouts line up well with the power supply vents.
There's room for some airflow around the power supply inside the cabinet.
I wanted to take advantage of the big red power switch the original UPS had, so I chopped of the section of the original PCB with the switch, then mounted it on the original mounting hardware with some minor mods to make it stay in place without the rest of the board.
The original switch's specs are good enough to wire it directly into the AC power line for the new circuit.
I thought I might have to use the switch to pull a relay on the AC line for the power supply, but as it turns out it's adequate for passing the AC directly. Whew! That saved some work.
Finished AC Wiring
Power On, Looking Good!
Then I wanted to have a power indication LED. I made up a resistor divider both to feed a lower voltage to the LED than the power supply's 48V nominal output, and to limit current to the LED. I planned on 6V at about 10mA, and made a divider. The original two-color LED didn't light up very bright at 10mA (I should have built the divider for 20mA), so I put in a red LED that's daylight visible at 10mA.
The divider/current limiter.
The new red LED, held up to the light pipe with shrink wrap so I can see how bright it'll be. I later removed the unshrunken shrink wrap, hot-glued the LED to the PCB, and it fits up to the light pipe inside the cabinet perfectly.
My last item on this cabinet will be finished tomorrow. Since the power supply puts out 48V and all my available fans are 12V, I put four fans in series. I'll have two fans drawing air in from the sides of the cabinet across the back of the G540. A third fan will exhaust air out the front of the cabinet. The fourth will try to stay out of the way. I marked out a place for the last fan to draw air into the cabinet from below the Gecko, but didn't cut it. If it gets warm inside the case while I'm testing it with motors attached and driving a CNC table around, I'll put in the hole for the fourth fan.
The fans, and an enlarged air vent for one of the fans in the side of the cabinet cover.
When I'm not working out in the shop, I'm personalizing my microCarve A4's paint job a little:
Labels:
cnc,
controls,
electronics,
emc2,
gecko 540,
hacking,
instrumentation,
microCarve
Friday, April 1, 2011
Microcarve A4 CNC Build-Up Progress:Controls
I'm the proud new owner of a microCarve A4 CNC machine. I'm still getting it built up--I got my motors and motor driver three days ago and the A4 just arrived yesterday.
Yesterday and today I was working on an enclosure for my Gecko G540 driver and the power supply for it and the motors. After looking around at what I had on hand, I decided to "repurpose" an old UPS's enclosure:





My original plan was just to use a nibbler, starting at the hole for the phone jack for the UPS. I scribed my cut lines, then started cutting with the nibbler. About an inch into the work, the nibbler broke. Did I mention that I'd modified this nibbler in the past to cut plastic? I made it so that its jaw would open wider. This weakened the nibbler a bit, but hey, who needs strength for cutting plastic?
Then I went and cut some metal with it. It wasn't up to that job any more.
I spent much of the day yesterday trying to buy a new nibbler. I went to five different places nearby. Four of those places had never heard of a nibbler, at least three seemed to think I was making it up. The last had heard of nibblers, but they didn't have any.
So I came back home and got to work with other tools. I finished the job about noon today. It was a lot more work, but the results are decent, even if they're not quite as clean as I can get with a nibbler. Plus it made a lot of steel filings. Dremel, cutoff wheels, cold chisel, files, grinding stone and hammer were among the tools used.


Since I had to take care of all those filings, I did a pretty thorough cleaning of my bench so that I'd have a place to assemble the A4 without any further delays. My next image reveals wood which seldom sees the light of day:

It looks like it's outside because of the window. In fact, it's in a second garage that was added outside the house's original garage. The original garage's windows were just left in place when the prior owners added the second garage.
Yesterday and today I was working on an enclosure for my Gecko G540 driver and the power supply for it and the motors. After looking around at what I had on hand, I decided to "repurpose" an old UPS's enclosure:
The Enclosure, after the guts were removed.
The original back plate.
And the Inside
A Fused Mains Plug--Very Handy!
Here's where the Gecko will fit, more or less.
My original plan was just to use a nibbler, starting at the hole for the phone jack for the UPS. I scribed my cut lines, then started cutting with the nibbler. About an inch into the work, the nibbler broke. Did I mention that I'd modified this nibbler in the past to cut plastic? I made it so that its jaw would open wider. This weakened the nibbler a bit, but hey, who needs strength for cutting plastic?
Then I went and cut some metal with it. It wasn't up to that job any more.
I spent much of the day yesterday trying to buy a new nibbler. I went to five different places nearby. Four of those places had never heard of a nibbler, at least three seemed to think I was making it up. The last had heard of nibblers, but they didn't have any.
So I came back home and got to work with other tools. I finished the job about noon today. It was a lot more work, but the results are decent, even if they're not quite as clean as I can get with a nibbler. Plus it made a lot of steel filings. Dremel, cutoff wheels, cold chisel, files, grinding stone and hammer were among the tools used.
The Gecko, in its new home.
The Gecko from the back.
Since I had to take care of all those filings, I did a pretty thorough cleaning of my bench so that I'd have a place to assemble the A4 without any further delays. My next image reveals wood which seldom sees the light of day:
The top of my bench. Stains are just Tapmatic fluid that hasn't dried yet.
It looks like it's outside because of the window. In fact, it's in a second garage that was added outside the house's original garage. The original garage's windows were just left in place when the prior owners added the second garage.
Tuesday, March 29, 2011
A Look at the Microcarve A4 CNC
My Microcarve A4 CNC is on its way! John shipped it this morning.
Here's what it looks like:






I'm getting ready for its arrival by putting together the electronics. I'm modifying an old UPS cabinet for the motor drivers and power supply. Pics soon.
Here's what it looks like:

Over-all view

X Axis Motor Mount at Left

Y Axis Motor Mount in Foreground

Z-Axis. Beautiful, isn't it?

Its Unpainted Twin. A bit more detail visible.

Logo shows nicely here.
Labels:
cnc,
computer,
controls,
electronics,
emc2,
gecko 540,
instrumentation,
product
Subscribe to:
Posts (Atom)
