1 Introduction to Saturation
All physically realizable actuators and sensors have a limit to their performance.
In the case of actuators consider an electric motor where the driving circuit can only provide so many amps before buring out components. That current limit equates to a torque or speed limit. This is a hard, nonlinear, limit to actuators output.
In the case of sensors consider a rate gyro. Some are based on a phase shift in light, others are based on piezo-resistive properties, and others are based on [MagnetoHydroDynamic Gyros|MagnetoHydroDynamics]. In all cases the sensor will have a frequency response that rolls off. This is a linear effect and not saturation. Saturation in a sensor comes from pushing it beyond is design boundaries or beyond the capacity of the electronics associated with the sensor. In other words if the gyro puts out 1 V per 1 rad/sec and has circuits that are capable of +/- 10 V then your sensor will not output rates above 10 rad/sec and this limit can be a very hard nonlinearity.
2 Modeling Saturations
Generally, saturation is a nonlinear response. Sometimes it is truly a hard limit (Figure 1). Other times it can be better modeled by a hyperbolic tangent (Figure 2). In either case the sensor or actuator is saturated and not providing the expected output. Saturation for an extended period of time will lead to Wind-up if the controller has an integrator.
Simulink has a block named saturation. The image on the block is similar to Figure 1. (I have not included a picture of it here because the Mathworks has requested that any screen shots get prior approval before being displayed on Wikpedia or Wikibooks. I assume those rules apply to ControlTheoryPro.com as well. Gabe)
The saturation block in Simulink provides an upper and lower bound setting. The output will exactly match the input until those hard limits are hit.
2.2 Effect of Saturation on Command Following
The model in Figure 3 is from Professor Armando Rodriguez at Arizona State University. (A some point in the past I got files from his for this example but I haven't been able to find them again. I've provided a link to his website at ASU in case you are interested in searching for the files. I have the file but I have not asked Prof. Rodriguez's permission to provide them for your use. Gabe)
The model is used to demonstrate the effect of saturation on command following. The saturation block in the center saturates when u_c is outside of +/- 5. It is obvious from Figure 4 that saturation is to be avoided.
3 Final Thoughts
Saturation is something to be conscious of during the design phase. It should be modeled in the system models. However, proper design will usually mean that the system operates within only the linear region of a sensor or actuator.
When saturation cannot be avoided - performance requirements demand the full range of the best available sensor or actuator - then there are a couple of things to keep in mind. Linear system theory and classical controllers do not handle nonlinearities well. A pole in your controller design will cause Wind-up due to the nonlinear response of a saturated system. Anti-Wind-up controllers can and frequently should be designed to deal with this.