A.1.1 Closed loop control

It is possible that control could be achieved by applying a signal proportional to the position error alone, but this is a rather simplistic approach. If it is imagined that there is a small error between demanded and actual position, a proportional controller will simply multiply the error by a constant (the Proportional gain) and apply the resultant to the motor. If the gain is too high this may cause overshoot, which will result in the motor vibrating back and forth around the desired position. As the gain is increased, the MintDrive will present more resistance to positional error, but oscillations will increase in magnitude until the system becomes unstable. To reduce the onset of instability a damping term is incorporated in the servo loop algorithm, called velocity feedback gain. Velocity feedback acts to resist rapid movement of the motor and hence allows the Proportional gain to be set higher before vibration occurs. Alternatively, derivative gain (the derivative of the error) can be used for damping.

With Proportional gain and velocity feedback (or derivative action) it is possible for a motor at rest at a set point to exhibit a small positional error (called following error). The MintDrive multiplies the error by the proportional term to produce an applied corrective torque (in current control), but for very small errors the torque may not be large enough to overcome static friction. This error can be overcome by incorporating an integral term in the loop calculations. Integral action involves summing the error over time, so that motor torque is gradually increased until the positional error falls to zero. The speed at which integral action works is controlled by the integral gain. Integral action is useful to eliminate steady state positional errors, but will result in reduced dynamic response for the system. For this reason, a software selectable option KINTMODE is provided so that the user can select that the integrator is switched off during periods of constant velocity. With integral gain, it is possible for the output to wind up to 100% demand. This effect can be limited using the KINTLIMIT keyword which limits the effect of the integral gain at a defined percentage of the demand output.

The final term in the control loop is velocity feed forward. This is useful for increasing the response and reducing the following error, especially with velocity controlled servos.

In summary, the following rules can be used as a guide:

HKPROP: Increasing KPROP will speed up the response and reduce the effect of disturbances and load variations. The side effect of increasing KPROP is that it also increases the overshoot, and if set too high it will cause the system to become unstable. The aim is to set the Proportional gain as high as possible without getting overshoot, instability or ’hunting’ on an encoder edge when stationary (the motor will buzz).

HKVEL: This gain has a damping effect, and can be increased to reduce any overshoot. If KVEL becomes too large it will amplify any noise on the velocity measurement and introduce oscillations.

HKINT: This gain has a de-stabilizing effect, but a small amount can be used to reduce any steady state errors. (By default, KINTMODE is set to ignore the KINT term).

HKINTLIMIT: The integration limit determines the maximum value of the effect of integral action. This is specified as a percentage of the full scale demand.

HKVELFF: This is a feed forward term and as such has a different effect on the servo system than the previous gains. KVELFF is outside the closed loop and therefore does not have an effect on system stability. This gain allows a faster response to demand speed changes with lower following errors, for example you would increase KVELFF to reduce the following error during the slew section of a trapezoidal move. The trapezoidal test move can be used to fine-tune this gain.

HKDERIV: This gain has a damping effect. The Derivative action has the same effect as the velocity feedback if the velocity feedback and feedforward terms are equal, but scaled by a factor of 16.

HKACCEL: This term is designed to reduce velocity overshoots on high acceleration moves. Due to the quantization of the positional data and the speed of the servo loop, for the acceleration feed forward term to affect the servo loop the acceleration of the axis must exceed 1,000,000 encoder counts per second.

99

Page 111
Image 111
Baldor MN1274 06/2001 installation manual Closed loop control