G0704 CNC AC Servo Rebuild (Picture Heavy)

The machine is now as good or even better then when I started this upgrade. I am going to hold off on actual machining for a little bit, but if I need to use it, it is ready to go!
 
Pendant is working!!! I haven't had a chance to use it in practice obviously, but I expect it will be in my top 3 favorite changes to this machine.

I won't bother to recreate the instructions, Andy at Warp9TD did a great job here. The things that tripped me up were the counts per detent = 4, and I incorrectly mapped the MPG to ESS Encoder 0 instead of Encoder Aux 0.

Following the instructions, I set the velocity and acceleration to 100%. This nearly shook the paint off of the walls when jogging in .01 steps due to the outrageous acceleration on these servos. I found 10% acceleration was snappy but much smoother, I might even go less. There is a small but still noticeable delay (might only be a few dozen milliseconds) from the click of the MPG to motion on the axis. I don't find it annoying, but it is present. My step settings are .0001, .001, and .01 which corresponds to (very roughly) 1, 10, and 100ipm respectively when the wheel is spun at a quick clip

In the 3 axis mach profile, I will map the 4th axis on the pendant to the spindle. In my 4 axis profile, it will jog the rotary table.
 
Hi all, been a little while since an update, but I think the machine is mechanically 100% done. There are still a few code changes and features I want to work on, but it all seems to be working great. I ran my first part since the update last night and it FLEW. Super excited. Here is the progression to where I am today:

Cables were carefully routed up the side of the machine and the back of the column. I decided to use the bottom of the machine cabinet as storage for the extra cable length of the spindle and Y axis motor cables. The yellow cables are M12 cordsets that connect to the PDB push button, solenoids, and the PC (power). The blue cables are Ethernet to the Smoothstepper and RS485 to the drives.

290710

I used a Greenlee punch set to knock two holes in the cabinet. Grommet edging was wrapped around the sharp edge and all the cables were pulled. The front hole was a last minute decison to allow easier storage/access to the cables for the 4th axis motor.

290711

Cable route across the monitor stand and loop into the bottom of the industrial PC. I had hoped to get them closer to the same length, but you can't see it behind the screen.

290712

I noticed the spindle was making a little noise and discovered the spindle tophat was rubbing on the pull plate. There was only a .005" gap on each side, so it isn't surprising.

290713

I chucked the piece (fully assembled) in my lathe and indicated the off center hole into alignment, then took a skim cut to open it up a few more thou. This really fixed all the noise coming from the spindle.

290714

I continued on my quest to get the spindle perfect by measuring the installed depth of the tophat relative to the drawbar. Unsure where the error came from, but the threaded length of the tophat was .016 too long. This pressed firmly into the pulley and side loaded the upper deep groove ball bearings.

290715

I turned up a plastic split bushing to hold the tophat for back work.

290716

I indicated in the axial runout to sub .0005" and took off around .014". When reassembled, the spindle runs freely and I can tighten the tophat all the way down until the spindle hits the internal shoulder. There is still a thou or two of preload on the pulley but this is fine and helps hold it in place.

290717

I ran the spindle up to 5000rpm for 90 minutes and here are the (relatively) steady state performance metrics:

Lower bearing temperature: 149*F
Upper bearing temperature: 153*F
Head casting (middle): 143*F
Motor (Top): 158*F
Spindle Nose: 129*F
Tool holder (End of Collet nut): 90*F

Motor running amps: 1.4A (12A = 1800W)
Heat loss into spindle assembly: 208W
Relative spindle efficiency: 89%
Noise Level: 80dBA at 3" microphone 90 degrees to machine, 73dBA at 18" microphone 90 degrees to machine

All in all, spindle runs hotter than I would like but not dangerously so. Noise level is very acceptable and no squealing, ticking, rubbing, or other bad sounds are heard.
 
Continued...

Here is the machine as it stands. The X axis cable (wrapped in white spiral wrap) is a little annoying, but only drifts in front of the screen when the table is moved far to the right. There is little pressure or flex imposed on the cable, so it should last a long time.

290718

Cables are neatly routed along the side of the spindle and tucked into the cable chain.

290719

Last week I purchased a Harbor Freight Fortress 2 Gallon, 1.2HP silent air compressor in hopes that I could use it instead of my other HF 8 Gallon 2HP machine gun. I got it on sale for $160. My shop is in the basement of an old 1900's era house that has absolutely zero sound proofing between the floors. I can have a conversation with my fiancee through the basement ceiling as if she were standing next to me. Needless to say she does not appreciate me running the old compressor when I am working in the shop, so I was buying gas duster cans for my little odds and ends cleaning jobs in the shop.

I can't believe how well it works. It certainly isn't silent, but it is no louder than the furnace blower turning on and quieter than the lathe running (which I have running really quiet). My phone app had it in the low 60 dBA at about 1'. My major concern was how much air it would put out, and honestly I think it does as well or better than my other compressor. I have the tanks daisy chained together so I have effectively a 10 gallon tank. My fiancee didn't even notice the first few times it turned on.

The HF one has a steel tank that needs to be drained, but that is fine. It runs up to 135 psi and has two quick disconnects (that are a little hard to connect when under pressure). Without the other tank connected, it cycles up to full pressure in 10-15 seconds. Maybe a minute to do the tank from empty. A nice surprise for me was the compressor turns ON at 105 psi which was higher than the 90 for the other compressor and makes the CNC run better. All in all I would definitely recommend for anyone who works in a small shop and has limited compressed air needs.

290720

The Power Drawbar needed the riser posts cut to the correct height to allow the cylinder to push on the end of the drawbar. Here are all the PDB parts laid out.

290721

About 0.29" of height were removed and the piston just clears the drawbar when not activated. Roughly 3/8" of the 1/2" stroke are needed to release the tool (which works perfectly until the air pressure drops below 100psi).

290722

Here it is installed. There is no longer room to fit your fingers in between the pieces, but I still will add some guarding. That would really do some damage to your hand.

290723

X axis all the way right to show cable routing. Not ideal but I don't have another Idea right now. Look at the bottom of the column to see the bundle of servo and control cables coming up from the side of the machine.

290724

Rack of TTS style tool holders. I don't think Tormach makes the electronic edge finder in the top left corner anymore. I love that thing so I better be very careful to not crash it.

290725

290726

Ran a sample part (2.125 x 3) out of PVC. Basically just some 3D adaptive roughing (50% stepover, 50% stepdown, 4000rpm, 75ipm) and some high speed finishing (.050" stock remaining, .02 stepover, .0002 scallop height, 200ipm, 4000rpm). Very fun to watch. I had the rapids limited to 5% at first and 30% after that and it was still flying! Total machining time, including some very slow work at the beginning was 15 minutes. This would have taken hours before. Wall finish was not all that good, but I ran it dry and I think the plastic got mashed into the wall of the part. I think a faster spindle speed, slightly slower cutting speed, and some coolant would get this looking better. That being said, the pictures look much worse than it does in person. Floor finish was excellent. This is where the machine's accelerations really shined!

290727

290728
 
Thanks for the picture-heavy updates.

BTW, your lathe looks familiar.
And your timing is perfect - I'm gathering parts to swap over to a servo spindle and servos on all 4 axis now.

290743
 
Thanks for the picture-heavy updates.

BTW, your lathe looks familiar.
And your timing is perfect - I'm gathering parts to swap over to a servo spindle and servos on all 4 axis now.

View attachment 290743

Ah! Looks similar! I'm jealous of your backsplash, mine did not come with one. I walk behind it every day to clean.

That's awesome! Whose drives are you looking at?
 
Came home after work, turned on the machine, loaded another piece of PVC, homed, and hit go. It made another identical part exactly where it was supposed to in 20 minutes. I cleaned up and shut down no longer than 30 minutes from when I got home. This is what CNC was meant to be like :) I used to wish I had a manual mill so often because I did not want to set up the CNC, turns out that avoiding adding limits and homing was just making my life harder. The jog pendant is also a crazy useful contraption. I've found that above 30-40% on the rapid override, the very sturdy monitor mount really starts to shake. I'm not too concerned about damaging the computer itself, but it does get annoying to see it shaking all over. This is less of an issue about the monitor mount and more a comment that the machine's accelerations are ridiculous.
 
Whose drives are you looking at?

DMM Tech NEMA 34's, 750W with the DYN4 drives so I don't have to have a separate AC/DC PSU. Z will have a brake, X/Y/A will not. I didn't see the point of a brake on the 4th axis as it's a 50:1 drive and I can't back-drive it by hand with the stepper off right now.

It's a linear rail machine and I'm cutting >50lbs off the head weight with the spindle and servo upgrade, so it should move pretty well.

Also switching over to a UC300ETH/UB1/UD1 motion controller and BOB(s) as I'm out of inputs now.
 
I spoke with Mike Li at IGStool.com (sales@igstool.com) and his current offering for TTS compatible tool holders (ordered directly from him) is:

  • ER20 with TTS compatible ATC groove 1.38" long 3/4" shank, $17 USD
  • Set Screw endmill holders with TTS compatible ATC groove (1/8, 1/4, 3/8, and 1/2"), $18 USD
  • FMB22 Face mill holder with TTS compatible ATC groove (looks like a common size for cheap import facemills, 22mm bore), $19 USD

In addition, the related ebay page offers non-ATC geometry collet chucks in the following sets:

  • ER20 1 pc., $17 USD + $13 shipping
  • ER20 5 pc., $70 USD + $23 shipping
  • ER20 10 pc., $120 USD + $50 shipping
  • ER16 10 pc., $120 USD + $50 shipping
  • ER16 Floating Tap holder (requires modification to work with TTS) $70 + $16 shipping
  • ER32 10 pc., $120 + $60 shipping
  • ER32 5 pc., $80 + $36 shipping
  • ER25 10 pc., $130 + $60 shipping

I've been using these non-ATC ones for a few years (not sure if I got them from him) and have been happy. I don't have an ATC so it wasn't a big deal. The ones I have have runout between .0005 and .0025. The low runout ones are pretty good, but the high runout ones are only good for roughing.

Mike stated that if any chucks were found to have runout exceeding their stated tolerance (<0.01mm = <.0004") they would replace them with new units from their US stock.

I am going to order a few of the ER20 ATC chucks and make sure I get ones with acceptable runout. I will probably then use these most of the time and use my old ones for less accurate tools.
 
So this is going to take a little bit of a programming twist for a bit. I'm pretty happy with how Mach 4 is working and feel quite confident I can use it to make parts better than before. So now I want to add a few bells and whistles.

I have already gotten the Pneumatic Drawbar working with a simple LUA script (although interlocking it with the spindle is stilled needed). My next project is going to be significantly more complex.

All the servo motors on this machine are powered by Ultra 3000 AC servo drives. The drive has an embedded serial port which allows peer to peer communication on RS232 and multidrop communication on RS485. I already have a fully functioning RS485 network to allow me to connect to the drives through their configuration software. Thanks to this I know that the network/com port/RS485 converter is working correctly.

The drives communicate through an ASCII serial host command protocol documented in Rockwell Automation publication 2098-RM003. The first time I went through this manual it was very intimidating, but the interface is actually quite simple. A drive will never transmit on its own and responds when spoken to. All commands start with a colon and follow a similar format :aapppfdd..ddcc<cr> where aa is a two digit network address (my drives are 0-5), ppp is a parameter code which states what the command does (eg. read position, set torque limit...), f is a function code (0 = read, 1 = write, 2-9 do other stuff), dd..dd is a data block of variable length (typically between 0 and 8), cc is a checksum whose derivation is detailed in a Rockwell application technique document, and <cr> is a carriage return.

If I desired to know the number of encoder counts of the X axis motor relative to the home position (think absolute homing here guys!) then I would transmit the string :0007E0BF<cr>. I would then receive the string back from the drive similar to :0007E0000006DB13<cr>. This response says the address 00 (X Axis) is responding to the parameter and function 07E0 (Motor Position - Read Working Value) and the value is 0x000006DB (that is 1755 counts in decimal form). The drive also appends a checksum which I can verify for data integrity and a carriage return to end the transmission.

When Ultraware (the servo configuration utility) is open, it streams data constantly to update diagnostic values on screen. I connected my laptop to the network and monitored the traffic using PuTTY a terminal emulator. I was able to count 7424 data packets received in roughly 60 seconds. Since half of these are drive responses, we can say that at a minimum I can transmit 3712 packets per minute or ~62 per second. This might actually be quite a bit higher if I were to ask Ultraware to talk to all 4 drives at the same time. Talking network bandwidth for a minute, 8N1 format at 38400 baud assuming an average command/response length of 14 bytes, this gives a rough ceiling of 137 packets per second. If I increase the baud rate, this capacity goes up drastically until at some point, the drive response time becomes the limiting factor. Mach 4's PLC macro runs at a default 50ms or 20Hz so this base communication rate will likely be more than enough!
 
Back
Top