On 4/20/22 13:26, Torsten Curdt via Emc-developers wrote:
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.
Yes, that's the whole idea!  The encoder is read by
LinuxCNC, PID processes the difference between commanded and
actual position, and sends out commands to the motor drive
to minimize error. LinuxCNC originally came from the servo
world, and various stepper "back ends" were later applied.

You make it sound so common :)

Are there boards where you can just connect the 4 encoder pins
and turn that into two signals to read by LinuxCNC?
(as Gene suggested)
Yes, Pico Systems, Mesa, and a few others.
And let's say the closed loop driver tries to fix the difference between
commanded and actual position - you would still also feed the encoders
through to LinuxCNC? Couldn't the two loops cause problems?

If you use a velocity servo drive, then MOST of the gain is in the drive, and the PID loop is just keeping small errors from creeping in.  I (Pico Systems) make 3 different systems for use with LinuxCNC.  First came the PPMC, which was an expandable system to control analog velocity servos.  Then, I came up with a stepper controller, which had encoder counters and step generators.  On that, the encoder counters could be selected to count the steps produced, so it could run open-loop.  Then, I hacked up that unit to generate PWM instead of steps (constant pulse rate, varying pulse width) to control servo motors.

Jon



_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to