Prism Shaped Name Plate for Kaitlyn

I made a three sided nameplate for my goddaughter Kaitlyn’s 1st birthday.  The main body is basswood and “Kaitlyn” is inlayed on each side of the equilateral triangle.  The inlays were done using the v-carve inlay technique.  Each side has a different font and inlay wood type (walnut, wenge and padauk).  I used F-Engrave to generate the g-code for the inlays.  Below are some pictures of the final product and below I have a few in process pictures.

PB200006

PB200003

PB200004

PB200005

Here are a few in process pictures:

Pre inlay, the name has just been v-carved into the basswood

KIMG0211KIMG0212KIMG0213

Here is one side ready for gluing the wenge inlay wood into the basswood.  I started with a rectangular piece of basswood and when I cut it into the triangular shape I saved the cutoff parts to make a fixture for holding the part while v-carving on each flat side.  I made the fixture by gluing the cutoff parts to a piece of scrap.  You can see the edge of the fixture under the basswood in the picture below.

KIMG0221

Here is the part with all of the inlay parts glued into the basswood.  The last step in the inlay process is removing the excess material from the inlay wood.

KIMG0222

Finally a few close-ups for fun so you can see some of the detail.

PB250001PB250002PB250003

Everything went pretty smoothly except for the padauk side.  Red dust from the padauk spread all over the surface of the basswood while I was sanding the inlayed wood down.  I managed to remove most of the dust and finished by scraping the surface instead of sanding.  If I do a padauk inlay again I might try sealing the surface of the base material to minimize the amount of dust that can get trapped in the base material.

commentators (Custom)

BattleBots Spinning Top Arena with Makey Robot Fighting Tops

I made a mold for injection molding Makey Robot spinning tops a few weeks ago. The tops are designed to be giveaway items at Maker Faire Milwaukee 2016.  I plan to injection mold them and hand them out during the Maker Faire.  Below you can see a picture of the aluminum mold and a few of the Makey tops that I have molded while testing the new mold.

OLYMPUS DIGITAL CAMERA

With all these tops around the house I thought it would be interesting to have a small fighting arena for them.  It made sense to model the arena after the BattleBots arena since the tops that will be fighting in it will be Makey Robot tops.  Our family loves to watch BattleBots and I thought it would be a fun build just in time for the BattleBots season finally on Thursday (September 1, 2016).

Below you can see a short video of the arena and tops in action (we had a little fun with the intro.)  At the end of the video there is a an abbreviated build video.

SnapShot(26) (Custom)

Solar Wobbler Modification

 

Somewhere along the line the flower broke off of the solar wobbler that we had lying around the house.  When it broke I shoved it in a drawer thinking that I would modify it into something new someday.  I finally got around to pulling it back out of the drawer and fixing it up.  Below I layout the steps that I took to modify the wobbler.  More of the process can be seen in my Wobbler YouTube Video.  The 3D model of the wobbler I 3D printed is available on Thingiverse (3D Wobbler).

Step 1: Break your solar wobbler (mission accomplished)

SnapShot(1) (Custom)

Step 2: Carefully separate the two halves of the base outer housing.

SnapShot(2) (Custom)

Step 3: Remove the outer housing parts.

SnapShot(3) (Custom)

Step 4: Remove the leaf and flower components and remove the magnet

SnapShot(5) (Custom)

Step 5: Print a new wobbler part.  Use one of mine or design your own. The OpenSCAD files for my wobbler design is available on Thingiverse so you can modify it to make your own design.

SnapShot(6) (Custom)

Step 6: If needed finish the hole in the bottom of the wobbler to the tap drill size for a 1/4-20 screw thread ( #7 drill bit is best but a 7/32 bit would also work).

SnapShot(7) (Custom)

Step 7: Tap the hole in the bottom of the wobbler with a 1/4-20 tap.

SnapShot(12) (Custom)

Step 8: Finish the hole for the shaft (a small nail).  The finished size of the hole should be slightly smaller than the nail to produce a press fit.

SnapShot(9) (Custom)

Step 9: Insert the nail in the finished hole

SnapShot(13) (Custom)

Step 10: Press the nail into the hole using a vice, arbor press or pounding into the hole.

SnapShot(14) (Custom)SnapShot(15) (Custom)

Step 11: Screw in a small piece of threaded rod into the hole in the bottom of the wobbler

SnapShot(19) (Custom)

Step 12: Lock the threaded rod in place with a nut.

SnapShot(21) (Custom)

Step 13: Place the magnet on the bottom of the threaded rod.

SnapShot(22) (Custom) SnapShot(23) (Custom)

Step 14: Install the wobbler and check the clearance between the magnet and coil.  You want the magnet to be close to the coil without any possibility of making contact.  At this point it is a good idea to make sure everything is working properly.  Set the wobble on a table in a strong light.  If the wobble is not working well try flipping the magnet over.  The wobbler will work better with one of the two magnet sides facing the coil because the coil is only energized in one direction not an alternating direction.

SnapShot(24) (Custom)

Step 15: Reassemble the wobbler.  Before assembling mine I panted the housing black with Spray paint.

SnapShot(25) (Custom)

Step 16: Wobble….

HAD_wobble

My design is very simple and it works but I can only imagine that there are more creative people out there that can come up with far more elaborate designs for these cheap solar toys. Below is another version I made with my logo in place of the HackADay Jolly Wrencher.

OLYMPUS DIGITAL CAMERA

Homemade EDM (Electric Discharge Machining) Machine

I made the majority of this homemade EDM a long time ago.  Recently I have been finishing this project by making a better structure for the linear actuation, adding labels to the controls and other miscellaneous items.  In the video below I discuss the EDM and show a couple of the parts that I have cut.  At the end of the video you can see a short clip of the EDM in action.  At the end of this BLOG post I included pictures of a neodymium hard drive magnet cut using this EDM.

My homemade plunge EDM (electric discharge machining) machine built based on the book “Build an EDM” by Robert Langolois.  The book consists of a series of articles that originally appeared in The Home Shop Machinist.

I deviated from the book in a couple of ways. First I sourced some of the components from scrap electronics and an electric clothes dryer that I picked up for free on the side of the road. The main transformer came from a microwave oven along with a cooling fan. A smaller transformer was sourced from an old stereo. The heating coil that I used as a power resistor was also taken from the old electric clothes dryer.

Additionally I used a sand cast aluminum part to support the linear actuator components and finished the whole thing off with a few custom 3D printed parts to fasten the linear actuator parts together.

Here are a couple pictures of a neodymium hard drive magnet that I cut using the EDM.  Here is the before picture with the electrode that I used:
KIMG0029
This picture shows the magnet set up for cutting. The magnet is placed on a utility knife blade which is clamped into a small plastic vice.
KIMG0032 (Medium)
Finally here are the two parts created by cutting through the magnet with the EDM.
KIMG0039

 

 

ScorchCAD Updates (Version 2016.05.04)

ScorchCAD_444

In the past week I have updated ScorchCAD a couple of times.  The first update helped verify that the autocomplete function in the ScorchCAD Editor was causing cashing and other bad behavior on some android devices.  Since the autocomplete function was causing problems I added a menu option in the editor to disable the feature.  In the latest version the autocomplete function is turned off by default.  The reason I did this is because I imagine it would be very frustrating to download ScorchCAD and have it crash or otherwise act badly in the first few seconds of trying to write code in the editor.  So if you like the auto complete function you will need to enable it on your device after the upgrade.

The second Item that I want to mention here is another menu option that I added in the editor.  This item is called “Link File”.  “Link File” will automatically generate the OpenSCAD code to “include” a file from your devices file system.  The file to link is selected using a file selection dialog then the code to include the selected file is automatically generated.  This essentially links the external file to ScorchCAD allowing the user to edit the linked (included) file using an external editor of their choice.  To compile a file that was edited with an external editor it is just a matter of switching back to ScorchCAD and selecting the compile button.  The link command will also work with STL and DXF files.  STL and DXF files will automatically generate an “import” command rather than “include”.

F-Engrave 1.56: Better line/arc fitting and bug fixes

F-Engrave v1.56 is out with some bug fixes and better line/arc fitting.

There was a huge bug in the old curve fitting which caused the “M” in some fonts to be engraved wrong. This version fixes that and just makes the curve fitting generally better.
The output g-code generated by the new version can be as little as one quarter as many lines of g-code when compared to previous versions.

F-Engrave Download

OpenSCAD Modules for Automatic Fillets (and Radii)

before_after

Fillets in OpenSCAD are not a straight forward endeavor.  There have been many posts about the subject and many proposed solutions including libraries of generic fillet parts to be added to models.  The fillet type that I have been experimenting with uses minkowski sums to achieve the task on a model of any geometry.  Well, theoretically any model anyways.  The use of two minkowski sums in the process makes the procedure unpractical for models of significant complexity because of the time required to produce the result.  I do provide a partial solution to this limitation.  My partial solution is to isolate an area of a larger model for local fillet generation.  At the end of this BLOG post I provide a file containing modules for producing global or local fillets and radii within OpenSCAD.  If you want to know more about the steps taken to generate the fillets continue reading otherwise you can jump to the end to download the SCAD file with the modules.

The following steps are performed automatically by the modules included in the file at the end of this post.  These detailed steps and illustrations are provided for information purposes.

Original sample part: Here is our sample part, the second image shows the sample part with a transparent overlay of the sample part for reference.  The transparent part overlay will be included in the following steps for a visual reference of the original shape.

auto_fillet_step0a (Custom)auto_fillet_step0 (Custom)

STEP 1:  Perform a minkowski sum of the sample part with a sphere (or cylinder if only rounding one axis of the part).  (The image shows a slice of the minkowski sum for illustration purposes.  The full minkowski sum completely encloses the sample part.)

auto_fillet_step1 (Custom)

 

STEP 2:  Subtract the result from STEP 1 from a very large cube using a difference operation.  The large cube needs to be larger than the object being worked on.  This is analogous to inverting the normals on the model making a negative volume.  (CGAL and OpenSCAD do not support negative volumes so this is a work around)

auto_fillet_step2 (Custom)

 

STEP 3:  Perform a second Minkowski sum of the results from STEP 2 and the same sphere (or cylinder) used in STEP 1. NOTE: This is the most computationally intense step in the filleting process.

auto_fillet_step3 (Custom)

STEP 4:  Perform a difference operation to subtract the result from STEP 3 from a large cube.  The cube used in this step is slightly smaller than the cube used in STEP 2.  The remaining object has internal fillets with a radius equal to the radius of the sphere (or cylinder) used in the previous steps.  The top picture shows the object with the original shape shown transparent.  The lower image has the transparent original shape removed.

auto_fillet_step4 (Custom)auto_fillet_step5 (Custom)

This procedure works in the generalized 3D case with the size limitations I mentioned earlier. Additionally there is an analogous procedure to produce radii on external corners.  Below are images of a sample three dimensional parts with fillets and radii generated automatically using the module file I provide below.

Base 3D part:

3D_fillets_base_shape

3D part with Fillets (31 minute build time):

3D_fillets_31min

3D part with rounds (<1 minute build time):

3D_rounds_Xmin

3D part with fillets and rounds (80 minute build time):

3D_fillets_n_rounds_80min

As I mentioned earlier there is a partial solution to the model size limitation of this procedure.  This partial solution involves selecting a specific region of the model to be operated on and removing that region from the model while performing the operations.  After the operations are complete the removed section of the model is inserted back into the larger model via a union command.  This removal and re-installation of the sub-model is incorporated in the modules  provided in the .scad file linked at the end of this BLOG post.  To use the sub-modeling you just need to include a second object (child) in the module call to indicate the region to be operated on.  For example using the SCAD file provided if the module add_fillets is called on an object alone all of the internal corners will be filleted

add_fillets(R=sample_R)
{
    sample_object();
}

If you call the add_fillets module and you include a second object only the areas of the first object that intersect the second object will be filleted.  (in the example below the second object is a 10x10x10 cube.

add_fillets(R=sample_R)
{
    sample_object();
    cube([10,10,10])
}

Below are a couple of pictures of our sample object with localized region fillets and radii.  All of the pictures below used a sphere with $fn=20 for the radius generation.  The default in the module file provided is $fn=6 to ensure reasonable run times for the example object.

Local region illustrated by a transparent box:

3D_local_box

3D part with local fillets:

3D_local_fillets_41min

3D part with local radii:

3D_local_rounds_Xmin

3D part with local fillets and radii:

3D_local_fillets_n_rounds_67min

Finally, below is the link to the the .scad file containing the modules for fillets and radii.  The file also contains the simple examples shown in this post.  In addition to generalized fillets and radii the modules can be used to do single axis fillets and radii.  The single axis options (“x”,”y” and “z”) are much faster than the general option (“xzy”) so if you are only looking for a fillet in one axis it is better to use the specific axis you need.  Play with the examples to see how each option works.  The default “fn” value is 6 to keep the render time low.  To get more usable results that number will need to be increased.  (The sample images above used an fn=20).

Get the file here: fillets_and_rounds.scad

 

Stick Bomb Fixture

fixture2 (Custom)

I made a quick little 3D printable fixture to aid in the construction of stick bombs.  The type of bomb this fixture makes is my favorite.  If the bomb is long enough a wave forms along its length as the bomb explodes.  Below is an embedded video showing how it all works.  The fixture is available for download on Thingiverse (Stick bomb Fixture)

Lego model of a 3D Printer (Printrbot Simple Metal)

OLYMPUS DIGITAL CAMERA

My two boys love having a 3D printer in the house.  I have made a variety of items for them.  My 9 year old, Derek, came up with a great little Lego build.  He made a tiny Lego version of the Printrbot simple metal 3D printer that we have.

OLYMPUS DIGITAL CAMERA

He really captured the essence of the simple metal with incredibly few Lego pieces.  It is even sized about right to put it in the workshop in their Lego city.

OLYMPUS DIGITAL CAMERA

The parts you will need to build your own and an instructional video by Derek are below.

OLYMPUS DIGITAL CAMERA

CNC Lithophane Jack-O-Lantern

jackolantern

Halloween is approaching so I thought I would share the Jack-o-lantern that I made for Halloween last year (2014).   I carved an image, lithophane style, into a pumpkin.  The pumpkin is cut deeper where the image is lighter and less deep where the image is darker. This makes the image appear when the pumpkin is back-lit with a candle.  Various programs are available to generate g-code from an image in this way.  I used Dmap2gcode to generate g-code for my jack-o-lantern.

The g-code generated by Dmap2gcode is suitable for a flat surface but a pumpkin is not flat.  In order to cut the image onto the uneven surface of the pumpkin an additional step is needed.  I used  G-Code Ripper to add an automatic probing sequence to compensate for the non-flat pumpkin surface.  A makeshift probe consisting of a piece of aluminum foil and some alligator clips was used for probing the pumpkin (see video below).  Since the pumpkin was soft I was afraid that any other kind of probe might dent the surface before registering the probe data.

In order to hold the pumpkin I cut the bottom off of an ice cream pail and fastened it to the CNC machine table.  A ring of scrap wood kept the bucket from flexing to much when the pumpkin was placed in it.  Once the bucket was secure I simply placed the pumpkin in the cut pail.  Cutting the pumpkin didn’t generate any large forces because the pumpkin was so soft.  I didn’t have any problem with the pumpkin shifting during the probing/cutting process.  No large forces were generated but a lot of pumpkin flesh was flying around so I covered my machine with plastic sheeting.

OLYMPUS DIGITAL CAMERA

OLYMPUS DIGITAL CAMERA

If you didn’t recognize it the picture I used was a picture of Linda Blair from the the movie “The Exorcist”.  Below is a short video of the pumpkin being cut.

If you are interested in trying this process here are some of the details of my process:

  • I set the maximum cut depth to 3/8 inches in Dmap2gcode
  • I edited the picture so everything that was not of interest was black.  That way I can un-select “Cut Top Surface” in Dmap2gcode and the cutter will leave unimportant parts of the image untouched
  • I used a grid of 10×10 points for probing the pumpkin only a few of the probed points are shown in the video
  • After carving with the CNC machine I did some additional scraping of the inside of the pumpkin until I was happy with how much light was being let through in the image