25 Minute CNC digitizing probe

On a whim I decided to whip together a collet mounted Z depth probe for my CNC machine.

It took 25 minutes and works GREAT!

Construction


Select 1/4″ aluminum rod to fit my 1/4″ collet


Measure length that I think will fit into the collet with clearance for the switch and wiring, marked with a pencil.


Clamp into a vise and cut with hacksaw. Be sure to wear eye protection. I used hardboard to protect the soft aluminum from being gauged and pressed out of shape in the vise.


Use a hacksaw to cut a square notch into one end. I cut just off center down the middle by eye about half an inch then cut sideways from the thinner side to remove D shaped slug leaving a D shaped semicircular shaft.


The rod was slightly oversized and would not fit properly into my collet.

 
I clamped it into the chuck of my drill press and used a file on the spinning rod to reduce its diameter until it fit. Files are designed to be pushed away from the operator so be sure to pay attention to the direction of rotation and file, this results in pushing the file away from you pressed against the right side of the cylinder in a standard drill press.  Of course, only test the fit when the drill press is off and stopped.


You could also use sandpaper if a file is not available, but it will take longer.


I used the file to take sharp corners off business end.


Align the switch with the cutaway in the end of the rod and mark the height of the mounting holes in your switch on the round part of the D.
Notice the pencil marking near and on my finger.


Use the hacksaw or file to cut a notch in the back round D part at the height you marked.  This will be needed to hold the switch securely in place later.


I selected a long length of stranded wire with an RCA connector on one end from the junk wire drawer. Just about any flexible wire will suffice, just remember that the wire will repeatedly flex with the motion of the machine so should not be too stiff and ideally should be stranded, not solid conductor type.


I grabbed a microswitch and soldered the wires to the “C” common and “NC” normally closed connections. You want the switch normally closed so that if there is ever a fault or broken wire the CNC digitizer will detect the open circuit right away and interpret that as contact with the workpiece while probing.. If you wire it normally open and a connection is broken then the CNC machine will try to probe right into your workpiece. (unless, you make a mistake I did, but more on that later…)

To attach the switch to the D shaped end of the aluminum rod. I lashed the switch to it using a twist tie, for a more permanent connection add a drop of epoxy between the switch and metal.


Strip the insulation off a twist tie.  It is easiest to remove 1/2″ – 3/4″ sections until you have a fully stripped steel wire rather than try to strip very long sections in a single go.


Thread the twist tie through the mounting hole in the switch twice.


Slide the D shaped portion of the aluminum rod into the wire loop and start twisting the wire ends by hand.  Be sure the wire seats in the slot you sawed or filed in the back of the round part of the “D”.


Tighten the wire using pliers being careful not to break the wire or delicate plastic part of the switch. You may need to wiggle the switch in order to seat it properly on the rod aligning the hole with the groove for a tight fit.

At this point I also bent the end of the metal switch plate slightly a few mm from the end to provide more springy direct contact right under the tip of the center of the probe to ensure the metal arm is what makes contact and closes the switch rather than pressing the microswitch under the arm directly down on the workpiece.


Tie the electrical wire to the shank for a strain relief and attach the wire to your machine so that it does not get pinched or caught in moving parts.


Completed probe elevated and engaged.

Wiring and configuration

Wire your probe. I threaded mine conveniently through the spiral compressed air hose.
Connect your new probe to your controller’s digitizer input.

Note: Wiring and configuring your motion controller is not included in the 25 minutes.
I had already wired and configured a digitizer for Mach 3 using a Xylotex motion controller on the parallel port.

You will need to configure your CNC controller to accept a probe and wire it accordingly. On my parallel port connection on the Xylotex motion controller I wired a 10k resistor from the probe pin to +5 and wired the switch between the probe pin and ground so when the switch is normally closed, the pin reads “0”, and when the switch is depressed the circuit to ground opens and the pin is pulled up to +5 and reads a logic “1”. I offer this as an example for my configuration but you should check your controller and software manuals to determine correct wiring for your equipment.


In Mach 3 I can test my digitizer probe by looking at the diagnostics screen. When I press the button I can see the digitizer input light up telling me that the switch is working and the software is configured correctly.

Test function and repeatability


To test the digitizer function I issue a G31 Z-1 F10 command. This tells Mach 3 to move Z to -1 at a feedrate of 10 inches per minute (ipm) and to stop when the digitizer is engaged.


To test reliability and repeatability I issued this command 12 times and recorded the Z height where the probe engaged each time.  I entered these measurements into a spreadsheet to calculate the minimum, maximum, average and standard deviation of the samples… this probe was reproducible with a standard deviation of 0.000824″, under a thousandth of an inch. This is great for woodworking or PCB engraving.

Test engraving on a non flat surface

To really test it I mounted a piece of melamine on a set of 1/4 inch shims to create a severe slope and performed a standard engraving cut.

As you can see, any slope or irregularity is a nightmare for engraving with a “V” bit. High portions of the work surface are engraved too deeply and lower portions may not be engraved at all resulting in an uneven line width.

I used ScorchWorks G-Code Ripper to generate a new gcode file from the first one that included probing and compensated for the measured work surface elevation in the g-code.


When I engraved the new g-code (on the right) it started by probing the surface, then asks the user to switch to a cutter bit and completes the engraving operation. This sample was engraved to a uniform depth which is an improvement but I still didn’t know how to set an accurate zero depth so it is too deep.

The final missing piece was to figure out a way to register the probe zero height to the cutter z height.


My collets do not allow reproducible tool height location so I had to find a workflow to zero each bit during the machining process. Here is what I found:

Make sure your gcode contains an M6 manual tool change operation and that your controller pauses and allows you to change bits, jog, and reset zero z (or alternative similar functionality)

  1. Install the probe in the router
  2. Move to the X Y origin over the workpiece
  3. Probe to the surface G31 Z-1 F10
  4. Zero X, Y, Z
  5. Start the g-code with probe operations, it will probe the surface, and then pause (be sure your router does not get turned on or it will rip your probe wiring to shreds)
  6. When you resume the gcode it will pause again for the tool change.
  7. Replace the probe with the cutter
  8. Manually jog to X=0 and Y=0
    (In my Mach 3 controller I cannot execute gcode like G0 X0 Y0 during a tool change, I have to jog manually)
  9. Manually jog z to the work surface and manually zero Z.
    I use a 0.001″ thick JOB rolling paper as my machinist mentor taught me. Place the paper under the bit and move it down one thousandth at a time until it just pinches the paper then either type .001 into the Z DRO or just zero Z if a thousandth of an inch is not critical.
  10. Jog Z up a little to clear the workpiece
  11. Turn on the router
  12. Resume g-code program to complete the machine operations

These steps are meant for you to understand the operations I had to go through with my machine to get great results. You may have to adjust these steps for your software/controller.

It works perfectly!

The source artwork is really not intended for engraving, it’s just something I grabbed to run some tests, please don’t judge the it too harshly.  You can see that the depth of cut is uniform across the finished piece.  This would engrave just as well on a curved or irregular workpiece as well.


This is particularly impressive considering how deliberately un-level the workpiece was fixtured.

Not just for engraving…

This isn’t just helpful for engraving, I recently used probing to correct for the irregularities in 4′ x 8′ sheets of 1/4″ plywood.  These sheets can be warpy and wavy by over 1/2″ on a large part.  Normally I would have to cut many passes with the 1/4″ bit potentially deep into my spoilboard to ensure good cuts.  My machine is slow and those extra passes cost a painful amount of time.  With probing I was able to cut each part out of the irregular 1/4″ thick material using a .3″ cutting depth and a 1/4″ endmill in a single pass with excellent results, several times faster than it would have taken me in the past.


Here is a custom organizational shelving unit I made for a friend, it turned out great.

Links:

ScorchWorks G-Code Ripper
Mach 3 CNC Controller
Xylotex CNC Controller and stepper motors

It took less than 25 minutes to make the probe while taking all these pictures along the way!  It took under 20 minutes the second time (see below), and it took waaaay longer to write this blog post.

I hope this was helpful, or at least entertaining.

D. Scott Williamson
Compulsively Creative

P.S. Test your probe and wire it carefully!


At the beginning of the first large scale plywood cut my CNC machine made several successful probes of the surface then plowed into the table with slow deliberate force destroying the probe switch. 
Upon close inspection, the alligator clips I hastily used to mount the probe for initial tests were still in use and shorted together bypassing the fail safe and switch operation resulting in the crash.  It’s a good thing that it did not create a dangerous situation.
I was able to re-cut the end of the rod and install a new switch in under 20 minutes which after careful rewiring has operated reliably ever since.

Maker of CamBam supports Workshop 88 makerspace!

HexRay supports Workshop 88 with a complimentary
CamBam site license & member discount!

Workshop 88 would like to extend a big thank you to HexRay for supporting the our CNC efforts by allowing us unlimited use of CamBam on club Windows and Linux computers plus a discount on CamBam to Workshop 88 members.

For more information about CamBam, check out their website: http://www.cambam.info/

From the website:

CamBam is an application to create CAM files (gcode) from CAD source files or its own internal geometry editor. CamBam has many users worldwide, from CNC hobbyists to professional machinists and engineers.
CamBam currently supports the following:

  • Reading from and writing to 2D DXF files.
  • 2.5D profiling machine operations with auto-tab support
  • 2.5D pocketing operations with auto island detection
  • Drilling (Normal,Peck,Spiral Milling and Custom Scripts)
  • Engraving
  • True Type Font (TTF) text manipulation and outline (glyph) extraction.
  • Conversion of bitmaps to heightmaps
  • 3D geometry import from STL, 3DS and RAW files
  • 3D waterline and scanline machining operations
  • Extendable through user written plugins and scripts

Be sure to check out their CamBam bundles with Mach 3 controller and CutViewer too.  Personally, I purchased the full CamBam + Mach 3 + CutViewer bundle; I couldn’t beat the price and I’ve been happy with them to this day.

As if that wasn’t good enough: “Unlicensed CamBam installations will continue to work after the 40 evaluation uses are up and allow editing drawings and viewing toolpaths.  However, g-code output is limited to 1000 lines, so another option is for people to work on designs at home, then bring them in to the group’s licensed computers to generate g-code.”

This level of support from HexRay is fantastic and something Workshop 88 greatly appreciates!


I have been using CamBam as my go-to CAD-CAM software for many years, to see a sampling of the kinds of things it can do, take a peek at some of my personal CamBam projects:

3D vacuum forming mask mold master for independent movie

Utility shelf for beverages and keys

Wall artwork – Wooden V

Engraved Bahr family crest

Atari Adventure engraved sign

Philosophy Custom Guitars engraved sign

Working miniature TV

Halftone portrait

Stay tuned to see CamBam powered Workshop 88 CNC projects!

…and on behalf of Workshop 88:

THANK YOU Andy @ HexRay!

If you’d like to find out more about Workshop 88, please contact us:
http://blog.workshop88.com/interact-with-us/ or stop by our weekly open house any Thursday evening after 6:30pm.

D. Scott Williamson
Compulsively Creative

3D Printing PLA on a flexible metal build plate

3D Printing PLA on a flexible metal build plate

By D. Scott Williamson

I love 3D printing.  I’ve designed and printed hundreds of models on the Replicator 2 and have developed many useful skills and techniques. The Replicator 2 has a non heated polycarbonate build plate with MakerBot emblems laser cut into one side and the other side is frosted.

I don’t care for having the MakerBot logo in relief on the bottom of my prints so I print on the frosted side of the platform.

These are rafts but I don’t like having the MakerBot logo embossed on my work.

This worked well for hundreds of prints but eventually, scraping the prints off the platform smoothed the rough surface and parts started sticking harder and harder to the build plate.  Ultimately they stuck so hard that the force required to get a spatula or razor under a part started cutting grooves into the build plate.

Two of the most common 3D printing problems are related first layer adhesion to the build platform…

If the first layer does not bond well enough it can result in corners lifting especially for broad parts on unheated platforms.  In the worst cases the part breaks completely free from the platform partway through a print leading to a stringy mess, wasted time and filament, and in rare cases the PLA can stick to and damage the insulation on the print head.

Catastrophe! Lifted corner, parts broke free, filament everywhere, and damaged thermal insulation on the print head.

If the first layer bonds too well to the build platform the part or platform may be damaged when removing the part.  When using blue tape, it may not be possible to completely remove the tape from the part.

I started using blue painters tape and Aqua Net hairspray on the build plate.  I found this combination to work well with PLA, though I’m not sure how necessary the hairspray is.  The problems are that the tape is damaged when removing most prints so needs to be reapplied frequently and can be difficult or impossible to remove from the bottom of finished parts.

Blue tape stuck to part.

Sometimes it’s impossible to remove all the tape residue.

Blue tape doesn’t last long and requires sticky messy maintenance.

I considered a heated build plate, and glass or metal build plates when the idea occurred to me to try to use a flexible metal build plate. I conducted several experiments using a cable chain model that is challenging to print due to fine detail and thin parts that need to bond well in the first layer.

Experiments

Experiment #1: Aluminum flashing with 2 coats of hairspray dried with heat gun and held by binder clips

First I tried aluminum flashing with hairspray.

  1. Measured and cut the aluminum on a paper cutter and nibbler to perfectly fit the build plate

    Aluminum flashing on roll with Replicator 2 build plate

    Rough cut aluminum.  Use gloves, sheet metal is sharp.

    Cut aluminum to size on the paper cutter.

  2. Rolled flat

    Thin sheet aluminum was curled and needed to be flattened.

    Rolling the thin rolled sheet aluminum flat with pipe on foam.  A towel could have also been used underneath the material.

  3. Cleaned with alcohol to remove oils/grease

    Cleaned the sheet aluminum with ammonia and alcohol.

  4. Coated one side with a thin film of hairspray, let it dry, and applied a thicker coat of hairspray

    Two coats of Aqua Net hairspray applied.

  5. Dried the hairspray with heat gun

    Used heat gun to rapidly dry the hairspray.

  6. Clipped aluminum to build plate with binder clips at the edge

    Aluminum plate clamped to build platform.  (The clip in the upper right corner is about to get knocked off.)

  7. Leveled the build plate to account for the thickness of the aluminum plate
  8. Printed a test

    The PLA bonded weakly to the platform and the parts detached easily in the second layer.

    The upper right and lower left clamps had to be moved because the print head knocked them off.

The nozzle interfered with some of the clips and knocked them off.  The PLA did not adhere to the build plate.  Failure.

Experiment #2: Aluminum flashing with wet hair spray and binder clips

Aluminum flashing with wet hairspray yielded the same results.  Failure.

Experiment #3: Aluminum flashing with glue stick held by clips

Using the back side of the same build plate I used a generous layer of glue stick.

  1. Using the back of the cut aluminum plate from Experiment #1
  2. Coated the plate with glue stick
  3. Clipped aluminum to build plate with binder clips at the edge where the nozzle would be less likely to interfere with them

The PLA adhered wonderfully and the print turned out great.
When done I removed the aluminum plate and was able to remove the print by bending the plate – Success!
But the aluminum does not lay flat and the part left dimples in soft thin aluminum plate before letting go.  I need a stronger material.

Experiment #4: Steel sheet with glue stick held by clips

I scrounged around and found a stiffer steel plate salvaged from a magnetic children’s book many years ago.  I did not try to cut the steel plate to fit the platform because I don’t have a shear and did not want to dull my paper cutter cutting steel.  I can cut the steel on the metal shear at Workshop 88.

  1. Using paper towels, I cleaned the steel plate with ammonia to be sure to remove oil or grease, then with alcohol, and finally with tap water
  2. Coated the plate with glue stick
  3. Clipped steel plate to build plate with binder clips at the edge where the nozzle would not interfere with them
  4. Leveled the build plate to account for the difference in thickness between the aluminum and steel plate
  5. Printed another test

The print turned out great!

But the plastic clips that hold the build plate to the printer are raised causing the plate to be irregular and warped and not flat against the polycarbonate platform beneath it.

If you remove a print by flexing the steel it pops right off but it is still possible to dimple the steel this way.  The dimples can easily be gently pounded out with a broad hammer with the steel on a flexible surface like a neoprene mouse mat or a towel.  Parts firmly attached to the steel are easily removed using a spatula and/or a razor so dimpling turned out to be a non-issue.

Experiment #5: Steel sheet with glue stick held by magnetic sheet

To get the platform to lay flat on the platform I attached a sheet of flexible rubbery plastic “refrigerator magnet” material originally intended to be a furnace vent cover to the platform with double sided tape.

  1. Cut magnet to size
  2. Attached magnet to build plate using double sided tape and pressed it flat using a rubber roller
  3. Aligned the steel plate with the platform and when laid flat the magnet holds it firmly and flat
  4. Leveled the build plate to account for the additional thickness of the magnet layer
  5. Coated the plate with glue stick
  6. Printed another test

Best results yet!

Excellent first layer adhesion with fine detail.

The build plate is flat and level, firmly attached to the platform in the center without using clips which makes it very easy to insert into and remove the plate from the printer.  The finish on the bottom of every part is smooth and shiny, far better even than when printing with a raft.

Even though others reported using a coating of glue stick up to a dozen times, I found reused glue stick not to adhere well.  Adding layers of glue builds up, so every couple of prints I wipe the plate down with a wet paper towel before adding a new layer.

I’ve added alignment markings to the build plate to help install the plate consistently, to help center parts, and to help apply glue only where it’s needed for each print.

 Examples:

Markings help guide application of glue and placement of parts in MakerWare software.

Printed right where expected, with a beautiful first layer and finish quality on the bottom without a raft.

Extremely challenging pinhole lens print

This pinhole lens is .2mm thick and each hole is printed separately with 2 shells then the rest is filled in, if any pop off the build plate it will stick to the hot end and gather the rest into a blob of plastic.

This folding phone/tablet stand (http://www.thingiverse.com/thing:692523) is a favorite model in my house.  It’s a hinged phone/tablet stand that prints fully assembled. If you look carefully you can see that there is some slight curling. The plastic is pulling upward at the corners and even though it has not detached from the build plate it is deflecting it slightly up off the magnet.

The finish quality of the base is comparable to printing on glass.

Not every print has been perfect though, this is another phone/tablet stand that started to curl. The print head caught one corner and moved the entire build plate on the magnet. You can see it continued to print offset before I stopped it. It is impressive that it moved the whole build plate without detaching from the platform. I was able to reprint this model successfully. Only a heated bed or chamber can really prevent this issue entirely, but a stronger magnet may require more force to move.

Future work

  • Cut the build plate(s) to size on the shear at Workshop 88. The build plate is still larger than the platform and must bend to go over at least one of the platform holding clips.
  • Cover the entire platform with magnetic material.  The current magnetic material does not cover the entire platform, it is what I had on hand.
  • Find stronger magnets.  The print quality is wonderful but it is still possible for corners of large parts to lift the platform off the magnetic base while staying attached to the platform.
  • After I started printing on steel I found PRINTinZ’s flexible build plates.  I haven’t used them but check them out! http://www.printinz.com/printinz-3d-printer-plates/

Thanks for reading, and good luck with your 3D prints!

D. Scott Williamson
Compulsively Creative

CAD CAM tutorial

CAD CAM tutorial
by D.  Scott Williamson

This tutorial will show you how to use Computer Aided Design and Computer Aided Manufacturing or CAD CAM tools to create and preview a Gcode file of the Workshop 88 logo that can be run in a 3 axis CNC Mill.

Background

There are 5 main types of machine operations

  1. Engrave (follow path): The tool tip will follow the 3D path provided.
  2. Profile: The tool edge will follow either the inside or outside contour of a path down to the specified depth.
  3. Pocket: The tool will remove all the material within a contour down to the specified depth.
  4. Drill: A drill routine will be executed at each point location.  Drill routines come in 2 flavors:
    1. “Peck” used with drill bits, drills to successively deeper depths liftig the bit out of the work regularly to clear chips from the flutes.
    2. “Spiral” used with endmills that are a smaller diameter than the finished hole.
  5. 3D relief: The tool tip will remove material above a 3D surface usually specified in a 3D model or a 2D height map image.  There are two main modes:
    1. “Waterline” similar to inverted pocket operations where bulk material is efficiently removed outside the 3D model to a number of stepped depths resembling waterline in a topological map.  Typically used in a first pass with a large roughing bit to remove the bulk of the material.
    2. “Raster” moves the tip of the bit smoothly over the model in a raster pattern.

Gcode is a “numerically controlled programming language” which is why a Gcode file extension is typically .nc.  It is a human and machine readable text file.  You will rarely if ever need to look at or edit the Gcode.

Overview

This tutorial will demonstrate Engrave, Profile, and Pocket operations, which are the most popular.

There are 4 steps to this tutorial:

  1. Create a .svg file containing paths needed for machine operations
  2. Create machine operations
  3. Export Gcode
  4. Simulate, visualize and validate

Continue reading

We’re Hackerspace Passport Ready!

PageWstamp3788Thanks to the laser cutter, we now have an official rubber stamp, and we’re ready to provide Workshop88 visit chops to all our visitors with Maker Passports!  OK, as soon as one shows up.

Stamp3787But we now have the capability to make our own precision rubber stamps!  Rubber stamps.  Yeah, like in the paper-based olden days.  Well, I thought it was cool.

Some more details here.

W88 Laser Cutter First Steps

Cooling+Exhaust5838The dead laser cutter donated to us by Inventables after blowing one too many power supplies is running!  While not yet ready for prime time, a water cooling system in a bucket and a fume exhaust thru the flue from the old furnace allowed first tests.  The Shapeoko laptop hosts the RetinaEngrave software that makes it look like a Windows printer.

We’re still getting our feet wet with laser power, speed, number of passes, raster vs FirstCutWolfHead3529vector operations, but we’ve actually cut some paper, wood, and plastic.  This wolf head – courtesy of Google Images – DollGoggles6419adorning a circular saw push stick was the first actual cut.

Daniil had the honor of being the first to produce an actual useful object on the cutter.  We think his daughter will be thrilled with these laser cut, hot air station formed goggles for her skateboarding doll.  She’s been trying to get some for a whTripleSpiral1470ile now.

There’s still a lot of work to do making much more proper implementations of cooling and exhaust systems.  We need proper electrical connections to guarantee the cooling will be running if the laser is on, and a damper on the exhaust pipe to keep cold air out and the landlord happy.  Lots more Ts to cross and Is to dot.  But it’s actually cutting stuff and hasn’t blown up yet!

BlueTape4371Update 11/12/15:  The laser is coming along.  We now have “air assist”, and have done some more tests and cuts.  Here’s a test using painter’s tape to reduce smoke damage, and a nice W88 logo.

W88Logo3mmPly2334

Shapeoko 2 Calibration Tests

MicroscopeMounted2334_HDRWe did some interesting calibration checks on the Shapeoko 2 at the space last night.  Driver and viewer software for the USB microscope are now on the Shapeoko laptop.  With the ‘scope mounted to the gantry looking at the lines etched on an old-school vernier caliper body we observed average backlash (difference approaching a point from different directions) of around 0.009″.  Absolute accuracy varied from 0.003″ to 0.013″.  That latter worst case error is about 1/3 the diameter of the holes we drill in PCBs, and so is MicroscopeViewpotentially a problem.

There was some discussion of ways to improve the mounting of the drive belts.  With some evidence of belt stretch, replacing all the belts is also under consideration.  More details in this post on Jim’s project notes.

Thanks to Daniil, the SO2 now has a PWM speed control!  We have high hopes of adding closed-loop speed feedback to it soon.  We’re finally getting close to being able to machine plastic!  (That’s about impossible at the native 12K RPM of the spindle.)