Abstract:
A cascade control system includes pass-through controller and a Proportional-Integral-Derivative (PID) controller, wherein the PID controller controls a first output of a device to generate an input to drive the device. The pass-through controller provides a setpoint to the PID controller and controls a second output of the device. The first output and optionally also a derivative of the first output is passed to the pass-through controller so that a pass-through control algorithm can be implemented that results in the input to the device only having terms of the second output, thereby avoiding dynamic interaction between the control loops of the pass-through controller and the PID controller.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention generally relates to control systems and in particular, to a pass-through controller for cascaded Proportional-Integral-Derivative (PID) control loops. 
       BACKGROUND 
       [0002]    Cascade control systems include multiple control loops for controlling multiple outputs of a device. As an example,  FIG. 1  illustrates a block diagram for a cascade control system  100  including an inner controller  130  for controlling a sensed first output y out  of a device  140  and an outer controller  120  for controlling a sensed second output x out  of the device  140 . In particular, the inner controller  130  controls an inner or secondary control loop  102  by zeroing a difference y err  between a desired first output y des  and the sensed first output y out . The outer controller  120  controls an outer or primary control loop  101  by zeroing a difference x err  between a desired second output x des  and the sensed second output x out . The outer controller  120  is coupled to the second controller  130  by providing the desired first output y des  as a setpoint for the inner controller  130 . The first and second sensed outputs, y out  and x out , are provided by sensors coupled to the device  140  (and shown for convenience herein as being part of the device  140 ). The device  140  may be any controllable mechanism such as a robotic arm or manipulator, a robotically manipulated device, or any other controllable component such as a motor. The sensed first output y out  may be a force or torque exerted by the controlled device and the sensed second output x out  may be a position of the controlled device. 
         [0003]    In order to avoid undesirable dynamic interaction between the primary and secondary control loops,  101  and  102 , the primary control loop  101  is typically tuned to be significantly slower than the secondary control loop  102 . Dynamic interaction may be undesirable, for example, if the dynamic interaction results in excessive oscillations or instability in the cascade control system  100 . 
         [0004]    In certain applications, limiting the response time of the primary control loop  101  so that it is significantly slower than that of the secondary control loop  102  may result in an unacceptable degradation in the primary loop&#39;s performance. In these applications, in order to avoid potential problems with the dynamic interaction between the primary and secondary control loops, a cascade control system may be avoided entirely by using a different control system scheme. 
         [0005]    As an example of a different control scheme, a hybrid position/force control system  200  as shown in  FIG. 2  may be used for selectively controlling degrees of freedom of the device  140  using one or the other of a force control law  220  and a position control law  230 , as determined by complementary matrices, S′  221  and S  231 , whose values are defined by system constraints. In this case, the force control law zeroes an error between a desired first output y des  and a sensed first output y out . The position control law zeroes an error between a desired second output x des  and a sensed second output x out . The input u, which is used to drive the device  140 , is generated from a sum of the outputs of the complementary matrices, S′  221  and S  231 . Additional details for such a hybrid position/force control system are described in Craig, John J., Introduction to Robotics: Mechanics and Control, 2 nd  Edition, Addison-Wesley Publishing Company, Inc., 1989, pp. 378-381. 
         [0006]    Another technique that may be used to avoid having to limit the operating frequency of the primary loop to something which is less than a desirable rate is to effectively eliminate the secondary loop by disconnecting its feedback, so that only the outer control loop remains. This approach, however, is undesirable where the inner control loop must be kept active at times. It also may not be commercially practical where the inner control loop already exists in an application and the primary loop is being subsequently added to control the primary loop variable. 
       OBJECTS AND SUMMARY 
       [0007]    Accordingly, one object of one or more aspects of the present invention is a cascade control system in which the response time for a primary control loop is not constrained to be substantially less than that of a secondary control loop. 
         [0008]    Another object of one or more aspects of the present invention is a pass-through controller which defines a setpoint for a Proportional-Integral-Derivative (PID) controller without control loops of the pass-through and PID controllers dynamically interacting with each other. 
         [0009]    These and additional objects are accomplished by the various aspects of the present invention, wherein briefly stated, one aspect is a cascade control system comprising: a Proportional-Integral-Derivative (PID) controller that is configured to control a first output of a device according to a desired first output of the device; and a pass-through controller that is configured to generate the desired first output by controlling a second output of the device according to a desired second output of the device, wherein the pass-through controller includes a first path to which the first output is added to generate the desired first output. 
         [0010]    Another aspect is a method for providing cascaded control about a Proportional-Integral-Derivative (PID) controller which is configured to generate an input to drive a device at least partially by controlling a first output of the device according to a desired first output of the device, the method comprising: generating the desired first output by applying a desired second output of the device and a second output of the device to a first function and adding the first output to a result of the first function. 
         [0011]    Additional objects, features and advantages of the various aspects of the present invention will become apparent from the following description which should be taken in conjunction with the accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  illustrates a block diagram of a conventional cascade control system. 
           [0013]      FIG. 2  illustrates a block diagram of a conventional hybrid position/force control system as an alternative to cascade control. 
           [0014]      FIG. 3  illustrates a block diagram of a cascade control system utilizing aspects of the present invention. 
           [0015]      FIG. 4  illustrates a block diagram of a preferred PID controller included in a cascade control system utilizing aspects of the present invention. 
           [0016]      FIG. 5  illustrates a block diagram of an alternative PID controller included in a cascade control system utilizing aspects of the present invention. 
           [0017]      FIG. 6  illustrates a block diagram of a first embodiment of a pass-through controller included in a cascade control system utilizing aspects of the present invention. 
           [0018]      FIG. 7  illustrates a block diagram of a second embodiment of a pass-through controller included in a cascade control system utilizing aspects of the present invention. 
           [0019]      FIG. 8  illustrates a block diagram of a third embodiment of a pass-through controller included in a cascade control system utilizing aspects of the present invention. 
           [0020]      FIG. 9  illustrates a block diagram of a fourth embodiment of a pass-through controller included in a cascade control system utilizing aspects of the present invention. 
           [0021]      FIG. 10  illustrates a block diagram of a fifth embodiment of a pass-through controller included in a cascade control system utilizing aspects of the present invention. 
           [0022]      FIG. 11  illustrates a block diagram of a chain of pass-through controllers included in a cascade control system utilizing aspects of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0023]      FIG. 3  illustrates, as an example, a block diagram of a cascade control system  300  comprising a Proportional-Integral-Derivative (PID) controller  350  and a pass-through controller  360 . In this example, the device  340  comprises a motor driven grip mechanism that takes an electrical current command as an input (u) and produces an angular torque (y out ) and an angular position (x out ) as first and second outputs. In other examples, the device  340  may be any controllable device such as the device  140  of  FIG. 1 . The device  340  is coupled to a sensor for sensing the angular torque ({dot over (y)} out ) and a sensor for sensing the angular position ({dot over (x)} out ). In addition, the device  340  may also be coupled to a sensor for sensing an angular torque velocity ({dot over (y)} out ) and a sensor for sensing the angular velocity ({dot over (x)} out ). Alternatively, rather than providing sensors for the angular torque velocity ({dot over (y)} out ) and the angular velocity ({dot over (x)} out ), these velocities may be computed as derivatives of the sensed angular torque (y out ) and sensed angular position (x out ). To simplify the description herein, all such sensors are shown in  FIG. 3  as being part of the device  340 . However, it is to be appreciated that individual, or even all, of the sensors may be separate components from the device  340 . 
         [0024]      FIG. 4  illustrates, as an example, a block diagram of a preferred embodiment  400  of the PID controller  350 , whose control algorithm is provided in equation (1) below for the input (u): 
         [0000]        u=K   py ( y   des   −y   out )+ K   DY ({dot over (y)} des   −{dot over (y)}   out )+ K   IY ∫( y   err ) dt    (1)
 
         [0000]    where y des  is a desired angular torque that serves as a setpoint for the PID controller  400 ; {dot over (y)} des  is a desired angular torque velocity; y out  is the sensed angular torque; {dot over (y)} out  is the sensed or computed angular torque velocity; y err  is an angular torque error; and K PY , K DY , and K IY  are tunable gains respectively for the proportional, derivative, and integral functions  401 ,  402 , and  403 . 
         [0025]    The PID controller  400  provides the flexibility to accept not only the setpoint y out  as input, but also the desired angular torque velocity {dot over (y)} des  and the torque error y err  as inputs. Traditional PID controllers, on the other hand, are generally more restrictive and typically only accept the desired angular torque y out  as an input with the desired angular torque velocity {dot over (y)} des  calculated as a derivative of the desired angular torque y out  over time and the torque error y err  calculated as a difference between the desired angular torque {dot over (y)} des  and the sensed angular torque y out . 
         [0026]      FIG. 5  illustrates, as an example, a block diagram of an alternative embodiment  500  of the PID controller  350 . This embodiment extends a traditional PID controller by adding switches  560  and  570  which facilitate either using conventionally determined values for the desired angular torque velocity {dot over (y)} des  and the angular torque error y err  with forced values that over-ride these determined values with other defined values or functions. Switch  560  has two switch positions, A and B. In switch position A, a conventional value y nerr  (i.e., y des −y out ) for the angular torque error y err  is provided as an input to the integral function  503 . In switch position B, however, a forced value y ferr  for the angular torque error y err  is provided instead. Switch  570  also has two switch positions, C and D. In switch position C, a conventional value {dot over (y)} ndes  (i.e., 
         [0000]    
       
         
           
             
               
                  
                 
                   y 
                   des 
                 
               
               
                  
                 t 
               
             
             , 
           
         
       
     
         [0000]    as calculated using derivative function  511 ) for the desired angular torque velocity {dot over (y)} des  is used to generate an input (i.e., {dot over (y)} des −{dot over (y)} out ) to the derivative function  502 . In switch position D, however, a forced value {dot over (y)} fdes  is used instead for the desired angular torque velocity {dot over (y)} des  to generate the input to derivative function  502 . The control law for the PID controller  500  is the same as equation (1) with K PY , K DY , and K IY  also being tunable gains respectively for the proportional, derivative, and integral functions  501 ,  502 , and  503 . 
         [0027]      FIG. 6  illustrates, as an example, a first embodiment  600  of the pass-through controller  360 , which comprises a proportional path in which the sensed angular torque y out  is added according to the following equation (2) for the setpoint y des  for the PID controller  350 : 
         [0000]        y   des   =K   PX ( x   des   −x   out )+ y   out    (2)
 
         [0000]    where x des  is a desired angular position; x out  is the sensed angular position; y out  is the sensed angular torque; and K PX  is a tunable gain for the proportional function  601 . 
         [0028]    A limiter function  602  is also included in the pass-through controller  600 . The limiter function  602  limits the setpoint y des  to be within specified torque limits for the motor driven grip mechanism of the device  340 . The limiter function  602  serves to implement force-limited motion control of the grip mechanism. In the absence of large forces (e.g., when moving the grip mechanism without closing them completely or hitting any obstacles) the cascade control system  300  converts desired angular position commands for the grip mechanism into motor torque commands so that the motor driven grip mechanism accurately tracks a given desired angular position x des . When large forces are sensed (where “large” means beyond a prescribed threshold so as to saturate the limiter function  602 ) acting against the grip mechanism, the cascade control system  300  effectively switches to force control, where it directly adjusts motor torque for the grip mechanism in order to keep the sensed force level at the prescribed threshold (i.e., “overforce protection”). The cascade control system  300  thus ensures that force levels in the motor driven grip mechanism remain within safe limits while still allowing accurate opening and closing of the grip mechanism. 
         [0029]    A derivative function  603  and a summing node  604  are also included in the pass-through controller  600 . These components are used to calculate a desired angular torque velocity {dot over (y)} des  and an angular torque error y err  according to the following equations (3) and (4): 
         [0000]        {dot over (y)}   des   =K   PX ( {dot over (x)}   des   −{dot over (x)}   out )+ {dot over (y)}   out    (3)
 
         [0000]    
       
      
       y 
       err 
       =y 
       des 
       −y 
       out  
      
     
         [0000]    where {dot over (x)} des  is a desired angular velocity (which may be provided as an input as shown in  FIG. 3  or calculated as the derivative of x des ); {dot over (x)} out  is the sensed or computed angular velocity; {dot over (y)} out  is the sensed or computed angular torque velocity; y des  is the setpoint for the PID controller  350 ; y out  is the sensed angular torque; and K PX  is the tunable gain for the proportional function  601 . 
         [0030]    It is noteworthy to point out that if the alternative PID controller  500  is used for the PID controller  350 , then the desired angular torque velocity {dot over (y)} des  and the angular torque error y err  would be computed in the PID controller  500  rather than the pass-through controller  600 . In that case, the derivative function  603  and the summing node  604  may be omitted and switches  560  and  570  of the PID controller  500  would respectively be placed in their A and C positions. 
         [0031]    The usefulness of the pass-through controller  600  is appreciated by substituting equations (2), (3) and (4) into equation (1) to obtain the following equation (5) for the input (u): 
         [0000]        U=K   PY   K   PX ( x   des   −x   out )+ K   DY   K   PX ( {dot over (x)}   des   −{dot over (x)}   out )+ K   IY   K   PX ∫( x   dex   −x   out ) dt    (5)
 
         [0032]    Thus, the combination of the pass-through controller  600  and the PID controller  350  now appears as a single proportional-integral-derivative control algorithm for the angular position and velocity terms (e.g., x des , x out , {dot over (x)} des , {dot over (x)} out ) with all angular torque terms (e.g., y des , y out , {dot over (y)} des , {dot over (y)} out ) eliminated. Consequently, there is no dynamic interaction problem between the pass-through controller  360  and the PID controller  350 . 
         [0033]    However, the pass-through controller  600  only provides one tunable gain, K PX , since the gains K PY , K DY  and K IY  for the PID controller  350  are tuned for the PID controller  350  and it would be undesirable to change them. Although this may provide satisfactory results in some applications, if tuning of the derivative and/or integral path gains is desired, then an alternative embodiment for the pass-through controller  360  may be used. 
         [0034]      FIG. 7  illustrates, as an example, a second embodiment  700  of the pass-through controller  360 , which comprises a proportional path and an integral path according to the following equations (6) and (7) respectively for the setpoint y des  and forced angular torque error y err : 
         [0000]        y   des   =K   PX ( x   des   −x   out )+ y   out    (6)
 
         [0000]        y   err   =K   IX ( x   des   −x   out )   (7)
 
         [0000]    where x des  is the desired angular position; x out  is the sensed angular position; y out  is the sensed angular torque; and K PX  and K IX  are tunable gains for the proportional and integral functions  701  and  704 . 
         [0035]    A limiter function  702  and a derivative function  703  are also included in the pass-through controller  700  and perform the same functions as their counterparts  602  and  603  as described in reference to the pass-through controller  600  of  FIG. 6 . In this case, the equation for the desired angular torque velocity {dot over (y)} des  is the same as equation (3) above. 
         [0036]    The usefulness of the pass-through controller  700  is appreciated by substituting equations (6), (7) and (3) into equation (1) to obtain the following equation (8) for the input (u): 
         [0000]        u=K   PY   K   PY ( x   des   −x   out )+ K   DY   K   PX ( {dot over (x)}   des    −{dot over (x)}   out )+ K   IY   K   IX ∫( x   des   −x   out ) dt    (8)
 
         [0037]    Thus, the combination of the pass-through controller  700  and the PID controller  350  appears as a single proportional-integral-derivative control algorithm for the angular position and velocity terms with all angular torque terms eliminated. Consequently, there is no dynamic interaction problem between the pass-through controller  360  and the PID controller  350 . 
         [0038]    However, the pass-through controller  700  only provides tunable gains for the proportional and integral paths, K PX  and K IX , since the gains K PY , K DY  and K IY  for the PID controller  350  are tuned for the PID controller  350  and it would be undesirable to change them. Although this may provide satisfactory results in some applications, if tuning of the derivative path gain is desired, then an alternative embodiment for the pass-through controller  360  may be used. 
         [0039]      FIG. 8  illustrates, as an example, a third embodiment  800  of the pass-through controller  360 , which comprises a proportional path and a derivative path according to the following equations (9) and (10) respectively for the setpoint y des  and forced angular torque velocity {dot over (y)} des : 
         [0000]        y   des   =K   PX ( x   des   −x   out )+ y   out    (9)
 
         [0000]        {dot over (y)}   des   =K   DA ( {dot over (x)}   des   −{dot over (x)}   out )+ {dot over (y)}   out    (10)
 
         [0000]    where x des  is the desired angular position, x out  is the sensed angular position; {dot over (x)} des  is a desired angular velocity (which may be provided as an input or calculated as the derivative of x des ); {dot over (x)} out  is the sensed or computed angular velocity; y out  is the sensed angular torque; {dot over (y)} out  is the sensed or computed angular torque velocity; and K PX  and K DX  are tunable gains for the proportional and derivative functions  801  and  803 . 
         [0040]    A limiter function  802  and a summing node  804  are also included in the pass-through controller  800  and perform the same functions as their counterparts  602  and  604  as described in reference to the pass-through controller  600  of  FIG. 6 . In this case, the equation for the angular torque error y err  is the same as equation (4) above. 
         [0041]    The usefulness of the pass-through controller  800  is appreciated by substituting equations (9), (10) and (4) into equation (1) to obtain the following equation (11) for the input (u): 
         [0000]        u=K   PY   K   PX ( x   des   −x   out )+ K   DY   K   DX ( {dot over (x)}   des   −{dot over (x)}   out )+ K   IY   K   PX ∫( x   des   −x   out ) dt  
 
         [0042]    Thus, the combination of the pass-through controller  800  and the PID controller  350  appears as a single proportional-integral-derivative control algorithm for the angular position and velocity terms with all angular torque terms eliminated. Consequently, there is no dynamic interaction problem between the pass-through controller  360  and the PID controller  350 . 
         [0043]    However, the pass-through controller  800  only provides tunable gains for the proportional and derivative paths, K PX  and K DX , since the gains K PY , K DY  and K IY  for the PID controller  350  are tuned for the PID controller  350  and it would be undesirable to change them. Although this may provide satisfactory results for some applications, if tuning of the integral path gain is also desired, then an alternative embodiment for the pass-through controller  360  may be used. 
         [0044]      FIG. 9  illustrates, as an example, a fourth embodiment  900  of the pass-through controller  360 , which comprises a proportional path, a derivative path, and an integral path according to the following equations (12), (13) and (14) respectively for the setpoint y des , forced angular torque velocity {dot over (y)} des , and forced angular torque error y err : 
         [0000]        y   des   =K   PX ( x   des   −x   out )+ y   out    (12)
 
         [0000]        {dot over (y)}   des   =K   DX ( {dot over (x)}   des   −{dot over (x)}   out )+ {dot over (y)}   out    (13)
 
         [0000]        y   err   =K   IX ( x   des   −x   out )   (14)
 
         [0000]    where x des  is the desired angular position; x out  is the sensed angular position; {dot over (x)} des  is a desired angular velocity (which may be provided as an input or calculated as the derivative of x des ); {dot over (x)} out  is the sensed or computed angular velocity; y out  is the sensed angular torque; {dot over (y)} out  is the sensed or computed angular torque velocity; and K PX , K DX  and K IX  are tunable gains for the proportional, derivative and integral functions  901 ,  903  and  904 . 
         [0045]    A limiter function  902  is also included in the pass-through controller  900  and performs the same function as its counterpart  602  as described in reference to the pass-through controller  600  of  FIG. 6 . 
         [0046]    The usefulness of the pass-through controller  900  is appreciated by substituting equations (12), (13) and (14) into equation (1) to obtain the following equation (15) for the input (u): 
         [0000]        u=K   PY   K   PX ( x   des   −x   out )+ K   DY   K   DX ( {dot over (x)}   des   −{dot over (x)}   out )+ K   IY   K   IX ∫( x   des   −x   out ) dt    (15)
 
         [0047]    Thus, the combination of the pass-through controller  900  and the PID controller  350  appears as a single proportional-integral-derivative control algorithm for the angular position and velocity with all angular torque terms eliminated. Consequently, there is no dynamic interaction problem between the pass-through controller  360  and the PID controller  350 . Further, the pass-through controller  900  provides tunable gains, K PX , K DX  and K IX , for the proportional, derivative and integral paths. Therefore the resulting PID control algorithm characterized by equation (15) is fully tunable as a conventional PID control system for desired dynamic characteristics. 
         [0048]    Although simple gain values are used in the embodiments  600 ,  700 ,  800 , and  900  of the pass-through controller  360 , more complex gain functions may also be used in conjunction with the various aspects of the present invention. 
         [0049]      FIG. 10  illustrates, as an example, a fifth embodiment  1000  of the pass-through controller  360 , which comprises a proportional path, a derivative path, and an integral path according to the following equations (16), (17) and (18) respectively for the setpoint (desired angular torque) y des , forced angular torque velocity {dot over (y)} des , and forced angular torque error y err : 
         [0000]        y   des   =K   PX   *f ( x   des   , x   out )+ y   out    (16)
 
         [0000]        {dot over (y)}   des   =K   PX   *g ( {dot over (x)}   des   , {dot over (x)}   out )+ {dot over (y)}   out    (17)
 
         [0000]        y   err   =K   IX   *h ( x   err )   (18)
 
         [0000]    where x des  is the desired angular position; x out  is the sensed angular position; {dot over (x)} des  is a desired angular velocity (which may be provided as an input or calculated as the derivative of x des ); {dot over (x)} out  is the sensed or computed angular velocity; x err  is an angular position error; y out  is the sensed angular torque; {dot over (y)} out  is the sensed or computed angular torque velocity; K PX *f(x des , x out ), K PX *g({dot over (x)} des , {dot over (x)} out ), and K IX *h(x err ) are proportional, derivative and integral functions  1001 ,  1002  and  1003 ; and K PX , K DX  and K IX  are tunable gains for the proportional, derivative and integral functions. 
         [0050]    A limiter function  1004  is also included in the pass-through controller  1000  and performs the same function as its counterpart  602  as described in reference to the pass-through controller  600  of  FIG. 6 . Limiters  1005  and  1006  may also be included that respectively limit the forced angular toque velocity {dot over (y)} des  and the forced angular torque error y err  to desired ranges. 
         [0051]    The usefulness of the pass-through controller  1000  is appreciated by substituting equations (16), (17) and (18) into equation (1) to obtain the following equation (19) for the input (u): 
         [0000]        u=K   PY   K   PX   *f ( x   des   , x   out )+ K   DY   K   DX   *g ( {dot over (x)}   des   , {dot over (x)}   out )+ K   IY   K   IX   ∫*h ( x   err ) dt    (19)
 
         [0052]    Thus, the combination of the pass-through controller  1000  and the PID controller  350  appears as a single generic, non-linear control algorithm for the angular velocity terms with all angular torque terms eliminated. Consequently, there is no dynamic interaction problem between the pass-through controller  360  and the PID controller  350 . Further, the pass-through controller  1000  provides tunable gains, K PX , K DX , and K IX , respectively for the proportional, derivative, and integral paths. Therefore the resulting non-linear control algorithm characterized by equation (19) is fully tunable as a non-linear control system for desired dynamic characteristics. Still further, the pass-through controller  1000  provides functions f(x dex , x out ), g({dot over (x)} des , {dot over (x)} out ), and h(x err ) for design flexibility in generating a linear or non-linear control law for the input (u). 
         [0053]    A sixth embodiment of the pass-through controller  360  may also be constructed by modifying the first embodiment  600  by replacing block  601  of  FIG. 6  with block  1001  of  FIG. 10 . A seventh embodiment of the pass-through controller  360  may also be constructed by modifying the second embodiment  700  by replacing blocks  701  and  704  of  FIG. 7  respectively with blocks  1001  and  1003  of  FIG. 10 . An eighth embodiment of the pass-through controller  360  may also be constructed by modifying the third embodiment  800  by replacing blocks  801  and  803  of  FIG. 8  respectively with blocks  1001  and  1002  of  FIG. 10 . 
         [0054]    As can be appreciated, since the combination of the pass-through controller  360  and the PID controller  350  appears like a PID control system (for the first four embodiments described above), a second pass-through controller similar in construction to the pass-through controller  360  may be added to the cascade control system  300  to provide inputs x dex , {dot over (x)} des , and x err  to the pass-through controller  360  while controlling a third output w out  and effectively resulting in a PID control system for the input (u) as a function of only the third output, as shown, for example, in  FIG. 11 . As can be further appreciated, additional pass-through controllers (e.g., third, fourth, and so on), each similar in construction to the pass-through controller  360 , may sequentially be added to the cascade control system  300  to control additional outputs of the device and sensors  340  and effectively resulting in a PID control system for the input (u) as a function of only their respective outputs so as to avoid dynamic interaction with other control loops in the cascade control system. In generating such a cascade control system, it is to be noted that only the last pass-through controller may be implemented by one of the non-linear control algorithms of the fifth through eighth embodiments. All other pass-through controllers should be of the linear PID type of the first four embodiments. 
         [0055]      FIG. 11  illustrates, as an example, a block diagram of a cascade control system  1100  including a PID controller  1110  (such as the PID controller  350 ) to control a first output y out  of the device  1140  (including for description purposes the output sensors) and generate an input u provided to the device  1140 , a first pass-through controller  1120  (such as the pass-through controller  900  or any other linear PID type embodiment of the pass-through controller described herein which is appropriately modified) to control a second output x out  of the device and generate a setpoint y dex  for the PID controller  1110 , and a second pass-through controller  1130  (such as the pass-through controller  900  or  1000  or any other embodiment of the pass-through controller described herein as appropriately modified if necessary) to control a third output w out  of the device and generate a setpoint x des  for the first pass-through controller  1120 . 
         [0056]    Although the various aspects of the present invention have been described with respect to one or more embodiments, it will be understood that the invention is entitled to full protection within the full scope of the appended claims.