Tag Archives: Computer-aided design

Mechanical CAD software for 3D printing and general use

My pal and audio guru Steve Williams saw a news item where UPS (yes, United Parcel Service), will be offering 3D printing services in select stores. Always thinking ahead, Steve wrote me:

“What do people use to generate print ready 3D files?  Not everyone has Solidworks like Dave [Ruigh, our ME pal]. Are there now programs that are low cost and simple to use that can generate files that 3D printers can use? Is the printing technology and hardware becoming standardized enough that software and files do not need to be tailored to a specific machine or printing process. I know that there have been a lot of machines and processes developed which I would think would require somewhat different design and files to make a useable part. Can Google Sketchup do this? Guess I wasn’t paying enough attention @ Maker Faire this year.”

My answer is “Solidworks”. If you can’t scrape up $4000, then live with the watermarks on the $89/yr student version. It turns out Steve is on the right track. I found a site that lists a bunch of solid modeling CAD programs. Google Sketchup was first on the list. I noted with dismay they didn’t list TurboCAD which is what I use for simple things. At least they listed Solidworks, which is what I would call a “real” 3D CAD program.

3D-printer-at-UPS

Select UPS stores will have this Stratasys uPrint SE Plus 3D printer that you can buy time on.

One of the severe limitations of the Maker movement is that everybody thinks everything has to be free. It reminds of the Frank Zappa song making fun of the Hippies, where he sings: “Free is when you don’t have to do nothing or pay for nothing. We want to be free, free as the wind.” Despite my populist leanings, I at least realize that programmers have families to support and they need to get paid for what they do.

So I looked at Google Sketchup 5 years ago and I found it laughable. It has some primitives, and I remember it being a simple Boolean CAD modeler. This website seems to agree. A Boolean CAD program means you build your virtual gizmo by adding and subtracting primitive shapes. Furthermore, that website said Sketchup is more intended for architectural modeling, which makes sense; it may well be intended to make all those 3D buildings that people have put into Google Earth.

Google-Earth-3D-buildings_San-Francisco

This is not a picture; it is what the 3D buildings look like in Google Earth. San Francisco would never look this clean and tidy in real life.

That Sketchup is meant to draw buildings makes sense after my pal Otmar Ebenhoech noted that you can create a building or other solid and then see what it looks like as the sun passes over it for various times of the year. But if you want to make gizmos, Sketchup is not the program you want to spend time learning.

I myself did not understand the whole mechanical CAD world until I met a lot of cool mechanical engineers and machinists out here in Silicon Valley. A “real” CAD program needs two things: 1) parametric design (instead of Boolean), and 2) assemblies. Solidworks does this, but so much more. You can have the program calculate casting shrinkage, so that you design the part the way it fits, but then Solidworks will expand everything so that now the part represents the mold you need to make in order to cast it. Everything is a little bigger, but when the part cools down and solidifies, it will be the size you want.

Solidworks also does modifications to your sheet metal designs to allow for metal stretching over a bend. Once again, you build the part for what fits, and Solidworks will flatten it out and help you make the drawing of what the sheet metal shop has to start with as a blank.

Back to the two main criteria, Solidworks and all the other expensive solid modelers are parametric. There used to be this IronCAD that was Boolean—hang on—Yeah, they actually brag about being “drag and drop” as opposed to parametric, yet they still cost 3 or 4 grand. This sounds like yet another case of programmers who have no experience deciding how other people should work. Trust me, you want parametric. With Solidworks you don’t subtract a hole from a block. You select a face, and enter the parameters of the hole. It might be dimensions from the edges. Or it might be a percentage, like 50%, or it might be to center it. The diameter of the hole is just another parameter. All the parameters can be calculated by a formula.

Indeed the parameters in Solidworks can come from a different part, so the holes will always line up. This is a case of “OLE overshoot” like when Microsoft put in object linking and embedding into Word and all it did was make the Word document unless unless the person you gave it to had all the other Word docs and spreadsheets and all the other crap you linked to. I asked my ME buddy about relations in Solidworks. They can really get you in trouble. If you change one part on purpose, and have relationships between parts, then Solidworks will blithely go and change all the other parts, but in the old days did not tell you, so all of a sudden, your drawings don’t match your design intent or ECO (engineering change order) trail. My buddy says everyone does what I do—use relationships to initially build the part, then when it is right, break all the relationships, so you don’t have a festival of automatic changes rippling thought your assemblies. Like OLE, it’s just another case of programmer over-reach.

Solidworks did show how you could make a V-8 engine completely parametrically. Then they would type in a displacement number to a box, and the whole engine would change to accommodate that displacement. The bores and stroke would change, every single dimension would adjust and the whole casting would grow or shrink. Really cool, but unlike me, the programmers never worked in the engine design section of GMC Truck and Coach, where the last thing you want to do is change every part on the engine, when you could just put in a crankshaft with more stroke, or bore the existing casting a bit more. Sigh, programmers.

The other thing real CAD programs do is assemblies. See, when you are designing something other than a simple box, you really need to use the CAD program to fit things together. You want to either build the circuits board in CAD, or even old OrCAD 9.2 will export a 3-D representation if you put a “height” parameter in your parts. The newer Altium has native 3D that everyone loves. Then you get this into your mechanical CAD program and you can make sure all the holes line up and the case and cover and everything else is fitting. The essence of 3D design is building a new part in the context of existing parts—in other words, as part of an assembly. Sure, if you are like me, you break all the relationships and make each part stand alone. But with a real CAD program, you can also do 3D rendering to show the boss, or your friends, and you can generate assembly drawings and the “flatlander” drawings used to inspect the part.

Anyway, this gets to a touchy ethical issue. Rather than learn all these free hobbyist CAD programs, I would strongly encourage makers and system design engineers to learn a real CAD program. But who can afford the 5 or 10 grand to just do occasional work? Now in 1983, AutoCAD got popular since they went on record saying if an engineer took his copy home and installed it, it was just fine. I have been told by PCB CAD representatives that know people are stealing the program to take home, but that they would never go after these engineers, since their side project is teaching them to use the program and one day they may have 20 employees and buy legal copies of the software. All the CAD programs are available cracked, especially in Asia. Now remember, those programmers need to feed their family and it really is stealing to use cracked software.

When I was a consultant I would buy my software since I felt that was the righteous thing to do. The fact that I paid well over $10,000 for AutoCAD 10, 11, 12, 13 and 14 is one reason that I feel justified in never looking at their new products. Once I used Solidworks, I never wanted to use Autocad again. Solidworks is not the best for 2D drawings and architectural, so I bought TurboCAD for that. Both TurboCAD and Solidworks have a user interface paradigm that puts AutoCAD to shame. I fired up my AutoCAD 14 last month, and marveled at how obscure it was to get a printout from it. Then I took it off the computer for good. Solidworks shook up the whole industry when it came out. The people that became Solidworks were a bunch of folks that worked at Pro-Engineer, another monster hard-to-use program like AutoCAD. The management did not want to make an easy-to-use program that was based on a 3rd party kernel and that used all the Windows API to do the graphics.

Bad move by the Pro-Engineer management. I knew they were in trouble when I saw companies not installing upgrades since it would mean nobody could use the new version and if installed, a bunch of things would break. So now, 20 years after Solidworks came out, Pro-Engineer has adopted a lot of the ease-of use. They augmented ProE with Wildfire, and now when I look at their website, I can’t even recognize the products, but it looks like Creo is what their main-line software is.

AutoCAD was crushed in mechanical design by SolidWorks, while holding on to their GIS and architectural customers, since they were trapped by their own custom LISP programming extensions. Autodesk went on to offer Invent, which I hear is pretty decent. I won’t look at it since I still feel the sting of Autocad 14 every single day.

Some of my most brilliant ME pals love Unigraphics, which came from Ross Perot’s EDS, and then got bought GM, then by Siemens. There are two major cool things about NX, which is what they call Unigraphics now. One is that it is really good at surface modeling. If you are doing block billet designs for Harleys or etch chambers for semiconductor machinery, you may never use a single surface command. But remember EDS was bought by General Motors, who adopted Unigraphics for car design. To do car bodies you have to swoop and loft surfaces, and eventually turn it into sheet metal. Unigraphics excels at this. The ME buddies tell me that Unigraphics (now NX) will let you bulge and deform solids like they were surfaces, and they surface generation is unparalleled in Unigraphics.

The other great thing about Unigraphics/NX is that it also is a CAM (computer aided manufacturing) program that makes the G-code files for your milling machine, or the .stl (stereo lithography) file you need in your solid printer. Doing the CAM is an intimate part of getting your prototype, and my buddies tell me that the great thing about Unigraphics is that if you can design it, it will “post” to a G-code file that actually works and makes the part in a milling machine. With Solidworks you have to transfer the file to MasterCAM or SurfCAM and hope for the best. Note that Solidworks will output that .stl file you need for 3-D printing or transferring a dumb lump to another CAD program.

Like electronic CAD, mechanic CAD has evolved into a tri-state system. There are the old monster “enterprise” programs, where you need to work on it 8 hours a day to learn and remember the complex program. You will also need a staff of 5 to 20 people to install and maintain it. There are modern programs easier to use, like Solidworks. And there are the free and hobby programs that will take you so far and leave you stranded or waste hours or days of your life trying to get them to work.

Company Hard to use, crusty Easy to use, modern Note
Dassault Catia Solidworks
PTC Creo (was Pro/E) Co-Create (wrapped into Creo)
Siemens NX (was Unigraphics) Solidedge Unrelated programs but they are trying to put Solidedge UI inot NX
Autodesk AutoCAD Inventor AutoCAD not really for mechanical design any more.

Second tier and Hobby

Company Product paradigm
ZWSOFT ZW3D Solidworks clone $1000, Chinese company
Ironcad Ironcad Boolean Tries too hard to be easy to use.
IMSA TurboCAD AutoCAD clone but improved. Boolean Great for 2-D and house design, but program split into 4 or 5 versions
Autodesk AudoCAD LT Used to be just crippled AutoCAD Simple flatland and hard to use
Microsoft Visio Threat to Autocad LT Best for org charts and nothing else.
Bentley Microstation GIS and architecture Not for mechanical CAD
Ashlar-Vellum Cobalt Idea software that you have to use Solidworks anyway For stylists, not engineers.
Corel CorelCAD Autocad clone Just found them, Boolean Might be good TurboCAD replacement
Kubotek KeyCreator Boolean, Cadkey UI Used to be the beloved CADkey
think3 thinkdesign Lease model (now bankrupt) Maybe Think 4 will do the trick

If you really like to suffer, the free ones:

Sketchup, any GNU project, FeeCAD or any other freeware or shareware.

[Update 10/18/2013:] My ME genius pal Dave Ruigh just read this and had some things to add:

“Don’t forget Spaceclaim, the “un-parametric” CAD modeler, or at least that’s how they seem to be pitching it. Also, re integrated CAM (computer-aided manufacturing), that is available via 3rd party add-on with Solidworks (Inventor and SolidEdge too, I think), in the form of Camworks and Solidcam. I always get the two transposed in my mind. One has better 2.5-axis roughing cycles, and the other does surfaces and 5-axis better. This is old info though, things may have changed. Mastercam has a Solidworks add in, as do a few of the other standalone CAM guys, but the Mastercam flavor is still the same moldy old kernel they have been pitching for the last couple decades.”

“Mastercam would be on my hate-list anyway, because they picked the worst point in my career to blackmail me by “sunsetting” my $15,000 seat, making it permanently non-upgradeable (I would have to repurchase at full price). Solidworks, at least as of a few weeks ago when I talked to Hawkridge, doesn’t do this to their old customers. You just pay a $500 penalty + $1300 yearly maintenance and you’re back on the air.”

PCB layout tips for thermal vias

I came across an article on PCB layout in Electronic Design magazine. It’s a pretty good article and I am glad to see the trade magazines realize we care as much about PCB layout as the bus-caching architecture of some DSP chip. The article talks about using vias to take heat away from the die-attach-paddle (DAP) of integrated circuits:

“To reduce operating temperatures easily, use more layers of solid ground or power planes connected directly to heat sources with multiple vias. Establishing effective heat and high-current routes will optimize heat transfer by means of convection. The use of thermally conductive planes to spread the heat evenly dramatically lowers the temperature by maximizing the area used for heat transfer to the atmosphere (Fig. 4).”

No there is a lot of caution you need to exercise when trying to get the heat out of a part just using a circuit board. You have to realize the guidelines in the datasheet are usually based on one part making heat, sitting on a standard board of a certain dimensions. If you have a lot of hot components you can’t expect the same die temperatures for the part in question. Same goes if you have the board covered with some tight enclosure.

WEBENCH_thermal_simulation

WEBENCH can estimate thermal performance of a switching regulator, but it is just an estimate, highly dependent on your particular layout and application. Note the buck regulator catch diode is the hottest thing on the board, and how little heat is radiated out the bottom, despite the thermal vias.

Texas Instruments WEBENCH is a neat program, especially because it has Mentor Graphic’s FloTherm built in to help you see the hot spots in switching regulators. This is what taught me that a modern buck regulator will have more heat coming out of the catch diode than the pass FET. It made perfect sense once I saw the heat diagram. After all, a diode has 0.6 to 0.9 volts across it, while a modern FET has such low on-resistance it hardly drops any voltage at all.

But realize a simulation is just that, for both electrical and thermal designs. You have to rely on my brother’s maxim from Bell Labs: “An ounce of trial is worth a pound of opinion.” And any simulation is just that, a computer’s opinion on what your circuit will do. So I and several pals have learned a few things with real-world experience. One is that vias rarely work as well as you need them to. The first problem is that the amount of copper in the “barrel” is dependent on the circuit board fabricator. Thin plating means low heat transfer.

Thermal-vias

Here is a nice side-view of some thermal vias in a PCB. Note the thicker copper on the top and bottom helps to dissipate the heat, and the bigger the area, the better.

The best thing is to fill the vias, which really gets the heat out, but is an extra-cost option. Other than that, plan on a lot of vias under the part. The article excerpt above talks about using inner layers to get heat out, but in my experience that has limited usefulness. Do top-side and bottom-side copper pours. If you can get several square inches, that is great, but if you have a top-side pour, which you should, and a bottom-side pour, well there is not a lot of heat that can radiate from the inner layers unless you can dump heat into an entire ground plane. Remember you have to stop the CAD program from putting thermal reliefs in all the vias. And realize that without thermal reliefs, to de-solder the part you will need a Metcal hot-air rework station or a Hakko hot air gun, (or two). You will need a good iron to solder the part as well, and you have to tell the assembly house that they may have to modify the thermal profiles of their IR reflow ovens so that the parts get soldered correctly.

As far as heat transfer to the atmosphere, it’s something like 100 times worse than getting the heat out of the leadframe. Even if the part does not have a die-attach paddle, you can figure out what pins are connected to the substrate of the die and make sure those pins have a lot of copper area. All the same tricks apply, you can pour topside copper from the pin and be sure to pave over any thermal reliefs the CAD program puts around the pin pad. Vias down through the board to copper pours on the bottom side will get more heat out. Raw copper, or copper with nickel or gold will dissipate more heat than copper covered with soldermask.

I sent the article to my pal Wayne Yamaguchi, who has worked on getting the heat out of LED flashlights for a decade. He learned that not all “rules of thumb” you read in datasheets will accurately forecast the heat you can dissipate into a circuit board. Regarding the article, Yamaguchi wisely notes: “Everything said is correct, but, practically speaking and implementing is something else.” Wayne then sent a link to a thermal calculator for vias that he likes. Wayne notes: “Playing with the via calculator you can determine that FR4 is some pretty awful stuff and also you will find out that 1 oz copper foil is not a good thermal conductor.” He notes the same site has some other great tools. Wayne also pointed me to a Cree technical article (pdf) about thermal vias for high-power LEDs.