Update on the Never-Ending Printer Project

I installed the Y-axis screw drive in MegaMax using the old NEMA-23 stepper motor.  A couple really good things came from this:

1) I can now adjust the bed leveling screws from the underside of the bed using thumbwheels instead of a screw driver.  I know, I know, everyone else in the world has been able to do this from day 1…

Thumb screw for leveling print bed.   Screw is threaded into teflon block.

Thumb screw for leveling print bed. Screw is threaded into teflon block.

 

 

 

 

 

 

 

 

 

2) Unlike everyone else in the world, with fully supported linear guide rails, the print bed does not move in any direction but along the Y axis.  In the old scheme, with the end-supported round guide rails, the rails would flex and the bed would move up and down when applying pressure to it (sometimes even the screw driver pressure to adjust the bed leveling screws).  Now, if the bed moves at all in the vertical direction it’s because the bed plate (1/4″ aluminum) itself is flexing!

A couple bad things were also discovered:

1) The vibration and noise problem I was hoping to solve has not been solved.  It has been made worse, though the character of the noise is improved to musical tones instead of just harsh buzzing and rattling.

2) Several failed test prints at ever decreasing jerk, acceleration, and speed settings have demonstrated that the old motor simply doesn’t have enough torque to drive the screw reliably at reasonable printing speeds.

Shift occurred in Y-axis due to insufficient motor torque.

Shift occurred in Y-axis due to insufficient motor torque.

 

 

 

 

 

 

 

 

 

 

 

 

Further research into the first problem indicates that the vibration and noise are inherent in using steppers, and worse in MegaMax than in machines that use NEMA-17 motors because of the higher detent torque in the NEMA-23 size motors.  Detent torque is the little bump-bump you feel when you turn the motor shaft by hand.  The solution to the problem is to use a good driver for the motor and a higher voltage power supply.  The little A4988 chips in the Pololu drivers on the RAMPS board are very unintelligent- all they do is provide microstepping.  They work OK for NEMA-17 size motors because of the speeds and low detent torques in those motors.  When used with NEMA-23 motors the driver limitations become apparent – as they have in MegaMax- lots of noise and vibration.

Good stepper drivers are DSP based and automatically sense resonance and damp it electronically.  They use phase controlled sine wave currents to drive the motors smoothly.  Fortunately, DSP stepper drivers for NEMA-23 size motors are pretty cheap.   Here’s video of the DM542a driver pushing a NEMA-23 motor around.  I have ordered a DM542a driver.

The best power supply for stepper drivers is not a switcher, and running steppers from a switching supply will often result in a dead power supply.  I will be building a simple, unregulated transformer, rectifier, and filter cap supply to go with the new driver.

Next came the question of how to determine how much torque is needed to properly drive the Y-axis.  A bit of research took me here: Motor size calculator.  You just select the scheme for which you want to size the motor, enter the appropriate data, and it magically tells you how much torque you need to do the job.  When I ran the numbers on MegaMax, it told me that I need about 350 oz-in of torque (about double the torque of the motor I have).  I did a quick search and found a Chinese made (of course) 425 oz-in motor for $50.  Also on order…

The motor mount I am using is designed for a NEMA-34 size motor with which I use an adapter plate to allow the NEMA-23 motor to fit.  Since I’m buying a new motor anyway, why not just get a NEMA-34 motor?  It turns out that the best stepper for the job is generally the smallest motor that can provide the necessary torque.  A NEMA-34 motor could provide much more torque but the detent torque and rotor inertia would work against smooth and fast operation, and require a bigger power supply.

Back side of MegaMax showing motor mount, adapter plate, flexible coupler, and drive screw  in Y-axis.

Back side of MegaMax showing motor mount, adapter plate, flexible coupler, and drive screw in Y-axis.

 

 

 

 

 

 

 

 

 

 

 

The ATmega2560 and RAMPS boards will be replaced by a SmoothieBoard.  It has a much faster processor, much better connections for motors/external drivers, etc.  It currently lacks an easy way to add an LCD controller, so I may have to connect to a computer to start prints up (it has ethernet and a built in web server so it can be accessed from any computer on the network).  When a clean way to add an LCD controller becomes available, I’ll add it.  SmoothieBoard review

 

The never-ending 3D printer project

MegaMax has been and continues to be my main project for the last 2+ years.  I am currently working on some upgrades that will make him more Mega and even more Max.  The Y axis is being converted from belt drive to screw drive and the round guide rails are being replaced with linear guides and bearing blocks.  The X-axis will also get converted to linear guide and bearing block and change from 5mm pitch belt to 2 mm pitch belt drive.  I feel confident saying that once these modifications are complete the flaws/errors in prints will be due primarily to the nature of liquid plastic squirting through a nozzle, not positioning system errors.

I recently updated my web site with a sort of historical look at the project, including all the mistakes I’ve made along the way and the often failed attempts at correcting them.  Here is the page that shows how it all started, how it has ended up, and where it is going.  http://mark.rehorst.com/MegaMax_3D_Printer/index.html

Don’t ask me why I do this-  I have no choice.

MegaMax beginning

From this…

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MegaMax present state...

To this…

MegaMax is Too Noisy

As part of my effort to reduce the noise and vibration in the Y axis, I am going to try using a screw drive instead of the 5mm pitch belt.  I rescued a screw drive assembly from a big XY table but it uses a 200W servomotor for which I have neither power supply nor drive electronics.  Never fear!  The motor was a NEMA-34 size, so I designed an adapter to mount the NEMA-23 stepper that MegaMax uses in the NEMA-34 motor mount.  Next I needed a shaft coupler- the screw has a 9mm diameter attachment and the NEMA-23 motor has a 1/4″ shaft.

Adapter plate on NEMA-23 motor

Adapter plate on NEMA-23 motor

 

 

 

 

 

 

 

 

 

 

 

 

 

I used DesignSpark Mechanical to design the motor mount adapter and  flexible shaft coupler.  I uploaded the motor adapter to Thingiverse (http://www.thingiverse.com/thing:526424) and it proved surprisingly popular so I designed another that adapts a NEMA-23 mount for a NEMA-17 motor (http://www.thingiverse.com/thing:526443).  I had to make two attempts at the flexible shaft coupler- the first design proved a little too springy and flexible, so I tried again with a more beefy design.  It turns out it is pretty easy to design this sort of thing in DSM.  I probably spent 30 minutes on the first one and about 10 minutes on the second one.

I sliced in Cura because Slic3r was having some problems.  The prints look a little rough because of all the support material required to print the springs, but they work fine.

Flexible shaft couplers

Flexible shaft couplers- not-so-springy and super-springy.

 

 

 

 

 

 

 

 

 

 

 

 

Adapter and shaft coupler on motor

Adapter and shaft coupler on motor

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Motor mounted on screw assembly

Motor mounted on screw assembly

 

 

 

 

 

 

 

 

 

 

 

 

I’ll post an update when I get the screw mounted on the machine.

 

 

$5 Upcycled Desk Clock

Last summer I came across a collection of car parts at a garage sale; instrument clusters, lights, gauges, and some digital clock displays.  For $5, I became the proud owner of a JECO Japan, vacuum fluorescent clock display.  The plastic housing held all the clock electronics, membrane buttons for setting the time, and a four-pin connector.  After powering it up, I realized one of the pins could be used to dim the display, which is a pretty nice feature to have.

I’ve worked on it off and on for a few months, but finally decided to finish it this weekend.  On Saturday, I tweaked some dimensions and laser-cut the final enclosure.  I wasn’t happy with the button holes and text I had on the front of the first iteration, so I got rid of them for the final.  You can adjust the time by slipping a jeweler’s screwdriver or a paper clip through a gap in between the plexiglass sides and pressing the buttons to add hours or minutes. 

I added a small single-pole, double-throw toggle to switch between bright and dim, then soldered the connections before closing it up.  The whole thing is clamped together by a single #10-32 machine screw and a wingnut.  The final result doesn’t look half bad.

CNC Mogul Introduction

A few weeks ago Mike Stone of CNCMogul.com visited the Milwaukee Makerspace.

Mike donated one of his machines to the space for testing and feedback as well as to use for the membership. It should also be mentioned that Mike is local and has his shop and distribution in Wales, Wisconsin.

Joe Rodriguez built one machine and I also put one together at our shop at home. So here are some thoughts on the process as well as some pictures. It isn’t a review as these machines haven’t really been put to the test as of yet. Time will tell.

The CNC Mogul is a general purpose 3 axis CNC kit that is relatively easy to put together and can be used for anything that you like. I’ll be using ours for routing and Joe wants to make a CNC plasma cutter with the one in the space. The basic kit is affordable and it uses the Makerslide as it’s building blocks. The stepper motors are run with a rack and pinion setup on aluminum tracks and gearing as well.

The controller is a Chinese Tb6560 Stepper Motor Driver Controller that is controlled via parallel port.

The power supply is a 24V 14.6 AMP 350W Max Power Supply.

The whole kit can be ordered online from 2ft X 3ft up to 4ft X 8ft. Custom dimensions are also available.

So here is the kit before assembly. This is a 3ft x 3ft kit that I will be building and using with a router.

This is the kit right before opening.

This is the kit right before opening.

Inside the kit there are a bunch of baggies with tons of little parts. You can look at the manual here

I’m assembling the quad rail kit. Once I start pulling things out of the box there is an amazing array of parts that explodes out of it. Fortunately each bag and part are well marked.

Everything that you need to build your own CNC controlled machine.

Everything that you need to build your own CNC controlled machine.

cncmogul03

Everything is labeled really well.

Everything is labeled really well.

Everything is labeled really well.

Everything is labeled really well.

The kit took approximately 3+ hours to put together. The documentation in the manual is hit or miss. The pictures are extremely good and really help in putting this together. The accompanying text is also great for the first 1/3 of the manual and then you’re left to interpret pictures from there. There are a few questions that came up while building this but fortunately I was able to figure it out.

Little by little the parts are being built.

Little by little the parts are being built.

After the gantry gets built and all of the wires are connected it’s time to test. CNC Mogul recommends using Mach 3 for your machine control. And even has a few pointers on how to setup Mach 3 on their site.

I decided to go with LinuxCNC because it’s open source, I’m comfortable with Linux and it’s low cost (free). I loaded it up on a spare computer and after running through the instructions I was able to control the stepper motors on the Mogul.

What I had difficulty with is that the CNC Mogul uses an “A” axis and “Y” axis slaved together. LinuxCNC can do that but you can NOT test for that in the setting up process. You essentially tell the “A” axis to use the same step and direction pulses as the “Y” axis. I also inverted the “A” axis so they would turn the same direction when they are facing each other.

One of the other difficulties I had was figuring out the leadscrew pitch to enter into LinuxCNC. After some experimentation 1.27 inches per revolution seems about right but some more testing is needed.

Once you’re finished building the whole thing you need to mount it to something. I picked up a Craigslist find and the Mogul fit perfectly.

I generated some G-code from Vectric’s Vcarve Pro Zeroed each axis and started to cut.

I still need to put a waste board down and face it off flat and put some type of work hold-down system in place.

After the unit gets setup in the Makerspace the members will have access to the machine and we’ll see how durable it is.

The CNC Mogul with router mounted and ready to cut.

The CNC Mogul with router mounted and ready to cut.

Total time to build, test, and implement the whole system has been approximately 6 hours. There is still some testing and tweaking to be done as well as putting in a dust collection system.

If there are any questions feel free to ask me either on this post or in person. I’ll be putting this through it’s paces as well.

My 2nd test using the CNC Mogul with 2 types of router bits.

My 2nd test using the CNC Mogul with 2 types of router bits.

SnakeBite Extruder Works!

I repaired the Budaschnozzle hot-end over the weekend and bolted the SnakeBite extruder to it and then to MegaMax and tested it last night.  There’s plenty of tuning to do, but the first print looks promising:

 

Start of SnakeBite’s first print

 

More of SnakeBite’s first print

 

Not too pretty but it shows promise.

Not too pretty but it shows promise.

3D Printable Thermal Enclosure For 3D Printer

Well, OK, not the whole enclosure, just the parts that hold it together.

MegaMax can print big stuff but he’s had problems with large prints delaminating.  The answer seems to be enclosing the printer to keep the prints warm while printing.  I designed this box and 3D printable parts to hold it together so that I can take the box apart easily to work on MegaMax or move him to other locations and put it back together when I’m done.  The box is 38″ D x 28″ H x 32″ W.

box door open

 

 

 

 

 

 

 

 

 

 

box door closed

 

 

 

 

 

 

 

 

 

 

 

 

 

The box is made of 1″ PIR foam with corners suitably notched to accommodate the printed parts.  MegaMax has a 450 Watt heater in the printbed so the box gets super-toasty inside.  I suspect it gets a little too toasty but haven’t made any measurements yet.  I’ll soon be moving the electronics out of the box.  I didn’t do anything to seal the seams in the box because it doesn’t seem to be necessary.  I did tape the edges of some of the foam boards with clear packing tape to prevent damage.

Design and stl files are available at http://www.thingiverse.com/thing:269586

Snakebite Extruder Testing

rev7 extruder with hot-end

 

 

 

 

 

 

 

 

 

 

 

 

One of the biggest problems with FDM 3D printing is hot-end jamming.  There seem to be a lot of causes, most of which are not readily identifiable when a jam occurs.  One thing I have found is that after a hot-end jam I can usually grab the filament and manually push it and get it flowing through the hot-end again, though it is too late to save the failed print.  The most common means of driving the filament into the hot-end is to pinch the filament between a gear and a bearing and have a motor drive the gear, either directly (with 1.75mm filament) or via a gear reduction/torque multiplier arrangement (3mm filament).  When the hot end jams, the large force applied by the gear over the small area of the filament that is pinched between the gear and bearing usually chews a divot in the filament thus destroying the grip.

A couple weeks ago I started designing a 3mm filament extruder for 3D printing.  My hope is that this extruder will provide sufficient force on the filament to prevent hot-end jamming from ruining prints.  My design uses two counter-rotating 6-32 nuts twisting on the filament (like the way your hands twist in opposite directions when you give a “snakebite” to your friend) to drive it into the hot-end.  One is a normal, right-hand threaded nut, the other is left-hand threaded.  When the nuts turn in opposite directions, the torque that would try to twist the filament is cancelled while moving the filament forward and reverse without twisting.

The motor has to turn about 1.26 times to move 1mm of filament so there is a huge torque to axial force conversion.   The gear diameter is about 30mm.  That 1.26 rev moves the gear about 119mm at its perimeter.  That means there is about a 119:1 increase (ignoring losses in the gears, bearings, and nuts) in the force at the filament compared to the force at the gear.  That force is applied over a larger area of the filament than the usual pinch arrangement, so it is less likely (I hope!) to carve the filament and lose grip.  I tried stopping the filament by grabbing it with my fingers and holding as tightly as I could but it didn’t even slow down.

The firmware in the printer has to be tweaked so that it knows exactly how many steps of the motor are required to drive 1mm of filament.  The formula is:

32 rev/ 1 inch  X     1 inch /25.4 mm   X    200 steps/1 rev    X  16 microsteps/1 step   =  4031.496 microsteps/mm

For initial tests I just input 4031.5 using the rotary encoder on the LCD interface to the RAMPS board in MegaMax.

Here are the parts that I used:

Left hand threaded tap:  http://www.amazon.com/gp/product/B006YITGY8

5mm brass tubing:  http://www.ebay.com/itm/360828686174

5x16x5mm (625Z) bearings:  http://www.ebay.com/itm/321062568303

Plastic gears:  http://www.sciplus.com/p/PLASTIC-GEAR-SET-WITH-BUSHINGS_40234

I also used a NEMA-17 motor from a QU-BD extruder.

You can DL the STL files for the printed parts here:  http://www.thingiverse.com/thing:261037

Test printing will start in the next day or so and I will post another video showing success or failure.

Fingers crossed!