# Patent

## Title
Detection and reconstruction of roll rate sensor fault

## Abstract

A method of reconstructing a detected faulty signal. A roll sensor fault is detected by a processor. A signal of the detected faulty roll sensor is reconstructed using indirect sensor data. The reconstructed signal is output to a controller to maintain stability.

## Background
BACKGROUND OF INVENTION
An embodiment relates to state of detecting sensor faults and correcting sensor signals.
Diagnostic monitoring of vehicle stability systems include a variety of sensors monitoring various dynamic conditions of the vehicle. Such systems employ various types of sensors for identifying a status condition of an operation. For example, rollover stability control systems utilize roll rate sensors and pitch rate sensors for detecting a vehicle's instability. In response to detecting the vehicle's instability, corrective actions may be deployed by a vehicle stability control system by actuating one or more vehicle operations (e.g., driving, braking, speed control) to counter the instability condition.
When the sensors are utilized to sense for conditions that contribute to the instability, such sensors are often considered critical. As a result, it must be known when these sensors become faulty. Typically, to assure continued operation of the function so that the operator can pull over or have the car inspected, such a system often utilizes redundant sensors. Redundant sensors are a same set of sensors performing the same function as the primary sensor but are used for backup in the event a primary sensor fail so that a backup sensor may be immediately utilized to provide reliable measurements. Although hardware redundancy (i.e. multiple sensors measuring a specific variable) can ensure reliable operation of vehicle subsystems despite sensor failures, it is not a preferable solution in the automotive industry due to its cost and installation challenges.
SUMMARY OF INVENTION
An advantage of an embodiment is a detection of the fault of a roll sensor and reconstruction of the faulted signal by combining vehicle kinematic and dynamic models with unknown input observers and estimated vehicle states to detect and reconstruct the faults. Robustness to road grade and road bank disturbances is an advantage of the propose structure. The technique described herein utilizes a model, observer, and adaptive fault threshold to ensure faster and more reliable performance. By utilizing the adaptive fault threshold, issues from using fixed thresholds such as disturbances, nonlinearities, and uncertainties which can trigger spikes or larger than normal residual even when no sensor fault is present are reduced. The adaptive threshold may be adjusted to account for detecting both large and small faults based on the dynamic conditions occurring in the vehicle.
An embodiment contemplate a method of reconstructing a detected faulty signal. A roll sensor fault is detected by a processor. A signal of the detected faulty roll sensor is reconstructed by the processor using indirect sensor data. The reconstructed signal is output to a controller to maintain stability.



BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 illustrates a pictorial illustration of a vehicle equipped with stability control sensors
FIG. 2 is a block diagram of a vehicle stability control system.
FIG. 3 is a flowchart of a general process flow technique.
FIG. 4 is a flowchart of the detailed process of detecting a failed sensor and reconstructing the signal.
FIG. 5 is an exemplary pictorial illustration of vehicle roll model.
FIG. 6 illustrates sprung mass suspension kinematic model.
FIGS. 7a-d represent exemplary sets of roll data taken at various times instances during a no fault condition.
FIG. 8 represents a fault state graph illustrating a no fault condition.
FIG. 9 is a graph comparing actual roll rate of the vehicle, measured signal, and reconstructed signal.
FIGS. 10a-d represent exemplary sets of roll data taken at various times instances during a fault condition.
FIG. 11 represents a fault state graph illustrating a fault condition during the entire sampling period.
FIG. 12 is a graph comparing an actual roll rate of the vehicle, faulted signal, and reconstructed signal.
FIGS. 13a-d represent exemplary sets of roll data taken at various times instances during a fault condition.
FIG. 14 represents a fault state graph illustrating a fault condition during a portion of the sampling period.
FIG. 15 is a graph comparing an actual signal, faulted signal, and reconstructed signal.



DETAILED DESCRIPTION
The following detailed description is meant to be illustrative in understanding the subject matter of the embodiments and is not intended to limit the embodiments of the subject matter or the application and the uses of such embodiments. Any use of the word “exemplary” is intended to be interpreted as “serving as an example, instance, or illustration.” Implementations set forth herein are exemplary and are not meant to be construed as preferred or advantageous over other implementations. The descriptions herein are not meant to be bound by any expressed or implied theory presented in the preceding background, detailed description or descriptions, brief summary or the following detailed description.
Techniques and technologies may be described herein in terms of functional and/or logical block components, and with reference to symbolic representations of operations, processing tasks, and functions that may be performed by various computing components or devices. Such operations, tasks, and functions are sometimes referred to as being computer-executed, computerized, software-implemented, or computer-implemented. It should be appreciated that the various block components shown in the figures may be realized by any number of hardware, software, and/or firmware components configured to perform the specified functions. For example, an embodiment of a system or a component may employ various integrated circuit components, (e.g., memory elements, digital signal processing elements, logic elements, look-up tables, or the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices).
When implemented in software, various elements of the systems described herein are essentially the code segments or computer-executable instructions that perform the various tasks. In certain embodiments, the program or code segments are stored in a tangible processor-readable medium, which may include any medium that can store or transfer information. Examples of a non-transitory and processor-readable medium include an electronic circuit, a microcontroller, an application-specific integrated circuit (ASIC), a semiconductor memory device, a ROM, a flash memory, an erasable ROM (EROM), a floppy diskette, a CD-ROM, an optical disk, a hard disk, or the like.
The system and methodology described herein can be utilized to identify faults in sensors, one of ordinary skill in the art appreciates that an automotive application is merely exemplary, and that the concepts disclosed herein may also be applied to any other system that utilizes roll rate sensing devices.
The term “vehicle” as described herein can be construed broadly to include not only a passenger automobile, but any other vehicle including, but not limited to, rail systems, planes, off-road sport vehicles, robotic vehicles, motorcycles, trucks, sports utility vehicles (SUVs), recreational vehicles (RVs), marine vessels, aircraft, farming vehicles, and construction vehicles.
Vehicle stability control systems utilize a plurality of sensors for sensing vehicle operating conditions and employing one or more control systems to counteract or minimize instability conditions. Referring to FIGS. 1 and 2, a vehicle may be equipped with the following sensors that include, but are not limited to, a pitch rate sensor 12, a roll rate sensor 14, and a yaw rate sensor 16, wheel speed sensors 18, steering sensors 20, suspension sensors 22, and other sensors 24. The pitch rate sensor 12, roll rate sensor 14, and yaw rate sensor 16, as well as other sensors may be integrated with a single module 26.
A processor 28 receives sensed inputs from one or more of the sensors for processing the sensed input data and determining an instability condition. The processor 28 may be part of an existing system, such as traction control system or other system, or can be a standalone processor dedicated to analyzing data from the one or more sensing devices.
The processor 28 may be coupled to one or more output devices such as a controller 30 for initiating or actuating a control action if based on the analysis applied by the processor 28.
The controller 30 may control a braking system 32 wherein the effects of the instability can be minimized or eliminated using vehicle braking.
The controller 30 may control a traction control system 34 which distributes power individually to each respective wheel for reducing wheel slip by a respective wheel.
The controller 30 may control a cruise control system 36 which can deactivate cruise control or restrict the activation of cruise control when instability is detected.
The controller 30 may control a driver information system 40 for providing warnings to the driver of the vehicle concerning the instability condition. It should be understood that the controller 30, as described herein, may include one or more controllers that control an individual function or may control a combination of functions.
The controller 30 may further control the actuation of a wireless communication device 38 for autonomously communicating the instability condition to other vehicles utilizing a vehicle-to-vehicle or vehicle-to-infrastructure communication system.
The controller 30 may be coupled to various other control systems or other systems
As set forth earlier, the system relies on obtaining fault-free sensory information, and more importantly when a sensor failure occurs. While utilizing redundant sensors may be robust, redundant sensors are costly and require added packaging space. As a result, the following technique allows the system to not have to utilize redundant sensors and reconstruct the sensor signal as a function of virtual sensor data. For example, a roll rate sensor measures a vehicle's rotational velocity around its longitudinal axis. If the roll rate sensor faults, then incorrect data may be utilized for determining an instability of the vehicle. If a fault is detected, and if no redundant sensors are available, the system must be able to reconfigure the correct signal. Therefore, the first step is determining whether a fault is occurring with the signal. Secondly, if a fault is detected, then reconfiguration of the sensed signal must be determined.
FIG. 3 illustrates a flowchart of a broad overview of the process for detecting a fault and reconstructing a signal from the faulted sensor. In step 50, sensor inputs are provided to the processor for analyzing the sensed data. Information is obtained directly from the sensor dedicated to sensing the respective condition. For example, the roll rate sensor is directly responsible for detecting the roll rate of a vehicle. In addition to the measurements from these devices, processor also receives data from other sensor devices that can be used to estimate a virtual roll rate signal. The term virtual as used herein refers to the fact that the data is not received directly from the dedicated sensing device, rather, the data is received from other devices that can indirectly estimate the respective signal.
In step 51, virtual sensor values and residuals are determined. The data from the non-dedicated sensing devices along with a vehicle model is used to calculate the virtual sensor values and residuals. Residuals are defined herein as a difference between the measured values obtained directly from the dedicated sensor devices and virtual sensor values. For example, the residual for the roll rate would be a difference between the measured value from the roll rate sensor and the virtual sensor value calculation for the roll rate.
In step 52, a fault threshold is generated. While a fixed threshold may be utilized, an adaptive threshold is preferably utilized. In utilizing fixed thresholds, disturbances, nonlinearities, and uncertainties may trigger spikes or larger than normal residual even when no sensor fault is present. If a large fixed fault threshold is used to account for concerns, then the detection technique will not be able to detect smaller faults and/or will be slower as higher excitation and more time is required for the residuals to pass the large threshold. If a small fixed threshold is utilized, then the threshold may be too small to detect the fault. As a result, such residuals when using fixed fault thresholds may generate false positives.
As a result, an adaptive threshold is used to detect the faults. An adaptive threshold ensures that the false positives are avoided in nonlinear regions and during harsh maneuvers. Moreover, faster detection of the faults in linear regions and during normal maneuvers can be achieved utilizing the adaptive thresholds in addition to enhanced reliable detection of smaller faults.
The adaptive fault threshold is estimated based on the current driving condition and a dynamic region using a current vehicle model and sensory data. A time window is used to calculate the adaptive threshold for enhancing the reliability in transient driving conditions.
In step 53, a fault is detected based on the calculated residuals exceeding the adaptive fault threshold. This technique checks a criterion to reject short-term outliers and avoid false positives. Outliers can arise from abrupt excitations and sudden disturbances. Outliers can also generate short-term residual anomalies. The criterion monitors a time window to reject the outliers and ensure reliable fault detection performance.
In step 54, in response to detecting the faults, the respective signal is reconstructed. The technique reconstructs the failed signal using virtual sensor values. A weighted average function of the virtual sensors is used to reconstruct the roll rate. The weights are adaptively tuned based on the current driving condition. Utilizing the adaptive weights, a more accurate reconstruction can be achieved for the case of virtual sensor inaccuracies due to various factors that include, but are not limited to, high slips, wheel locks.
In step 55, the reconstructed signal is output to a vehicle control system together with the information relating to the faults.
FIG. 4 is a more detailed flowchart for detecting faults and reconstructing the fault signals. Analytical fault detection methods rely on a system model, constraint equations, and collective information from all available sensors to detect the sensor faults. Sensor fault-tolerance design for a system involves satisfying three main requirements that include fault detection, fault isolation, and fault mitigation. Fault detection is a timely and reliable detection of a sensory fault in the system. Fault isolation is an identification/localization of a faulty sensor. Fault mitigation is the reconstruction of the failed sensory signal using the system model and other non-faulty sensors.
In step, 60, a model is constructed for the monitored system. The model using the roll rate represented as follows:




  
    [
    
      
        
          
            
              φ
              .
            
            v
          
        
      
      
        
          
            
              φ
               ̈
            
            v
          
        
      
    
    ]
  
  =
  
    
      [
      
        
          
            0
          
          
            1
          
        
        
          
            
              
                -
                
                  K
                  φ
                
              
              
                (
                
                  
                    I
                    x
                  
                  +
                  
                    
                      m
                      s
                    
                    ⁢
                    
                      H
                      RC
                      2
                    
                  
                
                )
              
            
          
          
            
              
                -
                
                  C
                  φ
                
              
              
                (
                
                  
                    I
                    x
                  
                  +
                  
                    
                      m
                      s
                    
                    ⁢
                    
                      H
                      RC
                      2
                    
                  
                
                )
              
            
          
        
      
      ]
    
    ⁢
    
       
      
        
          
            [
            
              
                
                  
                    φ
                    v
                  
                
              
              
                
                  
                    
                      φ
                      .
                    
                    v
                  
                
              
            
            ]
          
          +
          
            
              [
              
                
                  
                    0
                  
                
                
                  
                    
                      
                        
                          m
                          s
                        
                        ⁢
                        
                          H
                          RC
                        
                      
                      
                        (
                        
                          
                            I
                            x
                          
                          +
                          
                            
                              m
                              s
                            
                            ⁢
                            
                              H
                              RC
                              2
                            
                          
                        
                        )
                      
                    
                  
                
              
              ]
            
            ⁡
            
              [
              
                
                  
                    v
                    .
                  
                  y
                
                +
                
                  
                    v
                    x
                  
                  ⁢
                  
                    ψ
                    .
                  
                
                +
                
                  g
                  ⁢
                  
                    
                  
                  ⁢
                  
                    sin
                    ⁡
                    
                      (
                      
                        
                          φ
                          v
                        
                        +
                        
                          Φ
                          r
                        
                      
                      )
                    
                  
                
              
              ]
            
          
        
        ,
      
    
  




where φv is the roll angle of the sprung mass; {dot over (φ)}v is the vehicle roll rate; HRC represents a distance between a center of gravity and the roll center; Ix represents moments of inertial about the x axis of the body coordinate system; {dot over (v)}y is the rate of change of lateral velocity; vx represents longitudinal velocity; {dot over (ψ)} is the yaw rate; Φr is the road bank angle; ms is the sprung mass; g is the gravitational acceleration; Cφ is the roll damping; and Kφ is the stiffness coefficients for roll. A respective pictorial illustration for a roll model is shown in FIG. 5.

The following observer is used to the estimate roll state along with an unknown input. The observer for the roll state is as follows:



  
    
      
        
          x
          ^
        
        φ
      
      ⁡
      
        [
        
          k
          +
          1
        
        ]
      
    
    =
    
      
        
          E
          φ
        
        ⁢
        
          
            
              x
              ^
            
            φ
          
          ⁡
          
            [
            k
            ]
          
        
      
      +
      
        
          F
          φ
        
        ⁢
        
          
            y
            φ
          
          ⁡
          
            [
            
              
                k
                ⁢
                
                  :
                
                ⁢
                
                  
                
                ⁢
                k
              
              +
              L
            
            ]
          
        
      
    
  




  
    
      
        
          u
          ^
        
        φ
      
      ⁡
      
        [
        k
        ]
      
    
    =
    
      
        
          [
          
            
              
                
                  B
                  φ
                
              
            
            
              
                
                  D
                  φ
                
              
            
          
          ]
        
        
          -
          1
        
      
      ⁡
      
        [
        
          
            
              
                
                  
                    
                      x
                      ^
                    
                    φ
                  
                  ⁡
                  
                    [
                    
                      k
                      +
                      1
                    
                    ]
                  
                
                -
                
                  
                    A
                    φ
                  
                  ⁢
                  
                    
                      
                        x
                        ^
                      
                      φ
                    
                    ⁡
                    
                      [
                      k
                      ]
                    
                  
                
              
            
          
          
            
              
                
                  
                    y
                    φ
                  
                  ⁡
                  
                    [
                    k
                    ]
                  
                
                -
                
                  
                    C
                    φ
                  
                  ⁢
                  
                    x
                    φ
                  
                  ⁢
                  k
                
              
            
          
        
        ]
      
    
  



where Eφ and Fφ are the observer gain matrices for the roll observer, where Bφ and Dφ are bound gain parameters, where xφ[k] is an estimate roll state, and where ûφ[k] is an estimate of an unknown input.

The following observer is used to estimate the road bank angle (Φr) for the roll state as follows:




  
    
      Φ
      r
    
    ⁡
    
      [
      k
      ]
    
  
  =
  
    
      
        sin
        
          -
          1
        
      
      (
      
        
          
            
              
                u
                ^
              
              φ
            
            ⁡
            
              [
              k
              ]
            
          
          -
          
            
              
                v
                .
              
              y
            
            ⁡
            
              [
              k
              ]
            
          
          -
          
            
              
                v
                x
              
              ⁡
              
                [
                k
                ]
              
            
            ⁢
            
              
                ψ
                .
              
              ⁡
              
                [
                k
                ]
              
            
          
        
        g
      
      )
    
    -
    
      
        
          φ
          v
        
        ⁡
        
          [
          k
          ]
        
      
      .
    
  




The following inputs are used in the model as derived through a sprung mass kinematic model. The sprung mass kinematics is used to estimate the suspension height at each corner of a vehicle using the measurements from sensors installed on the other three corners of a vehicle as represented by FIG. 6). The roll angle φv of the vehicle body is estimated using suspension height sensors at each corner. These estimates will be used in the following equations for detection and reconstructions of the sensor faults. Using the sprung mass of model and position of the suspension heights for each corner, the suspension height can be estimated using the sensors installed on the other three corners as:

ij=−(−ijxijx+−ijyijy+d−ij)/−ijz 

where geometric functions −ijx, d−ij, ijx, and ijy are calculated using corner positions. The subscript ijε{fl,fr,rl,rr} indicates front-left (fl), front-right (fr), rear-left (rl), and rear-right (rr) corners, and ij is the estimated suspension height. The subscript −ij represents a scenario in which the suspension height provided by the sensor ij is not used in the calculations. Furthermore, the roll angle {circumflex over (φ)}−ij when the suspension height sensor ij is not used can be written as:





  
    φ
    
      -
      ij
    
  
  =
  
    
      cos
      
        -
        1
      
    
    ⁢
    
      
        
          N
          
            -
            ij
          
          y
        
        
          
          
            N
            
              -
              ij
            
          
          
        
      
      .
    
  




In step 61, sensory inputs are read or estimated. Sensory inputs include, but are not limited to, suspension heights (Δzij), roll rate ({dot over (φ)}v), yaw rate ({dot over (ψ)}), longitudinal and lateral acceleration components (ax,ay), and wheel angular velocity (ωij).
In step 62, a determination is made as to whether re-initialization is required, such as the vehicle being stationary. If vehicle is stationary, then the routine proceeds back to step 60; otherwise, the routine proceeds to step 63.
In step 63, a roll rate ({circumflex over ({dot over (φ)})}v−ij) is determined based on the roll rate model described earlier.
In step 64, a virtual roll rate is determined. The virtual roll rate is determined using the following formula:

{circumflex over ({dot over (φ)})}−ij={circumflex over ({dot over (φ)})}v−ij+R({circumflex over (θ)}v−ij,{circumflex over (φ)}v−ij){circumflex over ({dot over (Φ)})}r−ij 

where {circumflex over ({dot over (φ)})}−ij is the estimated vehicle roll rate in the form of a virtual sensor, {circumflex over ({dot over (φ)})}v−ij is the estimated body roll rate calculated using respective vehicle sensors not indexed by ij subscript, R is the rotation matrix describing orientation of vehicle sprung mass with respect to frame reference coordinate system; {circumflex over (θ)}v−ij is the estimated vehicle pitch angle, {circumflex over (φ)}v−ij is the estimated vehicle roll angle, and {circumflex over ({dot over (Φ)})}r−ij is the estimated rate of change of the road bank angle, all calculated using vehicle sensors not indexed by ij subscript.

The virtual roll rate is determined using indirect measurements. That is, the actual roll may be determined using inputs which are direct measurements from sensors dedicated to determining the roll, whereas the virtual roll rate utilizes indirect sensor data that are not necessarily dedicated to detecting the roll, but can be utilized cooperatively with other data to determine the roll.
In step 65, the residuals are determined based off of the measured roll rate and the virtual roll rate. That is, a residual (R{dot over (θ)}−ij) for the roll rate is determined as a difference between the measured roll rate ({dot over (φ)}s) and the virtual roll rate ({circumflex over ({dot over (φ)})}−ij). The residual for the virtual roll rate is determined by the following formula:

R{dot over (φ)}−ij=|{dot over (φ)}s−{circumflex over ({dot over (φ)})}−ij|.

In step 66, as instantaneous adaptive fault threshold are determined. The instantaneous adaptive fault threshold for the roll rate is determined utilizing the following formula:

T{dot over (φ)}=Bsφ+Bdφ|ay|.

where ay is the lateral acceleration, Bsφ determines a fixed static bound for the threshold, where the constant Bdφ adds a function of the lateral excitations to the threshold.
In step 67, to make the technique robust against false positives in transient regions, evaluation of the instantaneous adaptive fault threshold is performed over a time window. The adaptive threshold for the roll rate over time is represented by the following equation:

Tdφ=max(Tφ(k),Tφ(k−1) . . . ,Tφ(k−Wφ)).

where Tφ is a dynamic adaptive fault threshold, and where Wφ is a length of the time window during the roll sensing operation to calculate the threshold.

In step 68, a determination is made as to whether an incremental fault state count should be incremented based on whether the residual is greater than the dynamic adaptive fault threshold. The determination for this state for the roll rate is determined by the following equation:

R{dot over (φ)}−ij>Tdφ.

If the determination is made that the residual is greater than the dynamic adaptive fault threshold, then the routine proceeds to step 69; otherwise, the routine proceeds to step 72.
In step 69, when the residual exceeds the dynamic adaptive fault threshold, a fault state counter (nzij) that is initially set to 0 is incremented. The following formula represents the incrementing formula:

nzij(k)=nzij(k−1)+1.

In step 70, although every single incident of crossing the adapter threshold can be treated as a fault, a malfunction should persist over a period of time to be identified as a fault. Therefore, a determination is made as to whether the fault is persistent. This is performed by determining whether a residual Rzij is above the dynamic adaptive fault threshold for a consecutive number of times Nz. The determination may be represented by the following formula:

nzij>Nz.

If the determination is made that the fault is persistent, then the routine proceeds to step 71; otherwise, the routine proceeds to step 77.

In step 71, in response to the routine concluding that the malfunction is persistent, a fault state (Szij) is set to 1.
In step 72, a determination is made as to whether the fault state is set to 1. If the fault state is set to 1, then the routine proceeds to step 73; otherwise, the routine proceeds to step 74.
In step 73, in response to the fault state set to 1, the faulted signal is reconstructed. The reconstruction of the roll rate signal is represented by the following formula:

{circumflex over ({dot over (φ)})}=w−ij{circumflex over ({dot over (φ)})}−ij 

where {circumflex over ({dot over (φ)})} is the reconstructed roll rate signal; w−ij represent weight factors. In response to reconstructing the faulty signal, the routine advances to step 75.

Referring again to step 72 where a determination was made as to whether the fault state set to 1, in response to the fault state not set to 1, the routine proceeded to step 74. In step 74, the fault state count is reset in response to the fault state not set to 1.
In step 75, the fault free signal (e.g., fall free roll rate signal) is provided to an estimation and control module.
In step 76, a fault state is passed to the estimation and control module.
In step 77, the routine waits for the next set of sample data. After receiving the next set of sample data, the routine returns to step 61 where sensory estimated inputs are obtained and recorded.
FIGS. 7a-d represents a set of sample data taken at different time instances of time. Residuals and thresholds are plotted on the graphs. The vertical axis is measured in rads/sec and the horizontal axis is measure in seconds. In each graph, the residuals are represented by the line 80 and the threshold is represented by the line 82. If the residual 80 remains lower than the threshold, then no fault is determined. This is shown by the fault state graph illustrated in FIG. 8. A “0” signal indicates a no fault state whereas a “1” signal indicates a detected fault. The fault state signal is represented generally by line 84 which indicates no fault present.
FIG. 9 illustrates a graph illustrating an actual signal 86, a faulted (measured) signal 88, and reconstructed signal 90. Since there is no fault present, each of the respective signals 86, 88, and 90 are the same and overlay one another.
FIGS. 10a-d represents another set of sample data taken at different instances of time. As illustrated in FIGS. 10a-10d, the residuals, represented generally by 80 exceed the thresholds 82 at the start of the data sampling. As a result, the faulted sensor produces a biased signal at the start of the sampling.
FIG. 11 illustrates the fault state graph. As shown in FIG. 11, a fault is detected at the onset of the data sampling and the fault is immediately set to “1” as represented by fault state (line) 84.
FIG. 12 illustrates a graph illustrating the actual signal 86, the faulted (measured) signal 88, and the reconstructed signal 90. The faulted signal 88 deviates largely with respect to the actual signal 86. The reconstructed signal 90 utilizing the techniques described herein, reconstructs the faulted signal 88 directly from the beginning of the sampling period since the fault occurred at the onset. As a result, the reconstructed signal 90 is substantially similar to the actual signal 86. The reconstructed signal 90 may further be relied upon by other controllers and systems.
FIGS. 13a-d represents yet another set of sample data taken at different instances of time. As illustrated in FIGS. 13a-d, the residuals 80 exceed the thresholds 82 at during the sampling of the data. As shown in FIGS. 13a-d, various portions of the residual 80 signals exceed the thresholds 82 during various times instances of the sampled data. As a result, a fault occurs during a time when the residuals 80 persistently exceed the thresholds 82.
FIG. 14 illustrates the fault state graph. As shown in FIG. 14, a fault is detected in the middle of the sampling period (e.g., 7 sec). The fault signal 84 is unset at the start of the sampling period and then sets to “1” at the 7 sec mark of the sample period and continues to fault throughout the remainder of the sample period.
FIG. 15 illustrates a graph illustrating the actual signal 86, the faulted (measured) signal 88, and the reconstructed signal 90. The faulted signal 88 deviates largely with respect to the actual signal 86. The reconstructed signal 90 utilizing the techniques described herein, reconstructs the faulted signal 88 at the 7 second mark when the faults signal is detected. As a result, the faulted signal 88 is reconstructed at the time of failure (7 sec) utilizing the techniques described herein. The reconstructed signal 88 substantially mirrors the actual signal 86 which can thereafter be used to and relied up by other controllers or by other systems.
While certain embodiments of the present invention have been described in detail, those familiar with the art to which this invention relates will recognize various alternative designs and embodiments for practicing the invention as defined by the following claims.

## Claims

1. A method of reconstructing a detected faulty signal comprising the steps of:
detecting a roll sensor fault by a processor;
reconstructing, by the processor, a signal of the detected faulty roll sensor using indirect sensor data; and
outputting the reconstructed signal to a controller to execute a control action on a vehicle system to maintain stability;
wherein detecting the roll sensor fault by the processor comprises the steps of:
obtaining sensory data from a faulted roll sensor, the faulted roll sensor dedicated to monitor a roll instability condition,
obtaining sensory data from at least one non-faulted sensor other than the roll sensor,
determining a virtual sensor value as a function of the sensory data from the at least one non-faulted sensor,
generating a residual as a function of the sensory data from the faulted roll sensor and virtual sensor value from the at least one non-faulted sensor,
comparing the residual to a threshold, and
detecting the sensor roll fault in response to the residual exceeding the threshold.

2. The method of claim 1 wherein determining a virtual sensor value as a function of the sensory data from the at least one non-faulted sensor is determined utilizing a roll dynamics of a vehicle model and is represented by the following formula:




  
    [
    
      
        
          
            
              φ
              .
            
            v
          
        
      
      
        
          
            
              φ
               ̈
            
            v
          
        
      
    
    ]
  
  =
  
    
      [
      
        
          
            0
          
          
            1
          
        
        
          
            
              
                -
                
                  K
                  φ
                
              
              
                (
                
                  
                    I
                    x
                  
                  +
                  
                    
                      m
                      s
                    
                    ⁢
                    
                      H
                      RC
                      2
                    
                  
                
                )
              
            
          
          
            
              
                -
                
                  C
                  φ
                
              
              
                (
                
                  
                    I
                    x
                  
                  +
                  
                    
                      m
                      s
                    
                    ⁢
                    
                      H
                      RC
                      2
                    
                  
                
                )
              
            
          
        
      
      ]
    
    ⁢
    
       
      
        
          
            [
            
              
                
                  
                    φ
                    v
                  
                
              
              
                
                  
                    
                      φ
                      .
                    
                    v
                  
                
              
            
            ]
          
          +
          
            
              [
              
                
                  
                    0
                  
                
                
                  
                    
                      
                        
                          m
                          s
                        
                        ⁢
                        
                          H
                          RC
                        
                      
                      
                        (
                        
                          
                            I
                            x
                          
                          +
                          
                            
                              m
                              s
                            
                            ⁢
                            
                              H
                              RC
                              2
                            
                          
                        
                        )
                      
                    
                  
                
              
              ]
            
            ⁡
            
              [
              
                
                  
                    v
                    .
                  
                  y
                
                +
                
                  
                    v
                    x
                  
                  ⁢
                  
                    ψ
                    .
                  
                
                +
                
                  g
                  ⁢
                  
                    
                  
                  ⁢
                  
                    sin
                    ⁡
                    
                      (
                      
                        
                          φ
                          v
                        
                        +
                        
                          Φ
                          r
                        
                      
                      )
                    
                  
                
              
              ]
            
          
        
        ,
      
    
  




where φv is the roll angle of the sprung mass, {dot over (φ)}v is the vehicle roll rate, HRC represents a distance between a center of gravity and the roll center, {dot over (v)}y is the rate of change of lateral velocity; vx represents longitudinal velocity; Ix represents a moment of inertia about the x axes of a body coordinate system; {dot over (ψ)} is the yaw rate; Φr is the road bank angle; mS is the sprung mass; g is the gravitational acceleration; Cφ is the roll damping; Kφ is the stiffness coefficients for roll.

3. The method of claim 2 wherein an observer used to estimate a roll state with an unknown input is represented by the following equation:



  
    
      
        
          x
          ^
        
        φ
      
      ⁡
      
        [
        
          k
          +
          1
        
        ]
      
    
    =
    
      
        
          E
          φ
        
        ⁢
        
          
            
              x
              ^
            
            φ
          
          ⁡
          
            [
            k
            ]
          
        
      
      +
      
        
          F
          φ
        
        ⁢
        
          
            y
            φ
          
          ⁡
          
            [
            
              
                k
                ⁢
                
                  :
                
                ⁢
                
                  
                
                ⁢
                k
              
              +
              L
            
            ]
          
        
      
    
  




  
    
      
        
          u
          ^
        
        φ
      
      ⁡
      
        [
        k
        ]
      
    
    =
    
      
        
          [
          
            
              
                
                  B
                  φ
                
              
            
            
              
                
                  D
                  φ
                
              
            
          
          ]
        
        
          -
          1
        
      
      ⁡
      
        [
        
          
            
              
                
                  
                    
                      x
                      ^
                    
                    φ
                  
                  ⁡
                  
                    [
                    
                      k
                      +
                      1
                    
                    ]
                  
                
                -
                
                  
                    A
                    φ
                  
                  ⁢
                  
                    
                      
                        x
                        ^
                      
                      φ
                    
                    ⁡
                    
                      [
                      k
                      ]
                    
                  
                
              
            
          
          
            
              
                
                  
                    y
                    φ
                  
                  ⁡
                  
                    [
                    k
                    ]
                  
                
                -
                
                  
                    C
                    φ
                  
                  ⁢
                  
                    x
                    φ
                  
                  ⁢
                  k
                
              
            
          
        
        ]
      
    
  



where Eφ and Fφ are the observer gain matrices for the roll observer, where Bφ and Dφ are bound gain parameters, where xφ[k] is an estimate roll state, and where ûφ[k] is an estimate of an unknown input.

4. The method of claim 1 wherein the threshold includes an adaptive threshold.

5. The method of claim 4 wherein the adaptive threshold is estimated based on a current driving condition and dynamic region.

6. The method of claim 5 wherein the current driving conditions and dynamic region are determined using the vehicle model and sensory data.

7. The method of claim 4 wherein the adaptive threshold for the roll rate is determined utilizing the following equation:


Tdφ=max(Tφ(k),Tφ(k−1) . . . ,Tφ(k−Wφ)):


where Tφ is a respective instantaneous threshold, and where Wφ is a length of time of the time window during the roll sensing operation to calculate the threshold.

8. The method of claim 7 wherein the instantaneous adaptive threshold is determined utilizing the following equation:


T{dot over (φ)}=Bsφ+Bdφ(|ay|)


where Bsφ is a static bound that determines a fixed minimum value for the threshold, and Bdφ is a constant gain that adds effects of lateral excitation to the threshold.

9. The method of claim 1 wherein determining a virtual sensor value of the roll rate as a function of the sensory data from the at least one non-faulted sensor is determined utilizing the following equation:


{circumflex over ({dot over (φ)})}−ij={circumflex over ({dot over (φ)})}v−ij+R({circumflex over (θ)}v−ij,{circumflex over (φ)}v−ij){circumflex over ({dot over (φ)})}r−ij 


where {circumflex over ({dot over (φ)})}−ij is the estimated vehicle roll rate in the form of a virtual sensor, {circumflex over ({dot over (φ)})}v−ij is the estimated body roll rate calculated using respective vehicle sensors not indexed by ij subscript, R is the rotation matrix describing orientation of vehicle sprung mass with respect to frame reference coordinate system; {circumflex over (θ)}v−ij is the estimated vehicle pitch angle, {circumflex over (φ)}v−ij is the estimated vehicle roll angle, and {circumflex over ({dot over (Φ)})}r−ij is the estimated rate of change of the road bank angle, all calculated using vehicle sensors not indexed by ij subscript.

10. The method of claim 9 wherein generating the residual as a function of the sensory data from the faulted roll sensor and the virtual sensor value from the at least one non-faulted sensor is determined by the following equation:


R{dot over (φ)}−ij=|{dot over (φ)}s−{circumflex over ({dot over (φ)})}−ij|


wherein {circumflex over ({dot over (φ)})}−ij is the virtual sensor value and {dot over (φ)}s measured value from the roll rate sensor.

11. The method of claim 1 wherein detecting the sensor fault in response to the residual exceeding the threshold further comprises the step of determining whether the fault persists for a period of time.

12. The method of claim 11 wherein determining whether the fault persists for the period of time further comprises the steps of:
incrementing a fault count each time the residual exceeds the adaptive threshold;
detecting the fault when the fault count exceeds a predetermined count threshold.

13. The method of claim 12 wherein the fault count is reset to zero in response to a residual not exceeding the adaptive threshold.

14. The method of claim 1 wherein reconstructing the signal of the detected faulty sensor using indirect sensor data is determined using the following equation:


{circumflex over ({dot over (φ)})}=w−ij{circumflex over ({dot over (φ)})}−ij 


where {circumflex over ({dot over (φ)})} is the reconstructed roll rate signal; w−ij represent weight factors.

15. The method of claim 1 wherein the outputting the reconstructed signal to a controller includes outputting the signal to a vehicle braking system for mitigating a vehicle instability condition.

16. The method of claim 1 wherein the outputting the reconstructed signal to a controller includes outputting the signal to a powertrain control system for mitigating a vehicle instability condition.

17. The method of claim 1 wherein the outputting the reconstructed signal to a controller includes outputting the signal to a vehicle traction control system for mitigating a vehicle instability condition.

18. The method of claim 1 wherein the outputting the reconstructed signal to a controller includes outputting the signal to a steering system for mitigating a vehicle instability condition.