Sensor Diagnosis for Fuel and Emissions Monitoring in Heavy-Duty Diesel Vehicles
Organizations: University of Chicago · University of Wisconsin–Madison
Abstract
Faulty sensor readings can distort estimates of fuel use and carbon dioxide emissions from diesel engines. We evaluate two procedures that use relationships learned from healthy measurements to diagnose faults and guide fuel correction. The diagnosis procedure tests whether replacing a suspected faulty reading with an estimated healthy value helps a model predict another sensor's recorded reading more accurately. It then predicts the fault type and decides whether to report the diagnosis. We evaluate five synthetic fault types on 217 steady-state operating points from a heavy-duty diesel engine, excluding all measurements at selected engine speeds from training. Across 31,500 fault-injected groups of 20 operating points, it issues diagnoses for 77.3% of groups, with 92.1% of diagnoses issued on these groups correct. The fuel correction procedure uses a different sensor-selection rule at individual operating points, testing how each replacement changes the largest prediction error across all six sensors. Fuel correction requires a fault alarm and engine speed and torque close to the training conditions. A fuel reading is replaced only when its replacement reduces the largest prediction error sufficiently more than replacements for the other sensors. Assuming faults in 1% of one-hour scenarios, equally likely sensors and fault types, and equal time at each measured condition, selected fuel corrections reduce mean absolute error in calculated combustion CO2 by 83.8%. On this engine map, learned relationships support complete sensor diagnoses and fuel corrections that improve emissions accounting while preserving unaffected readings.
Figures & tables
| Evaluated groups | Alarm raised | Diagnosis issued | Diagnosis correct |
| All generated injections | 80.0% | 77.3% | 92.1% |
| Equally likely fault types | 72.6% | 70.4% | 90.5% |
| Injections that change a reading | 82.3% | 79.6% | 92.3% |
| Sensor-identification method | Diagnosis issued | Diagnosis correct | Healthy groups diagnosed |
| Test estimated replacements | 77.3% | 92.1% | 6.7% |
| Largest adjusted prediction error | 78.0% | 91.8% | 6.8% |
| Account for correlated errors | 63.4% | 87.1% | 0.2% |
| Principal-component reconstruction | 74.6% | 88.8% | 11.5% |
| Autoencoder reconstruction | 63.1% | 91.8% | 3.0% |
Appendix figures & tables23 assets
Supplementary material from the paper’s appendix.
Appendix
| Data column | Measurement | Unit |
| Engine Speed | Engine speed | Revolutions per minute |
| Torque | Engine torque | Newton-metres |
| T_IM | Intake-manifold temperature | Degrees Celsius |
| P_IM | Intake-manifold pressure | Bar |
| EGR_Rate | Exhaust-gas-recirculation rate | Percent |
| MF_IA | Intake-air mass flow | Kilograms per hour |
| Fault type | Development | Test |
| Offset | ||
| Scaling error | ||
| Added noise | ||
| Clipping | 80th, 88th | 84th, 92nd |
| Intermittent zeros |
| Quantity | Calculation |
| Mean absolute error | Mean of |
| Mean signed error | Mean of |
| Standard deviation of errors | Standard deviation of |
| Consistency of direction | Absolute mean of divided by its standard deviation plus |
| Error dependence on value | Correlation of with |
| Distinct-value fraction | Number of distinct , rounded to six decimal places, divided by group size |
| Sensor-identification method | Correct sensor given alarm | Diagnoses issued | Correct among issued | Healthy groups diagnosed |
| Test estimated replacements | 96.7% | 77.3% | 92.1% | 6.7% |
| Largest adjusted prediction error | 97.4% | 78.0% | 91.8% | 6.8% |
| Account for correlation between errors | 82.3% | 63.4% | 87.1% | 0.2% |
| Principal-component reconstruction | 91.8% | 74.6% | 88.8% | 11.5% |
| Autoencoder reconstruction | 85.7% | 63.1% | 91.8% | 3.0% |
| Fault type | Groups | Alarm raised | Diagnoses issued | Correct issued | Correct among issued |
| Added offset | 9,450 | 99.9% | 9,123 | 8,799 | 96.4% |
| Scaling error | 6,300 | 57.1% | 2,931 | 1,849 | 63.1% |
| Added noise | 6,300 | 100.0% | 6,287 | 6,286 | 99.98% |
| Intermittent zero readings | 6,300 | 80.1% | 5,155 | 4,948 | 96.0% |
| Clipping | 3,150 | 25.7% | 868 | 566 | 65.2% |
| All generated groups | 31,500 | 80.0% | 24,364 | 22,448 | 92.1% |
| Points | Construction | Fault alarms | Diagnoses issued | Correct among issued | Healthy alarms | Healthy groups diagnosed |
| 5 | Random | 68.8% | 62.7% | 94.2% | 1.6% | 0.0% |
| 5 | Nearby | 62.4% | 54.9% | 94.0% | 1.5% | 0.0% |
| 10 | Random | 75.1% | 70.9% | 93.0% | 3.1% | 0.2% |
| 10 | Nearby | 71.3% | 64.8% | 92.1% | 3.6% | 0.3% |
| 20 | Random | 80.0% | 77.3% | 92.1% | 6.8% | 6.7% |
| 20 | Nearby | 78.6% | 73.5% | 92.7% | 5.1% | 5.1% |
| Faulty sensor | Offset 0.25 issued / correct | Offset 3.0 issued / correct | Scaling 8% issued / correct |
| Intake-manifold temperature | 25.9 / 29.4 | 100.0 / 100.0 | 63.8 / 37.8 |
| Intake-manifold pressure | 60.0 / 38.4 | 100.0 / 100.0 | 30.5 / 77.1 |
| Exhaust-gas-recirculation rate | 14.6 / 17.4 | 100.0 / 100.0 | 17.9 / 27.4 |
| Intake-air mass flow | 36.5 / 10.4 | 100.0 / 100.0 | 16.3 / 0.0 |
| Engine-out nitrogen oxide | 10.6 / 29.9 | 96.8 / 98.5 | 4.6 / 79.3 |
| Model | Coefficient of determination | Correct sensor |
| Linear ridge regression | 0.9291 | 80.6% |
| Second-order polynomial ridge regression | 0.9910 | 92.6% |
| Partial least squares regression | 0.9086 | 68.7% |
| Extremely randomized trees | 0.9924 | 78.2% |
| Random forest | 0.9807 | 64.7% |
| Five-neighbour regression | 0.9769 | 75.4% |
| Adjustment | Random point split | Held-out speeds |
| Global healthy error scale | 8.7% | 20.7% |
| Speed-and-load region scale | 6.9% | 17.5% |
| Disagreement between randomized trees | 1.4% | 3.7% |
| Nearby-point error scale | 5.5% | 19.4% |
| Design and reporting rule | Split | Healthy alarms | Fault alarms | Diagnoses issued | Correct among issued |
| Regional adjustment | Random | 0.0% | 78.1% | 0.0% | Undefined |
| Regional adjustment | Held-out speed | 14.3% | 77.6% | 0.0% | Undefined |
| Tree adjustment Fault-type probability | Random | 0.0% | 82.1% | 70.8% | 97.9% |
| Tree adjustment Fault-type probability | Held-out speed | 10.7% | 79.5% | 62.6% | 97.5% |
| Tree adjustment Diagnosis correctness | Random | 0.0% | 82.1% | 75.3% | 96.7% |
| Tree adjustment Diagnosis correctness | Held-out speed | 10.7% | 79.5% | 72.5% | 94.6% |
| Fault type | Groups | Alarm raised | Correct sensor given alarm | Diagnoses issued | Correct among issued |
| Added offset | 3,150 | 99.7% | 99.9% | 93.9% | 96.5% |
| Scaling error | 2,100 | 56.3% | 84.6% | 31.4% | 72.1% |
| Added noise | 2,100 | 100.0% | 100.0% | 99.5% | 99.9% |
| Intermittent zero readings | 2,100 | 78.9% | 99.5% | 79.7% | 96.8% |
| Clipping | 1,050 | 25.3% | 65.8% | 21.6% | 70.0% |
| Measure | 5-point estimate | 5-point interval | 20-point estimate | 20-point interval |
| Fault alarms | 67.8% | 61.6–74.1% | 79.5% | 55.5–100.0% |
| Correct sensor among alarms | 97.1% | 94.3–100.0% | 96.6% | 82.8–100.0% |
| Diagnoses issued | 59.0% | 53.4–64.7% | 72.5% | 52.5–92.4% |
| Correct among issued diagnoses | 96.3% | 95.0–97.7% | 94.6% | 86.0–100.0% |
| Fuel-reading treatment | Equal time | Low-load weighting | High-load weighting |
| Use recorded readings | 0.052908 | 0.050342 | 0.056073 |
| Correct selected readings | 0.008552 | 0.008437 | 0.009058 |
| Replace every reading | 0.348838 | 0.423068 | 0.260979 |
| Correct readings known to be faulty | 0.000325 | 0.000399 | 0.000237 |
| Split | Changed points | Fault alarms | Selection reported | Fuel correct among reports | Error removed | Error removed known faults |
| Random | 2,765 | 70.2% | 66.3% | 100.0% | 89.7% | 98.2% |
| Held-out speed | 2,778 | 71.2% | 63.2% | 99.9% | 83.8% | 98.0% |
| Actual corruption size | Active-fault rows | Detected |
| Below 0.5 | 1,752 | 4.5% |
| 0.5 to 1 | 1,381 | 4.8% |
| 1 to 2 | 2,239 | 8.8% |
| 2 to 3 | 1,513 | 9.6% |
| 3 to 5 | 1,491 | 75.7% |
| 5 to 8 | 1,550 | 100.0% |
Fault Diagnosis
Fault diagnosis identifies, localizes, and explains failures in engineered and computational systems using sensor data, logs, models, and domain knowledge.
See all 146 papers