Saturday, March 19, 2011

Reconfiguring the machine

I found today that my Linisteppers have the wrong transistors, which prevents them from regulating current properly. At 24v they were pushing enough power to bring my motors up to 240F. Rather than continue experimenting with the linisteppers I decided to set up with the Pololu drivers. When I get the right parts into the linisteppers I'll swap them back and compare performance.

While I'm taking the machine apart to swap motors, I figured I'd run a tap down the lead screws to clean up some rough spots that were causing lost steps. There was a particularly bad spot on the X axis that it would barely get past.

It will be interesting to see how this affects the movement.



Edit: Completely tearing down the machine and reassembling it ended up taking about 10 hours. I ran a die over 2 of the lead screws and a tap through the brass nuts. This has made the movement much smoother.

I also found that the linear bearings were not aligned as straight as possible, so that while they would run, they were binding as the balls circulated. I reseated a couple of them which improved the situation, most of them would run very nicely.

I did find that some of the PVC pieces that the linear bearings mount into did not have square edges. When screwed down they wanted to sit at an angle, which put the linear bearings out of alignment. I just ran them over some sandpaper to take down the edge, and they now sit straight. This seems to have smoothed out the rest of the motion in the linear bearings, all but one run pretty nicely now, and that last one isn't bad enough to make me want to do anything with it.

I've got all the motors mounted and everything squared up, next I'll have to wire up the Pololu drivers and get them stuck to a heatsink.

Monday, March 14, 2011

New Pololu driver carrier boards

My Pololu stepper driver carrier boards arrived today. I'm looking forward to comparing them to the linisteppers, and to seeing how my junk box nema 23 steppers compare to the nema 17's that came with the Zen Toolworks machine.


Friday, March 11, 2011

Zen Toolworks 7x7 3D

I've been wanting to get back into doing some CNC stuff, in particular the various RepRap-like 3D printing projects. Rather than building from scratch I decided I'd like to start with an inexpensive platform.

I poked around a bit and found the Zen Toolworks 7x7 machine is about right for price and size, and they've recently released a variant intended for 3D printing. It is the same as the standard 7x7, but has an extended height gantry that allows about 5 inches of table clearance.

I assembled the machine, but made the mistake of installing the Z axis plate the wrong way around, so that it hangs down into the workspace:

Oops. Obviously there isn't much table clearance here. It only takes a few minutes to remove and flip it.

I also built some Linisteppers that I intended to run the machine (that's them at the lower right in the image above). Unfortunately Linisteppers won't run the 4 wire NEMA 17 motors that come with the machine. I have some Pololu drivers coming, but I didn't want to wait around to get the machine moving, so I pulled some old 6 wire steppers from the junkbox (the blue motors on the mill table in the image). These are NEMA 23 though, so I needed to adapt them to the machine.

Since I don't yet have a 3D printer that I could use to whip up some mounting and coupling adapters, I went with something lower tech:


The shaft coupler is made of 1/4" I.D. polyethylene tubing, with a smaller diameter piece over the smaller shaft. I went with polyethylene instead of vinyl because it is more ridged, but it's also more slippery, so there might be some potential for loss of position during sudden acceleration. It's all held down with little worm gear hose clamps.

It's functional, but not nearly as pretty as the couplers supplied with the motor.

I'm putting off boxing up the drivers and moving the machine to it's home in the basement until I know what the final configuration will be. I want to compare the Pololu drivers to the Linisteppers before I decide what will be running the machine. The Pololu drivers will run the original motors, which from the specs appear to be about the same as these old salvage motors, and they are about a 10th the size of the Linisteppers, but the Linisteppers have some interesting points, and with the PIC MCU I have the option of doing some interesting things with them.

At this point I've got a Linistepper hooked up to an axis and I'm playing with driving it with an Arduino board. The Arduino has built-in USB, so I can send single-axis movement commands from the PC that the Arduino turns into step and direction commands to send to the Linistepper. Simple moves with no velocity ramping work nicely, and I can start at about 200 RPM (about 10IPM). That's actually not terrible, but I'm sure it can do a lot better with velocity ramping.

I'm writing some Arduino code to do velocity ramping based on the math from this EETimes article. Once I have that working for linear velocity ramps (fixed acceleration), I want to set it up with a table of acceleration values to see if a non-linear ramp (acceleration inversely proportional to velocity) improves the performance any more.

I had planned on running the machine with an old PC with a parallel port, but if I can get the Arduino working the way I want (2 axes per Arduino), and if I can get well coordinated motions with two Arduinos, I might just go with a USB controlled machine using 2 Arduinos as stepper driver drivers.