Abstract:
An engine misfire system comprises a rough road detection module and a misfire detection module. The rough road detection module selectively generates a rough road indicator based upon a transmission output speed of a vehicle. The misfire detection module selectively diagnoses engine misfire and selectively generates a misfire indicator based on diagnosed engine misfire and the rough road indicator.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims the benefit of U.S. Provisional Application No. 60/986,722, filed on Nov. 9, 2007. The disclosure of the above application is incorporated herein by reference. 
     
    
     FIELD 
       [0002]    The present disclosure relates to engine systems, and more particularly to engine misfire. 
       BACKGROUND 
       [0003]    The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure. 
         [0004]    Referring now to  FIG. 1 , a vehicle  100  is presented. The vehicle  100  includes an engine  102  that generates torque. The engine  102  transfers torque to a transmission  104  via a crankshaft  106 . The vehicle  100  moves when torque is transferred to one or more wheels (not shown) of the vehicle  100 . A crankshaft sensor  108  generates a crankshaft signal based upon the rotation of the crankshaft  106 . 
         [0005]    An engine misfire may disturb the rotation of the crankshaft  106 , which may cause a fluctuation in the crankshaft signal. Engine misfire may occur for a number of reasons, such as improper delivery of fuel, air, and/or spark. A misfire detection module  130  receives the crankshaft signal and determines whether engine misfire has occurred based upon the crankshaft signal. 
         [0006]    Rough road conditions may cause fluctuations in the crankshaft signal similar to those fluctuations caused by engine misfire. Therefore, rough road conditions may cause the misfire detection module  130  to incorrectly determine that engine misfire has occurred. However, engine misfire may be distinguishable from rough road conditions. 
         [0007]    A rough road detection module  150  generates a rough road signal, which indicates whether rough road conditions are present, based upon the crankshaft signal. The misfire detection module  130  may discount detected engine misfire when the rough road signal is received. 
       SUMMARY 
       [0008]    An engine misfire system comprises a rough road detection module and a misfire detection module. The rough road detection module selectively generates a rough road indicator based upon a transmission output speed of a vehicle. The misfire detection module selectively diagnoses engine misfire and selectively generates a misfire indicator based on diagnosed engine misfire and the rough road indicator. 
         [0009]    In further features, the rough road detection module disables generation of the rough road indicator when at least one of a gear shift is occurring and the transmission output speed is less than a predetermined speed. 
         [0010]    In still further features, the rough road detection module disables generation of the rough road indicator when a transmission of the vehicle is in one of park and neutral. 
         [0011]    In other features, the rough road detection module disables generation of the rough road indicator while a torque converter clutch transitions between a first state and a second state. 
         [0012]    In still other features, the rough road detection module disables generation of the rough road indicator when an engine load transitions across a load threshold. 
         [0013]    In further features, the rough road detection module selectively performs a statistical analysis of derivatives of the transmission output speed and disables performance of the statistical analysis when generation of the rough road indicator is disabled. 
         [0014]    In still further features, performance of the statistical analysis remains disabled for a period of time after generation of the rough road indicator is reenabled. 
         [0015]    In other features, the rough road detection module generates a statistical value for one of the derivative values based upon the one of the derivative values and a result of the statistical analysis, and the rough road detection module generates the rough road indicator based upon a comparison of the statistical value with a predetermined rough road value. 
         [0016]    In further features, the result of the statistical analysis is an average of the derivative values, and the statistical value is generated based on a magnitude of a difference of the one of the derivative values and the result of the statistical analysis. 
         [0017]    In still further features, the misfire detection module selectively disables generation of the misfire indicator when the rough road indicator is generated during a period of time. 
         [0018]    In other features, the misfire detection module enables generation of the misfire indicator when the rough road indicator is generated during the period and at least one of an abusive misfire and a periodic misfire is detected during the period. 
         [0019]    In further features, the misfire detection module detects the periodic misfire when more than a first predetermined number of engine misfires are diagnosed within a cylinder during the period. 
         [0020]    In other features, the misfire detection module detects the abusive misfire when more than a second predetermined number of engine misfires are diagnosed during the period. 
         [0021]    An engine misfire system of a vehicle comprises a rough road detection module and a misfire detection module. The rough road detection module selectively generates a rough road indicator and disables generation of the rough road indicator when at least one of a gear shift is occurring and a speed of the vehicle is less than a predetermined speed. The misfire detection module selectively diagnoses engine misfire and selectively generates a misfire indicator based on diagnosed engine misfire and the rough road indicator. 
         [0022]    In further features, the speed is a transmission output speed of the vehicle. 
         [0023]    In still further features, the rough road detection module disables generation of the rough road indicator when a transmission of the vehicle is in one of park and neutral. 
         [0024]    In other features, the rough road detection module disables generation of the rough road indicator while a torque converter clutch transitions between a first state and a second state. 
         [0025]    In still other features, the rough road detection module disables generation of the rough road indicator when an engine load transitions across a load threshold. 
         [0026]    In further features, the rough road detection module selectively performs a statistical analysis of derivative values of the speed and disables performance of the statistical analysis when generation of the rough road indicator is disabled. 
         [0027]    In still further features, the performance of the statistical analysis remains disabled for a period of time after generation of the rough road indicator is reenabled. 
         [0028]    In other features, the rough road detection module generates a statistical value for one of the derivative values based upon the one of the derivative values and a result of the statistical analysis and generates the rough road indicator based upon a comparison of the statistical value with a predetermined rough road value. 
         [0029]    In further features, the result of the statistical analysis is an average of the derivative values, and the statistical value is generated based on a magnitude of a difference of the one of the derivative values and the result of the statistical analysis. 
         [0030]    In other features, the misfire detection module selectively disables generation of the misfire indicator when the rough road indicator is generated during a period of time. 
         [0031]    In further features, the misfire detection module enables generation of the misfire indicator when the rough road indicator is generated during the period and at least one of an abusive misfire and a periodic misfire is detected during the period. 
         [0032]    In still further features, the misfire detection module detects the periodic misfire when more than a first predetermined number of engine misfires are diagnosed within a cylinder during the period. 
         [0033]    In other features, the misfire detection module detects the abusive misfire when more than a second predetermined number of engine misfires are diagnosed during the period. 
         [0034]    A method comprises selectively generating a rough road indicator based upon a transmission output speed of a vehicle, selectively diagnosing engine misfire, and selectively generating a misfire indicator based on diagnosed engine misfire and the rough road indicator. 
         [0035]    In further features, the method further comprises disabling generation of the rough road indicator when at least one of a gear shift is occurring and the transmission output speed is less than a predetermined speed. 
         [0036]    In still further features, the method further comprises disabling generation of the rough road indicator when a transmission of the vehicle is in one of park and neutral. 
         [0037]    In other features, the method further comprises disabling generation of the rough road indicator while a torque converter clutch transitions between a first state and a second state. 
         [0038]    In still other features, the method further comprises disabling generation of the rough road indicator when an engine load transitions across a load threshold. 
         [0039]    In further features, the method further comprises selectively performing a statistical analysis of derivatives of the transmission output speed, and disabling performance of the statistical analysis when generation of the rough road indicator is disabled. 
         [0040]    In other features, performance of the statistical analysis remains disabled for a period of time after generation of the rough road indicator is reenabled. 
         [0041]    In still other features, the method further comprises generating a statistical value for one of the derivative values based upon the one of the derivative values and a result of the statistical analysis, and generating the rough road indicator based upon a comparison of the statistical value with a predetermined rough road value. 
         [0042]    In further features, the result of the statistical analysis is an average of the derivative values, and the statistical value is generated based on a magnitude of a difference of the one of the derivative values and the result of the statistical analysis. 
         [0043]    In still further features, the method further comprises selectively disabling generation of the misfire indicator when the rough road indicator is generated during a period of time. 
         [0044]    In other features, the method further comprises enabling generation of the misfire indicator when the rough road indicator is generated during the period and at least one of an abusive misfire and a periodic misfire is detected during the period. 
         [0045]    In still other features, the method further comprises detecting the periodic misfire when more than a first predetermined number of engine misfires are diagnosed within a cylinder during the period. 
         [0046]    In further features, the method further comprises detecting the abusive misfire when more than a second predetermined number of engine misfires are diagnosed during the period. 
         [0047]    A method comprises selectively generating a rough road indicator, disabling generation of the rough road indicator when at least one of a gear shift is occurring and a speed of the vehicle is less than a predetermined speed, selectively diagnosing engine misfire, and selectively generating a misfire indicator based on diagnosed engine misfire and the rough road indicator. 
         [0048]    In other features, the speed is a transmission output speed of the vehicle. 
         [0049]    In further features, the method further comprises disabling generation of the rough road indicator when a transmission of the vehicle is in one of park and neutral. 
         [0050]    In still further features, the method further comprises disabling generation of the rough road indicator while a torque converter clutch transitions between a first state and a second state. 
         [0051]    In other features, the method further comprises disabling generation of the rough road indicator when an engine load transitions across a load threshold. 
         [0052]    In still other features, the method further comprises selectively performing a statistical analysis of derivative values of the speed, and disabling performance of the statistical analysis when generation of the rough road indicator is disabled. 
         [0053]    In other features, performance of the statistical analysis remains disabled for a period of time after generation of the rough road indicator is reenabled. 
         [0054]    In further features, the method further comprises generating a statistical value for one of the derivative values based upon the one of the derivative values and a result of the statistical analysis, and generating the rough road indicator based upon a comparison of the statistical value with a predetermined rough road value. 
         [0055]    In other features, the result of the statistical analysis is an average of the derivative values, and the statistical value is generated based on a magnitude of a difference of the one of the derivative values and the result of the statistical analysis. 
         [0056]    In further features, the method further comprises selectively disabling generation of the misfire indicator when the rough road indicator is generated during a period of time. 
         [0057]    In still further features, the method further comprises enabling generation of the misfire indicator when the rough road indicator is generated during the period and at least one of an abusive misfire and a periodic misfire is detected during the period. 
         [0058]    In other features, the method further comprises detecting the periodic misfire when more than a first predetermined number of engine misfires are diagnosed within a cylinder during the period. 
         [0059]    In further features, the method further comprises detecting the abusive misfire when more than a second predetermined number of engine misfires are diagnosed during the period. 
         [0060]    Further areas of applicability of the present disclosure will become apparent from the detailed description provided hereinafter. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the disclosure, are intended for purposes of illustration only and are not intended to limit the scope of the disclosure. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0061]    The present disclosure will become more fully understood from the detailed description and the accompanying drawings, wherein: 
           [0062]      FIG. 1  is a functional block diagram of a vehicle according to the prior art; 
           [0063]      FIG. 2  is a functional block diagram of an exemplary vehicle according to the principles of the present disclosure; 
           [0064]      FIG. 3  is a functional block diagram of an exemplary misfire detection module according to the principles of the present disclosure; 
           [0065]      FIG. 4  is a functional block diagram of an exemplary rough road detection module according to the principles of the present disclosure; 
           [0066]      FIG. 5  is an exemplary graphical illustration of effects that low vehicle speed and gear shifts may have on rough road detection according to the principles of the present disclosure; 
           [0067]      FIG. 6  is an exemplary graphical illustration of dispersion values calculated by the rough road detection module according to the principles of the present disclosure; and 
           [0068]      FIG. 7  is a flowchart depicting exemplary steps performed by the rough road detection module according to the principles of the present disclosure. 
       
    
    
     DETAILED DESCRIPTION 
       [0069]    The following description is merely exemplary in nature and is in no way intended to limit the disclosure, its application, or uses. For purposes of clarity, the same reference numbers will be used in the drawings to identify similar elements. As used herein, the phrase at least one of A, B, and C should be construed to mean a logical (A or B or C), using a non-exclusive logical or. It should be understood that steps within a method may be executed in different order without altering the principles of the present disclosure. 
         [0070]    As used herein, the term module refers to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality. 
         [0071]    Referring now to  FIG. 2 , a functional block diagram of an exemplary vehicle  200  is presented. The vehicle  200  includes an engine  204  that generates torque. The engine  204  may include any suitable type of engine, such as a gasoline type internal combustion engine (ICE), a diesel type ICE, an electric type engine, or a hybrid type engine. For purposes of clarity only, the engine  204  will be discussed as a gasoline type ICE. 
         [0072]    Air is drawn into the engine  204  through an intake manifold  206 . The volume of air drawn into the engine  204  may be varied by a throttle valve  208 . One or more fuel injectors  210  mix fuel with the air to form a combustible air-fuel mixture. A cylinder  212  includes a piston (not shown) that is attached to a crankshaft  214 . Although the engine  204  is depicted as including one cylinder  212 , the engine  204  may include more than one cylinder  212 . 
         [0073]    Combustion of the air-fuel mixture may include four phases: an intake phase, a compression phase, a combustion phase, and an exhaust phase. During the intake phase, the piston is lowered to a bottom position and the air and fuel are introduced into the cylinder  212 . During the compression phase, the air-fuel mixture is compressed within the cylinder  212 . 
         [0074]    The combustion phase begins when, for example, spark from a spark plug (not shown) ignites the air-fuel mixture. The combustion of the air-fuel mixture causes the piston to rotatably drive the crankshaft  214 . This rotational force (i.e., torque) may be the compressive force to compress the air-fuel mixture during the compression phase of another cylinder. Resulting exhaust gas is expelled from the cylinder  212  to complete the exhaust phase and the combustion process. 
         [0075]    An engine output speed (EOS) sensor  216  generates an EOS signal based upon, for example, rotation of the crankshaft  214 . The EOS sensor  216  may include a variable reluctance (VR) sensor or any other suitable type of EOS sensor. The EOS signal may include a pulse train. Each pulse of the pulse train may be generated as a tooth of an N-toothed wheel  218 , which rotates with the crankshaft  214 , passes the VR sensor. Accordingly, each pulse may correspond to an angular rotation of the crankshaft  214  by an amount equal to 360° divided by N teeth. The N-toothed wheel  218  may also include a gap of one or more missing teeth. 
         [0076]    Engine misfire may occur for a number of reasons, such as improper delivery of fuel, air, and/or spark. Engine misfire may disturb the rotation of the crankshaft  214 , thereby causing fluctuations in the EOS signal. A misfire detection module  230  determines whether engine misfire has occurred based upon the EOS signal. The misfire detection module  230  may also determine whether engine misfire qualifies as a certain type of engine misfire. For example only, the misfire detection module  230  may determine whether engine misfire qualifies as abusive misfire or periodic misfire. 
         [0077]    The engine  204  may transfer torque to a transmission  240  via the crankshaft  214 . Torque may be transferred from the engine  204  to the transmission  240  via a torque converter  241  if the transmission  240  is an automatic-type transmission. The transmission  240  may transfer torque to one or more wheels (not shown) of the vehicle  200  via a driveshaft  242 . 
         [0078]    A transmission output speed (TOS) sensor  244  generates a TOS signal based upon, for example, the rotation of the driveshaft  242 . The TOS sensor  244  may include a VR sensor or any other suitable type of TOS sensor. The TOS signal may include a pulse train. Each pulse of the pulse train may be generated by the VR sensor as a tooth of an N-toothed wheel  246 , which rotates with the driveshaft  242 , passes the VR sensor. Accordingly, each pulse may correspond to an angular rotation of the driveshaft  242  by an amount equal to 360° divided by N teeth. 
         [0079]    Rough road conditions may exert forces on one or more wheels of the vehicle  200  that disturb the rotation of the driveshaft  242 . A rough road detection module  250  detects rough road conditions based upon the effects these disturbances have on the TOS signal. The rough road detection module  250  generates a rough road signal, which indicates whether the vehicle is traveling on rough road. Normal vehicle operations, such as gear shifts and low vehicle speeds, may affect the reliability of rough road detection. 
         [0080]    Gear shifts may cause greater fluctuations in the TOS signal when the transmission  240  is a manual-type transmission because gear shifts are not damped by the torque converter  241 . Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road during gear shifts. 
         [0081]    In various implementations, the rough road detection module  250  determines whether a gear shift is occurring based upon the ratio of the EOS signal to the TOS signal. For example only, a gear shift may be occurring when the ratio changes. Alternatively, the rough road detection module  250  may determine whether a gear shift is occurring in any suitable manner, such as whether a clutch is disengaged within the transmission  240 . For example, the clutch may be disengaged in a manual transmission by depressing a clutch pedal. In an automatic transmission, the clutch may be disengaged hydraulically. 
         [0082]    Also, when a gear is engaged in the transmission  240 , low EOS may cause fluctuations in the TOS signal. For example, for a predetermined gear, the vehicle may move, such as side-to-side, when the EOS is less than a vehicle movement threshold. In various implementations, the vehicle movement threshold may be calibratable and may be set based on the gear that is engaged. The movement of the vehicle may cause fluctuations in the TOS signal, which may cause the rough road detection module  250  to incorrectly detect rough road. Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road when a predetermined gear is selected and the EOS is less than the vehicle movement threshold. 
         [0083]    When the vehicle  200  first begins to move, the rough road detection module  250  may not have enough TOS data to accurately detect rough road conditions. For example, acceleration at low vehicle speeds may be exaggerated by the low vehicle speed and may be incorrectly diagnosed as rough road conditions. Also, any noise present in the TOS signal may be exacerbated at low vehicle speeds. Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road at times when the vehicle is traveling at low speeds. 
         [0084]    Disturbances of the rotation of the driveshaft  242  caused by rough road conditions may mechanically translate to the crankshaft  214  and cause fluctuations in the EOS signal. Accordingly, rough road conditions may cause the misfire detection module  230  to incorrectly detect engine misfire. The misfire detection module  230  receives the rough road signal and may discount engine misfire detected when rough road conditions are present. 
         [0085]    Various transmission states, such as neutral or park, may obviate the need for the detection of rough road conditions. For example only rough road conditions are unlikely to affect the detection of engine misfire when the transmission  240  is decoupled from the engine  204 , such as when the transmission  240  is in neutral or park. The rough road detection module  250  may determine whether the transmission  240  is in neutral or park in any suitable manner, such as when the TOS signal indicates that the TOS is zero. Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road when the transmission  240  is in park or neutral. 
         [0086]    The misfire detection module  230  may incorrectly detect engine misfire when the engine  204  is operating under various engine load conditions. The misfire detection module  230  may determine the engine load based on, for example, mass airflow (MAF), manifold absolute pressure (MAP), and/or EOS. The MAF and the MAP may be provided by a MAF sensor  252  and a MAP sensor  254 , respectively. For example, when the engine load is low, a sudden increase in torque production may cause a fluctuation in the EOS signal. Such a fluctuation may cause the misfire detection module  230  to incorrectly detect engine misfire. 
         [0087]    The engine load may be expressed as a percentage in terms of air per cylinder (APC) during combustion. The engine  204  may be able to produce a maximum amount of torque when the APC is a predetermined APC, referred to as maximum APC. The engine load may be expressed using the equation: 
         [0000]    
       
         
           
             
               
                 Engine 
                  
                 
                     
                 
                  
                 Load 
               
               = 
               
                 APC 
                 
                   APC 
                   MAX 
                 
               
             
             , 
           
         
       
     
       Engine Load=APC APC MAX    
       [0088]    where APC MAX  is the APC at which the engine  204  may produce the greatest torque. 
         [0089]    The misfire detection module  230  may pause engine misfire detection when the engine load is low (e.g., less than a threshold) and a sudden torque increase is detected. In various implementations, the torque increase may be indicated by an increase in the opening of the throttle valve  208 , thereby allowing more air into the engine  204 . The misfire detection module  230  may detect increases in opening of the throttle valve  208  based on a throttle position signal provided by a throttle position sensor (TPS)  256 . 
         [0090]    As the misfire detection module  230  discounts engine misfire detected when the vehicle is traveling on rough road, rough road detection may be unnecessary when engine misfire detection is paused. Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road when the engine misfire detection is paused. 
         [0091]    Engine load conditions may also cause the rough road detection module  250  to incorrectly detect rough road. For example, engine misfire may cause a disturbance in the TOS signal when the engine load is high (e.g., greater than a threshold). This disturbance may then be incorrectly detected as rough road by the rough road detection module  250 . In turn, this incorrectly detected rough road may then cause the misfire detection module  230  to incorrectly discount the engine misfire that occurred. Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road when the engine load is high. The rough road detection module  250  may also refrain from indicating that the vehicle is traveling on rough road when the engine load transitions across the threshold. 
         [0092]    A qualifying misfire event may occur when engine misfire is detected and rough road conditions are not present. The misfire detection module  230  generates a qualifying misfire signal, which indicates whether a qualifying misfire event has occurred, after a predetermined number of engine cycles. For example only, the predetermined number of engine cycles may be 100 engine cycles. For ease of explanation only, the predetermined number of engine cycles will be referred to hereinafter as 100 engine cycles, even though the predetermined number of engine cycles may be greater or smaller than 100. 
         [0093]    A misfire mitigation module  280  determines whether to take action based upon the qualifying misfire signal. This determination may also be based upon previously received qualifying misfire signals. For example only, the misfire mitigation module  280  may adjust the combustion process when the qualifying misfire signal indicates that a qualifying misfire event has occurred. 
         [0094]    The misfire mitigation module  280  may also illuminate a light, such as a “check engine” light, when at least N number of the last M number of qualifying misfire signals (where N≦M) indicate that a qualifying misfire event has occurred. For example only, N may be 5, and M may be 16. The misfire mitigation module  280  and any other modules described in the present disclosure may be implemented in an engine control module (ECM)  290 . 
         [0095]    The misfire mitigation module  280  may employ various measures to verify that detected engine misfire is actually engine misfire. For example only, when the transmission  240  is an automatic transmission, the misfire mitigation module  280  may selectively generate a torque converter clutch (TCC) signal. For example only, the misfire mitigation module  280  may generate the TCC signal when an engine misfire is expected. 
         [0096]    A clutch within the torque converter  241  disengages when the TCC signal is generated, thereby isolating the engine  204  and the transmission  240 . Rough road conditions are not likely to be detected as engine misfire when the torque converter clutch is disengaged (i.e., when the TCC signal is generated). Accordingly, the rough road detection module  250  may refrain from indicating that the vehicle is traveling on rough road when the TCC signal is generated (i.e., when the TCC is disengaged). The rough road detection module  250  may also refrain from indicating that the vehicle is traveling on rough road while the torque converter clutch transitions from disengaged to engaged or from engaged to disengaged. The TCC may also be maintained in a controlled slip state where engaging of the TCC is adjusted to maintain the difference between the EOS and the transmission input speed at a desired value. 
         [0097]    Referring now to  FIG. 3 , a functional block diagram of an exemplary implementation of the misfire detection module  230  is presented. For ease of explanation only, the misfire detection module  230  will be described for the implementation where the engine  204  has six (6) cylinders. A mathematical calculation module  302  generates an acceleration value for each of the cylinders based upon the EOS signal. 
         [0098]    In various implementations, one engine cycle may include two revolutions of the crankshaft  214  (i.e., 720° of crankshaft rotation). The acceleration value for each cylinder may be generated based upon a 120° window of EOS data (i.e., 720° divided by 6 cylinders). For example only, the acceleration value for each cylinder may be a peak or average acceleration within the window. Alternatively, the acceleration value may be the acceleration measured at a predetermined piston position for that cylinder, such as piston top-dead-center. 
         [0099]    For each engine cycle, a misfire determination module  304  may select one or more of the cylinders in which engine misfire most likely occurred. For example only, the misfire determination module  304  may select the two cylinders having the greatest acceleration values. Although the misfire determination module  304  is described as selecting two cylinders, the misfire determination module  304  may select more or fewer cylinders, or even all of the cylinders. For ease of explanation only, the misfire determination module  304  will be described as selecting two cylinders. 
         [0100]    The misfire determination module  304  may determine whether engine misfire has occurred based upon the acceleration values of the selected cylinders. For example only, the misfire determination module  304  may determine that engine misfire has occurred within one of the selected cylinders when the acceleration value of that cylinder is greater than a misfire threshold. The misfire threshold may be a minimum acceleration value that is indicative of engine misfire and may be, for example, experimentally determined or calculated from a model. In various implementations, the misfire determination module  304  may compare the magnitudes of the acceleration values with the misfire threshold. 
         [0101]    The misfire determination module  304  generates a misfire count for each engine misfire that is detected. The misfire counts may indicate, for example, the cylinder where the engine misfire was detected. The misfire determination module  304  transmits the misfire counts to a buffer module  305 . The buffer module  305  may be implemented in, for example, nonvolatile memory (not shown) and may include a misfire counter for each cylinder. Each misfire counter indicates the number of engine misfires detected within a respective cylinder. 
         [0102]    Engine load conditions, however, may cause incorrect detection of engine misfire. The misfire detection module  230  includes an engine load module  306  that determines the engine load (%). For example only, the engine load module  306  may determine the engine load based on the MAF, the MAP, and/or the RPM. 
         [0103]    The misfire detection module  230  also includes a misfire pause module  307 . The misfire pause module  307  selectively generates a misfire pause signal, which instructs the buffer module  305  to pause counting the detected engine misfires. For example only, the misfire pause module  307  may generate the misfire pause signal when the engine load is less than a low load threshold and a sudden torque increase is detected. For example only, the low load threshold may be 70%. In various implementations, the torque increase may be indicated by an increase in the opening of the throttle valve  208 , as indicated by the throttle position signal from the TPS sensor  256 . 
         [0104]    In various implementations, a qualifying misfire module  308 , an abusive misfire module  310 , and a periodic misfire module  312  may analyze the misfire counters of the buffer module  305  after each period of 100 engine cycles. A counter  314  tracks the number of engine cycles. For example only, the counter  314  may be incremented after each engine cycle. The completion of an engine cycle may be indicated by, for example, the gap of the N-toothed wheel  218 . The counter  314  generates a reset signal after every period of 100 engine cycles and transmits the reset signal to the buffer module  305  and a latching module  316 . The buffer module  305  may reset the misfire counters after receiving the reset signal. 
         [0105]    In various implementations, the latching module  316  may include an S-R latch that includes a set input and a reset input. The latching module  316  receives the rough road signal from the rough road detection module  250  at the set input and the reset signal from the counter  314  at the reset input. The latching module  316  may generate an output signal indicating that rough road conditions are present once the latching module  316  receives the rough road signal. 
         [0106]    The latching module  316  may continue generating the output signal indicating that rough road conditions are present until the reset signal is received (i.e., after every 100 engine cycles). Once the reset signal is received, the latching module  316  generates the output signal indicating that rough road conditions are not present. 
         [0107]    In various implementations, the total (sum) of the misfire counters of the buffer module  305  may be a maximum of 200 for each period of 100 engine cycles (i.e., 100 engine cycles*2 selected cylinders per engine cycle). The abusive misfire module  310  generates an abusive misfire signal, which indicates whether abusive misfire occurred, based upon the total of the misfire counters during each period of 100 engine cycles. For example only, abusive misfire may have occurred when the total of the misfire counters (i.e., the total number of engine misfires detected) is greater than a threshold. This threshold may be referred to as an abusive misfire threshold and may be, for example, 180. 
         [0108]    The abusive misfire detection may be accomplished in any suitable manner. For example, a method of detecting abusive misfire is discussed in detail in commonly assigned U.S. patent application Ser. No. 11/428,010, filed Jun. 30, 2006, the disclosure of which is incorporated herein by reference in its entirety. 
         [0109]    Each cylinder may experience a maximum of 100 misfires during a period of 100 engine cycles. Accordingly, the misfire counter for a cylinder may have a maximum value of 100 during a period of 100 engine cycles. The periodic misfire module  312  generates a periodic misfire signal, which indicates whether periodic misfire has occurred, based upon the misfire counters. For example only, periodic misfire may have occurred when the misfire counter (i.e., the number of engine misfires detected) of one or more cylinders is greater than a threshold. This threshold may be referred to as a periodic misfire threshold and may be, for example, 50. 
         [0110]    A misfire disable module  318  receives the output signal from the latching module  316  and inverted versions of the abusive and periodic misfire signals. The misfire disable module  318  determines whether engine misfire detection should be discounted based upon the received signals and generates a misfire disable signal when engine misfire should be discounted. 
         [0111]    It is unlikely that a determination of periodic or abusive misfire was caused by rough road conditions. Accordingly, the misfire disable module  318  may generate the misfire disable signal when rough road conditions have been detected and neither abusive nor periodic misfire has occurred. In various implementations, the misfire disable module  318  may include a logic “AND” gate. 
         [0112]    The qualifying misfire module  308  determines whether a qualifying misfire event has occurred based upon the misfire disable signal and the misfire counters. The qualifying misfire module  308  generates the qualifying misfire signal accordingly. For example only, a qualifying misfire event may have occurred when engine misfire has occurred and the misfire disable signal is not received. Furthermore, the qualifying misfire module  308  may, for example, discount engine misfire detected when the misfire disable signal is received. In other words, the qualifying misfire module  308  may refrain from indicating that a qualifying misfire has occurred if the disable signal is received. 
         [0113]    Referring now to  FIG. 4 , a functional block diagram of an exemplary implementation of the rough road detection module  250  is presented. A shift detection module  402  generates a gear shift signal, which indicates that a gear shift is occurring. The shift detection module  402  may determine whether a gear shift is occurring in any suitable manner, such as based upon the ratio of the EOS signal to the TOS signal. For example only, a change in the ratio may indicate that a gear shift is occurring. 
         [0114]    The rough road detection module  250  may include a transmission state module  404  that generates a transmission state signal when the transmission  240  is in neutral or park. In various implementations, the transmission  240  may be in neutral or park when the EOS signal indicates that the EOS is greater than zero and the TOS signal indicates that the TOS is zero. 
         [0115]    Various engine load conditions may also affect detection of rough road, which may, in turn, affect engine misfire detection. The rough road detection module  250  may include a max load module  406  that receives the engine load signal from the engine load module  306 . The max load module  406  selectively generates a max load signal based on a comparison of the engine load with a max load threshold. For example only, the max load threshold may be 90%. The max load module  406  may generate the max load signal when the engine load is greater than the max load threshold. In this manner, the max load signal is generated when the engine load is high. In other implementations, the max load signal may be generated when the engine load transitions across the max load threshold. 
         [0116]    The rough road detection module  250  includes a transmission output speed module  408  that determines a TOS based upon the TOS signal. In various implementations, the transmission output speed module  408  may filter, buffer, or digitize, or sample the TOS signal. For example only, the transmission output speed module  408  may sample the TOS signal a predetermined sampling rate, such as one sample every 25 ms. 
         [0117]    A comparison module  410  determines whether the vehicle speed is low based upon the TOS and generates a low speed signal accordingly. The comparison module  410  may determine that the vehicle speed is low when the TOS is less than a speed threshold. For example only, the speed threshold may be one-hundred (100) revolutions per minute (RPM) of the driveshaft  242 . 
         [0118]    Gear shifts, low vehicle speeds, and/or high engine load may cause the rough road detection module  250  to incorrectly detect rough road. Additionally, rough road detection may be unnecessary when the transmission  240  is in neutral or park, the torque converter clutch is transitioning, and/or engine misfire detection is paused. 
         [0119]    A disable module  412  selectively generates a disable signal based on the gear shift signal, the transmission state signal, the max load signal, and the low speed signal. Additionally, the disable module  412  may generate the disable signal based on the misfire pause signal from the misfire pause module  307  and the TCC signal from the misfire mitigation module  280 . In various implementations, the disable module  412  may include a logic “OR” gate. 
         [0120]    For example only, the disable module  412  may generate the disable signal when a gear shift is occurring and/or the vehicle speed is low. The disable module  412  may also generate the disable signal when the transmission  240  is in park or neutral, when the torque converter clutch is transitioning, when engine misfire detection is paused, and/or when the engine load is high. Additionally, when a predetermined gear is engaged in the transmission  240 , the disable module  412  may generate the disable signal when the EOS is less than the vehicle movement threshold. 
         [0121]    A derivative module  414  generates a derivative value based upon the TOS. The derivative value may include a first derivative, second derivative, or any other suitable derivative value of the TOS. For example only, the derivative value may be generated based upon the change in TOS over the period between two successive TOS samples (e.g., 25 ms). Alternatively, the derivative values may be generated in any suitable manner, such as calculating a derivative of the TOS signal. 
         [0122]    A statistical module  416  performs a statistical analysis based upon the derivative values. For example only, the statistical module  416  may calculate a dispersion value for each of the derivative values. In various implementations, the dispersion value of a derivative value may be calculated using the equation: 
         [0000]    
       
         
           
             
               
                 1 
                 M 
               
                
               
                 
                   ∑ 
                   
                     i 
                     = 
                     1 
                   
                   M 
                 
                  
                 
                     
                 
                  
                 
                    
                   
                     
                       D 
                        
                       
                           
                       
                        
                       
                         V 
                         N 
                       
                     
                     - 
                     
                       D 
                        
                       
                           
                       
                        
                       
                         V 
                         AVG 
                       
                     
                   
                    
                 
               
             
             , 
           
         
       
     
         [0000]    where M is the number of derivative values used in performing the statistical analysis, DV N  is the Nth derivative value, and DV AVG  is the average (mean) of the derivative values. Although average absolute deviation is described, the dispersion values may be calculated using any other suitable statistical analysis, such as interquartile range, or mean-difference. 
         [0123]    The statistical module  416  may wait to begin performing the statistical analysis until a statistically significant number of derivative values have been received. In other words, the statistical module  416  may wait to begin performing the statistical analysis until M is a predetermined value. DV AVG  may include a running average of the received derivative values. Alternatively, DV AVG  may include the average of a predetermined window of the most recently received derivative values. For example only, DV AVG  may be the average of the one hundred most recently received derivative values. 
         [0124]    The statistical module  416  disables performance of the statistical analysis when the disable signal is generated. In this manner, the statistical module  416  disables performance of the statistical analysis when rough road detection may be unreliable or when rough road detection may be unnecessary. In this manner, derivative values received while rough road detection is disabled are not taken into account in the calculation of DV AVG  or the performance of the statistical analysis. 
         [0125]    Additionally, the statistical module  416  may reset DV AVG  and may begin performing the statistical analysis again after the disable signal is generated. For example only, the statistical module  416  may reset DV AVG  to zero or to a value that corresponds to smooth road conditions. After receiving the disable signal, the statistical module  416  may also wait to perform the statistical analysis for a predetermined or a calibratable period of time. This period may set to correspond to the event that triggered the disabling of rough road detection. For example only, when rough road detection is disabled due to a gear shift, the period may correspond to the time that the gear shift is expected to affect rough road detection. 
         [0126]    A rough road identification module  418  determines whether rough road conditions are present based upon the dispersion values and generates a rough road signal accordingly. For example only, the rough road identification module  418  may determine that rough road conditions are present when at least one of the dispersion values is greater than a rough road threshold. The rough road threshold may be set to a minimum dispersion value indicative of rough road conditions and may be experimentally determined or calculated from a model. 
         [0127]    Referring now to  FIG. 5 , an exemplary graphical illustration of effects that low vehicle speed and gear shifts may have on rough road detection is presented. Plot  510  depicts an exemplary TOS trace  512 . Plot  520  depicts selected transmission gear. Plot  530  depicts exemplary dispersion values calculated based upon samples of the TOS trace  512 . 
         [0128]    At sample zero, plot  510  shows that the TOS is zero (i.e., the vehicle  200  is stationary), and plot  520  shows that 1st gear is engaged. Dashed line  550  of plot  530  represents an exemplary rough road threshold. The rough road detection module  250  may detect rough road conditions when at least one of the dispersion values is greater than the rough road threshold. 
         [0129]    Low vehicle speeds and gear shifts may cause the rough road detection module  250  to incorrectly detect rough road conditions. The vehicle  200  begins to move shortly before sample  400 . The vehicle speed may be considered low until the TOS signal is greater than a threshold, such as dashed line  552 . The low vehicle speed may cause large dispersion values, as indicated by reference numeral  554  of plot  530 . For example, DV AVG  may be low when the vehicle  200  begins to move due to a large number of prior zero derivative values. Also, the TOS signal from the TOS sensor  244  may be noisy, and therefore unreliable for rough road detection, at low vehicle speeds. 
         [0130]    Dashed line  555  represents a time when the vehicle speed is no longer low (i.e., when the TOS becomes greater than the speed threshold). Accordingly, the low vehicle speed should no longer cause the incorrect detection of rough road conditions. The dispersion values subsequent to the dashed line  555  indicate that the rough road detection module  250  will no longer detect the presence of rough road conditions. 
         [0131]    A gear shift from 1st gear to 2nd gear occurs shortly before sample  1200 , as indicated by reference numeral  556  in plot  520 . Large dispersion values can be observed around the gear shift, as indicated by reference numeral  558  of plot  530 . For example, the two dispersion peaks at reference numeral  558  may be caused by the clutch in the transmission  240  being disengaged and then reengaged. In various implementations, the second dispersion peak at reference numeral  558  may not be observed. For example only, the second dispersion peak may not be observed when the transmission  240  is an automatic transmission and the gear shift is damped by a torque converter. 
         [0132]    Referring now to  FIG. 6 , an exemplary graphical illustration of dispersion values calculated by the rough road detection module  250  based upon the TOS trace  512  of  FIG. 5  is presented. The dashed line  550  represents the exemplary rough road threshold from plot  530  of  FIG. 5 . The rough road detection module  250  disables the statistical analysis during low vehicle speeds and/or gear shifts. Accordingly, the derivative values during gear shifts and low vehicle speeds are discounted in the performance of the statistical analysis. As indicated by the dispersion values of  FIG. 6 , the rough road detection module  250  no longer detects rough road conditions upon gear shifts and/or low vehicle speeds. 
         [0133]    Referring now to  FIG. 7 , a flowchart depicts exemplary steps performed by the rough road detection module  250 . Control begins in step  702  when the vehicle  200  is started. Control then determines whether the transmission output speed is less than the speed threshold. If so, control transfers to step  704 ; otherwise, control continues in step  706 . 
         [0134]    In step  704 , control sets a delay counter equal to the greater of the delay counter and a low speed delay. For example only, the low speed delay may correspond to a period that control expects the low vehicle speed to affect rough road detection after the low vehicle speed ceases. Control then continues in step  708  where control resets first and second counters, rough road computation variables, and rough road calculations. The rough road computation variables may include, for example, DV AVG . The first counter, the second counter, and the rough road calculations are discussed in detail below. 
         [0135]    In step  706 , control determines whether a gear shift is occurring. If so, control transfers to step  710 ; otherwise, control continues in step  712 . In step  710 , control sets the delay counter equal to the greater of the delay counter and a gear shift delay, and control returns to step  708 . For example only, the gear shift delay may correspond to a period that control expects the gear shift to affect rough road detection. In various implementations, the gear shift delay may be equal to the low speed delay. 
         [0136]    In step  712 , control determines whether the transmission  240  is in park or neutral. If so, control transfers to step  714 ; otherwise, control continues in step  716 . In step  714 , control sets the delay counter equal to the greater of the delay counter and a park/neutral delay, and control returns to step  708 . For example only, the park/neutral delay may correspond to a period that control expects rough road detection to be affected after the transmission  240  is shifted out of park or neutral. 
         [0137]    In step  716 , control determines whether the clutch within the torque converter  241  is transitioning. If so, control transfers to step  718 ; otherwise, control continues in step  720 . For example only, the TCC may be transitioning when it transitions from disengaged to engaged or from engaged to disengaged. Control sets the delay counter equal to the greater of the delay counter and a torque converter clutch (TCC) delay in step  718 , and control returns to step  708 . For example only, the TCC delay may correspond to the period that control expects rough road detection to be affected after the torque converter clutch is engaged. 
         [0138]    In step  720 , control determines whether engine misfire is paused. If so, control transfers to step  722 ; otherwise, control continues in step  724 . In step  722 , control sets the delay counter equal to the greater of the delay counter and a misfire delay, and control returns to step  708 . For example only, the misfire delay may correspond to a period that control expects the rough road detection to be affected once engine misfire detection is enabled (i.e., unpaused). 
         [0139]    In step  724 , control determines whether the engine load is greater than the max load threshold. If so, control transfers to step  726 ; otherwise, control continues in step  728 . In various implementations, the max load threshold may be 90%. In step  726 , control sets the delay counter equal to the greater of the delay counter and the max load delay, and control returns to step  708 . 
         [0140]    In step  728 , control increments the first counter, and control continues in step  730 . The first counter tracks the time elapsed since the rough road disabling event has stopped. For example, gear shifts and low vehicle speeds may affect the detection of rough road conditions for a period of time after their occurrence. This may be attributable to memory of the statistical analysis that is used in detecting rough road conditions. 
         [0141]    In step  730 , control determines whether the first counter is greater than the delay counter. If so, control continues in step  732 ; otherwise, control returns to step  702 . For example only, the delay counter may be set to correspond to a period of time as discussed above. In step  732 , control begins calculating and storing computation variables. The computation variables may include, for example, derivative values and DV AVG . 
         [0142]    Control continues in step  734 , where control increments a second counter. The second counter tracks the number of derivative values calculated. Control may increment the second counter after each derivative value is calculated. A predetermined number of derivative values may be required to ensure the accuracy of rough road calculations. This predetermined number of derivative values may be referred to as the sample threshold. For example only, the sample threshold may be 200. Control continues in step  736 , where control determines whether the second counter is greater than the sample threshold. If so, control continues in step  738 ; otherwise, control returns to step  702 . 
         [0143]    In step  738 , control begins calculations for rough road detection, control resets the delay counter. For example only, control may begin performing the statistical analysis, such as calculating the dispersion values of each of the computation values (e.g., the derivative values). Control may then determine whether rough road conditions are present by comparing each of the dispersion values with the rough road threshold. For example only, control may determine that rough road conditions are present when at least one of the dispersion values is greater than the rough road threshold. Control then returns to step  702 . 
         [0144]    Those skilled in the art can now appreciate from the foregoing description that the broad teachings of the disclosure can be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, the specification, and the following claims.