CNC Software and Interface Questions

slow-poke

Registered
Registered
Joined
Dec 9, 2016
Messages
294
I'm going to try and CNC my LC-30A mill on the cheap. My thoughts at this point are:

  • Use NEMA 34 stepper motors (about 500-900 oz-in)
  • Make suitable brackets etc to mate motors
  • Scales TBD (optical or magnetic?)
  • Stepper driver: Gecko or similar
  • Unknown interface between scales and PC?
  • PC (running Windows and TBD software)
  • CNC feedback will be based on scales not stepper pulses or rotary encoder data, to null effects from ACME screw backlash.
  • The software should display X,Y,Z data, when using the machine manually
  • Goal is to have tolerances of about 1 mil in aluminium (plenty close enough for what I do)
Something like this:

Block Diagram.png
Does this seem like a sensible approach?
What low cost (or open source) PC based CNC software would you guys/gals recommend?
Suggestions for interface between scales and PC?

Thanks in advance for your ideas and suggestions.
 
I'm going to try and CNC my LC-30A mill on the cheap. My thoughts at this point are:

  • Use NEMA 34 stepper motors (about 500-900 oz-in)
  • Make suitable brackets etc to mate motors
  • Scales TBD (optical or magnetic?)
  • Stepper driver: Gecko or similar
  • Unknown interface between scales and PC?
  • PC (running Windows and TBD software)
  • CNC feedback will be based on scales not stepper pulses or rotary encoder data, to null effects from ACME screw backlash.
  • The software should display X,Y,Z data, when using the machine manually
  • Goal is to have tolerances of about 1 mil in aluminium (plenty close enough for what I do)
Something like this:

View attachment 234612
Does this seem like a sensible approach?
What low cost (or open source) PC based CNC software would you guys/gals recommend?
Suggestions for interface between scales and PC?

Thanks in advance for your ideas and suggestions.

I would go with Mach3. Even though there is no further development it is still a robust and fully functional product. The support base is huge. At $175.00 from New Fangled Solutions for a license you get a lot for your money. If you shop around you can find it cheaper. Mach4 is the new kid on the block and receiving all of the development support. Have a look at the Mach support forum and read some of the questions being asked about both products. This will give you a feel for the issues others are having. I have no experience with Linux so cannot comment.

NEMA 34 motors will be fine. I recommend you go with one's on the upper end of your oz-in scale. Have a look at eBay for motor kits. You will find good prices on motor, driver and power supply combos. Longs Motors and Wantai Motors are two of the larger sellers. I bought my electronics from Wantai and have no complaints with their product or service.

Why not go with ball screws? With acme lead screws you will be dealing with backlash and friction issues. Again, look on eBay. Linear Motion Bearings is a good source. I paid slightly less than $200 for my X, Y and Z axis custom machined screws, single ballnuts, and angular contact bearing blocks delivered to my door.

Keep asking questions. You will find lot's of support on this forum. We are here to help.

Tom S.
 
Your approach is perfectly sensible, this is exactly how my machines work. The problem is that I don't know how to meet all of your requirements inexpensively.

Magnetic scales are about US$120/axis, so that is a reasonable cost. I prefer magnetic scales to glass scales. Much more compact and pretty much bullet proof.

The problem is the interface board, they are not cheap, and I don't know how to meet all of your operational parameters without using an actual motion controller board. You have to close the loop at the hardware level, it can not be done at the PC level. Most of the ''motion controllers'' you find on Ebay are not motion controllers, they are USB pulse generators. A real motion controller does its own trajectory planning and makes sure the motors are doing what they are told to do. You can buy used industrial motion controllers for about US$400 and up.

Although Mach3 is the most popular software for hobby machines and it is a PC based motion controller, it is an open loop system. In other words, Mach3 has no idea what the actual machine is doing. It will however read the encoder feedback from a motion controller, but it does not use that feedback, it just displays it for the operator. The DRO display does work when running manually. I got around the Mach3 limitations by writing my own CNC software. My software is absolutely free for now, but the downside is that it will only work with Galil Motion Control products.

@TomS suggested Wantai or Longs, I agree. Both seem to be good. I have bought a number of Wantai steppers & drives.
 
As TomS mentioned, Ball screws are the way to go. Even if you have "closed loop" feedback from scales, you will only have accurate positioning under "stop" motion. Under interpolation, such as cutting circles or compound shapes, the system won't be able to accurately compensate for the backlash to give you smooth/accurate curves. If you imaging cutting a circle both the X and Y axises will be moving in both the + and - directions as different quadrants of the circle are cut. Even though the software will know the position of the table, it won't be able to accurately compensate for the backlash in order to keep the axises in sync or "Lockstep" as needed to cut an accurate circle or curve. Hope that made sense.
 
Last edited:
Your approach is perfectly sensible, this is exactly how my machines work. The problem is that I don't know how to meet all of your requirements inexpensively.

Magnetic scales are about US$120/axis, so that is a reasonable cost. I prefer magnetic scales to glass scales. Much more compact and pretty much bullet proof.

The problem is the interface board, they are not cheap, and I don't know how to meet all of your operational parameters without using an actual motion controller board. You have to close the loop at the hardware level, it can not be done at the PC level. Most of the ''motion controllers'' you find on Ebay are not motion controllers, they are USB pulse generators. A real motion controller does its own trajectory planning and makes sure the motors are doing what they are told to do. You can buy used industrial motion controllers for about US$400 and up.

Although Mach3 is the most popular software for hobby machines and it is a PC based motion controller, it is an open loop system. In other words, Mach3 has no idea what the actual machine is doing. It will however read the encoder feedback from a motion controller, but it does not use that feedback, it just displays it for the operator. The DRO display does work when running manually. I got around the Mach3 limitations by writing my own CNC software. My software is absolutely free for now, but the downside is that it will only work with Galil Motion Control products.

@TomS suggested Wantai or Longs, I agree. Both seem to be good. I have bought a number of Wantai steppers & drives.

Jim,

Thanks for responding, can you provide a link to the magnetic scales you describe above?
 
The company is Ditron, in China. Here is a link to the product page http://www.dcoee.com/page188?product_id=20 They seem to be slowly working on their website, and it is still not complete. I hope you can read Chinese. Contact: sales@dcoee.com

I have attached a pdf brochure that does not seem to be available on the internet. I am using what they show as a DMR 500 unit, but I think the correct part number is DMR 100 for the 1 micron read heads that I am using.

The good news is that their products seem to work better than their website. The documentation I got with my DRO was very clear and readable, written or translated by a native English speaker. The only problem I have experienced so far it getting the proper stainless steel protective cover tape for the magnetic strip. I think they call it a stainless steel band. It should be a 10mm wide strip with a sticky back, that is not what I received, still working with them on that. I may have to send them a sample.
 

Attachments

  • DM.pdf
    1.4 MB · Views: 10
Added a short link to Yuri's Toy's site as well. Some really neat info there.
http://www.yuriystoys.com/p/android-dro.html

the Ditron stuff is really reasonably priced, besides the mag/glass scales, if you wanted to include an actual DRO for anything, they have 2 and 3 axis versions. come's w/ mounting arm and power cord. I think I paid like $70 for it.

Keep us posted and enjoy the project.
 
To me the real question is what do want to accomplish. Do want to make the conversion the new/added hobby? You said on the cheap so I would assume that just buying a cnc machine is not a consideration.


Sent from my iPhone using Tapatalk
 
For the price of the scales and the hardware + software to have closed-loop trajectory planning, you could substitute ballscrews for the acme axis screws. Most servo systems, commercial included, close the encoder/position loop to the servo drive but not to the controller. The servo drive will report position error to the controller and trip out if the error becomes too big. This arrangement works quite well with decent ballscrews and reasonably high-count encoders.

What you're describing is closing the loop to the controller and NOT the axis drive. Your controller software/hardware will need to be running a PID loop, and even then the backlash will cause serious dithering (hunting) unless you soften the PID settings so much that it ruins your accuracy.

The only "DIY" motion control software/hardware setups that can close the loop back to the controller I know about - and I'm not an expert - are:
1. Galil
2. LinuxCNC with Mesa cards
3. Granit Devices
3. KFlop
4. Machdrives

The Machdrives appears to be an interesting development. Both the rotary encoder and the glass/mag scales signals are sent to the servo drive, and the servo drive does all the heavy lifting. Mach3 just tells the drive where to go and how fast, and the drive gets the machine to position very accurately. You can use 'dumb' software and a cheap BOB and the servo drive takes care of accuracy. The downside is that they only interface with DC servos, otherwise I'd have bought some to play with already.

However... you still have acme screws. They are slow, have backlash, require far greater axis motor torque, and wear out more quickly than ballscrews. Climb milling will become very unfun unless the acme nut is tightened to the point of serious drag.

If you want cheap - here's cheap:
1. Mach3
2. Stepper motors
3. BOB
4. Ballscrews.

Thousands of reasonably useful machines have been built around this recipe. Mach3 and other controller software have backlash compensation that works fairly well once you spend some time tuning it.

If you want to upgrade:
5. Motion controller (Ethernet Smoothstepper, KFlop, UCCNC UC300/400ETH, PMDX 4xx, etc.)
6. Closed loop stepper and stepper drives

Further upgrades:
7. Servos
8. Servos with linear scale feedback to controller - the unicorn.

It all starts with mechanical accuracy, and the ball screws are the ticket.

Unknown interface between scales and PC?

If such a thing existed, and was cheap, don't you think that every CNC machine would be based on acme screws? Hell, I'd sell my steppers and ballscrews on Ebay and buy about 20 feet of 1/2-13 galvanized allthread and some window crank motors and start machining to tenths. If you decide to make one, I'll buy it from you.

And here's the thing - you're starting with a round column mill. Yuck. Go back and read my post about round column mills just a few threads earlier in this sub-forum:

http://www.hobby-machinist.com/threads/cnc-a-harbor-freight-33686.57303/

Good luck.
-S
 
For the price of the scales and the hardware + software to have closed-loop trajectory planning, you could substitute ballscrews for the acme axis screws. Most servo systems, commercial included, close the encoder/position loop to the servo drive but not to the controller. The servo drive will report position error to the controller and trip out if the error becomes too big. This arrangement works quite well with decent ballscrews and reasonably high-count encoders.

What you're describing is closing the loop to the controller and NOT the axis drive. Your controller software/hardware will need to be running a PID loop, and even then the backlash will cause serious dithering (hunting) unless you soften the PID settings so much that it ruins your accuracy.

The only "DIY" motion control software/hardware setups that can close the loop back to the controller I know about - and I'm not an expert - are:
1. Galil
2. LinuxCNC with Mesa cards
3. Granit Devices
3. KFlop
4. Machdrives

The Machdrives appears to be an interesting development. Both the rotary encoder and the glass/mag scales signals are sent to the servo drive, and the servo drive does all the heavy lifting. Mach3 just tells the drive where to go and how fast, and the drive gets the machine to position very accurately. You can use 'dumb' software and a cheap BOB and the servo drive takes care of accuracy. The downside is that they only interface with DC servos, otherwise I'd have bought some to play with already.

However... you still have acme screws. They are slow, have backlash, require far greater axis motor torque, and wear out more quickly than ballscrews. Climb milling will become very unfun unless the acme nut is tightened to the point of serious drag.

If you want cheap - here's cheap:
1. Mach3
2. Stepper motors
3. BOB
4. Ballscrews.

Thousands of reasonably useful machines have been built around this recipe. Mach3 and other controller software have backlash compensation that works fairly well once you spend some time tuning it.

If you want to upgrade:
5. Motion controller (Ethernet Smoothstepper, KFlop, UCCNC UC300/400ETH, PMDX 4xx, etc.)
6. Closed loop stepper and stepper drives

Further upgrades:
7. Servos
8. Servos with linear scale feedback to controller - the unicorn.

It all starts with mechanical accuracy, and the ball screws are the ticket.



If such a thing existed, and was cheap, don't you think that every CNC machine would be based on acme screws? Hell, I'd sell my steppers and ballscrews on Ebay and buy about 20 feet of 1/2-13 galvanized allthread and some window crank motors and start machining to tenths. If you decide to make one, I'll buy it from you.

And here's the thing - you're starting with a round column mill. Yuck. Go back and read my post about round column mills just a few threads earlier in this sub-forum:

http://www.hobby-machinist.com/threads/cnc-a-harbor-freight-33686.57303/

Good luck.
-S

Thanks for the thoughtful explanation, the picture in my head is getting a little clearer.

Today I mounted an old VGA display adjacent to the mill and ordered a mini-ITX PC board that should run MACH3. I also requested a quote from Ditron for DMA/DMS scales. So slowly moving forward. First goal is to get the DRO function working with the Ditron scales. So now I need to find a suitable break out board that will accept the RS422 DRO signals. Suggestions anyone?
 
Back
Top