Slant-Bed CNC Lathe Build

Well, it is for velocity/torque control & not position

While you are correct it is for velocity/torque control, but it positions quite well also in velocity mode. Just requires a closed loop and a motion controller designed for that system. Up until the new digital ModBus systems were recently developed, it was the defacto standard for most industrial CNC systems. It is still shipping on new machines today. With the proper stepper drive it is also possible to drive a stepper in velocity mode with an analog signal.
 
This drive responds to -10VDC to +10VDC signals, but all the motion controllers out there seem to be 0-+10VDC outputs

Have a look at ADCGAIN and ADCOFFSET on Mint Workbench help file. Together with a digital I/O pin, you may be able to adjust these on the fly. Depending on the state of the digital I/O, you would set ADCGAIN equal to 100 or -100, for example.
 
Just wanted to post something useful for anyone else hoping to cobble together a servo system: M23 connectors. Apparently this is the standard 'servo cable' standard connector in the industrial world, as opposed to something that's mil-standard and searchable. These have 23mm x 1mm cap threads, hence the name. What's nice about these, unlike the mil-std connectors, is there are only a handful of insert arrangements, which made it really easy to figure out which one I needed (the 16-pin one).

Moreover, these connectors are widely available on places like ebay or alibaba, some already in cable assemblies, for a fraction of the cost of even used "name brand" harnesses. So in summary; if you need a circular plug for a servo motor, PLC, or other industry-type automation, check out the M23 series along with whatever other hunches you suspect it might be.

TCB
 
Great project.I will follow your construction with great interest.
 
I see Karl_T tracked me down here as well...I hear from yet another forum's ancient posts, that you know about Galil motion controllers..?

Just some updates on the design's progress:

I've settled on my spindle bearings; working end will be a pair of 50x80x16mm 7010 P4 angular contact bearings, tail end will be a more pedestrian single 6010 deep groove bearing (a lower tolerance variety, since super-precision DG bearings are crazy expensive for some reason). Total cost seems to be about 250$ for all these, so a bit higher than I'd hoped, but probably worth it.

I think I've also figured out my spindle cartridge assembly (I want it to be easily serviceable since I predict fixing/tweaking will be needed at least once); AC bearings will press in from the working end against an internal shoulder & be captured by a bolt-on cover plate, two spacers (with integral grease shields) will insert from the rear against each set of bearing races and the sealed DG tail bearing will cap them off. At that point, the spindle shaft can be pressed through all three bearings with their inner races supported from the tail by the coaxial spacer, and the rear of the D1-4 mounting flange will nest into the cover plate to form a labyrinth seal. Once fully seated, the drive pulley can be keyed into place, and a jam nut will compress it against all the inner races. To disassemble, the outer race is pressed from the tail, the coaxial spacer pushing the AC pair out the front. Once they are freed, the jam nut is removed and the pulley & shaft slipped out. From there, the outer coaxial spacer can push the tail bearing back out the rear (likely not a tight press as with the AC bearings in any case).

It seems like it's simple & easy, but I dunno. My other thought was to have a simple single-diameter thru-bore, and have the AC bearings come up against a spacer sleeve that's fixed in the outer casing by set screw(s). At that point the whole mess could be pressed in/out from either direction before the shaft components are dissected by bearing pullers. Both seem equally non-adjustable for pre-load between the AC & DG bearings, but my thought is it may be unnecessary by virtue of the matched AC pair (at which point the spacers are simply there to aid in assembly/disassembly and to act as grease seals)

I've also been doing (a ton of) research into the electrical side of things; it appears I am at a fairly significant crossroads that will determine how I proceed. What I know for sure, is that I'll be running my servo amp in +/-10V analog "Velocity" or "Torque" mode (as opposed to step/direction, since those use different outputs on the controller & would require a physical switch & software reconfiguration every time I need to switch from spindle mode to axis mode)

Open-Source Solution: 575$
-Laptop PC (2.6GHz i7, ethernet E100 connection to controller)
-Linux OS
-LinuxCNC interface/G-code interpreter
-One of several open source GUI's
-Mesa 7i92 main board
-Mesa 7i76 stepper drive interface
-Mesa 7i77 servo drive interface

Junkyard Solution A.1: 575$
-Laptop PC (2.6GHz i7, ethernet E100 connection to controller)
-Windows XP (do emulators work?)
-Mach3, with Galil driver/G-code interpreter
-Used Galil 21xx motion controller
-Phoenix labs terminal block/breakout board

Junkyard Solution A.2: 1000$
-Laptop PC (2.6GHz i7, ethernet E100 connection to controller)
-Windows 10
-Mach4, with Galil driver/G-code interpreter
-Used Galil 41xx motion controller
-Phoenix labs terminal block/breakout board

Junkyard Solution B: 1000$
-Laptop PC (2.6GHz i7, ethernet E100 connection to controller)
-Windows OS/Linux OS
-LabWindows interface (and theoretical G-code interpreter)
-NI Motion GUI
-National Instruments FW-73xx motion controller
-NI Breakout panel

Pro/Cons:
Open Source Pro: likely to be supported & receive future development, highly modifiable/configurable
Open Source Con: laptop may have latency issues, does not appear to support articulated spindle-servo at this time (maybe)
Junkyard A.1 Pro: community knowledge of Mach3, Galil driver/interpreter is available but no longer supported
Junkyard A.1 Con: Galil driver is a bit antiquated, Mach3 company support is ending, I'm not sure if it supports articulated spindle
Junkyard A.2 Pro: Mach4 has more capability, Galil driver/interpreter is available & supported/developed, modern contour cutting mode
Junkyard A.2 Con: Cost, mostly, the added capability may also be totally unnecessary for my machine
Junkyard B Pro: currently supported, likely will continue to be since Labview is fairly common in universities, I think is highly programmable/configurable
Junkyard B Con: the motion-control side of NI seems surprisingly obscure, not much info out there to help set up a new system (let alone designing one), also cost

I welcome anyone's experience with any/all of these servo control solutions!

TCB
 
I just read your thread over on CNCzone... I've been a member there for more than ten years but don't go there often any more. Just found out my log in is no longer valid.

I've used Galil controllers exclusively on my CNC machines since about 2002, Mach2 before that, a DOS based stepper control (AHHA) before that. I certainly agree with Jim Dawson that a Galil controller is by far your best option. My understanding, Mach 3 over Galil just does not work well. I've only scanned the topic but mach 4 over Galil is not quite ready for prime time. Maybe you would like to be on the bleeding edge of technology here?

This is an overall comment from scanning the other thread:
Galil will run that servo spindle at 4000 RPM and index the spindle to the correct orientation. BUT your holding torque will be totally inadequate for milling. You could install a large brake. Maybe I'm missing something here on your project.


As an aside, I use Camsoft CNC controller. Its designed from the ground up to work with Galil. Its out of your price range at about $4K for the software. Worth every penny for challenging applications.
 
I certainly agree with Jim Dawson that a Galil controller is by far your best option. My understanding, Mach 3 over Galil just does not work well. I've only scanned the topic but mach 4 over Galil is not quite ready for prime time. Maybe you would like to be on the bleeding edge of technology here?
I think I'm doomed to being a bit bloody regardless, since I don't think anything but the 4000$ software jobs like Camsoft are turn-key. My understanding is that Mach 4 will be/is extensively developed for newer Galil controllers, but older ones are basically being left SOL since neither Mach3 nor the drivers will have continued support apart from hobbyists (who will trend more toward Mach4 in the coming the years). Apparently the ability to rapidly feed-forward large numbers of moves (the real meat of the 'contour mode' technology in newer drives) is a real dividing line between new & old equipment, and it appears the world is moving on from the legacy way of doing things. So I think I'll pass on the Junkyard A.1 Mach3 configuration, I think it will end up being too constraining (the fact I'd have to run XP is already pretty ridiculous, frankly)

"Galil will run that servo spindle at 4000 RPM and index the spindle to the correct orientation. BUT your holding torque will be totally inadequate for milling. You could install a large brake. Maybe I'm missing something here on your project."
My first goal is to get engraving working, and maybe small keyways; I'm really not capable of running a strong enough servo *and* live tool to do real milling in any case, simply due to my electrical supply constraints. If I can engrave/follow a complex surface with the tool I'll be happy (think a pyramidal form, or a shaft with a 'Pringle' surface on its end). I never planned on having anything bigger than 1/8" cutters in the mix, and probably ball-ends at that.

Once I get a better 30A power supply, then I'd be more interested in upgrading to a tougher motor, and a real live tool setup (as opposed to a Foredom or Dremel). I've seen some folks run a second worm-drive spindle "bull gear" that can be engaged along with spindle encoder or indicator, but the complexity & bulk associated with that is really something I'd rather avoid if possible.

If I'm going to the trouble of doing a single servo, it's not that much harder to also run a closed loop on the X & Z axes (and it looks like the prices on the encoder "servo-stepper" kits from China have come down a good bit). Or even real servos with a reducer gear (since they're about 1/4 the torque of similar-wattage steppers). Once again, it's really easy to add expense to this project, but with closed-axes, I wonder if one could actually program a "soft feed" that allows the spindle to stall a bit while cutting, but adjusts the other axes forward/backward along the toolpath until metal is removed & it can proceed?

TCB
 
Once again, it's really easy to add expense to this project, but with closed-axes, I wonder if one could actually program a "soft feed" that allows the spindle to stall a bit while cutting, but adjusts the other axes forward/backward along the toolpath until metal is removed & it can proceed?


I think that could be done with a closed loop system by gearing the axes together. Might require some experimenting. Mach3 will not do it, even with a closed loop system, Mach3 is still open loop. Mach3 has no idea what the machine is doing or where the axes are actually at. I'm not sure about Mach4, but I suspect that it works the same way. If the table is not where Mach3 expects it to be at a given time, Mach3 just plows ahead with the next commanded position anyway. Any error correction programming would have to be done at the controller level.
 
Ah, very good point; in that case something like LinuxCNC should have the edge, since the HAL or whatever is in direct (two-way?) communication with the I/O boards with no middle-man if I'm not mistaken. A cursory search suggests even Mach4 cannot close the loop at the software-interface level, because Windows is not a real-time OS (but LinuxCNC is)

I do wonder if the Galil could lend some aid in this area, since it's where the real-time synchronizing occurs. The box is in direct contact with the drivers/encoders so it knows where the axes are, and could report back to the controller software whether or not it has reached the desired waypoint, prompting the controller to send the next line or to wait for it to recover (or even walk backward through the code if pushed back to the previous waypoint along the current vector, instead of sending the next destination). Not unlike a software download manager doing checksums & handshakes if you think about it.

EDIT: Apparently that badass Vital System DSPMC supports fully closed-loop operation. They say for backlash comp, but I suppose that's essentially what I'm describing as far as a non-rigid spindle axis (it'd be gear lash in a worm-driven 4th axis arrangement as opposed to servo-stall)
 
Last edited:
Thanks for posting...... My next project is going to be a CNC lathe so your timing is great. I was thinking about the typical Chinese conversion as there is an extra 7x10 sitting on the bench, but your approach looks more interesting. I have looked many times at the Tormach lathe (while I like my 1100 mill) but think it is vastly over priced so the DIY approach appeals to me.

Thanks,
Robert
 
Back
Top