Abstract:
An electronic engine controller includes a commanded rotor speed input, an altitude input, and a current rotor speed input, a computer processor, and a memory storing a prediction logic. The prediction logic is operable to cause the processor to determine a predictive value representative of a closed loop transient response of a propulsion system&#39;s actual corrected low rotor speed in response to a commanded change in low rotor speed.

Description:
TECHNICAL FIELD 
     The instant disclosure relates generally to closed loop propulsion systems including, but not limited to, the engine, actuators, sensors, electronics, and closed loop engine control software, and more specifically to an open loop transient response predictor for the same. 
     BACKGROUND OF THE INVENTION 
     Electronic engine controllers that control various aspects of a propulsion system are often included in aircraft design in order to provide a smooth translation of pilot commands, such as accelerate or decelerate commands, to engine operations. 
     Conventional approaches to detect TCM events, such as the deceleration rate limit to identify runaway engine conditions will not provide consistent results as the engine condition, operating and ambient conditions influence the engine response significantly. It is also difficult to come up with different sets of deceleration limit to cover all possible situations. Further, the conventional approaches do not capture the engine closed loop acceleration response characteristics to decide whether the engine is accelerating or decelerating. The conventional approaches utilize a small perturbation model and are limited to small changes in speed of the aircraft. This limitation increases response time of the controller and includes a large amount of computational complexity. 
     SUMMARY OF THE INVENTION 
     An electronic engine controller according to an exemplary embodiment of this disclosure, among other possible things includes a commanded rotor speed input, an altitude input, and a current rotor speed input, a computer processor, and a memory storing a prediction logic operable to cause the processor to determine a predictive value representative of a closed loop transient response of a propulsion system&#39;s actual corrected low rotor speed in response to a commanded change in low rotor speed. 
     A further embodiment of the foregoing electronic engine controller, includes a lookup table stored in the memory, the lookup table includes multiple possible correction terms for adjusting a lower end of a valid prediction level for altitude 
     In a further embodiment of the foregoing electronic engine controller, the prediction logic includes an acceleration transfer function/logic, a deceleration transfer function/logic, and a selector logic. 
     In a further embodiment of the foregoing electronic engine controller, the selector logic includes, a switching logic block operable to pass one of an acceleration prediction and a deceleration prediction to a smoothing transfer function, a derivative block and an initial transfer function block each being operable to condition and process a requested rotor speed input, and the switching logic block is operable to determine which of the acceleration prediction and the deceleration prediction to pass based on an output of the initial transfer function block. 
     In a further embodiment of the foregoing electronic engine controller, the acceleration transfer function/logic includes a delay processing block and a transfer function block. 
     In a further embodiment of the foregoing electronic engine controller, the delay processing block is operable to prevent the acceleration transfer function/logic from outputting an acceleration prediction when a corresponding turbine engine is operating outside of a valid operating window. 
     In a further embodiment of the foregoing electronic engine controller, the transfer function block includes a transfer function including an altitude correction term, and the transfer function is operable to determine a predicted engine acceleration response based on the commanded rotor speed input, the altitude input, and the current rotor speed input. 
     In a further embodiment of the foregoing electronic engine controller, the deceleration transfer function/logic comprises a delay processing block and a transfer function block. 
     In a further embodiment of the foregoing electronic engine controller, the delay processing block is operable to prevent the acceleration transfer function/logic from outputting an acceleration prediction when a corresponding turbine engine is operating outside of a valid operating window. 
     In a further embodiment of the foregoing electronic engine controller, the transfer function block includes a transfer function including an altitude correction term, and the transfer function is operable to determine a predicted engine acceleration response based on the commanded rotor speed input, the altitude input, and the current rotor speed input. 
     In a further embodiment of the foregoing electronic engine controller, the prediction logic is an open loop prediction logic. 
     A method for predicting a propulsion system engine response according to an exemplary embodiment of this disclosure, among other possible things includes inputting a commanded rotor speed input, an altitude input, and a current rotor speed input to predictor logic for a controller including, and outputting a prediction value representative of a propulsion system&#39;s actual closed loop transient response to a commanded low rotor speed. 
     A further embodiment of the foregoing method includes the steps of determining whether the commanded rotor speed is an acceleration or a deceleration using a selector logic, passing an acceleration transfer function/logic output to a prediction logic output when the commanded rotor speed is an acceleration, and passing a deceleration transfer function/logic output to a prediction logic output when the commanded rotor speed is a deceleration. 
     A further embodiment of the foregoing method includes determining an acceleration prediction by passing the commanded rotor speed through a transfer function, the transfer function includes an altitude correction term operable to adjust the lower end of the prediction level. 
     A further embodiment of the foregoing method includes determining a deceleration prediction by passing the commanded rotor speed through a transfer function, the transfer function includes an altitude correction term operable to adjust the lower end of the prediction level. 
     A further embodiment of the foregoing method includes determining an acceleration prediction by passing the commanded rotor speed through a transfer function, the transfer function includes an altitude correction term, determining a deceleration prediction by passing the commanded rotor speed through a transfer function, the transfer function includes an altitude correction term, determining whether the commanded rotor speed is an acceleration or a deceleration using a selector logic, passing the acceleration prediction to a prediction logic output when the commanded rotor speed is an acceleration, and passing the deceleration prediction to a prediction logic output when the commanded rotor speed is a deceleration. 
     A further embodiment of the foregoing method includes determining the propulsion system is outside of a valid operating window, and delaying the step of outputting a prediction value representative of a propulsion system&#39;s actual closed loop transient response to a commanded low rotor speed until said propulsion system is operating within the valid operating window. 
     An add on for an electronic engine controller according to an exemplary embodiment of this disclosure, among other possible things includes a commanded rotor speed input, an altitude input, and a current rotor speed input, a computer processor, a memory storing a prediction logic operable to cause the processor to determine a predictive value representative of a closed loop transient response of a propulsion system&#39;s actual corrected low rotor speed in response to a commanded change in low rotor speed; and the add on connects to an existing electronic engine controller. 
     These and other features of the present invention can be best understood from the following specification and drawings, the following of which is a brief description. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  schematically illustrates an aircraft having a propulsion system controller. 
         FIG. 2  schematically illustrates a predictor logic for the propulsion system controller of  FIG. 1 . 
         FIG. 3A  schematically illustrates an accelerate logic portion of the predictor logic of  FIG. 2  in greater detail. 
         FIG. 3B  schematically illustrates a processing delay block for utilization in the predictor logic of  FIG. 3A . 
         FIG. 3C  schematically illustrates an input control logic block for utilization in the predictor logic of  FIG. 3A . 
         FIG. 4A  schematically illustrates an decelerate logic portion of the predictor logic of  FIG. 2  in greater detail. 
         FIG. 4B  schematically illustrates a processing delay logic block for utilization in the predictor logic of  FIG. 4A . 
         FIG. 5  schematically illustrates a deceleration transfer function of the decelerate logic portion of  FIG. 4  in greater detail. 
         FIG. 6  schematically illustrates a selector logic of the predictor logic of  FIG. 2  in greater detail. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  illustrates a commercial aircraft  10 , such as a passenger aircraft. The aircraft  10  includes a propulsion systems controller  20  connected to each of the engines  30  via a control line  22 . Each of the control lines  22  is illustrated as a single line terminating at the corresponding engine  30 , however, each control line  22  can include multiple control connections and provide controls to multiple varied engine  30  components. The propulsion systems controller  20  is further connected to cockpit controls  24  and receives pilot commands, such as “accelerate” and “decelerate” from the cockpit controls  24 . 
     As part of the propulsion controls, it is desirable for the propulsion systems controller  20  to predict a closed loop transient response of the propulsion system&#39;s rotor speed in response to a rotor speed change command from the cockpit controls  24  to identify situations such as the runaway or unresponsive engines. An open loop logic (illustrated in  FIG. 2 ) is used to predict the closed loop engine systems response while the engine is operating at between 50% and 100% of maximum takeoff power. The open loop predictor logic accounts for the ambient conditions of the engine  30  and the operating envelope (altitude) of the aircraft  10 . 
       FIG. 2  schematically illustrates an open loop predictor logic  100  for the propulsion systems controller  20  of  FIG. 1  as an add-on control system. The open loop predictor logic  100  has three inputs, a requested altitude corrected rotor speed input  102 , an altitude input  104 , and a corrected rotor speed input  106 . The open loop predictor logic  100  includes three primary logic functions, an acceleration transfer function/logic  110 , a deceleration transfer function/logic  120  and a selector function/logic  130 . 
     The acceleration transfer function/logic  110  accepts each of the three inputs  102 ,  104 ,  106  and outputs an acceleration predicted  112  of the engine  30  in response to the pilot command. Similarly, the deceleration function/logic  120  accepts the requested rotor speed input  102  and the altitude input  104  and outputs a deceleration prediction  122  of the engine  30  in response to the pilot command. 
     The selector  130  receives the output of each of the acceleration transfer function/logic  110  and the deceleration transfer function/logic  120  and receives the requested rotor speed input  102 . Based on the requested rotor speed input  102 , the selector  130  determines whether the input pilot command is requesting an acceleration of the engine  30  or a deceleration of the engine  30 . The selector  130  then passes the corresponding prediction to a predictor response output  132 . The predictor response output  132  is transmitted to the engine controller as the predicted engine response. 
     The selector  130  selects the predicted acceleration or deceleration response based on whether the pilot has commanded an acceleration or deceleration. In this illustration, this information is derived using the slope of the rate of change of the requested rotor speed input  102 . It is understood that this information can be derived by other means. A blending scheme is used within the selector  130  to blend the two predicted responses and achieve a smooth transition from the acceleration response to the deceleration response and vice versa when the pilot command is altered. The predictor logic  100  can predict the closed loop transient response of the propulsion system when the engine is operating at anywhere from 50% of max take off power to 100% of max take off power. In alternate examples, the predictor logic  100  can be designed to provide predictions below 50% max take off power, however, such an alteration requires an increase in computational complexity. This operating window (50%-100% maximum takeoff power) is referred to as the valid operating window and produces valid results in the predictor logic. 
       FIG. 3B  illustrates the accelerate transfer function/logic  110 ,  200  portion of the predictor logic of  FIG. 1  in greater detail. The accelerate transfer function/logic  200  includes an altitude adjustor  210  adjusts a lower end of the prediction window for the rotor speed such that the valid operating window corresponds to the 50% max take off power as a function of the altitude value  104  for the accelerate transfer function/logic  110  and  200 . The altitude adjustor  210  outputs an altitude adjusted lower end of the predicted rotor speed  212  that is provided to a delay processing logic block  220 , a transfer function input logic block  230 , and a summation logic block  250 . The relationship between altitude and altitude adjusted lower end of the predicted rotor speed value is stored in a look up table in a memory of the controller  20 . 
     The processing delay block  220  also accepts the requested rotor speed input  102 , the corrected rotor speed input  106 , and the altitude adjusted lower end of the predicted rotor speed  212 . The processing delay block  220  determines whether the propulsion system has exceeded 50% of the max take off power value based on the inputs  102 ,  106 , and ensures that the predictor  100  does not output a prediction unless the propulsion system is operating within the valid operating window. Thus, the processing delay block  220  prevents the acceleration transfer function logic  110  from outputting a result unless the propulsion system is in the valid operating window of the predictor  100 . An input control logic block  230  conditions the inputs to an acceleration transfer function  240 . 
     It is understood that pressure variations resulting from altitude changes can affect the results of the predictor, leading to multiple possible predicted engine responses form a single input. Each of the possible engine responses can be collapsed into a single response if a pressure correction term delta) is applied to the data for various altitude, and airspeed conditions. This is achieved by using a baseline transfer function assuming −2000 as the altitude and standard day conditions as an acceleration transfer function  240 . The acceleration transfer function  240  coefficients are corrected using the pressure correction term (delta). The possible pressure correction terms (delta) are stored in a look up table, from which the controller  20  selects the appropriate pressure correction term (delta) based on the altitude and the ambient temperatures to adjust the prediction level in the adjustor  210 . This scheme results in only a single predicted engine response that accounts for the altitude and the ambient air conditions. The look up table is stored locally on a memory of the controller  20 . 
     The acceleration transfer function  240  used by the predictor is derived using simulated flight data and validated using actual flight data. In the illustrated example, the transfer function  240  is [1.6*delta*1.074*1.8]/[1 2*sqrt(1.6*delta*1.074*1.8)*0.8 1.6*delta*1.074*1.8]. It is understood that the coefficients vary depending on the particulars of the aircraft, the propulsion system being utilized and the electronic engine control algorithm used, and can be derived by a person of ordinary skill in the art in light of this disclosure. 
     The transfer function block  240  outputs a predicted acceleration  242  that is scaled by the pressure correction term (delta) using a summation block  250 . The summation block  250  outputs an overall acceleration prediction  252 . 
       FIG. 3B  illustrates the processing delay block  220  of  FIG. 3A . The processing delay block  220  includes three inputs, the requested rotor speed input  102 , the corrected rotor speed input  106 , and the altitude adjusted lower end of the predicted rotor speed  212 . A comparator  222  within the processing delay block accepts the inputs  106 ,  212  and compares the inputs to determine if the corrected rotor speed input  106  exceeds the altitude adjusted lower end of the predicted rotor speed  212 . If the corrected rotor speed input  106  exceeds the altitude adjusted lower end of the predicted rotor speed  212 , the comparator outputs a flag  229  indicating that the engine has exceeded 50% max engine takeoff power. 
     The flag  229  is passed to a switch  224 , and controls the output of the switch  224 . When the flag  229  is high, indicating that the engine has exceeded 50% max takeoff power, the switch  224  is set to pass the requested rotor speed input  102  as a command  228 . If the flag  229  is low, the switch connects to a constant command generator  226  and passes a constant signal as the command  228 . In one example, the constant signal is set as a 1500 RPM command. 
       FIG. 3C  illustrates the input control logic block  230  of  FIG. 3A . the input control logic block  230  includes a switch  232  connected to the altitude adjusted lower end of the predicted rotor speed  212  to adjust the N 1  prediction level as a function of altitude in one state, and to a constant command generator  226  in a second state. In some examples, the constant command generators  226  of  FIGS. 3B and 3C  can be the same constant command generator  226 . 
     The switch  232  also receives the flag  229  from the processing delay block  220  comparator  222  at a control input. When the flag  229  is high, the switch passes the altitude adjusted lower end of the predicted rotor speed  212  to a summation block  234 . When the flag is low, however, the switch passes the constant command from the constant command generator  226  to the summation block  234 . The summation block  234  accepts the value passed from the switch  232  and combines it with the command  228  to determine a difference between the initial command and the change command. This difference is output to the transfer function block  240  which represents the acceleration phase of the corrected commanded rotor speed  102  above the 50% max takeoff power. 
       FIG. 4A  illustrates the deceleration transfer function/logic  120  of the predictor logic of  FIG. 1  in greater detail. The deceleration logic  300  includes a delay processing logic block  310  that operates similar to the delay processing block  220  illustrated in  FIG. 3 , and prevents the deceleration logic  300  from outputting a deceleration value when the engine is operating outside of the valid operating window. The delay processing block  310  includes two outputs, a switch control output  312  and a requested rotor speed output  314 . The deceleration transfer function block  320  accepts the outputs  312 ,  314  from the delay processing block  310 , and generates a predicted deceleration output  322  using a stored transfer function (illustrated in  FIG. 5 ). 
       FIG. 4B  illustrates the delay processing logic block  310  of  FIG. 4  in greater detail. The delay processing logic block  310  accepts the requested rotor speed input  102  and the altitude input  104 . The requested rotor speed input  102  is compared to a value from a minimum requested engine speed generator  311  in a comparator  312  to identify when deceleration is commanded. While the requested engine speed  102  exceeds the minimum requested engine speed  311 , the comparator outputs a high flag  313  to a switch  314  and to the deceleration transfer function block  320 . 
     The flag  313  controls the state of the switch  314 , and passes the requested rotor speed input  102  to a corrected rotor speed output  314  when the requested rotor speed  102  exceeds the minimum requested rotor speed from the minimum requested rotor speed block  311 . When the requested rotor speed  102  falls below the minimum requested rotor speed, the altitude adjusted lower end of the predicted rotor speed  317  is passed from a look up table  316 . The look up table accepts the altitude input  104  to determine the altitude adjusted lower end of the predicted rotor speed  317 . 
       FIG. 5  illustrates the deceleration transfer function  400  portion of the deceleration transfer function/logic  300  of  FIG. 4  in greater detail. The transfer function  400  portion of the deceleration transfer function/logic  300  includes a switch  410  and a deceleration prediction transfer function block  420 . The switch  410  accepts the delay output  312  from the delay processing block  310  (illustrated in  FIG. 4 ) as a control input. When the delay output  312  indicates that the propulsion system is within the valid operating window, the switch  410  connects a switch output  412  the transfer function block  420 . When the delay output  312  indicates that the propulsion system is outside of the valid operating window, the switch connects the switch output  412  to a transfer function bypass signal  414  that connects the requested rotor speed input  102  to the switch  410 . 
     The transfer function block  420  accepts the requested rotor speed input  102  and passes the requested rotor speed through a transfer function, to determine a predicted propulsion system deceleration in response to the requested rotor speed input  102 . The transfer function in the illustrated example is [0.65*delta*1.074*1.4]/[s^2+2*sqrt(0.65*delta*1.074*1.4)*0.78 s+0.65*delta*1.074*1.4]. As with the transfer function used to predict the acceleration in  FIG. 3 , the constants of the transfer function vary depending on the particulars of the specific aircraft, and the possible pressure correction terms (delta) are stored in a look up table, from which the controller  20  selects the appropriate pressure correction term (delta) based on the altitude and the ambient conditions of the aircraft. 
     Referring back to  FIG. 2 , each of the acceleration prediction  112  from the acceleration prediction logic  110  and the deceleration prediction  122  from the deceleration prediction logic block  120  are blended in the selector logic block  130  and a combined predictor response  132  is output from the selector  130 . 
       FIG. 6  illustrates the control logic  500  within the selector block  130  in greater detail. As described above, with regards to  FIG. 1 , the selector block  500  has three inputs, the acceleration prediction  112 , the deceleration prediction  122 , and a requested rotor speed input  102 . Each of the acceleration prediction  112  and the deceleration prediction  122  are input to a selector switch  510 . 
     The selector switch  510  further includes a control input  512  that controls whether the acceleration prediction  112  or the deceleration prediction  122  is passed through the selector switch  510 . The requested rotor speed input  102  is processed and conditioned using a derivative logic block  520  and an initial transfer function block  530  that represents a filter to eliminate noise in the rate of change of the requested rotor speed  102  as it accounts for rapid movement of the pilot lever by the pilot, and the output of this processing (i.e. the output of the initial transfer function block  530 ) is the control input  512 . 
     The output of the selector switch  510  is passed through a smoothing transfer function that achieves a smooth transition between the acceleration prediction  112  being passed through the switching logic  510  and the deceleration prediction being passed through the selector logic  510  when the pilot command changes from acceleration to deceleration or vice versa. In one exemplary embodiment, the smoothing transfer function is [1]/[0.4*s+1]. 
     Using the above described prediction scheme allows the controller  20  (illustrated in  FIG. 1 ) to predict responses to large and small acceleration/deceleration commands in a single computational step using one transfer function for all of the operating conditions of the aircraft. 
     The above described system is used as an add on to the existing electronic engine controllers and can be used detect emergency situations such as the Thrust Control Malfuction (TCM). On one such implementation, to declare a TCM event, the predicted response is compared with the actual response as observed by the closed loop electronic engine controller or the pilot command. In a typical TCM situation, due to malfunction in the engine control system, a closed loop propulsion system may not respond to pilot commands and will either continue to operate at the previously commanded power level or continue to increase the power, resulting in runaway condition. 
     Although an embodiment of this invention has been disclosed, a worker of ordinary skill in this art would recognize that certain modifications would come within the scope of this invention. For that reason, the following claims should be studied to determine the true scope and content of this invention.