http://pico-systems.com/oscrc4/catal...ex.php?cPath=8
This is a flexible set of boards, but you basically need a motherboard with card cage, and one each DAC, Encoder and DIO to make the basic system. (I didn't include this info in my first message as I didn't want it to come off as a sales pitch.) Stuart Stevenson at MPM in Wichita has these on 3 of his machines there, and I use it on my Bridgeport mill.
Well, the problem with doing all this in an FPGA is how do you tune the servo response? Also, translating the software-generated step pulses with their ragged timing to a finely tuned servo system will result in rough, gravelly motion. Not a good plan at all.
Yes, ppmc.0.encoder.00.position is a sign-extended, scaled floating-point representation
of the raw encoder counts from the PPMC interface. ppmc.0.encoder.00.delta is a raw velocity computed from the number of raw encoder counts per servo sample. pid.0.output is from EMC2's PID calculation, and is the command going into the PWM generator.
Not quite, but close. Not all variables in EMC2 are available to HAL. But, most any related to the external environment, axes, tools, spindles, limits, etc. are made available as HAL "pins". A pin is similar to an electrical terminal on some module. A HAL "signal" is similar to a wire that has one source of signal and can convey that signal to several places. So, HAL "components" perform various functions (hardware interfaces or device drivers, AND, OR, SUM, PID, etc.) and every component has a few input and output pins. Some components like AND just have HAL pins, and affect nothing on the outside. The PPMC device driver component makes the logical connection to the PPMC hardware through the parallel port, and obviously its purpose is to sense and affect something outside the computer.
This is all in the HAL manual at
http://www.linuxcnc.org/docs/HAL_User_Manual.pdf
I have servo amps for use with both brush and brushless motors, and a servo controller to go with those. That is different than the PPMC as it is all digital. But, if your servo amps are in good working order, and you have documentation on what terminal does what, it is best to keep them. A good analog velocity servo gives the smoothest motion. If you DON'T have working servo amps, then you have a wide variety of choices. Some really good (and CHEAP!!) brushless motors are now coming out of China, and I am quite impressed by them. I have been testing out
a few of them with my brushless amp.
Jon