Abstract:
A state-based, gas turbine engine initialization method and system is described that allows the true level of performance to be tracked thereby enabling engine-to-engine performance comparisons. The method performs an initialization process for performing gas turbine Module Performance Analysis (MPA) via a recursive state estimation. Included is a description of data validity measures and maintenance impact and accommodation on the initialized, or re-initialized, state.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    The invention relates generally to the field of gas turbine engine modeling. More specifically, the invention relates to state-based, gas turbine engine module initialization methods and systems that allow the true level of performance to be tracked enabling engine-to-engine performance comparisons. 
         [0002]    The area of gas turbine performance diagnostics concerns tracking changes in engine module performance measures, such as efficiency and flow parameters, as the engine deteriorates over time. The engine modules that are tracked are typically the compressor and turbine elements of an engine. For example, for a two-spool turbofan engine, the modules would generally be the fan, the low pressure compressor (LPC), the high pressure compressor (HPC), the high pressure turbine (HPT), and the low pressure turbine (LPT). The primary sources of information driving this methodology are operational measurements acquired along an engine&#39;s gas path, such as temperatures, pressures, speeds, etc. Tracking fleets of engines across a wide customer/aircraft base offers the added complexity that the measured parameters are affected by different instrumentation calibration and recording fidelity that proves to be non-repeatable across installations. 
         [0003]    Traditional performance estimation methods employ forms of predictor-corrector estimation schemes. These methods use past performance estimates as a priori information to calculate current performance estimates. 
         [0004]    A successful diagnostic methodology must provide an accurate performance initialization state. Current diagnostic methods zero-out any observed difference between measurements and a base reference level during initialization and after engine installation, begin performance tracking from a zero level. Using this method, a newly overhauled engine and a partially deteriorated engine would receive the same consideration at initialization and the true level of degradation across the two engines would be masked. This would make it difficult to track performance across a fleet of engines with any degree of regularity and accuracy. 
         [0005]    State initialization provides a more accurate starting point from which to track long-term engine module degradation over time than current practices. It differentiates engine performance from engine-to-engine in a fleet at the time of installation and provides an accurate basis for engine comparisons across a fleet. This philosophy supports engine on wing tracking and engine removal scheduling processes typically performed by engine manufacturers, operators, and overhaul facilities. 
       SUMMARY OF THE INVENTION 
       [0006]    Although there are various methods and systems employing forms of predictor-corrector estimation schemes, such models are not completely satisfactory. The inventor has discovered that it would be desirable to have methods and systems using a state-based, engine initialization procedure that allows the true level of performance to be tracked thereby enabling engine-to-engine performance comparisons. The invention describes an initialization method for performing gas turbine Module Performance Analysis (MPA) via a recursive state estimation. Included is a description of data validity measures and maintenance impact and accommodation on the initialized, or re-initialized, state. 
         [0007]    State estimation is a part of diagnosis, so faults and undesirable states may be detected to allow for remedial actions to be taken. State estimation may provide prognostic information, identifying components or systems that are likely to fail. 
         [0008]    One aspect of the invention provides a method for ascertaining the performance levels of gas turbine engine modules. Methods according to this aspect of the invention preferably start with acquiring a predetermined number of in-flight data samples corresponding to a predetermined number of engine parameters, performing an anomalous data sample screen on the data samples, and performing a recursive state estimation on the predetermined number of in-flight data samples, wherein the state estimation outputs a baseline initial state for each of the predetermined number of engine parameters. 
         [0009]    Another aspect of the method includes acquiring gas turbine engine test stand data for use as a priori data when performing the recursive state estimation. 
         [0010]    The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]      FIG. 1  is a block diagram of an exemplary state initialization method. 
           [0012]      FIG. 2A  is an exemplary plot showing a two level, bimodal data distribution. 
           [0013]      FIG. 2B  is an exemplary plot showing a step, bimodal data distribution. 
           [0014]      FIG. 2C  is an exemplary plot showing a step, bimodal data distribution. 
           [0015]      FIG. 3A  is an exemplary plot showing potential outliers. 
       
    
    
     DETAILED DESCRIPTION 
       [0016]    Embodiments of the invention will be described with reference to the accompanying drawing figures wherein like numbers represent like elements throughout. Further, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having” and variations thereof herein is meant to encompass the items listed thereafter and equivalents thereof as well as additional items. The terms “mounted,” “connected,” and “coupled” are used broadly and encompass both direct and indirect mounting, connecting, and coupling. Further, “connected” and “coupled” are not restricted to physical or mechanical connections or couplings. 
         [0017]    The invention is not limited to any particular software language described or implied in the figures. A variety of alternative software languages may be used for implementation of the invention. 
         [0018]    The invention is a modular framework and may be deployed as software as an application program tangibly embodied on a program storage device. The application code for execution can reside on a plurality of different types of computer readable media known to those skilled in the art. 
         [0019]    The invention is an initialization method for performing gas turbine engine Module Performance Analysis (MPA) using a recursive state estimation. The method determines a measurement configuration from an input data stream that allows for a robust initialization across a variety of engine models and aircraft installations. 
         [0020]    A statistically sound set of engine data is selected for initialization processing and submitted to a number of data validity checks that include engine parameter measurement bimodal distribution and outlier screening. The screening removes spurious data points from consideration and checks for anomalous data that may affect initialization results. Once the input data set is screened, and any suspicious data removed, a recursive estimation method is employed to estimate the performance state of selected engine modules. If maintenance and/or ground test information is available, this information may be used as a priori data to focus the state initialization process. 
         [0021]    Shown in  FIG. 1  is the method of the invention. The method begins with acquiring a predetermined number of engine parameter data samples to perform the initialization (step  102 ). 
         [0022]    The data may be time averaged snapshot data, for example, every 10 seconds, of various gas path parameters. The parameters may include rotational speeds, temperatures, pressures and flows. The total sample size selected should be statistically significant to allow accurate calculations, but not too large, where significant engine degradation may occur before the end of a sample period. Since the data that is typically collected for the purpose of tracking module performance changes is snapshot data from a stable cruise flight condition, the number of samples reserved for initialization may be small, in a range of from 15 to 30 data samples. 
         [0023]    A data set of samples is processed where each data set comprises a vector of gas path measurement Δ parameters. These parameters may be rotational speeds, temperatures, pressures, and others, observed at various stages throughout the engine. An engine model calibrated to represent a nominal production engine may be used as a baseline reference to calculate percent Δ parameters. The percent Δ vectors are denoted as Z k (i), where i=1,2,3, . . . , m, m is the number of individual gas path parameters being monitored and reduced to percent Δs and k is the data sample number in discrete time. 
         [0024]    To assess the performance state of the engine, a sample of measurement Δ vectors, denoted as Ω are obtained. The set of initialization measurement Δ vectors is defined as 
         [0000]      Ω={ Z   k   |k= 1,2 , . . . , N}.    (1) 
         [0025]    The sample size N is predetermined by a user and may depend on the particular application. 
         [0026]    Once the initialization data set Ω is acquired, a measurement configuration (step  103 ) is determined from the initialization data set. It is not uncommon for flight data to experience periodic parameter measurement drop-outs (data lost during acquisition). A skilled user may determine, based on the placement and frequency of measured parameter drop-outs, whether or not a particular parameter should be included or excluded from a performance analysis. 
         [0027]    Flight data is also subject to noise and other anomalies that may corrupt the initialization results. These anomalies must be detected before the initialization process continues. Because of possible instrumentation and data acquisition problems, some measurement parameters may be missing from some of the N data samples comprising a percent Δ vector Z k (i) or entirely from the initialization set Ω. Since performance calculations are based on vector quantities Z k , all of its m components must be present. Zeros are valid quantities representing a 0 percent Δ, or nominal performance. 
         [0028]    If a particular measured parameter is intermittently present or missing entirely, it may be removed from consideration. A skilled user may make this determination. The result of the measurement configuration (step  103 ) is a determination of what parameters m comprise a percent Δ vector Z k . All of the vectors in (1) will have the same size m where each component i will be present. 
         [0029]    Prior to assembling the data set Ω, a test is performed on the data Z k (i) comprising the measured parameters since there may be outliers or other anomalies present in the data. The purpose of the state initialization is to establish a reference performance level as a baseline for subsequent analysis as more flight data is acquired over time. The presence of outliers in a sampled engine parameter may corrupt the state initialization and must be detected. An assumption is that the state of the engine has not changed during the initialization period. Any anomalous behavior detected in the measurement parameter data set may be indicative of a performance state change or another malfunction that would corrupt the initial state estimation and must be dealt with. 
         [0030]    Anomaly data such as bimodal data distributions and outliers may be identified (step  104 ). Shown in  FIGS. 2A ,  2 B and  2 C are examples of bimodal data distributions.  FIG. 3  shows a plot of sample data exhibiting intermittent outliers  301 . 
         [0031]      FIG. 2A  shows a plot of data samples  201  uniformly distributed over time that exhibit a two level, bimodal distribution.  FIGS. 2B and 2C  show bimodal distributions caused by an upward  203  and downward  205  shift in amplitude, respectively, indicating a possible engine or sensor fault occurrence. An initialization should not proceed using anomalous data. 
         [0032]    The Z k  vectors in Ω may be tested for the presence of outliers and anomalies (step  104 ). All samples over time for a given parameter may be examined. Bimodal data distributions are potential indicators of anomalous data behavior such as data acquisition anomalies, performance state changes, or potential engine system malfunctions. Methods using histograms and graphical analysis may be used to test for the presence of anomalous conditions. Outliers in the data set are indicative of potential (spurious) data acquisition problems. If the problem was not spurious, the outlier would be exhibit a periodic frequency and manifest itself as a bimodal problem. 
         [0033]    If anomalous data is detected (step  105 ), the data identified as anomalous may be removed (step  106 ) to mitigate the risk of corrupting the (performance) state estimation process. The removal of data samples must be made on a vector basis, i.e., if the i th  measured parameter Δ of the k th  data sample Z k (i) is determined to be abnormal, the entire Z k  vector must be removed from consideration. This is because the initial performance state estimation is a vector estimation process. Discarding rogue data samples reduces the sample size N of the initialization data set Ω. 
         [0034]    If the sample size N has been reduced to a level that is below the predetermined level (step  107 ), for example, less than the sample size (N=15), more data will be required in order to ensure a statistically viable initialization data set Ω. In this case, additional data sample vectors from additional flights are added to the adjusted data set Ω (step  102 ) until the minimum sample size is achieved and the process may resume. 
         [0035]    If there is sufficient data to proceed (step  107 ), maintenance and engine test stand performance run information may be used if available (steps  108 ,  109 ). This information may be used as a priori information in the state estimation (step  110 ). 
         [0036]    A recursive performance state estimation process is performed (step  111 ) using the initialization measurement data set and a priori information to produce an estimate of the performance state for each engine module. This quantity defines, in terms of efficiency and flow parameter Δs, the initial state of the engine from nominal. Subsequent performance analysis may be made relative to this level as data is collected and processed. 
         [0037]    A state initialization estimation is a recursive process acting on the initialization data set Ω. The term recursive means that the state estimate x 0   (INIT)  will be a function of all of the data point vectors in Ω, 
         [0000]        x   0   (INIT)   =f ( Z   k in Ω,  k= 1,2 , . . . , N ).   (2) 
         [0038]    Estimation methods, some empirical, some physics-model based and others, such as Kalman filters, statistical regression methods, neural networks are combinations of the above. The preferred embodiment of the estimation process is a recursive, predictor-corrector estimator, 
         [0000]    
       
         
           
               
             
               
                 
                   
                     
                       
                         
                           
                             
                               x 
                               ^ 
                             
                             1 
                           
                           = 
                           
                             f 
                              
                             
                               ( 
                               
                                 
                                   Z 
                                   1 
                                 
                                 , 
                                 
                                   x 
                                   0 
                                   
                                     ( 
                                     
                                       a 
                                       - 
                                       priori 
                                     
                                     ) 
                                   
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                     
                       
                         
                           
                             
                               x 
                               ^ 
                             
                             2 
                           
                           = 
                           
                             f 
                              
                             
                               ( 
                               
                                 
                                   Z 
                                   2 
                                 
                                 , 
                                 
                                   
                                     x 
                                     ^ 
                                   
                                   1 
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                     
                       
                         
                           
                             
                               x 
                               ^ 
                             
                             3 
                           
                           = 
                           
                             f 
                              
                             
                               ( 
                               
                                 
                                   Z 
                                   3 
                                 
                                 , 
                                 
                                   
                                     x 
                                     ^ 
                                   
                                   2 
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                     
                       
                         
                           
                               
                           
                            
                           ⋮ 
                         
                       
                     
                     
                       
                         
                           
                             x 
                             0 
                             
                               ( 
                               INIT 
                               ) 
                             
                           
                           = 
                           
                             
                               
                                 x 
                                 ^ 
                               
                               N 
                             
                             = 
                             
                               
                                 f 
                                  
                                 
                                   ( 
                                   
                                     
                                       Z 
                                       N 
                                     
                                     , 
                                     
                                       
                                         x 
                                         ^ 
                                       
                                       
                                         N 
                                         - 
                                         1 
                                       
                                     
                                   
                                   ) 
                                 
                               
                               . 
                             
                           
                         
                       
                     
                   
                 
                 
                   
                     ( 
                     3 
                     ) 
                   
                 
               
             
           
         
       
     
         [0039]    In the method, the final state estimation {circumflex over (x)} N  is the estimate for initial state performance x 0   (INIT) . The estimate is recursively determined by processing all of the data samples in the initialization data set Ω, and any a priori information, x 0   (a-priori) , that may be available from test cell acceptance test monitoring of the engine, maintenance activities, etc. (step  108 ). 
         [0040]    All of the x vectors are n×1 column vectors and contain the module performance Δ parameters as elements. The modules of the engine are, but not limited to, the compressor and turbine components of the engine. For example, in a typical two-spool, turbofan engine, there may be five engine modules to consider: 
         [0000]    
       
         
               
               
               
             
           
               
                   
                   
               
             
             
               
                   
                 FAN 
                 Fan compressor 
               
               
                   
                 LPC 
                 Low Pressure Compressor (Booster) 
               
               
                   
                 HPC 
                 High Pressure Compressor 
               
               
                   
                 HPT 
                 High Pressure Turbine 
               
               
                   
                 LPT 
                 Low Pressure Turbine 
               
               
                   
                   
               
             
          
         
       
     
         [0041]    For each of the major modules, there may be two independent performance parameters (Δs) that vary over time. This information needs to be tracked to yield metrics that benefit maintenance logistics and work scope. These two performance parameters are typically an adiabatic efficiency parameter and a flow parameter. 
         [0042]    For the compressor elements FAN, LPC, and HPC, the parameters may be an adiabatic efficiency delta (Δη) and a flow capacity delta (ΔFC). For the turbine elements HPT, and LPT, the parameters may be an adiabatic efficiency delta (Δη) and an effective change in turbine nozzle area that affects flow (ΔA). Therefore, the x vectors in (2) and (3) for this example may have 10 components, 
         [0000]    
       
         
           
             
               
                 
                   
                     { 
                     
                       
                         x 
                         0 
                         
                           ( 
                           
                             a 
                             - 
                             priori 
                           
                           ) 
                         
                       
                       , 
                       
                         
                           x 
                           ^ 
                         
                         k 
                       
                       , 
                       
                         x 
                         0 
                         
                           ( 
                           INITi 
                           ) 
                         
                       
                     
                     } 
                   
                   ≡ 
                   
                     
                       [ 
                       
                         
                           
                             
                               Δη 
                               FAN 
                             
                           
                         
                         
                           
                             
                               Δ 
                                
                               
                                   
                               
                                
                               
                                 FC 
                                 FAN 
                               
                             
                           
                         
                         
                           
                             
                               Δη 
                               LPC 
                             
                           
                         
                         
                           
                             
                               Δ 
                                
                               
                                   
                               
                                
                               
                                 FC 
                                 LPC 
                               
                             
                           
                         
                         
                           
                             
                               Δη 
                               HPC 
                             
                           
                         
                         
                           
                             
                               Δ 
                                
                               
                                   
                               
                                
                               
                                 FC 
                                 LPC 
                               
                             
                           
                         
                         
                           
                             
                               Δη 
                               HPT 
                             
                           
                         
                         
                           
                             
                               Δ 
                                
                               
                                   
                               
                                
                               
                                 A 
                                 HPT 
                               
                             
                           
                         
                         
                           
                             
                               Δη 
                               LPT 
                             
                           
                         
                         
                           
                             
                               Δ 
                                
                               
                                   
                               
                                
                               
                                 A 
                                 LPT 
                               
                             
                           
                         
                       
                       ] 
                     
                     . 
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
         [0043]    If maintenance information or prior test stand data analysis is available for the engine in question, this information is obtained (step  109 ) and analyzed by the user to extract a priori information (step  110 ) that may be leveraged in the recursive state estimation process. This may take the form of specifying an initial estimate, (based on test stand results and maintenance information), for x 0   (a-priori) , which will be used in the recursive state estimation process (3). Depending on the particular algorithm used in the recursive estimation, i.e. the implementation of (3), certain process constants might be adjusted to apply appropriate weight to the a priori information. 
         [0044]    If no maintenance or test stand information is available (step  108 ), then x 0   (a-priori) =0, which indicates the engine is nominal (zero percent delta from nominal) as the default position to begin the estimation. 
         [0045]    The method culminates with the state estimation process (step  111 ) ( 3 ) yielding a performance state estimate x 0   (INIT)  vector that is the result of the method (step  112 ) for inclusion in subsequent module performance tracking of the engine. 
         [0046]    Subsequent processing for tracking module performance changes would use the same strategy as in (3) wherein, the first data sample available after initialization, z 1 , would be processed to yield the first performance estimate after initialization as 
         [0000]        {circumflex over (x)}   1   =f ( z   1   , x   0   (INIT) ).   (5) 
         [0047]    Using the method of the invention, the performance tracking that follows has been initialized. The next data sample Z 2  would be processed to yield the next performance change estimate, 
         [0000]        {circumflex over (x)}   2    =f ( z   2   , {circumflex over (x)}   1 ),   (6) 
         [0048]    and so forth. 
         [0049]    One or more embodiments of the present invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other embodiments are within the scope of the following claims.