Quadrature encoder emulation
-
We will using following controller for some linear motor axis. The controller has the ability to emulate a quadrature encoder, can anybody looking at the manual understand if the emulated quadrature encoder can be used by 1HCL to have a closed loop?
https://www.hiwin.it/images/download/documenti/E1 Series Servo Drive User Manual V1.7 (EN).pdf
Thanks in advance.
-
@highfreq that controller is an AC servo motor driver, therefore you don't need a 1HCL board to drive it. You need step and direction signals, for example from a MB6XD main board or a EXP1XD expansion board.
-
@dc42 since the driver can emulate a quadrature encoder i could feed it in a 1HCL to avoid "following error"?
(maybe the correct term is chasing error).
-
@highfreq servo drives are already closed loop controllers (I.e. doing what the 1HCL does). Not sure what you would gain by trying to do closed loop control on a closed loop driver even if it was possible!
-
@highfreq what i am trying to understand is if the board knows about the closed loop. What i am trying to obtain is a g-code closed loop to avoid any chasing error. The fact itself that the axis is in closed loop doesn't avoid it to be not in sync with what the board is feeding, unless the board knows the feedback of the axis and regulates the gcode feeding based on it.
But, i guess, only @dc42 can answer to the question wheter the reprap firmware works in closed loop at gcode level or just at motor level.
-
@highfreq picking up from your questions here:
https://forum.duet3d.com/topic/28694/closed-loop-1hcl/12and in this thread I think i understand what you are describing, is this correct:
In some CNC controllers if the closed loop positioning reports there is some position error on an axis, all the gcode execution will be slowed down until the axis with the position error can "catch up"
Currently what happens on the 1HCL board is the current to the stepper motor increased to achieve position, and a fault is raised if position cannot be achieved. that fault event can be sued to pause the job. I assume in the CNC control systems you are referring to there is some limit, at which speed reduction is still not working and the error is getting too large and a similar thing happens (the job is paused and the user alerted?)
In that case the key difference here is that current is increased, rather than the whole motion execution slowed down?
As other comments have pointed out the specific servo drivers you referenced cant be controlled from the 1HCL, but they probably have fault outputs which can be connected back to the Duet to cause the job to be paused if they can't hold position.
-
@t3p3tony Great thanks. Yes they have fault outputs.
Thanks to all of you for your answers.