Teknisk rapport Bohan Liang

Relevanta dokument
TESTPLAN. Markus Vilhelmsson. Version 1.3. Status Detektion och felisolering i förbränningsmotor

Detektion och felisolering i förbränningsmotor KRAVSPECIFIKATION. Minh Le Tran. Version 1.1. Status

Designspecifikation Max Karjalainen

Detektion och felisolering i förbränningsmotorer PROJEKTPLAN. Max Karjalainen. Version 1.0. Status

Tentamen. TSFS06 Diagnos och övervakning 12 januari, 2012, kl

Tentamen med lösningsdiskussion. TSFS06 Diagnos och övervakning 1 juni, 2013, kl

Tentamen. TSFS06 Diagnos och övervakning 4 juni, 2007, kl

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Testplan. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd

Testplan Autonom truck

Testprotokoll. Redaktör: Sofie Dam Version 0.1. Status. Planering och sensorfusion för autonom truck Granskad Dokumentansvarig - Godkänd

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Kravspecifikation21.pdf. Diagnos av elkraftsystem

Projektplan. LiTH Reglering av Avgaser, Trottel och Turbo Fredrik Petersson Version 1.0. Status. Reglerteknisk Projektkurs RATT LIPs

Projektplan. Modellbaserad diagnos av motortestcell Fredrik Johansson Version 1.0. Status. TSRT71 Modellbaserad diagnos av motortestcell IPs

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Testplan. LiTH. Autopositioneringssystem för utlagda undervattenssensorer Martin Skoglund Version 1.1. Status

Modellering av en Tankprocess

Lösningsförslag till Tentamen. TSFS06 Diagnos och övervakning 14 augusti, 2007, kl

Dagens föreläsning. TSFS06 Diagnos och övervakning Föreläsning 6 - Tröskling och analys av teststorheter. Tröskelsättning och beslut i osäker miljö

Kravspecifikation. Estimering och övervakning av avgasmottryck i en dieselmotor. Version 1.2 Dokumentansvarig: Gustav Hedlund Datum: 24 april 2008

Översikt. TSFS06 Diagnos och övervakning Föreläsning 4 - Linjär residualgenerering och detekterbarhet. Linjär residualgenerering

Lärare i kursen. TSFS06 Diagnos och övervakning, 6hp Föreläsning 1 - Kursformalia och introduktion. Denna föreläsning - disposition.

LiTH 7 december Optimering av hjullastare. Testplan. Per Henriksson Version 1.0. LIPs. TSRT10 testplan.pdf WHOPS 1. tsrt10-vce@googlegroups.

Dagens föreläsning. TSFS06 Diagnos och övervakning Föreläsning 6 - Tröskling och analys av teststorheter. Tröskelsättning och beslut i osäker miljö

Systemskiss. Redaktör: Anders Toverland Version 1.0. Status. LiTH Fordonssimulator. Granskad Godkänd. TSRT71 Anders Toverland

Lärare i kursen. TSFS06 Diagnos och övervakning, 6hp Föreläsning 1 - Kursformalia och introduktion. Denna föreläsning - disposition.

LiTH, Reglerteknik Saab Dynamics. Testplan Collision avoidance för autonomt fordon Version 1.0

Testprotokoll.pdf. Diagnos av elkraftsystem

Kravspecifikation. LIPs. LiTH Reglering av Avgaser, Trottel och Turbo Niclas Lerede Version 1.2. Status. Reglerteknisk Projektkurs

TURBO Systemskiss. 5 december Status. Granskad SL

Systemskiss. LiTH. Autopositioneringssystem för utlagda undervattenssensorer Erik Andersson Version 1.0. Status

Systemskiss. Michael Andersson Version 1.0: Status. Platooning Granskad DOK, PL Godkänd Erik Frisk

Testspecifikation. Henrik Hagelin TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status:

Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs

HARALD Testprotokoll

Översikt. TSFS06 Diagnos och övervakning Föreläsning 8 - Change detection. Change detection. Change detection

LiTH. WalkCAM 2007/05/15. Testplan. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs

LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr

Försättsblad till skriftlig tentamen vid Linköpings Universitet

LIPs Fredrik Ljungberg ChrKr Projektdirektiv18_ROV.doc CKr

Experimentella metoder, FK3001. Datorövning: Finn ett samband

Systemskiss. LiTH AMASE Accurate Multipoint Acquisition from Stereovision Equipment. Jon Månsson Version 1.0

Projektdirektiv Oskar Ljungqvist Sida 1. Kund/Examinator: Daniel Axehill, Reglerteknik/LiU

Kravspecifikation. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status

Vad är diagnos? Diagnos i fordon och andra tillämpningar. Varför diagnos i fordon?

Finns det över huvud taget anledning att förvänta sig något speciellt? Finns det en generell fördelning som beskriver en mätning?

Adaptiva metoder för förbättrad motor och fordonsreglering Testprotokoll. FADR - FordonsAdaptiv DriftsRegulator. Version 1.0.

Testprotokoll Autonom målföljning med quadcopter

Flervariabel reglering av tanksystem

Systemkonstruktion Z3

TENTAMEN I DYNAMISKA SYSTEM OCH REGLERING

TSRT10 - Projektplan

Föreläsning 12: Regression

Testplan. Vidareutveckling av Optimal Styrning av Radiostyrd Racerbil. Version 1.1 Fredrik Karlsson 26 november Granskad JL, FK 26 november 2012

Kravspecifikation. Version 1.3 Dokumentansvarig: Olof Juhlin Datum: 29 november 2013

Ansiktsigenkänning med MATLAB

Föreläsning 8, Matematisk statistik 7.5 hp för E, HT-15 Punktskattningar

Testplan. Flygande Autonomt Spaningsplan. Version 1.0. Dokumentansvarig: Henrik Abrahamsson Datum: 14 mars Status.

Lösningsförslag/facit till Tentamen. TSFS06 Diagnos och övervakning 14 januari, 2008, kl

MVE051/MSG Föreläsning 7

LiTH Autonom styrning av mobil robot Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0

G(s) = 5s + 1 s(10s + 1)

Ökad dämpning genom rätt design av utloppsstrypningen

PROGRAMFÖRKLARING I. Statistik för modellval och prediktion. Ett exempel: vågriktning och våghöjd

Stokastiska processer med diskret tid

Laborationsrapport Laboration 1 TSFS05. Linus Linusson Linnea Linneasdotter

Systemskiss. Joachim Lundh TSRT10 - SEGWAY 6 december 2010 Version 1.0. Status:

Projektrapport Projekt 1 TSFS05. Linus Linusson Linnea Linneasdotter

Testplan Racetrack 2015

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Matematisk statistik 9 hp, HT-16 Föreläsning 10: Punktskattningar

LiTH. WalkCAM 2007/05/15. Testrapport. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs

Jämförelse av ventilsystems dynamiska egenskaper

Föreläsning 8, Matematisk statistik 7.5 hp för E Punktskattningar

Testprotokoll. Redaktör: Simon Malmberg. Version 0.1. Status LIU Flervariabla reglerstrategier för avancerade motorer. Granskad

Föreläsning 8: Konfidensintervall

TANA17 Matematiska beräkningar med Matlab

Projektplan. FUDGE - The FUn to Drive Generic Engine. Version 1.2 Författare: Victor Birath Datum: 13 december 2014 STATUS

Reglerteknik. Lars Eriksson Johan Löfberg - presentatör. Fordonssystem Institutionen för Systemteknik Linköpings Universitet

Testplan Erik Jakobsson Version 1.1

Systemskiss. Självetablerande sensornätverk med 3G och GPS. Version 0.2. Christian Östman Datum: 15 maj 2008

Reglerteknik M3. Inlämningsuppgift 3. Lp II, Namn:... Personnr:... Namn:... Personnr:...

HARALD. Version 0.2 Redaktör: Patrik Johansson Datum: 8 maj Status. Granskad - yyyy-mm-dd Godkänd - yyyy-mm-dd

Blandade problem från elektro- och datateknik

Projektplan. LIPs. Per Henriksson Version 1.0. LiTH 7 december Optimering av hjullastare. TSRT10 projektplan.pdf WHOPS 1

Modellering av en Tankprocess

Systemskiss. LiTH Kamerabaserat Positioneringssystem för Hamnkranar Mikael Ögren Version 1.0. Status

TATA42: Föreläsning 7 Differentialekvationer av första ordningen och integralekvationer

TURBO Kravspecifikation

Systemskiss.pdf. Diagnos av elkraftsystem

Funktionsstudier med derivata

Lunds Tekniska Högskola Avdelningen för industriell elektroteknik och automation

Reglerteknik AK, FRT010

SIMULINK. En kort introduktion till. Polplacerad regulator sid 8 Appendix Symboler/block sid 10. Institutionen för Tillämpad Fysik och elektronik

Projektdirektiv. Rikard Falkeborn Sida 1

EXAMINATION KVANTITATIV METOD vt-11 (110204)

Komposanter, koordinater och vektorlängd Ja, den här teorin gick vi igenom igår. Istället koncentrerar vi oss på träning inför KS3 och tentamen.

3 Maximum Likelihoodestimering

Transkript:

Teknisk rapport Bohan Liang Version 1.0 Granskad Status Godkänd LIPS Designspecifikation i bohli890@student.liu.se

PROJEKTIDENTITET HT15, Detektion och felisolering i er Linköpings universitet, Institutionen för systemteknik Namn Ansvar Telefon E-post Bohan Liang Projektledare (PL) 073-5840266 bohli890@student.liu.se Markus Vilhelmsson Testansvarig (TA) 073-0642161 marvi038@student.liu.se Max Karjalainen Designansvarig (DA) 070-3757791 maxka588@student.liu.se Minh Le Tran Dokumentansvarig (DOC) 073-3329251 minle240@student.liu.se Philip Nilsson Mjukvaruansvarig (MA) 073-5284886 phini326@student.liu.se Erik Carlsson Dataansvarig (DA) 070-2951001 erica797@student.liu.se E-postlista för hela gruppen: bohli890@student.liu.se Hemsida: http://www.isy.liu.se/edu/projekt/tsrt10/2015/enginerootfaultdiagnosis/ Beställare: Erik Frisk, ISY, frisk@liu.se Kund: Volvo Car Sverige AB, 405 31 GÖTEBORG, Växel 031-3250200 Kontaktperson hos kund: Mikael Krizmanik, mikael.krizmanik@volvocars.com Kursansvarig: Daniel Axehill, B-huset 2A:581, 013-28 40 42, daniel@isy.liu.se Handledare: Daniel Jung, 013-28 20 35, daner@isy.liu.se LIPS Designspecifikation 1 bohli890@student.liu.se

Dokumenthistorik Version Datum Utförda förändringar Utförda av Granskad 1.0 Första version MaV MaV LIPS Designspecifikation 2 bohli890@student.liu.se

Sammanfattning I det här projektet utfört av sex studenter från Linköpings universitet har modellbaserad diagnos undersökts. Utifrån givna modeller över en och ett antal fel har ett diagnossystem tagits fram. Diagnossystemets detekterbarhet och isolerbarhet för olika fel samt hur rangordning kan göras i de fall en säker diagnos inte kan göras har analyserats och kommer att gås igenom i den här rapporten. Mätningar på en motor har gjorts i Fordonssystems Motorlaboratorium för ett antal statiska arbetspunkter och dynamiska förlopp och resultatet av dessa mätningar har sammanställts i en databas för framtida forskning. Resultatet av projektet är en studie över hur ett modellbaserat diagnossystem kan tas fram på ett systematiskt vis. Ett diagnossystem har tagits fram som kan detektera alla fel och isolera en del fel. Diagnossystemet kan hantera enkelfel. En studie över hur rangordning kan göras för enkelfel med hjälp av bayesianska nätverk presenteras i rapporten. LIPS Designspecifikation 3 bohli890@student.liu.se

1 Introduktion... 6 1.1 Parter... 6 1.2 Syfte och Mål... 6 1.3 Användning... 6 1.4 Bakgrund... 6 1.5 Definitioner... 7 2 Systemöversikt... 8 2.1 Motormodell... 9 2.2 Simuleringsmiljö... 10 Körcykler...10 2.3 Diagnossystem... 12 Implementering av modellekvaioner...12 Tester och residualer...12 Beslutsfattande...13 3 Design och konstruktion... 14 3.1 Modellering av motorn... 14 Parametersättning...15 Felbeteende...15 Skapade Simulink-block...15 3.2 Implementering av förarmodell i motormodellen... 20 3.3 Implementering av koppling och växellåda... 21 3.4 Implementering av fordonsmodell... 21 3.5 Framtagande av diagnossystem... 22 Definitioner...24 Framtagande av residualer...24 Isolerbarhet...26 Rangordning...26 4 Datainsamling... 27 4.1 Motormätningar... 27 Statiska mätningar...27 Dynamiska mätningar...27 Felfria mätningar...27 Felinjicerade mätningar...27 4.2 Testprotokoll... 29 4.3 Databas... 29 5 Resultat och analys... 30 5.1 Validering av motormodell... 30 5.2 Implementation av motormodell i FDT... 30 5.3 Residualer... 31 5.4 Detekterbarhet och isolerbarhet... 31 5.5 Teststorheter och tröskling... 33 Residualer som teststorhet...33 CUSUM som teststorheter...39 GLR som teststorhet...41 5.6 Rangordning av diagnoskandidater... 43 Implementering i GeNIe...43 5.7 Begränsningar i systemet... 45 6 Diskussion och Vidareutveckling... 46 6.1 Diskussion... 46 6.2 Vidareutveckling... 47 Enkelfel...47 Multipelfel...47 Datainsamling...48 7 Litteraturförteckning... 49 LIPS Designspecifikation 4 bohli890@student.liu.se

Appendix A Fabriksmonterade sensorer... 50 Appendix B Modellekvationer... 51 Appendix C Användarhandledning... 64 LIPS Designspecifikation 5 bohli890@student.liu.se

1 Introduktion Projektet Detektion och felisolering av er var ett studentprojekt som utfördes vid Institutionen för Systemteknik(ISY) - Fordonssystem vid Linköpings Universitet. Projektet var ett samarbete mellan Fordonssystem och Volvo Cars, Göteborg och har utförts som en del av kursen. Projektet har utförts enligt utbildningsramverket Conceive Design Implement Operate(CDIO). 1.1 Parter De involverade parterna i projektet är; Kund, Mikael Krizmanik - Volvo Cars, Göteborg Examinator, Daniel Axehill - ISY Beställare, Erik Frisk - Fordonssystem Handledare, Daniel Jung - Fordonssystem Projektet har utförts av sex studenter från civilingenjörsprogrammen i maskinteknik samt teknisk fysik och elektroteknik. Projektmedlemmarna är: Bohan Liang - Projektledare Markus Vilhelmsson - Testansvarig (TA) Max Karjalainen - Designansvarig (DA) Minh Le Tran - Dokumentansvarig (DOC) Philip Nilsson - Mjukvaruansvarig (MA) Erik Carlsson - Dataansvarig (DA) 1.2 Syfte och Mål Projektets syfte var att analysera hur ett modellbaserat diagnossystem för en kan utvecklas med hjälp av ett systematiskt arbetssätt. Projektets syfte var vidare att utvärdera utvecklingsmetodiken vid framtagandet av ett diagnossystem, samt dess framtida potential i utvecklingsarbete hos kunden. Projektets mål var att presentera en analys av utvecklingsmetodiken bakom det framtagna diagnossystemet samt leverera tillhörande diagnossystem i form av Matlab-kod. Med diagnossystemet skulle en tillhörande simuleringsmodell av motorn presenteras. Simuleringsmodellen skulle valideras mot uppmätt data från motorlaboratoriet. Diagnossystemet har vidare validerats med uppmätt data från motorlaboratoriet och data från simuleringsmodellen. De uppmätta experimenten från motorlaboratoriet har även sammanställts i en databas för eventuell fortsättning på projektet eller framtida forskning. 1.3 Användning Projektet kommer att användas som beslutsunderlag för att utvärdera om metodiken modellbaserad diagnos är ett effektivt verktyg för att utveckla framtida motor diagnossystem hos kunden. 1.4 Bakgrund Motordiagnostik är en central del av er för att detektera och isolera fel i motorn. Feldetekterings- och felisoleringsalgoritmer används främst inom två funktionsområden, On-Board Diagnostics(OBD) som krävs för att certifiera fordon, eller som en informationskälla för servicetekniker. Ett diagnossystem kan grovt beskrivas som ett antal monitorer som detekterar olika fel i motorn. I en ideal situation finns en specifik monitor för LIPS Designspecifikation 6 bohli890@student.liu.se

varje typ av fel som kan uppstå. Under ideala förhållanden blir felutpekningen trivial då varje larm pekar på en specifik komponent. I komplexa tekniska produkter, som er är det sällsynt möjligt att implementera den mängd monitorer som krävs för att uppnå ideala förhållanden. Dels på grund av kostnaden för att montera det stora antalet monitorer som krävs för att uppnå ideala förhållanden, och dels på grund av att vissa monitorer ej är tekniskt möjliga att installera på önskad plats i systemet. En består utav en mängd olika delsystem, då delsystemen är tätt sammankopplade kan fel i ett av delsystemen uppenbara sig i övriga delsystem. Systemet är dessutom dynamisk vilket bidrar till ytterligare ökad komplexitet, dvs. felen påverkar systemet med en viss tidsfördröjning. Fel kan uppenbara sig under specifika driftsförhållanden för att sedan försvinna när driftförhållandena förändras, så kallade självläkande fel. Det kan även uppstå fel som försvinner efter en viss tid, exempelvis en kloggning i ett rör som plötsligt släpper. Dessa fel kallas för intermittenta fel och kan vara svåra att återskapa och därmed åtgärda. Där av är det viktigt att kunna detektera och isolera intermittenta fel i realtid. 1.5 Definitioner Följande förkortningar kommer användas i den tekniska rapporten. CDIO Concieve, Design, Implement and Operate CUSUM Cumulative Sum EPA United States Enviromental Protection Agency FDT Fault Diagnosis Toolbox (MATLAB Toolbox) FTP - Federal Test Procedure GLR Generalized Likelihood Ratio ISY - Institutionen för Systemteknik LiU - Linköpings Universitet MAF Mass Air Flow ML Maximum Likelihood MSO - Minimally Structural Overdetermined set of equations NEDC - New European Driving Cycle NF No Fault OBD On-Board Diagnostics SFTP SC03 Speed Correction Driving Schedule ROC Receiver Operating Characteristics LIPS Designspecifikation 7 bohli890@student.liu.se

2 Systemöversikt Diagnosalgoritmen som har utvecklats är framtagen för en Volvo T5 motor. Då diagnosalgoritmen är modellbaserad, behövs en tillhörande simuleringsmodell av motorn för att utveckla diagnosalgoritmen. En motormodell har då tagits fram med tillhörande förarmodell och fordonsmodell för att kunna simulera motorn under olika driftfall och körcykler. Motormodellen har validerats mot mätdata från fordonssystems motorlaboratorium där en Volvo T5 motor finns monterade i testbänk. Diagnossystemet har validerats mot mätdata från motorlaboratoriet och simuleringsdata från motormodellen, se Figur 1. Figur 1. En översiktsfigur av det studerade systemet. De fel kunden var intresserad av att analysera visas i Tabell 1. De fel som var intressanta för kund att analysera samt felstorlekar och fel typ. De intressanta felens placering i motorn illustreras i Figur 2. Tabell 1. De fel som var intressanta för kund att analysera samt felstorlekar och fel typ. Fel Beskrivning Felstorlek Permanent/ Intermittent fel f paf Ökat tryckfall över luftfiltret som simulerar en strypning av luftflödet i luftfiltret. 20 kpa tryckförlust. P fw af Luftläckage genom ett hål med variabel diameter efter MAF-sensor och före kompressorn. 20% av flödet går igenom läckagearea. P fw th Luftläckage genom ett hål med variabel diameter efter gasspjället i insugsröret. 20% av flödet går igenom läckagearea. P fw c Luftläckage genom ett hål med variabel diameter efter kompressorn och före gasspjället. 20% av flödet går igenom läckagearea. P fy waf Mätfel på luftmassflödessensorn (MAF). 20% flödesfel. I fy pim Mätfel på trycksensorn i insugsröret. 20% skillnad i tryck. I fy pic Mätfel på trycksensorn monterad i intercooler. 20% skillnad i tryck. I fy tic Mätfel på temperatursensorn monterad i intercooler. Offset på 20 grader. I LIPS Designspecifikation 8 bohli890@student.liu.se

Figur 2. Illustrerar de intressanta felens placering i motorn. [1] 2.1 Motormodell Då diagnosalgoritmen är modellbaserad har en simuleringsmodell av en Volvo T5-motor utvecklats. Modellbiblioteket som använts för att modellera motorn är utvecklat av Fordonssystem (ISY). Motormodellen är framtagen i Simulink, Figur 3 visar en översiktsbild av motormodellen. Figur 3. Simulink-modell över Volvo T5-motorn tillsammans med förarmodell, fordonsmodell, växellåda och koppling. En modell av motorn, och dess delkomponenter, är nödvändig eftersom diagnossystemet som ska tas fram bygger på fysikaliska modeller. Utan modeller och de ekvationer som utgör modellerna finns ingen grund för att bygga diagnossystemet. LIPS Designspecifikation 9 bohli890@student.liu.se

2.2 Simuleringsmiljö För att kunna simulera körcykler har en förarmodell, koppling och växellåda (drivlina) samt en fordonsmodell implementerats i motormodellen i Figur 3. Parametrarna som använts i fordonsmodell och drivlinemodellen gäller för en Volvo V60 utrustad med en T5-motor och 8-växlad automatisk växellåda. Möjlighet att köra stationära punkter, steg och ramper har också implementerats där varvtal och gaspedalposition kan väljas manuellt. Detta block heter I/O abstraction layer. Körcykler För att simulera motormodellen har tre olika körcykler valts ut. En förkortad version av New European Drive Cycle (NEDC) [2], en förkortad version av EPA Speed Correction Driving Schedule (SC03) [3] samt EPA Federal Test Procedure (FTP) [3]. Figur 4, Figur 5 och Figur 6 illustrerar de tre körcyklerna. En del av körcyklerna har kortats ner för att minska simuleringstiden av motormodellen. Figur 4. Figuren visar NEDC körcykeln, y-axeln visar fordonets hastighet och x-axeln visar tiden. LIPS Designspecifikation 10 bohli890@student.liu.se

Figur 5. Figuren visar SC03 körcykeln, y-axeln visar fordonets hastighet och x-axeln visar tiden. Figur 6. Figuren visar FTP körcykeln, y-axeln visar fordonets hastighet och x-axeln visar tiden. LIPS Designspecifikation 11 bohli890@student.liu.se

2.3 Diagnossystem Dels har ett diagnossystem framtagits för den tidigare beskrivna n och dels har alla verktyg som använts för att ta fram detta system sparats och dokumenterats. Diagnossystemet grundar sig i motormodellen. Ur denna har sedan ett antal tester framtagits som alla är känsliga för olika fel. Utifrån dessa tester tas sedan beslut, i den mån det är möjligt, om vilka fel som kan ha orsakat det av motorn uppvisade felbeteendet. Implementering av modellekvaioner Utifrån motormodellen beskriven i avsnitt 2.1 har de ekvationer som beskriver systemet tagits ut och implementerats i Fault Diagnostics Toolbox (3). Då motormodellen finns implementerad på detta sätt kan analyser rörande isolerbarhet och detekterbarhet göras. Figur 7. Isolerbarhet som är teoretiskt möjlig att uppnå. Figur 7 visar den isolerbarhet som är teoretiskt möjlig att uppnå. Problemen med att uppnå denna isolerbarhet har bland annat att göra med modellosäkerhet och beräkningsordning hos modellekvationerna. Denna figur kan alltså användas som en övre gräns för den isolerbarhetsprestanda som modellen kan prestera. Vidare är isolerbarhetsmatrisen i Figur 7 för ett större antal fel än det som har analyserats i detta projekt, vilket visar på möjligheten att detektera och isolera ytterliggare fel. Tester och residualer För att detektera de fel som finns listade i Tabell 1 konstruerades ett antal residualer, ur vilka tester sedan byggdes. En residual är en storhet som i det ideala fallet ska vara nollskild endast då systemet uppvisar ett felbeteende. Residualer tas fram genom att ett modellerat värde jämförs med ett uppmätt sensorvärde. Detta gör att residualerna i praktiken alltid är nollskilda i varierande grad beroende på modell och mätosäkerheter. LIPS Designspecifikation 12 bohli890@student.liu.se

För att konstruera residualerna används den för ändamålet lämpliga funktionaliteten i Fault Diagnostics Toolbox (3). Denna använder de inmatade modellekvationerna för att ta fram residualer. I det fall att residualerna är signifikant noll för alla de felfria systemmoder som finns så är det utifrån en residual enkelt att ta beslut, genom att generera ett larm i det fall residualens värde överstiger en förutbestämd tröskel. Beslutsfattande Då ett eller flera tester har larmat kvarstår att peka ut vilket av felen det är som har orsakat det observerade beteendet hos testerna. Detta görs genom att jämföra de tester som har larmat med varandra med avseende på felkänslighet. Eftersom alla tester är känsliga för en unik uppsättning fel går det att utesluta fel allt eftersom testerna larmar. I det fall att det inte går att peka ut ett fel så finns det möjlighet att rangordna de möjliga felorsakerna efter vilken som är det som mest sannolikt orsakar felbeteendet. LIPS Designspecifikation 13 bohli890@student.liu.se

3 Design och konstruktion Följande avsnitt beskriver de metoder och den teori som använts för att ta fram ett modellbaserat diagnossystem för en. 3.1 Modellering av motorn Simulink-modellen i Figur 3 är en modell över Volvo T5-motor som användes för simulering. För att körcykler skulle kunna köras innehåller den även en förarmodell, en koppling- och växellådsmodell och en fordonsmodell. Figur 8 visar insidan av blocket Engine i Simulinkmodellen. Figur 8. Figuren visar den framtagna Simulink-modellen av motorn med möjligheten att injicera fel. LIPS Designspecifikation 14 bohli890@student.liu.se

Parametersättning Parametrarna som används finns tillgängliga under Appendix B. Felbeteende Motorblocket som simulerar felbeteende är en kopia av motorblocket som simulerar nominellt beteende. Det finns stöd i den för att införa fel som finns i Tabell 1. Om man avaktiverar felen i modellen kommer modellen att simulera samma beteende som motorblocket som simulerar felfritt beteende. Skapade Simulink-block För att simulera felen har ett antal Simulink-block skapats av projektgruppen. Blocken är generella och kan användas för att modellera flera fel. De block som har introducerats är: Additivt fel Proportionellt fel Håldynamik/ Hål och läckage Konstant fel Sensorfel 3.1.3.1 Additivt fel Figur 9 visar subsystemet som motsvarar ett additivt fel. Den kan användas för bland annat modellering av offset-fel. Blocket är ett subsystem och består av två delar. När en del är aktiv är den andra delen inaktiv. Detta styrs av Simulink-blocket Switch. Switchen styrs av en konstant som kan bestämmas av användaren. När konstanten är mindre än ett är rampen aktiverad. Annars är steget aktiverat. Delen som motsvarar ett steg består av en addition av två steg-block. Önskas permanent fel sätts önskad sluttid med ett värde som är större än simuleringstiden. Den andra delen består av en multiplikation mellan en ramp och ett steg. Rampen kan ställas in så att den börjar på önskad tid med önskad lutning. Med steget kan man bestämma hur länge rampen varar. För permanenta fel ska stegtiden sättas till en godtycklig tid som överskrider simuleringstiden. Inställningarna för det additiva blocket ses i Tabell 2. Figur 9. Figuren visar subsystem för additiv felinjicering i Simulink-modellen. LIPS Designspecifikation 15 bohli890@student.liu.se

Tabell 2: Grundinställningar för subsystemet som representerar additivt fel i Simulink. Grundinställningar Block: init_step Värde Step time Tidpunkt då felet aktiveras. Initial value 0 Final value Felets storlek Block: end_step Step time Tidpunkt då felet avaktiveras. Initial value 0 Final value Felets storlek * (-1) Block: Ramp Slope Rampens lutning. Start time Tidpunkt då rampfelet aktiveras. Block: end_step1 Step time Tidpunkten då felet avaktiveras. Initial value 1 Final value 0 Block: Constant C 1/0 3.1.3.2 Proportionellt fel Vissa fel kan modelleras som ett proportionella fel. I Tabell 1 finns fel som modelleras som proportionella. Felet representeras av subsystemet i Figur 10. Subsystemet tar in en signal och multiplicerar det med ett konstant värde som bestäms av användaren. Det önskade värdet som användaren sätter görs i subsystemet Additive Fault. Föregående avsnitt som handlar om additivt fel visar grundinställningarna för detta subsystem. Värdet som användaren sätter subtraheras från en konstant som alltid är ett. Summan multipliceras sedan med insignalen och går ut från subsystemet. Figur 10. Subsystems som beskriver ett proportionellt fel i Simulink. 3.1.3.3 Håldynamik Det finns ett antal fel i Tabell 1 som modelleras med håldynamik. Införs ett hål i ett rör flödar en del av massflödet ut ur hålet beroende på hålets storlek. Det sker även en tryckförändring i röret beroende på om det är över- eller undertryck i röret. Är det övertryck i röret flödar det ut. Annars flödar det in. LIPS Designspecifikation 16 bohli890@student.liu.se

I Simulink representeras håldynamiken av subsystemet i Figur 11. Subsystemet tar in fyra signaler och ger ut en signal som representerar flödesskillnaden mellan massflödet innan hålet och massflödet ut ur hålet. De fyra insignalerna är: Atmosfärstryck, p_amb. Effektivt tryck, p. Lufttemperaturen, T_air. Hålets area, A. Subsystemet simulerar håldynamiken som beskrivs av W = A 2ρ(p amb p) Hålet antas vara cirkulärt. Arean kan då beskrivas enligt A = πr 2 Arean sätts av användaren och skickas in i subsystemet. LIPS Designspecifikation 17 bohli890@student.liu.se

Det finns stöd för både steg- och rampfel. De ställs in med hjälp av blocken längst ner i Figur 11. De ställs in på samma sätt som för additivt fel. Se avsnittet för additivt fel. Figur 11. Subsystemet som representerar håldynamik i Simulink. LIPS Designspecifikation 18 bohli890@student.liu.se

3.1.3.4 Konstant fel Konstant fel kan inträffa i gasspjället. Figur 12 visar subsystemet som representerar konstant fel i Simulink. Subsystemet innehåller ett switch-block som styrs av användare beroende på vilken typ av fel som ska injiceras i modellen. Om inget fel ska injiceras väljs insignalen till switch-blocket till noll, insignalen blir då densamma som utsignalen. Med hjälp av stegblocken kan användaren injicera permanenta och intermittenta fel, ramp-blocket injiceras fel som rampas upp eller ner över tid. Figur 12. Subsystemet som representerar konstant fel i Simulink. Grundinställningar för steg-blocken visas i Tabell 3. För att införa ett permanent fel ska Step time i Step1 sättas till en godtycklig tid som överskrider simuleringstiden. Tabell 3. Grundinställningar för subsystemet som representerar konstant fel i Simulink. Grundinställningar Block: Step Värde Step time Tidpunkt för då felet aktiveras. Initial value 0 Final value 1 Block: Step1 Step time Tidpunkten för då felet avaktiveras. Initial value 0 Final value (-1) 3.1.3.5 Sensorfel Fel i sensor gör att sensorn skickar ut ett annat värde än det som mäts. Ett fel i sensorn behöver inte påverka motorn i allmänhet såvida inte motorn utnyttjar sensorvärden för exempelvis reglering. Till exempel använder en ECU sensorvärden från en MAF-sensor för att reglera bränsleinjicering. Sensorfel simuleras i Simulink med subsystemet i Figur 13. Subsystemet har tre insignaler och en utsignal. Första insignalen är ett fel som sätts av användaren. Andra insignalen är en signal som styr Switch-blocket och även den bestäms av användaren. Den tredje insignalen är signalen som mäts av sensorn. Användaren kan ställa in när felet ska aktiveras och när det ska avaktiveras. Detta görs genom att ställa in Steg-blocken. I tabell 6 visas hur sensorfel aktiveras respektive avaktiveras. LIPS Designspecifikation 19 bohli890@student.liu.se

Tabell 4: Grundinställningar för subsystemet som representerar sensorfel i Simulink. Grundinställningar Block: init_step1 Värde Step time Tidpunkt för då felet aktiveras. Initial value 0 Final value 1 Block: end_step1 Step time Tidpunkten för då felet avaktiveras. Initial value 0 Final value (-1) Figur 13. Subsystemet som representerar sensorfel i Simulink. 3.2 Implementering av förarmodell i motormodellen Förarmodellen består av en PI-regulator som reglerar gas- och bromspedal utifrån skillnaden i önskad hastighet och fordonets nuvarande hastighet. LIPS Designspecifikation 20 bohli890@student.liu.se

3.3 Implementering av koppling och växellåda För att kunna simulera körcykler i motormodellen har en växellåda med åtta växlar implementerats. Se Tabell 5 för de olika växlarnas utväxlingsförhållande. Tabell 5. Tabellen visar växellådans utväxlingsförhållande för de olika växlarna. Växel Utväxlingsförhållande [-] 1 5,250 2 3,029 3 1,950 4 1,457 5 1,221 6 1,000 7 0,809 8 0,673 R 4,015 Slutväxel 2,774 Växel och kopplingsschema är manuellt uträknat för de olika körcyklerna. Vilken växel som används vid respektive hastighet är bestämt enligt Tabell 6. Tabell 6. Tabellen visar vid vilken hastighet respektive växel används. Växel Hastighet [km/h] 1 0 15 2 15 30 3 30 45 4 45 60 5 60 75 6 75 90 7 90 100 8 100 < Kopplingen aktiveras mellan varje växel, det vill säga i sista tidssteget på nuvarande växel och första tidssteget på den nya växeln. Så vid ett växelsförfarande kommer kopplingen att anta värdet ett vid två tillfällen. 3.4 Implementering av fordonsmodell För att kunna beräkna fordonets vridmoment, hastighet och tröghet utifrån hjulhastigheten och bromspedalens position behöver ett antal fordonsparametrar implementeras i motormodellen. Se Tabell 7 för de valde parametervärdena. Tabell 7. Tabell visar de fordonsparametrar som används i motormodellen. Parametrar Värde Enhet Vikt m v 1700 kg Luftmotståndskoefficient c d 0,29 [-] Front area A f 2,28 m 2 Hjulradie r w 0,3234 m LIPS Designspecifikation 21 bohli890@student.liu.se

3.5 Framtagande av diagnossystem Det framtagna diagnossystemet har utvecklats med hjälp av Fault Diagnosis Toolbox(FDT). FDT är en specialutvecklad Toolbox för diagnos framtagen av Erik Frisk(Fordonssystem). FDT innehåller ett antal kraftfulla verktyg för att skapa modellbaserade diagnossystem. Det första steget för att skapa en diagnosmodell är definiera alla de modellekvationer som används i modellen, det vill säga alla ekvationer som beskriver modellen av n. När samtliga modellekvationer med tillhörande fel är definierade i FDT blir nästa steg att undersöka närmare vilka möjliga residualer som kan skapas i systemet samt undersöka dess detekterbarhet och isolerbarhetsegenskaper. I FDT finns det färdiga stödfunktioner för att undersöka diagnosmodellers detekterbarhet och isolerbarhetsegenskaper genom diagnosmodellens Mendelson-dekomposition [4], se Figur 14 för ett exempel på denna. I figuren beskriver x-axeln alla de variabler som ingår i modellen medan y-axeln beskriver alla de olika modellekvationerna som ingår i modellen. Rektangeln som breder ut sig över det nedre högra hörnet markerar den del av modellen som överbestämd. Ur den överbestämda delen av modellen är det möjligt att skapa residualer då det är i denna del av modellen det finns redundans. Den övre vänstra delen beskriver ekvationer som är exakt bestämda. LIPS Designspecifikation 22 bohli890@student.liu.se

Figur 14. Figuren visar diagnosmodellens Mendelson-dekomposition. Y-axeln visar alla de ekvationer som ingår i diagnosmodellen medans x-axeln visar alla variabler som ingår i diagnosmodellen. Det heldragna blåa strecket som skapar en rektangel i det nedre högra. Det går även att ur Figur 14 se vilken isolerbarhet som, förutsatt en perfekt modell, går att uppnå. Felen är markerade längs med högerkanten i figuren, och uppträder i motsvarande modellekvationer. Då varje inrutad mängd variabler längs med diagonalen kan ses som exakt bestämda ekvationssystem kommer perfekt isolerbarhet att uppnås så länge två fel inte påverkar samma variabelmängd. Vidare kan detta användas som ett verktyg för att säkerställa att modellekvationerna implementerats på rätt sätt. I det fall att det finns en underbestämd del av modellen kommer denna del att markeras av en rektangel uppe i vänstra hörnet, på samma sätt som den överbestämda är markerad i det nedre högra. LIPS Designspecifikation 23 bohli890@student.liu.se

Definitioner Test o Ett test är en funktion som kommer att tala om huruvida en viss mätdatasekvens innehåller fel eller inte. Varje test är känsligt mot ett antal olika fel. MSO o Minimally Structurally Overdetermined (set) o I detta projekt avses de delmängder av ekvationer som kan bildas ur diagnosmodellen, där varje MSO är en överbestämd delmängd. Isolerbarhet o Ett fel fx sägs vara isolerbart från ett annat fel fy ifall det finns ett test som är känsligt för fx, men inte från fy. Enkelfel o Enkelfel avser antagandet att endast ett fel i taget orsakar det observerade felbeteendet. Multipelfel o Att multipelfel tas i beaktning innebär att även kombinationer av flera olika fel anses vara möjliga diagnoser. Framtagande av residualer Ur varje MSO kan en residual skapas, då de innehåller en uppsättning ekvationer ur vilka redundans kan fås. För större system som består av en stor mängd modellekvationer kan ofta en mycket stor mängd MSO-er genereras. Problemet blir då hur man ska välja bland dessa för att generera residualer. Det är främst två stycken olika metoder som använts för att ta fram residualer till diagnossystemet. Den första metoden som använts är baserad på en girig sökning av de MSOer som genererats med hjälp av Fault diagnostics toolbox. Den andra metoden som använts går istället ut på att hitta de minsta möjliga MSO-er som kan användas till att bilda residualer. 3.5.2.1 Girig sökning Den giriga sökningen söker igenom alla de genererade MSO-erna och siktar på att för varje genomsökning hitta den MSO som bidrar mest till isolerbarhetsprestandan. Detta gör att de residualer som skapas baserat på den giriga sökningen blir relativt få till antalet, samtidigt som de täcker in hela den möjliga isolerbarheten hos systemet. Utifrån dessa MSO-er har sedan ytterligare ett urval gjorts, där alla de MSO-er som kräver att modellekvationer deriveras valts bort. Detta urval har gjorts för att undvika den problematik som finns i att derivera brusiga mätsignaler. Nackdelen med detta är att systemets ideala isolerbarhet inte kommer att uppnås utan att kombinera MSOer med både deriverbar och integrerbar kausalitet. 3.5.2.2 Val av MSO-er De residualer som behövs för att kunna detektera och isolera alla fel har tagits fram med hjälp utav de MSO-er FDT skapar. Diagnosmodellen skapar ett antal MSO-er utifrån den beskriva modellen av systemet. Då antalet möjliga MSO-er är väldigt högt och alla ej är nödvändiga behöver ett antal MSO-er väljas ut för att kunna skapa den mängd residualer som krävs för att kunna detektera och isolera samtliga fel givet den önskade kausaliteten (deriverande och/eller integrerande). De MSO-er som valts ut är de som innehåller minst antal ekvationer, men samtidigt klarar av kravet på detekterbarhet och isolerbarhet. Fördelen med detta tillvägagångssätt är att de skapade residualerna består utav så få ekvationer som möjligt, vilket gör dem enkla att LIPS Designspecifikation 24 bohli890@student.liu.se

hantera. Nackdelen blir att det inte går att på ett bra sätt planera vilken isolerbarhet systemet ska ha. I värsta fall kan det krävas ett stort antal extra residualer för att uppnå den önskade isolerbarheten. 3.5.2.3 CUSUM som teststorhet Om en residual har en offset då felet inträffar vid stationära punkter så är CUSUM en bra metod för att detektera felet. För ideala fall är residualen noll vid nominella fall och nollskild då felet inträffar. Verkligheten är emellertid annorlunda och residualen är oftast brusig. Då är det inte rimligt att diagnossystemet larmar för minsta lilla avvikelse från noll. Ett sätt att handskas med problemet är att man bestämmer en tröskel för då systemet bestämmer sig för att fel har inträffat. Dock är residualen inte alltid noll vid felfritt beteende i verkligheten på grund av faktorer som numeriska fel och undermåliga metoder för residualgenerering. För att handskas med detta problem kan man sätta två trösklar; en övre tröskel och en undre tröskel. För att kunna sätta lämpliga trösklar behöver man kännedom om residualens utseende. Denna metod kan därför inte köras online. En lämplig metod för att bestämma trösklar är att man sätter övre och undre tröskel till det till högsta respektive minsta värdet av residualen vid felfritt fall. Vid användning av denna metod kommer CUSUM att bli nollskild när en av trösklarna överskrids. Teststorheterna beräknas på följande sätt: T u,k = max(t u,k 1 + r k J u, 0) T l,k = max(t l,k 1 r k J l, 0) Den första ekvationen ovan beskriver övre CUSUM medan den andra beskriver undre CUSUM där k är sampelnummer. 3.5.2.4 GLR som teststorhet Vid användning av CUSUM har man kännedom om residualens utseende. Vad gör man om residualens utseende är okänt? Detta fall uppstår då man ska detektera fel i realtid. Om man antar att väntevärdet för nominellt beteende är känt kan man utnyttja en teststorhet som kallas GLR. Med denna metod gör man en ML-skattning av väntevärdet. Detta görs genom att man maximerar över två variabler; den ena är tidpunkten då fel inträffar och den andra är väntevärdet. Teststorheten beräknas enligt: T k = k max max log P θ 1 (y i ) 1 t ch k θ 1 P θ0 (y i ) i=t ch I ekvationen ovan motsvarar θ väntevärdet och tch tidpunkten då fel inträffar. Nackdelen med den här metoden är att den är tidskrävande. För att minska tiden för metoden kan man utföra metoden flera gånger fast för olika uppdelade delar av residualen. Trots att det minskar tiden anses den fortfarande som tidskrävande. LIPS Designspecifikation 25 bohli890@student.liu.se

Isolerbarhet Eftersom kraven på detektion och isolerbarhet i detta projekt avgränsats till enkelfel levererar diagnossystemet de möjliga enkelfel som skulle kunnat orsaka det observerade felbeteendet. Detta görs genom att jämföra känsligheten hos de tester som har larmat. Endast de fel som är gemensamma för alla de larmande testerna kan då, givet antagandet om enkelfel, vara möjliga förklaringar till motorns felbeteende. I det fall att även multipelfel tas i beaktning ökar komplexiteten hos problemet eftersom att alla kombinationer av fler än ett fel som kan förklara felbeteendet kommer vara möjliga diagnoser. Det är på detta sätt ett diagnossystem bör fungera för att öka den praktiska tillämpbarheten. Rangordning I det här projektet har en analys genomförts av hur diagnoser kan rangordnas. Den metod som analyserats är sannolikhetsbaserad rangordning med hjälp av bayesianska nätverk. I följande avsnitt presenteras kort vad bayesianska nätverk är och i avsnittet resultat presenteras den implementering som gjorts i GeNIe. 3.5.4.1 Bayesianska nätverk Bayesianska nätverk är en metod där information om en sannolikhetsbaserad modells oberoende mellan olika variabler representeras grafiskt. Ett enkelt exempel på detta kan vara att ett system har två felmoder F1 och F2 samt en alarmmod A. Om felmoderna antas vara oberoende av varandra kan detta representeras i ett bayesianskt nätverk enligt Figur 15. Figur 15. Figuren visar ett enkelt exempel på bayesianska nätverk. I figuren visar att alarmmoden A har ett beroende av båda felmoderna F1 och F2 men att felmoderna är oberoende av varandra. Pilen från F1 till A visar här på att alarmmoden A är beroende av felmoden F1. I det här projektet antas alla fel vara oberoende av varandra. Detta kan vara ett antagande som inte stämmer helt men som var nödvändigt för analysens utförande då det inte fanns information tillgänglig om vilka fel som i sådana fall var beroende av varandra LIPS Designspecifikation 26 bohli890@student.liu.se

4 Datainsamling För att kunna validera diagnossystemet har mätdata från en motor samlats in från Fordonssystems motorlaboratorium. I motorlaboratoriet finns en Volvo T5 motor monterad i testbänk med tillhörande givare från fabrik. Ett antal extra sensorer finns även monterade på motorn för forskningssyfte, dessa har inte använts vid mätningar i motorlaboratoriet. Motorn har körts i testbänken genom testprogrammet INCA. 4.1 Motormätningar Mätningarna i motorlaboratoriet har utförts enligt mätningsplanen för projektet [5]. Både statiska och dynamiska mätningar har utförts på motorn, med och utan injicerade fel. Statiska mätningar De statiska mätningarna har utförts i ett spann av 1000 rpm till 4250 rpm med ett vridmoment mellan 50 till 250 Nm. Arbetspunkterna har valts i detta intervall för att motsvara de värden som krävs av motorn då den följer NEDC-cykeln i motorns simuleringsmodell. Dynamiska mätningar De dynamiska mätningarna kan delas upp i två kategorier, stegsvarsexperiment och körcykelföljning. 4.1.2.1 Stegsvarsexperiment Stegsvarsexperiment har utförts då ett steg i motorvarvtal eller vridmoment har genomförts samtidigt som den andra parametern har varit konstant. 4.1.2.2 Körcykelföljning Initialt var tanken i projektet att utföra mätningar på motorn under körcykelföljning. På grund av projektets ekonomi har dessa krav reviderats till en lägre prioritet och inte utförts. Felfria mätningar För att kunna validera diagnossystemet har en enkel mapp över motorns varvtal och vridmoment tagits fram, se mätningsplan [5]. Felinjicerade mätningar För att kunna utvärdera diagnossystemet har ett antal mätserier med injicerade fel utförts i motorlaboratoriet. Åtta stycken fel har mätts upp i laboratoriet. Felen kan delas upp i två huvudgrupper av fel, sensorfel och fysikaliska fel. 4.1.4.1 Sensorfel Ett vanligt förekommande fel i motorn är att någon av dess sensorer mäter fel eller helt slutar fungera. Fallet då en sensor mäter fel har simulerats i motorlaboratoriet genom att ändra sensorns modell för hur den tolkar ett spänningsvärde. För t.ex. en trycksensor kan 1 V motsvara 100 kpa. Då sensorfelet implementeras tolkar INCA 1V som 110 kpa istället, sensorn mäter då trycket med ett proportionellt fel på 10 %. 4.1.4.2 Fysikaliska fel För att injicera de fysikaliska felen i motorn som luftläckage och igensättning av luftfiltret har motorn behövt modifieras. För fallet med luftläckage har rör med tillhörande ventiler skarvats på vid lämplig punkt för att simulera luftläckage, se Figur 16. Då ventilerna har olika diameter simuleras de olika felen med avseende på håldiameter istället för ett proportionellt fel på en viss procent. För att simulera att luftfiltret täppts igen har en gummiskiva med ett hål LIPS Designspecifikation 27 bohli890@student.liu.se

av en given storlek placerats framför insugsröret till motorn, se Figur 17. Genom att variera hålet i gummiskivan har olika grader av igensättning av luftfiltret kunnat simuleras. Figur 16. Figuren visar den rör sats med tillhörande ventiler som använts för att simulera luftläckage i motorn. Ventil nummer 1 motsvarar ett hål på 3 mm, ventil 2 motsvarar ett hål på 5 mm och ventil nummer 3 motsvarar ett hål på 7 mm. LIPS Designspecifikation 28 bohli890@student.liu.se

Figur 17: Figuren visar hur felet igensättning av luftfiltret har simulerats i motorlaboratoriet. Hålet in till luftfiltret har korrigerats i storlek mellan mätningar för att simulera olika grader av igensättning i filtret. 4.2 Testprotokoll För varje utfört test i motorlaboratoriet har tillhörande testprotokoll skrivits. I testprotokollet går det att utläsa vad som blivit uppmätt samt när detta är gjort. Information kring om det varit några problem i motorlaboratoriet har också dokumenterats. I testprotokollet går det även att läsa om mätningen är godkänd eller inte, det vill säga om mätningen anses vara tillförlitlig och går att använda för validering av diagnossystemet. Alla testprotokoll finns bifogade som appendix i mätplan [5]. 4.3 Databas Insamlade mätdata från motorlaboratoriet har sammanställts i en databas. Databasen är uppdelad i statiska och dynamiska mätningar. Alla kataloger i databasen är daterade samt innehåller sin respektive rådatafil (.dat) från mätningen, det vill säga värden för alla sensorer som finns monterade i motorn under mätningen. Varje katalog innehåller även en katalog med reducerat antal sensorvärden (.mat) från mätningen. Dessa sensorvärden är identiska med de i rådatafilen och är enbart ompaketerade för att vara enklare att använda vid validering av diagnossystemet. LIPS Designspecifikation 29 bohli890@student.liu.se

5 Resultat och analys Följande avsnitt behandlar resultat som erhållits från analyserna som gjordes. 5.1 Validering av motormodell När projektet påbörjades hade motormodellen validerats som en del av ett sommarjobb på Fordonssystem. En Excelfil tillhandahölls som beskrev vilka delmodeller i motormodellen som stämde bra och dåligt överens med mätdata från motorlaboratoriet. Projektgruppen gjorde också egna mätningar och efter det gjordes egna valideringar för stationära arbetspunkter för de tryck och temperaturer och flöden som presenterades i Tabell 1. Tre arbetspunkter validerades och dessa presenteras i Tabell 8, Tabell 9 och Tabell 10. Tabell 8. Validering av motormodell för stationär arbetspunkt 1000 rpm, 50 Nm. 1000 rpm, 50 Nm p_af [Pa] W_af [g/s] W_th [g/s] W_c [g/s] y_pim [Pa] y_pic [Pa] y_tic [celsius] Mätning (medelvärde) 100.6573e3 5,643 54.2806e3 101.7695e3 24,2704 Simulering (medelvärde) 101.14e3 5,8 5,1 7,4 46.004e3 101.43e3 21,2959 Tabell 9. Validering av motormodell för stationär arbetspunkt 2250 rpm, 100 Nm. 2250 rpm, 100 Nm p_af [Pa] W_af [g/s] W_th [g/s] W_c [g/s] y_pim [Pa] y_pic [Pa] y_tic [celsius] Mätning (medelvärde) 100.8587e3 23,3463 83.8587e3 105.0212e3 25,7708 Simulering (medelvärde) 100.77e3 19,7 18,7 21,7 64.695e3 101.94e3 22,0015 Tabell 10. Validering av motormodell för stationär arbetspunkt 3750 rpm, 150 Nm. 3750 rpm, 150 Nm p_af [Pa] W_af [g/s] W_th [g/s] W_c [g/s] y_pim [Pa] y_pic [Pa] y_tic [celsius] Mätning (medelvärde) 100.8049e3 58,7996 94.7936e3 114.8932e3 30,1296 Simulering (medelvärde) 100.26e3 38,4 37,2 40,1 75.405e3 110.70e3 25,6408 Motormodellen stämmer bra mot mätdata för lägre last och varvtal. När varvtal och last ökar ger modellen för låga värden på en flöden, varvtal och temperaturer. I de tidigare valideringar som gjorts har modellerna för avgastemperatur, turbinhastighet, tryck i insugsrör och temperatur i turbinen varit dåliga för låga varvtal. Vilken last på motorn som kördes under denna validering är okänd och därför blir en jämförelse svår mellan vår validering och den gjorda valideringen. Anledningen till att W_th och W_c är tomma från mätning är att dessa signalers namn i INCA inte var kända, därför kunde inte dessa värden presenteras. 5.2 Implementation av motormodell i FDT De ekvationer som beskriver motormodellen har implementerats i FDT. Fault diagnostics toolbox använder sig av två stycken olika typer av villkor, undantaget de rent algebraiska relationer som matas in. Dels finns IF-constraint och dels finns Diff-constraint. Diffconstraint används för att definiera de derivator som återfinns bland modellekvationerna. IFconstraint används i de fall då en variabel ska tilldelas ett av två värden beroende på ett tredje villkor. LIPS Designspecifikation 30 bohli890@student.liu.se

Till en början var begränsningen hos IF-constraint det faktum att endast två stycken olika värden kunde tilldelas, medan modellekvationerna på vissa ställen kräver att ett av tre värden tilldelas till en variabel. Vidare upptäcktes problem i de fall då en residual som genereras krävde att en av dessa flervalsfunktioner inverteras. Detta händer då FDT i vissa fall vänder på beräkningsordningen i ekvationer för att ta fram den storhet som krävs för residualen. Dessa problem löstes delvis genom att gruppen skrev egna symboliska funktioner som ersättare för IF-constraint-villkoren. Detta löste problematiken med de flervalsekvationer som innehåller fler än två alternativ. Att hantera problematiken som uppstod då dessa funktioner behövde inverteras var betydligt svårare. Den slutgiltiga lösningen blev att helt enkelt inte använda de residualer som kräver en beräkningsordning där dessa flervalsekvationer inverteras. En alternativ metod för att hantera inverteringsproblematiken är att förenkla modellen på ett sådant sätt att de flervalsekvationer som behöver inverteras ersätts med algebraiska ekvationer, som utan problem kan inverteras. Denna metod visade sig dock inte behövas då residualer med tillräcklig prestanda kunde skapas utan att invertera dessa ekvationer. 5.3 Residualer 12 stycken residualer skapades i projektet. Av dessa var 7 stycken baserade på den giriga sökningsmetoden och resterande på metoden som bygger på de minsta MSO-erna. Den giriga sökningen gav endast två residualer som kan anses vara små. De övriga residualerna innefattade mer än hälften av modellekvationerna. Rent intuitivt är detta rimligt, då mycket av redundansen fås genom att avgas respektive insugssidan kopplas ihop med motorns turboaggregat. Detta leder till att många residualer som skapas måste följa en beräkningsväg som modellerar stora delar av motorn. Det är även detta som gör att det är relativt få MSO-er som endast berör en liten del av motormodellen. Av de residualer som skapats ur de minsta MSO-erna var det endast två stycken som innehöll mindre än 63 modellekvationer. Dessa två innehåll 15 respektive 16 modellekvationer. I det här projektet har det visat sig att det för den motormodell som använts endast finns ett fåtal mindre MSO-er, de flesta MSO-er innehåller mer än hälften av alla modellekvationer. Styrkorna med denna metod försvinner därför i någon mån. 5.4 Detekterbarhet och isolerbarhet visar de olika residualernas teoretiska känslighet, baserat på den strukturella analysen som görs med hjälp av FDT. I Tabell 12 ses sedan den faktiska känslighet som har åstadkommits i detta projekt. Skillnaden mellan dessa båda fall resulterar i att det faktiska systemet har betydligt sämre isolerbarhetsprestanda än vad som är teoretiskt möjligt. Anledningen till detta är att även en residual som endast är strukturellt känslig för ett fel, blir signifikant nollskild då fel som den inte ska vara känslig för introduceras i motorn. LIPS Designspecifikation 31 bohli890@student.liu.se

Tabell 11. teoretisk beslutsmatris från strukturell analys residual2 residual3 residual4 residual5 residual6 residual7 residual_size_15 residual_size_63_2 residual_size_63_3 f paf fw af fw th fw c fy waf fy pim fy pic fy tic Tabell 12. faktisk beslutsmatris residual2 residual3 residual4 residual5 residual6 residual7 residual_size_15 residual_size_63_2 residual_size_63_3 Förklaring f paf fw af fw th fw c fy waf fy pim fy pic fy tic Liten känslighet Mellan känslighet Känslig Medan den teoretiska beslutsmatrisen ger perfekt isolerbarhet, är den faktiska beslutsmatrisen som fås genom experiment följande isolerbarhetsmatris som visas i Tabell 13. Tabell 13. Den verkliga isolerbarhetsmatrisen f paf fw af fw th fw c fy waf fy pim fy pic fy tic f paf fw af fw th fw c fy waf fy pim fy pic fy tic Tabell 13 visar att felen f paf, fw af och fy waf inte kommer kunna isoleras från varandra. Sensorfelen fy pim, fy pic och fy tic kan inte heller isoleras. LIPS Designspecifikation 32 bohli890@student.liu.se

5.5 Teststorheter och tröskling För att detektera fel utnyttjades ett antal teststorheter. De teststorheter som togs fram var residualer, CUSUM, och GLR. Residualer som teststorhet Att direkt använda en residual som teststorhet är en rättfram metod för att detektera fel som residualen är känslig för. Det krävs också kännedom om hur residualen beter sig när systemet inte är utsatt för fel. Informationen om detta kan vara att residualen vid felfria fall har en viss fördelning, har samma väntevärde eller varians, eller andra konsekventa beteenden som är möjliga att beskriva matematiskt. Fördelarna med detta är enkelhet och snabbhet eftersom ingen efterfiltrering kommer behövas. En uppenbar nackdel för direkt användning av residualer är att om residualerna är brusiga kan sannolikheten för missad detektion samt sannolikheten för falsklarm öka med minskande felstorlek. Detta kommer att analyseras med styrkefunktion och ROC-kurva. Figur 18 visar hur residual två reagerar vid arbetspunkten där motorhastighet är 2250 RPM och producerar ett vridmoment på 100 Nm. I detta fall har inget fel injicerats. Figur 18. Residual två på felfri mätdata vid 2250 RPM, 100 Nm med transienten borttagen. Utseendemässigt ligger residualen runt ett stationärt väntevärde, och detta visar tecken på att data kan vara normalfördelad. En vidare analys på residualernas fördelning kan verifiera detta och visas i Figur 19. Figur 19. Figuren normalfördelningen av residual nummer två. LIPS Designspecifikation 33 bohli890@student.liu.se

Enligt figuren är majoriteten av värdena normalfördelade, och resterande analyser kommer att baseras på denna fördelning. Residual 2 är strukturellt känslig mot fw th, fy pim, fy pic och fy Tic. Figur 20 nedan visar hur felet fy Tic i olika storlekar påverkar residualens beteende. Figur 20. residual2 reagerar på sensorfel i temperaturgivare i intercooler; felet injiceras vid cirka 20:e sekunden och försvinner efter cirka 42:e sekunden. Eftersom de första 20 sekunderna och de sista 15 sekunderna representerar felfritt beteende kan man konstatera att en rimlig hypotes på residualens reaktion på injicerat fel är att den byter väntevärde. Man kan därför utföra en fördelningsanalys på felfria delar respektive delen som motsvarar felbeteendet (mellan den 21:e sekunden och 40:e sekunden) för att prova hypotesen. LIPS Designspecifikation 34 bohli890@student.liu.se

Figur 21 nedan visar fördelningar för 4 olika felstorlekar, förutsatt att data är normalfördelat under både fel och felfritt fall. Figur 21. fördelningar hos olika felstorlek I Figur 21 går det att se att felen har en påverkan på residualens väntevärde. Felet kan detekteras genom att använda ett konstant tröskelvärde J. D.v.s testet larmar då det överstiger en tröskel T(z), T(z)>J. Följande hypotes kan då skapas: H 0 : Samma väntevärde som i felfritt fall, systemet är felfritt. H 1 : Väntevärdet är skilt från felfri data, systemet är inte felfritt. Förutsatt att hypotesen stämmer kan fyra olika scenarion inträffa. De fyra olika scenarierna beskrivs av sin respektive sannolikhet nedan. Inget larm går att se då systemet är felfritt, P(T(z) < J H 0 ). Ett fel finns, systemet larmar, P(D) = P(T(z) > J H 1 ). Missad detektion, inget larm från systemet då ett fel finns i systemet, P(T(z) < J H 1 ). Falsklarm, systemet larmar trots att det inte finns något fel, P(FA) = P(T(z) > J H 0 ). Relationen mellan de fyra olika scenarierna kan visualiseras genom dess styrkefunktion eller en ROC-kurva. Styrkefunktionen kan tas fram genom fördelningsanalys av felfri data då dess avvikelse i väntevärde motsvarar felbeteendet. Styrkefunktionen visar hur sannolikheten för ett larm β varierar med felstorleken θ, se Figur 22. LIPS Designspecifikation 35 bohli890@student.liu.se

Figur 22. Styrkefunktion Ur styrkefunktionen kan man exempelvis inse att för att få 60 % detektionssannolikhet, ska storleken hos felet avvika minst 4000 från felfritt väntevärde. Även här kan man finna sannolikheten för falsklarm. Se Figur 23 nedan. Figur 23. Styrkefunktion, in-zoomat Den lägsta punkten i styrkefunktionen motsvarar väntevärdet för felfritt beteende, och det är önskvärt att inget larm ska genereras under detta fall. Från Figur 23 kan man se att sannolikhet vid denna punkt är 0,005, alltså det finns 0,5 % chans att systemet larmar när det inte finns fel. Falsklarm är oönskat då det underminerar diagnossystemets trovärdighet, så är även missad detektion. Däremot för en given teststorhet kan man aldrig uppnå låg falsklarmsannolikhet och låg sannolikhet för missad detektion samtidigt. En avvägning mellan de två måste göras. LIPS Designspecifikation 36 bohli890@student.liu.se

Avvägning mellan de två kan illustreras med hjälp av ROC-kurvan, se Figur 24, Figuren visar ROC-kurvor för fyra olika felstorlekar. Figuren togs fram genom att ta fram fördelningen för de olika felen och sedan rita dess detektionssannolikhet som funktion av falsklarmssannolikheten med varierande tröskelvärden. Figur 24. Figuren visar ROC-kurvan för fyra olika felstorlekar. Sensorfel av storleken 5, 10, 20 respektive 30 %. Enligt Figur 24 ökar förutsättningen för att ta fram en bra avvägning med ökande felstorlekar. Värt att notera, är att vid fallet 5 % sensorfel är detektionssannolikhet och falsklarmssannolikhet ungefär lika. Det indikerar att det kan vara svårt att detektera fel då residualen används som teststorhet. Ett bättre utseende på ROC-kurvan visas i Figur 26. Figuren generades med samma residual som har reagerat på ett 5 % sensorfel på laddtryckssensor. Utseendet på residualen visas i Figur 25. Figur 25. Figuren visar residual två då ett sensorfel på 5 % injicerats i laddtryckssensorn. LIPS Designspecifikation 37 bohli890@student.liu.se

Figur 26. Figuren visar ROC-kurvan för residual två då ett sensorfel på 5 % injicerats i laddtryckssensorn. I Figur 26 ser man att ROC-kurvan är mer lik det ideala fallet. Då blir det enklare att hitta en tröskel för att uppnå lägre falsklarmssannolikhet och bättre detektionsprestanda. Vilket är bra, då det injicerade felet är litet samtidigt som det påverkar residual nummer två avsevärt Ett annat sätt att få mer robust tröskelsättning är att lågpassfiltrera residualerna. Denna metod är mycket bra om felet ändrar residualens väntevärde. Metoden kan göras online med moving average. Figur 27 nedan visar filtrerade residualer på 4 olika storlek på fel temperatursensorn, och skillnaden blir tydligare jämfört med ofiltrerade värden, som visas i Figur 20. Figur 27. Residualer filtrerades med moving average med fönsterbredd på 2000 samplingar (motsvarar 2 sekunder). En uppenbar nackdel med denna metod är att felet som kommer i form av snabb dynamik kommer att dämpas och därför inte synas lika tydligt. Som exempelvis när felet ändrar residualernas varians blir metoden oanvändbar. En annan nackdel är tidsfördröjning i detektion. LIPS Designspecifikation 38 bohli890@student.liu.se

Eftersom filtrering är numerisk kommer algoritmen att kräva tidigare data mängd för att kunna beräkna ett nytt värde. Om man strävar efter minimala utslag från brus genom att välja ett långt summeringsintervall riskerar man med en mycket försenad detektion. CUSUM som teststorheter I figurerna Figur 28-Figur 31 kan man se residual två tillsammans med övre CUSUM och undre CUSUM för sensorfel i temperaturgivare i intercooler. Felet aktiveras vid tjugonde sekunden och CUSUM får utslag precis efter. Eftersom metoden klarar av att detektera 5 % sensorfel så är det troligt att den även klarar av att detektera större fel vilket kan ses i figurerna Figur 29-Figur 31. Figur 28. Residual 2 på 100Nm och 2250RPM med 5 % sensorfel. Översta plotten: Residualen tillsammans med en övre och en undre tröskel. Mellersta plotten: Övre CUSUM. Understa plotten: Undre CUSUM. LIPS Designspecifikation 39 bohli890@student.liu.se

Figur 29. Residual 2 på 100 Nm och 2250 RPM med 10 % sensorfel. Översta plotten: Residualen tillsammans med en övre och en undre tröskel. Mellersta plotten: Övre CUSUM. Understa plotten: Undre CUSUM. Figur 30. Residual 2 på 100 Nm och 2250 RPM med 20 % sensorfel. Översta plotten: Residualen tillsammans med en övre och en undre tröskel. Mellersta plotten: Övre CUSUM. Understa plotten: Undre CUSUM. LIPS Designspecifikation 40 bohli890@student.liu.se

Figur 31. Residual 2 på 100 Nm och 2250 RPM med 30 % sensorfel. Översta plotten: Residualen tillsammans med en övre och en undre tröskel. Mellersta plotten: Övre CUSUM. Understa plotten: Undre CUSUM. GLR som teststorhet GLR var en annan metod som undersöktes för att detektera fel. I Figur 32 visas teststorheten för residual 2 för 5 % sensorfel i temperaturgivaren i intercooler. Den har tagits fram med en batch-wise GLR som räknar GLR för 100 samplar i taget. Matlab-koden för batch-wise GLR finns att läsa i användarhandledningen. Felet kommer vid 20:e sekunden och man kan se att GLR ger större utslag precis efter. Om man utnyttjar en tröskel och väljer den på ett smart sätt kan man faktiskt detektera felet precis efter tjugonde sekunden. Figur 33 visar residual 2 för 5 % sensorfel i tryckgivaren i intercooler. GLR för den residualen kan ses i Figur 34. Som man kan se så detekterar den felet efter tjugonde sekunden. LIPS Designspecifikation 41 bohli890@student.liu.se

Figur 32. GLR för residual 2 med 5% sensorfel i temperaturgivare i intercooler. Felet kommer vid 20:e minuten och försvinner vid 40:e minuten. Figur 33. Residual 2 på 100Nm och 2250RPM med 5 % sensorfel i tryckgivare i intercooler. Den horisontella axeln visar sampelnummer. LIPS Designspecifikation 42 bohli890@student.liu.se

Figur 34. GLR för Residual 2 på 100Nm och 2250RPM med 5 % sensorfel i tryckgivare i intercooler. Den horisontella axeln visar sampelnummer. 5.6 Rangordning av diagnoskandidater Hos kund fanns ett intresse för hur rangordning av diagnoser kan göras. I det här projektet har främst sannolikhetsbaserad diagnos med hjälp av bayesianska nätverk analyserats och analysen som presenteras här bygger på en implementering av bayesianska nätverk i mjukvaran GeNIe. Implementering i GeNIe GeNIe [6] är en gratis programvara som använts i det här projektet för att bygga upp diagnossystemet och analysera hur rangordning skulle kunna göras. I den här analysen har hänsyn bara tagits till enkelfel. I Figur 35 visas det implementerade diagnossystemet i GeNIe. Figur 35: Översiktsbild av implementerad diagnosmodell i GeNIe utan några larm. Den översta raden är de felmoder som finns i systemet. Dessa moder har implementerats som kanoniska modeller, mer information om det kan läsas i [7]. Detta innebär att om felmoden LIPS Designspecifikation 43 bohli890@student.liu.se

No Fault (NF) ska vara sann ska alla fel vara falska. Varje felmod är här beroende av alla fel som finns i systemet vilket pilarna från alla fel till varje felmod visar. Mellersta raden är de fel som finns i systemet. Felen är i den här modellen oberoende av varandra och har en initialt antagen sannolikhet att inträffa på 10 %. Denna sannolikhet kan uppdateras för de olika felen om till exempel data finns som säger att vissa fel har högre eller lägra sannolikhet att inträffa. Den nedersta raden visar de residualer som tagits fram i projektet. Residualerna är i GeNIe implementerade som noisy-max noder. Detta innebär att sannolikhet för detektion, sannolikhet för missad detektion och sannolikhet för falsklarm kan modelleras för residualerna. Sannolikheten för detektion är satt till 90 % för alla residualer och därmed blir sannolikheten för missad detektion 10 %. Sannolikheten för falsklarm är satt till 5 % för samtliga residualer. Vilka residualer som är känsliga för vilka fel realiseras i GeNIe genom att pilar från de fel som residualen är känslig för dras till residualen. Utifrån den givna modellen kan rangordning göras genom att GeNIe räknar fram sannolikheterna för de olika felmoderna utifrån vilka residualer som larmar. Ett exempel på detta visas i Figur 36. Figur 36: Visar diagnosmodellen då ett antal residualer har larmat. Givet att residualerna i Figur 36 har larmat räknas då sannolikheterna ut för vilka fel som kan förklara detta beteende. I det här fallet skulle en rangordning av felen efter dess sannolikhet att förklara larmet se ut enligt: 1. fypic (98 %). 2. fywaf (18 %). 3. fytic (17 %). 4. fwaf (3 %). 5. fypim (1 %). Modellen räknar, utöver sannolikheterna för de olika felen, också ut en diagnos och vilken sannolikhet diagnosen har. I det här fallet säger modellen att det med 63 % sannolikhet är Fypic som är orsaken till de larmande residualerna. LIPS Designspecifikation 44 bohli890@student.liu.se