Motion Control Systems: Velocity and Acceleration Feedforward
Learn the strategy called feedforward which can predict motion control system outputs. This helps to turn the feedback into a double-check as opposed to the sole provider of the output signal.
Motion control systems almost always indicate the use of a PID controller. For PID controllers, feedback is the core requirement to turn open-loop systems into tightly monitored closed-loop networks.
For any motion system to be considered ‘closed-loop’ it must have sensors to monitor the present value of the system. This present value is compared to the target value in order to identify what needs to happen - should we drive with more or less power to properly reach the destination.
The main reason for closed-loop monitoring is the eternal inconsistency of systems. A little bit more wear on a bearing, a bit of temperature change causing more friction, perhaps a slightly heavier load once in a while, and so on. All of these factors and countless others all prove that we cannot trust a system to stay the same at all times.
Figure 1. Mechanical motion systems must have feedback control for precise function — even a change in the temperature of hydraulic fluid can yield massive changes in velocity and acceleration.
The closed-loop control takes all the guesswork out of a system. Normally, we consider open and closed-loop to be polar opposites. For open-loop, we press the ‘start’ button, and the motor is supplied with full voltage, hopefully enough to reach the target speed or position. Closed-loop systems monitor error and run through complex algorithms to provide a new output value every instant.
There is a step in between that exists in many PID systems. This in-between step is called ‘feedforward’ and it creates a blend between open-loop on/off control, and closed-loop monitored control, continually adjusted to meet current parameters.
Definition of Feedforward
When a system is driven (any system, not just motion), it must overcome the mass, elasticity, and any damping forces which may be exerted by the environment. If a system is driven over and over again, it will probably be facing roughly the same environmental parameters every time. Certainly, there will be small changes, but it could be expected to be generally consistent.
Figure 2. Every system with motion (including this vehicle) is subject to mass, spring, and damping effects. Feedforward handles the predictable part of the system, PID follows up with the changes resulting from the environment and time.
If we know how much force must be overcome, we can predict exactly how much force to exert to attain the correct output rate of change. This prediction of control output allows us to stay one step ahead of the system and provide the correct output value for every point through the process. You might say we could continually adjust the output even with a blindfold over our eyes, simply because we know how it should behave.
Simply stated, feedforward is a continual adjustment of the control output to keep a system progressing exactly as needed to maintain the correct velocity and acceleration the entire time, as long as the environmental factors never change.
This is the reason for previously stating that it blends open and closed-loop control. We have the blindfold that acts like an open-loop system, but the continual adjustment of a closed-loop system.
The feedforward model cannot be used alone with a high degree of accuracy, it simply provides a great baseline for the control output, but sensors still need to monitor the exact process variable. Any further fine-tune adjustments on the fly will probably be very small. Even with zero feedback and error correction, the system will probably be fairly accurate.
Obtaining a Feedforward Output
There are two methods used for obtaining the output values required to feed into the controller for a predictable response.
1. If a virtual model exists for the system, it can often be used to simulate responses. CAD systems often have the ability to calculate the center of mass and material properties in order to obtain solutions for motion. If an accurate model does not exist, it’s pointless to guess on unknown values, the output won’t be accurate.
This method is often difficult because it requires a very detailed, accurate system model with a simulation package that can provide realistic output values.
However, if the simulation can be accomplished ahead of time, the PID controller is entirely unnecessary to get the system running, it will simply help fine-tune the response later.
2. More commonly, the method of choice is to use the software already built into an existing pre-installed PID controller. The controller is supplied with a proportional gain in order to get a fairly accurate response. Then, the system is driven one or more times to record and observe that accurate response.
While the system is driving, a profile of the output signal is recorded. It may need to overcome some friction in certain parts of the cycle, or maybe some other unusual circumstance occurred, but the controller compensated with an appropriate output profile.
Figure 3. Feedforward values for both velocity and acceleration in motion systems are often included in a PID setup software, like this one from Delta Computers RMC software.
In future cycles, that output profile can simply be played back. Theoretically, we could disconnect all sensors and expect the system to still overcome those friction load points correctly.
No matter which of the following feedforward methods used, the PID controller is still important in the end. The problem with expecting consistent results is that the environment will seem to yield a great response for the short time frame that you are setting up the system. It may work for a few hours or even days, but then something will change.
That PID controller is still the element of the system that compensates for changes, but if a profile is known before the cycle runs, it can certainly minimize the amount of inconsistency in the system for future cycles and provide a great deal more stability.