Machsupport Forum
Mach Discussion => General Mach Discussion => Topic started by: discountBrainSurgery on July 29, 2022, 01:01:04 PM
-
I've built two CNC machines to run on parallel circuits. Is there a version of Mach 3 for USB (serial) cables?
-
Yes but you need a USB connected motion controller such as the UC100 from cncdrive. This has a Mach3 plugin that allows Mach3 to drive it. I have a lathe and mill both of which use the uc100. Initially I used them with the same xp pc I used with the parallel port but now use a win10 mini machine. I didn't even need to redo the ports&pins config! The uc100 is built into the shell of a db25 connector and plugs directly into the breakout board. The usb cable plugs into a miniature socket on the back of the shell.
-
Thank you very much. I may come back for more as I investigate UC100.
-
Happy to help. If you go this route make sure you get the genuine uc100 as there are clones that don't work very well with no support. There is a good cncdrive support forum and I've found the company very responsive.
http://cncdrive.com/UC100.html
-
Thank you again. Before you replied I went to their site and saw their strict warning about the clones. But... as far as I can tell, there's no way to purchase one. There's not even a price listed. I sent them an email about it. On another subject but still having to do with my original post, do all breakout boards use a parallel port input so that you either have to have a parallel ported PC or a UC100?
-
http://shop.cncdrive.com/ ??
It looks like you must be on US east coast? I'm sure they have agents in the US even if they can't ship direct.
-
The link you posted above (http://shop.cncdrive.com//) takes me to their products page but the UC100 is not shown there. Just curious-- how did you know I was on the east coast (actually in the SE)?
-
I found it. It was listed in the controller subcategory.
-
Hi,
beware that there is many a Chinese knock-off UC100 on Amazon and Ebay. If you are going to buy a UC100 make sure its the genuine
article, the Chinese rip-offs are not a patch on the real thing.
Depending also on your electrical environment you may find USB to be subject to electrical noise and fail in service. A very short USB cable is required, a long cable is inviting
trouble. In this regard Ethernet connected motion controllers are much better, for instance the UC300 which is also made by CNCDrive.
Craig
-
Still curious to know: Do all breakout boards use a parallel port input so that you either have to have a parallel ported PC or a UC100?
-
"In this regard Ethernet connected motion controllers are much better, for instance the UC300 which is also made by CNCDrive." I'll go back to their website and take a look. Didn't notice it before.
-
Hi,
Still curious to know: Do all breakout boards use a parallel port input so that you either have to have a parallel ported PC or a UC100?
Most breakout boards conform to the old parallel port pin numbering and plugs. Its not that they have to, but rather that the history of Mach, being rooted in the parallel port,
when new products came onto the market they to conformed so they would meet wide scale applicability.It's a bit like Henry Ford, having decided on a wheel at each corner for
his new car, that now every car manufacturer does the same thing!!LOL
Another example is the Ethernet SmoothStepper (ESS) by Warp9. The ESS have three parallel port equivalents, but rather than DB25 connectors they have IDC headers, but still
numbered like a DB25. The PoKeys 57CNC however has IDC headers, numbered in standard IDC manner, with no similarity to a parallel port.\
Craig
-
Your local time is 5 hours behind uk.
I have one uc100 on about a 1 metre cable to the mill the other about 2 metres to the lathe. Lathe has vfd drive, mill uses a kbe dc drive. No problems with noise.
-
"No problems with noise." Thanks for sharing that. I was hesitant after the post about cable length.
-
Well that was my experience anyway. If you do get noise problems the first thing is to use high quality USB cables with decent shields, and often you can improve things by wrapping a couple of turns of the able through a ferrite ring. But as I said, I've not had any problems and I haven't taken any special precautions.
-
Cable not able through ring...
-
Hi,
the issue is that USB is not an galvanacly isolated connection. Thus any voltage disturbance that occurs at one end upsets the comms at the other end.
Ethernet is transformer coupled at both ends, ie its galvanacly isolated, and has much greater immunity to noise. Physics.
Craig
-
So, Craig, are suggesting that an ethernet cable could be used? Obviously, it can plug into the computer, but what about at the breakout board?
-
Hi,
So, Craig, are suggesting that an ethernet cable could be used? Obviously, it can plug into the computer, but what about at the breakout board?
No, I think there is some confusion about what a breakout board and a motion controller is.
A breakout board has no 'processing power', but rather just buffers signals and offers screw terminations for wires , and maybe a relay or two, and sometimes a PWM to analogue
converter for the spindle.
A motion controller on the other hand accepts numerical trajectory data from Mach/PC and converts that numeric data into stream of pulses. In many cases the output
of the motion controller goes into a breakout board, or more than one, and then to the machine. Other motion controllers require no breakout board.
The motion controller can be connected to the PC by either a USB cable or Ethernet, with Ethernet cables having a noise advantage. Such a motion controller will require
a micro-controller and/or an FPGA to process numerical data to accurately timed pulse streams
The confusion has resulted from the way Mach was originally developed, namely the parallel port. In a parallel port PC there are two distinct software chunks running, the one
most familiar is the Mach program itself and its GUI, a Windows application. Machs task is to interpret Gcode and generate the numeric trajectory data, also called P(osition)V(elocity) over
T(ime), PVT data. The second chunk is Machs pulse Engine which is code that lives in the kernel alongside Windows. Its this software that converts the PVT data to pulse streams
and communicates that to the outside world via the printer port. So according to the definition above Machs Pulse Engine IS the motion controller.
The issue is that Machs Pulse Engine has to co-exist with Windows is very subject to stalling and jitter because of the shared processing. With an external motion controller like the UC100,
the UC300 or an Ethernet SmoothStepper that conflict does not occur because the processing of trajectory data is handled NOT by the PC but the motion controller. The hardware used
for the motion controller does just one job, and does it well. As a result the pulse streams coming from a good external motion controller are much faster, smoother and more accurately timed
without the stalling and jitter that occurs with Machs Pulse Engine. It also means that Mach, the Windows application is no longer tied to running on a 32 bit machine that was mandatory for
Machs Pulse Engine, so you can use laptops, 64 bit and Windows 10 etc, none of which were possible with Machs Pulse Engine.
In short a good external motion controller is a major step up in performance and capability over Machs parallel port. The choices we have alluded to are a (genuine)UC100, a UC300, or
an Ethernet SmoothStepper, but there are other worthy choices also like a PoKeys 57CNC, as CSMIO or a Hicon. The later two are very good but quite expensive, starting at $600USD.
If you are considering a motion controller a good purchase will result in you using that board for many years and the suggestion is consider the current requirements but also what you might like to do
in the years to come. For instance a UC100 has the equivalent of 'one parallel port' or 17 inputs and outputs. That's enough for a basic machine, but if you ever need more IO you're screwed,
whereas the UC300 has 85 inputs and outputs, or the Ethernet SmoothStepper (ESS) has 51 inputs and outputs, so either would be of use in later years. The UC100 operates up to 100kHz,
a good step up from the parallel port, but the UC300 operates up to 400kHz and the ESS up to 4MHz! Thus if you ever upgrade to servos you'll want at least the speed of the UC300
but better the speed of the ESS to take advantage of the resolution and speed that servos offer.
About eight years ago I bought an ESS (cost at that time $180USD) and Mach4 ($200USD) and have been using them ever since, and both have proven to be the best value investments in CNC
I've ever made. Machines, spindles, tools, vices, breakout boards, steppers, servos are all subject to change over the years but Mach4/ESS has the backbone right from the start.
Craig
-
Your explanation is wasted on me because you're way smarter than I am! All I know is that the two machines I built before, both had parallel cables coming from old PCs. Those cables went to breakout boards. The CNC drivers were connected to the breakout boards. The steppers were connected to the drivers. The software was Mach3. I no longer have a PC with a parallel port. This time I'll need to use something like the suggested UC100 so that a b/o board designed to accept a parallel port cable could be connected. I assumed you were suggesting that I ditch the USB to DB25 adapter and use an ethernet cable. I was wondering how that would hook up.
-
Hi,
I assumed you were suggesting that I ditch the USB to DB25 adapter and use an ethernet cable. I was wondering how that would hook up.
No. With a parallel port PC what you had was Mach and Machs Pulse Engine inside the PC, and you used a DB25 cable to connect to your PC to the breakout board and then to your machine.
Now, you have Mach inside the PC, connected to a motion control board like the ones listed, connected by either a USB or an Ethernet cable, and from the motion control board
to the breakout board with a cable to match.
The UC100 has a DB25socket so you can plug your breakout board in without a cable at all, or use a DB25 to DB25 if you want a little distance between them.
A UC300 does not have a DB25 socket but has an IDC socket. So you would use an IDC to DB25 cable to connect your breakout board. The ESS likewise has no
DB25 socket and requires an IDC to DB25 cable. Often breakout board have in addition to the DB25 connector have an IDC socket as an alternative. In which case the
UC300 or ESS could use a cheap as chips IDC to IDC cable.
The point is that where you once had the PC and breakout board, ie two parts, now you have the PC, a motion board and a breakout board, ie three parts.
Craig
-
I have a learning disability so that I need visuals. Maybe you or someone following might be able to sketch that out comparing what I used in my previous CNCs to what you're talking about. I'm lost.
-
Hi,
Craig
-
Thank you, Craig. So the UC100, the UC300, and the ESS, are three different types of motion controllers?
-
Hi,
So the UC100, the UC300, and the ESS, are three different types of motion controllers?
Yes, thats right. Because you can plug a single port breakout board straight into the UC100, and because they've been around for nearly 15 years they are very popular.
There are bigger boards with more IO, not necessarily better, but faster and more IO, the UC300 and ESS are good examples. You should look at the Pokeys 57CNC,
the Vital Systems Hicon and CSLabs CSMIO and then you have a good overview of whats on the market.
You will note that I do not include any Chinese made units, as far as I'm concerned they are all rubbish, and I refuse to pay so much as a cent for one.
Craig