Thursday, 30 May 2013

STL to STEP with FreeCAD ...

A couple of months ago, I used InStep V2.0 by Solveering to convert STL files to STEP files, in order to obtain solid models for modification in my favorite CAD package. Whilst CAD model conversion should always be treated with caution. When it works, it can help create a new model more easily or save some time and effort.
FreeCAD STL to STEP solid of Thing 64549

Following a comment posted in the STL to STEP blog entry. I decided to try FreeCAD 0.13. As my CAD program is over 10 years old, it's about time I moved to something a little more modern. The stumbling block has always been import / export capability. Ease of use and graphics capability were additional considerations, but time has leveled the playing field somewhat where graphic rendering is concerned. The ultimate platitude usability is still a worry, though most modern packages seem to exhibit wrinkles now rather than show stopping user interface 'faux pas'.

Packages such as Tinkercad, Creo and the like are frequently crippled quite severely. Usually so as not to detract from some other market segment product being purveyed. Typical limits include import / export format limitations and resolutions. Or limited numbers of features allowed in the part, limited assembly components or limited capabilities e.g Splines, Surfaces etc. Creo, demanding to see a license server on the internet every 3 days. Assumes I care to expose my CAD computer to the internet. Whilst I have no designs in the 'top secret' category. When out and about, the necessity of using public internet to refresh the license; potentially 'creating backdoor access holes' for third parties; is not something I wish to do where possible. At the other extreme, Tinkercad's birth has been somewhat ignominious.

I decided the acid test for any candidate CAD software, was the ability to take an STL file from Thingiverse and create a solid model ready for subsequent modification. At this stage only and import export functions are important; with a view to migrating over time to native modelling.

The crunch test seemed to be the Thing 64549 which crashed Instep V2.0. It has a lot of points associated with the spiral and cylinder features, around 63900 apparently. So this is the first model I decided to try out  with FreeCAD.

FreeCAD handles STL files using a family of functions grouped under 'Mesh Design'. Interestingly FreeCAD also has some basic Mesh fix up functions. However for the test I decided to rely on files previously manipulated in NetFabb.

The two screens below show Thing 64549 imported as a Mesh, converted to a solid, exported as a STEP file and finally imported back into FreeCAD. I failed to get a valid file from Instep which was allowed to run overnight. FreeCAD took somewhat less time and managed to produce a usable file, though a little large at 160Mb.

Import of Thing 64549 STL and conversion to solid

Import of FreeCAD STEP file

Here is a quick summary of how the conversion process is performed in FreeCAD 0.13. The example shown is based on a Raspberry PI case modified previously.

Initial FreeCAD screen with Mesh functions selected

Imported STL Mesh

Selecting the FreeCAD Mesh fix up tools

FreeCAD mesh fix up tools

FreeCAD conversion of mesh to solid in the Part functions

FreeCAD solid conversion tolerance parameter (left as standard)

Converted mesh now as solid (notice extra entry in the Tree View)

Exporting the Solid as a STEP file (Select FILE the EXPORT from the menu)
For the Rapsberry Pi case InStep seems to produce a smaller STEP file and this may or may not better represent the geometry than FreeCAD. The price performance balance seems to favor FreeCAD and if it is less efficient, it has some performance benefits, in that it converted Thing 64549.

Monday, 6 May 2013

Printing - More And Maker Faire UK...

Last week we went to the Maker Faire in Newcastle (England). It was fantastic and my youngest really enjoyed building a flashing LED name badge. There were quite a few 3D printers with one guy demonstrating a 3D router built out of 3 old flat bed scanners and a Dremmel type device. The whole thing was held together in a retired PC case. Hacking at its best! There were a few Makerbot devices, a Cup Cake and a guy in the throws of building a Rostock. There was good STEM support and Daleks to boot. You could have spent all day there, we did! The people were fantastic and the food was good value for money. For once we were not ripped off by a venue, thanks Centre For Life.

I went ready to buy filament but found none for sale and no 3D printers for sale either, but plenty of working printers and lots of people ready to talk to about 3D printing.

I managed to post our Minecraft Creeper derivative this week as we have not been twiddling much with

Huxley #710 - First Print
Huxley #710, having had so much fun at Maker Faire. I also managed to find a picture of Huxley #710 in completed form. This picture was taken during Huxley #710's first print of a whistle, Thing 1046.

The Minecraft Creeper shown here is a derivative of Thing 11825. The boys wanted a version that had improved facial features (no drooping) and a swivel head. So I created a clip that fits into the body and head. We have printed around 10 of these now, as the boys friends wanted some. At Maker Faire UK (Newcastle), Creepers were seen hanging out on top of the Printcraft computer monitors. But yours could look around! (The leg pitch is just over 11mm).

The clip arms are designed to compress together completely and be a snug fit into the holes in the head and body. If your printer produces blobs on parts you may have to clean up the clip to avoid issues assembling the clips. The images shown are how Huxley #710 prints parts, no clean up was required or performed. Similarly if your holes are too small or too large then you might have issues. I posted STEP files so you can tweak things if you prefer.

Minecraft Creeper - Thing 83942
Design For Manufacture
By removing the head from the body, the head can be printed without distortion. Tthe drooping seen in the green creeper (our first, whose head does not move). The mating features are designed to locate and allow rotation. The clearance between the head and body bearing location diameters and the clip centre locating diameter is 0.20mm by design. To accommodate the slightly out of round holes manufactured in FDM layer manufacture. The clip deformation assumes a non brittle material in this case Faberdashery PLA. As the clip is significantly deformed on insertion into the head and body. The part was printed as three elements as a clip on the head or body might have needed material support. The clip is intended for use in other assemblies and allow for repair, if required. Which would be more of an issue with parts having integrated clip features. At the time the clip was designed, there were limited versions on Thingiverse. A redesign might use one of the clip designs on Thingiverse.

Minecraft Creeper - Thing 83942

This item has small parts and is not suitable for young children as a result. With some effort our Creeper head could be removed, unlike Lego Duplo characters for example.

Sample Part Manufacturing Technical Documentation
Printer : Huxley #710 (RepRap Pro)
Firmware : Marlin 1.0.0 RC2 - 15 Feb 2013
Software : RepRap Pro Software 811708f - Pronterface
Material : PLA - Faberdashery - Arctice Whilte - Village Green
Material Dia. : 1.75 mm (Msd 1.80 mm )
Nozzle : 0.50 mm
Layer height : 0.25 mm
Layer width : 0.6 mm
Extrusion T : 198 C
Bed T : 60 C
Feed Rate : 28 mm/s
Perimiter rat. : 0.5
Infil pattern : Hexagonal
Infil solidity : 0.15
Cooling Fan : Yes
Bed material : Borosilicate Glass
Over hangs : Yes
Support : No
Design For Manufacture Parameters
Model : Absolute dimensions
Scale : 1:1
Holes : Yes
Layer height : 0.30 mm
Layer width : 0.6 mm
Over hangs : Yes
Support : No

Model Tools
Function: Model Fix up
Tool: NetFab Studio Basic
Version: 4.9

Utility cabinet lock

The item below is intended only for a Utility Cabinet which has no service equipment fitted.

Unique Utility Box Key And Lock
This week I designed a new lock for a spare utility box outside our house. I suspect the gas utility supplier told the builder they could not use the original location due to its proximity behind the central heating system and directly below the exhaust flue!

So I have re-tasked the cupboard as an external water tap box. This will keep the tap warm in winter and secure. The water already runs on the other side of the wall to the central heating and there was even a hole through the wall for a water pipe.

To be able to use the Utility Box in this way we had to prevent any accidental entry to the wrong boxes. So we could not allow the standard Utility Box key to be used for this box. A custom key was required.

I designed a new key and lock based on the current lock and Thing 88,  created by Nophead. Using the STL to STEP conversion program to allow easy modification and a new key element to be added. I then measured the original elements, having removed the spring washer and parts from the box.

In the original design, the lever has a moulded triangle and uses a spring washer to retain the moulded part in place. This could simply have been inverted but would have meant the key would be very unique and annoying if lost. Additionally the standard cabinets may be opened by utility company service personnel. Any implementation should not be mistaken as simply a key they may not seen before even if they were inexperienced. Despite there is nothing dangerous inside the box.

There are two parts to the lock, the barrel which has a square drive to mate with the lever. The whole assembly is kept together with a stainless steel screw inside the box. Holding the lever against the barrel through the cabinet door via the square drive. The key shown at the top of the image fits from the outside as if its a normal key but will not open the standard utility cabinets. As it can't drive the triangle form used on a standard cabinet. Printing used the parameters shown above. The Key prints in one piece (upside down from that shown in the image).

'Hey - Presto' new key and no risk of people going in the wrong box. A unique solution for a unique situation. If we loose the key, the unit can be opened with a standard Allen Key. In the event we move, no issues for new occupants either, although I will leave the original parts in the box.