Closed Loop stepper

More
6 years 2 months ago #178237 by slc
Replied by slc on topic Closed Loop stepper
Real time has nothing to do with what you are trying to do here other than in the sense that it applies in general to any cnc system at a core level, it is not a method of correcting errors in motion of an axis, it is a means to prevent the errors occurring.

These drives are open loop between the pc and the motor position, so if a motor loses steps due to stalling (in which case you have big problems) then there will be no correction or compensation made by the pc because there is no feedback from the motor to the pc to signal a position error has occured, the controlling program, linuxcnc, mach etc. knows nothing about the position of the motors.

The communication between the drive and motor is closed loop, so if the motor does lose a small number of steps, the drive will try and correct the position of the motor or if it can't it will trigger the alarm signal as in my post above.

Hang in there, this stuff is a lot easier to understand than it is to explain in words.

Please Log in or Create an account to join the conversation.

More
6 years 2 months ago #178246 by tommylight
Replied by tommylight on topic Closed Loop stepper

RLA wrote: So then it does not matter about controller(pc)...it is the drive ...so what I have should work on mach 3 making realtime compensations when encoder says so..is that right?..I appreciate your patience!!

No it will not compensate.
With the drives you have, as SLC said, mach or LinuxCNC will send them some steps so the drives will forward those steps to the motor and if the motor stalls only the drives knows about it, so software is not aware of it and can not compensate.
For that you will need to have the loop closed in LinuxCNC, meaning the encoder feedback has to go to LinuxCNC also.
The difference between LinuxCNC and Mach is that mach does not know if the timing for creating steps is right or that it can not make the steps requested at all, it will just try to send steps at the speed requested not knowing if they are actually being sent to the parallel port. That is why mach needs other hardware to do the stepping correctly.
LinuxCNC will warn if the steps requested are to fast so you can correct that, and when set up correctly it will always send the requsted steps to the parallel port or other hardware.
In general, what you are asking for requires having the loop closed in LinuxCNC, that way LinuxCNC is always aware of what is going on with the machine and will compensate for the loss of position, if the drives are capable of doing that. And that brings us to the other issue, that the stepper drives and motors are quite limited at correcting lost position.
If you want actual real time and compensation, use analogue servo drives with a Mesa 7i92/7i77 combo with LinuxCNC, or Lam Technologies stepper drives that have a "boost" input so they will push more current to the motors whenever LinuxCNC detects that the position is lagging behind.
You are overcomplicating things, find a PC with a parallel port and install LinuxCNC, wire the drives and start using the machine, then you can think about this stuff.
The following user(s) said Thank You: RLA

Please Log in or Create an account to join the conversation.

More
6 years 2 months ago #178258 by RLA
Replied by RLA on topic Closed Loop stepper
Thanks again for your reply.. Sorry for "overcomplicating things" ...trying to reconcile different answers to one question is probably more complex than setting this up..I am going to go with your answer and get to linuxcnc.

Thanks again all!!
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

Time to create page: 0.370 seconds
Powered by Kunena Forum