On 4/16/22 11:09, Torsten Curdt via Emc-developers wrote:
I get the general idea. But I am still a little shy on the details.
It sounds on a LPT port setup the host sends every individual step to the
port.
Yes, with software-generated steps, that's right. A fast
real-time thread generates the steps, and a slower (1ms)
thread sends interpolated positions to the step generator.
Now if the motor has an encoder LinuxCNC could read the position every 1ms
and make it a host based closed loop system. And I get the appeal.
But people are also using LinuxCNC with a BOB and Open Loop Steppers
without an encoder.
So it sounds like the feedback is missing there.
Some setups, have "synthetic" feedback from counting stepper
pulses.
I make a hardware stepper board that has step generators
that are sent a velocity, and counters that can count the
steps or read an encoder. So, by flipping a switch on the
board, you can select open-loop or closed-loop mode. The
position counter is read back by the computer and LinuxCNC's
PID component computes the next velocity to send out, based
on the difference between commanded and actual position. I
also make a servo board that is very similar to the above,
except that it sends a PWM pulse train to the drives
proportional to desired velocity. The rest of the setup is
the same.
I also make an analog velocity servo interface that sends an
analog voltage to the servo amps, this is how the original
EMC from NIST in 1997 worked.
Jon
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers