> Also, the interpreter is a pluggable module, it doesn't have to be G-code. >
That's a great design. Every 1mS the tc calculates new positions for all axes, and puts those > positions on to HAL pins. > Does the HAL get the absolute Positions? And that gets translated into velocities? I am asking because Peter said that the Mesa card receives velocity information. What happens next depends on the system. With an LPT system the HAL > "stepgen" component 1mS thread reads how many steps have been made in > the last period, and from that and the new position calculates the > required step-rate to hit the new position at the end of the current > period. Then, in the fast thread the (integer maths only) step > generator makes the pulses. > Andy, thank you so much for taking that time to write that up. This is a fantastic explanation. This should go into the docs like this. As far as I know an ethernet smoothstepper does not do this. I don't > even think that they "buffer" as is often suggested. In fact I think > that they move all of the "tc" on to the hardware. So probing and > spindle-synched motion is handled inside the card, not on the host > controller. > ...and that's why the smoothstepper would not work with LinuxCNC. IIUC? (Unless there is a different firmware for it. Similar to what Remora does.) I think I get the idea of having as much motion feedback on the host to be able to do flexible planning. (I am thinking of rigid tapping here.) But to me the whole idea breaks down when using a Closed Loop Stepper or a Servo. At least unless you feed the encoders into LinuxCNC it seems to heavily weaken the idea. It should give a stable and high step frequency - sure. But is it really such a big win there is at best a "following error" alarm as feedback to the tp? (better than nothing I guess) Could you do e.g. rigid tapping when there is a LinuxCNC and another PID loop on the motor driver? I totally get that it is much better to have the stepgen on card that does this in real time. Almost synchronized steps with a fast MCU, or completely synchronized with a FPGA. But as soon as there is another PID loop involved - I am wondering if it's worth "the fuss". LinuxCNC would never have the full information for the planning. Hence I brought up the question whether a plain stepper with an external encoder would actually be more in the spirit of LinuxCNC. cheers, Torsten _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers