Despite your stated proclivities, you seem to be the one unwilling to learn something new. You apparently don't know microcontrollers _are_ usually what is used to do motor interface electronics these days. And being ignorant entrenched in your misgivings, and apparently unwilling to learn, you can't even hear the answer.
It is erroneous to think microcontrollers are the same as they were in the early 1980's, which seems to be at the root of your misunderstandings. They are as different today as your MiniITX is to a 4.77MHz PC. The early 1980's PC couldn't (meaningfully, usefully, if a at all) run Linux, web servers, MPI, SQL, or V4L, etc. either. It didn't have the memory, and it didn't have the speed, and it didn't have the peripherals. It would be a bad choice for those apps, given modern alternatives. The same is true of motion control, and the microcontrollers of today. Using a PC of any flavor, with any PC oriented OS, for motion control, over a modern micro designed for motion control, is also a bad choice.
So you are ignorant of LAP (locked antipahse) one-line methods as well? Too bad, it's probably one of the more commonly used methods in driving robot motors today. Uses a little more power. But has the advantage of continuous control over the motor, preventing such effects unpowered, or oversped, down-hill roll aways.
Ha! Are you so behind the times! The short answer is:
That's hardware, btw. With _no_ on-going processor overhead required. But then that's open loop, and not so interesting.
The extended answer of significance is: 6 axes of current sensed, quadrature decoded, closed-loop, velocity limited, acceleration determined, trapezoidally profiled, PID, and even co-coordinated motion. On one microprocessor. With processing power left over, btw.
Motor interface electronics today, state of the art, _is_ a micro, with level shifters to the drive transistors - straight to the motor, or PWM to an integrated H-bridge. No op-amps, no comparators, no D/As. Just the micro, and a few transistors and resistors, or an H-bridge chip.
Of course, using a micro is the modern professional approach to motor control, instead some amateurish analog kluge tacked on a PC, for at least three reasons. 1) Better reliability. 2) Better control. 3) More cost effective results. In the end, a micro produces vastly better results, while completely unburden any other PC's in the system from having to deal with a job it is very poorly equipped to do. Even with an I/O card, the PC's is still ill-suited unless that I/O card has a micro like this on it, or an FPGA as Alex suggested, that makes up for the PC's shortcomings.
Yes, short comings! And the number one reason PC's have short comings is the processing overhead taken by the OS they run, and the tasks they were designed to do (and do well btw), versus the hardware support requirements necessary for those tasks; all interfere with doing other things they then cannot do well. Motion control being a very obvious one. A PC is a very poor platform for motion control, missing the necessary hardware, and otherwise overloaded with realtime tasks of communications, data transfers, and display. So if you aren't willing to spend the money to buy a motion control card for more than your entire budget http://www.bbdsoft.com/iocard_motion.html ...
The best, most cost effective way to add motion control to a PC is to add a micro which has the hardware to do the control.
Randy M. Dumse
Randy M. Dumse
Click to see the full signature.