One
of the most common questions asked when setting up a new closed-loop motion
control system is, "What gains should be used for the control loop parameters?"
One way to get to the answer is to contact the motion control company for
technical support. However, the person asking for help may not realize the
person providing technical support cannot help without knowing important
details about the system being tuned. Because of this, designers often resort
to determining the gains for the PID (proportional, integral and differential)
components of the control loop equation using trial-and-error methods. This can
be very wasteful in both time and performance.
Fortunately,
technologies are available for closed-loop tuning for applications that handle
position, speed and pressure or force control using models that are developed
by analyzing the operation of existing systems. As a result, it is possible to
compute the gain, natural frequency and estimate a damping factor for a
well-designed hydraulic system by measuring how the system responds to
stimulus. Once the system model is known it is easy to calculate the controller
gains and feed forwards that should be used. Even if the model is off by 10
percent the controller gains that the model generates will provide a good,
practical start that requires only minor adjustments.
Auto Tuning Explained
Auto
tuning software computes the coefficients for a system model by finding what
coefficient values minimize the error between the actual response of a system
and the model's predicted response. Usually auto tuning software is written to
tune a particular type of system where the form of the model is already known
or assumed. In these cases, the software simply finds the coefficients for that
model. Therefore, if the system being tuned does not fit one of the models
pre-programmed into the auto tuning software, the software will not work
correctly. For example, the operation of a process control system designed for
temperature control is usually assumed to be modeled by a first- or
second-order differential equation plus dead time. This type of model is quite
different from a model for an under-damped hydraulic position control system.
Auto
tuning requires that the system be excited by varying the control output to the
system. Some auto tuning systems simply use a step change in the control output
and some use pulses. The control signal must make some transitions between
different levels and also provide time for the system's response to the
excitation to stabilize at the new level. The response of the system to the
control stimulus will provide information about the time constants of the
system and the steady state conditions.
Auto
tuning systems differ in how much data is collected and how that data is used. For
example, some motion control systems generate a pulse and record the maximum
speed reached by the motion axis and how long it takes for the axis to coast
down to zero speed. From this data, it is easy to calculate a time constant
from the ramp down time and the gain(s) can be calculated by using axis speed
and the pulse time compared to how fast the axis would have been going if it
were allowed to continue for 5 time constants. This method is easy but not very
robust since it relies heavily on just a few readings and only supports
first-order models (i.e. models that can be expressed by linear equations).
More
sophisticated auto tuning systems can excite the system in a number of ways and
the excitation does not need to be a pulse or a step change. In these cases, a
difference equation or differential equation is used to estimate the process
using the control output and assumed values in the equation that represent the
system gain, offset and time constants. The first estimation is usually not
very good but there are software algorithms such as Levenberg-Marquardt and
L-BFGS that can find values for the difference or differential equation that
minimize the sum of squared errors or the norm between the recorded process
variable and the estimated variable for each time period. After a hundred
iterations or more, the best plant gain, offset and time constant are found for
that model only. At this point it is possible to repeat the process using a
different model in an attempt to try to reduce the sum of square error between
estimated and actual process variables.
Click here for larger image. |
The graph in Figure 1 shows how the Levenberg-Marquardt algorithm enables finding the system model even when the feedback data is noisy or the system has low resolution feedback. Auto tuning systems that rely on just a few points will probably fail to calculate good gains in these high noise and low resolution systems. Auto tuning software that minimizes the error between the estimated data from the model and the actual data from the feedback during every sample period will provide much better gains.
Why Auto Tuning Doesn't Always Work
The main reason an auto tuning software package would fail to deliver is when that auto tuning software doesn't include a model that matches the real system under consideration. To understand the differences between system models, consider different system types:
- Integrating and non-integrating systems. With integrating systems, the process variable stays where it is when the control output stops as long as there isn't an outside disturbance. Position actuators or tank level control valves or pumps are examples of integrating systems. A position actuator will stop when it reaches a target position and a tank is obviously an integrator of net flow, which maintains its level when its target level is reached.
With non-integrating systems, the process variable will settle back to an ambient state. For instance, a temperature system will cool off or warm up to ambient temperature when heating or cooling is not longer applied. A velocity control system is also non-integrating because the moving axis will coast to a stop when the motive force is removed.
An auto tuner that works for non-integrating processes will not work for integrating processes and vice versa.
- Dominant one- or two-pole systems. Many systems are simple and can be approximated by single-pole or two-pole models that have time constants. It is best if the auto tuning software can support both single and double pole models, but the errors will probably not be big if the double pole model isn't supported. Using a FOPDT (first-order-plus-dead-time) model for a SOPDT (second-order-plus-dead-time) system may work if one of the time constants is short compared to the other.
- Non-linear systems. Modeling non-linear systems using linear models is virtually impossible. Even if these systems can be correctly modeled by the auto tuning software, it is doubtful that the information will prove useful without extra programming in the controller to adjust the control loop gains as a function of the process variable. As soon as custom programming is employed, the model becomes application-specific and may not be applicable to other control situations. Therefore, many auto tuning systems don't support non-linear models and auto tuning programs support only one model. And if the system being tuned doesn't match one of the models, the auto tuning simply will not work well or work at all.
Hydraulic System Application
An auto tuning paradox is that linear systems are usually easily tuned either manually or automatically. Therefore, the engineer can simplify the tuning process by designing the machinery to be as linear as possible. When this is not possible, the system may be approximated by dividing the motion travel into linear segments. The segments should be small enough so that the auto tuning software can easily find a linear approximation for each segment.
For a simple example of a system where using multiple gain segments can provide better response, consider the dual-gain system referenced in Figures 2 and 3. The hydraulic system being tuned contains a dual-gain valve. Dual-gain valves are useful to provide responsive control over a wide range of velocities (lower gain when motion is slower, higher gain in order to respond quickly when the axis is moving more quickly). Different gains may also apply to different ranges of position (consider what is required to move a linear hydraulic axis in an arcing profile).
In the valve referenced in Figures 2 and 3, the low gain portion of the valve responds to voltage inputs between zero and approximately 4.47V where the low gain translates to moving the
hydraulic actuator at
Click here for larger image. |
In the case of Figure 2, the auto tuning software was used to generate the gains for the two valve segments separately, and the profile of the actual versus target axis velocities match very closely.
The analysis shown in Figure 3 uses the same auto tuning approach but without the dual gain model. The auto tuning software can only estimate an average gain over the whole range of control outputs. There are large errors between this model's estimated velocity and the actual velocity. If gain scheduling (i.e., the use of different gains at different times) is not used, the gains calculated from this model may be the best choice, but for higher performance and precision systems the dual gain model will be much more accurate.