Departement Industriële Wetenschappen en Technologie Masterproef 2010-2011
Realisatie Aansturing ABS kleppenblok door Thierry LOREYN
Promotor: KdG: KdG: LMS: LMS:
Tim Hermans Paul De Meulenaere Pieter Aarnoutse Jan Anthonis
Proefschrift tot het behalen van de graad van Master of Science in de Industriële Wetenschappen Elektronica-ICT, afstudeerrichting ICT Antwerpen, juni 2011
Aansturing ABS kleppenblok
Doelstelling / Opdrachtomschrijving: Hieronder de opdracht zoals weergegeven in de lijst met beschikbare eindwerken.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ II ‐
Aansturing ABS kleppenblok
Voorwoord In dit laatste jaar “master Elektronica‐ICT” dienen we een eindwerk te maken. Dit om al de opgedane kennis te beproeven. Hiervoor kregen we een bedrijf toegewezen waarvoor we een project moeten maken. Als eindwerk wou ik graag iets praktisch realiseren binnen de elektronica en meer specifiek iets aansturen met een microcontroller. Na overlopen van de lijst met eindwerken en overleg met het opleidingshoofd Dhr. Catthoor bleek de “aansturing van een kleppenblok” het meest in de buurt te komen van wat ik graag wou doen. Hoewel dit project niet specifiek binnen mijn afstudeerrichting valt, maar eerder in de afstudeerrichting automotive‐elektronica, vond ik dit wel een uitdaging ! Alvorens hieraan te kunnen beginnen, heb ik eerst de nodige kennis moeten opdoen binnen een klein deel van de automotive wereld, meer bepaald het hydraulisch remsysteem. Het project was op vraag van LMS, welke de kleppensturing nodig had om te integreren in hun virtueel wagenmodel, en als platform om hun eigen remalgoritmes te testen. Langs deze weg wil ik ook mijn projectbegeleiders Tim Hermans, Pieter Aarnoutse en Paul De Meulenaere bedanken waar ik altijd terecht kon met mijn vragen. Ook wil ik mijn ouders graag bedanken voor hun steun tijdens de moeilijke momenten van deze master studies ! Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ III ‐
Aansturing ABS kleppenblok
Samenvatting (abstract) Ontwikkeling van voertuigelektronica is zeer complex, voortdurend verbeteren tegen hoog tempo is een must. Daarom stapt men over van “the real world” naar “virtualisatie”, met andere woorden van een werkelijk voertuig naar een virtueel voertuig. Door virtualisatie wordt het onder andere mogelijk om testen uit te voeren onder beter gecontroleerde omstandigheden dan bij fysieke tests. Deze kunnen indien gewenst perfect identiek herhaald worden. Ongewenste omgevingsfactoren kunnen zo vermeden worden. Ook kunnen gevaarlijke testen zoals bijvoorbeeld een noodrem manoeuvre vermeden worden. Een virtueel model benadert dus zo goed mogelijk de werkelijkheid. LMS maakt onder meer software waarmee deze virtuele wagenplatforms gemaakt kunnen worden. Een klein segment binnen dit grotere geheel is het ABS systeem. LMS wil aantonen dat een echte ABS‐kleppen unit kan samenwerken met hun virtueel wagen model. Hiervoor moeten de kleppen van een standaard ABS‐modulator zelf aangestuurd worden. De signalen zoals de voertuigsnelheid, de wielsnelheden en het remsignaal, die nodig zijn om dit te kunnen realiseren, worden door het virtueel voertuigmodel van LMS geleverd. Over dit laatste handelt dit eindwerk m.a.w.: Hoe de kleppen van een ABS‐modulator kunnen aangestuurd worden met een micro controller (µC) waarop een remalgoritme geïmplementeerd is. Dit in samenwerking met de verkregen signalen van een virtueel voertuigmodel. Een visueel overzicht van dit project is weergegeven op volgende bladzijde. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ IV ‐
Aanstu uring ABS kle eppenblok
Visueel overziicht van dit proje ect In FFiguur 1 is eeen visueel o overzicht vaan dit proje ect te zien, h het deel bin nnen de rode stippenlijn is gerrealiseerd m met hardware en softw ware, en worrdt in deze tthesistekst verder besp proken. De harrdwarekopp peling en siggnaaleigensschappen diie over de rode demarccatielijn lop pen zijn afgesproken in n onderling overleg meet LMS. Het blok boven naan stelt dee ABS/ESP rremtestbank n LMS voor. Hierop staaan de vier rremklauwen n met bijbeh horende hyydraulica, zo oals in een van ech hte wagen. ZZoals te zien op de figu uur wordt h het geheel ggestuurd van nuit het virttuele voeertuigmodel, wat binneen dit eindw werk als ‘blaack box’ wordt beschou uwd.
Figuur 1 : Projecctvoorstelling visuueel
Acad demiejaar 2 2010‐2011, opleiding: Ing. Ellektronica‐ICT Optie: ICT
‐ V ‐
Aansturing ABS kleppenblok
Inleiding De realisatie van het project, is ingedeeld in vijf hoofdstukken. Hierin komt de evolutie van kennismaking met ABS en de µC tot de uiteindelijke kleppensturing aan bod. Hieronder een korte beschrijving van de hoofdstukken: Hoofdstuk 1: In het eerste hoofdstuk wordt de nodige automotive kennis opgedaan om inzicht te krijgen in het remsysteem van een wagen. Vooral wat nodig is om de klepschakeling te kunnen realiseren is opgenomen. Zeer belangrijk is hier de status van de hydraulische kleppen tijdens ABS werking, onder andere druk houden, druk opbouwen en druk afbouwen. In dit hoofdstuk komt alleen theorie aan bod. Hoofdstuk 2: In het tweede hoofdstuk wordt de gekregen controller en het bijbehorende moederbord behandeld. Met een eenvoudig voorbeeld wordt besproken hoe registers van de controller ingesteld worden en hoe deze in‐ en uitlezen worden. Ook hoe de µC kan communiceren met de periferie komt aan bod. Verder volgen enkele tests en wat nodig is om met deze controller van start te kunnen gaan. Hoofdstuk 3: In het derde hoofdstuk wordt de nodige stuurhardware besproken, die nodig is om signalen in te lezen en tot actuatie van de kleppen te komen. De stuurhardware is eerst op breadboard ontworpen en getest. Na werking zijn de bedradingschema’s op computer getekend, en vervolgens zijn de nodige PCB’s ontworpen. Hoofdstuk 4: In hoofdstuk vier komt de embedded software die op de µC draait om de kleppen te sturen aan bod, niet enkel de zelf geschreven code, maar ook een deel automatisch gegenereerde code van het verkregen remalgoritme. Hoofdstuk 5: Tijdens het ontwerp is elk component wel afzonderlijk getest, maar in dit vijfde en laatste hoofdstuk volgen enkele testen van de totaalopstelling. Om een beter overzicht te krijgen in deze eindwerktekst, is hardware en software behandeld in een apart hoofdstuk, respectievelijk drie en vier. Toch zijn ze tijdens ontwerp samen behandeld, omdat het ene niet zonder het andere kan. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ VI ‐
Aansturing ABS kleppenblok
Inhoudstafel
1.
Het remsysteem ..................................................................................................... 1
1.1.
Het remsysteem zonder ABS ........................................................................................ 1
1.1.1.
De hoofdremcilinder .................................................................................................... 1
1.1.1.1.
Principewerking hoofdremcilinder ............................................................................... 2
1.1.2.
De remmen ................................................................................................................... 2
1.2.
Het Remsysteem met ABS ............................................................................................ 3
1.2.1.
Wat is ABS ? .................................................................................................................. 3
1.2.2.
Waarom ABS ? .............................................................................................................. 3
1.2.3.
ABS altijd beter? ........................................................................................................... 3
1.2.4.
ABS te slim af zijn (terzijde) ......................................................................................... 4
1.2.5.
ABS loop....................................................................................................................... 4
1.2.5.1.
ABS‐open loop .............................................................................................................. 4
1.2.5.2.
ABS‐closed loop ............................................................................................................ 4
1.2.6.
Wanneer werkt ABS ? ................................................................................................... 5
1.2.7.
Wielslip ......................................................................................................................... 5
1.2.8.
Hoe ABS gebruiken ? .................................................................................................... 5
1.3.
Het ABS remsysteem meer in detail ............................................................................ 6
1.3.1.
Wielsensor & tandkrans: .............................................................................................. 7
1.3.2.
ABS modulator (kleppenblok) ...................................................................................... 8
1.3.2.1.
Hydraulisch aansluitingen ............................................................................................ 8
1.3.2.2.
De Hydraulische Klep .................................................................................................... 9
1.3.2.3.
Hydraulische Schema ABS .......................................................................................... 10
1.3.2.4.
LMS ABS Klepformatie ................................................................................................ 10
1.3.3.
Pompmotor ................................................................................................................ 11
1.3.4.
De elektronische module ........................................................................................... 12
1.3.4.1.
ABS controller ............................................................................................................. 12
1.3.4.2.
Klep cartridges (solenoïdes) ....................................................................................... 12
1.3.4.2.1.
Klepsequenties ........................................................................................................... 13
1.3.4.2.1.1.
Normaal Remmen (geen ABS) .................................................................................... 13
1.3.4.2.1.2.
ABS Remmen (ABS‐actief) .......................................................................................... 13
1.3.4.2.1.2.1. ABS druk afbouw ........................................................................................................ 13 1.3.4.2.1.2.2. ABS druk houden ........................................................................................................ 14 1.3.4.2.1.2.3. ABS druk opbouw ....................................................................................................... 14 1.3.4.2.1.2.4. Verboden toestand .................................................................................................... 14 Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ VII ‐
1.4.
Aansturing ABS kleppenblok ABS vs ESP ................................................................................................................... 15
2.
Controller & moederbord ........................................................................................ 16
2.1.
De µController ............................................................................................................ 16
2.2.
De mini‐module .......................................................................................................... 16
2.3.
Het Experimenteerbord ............................................................................................. 17
2.4.
De Programmer .......................................................................................................... 17
2.5.
De IDE (Integrated Development Environment) ...................................................... 17
2.6.
Eerste kennismakingtest met de µC ........................................................................... 18
2.6.1.
µController register configuratie ............................................................................... 18
2.6.2.
Simulink code generatie ............................................................................................. 20
2.6.2.1.
Instellen Real‐Time workshop .................................................................................... 21
2.6.2.2.
Genereer code ............................................................................................................ 22
2.6.2.3.
code mapping ............................................................................................................. 22
3.
Stuurhardware (Interface Hardware) ....................................................................... 23
3.1.
Elektronica Opstelling ................................................................................................ 24
3.1.1.
Layout opstelling ........................................................................................................ 24
3.1.2.
Solenoïde opstelling ................................................................................................... 25
3.1.2.1.
Solenoïde plunjer testopstelling ................................................................................ 25
3.1.3.
Pompmotor aansluiting .............................................................................................. 26
3.1.3.1.
Pompmotor Testopstelling ......................................................................................... 26
3.1.3.2.
Pompmotor aansluiting .............................................................................................. 26
3.1.4.
Montage solenoïde en aansluitpen ............................................................................ 26
3.2.
Actuatoren .................................................................................................................. 27
3.2.1.
PCB voor solenoïdes ................................................................................................... 27
3.2.1.1.
Schema ....................................................................................................................... 27
3.2.1.2.
PCB.............................................................................................................................. 27
3.2.2.
PCB voor pompmotor ................................................................................................. 28
3.2.2.1.
Schema ....................................................................................................................... 28
3.2.2.2.
PCB.............................................................................................................................. 28
3.3.
Sensoren ..................................................................................................................... 29
3.3.1.
Sinus naar blok ........................................................................................................... 29
3.3.1.1.
Schema ....................................................................................................................... 29
3.3.1.2.
PCB.............................................................................................................................. 30
3.3.2.
Current Input .............................................................................................................. 31
3.4.
Ontwikkelfase ............................................................................................................. 31
3.4.1.
Manuele bediening .................................................................................................... 31
3.4.2.
LED ‐ Statusinfo .......................................................................................................... 32
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ VIII ‐
3.4.2.1.
Aansturing ABS kleppenblok Schema ....................................................................................................................... 32
3.4.2.2.
PCB.............................................................................................................................. 32
3.4.3.
LCD – Statusinfo ......................................................................................................... 33
3.4.3.1.
Aansturing .................................................................................................................. 33
3.4.3.1.1.
Stuursignalen .............................................................................................................. 33
3.4.3.1.2.
Data & controle signalen ............................................................................................ 33
3.4.4.
Test drukknopjes ........................................................................................................ 33
3.4.4.1.
Schema + PCB ............................................................................................................. 33
3.5.
Voeding....................................................................................................................... 34
3.5.1.
ATX test voeding ......................................................................................................... 34
3.5.2.
Auto accu .................................................................................................................... 34
3.5.3.
Schema ....................................................................................................................... 34
3.5.4.
PCB.............................................................................................................................. 34
3.6.
Mini moederbord ....................................................................................................... 35
3.6.1.
Schema ....................................................................................................................... 35
3.6.2.
PCB.............................................................................................................................. 36
3.6.2.1.
PCB pinout .................................................................................................................. 36
3.6.2.2.
Pinout naar periferie .................................................................................................. 37
4.
Software – Code ......................................................................................................... 39
4.1.
Simulink gegenereerde code ...................................................................................... 39
4.1.1.
Remalgoritme ............................................................................................................. 39
4.1.2.
Real‐Time workshop ................................................................................................... 40
4.2.
Manuele C‐code ......................................................................................................... 41
4.2.1.
LCD weergave ............................................................................................................. 41
4.2.2.
ABS activatie locica ..................................................................................................... 41
4.2.3.
Slip berekening ........................................................................................................... 42
4.2.4.
Input Snelheden ......................................................................................................... 42
4.2.5.
Klep status .................................................................................................................. 43
4.2.6.
Output kleppen .......................................................................................................... 43
5.
Testen ......................................................................................................................... 44
5.1.
Testen met functiegenerator ..................................................................................... 44
5.2.
Testen met PXI ........................................................................................................... 45
5.2.1.
PXI testopstelling HW ................................................................................................. 45
5.2.1.1.
Gebruikte DAQ‐blades (NI‐6713 & NI‐6254) .............................................................. 46
5.2.2.
PXI testopstelling SW ................................................................................................. 47
5.2.2.1.
Enkele interessante design blokken verklaard ........................................................... 47
5.2.2.2.
Automatische test (sinus frequentie) ......................................................................... 48
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ IX ‐
5.2.2.2.1.
Aansturing ABS kleppenblok Frontend‐bedieningspaneel ....................................................................................... 48
5.2.2.2.2.
Blok‐diagram .............................................................................................................. 49
5.2.2.2.3.
Testresultaten ............................................................................................................ 50
5.2.2.2.3.1.
Testje 1 ....................................................................................................................... 50
5.2.2.2.3.2.
Testje 2 ....................................................................................................................... 51
5.3.
Testen met virtueel voertuigmodel ........................................................................... 52
5.3.1.
Opstelling met EtherCAT ............................................................................................ 52
5.3.2.
Opstelling conference LMS München (Duitsland) ..................................................... 52
5.3.3.
Opstelling @ LMS ....................................................................................................... 53
Inhoudstafel bijlagen I. II. III. IV. V.
De PCB’s .................................................................................................................................. 56. Literatuurlijst (geraadpleegde documenten) ......................................................................... 60. Gebruikte Afkortingen ............................................................................................................ 61. Solenoïde oververhit bescherming ........................................................................................ 62. Foto’s making off .................................................................................................................... 63.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ X ‐
Aanstu uring ABS kle eppenblok
H Hoofds stuk 1
1. Hett remsyssteem In dit hoofdstuk worden de onderdelen behande eld die nodiig zijn om de ABS klepsschakeling tte kunnen realiserren. Het remsysteem m moet hiervoor niet ttot in detail gekend zijn n, maar well moet de nodige kennis opgedaan word den om de A ABS kleppensturing te kunnen reaaliseren. Daarom volgt hier een ko orte toelichting van de belangrrijkste elementen van h het remsystteem. Om de basis inlleiding van het remsysteem zo overzichtelijk mogelijk tee houden, iss dit hoofdstuk onderverdeeld in drie blokkken: - Het remssysteem zo onder ABS - Het remssysteem met ABS - ABS remsysteem meer in detaiil
1.1. Het remsyssteem zon nder ABS De belangrijkstte onderdelen van hett convention neel remsyssteem zijn: dremcilindeer - De hoofd - De remm men D emcilinder 1.1.1. De hoofdre In d de hoofdrem mcilinder wordt de kracht die man nueel wordtt uitgeoefen nd op het re empedaal omgezet in hydraulische rremdruk.
1. heet rempedaal 2. dee rembekrachtiger 3. heet remvloeisstofreservo oir 4. dee hoofdrem mcilinder 5. dee remleidinggen Figuur 1 : Hoofddremcilinder Figuur 2 : Hoo ofdremcilinder Opm m.: Hedend daags bestaaat er brakee‐by‐wire, m maar we gaaan hier uit vvan een volledig mechanische hooffdremcilinder. Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 1 ‐
Aansturing ABS kleppenblok
1.1.1.1. Principewerking hoofdremcilinder
Bij krachtuitoefening op het rempedaal komt de zuiger(5) in beweging. Hierdoor wordt er druk opgebouwd in het remcircuit(4). Tevens zal de tweede zuiger(2) in beweging komen, en het secundaire remcircuit(1) onder druk zetten. Rempedaal in Rust Rempedaal ingedrukt 1) 2) 3) 4)
secundair remcircuit secundaire zuiger compensatieboringen primair remcircuit 5) primaire zuiger
Figuur 3 : Hoofdremcilinder Het remcircuit wordt opgebouwd uit een primair en secundair circuit, dit noemt men de remsplit. Hierdoor zal bij een lek, of het falen van het eerste circuit nog deels afgeremd kunnen worden met het tweede circuit. De reden dat het remcircuit wordt gesplitst is dus een veiligheidsmaatregel.
Er zijn 2 types remsplits: - X‐split - H‐split
H – Split
X ‐ Split
1.1.2. De remmen
Figuur 4 : Remsplit
De hydraulisch druk die opgebouwd is met de hoofdremcilinder perst de remblokjes tegen de remschijf en/of remtrommel. Hierdoor ontstaat wrijving tussen remblok en remschijf. Het wiel en de remschijf zitten op dezelfde naaf: Als de schijf afgeremd word, zal het wiel ook afgeremd worden. Het resultaat hiervan is dat de wagen zal vertragen. Schijfremmen Trommelrem vaste klauw zwevende klauw
Figuur 5 : de remmen Trommelremmen worden tegenwoordig voornamelijk nog bij lichtere voertuigen en alleen op de achterste wielen gebruikt. Zwaardere voertuigen zijn typisch rondom met schijfremmen uitgerust.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 2 ‐
Aanstu uring ABS kle eppenblok
1.2. Het Remsyysteem me et ABS
In d deze introdu uctie komen n de volgen nde vragen o over ABS aaan bod:
-
Wat is A ABS ? Waarom m ABS ? ABS alttijd beter ? ABS loo op – regelsyysteem ?
‐ Wan nneer werktt ABS ? ‐ Wat is wielslip ?? ‐ Hoe ABS gebruiken ?
1.2.1. Wat is ABS W ?
ABSS staat voorr “Anti‐lockk Braking Syystem”, of in het Nederlands voorr “Anti Blokkeer Systee em”. 1.2.2. Waarom AB W BS ?
Als men een noodrem maanoeuvre m maakt met een voertuigg zonder AB BS kunnen d de wielen blokkeren, en vervolgens stilstaand o over het we egdek slippeen. Hierdoo or wordt hett voertuig ontroleerbaaar (onbestuurbaar). D Dit is natuurrlijk ongewe enst! ABS heeft tijdens een noodrem onco baar te houd den tijdens een noodreem manoeu uvre. In fig. 6 als doel om heet voertuig ccontroleerb wordt een voo orbeeld geto oond van eeen situatie w waarin ABS bijdraagt aaan een veilig weggedraag, nam melijk een sstuuractie gecombineerd met een zo groot m mogelijke vertraging van n het voertu uig.
Zonder AB BS
Figuurr 6 :verschil met/zzonder ABS
ABS
ABSS onderbreeekt tijdens eeen noodreem kortstondig het rem mmen op heet blokkeren nde wiel, waaardoor het voertuig meeer grip heeeft op het w wegdek. ABSS verkort dee remafstan nd op een nat weggdek aanzieenlijk, dit om mdat er meer grip is alss de wielen niet doorsllippen. Op e een nat weggdek kan n met ABS d de stopafstaand met ±25% vermind derd wordeen.
1.2.3. ABS altijd b A beter?
Bij een noodreem manoeu uvre op een ruwe en drroge onderggrond zoals ruw‐beton, zal de rem mafstand zo onder ABS echter korteer zijn dan m met ABS, om mdat er meeer wrijving o ontstaat.
In d de meeste n noodrem sittuaties is heet echter intteressanterr de mogelijjkheid te he ebben om obsstakels te on ntwijken (w weg te sturen), dan een n net iets ko ortere remafstand te ku unnen realiseren. ABSS maakt hett mogelijk o op stabiele w wijze te sturen tijdens een noodre em.
Off‐road o of in diepe ssneeuw is de e remafstan nd met ABS vaak lange er dan zondeer ABS. Off‐ro oad kan zon nder ABS pu uin opgehoo opt worden n voor het geblokkeerd de wiel, wat vvoor een zeer korte rem mafstand zo orgt. Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 3 ‐
Aansturing ABS kleppenblok
1.2.4. ABS te slim af zijn (terzijde)
Om de veiligheid verder te bevorderen zijn er interessante ontwikkelingen gaande op gebied van actieve systemen die complementair zijn aan een ABS systeem. Een voorbeeld hiervan is een systeem waar Continental aan werkt, dat het mogelijk maakt om op voorhand de toestand van het wegdek te voorspellen. De wagen maakt een plaatselijk weerbericht van de komende 100 meter. Hierdoor kan de bestuurder gewaarschuwd worden voor dreigend gripverlies, te vergelijken met een waarschuwing voor vriestemperatuur. Zo is de bestuurder van het voertuig gewaarschuwd en kan hij zijn rijstijl aanpassen. Dit is enkel een maatregel om te vermijden dat ABS moet ingrijpen, ABS blijft dus stand‐by.
1.2.5. ABS loop
ABS is een regelsysteem met sensoren en actuatoren. De actuatoren (hydraulische kleppen) beïnvloeden de druk op de remmen, wat zijn gevolg geeft op de wielsnelheid. Het systeem moet een goede balans vinden tussen “niet slippen”, maar toch afremmen. 1.2.5.1. ABS‐open loop
Een open loop systeem is geen regelsysteem. Hoewel bij open loop geen rekening wordt gehouden met de voertuigsnelheid en wielsnelheid, zou een open‐loop ABS implementatie al een verbetering leveren ten opzichte van helemaal geen ABS. Hier wordt enkel een noodrem manoeuvre gedetecteerd, en overgegaan op interrupterend remmen. (Te vergelijken met manueel pompend remmen, wat nooit nauwkeurig kan.) Dit principe heeft geen enkele feedback op de voertuigslip, en wordt dus nooit gebruikt. Dit systeem werd wel in 1929 ontworpen en geïmplementeerd in enkele vliegtuigen om ze af te remmen op natte en of met olie verontreinigde landingsbanen. Een ontwerp van ”Gabriel Viosin”, een franse vliegtuig pioneer.
Opm.: Verwar het begrip “open loop ABS” niet met “ABS open loop test”, hetgeen later in dit eindwerk aan bod komt. 1.2.5.2. ABS‐closed loop
In een closed loop zal de ECU continu (lees redelijk continu; er is een bepaalde bemonsteringsfrequentie) de wielsnelheid en voertuigsnelheid inlezen. De ECU kan aan de hand van deze gegevens een gepaste pompende remdruk via de actuatoren voorzien op de remschijven.
ABS closed loop
Figuur 7 : ABS loop
De taak van een ABS ECU is dit zo verfijnd mogelijk uitvoeren in de gesloten lus.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 4 ‐
Aansturing ABS kleppenblok
1.2.6. Wanneer werkt ABS ?
Het ABS systeem is niet altijd in werking, maar de ECU van het ABS systeem monitort wel continu of ABS in werking moet treden. In sommige wagens is er wel een “off road” knop, hiermee kan de ABS uitgeschakeld worden.
ABS gaat in werking als de voertuigsnelheid groter is dan 15km/u, en de slip op één of meerdere wielen groter is dan 20% tov. de referentiesnelheid (wagensnelheid).
Fig.9 geeft enkel weer wanneer ABS in werking gaat. Wat de ABS controller zal aansturen in hier nog niet weergegeven. 1.2.7. Wielslip
Figuur 8 : ABS actief
Wielslip kan variëren tussen 0 en 100 %. 0% : geen wielslip tov. de voertuigsnelheid 100% : het wiel staat geblokkeerd, tov. de voertuigsnelheid
Slip wordt bekomen door het rempedaal met te veel kracht in te drukken. Vanaf 20 procent slip moet ABS in werking gaan
Geen Slip VS == WS
Veel slip VS >>> WS
Weinig Slip VS > WS
Geen Slip (invers) VS < WS
Figuur 9 : ABS wiel slip In het laatste geval is de wielsnelheid echter groter dan de voertuigsnelheid. Dit wil zeggen dat het wiel sneller zou kunnen bollen dan het voertuig. Dit komt bijvoorbeeld voor bij het optrekken van het voertuig. Deze toestand wordt bij het ABS systeem echter beschouwd als geen slip. Een complementair systeem kan echter wel ingrijpen om deze te grote wielsnelheid te verminderen; dit systeem wordt ASR (Anti Slip Regeling) genoemd. 1.2.8. Hoe ABS gebruiken ?
De gebruiker van ABS moet niets doen (§1.2.5). Bij een noodremactie wordt het rempedaal met volle kracht ingetrapt, en om het ABS systeem optimaal te laten werken, dient de bestuurder deze pedaalkracht aan te houden. Pompend remmen is de taak van de ABS controle unit, niet van de gebruiker. Bij het krachtig indrukken van het rempedaal kan ABS in werking treden, dit gaat gepaard met een hevige trilling op het rempedaal en een ratelend geluid. Dit is volstrekt normaal zoals later zal blijken, de bestuurder mag zich door dit vreemde fenomeen niet laten afschrikken! Het rempedaal moet tijdens een noodrem zo hard mogelijk ingedrukt blijven. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 5 ‐
Aansturing ABS kleppenblok
1.3. Het ABS remsysteem meer in detail Het ABS remsysteem bestaat uit het conventionele remsysteem zoals eerder beschreven uitgebreid met het volgende: - wiel sensoren en tandkransen (meestal één per wiel) - Modulator (kleppenblok) - De pompmotor - Elektronische module (solenoïdes + controller) Overzicht ABS Elektronica
Figuur 10 : Overzicht ABS elektronica
ABS Kleppenblok Geel = Pompmotor Blauw = Modulator Rood = ECU
Figuur 11 : ABS kleppenblok Opmerking: De modulator, de pompmotor en de elektronische module vormen samen één geheel, de ABS‐unit. Toch worden ze hier als aparte delen besproken.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 6 ‐
Aansturing ABS kleppenblok
1.3.1. Wielsensor & tandkrans: Sensoren zijn een belangrijk element in de ABS loop. Achter het wiel zit een tandkrans gemonteerd, deze draait mee aan de wielsnelheid. De sensoren wekken een sinusgolf (of blok) op met een frequentie evenredig aan de tandkranssnelheid of wielsnelheid. Om een duidelijk verschil te kunnen meten tussen een wielversnelling of wielvertraging, worden de tandkransen met veel tandjes (of magneetjes) uitgevoerd: 40 à 80. De frequentie van het opgewekt signaal zal in de ECU omgezet worden in een snelheidswaarde, waarmee gerekend kan worden. - Passieve sensoren Passief wil zeggen dat het signaal rechtstreeks van het sensorelement afkomstig is, zonder tussen elektronica. Een voorbeeld van een passieve sensor is de inductieve sensor. Amplitude en frequentie zijn afhankelijk van de tandkranssnelheid, enkel de frequentie wordt hier gebruikt. Nadeel: De tandkrans moet een minimum aantal toeren/min draaien om de wielsnelheid te kunnen detecteren (5 km/h). Dit type sensor is verouderd. Figuur 12 : ABS sensor passief - Actieve sensoren Actieve sensoren worden elektronisch versterkt, daarom moeten ze ook van een voedingspanning voorzien worden. Tevens wordt het signaal omgezet naar een blokgolf signaal. Wat ook makkelijker in te lezen is met een controller. De snelheid kan hier gemeten worden vanaf 0 km/h. Figuur 13 : ABS sensor Active Een voorbeeld van een actieve sensor is een Hall‐effect sensor. De tandkrans is hier uitgevoerd met magnetische tanden die afwisselend gepolariseerd zijn. Het Hall plaatje wekt een spanning op waarvan de grootte afhankelijk is van de sterkte van het passerende magnetisch veld, de frequentie is afhankelijk van het aantal N/Z overgangen.
Figuur 14 : Hall-effect
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 7 ‐
Aanstu uring ABS kle eppenblok
1.3.2. ABS modula A ator (klepp penblok)
Op figuur 15 ziijn twee helften (onderdelen) te zzien: • De rechtterhelft is dee elektronissche module, waaroveer verder m meer.
•
De linkerrhelft is de A ABS modulaator, hierovver wordt het volgeende bespro oken: - Dee hydraulische aansluitiingen - Heet hydrauliscch schema ((tevens de rremformatiie) - Dee hydraulische kleppen
Figuur 15 : ABSA modulator
1.3.2.1. Hydrauliscch aansluitiingen
ABSS hydrauliscche aansluittingen Dee remleidinggen aangegeeven met B C E F zijn verbonden m met de remmen.
Front Master = FM M
FR
RL
RR
RM
Front Le eft
FL
= FLL
Front Rigght = FR R Rear Maaster = RM M
FM
Rear Lefft
= RLL
Rear Rigght
= RR R
Figuur 16 : hyd draulische aansluuitingen
In het modulaatorblok lop pen remkan naaltjes in de vooropgesteld de formatiee.
In het blok be evinden zich h de hydraulische klepp pen. Peer rem(4) zijn n er twee kleeppen voorrzien, één in nlaatklep(1) een één uitlaatkle ep(2). Inlaatklep is iin onbekracchtigde toesstand geope end. Uittlaatklep is in onbekracchtigde toestand geslo oten.
Op pmerking: In het sch hema hiernaaast is slech hts één remleiding(2) vanuit het modu ulatorblok getekend. In n werkelijkheid zitten eer acht klepp pen in de m modulator, een dus vier rremleidingeen.
Figuur 17 : remkanaaltjes
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 8 ‐
Aansturing ABS kleppenblok
1.3.2.2. De Hydraulische Klep Op de foto van de ABS‐modulator zijn acht vingerhoedjes te zien, onder elk vingerhoedje zit een hydraulische klep. Hier dus acht kleppen, waaronder vier inlaatkleppen en vier uitlaatkleppen. Schematische voorstelling van een klep NO – Klep NC – klep (Normal Open) (Normal Closed)
Figuur 19 : ABS modulator
Figuur 18 : schematische klepvoorstelling NO Î Als de solenoïde bekrachtigd wordt, dan wordt de plunjer tegen de veerkracht in, door het ontstane magnetische krachtveld omlaag getrokken, hierdoor zal de kogel die onderaan de plunjer zit het ventiel afsluiten. NC Î Net het omgekeerde van de NO klep. Doorsnede van een samengestelde klep. (hydraulische klep + solenoïde)
Ander type ABS klep (drie standen) Klepstand afhankelijk van de stroomsterkte. (dit type klep is hier niet van toepassing)
Figuur 21 : drie standenklep Figuur 20 : samengestelde klep Opmerking: De acht solenoïdes zitten in een aparte behuizing, de elektronische module. De elektronische module wordt verder besproken, en staat los van de ABS modulator.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 9 ‐
Aansturing ABS kleppenblok
1.3.2.3. Hydraulische Schema ABS
Hydraulisch schema ABS
1.3.2.4. LMS ABS Klepformatie
Figuur 22 : Hydraulisch schema ABS
De posities van de kleppen op de modulator zijn uitgezocht door de kleppen afzonderlijk te bekrachtigen, en vervolgens de druk te meten in de individuele remleidingen.
Figuur 23 : LMS ABS
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 10 ‐
Aanstu uring ABS kle eppenblok
1.3.3. Pompmoto P or De pomp is alss één geheeel gemonteeerd op de ABS‐modulattor. Tijd dens ABS weerking word dt er kortsto ondig remdruk weg genomen. Om m de remdru uk kort daarrna teru ug te kunneen opbouween, persen d de plunjers van de pom mp de remvvloeistof terrug richting hoo ofdremcilind der. Dit veroorzaakt dee waarneem mbare trillin ng op het reempedaal. H Hydraulisch e Retourpo omp nok linkks nok neutraal nok rechts
motor met nok
hydrauliscche pomp zuiggers
Figuur 24 : Hyd draulische pomp Op figuur 24 iss te zien datt op de mottoras een exxcentrische nok is voorrzien, hierdo oor zal de otor afwisselend het en ne en het an ndere zuigertje bedieneen. mo den met rem molie. De Op het ondersstaande schema is te zien dat de kkamer kan ggevuld word rem molie kan do oor de teruggslagklep en nkel richting hoofdrem mcilinder geperst worde en.
Figuur 25 : H Hydraulische pom mp
werkt de hyd draulische p pomp op be eide gescheiden remcirrcuits. Zoaals te zien w Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 11 ‐
Aansturing ABS kleppenblok
1.3.4. De elektronische module
Op figuur 26 zijn twee helften (onderdelen) te zien: • De linkerhelft is eerder besproken (zie 1.3.2)
•
De rechterhelft is de PVC behuizing met daarin de elektronische module, hierin bevindt zich het volgende: - Acht klep cartridges (solenoïdes) - Stuurelektronica - ABS Controller EBCM
Figuur 26 : ABS- modulator
1.3.4.1. ABS controller
Dit is de µC die in de EBCM (Electronic Brake Control Module) behuizing zit. Of soms ook de ABS ECU (Electronic Control Unit) genoemd (in dit project is dit de freescale µC). Zijn functie is monitoren of ABS in werking moet treden (wielslip), indien dit het geval is, zal de ECU dus op een gepaste mannier de hydraulische kleppen schakelen (zie klepsequenties). Hiervoor is de ECU verbonden met de eerder besproken onderdelen zoals de solenoïdes, de pompmotor, de sensoren en de remswitch. Opmerking zelfdiagnose LED:
-
Een defect aan één of meerdere wielsensor kan gedetecteerd worden als gedurende meer dan 20 seconden een wielsnelheid van 0km/h wordt aangegeven, terwijl de voertuigsnelheid hoger is dan 12km/u.
-
In sommige ABS modules is de ECU in tweevoud uitgevoerd. Als een van de controllers een andere waarde geeft dan de andere, dan zal het ABS‐systeem in “fail‐safe‐mode” gaan en dit via een waarschuwing op het dashboard weergeven. Als de waarschuwings LED gaat branden schakelt het ABS systeem uit, zodat er op de conventionele manier geremd kan worden.
1.3.4.2. Klep cartridges (solenoïdes)
Wanneer de cartridges (solenoïdes) over de vingerhoedjes worden geschoven, ontstaat een electro hydraulische klep. Nu kan deze door een ECU gestuurd worden.
Electro hydraulische klep
1) klep behuizing 2) IN 3) OUT 4) Solenoïde 5) Solenoïde wikkelingen 6) solenoïde aansluiting 7) plunjer 8) veer 9) klep poort
Figuur 27 : Electro hydraulische klep
Het magnetisch effect kan weg genomen worden door de spanning van de solenoïde weg te nemen of nog sneller door de polariteit om te keren. Indien er een veer is voorzien, kan men dat laatste eventueel zo laten. Een van de grootste nadelen van een solenoïde is dat energie niet enkel wordt omgezet in een druk of trek beweging, maar ook in warmte gedecideerd wordt. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 12 ‐
Aanstu uring ABS kle eppenblok
1.3.4.2.1. Klepsequ uenties
Hieer worden de toestandeen van de kkleppen wee ergegeven: Opm m.: Voor dee duidelijkh heid van de sequentieschema’s zijn ze telkenss maar voorr één wiel weergeegeven, dit is identiek vvoor de ove erige wielen n, maar dan n met meer kleppen. maal Remme en (geen AB BS) 1.3.4.2.1.1. Norm
No ormaal Rem mmen (geen ABS) wel de inlaattklep als de uitlaatklep zijn niet actief. Zow
Dus de inlaat po oort staat o open. (NO) En d de uitlaatpoort is geslotten. (NC)
De ggegenereerd de remdrukk in de hoofdremcilindeer bekrrachtigt zon nder meer d de remschijff.
Hierrdoor remt h het wiel af.
Het is duidelijk dat bij falen n van het ABS systeem m nog steeds convventioneel geremd kan n worden.
Figuur 28 : Normaal remm men (geen ABS)
naam m inlaaatklep: uitlaaatklep: pom mpmotor:
mechanisch h o open g gesloten uit
elektron nisch niet bekkrachtigd niet bekkrachtigd niet bekkrachtigd
dig. 0 0 0
1.3.4.2.1.2. ABS R Remmen (A ABS‐actief)
Indien ABS acttief is, heeftt men drie ttoestanden:: - druk afbouw - druk hou uden bouw - druk opb
uw 1.3.4.2.1.2.1. ABS druk afbou
ABS Remmen Î Î Druk afbo ouwen Zow wel de inlaattklep als de uitlaatklep,, zijn actief.
Dus de inlaat po oort is geslo oten. En d de uitlaatpoort is open..
De h hoofdremcillinder kan d de remschijff niet verdeer bekrrachtigen. D De remvloeiistof vloeit w weg. De rremdruk op de remschijf zal afnem men.
Figuur 29 : druk afbouwen
Hierrdoor zal heet wiel mind der blokkere en of geheeel debllokkeren… naam m mechanisch h elektron nisch dig. inlaaatklep: g gesloten bekrach htigd 1 uitlaaatklep: open o bekrach htigd 1 pom mpmotor: aan a bekrach htigd 1
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 13 ‐
Aanstu uring ABS kle eppenblok
1.3.4.2.1.2.2. ABS druk houden
ABS Remmen Î Druk ho ouden Enke el de inlaatkklep is bekraachtigd.
Dus de inlaat po oort en de u uitlaatpoortt zijn geslotten.
De h hoofdremcillinder kan d de remschijff niet verdeer bekrrachtigen, een de remdrruk kan ookk niet weggvloeien.
De rremdruk op de remschijf zal constant blijven..
F Figuur 30 : druk houden h
Deze e fase word dt meer geb bruikt als korte tussenfaase, om o over te gaan van druk afbouwen naar druk ouw. opbo Naam mechanisch h elektron nisch dig. inlaaatklep: g gesloten bekrach htigd 1 uitlaaatklep: gesloten g niet bekkrachtigd 0 pom mpmotor: aan a bekrach htigd 1
1.3.4.2.1.2.3. ABS druk opbo ouw
ABS Remmen Î Î Druk opbouwen Zow wel de inlaattklep als uitllaatklep, zijn niet actieef.
Dus de inlaat po oort zal opeen staan. (N NO) En d de uitlaatpoort zal geslo oten zijn. (N NC)
De ggegenereerd de remdrukk in de hoofdremcilindeer bekrrachtigd de remschijf.
Hierrdoor zal heet wiel afrem mmen.
Fiiguur 31 : druk oppbouwen
Opm m.: Dit juist hetzelfde iss als werken zonder AB BS ! Verschil is de pomp pmotor die zal draaien. Naam mechanisch h elektron nisch dig. inlaaatklep: o open niet bekkrachtigd 0 uitlaaatklep: gesloten g niet bekkrachtigd 0 pom mpmotor: aan a bekrach htigd 1
boden toestand 1.3.4.2.1.2.4. Verb
Figuur 32 3 : verboden toestand
! ! ! V E R B B / D E N ! ! ! Me erk op dat deze fase nieet MAG voo orkomen. In d deze toestand zou de p pomp de rem mvloeistof ron ndpompen, zonder dat dit invloed heeft op dee toe estand van d de rempmen. Naam mechaniscch elektro onisch dig. inlaaatklep: 0 uitlaaatklep: 1 pom mpmotor: x
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 14 ‐
Aansturing ABS kleppenblok
1.4. ABS vs ESP
Om dit theoretisch hoofdstuk af te sluiten, wordt kort toegelicht wat het verschil is tussen ABS en ESP en waarom er bij ESP vier extra hydraulische kleppen nodig zijn, dit is echter niet gerealiseerd in dit project.
Het doel van ESP is de stabiliteit van de wagen verbeteren tijdens het nemen van een bocht. Bij het nemen van een bocht bestaat de kans op oversturen of ondersturen van het voertuig. Hierdoor ontstaat een giermoment. Het doel van ESP is dit giermoment op te heffen door een van de wielen individueel af te remmen zonder dat de bestuurder op het rempedaal duwt.
Onderstuurde wagen
vb oorzaak
Met hoge snelheid een bocht nemen.
gevolg
De wagen dreigt rechtuit te gaan.
Overstuurde wagen De bestuurder stuurt te sterk. De achterkant van de wagen slipt weg naar buiten, waardoor de wagen de neiging heeft een kleinere bocht te maken.
visueel
oplossing
RL afremmen
FL afremmen
Figuur 33 : overstuur vs onderstuur
Om te bepalen of afremmen van een wiel noodzakelijk is heeft een ESP‐ ECU bijkomende sensoren: - stuurhoeksensor - G‐sensor - Giermomentsensor ESP moet dus de wielen afremmen, hiervoor worden de hydraulische kleppen van de ABS unit gebruikt. Er zijn vier bijkomende kleppen nodig (twee per split) om druk te kunnen opbouwen zonder dat de bestuurder op het rempedaal drukt. Dit wordt dan een ESP‐modulator genoemd. In rode lijn is weergegeven wat bijkomstig is in de hydraulische ESP modulator.
Hydraulisch schema ESP
: ESP hydraulica Figuur 34 Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 15 ‐
Aansturing ABS kleppenblok
Hoofdstuk 2
2. Controller & moederbord
Om de stuurlogica van het ABS kleppenblok te realiseren stelde de school en LMS de “MPC560” µC van ter beschikking. In dit hoofdstuk komt aan bod hoe deze controller kan geprogrammeerd worden met C‐code, de ontwikkelomgeving en hoe een Simulink model kan gemapt worden op deze controller. Zo kan LMS de eigen Simulink algoritmes uitbreiden, en implementeren op deze controller. Hoe de Simulink modellen zelf ontworpen kunnen worden valt buiten het doel van dit eindwerk, en is hier niet besproken. Deze µC is veel uitgebreider dan wat hier besproken word, maar het geeft een idee hoe een algoritme vanuit Simulink kan geïmplementeerd worden op de controller. De eigenlijke code die wordt uitgevoerd op de µC voor de ABS kleppensturing, komt in dit hoofdstuk nog niet aan bod maar is opgenomen in een apart hoofdstuk(4).
2.1. De µController
De MPC560 144 in LQFP‐package is een zeer geavanceerde 32‐bit µC. Hij is specifiek geschikt voor automotive toepassingen, maar kan natuurlijk ook elders ingezet worden. De controller zal met de verkregen inputsignalen (vijf snelheden en brakeswitch) het ABS‐modulatorblok aansturen (de acht kleppen en de pompmotor). Verder zal de controller hier ook gebruikt worden om statusinfo weer te geven via enkele LEDjes.
2.2. De mini‐module
Enkel de µC als chip is onvoldoende, daarom is een bijbehorende minimodule (XPC560) voorzien. Met hierop een 144 pin LQFP zif‐socket waarin de “MPC560” kan geplaatst worden. Normaal is deze µ‐controller wel meer voorzien om vast te solderen op een PCB.
Figuur 35 : mini-module
Op dit bordje staat alles wat de controller nodig heeft om te functioneren: -
Voeding clock circuit met kristal nexus programmeer connector µC supervisory circuit aan uit schakelaar
‐ ‐ ‐ ‐
jumpers LQFP144 ZIF‐socket condensators voor ontstoring I/O breakout (aan onderzijde)
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 16 ‐
Aanstu uring ABS kle eppenblok
2.3. Het Exper H rimenteerrbord
De eerder besproken min ni‐module sttaat via twe ee 120pin board‐to‐boaard sockets bovenop h het exp perimenteer bord. Het experimenteerbord laat toe om o op een eenvvoudige manier periferrie te vverbinden m met de controller. In een later staadium als alles naar weens werkt, kkan het geheeel met controllerr op een com mpact PCB ggeplaatst w worden. met de Op dit bordje sstaat al heeel wat om m ntroller te experimenteeren: con
-
Aan uit kknop Voeding 5v of 12v (afh hankelijk van jumper) Automottive busnetweerken (3) Drukkno opjes (4) LEDjes(4 4) Potmeteer (analoog) I/O head der array Breakout poort
Figuur 36 : experimenteerbbordje
Zoaals te zien kaan er veel m meer periferie op aangesloten worden dan in n dit projectt gebruikt iss. De functies van alle I/O ku unnen in dee datasheett van de con ntroller gevo onden word den. De con nnectoren kkunnen in dee datasheett van het moederbord gevonden w worden.
2.4. De Progra D ammer
Het program mmeren van de µC geb beurt met d de Nexus prrogrammer.. Deze ISP wordt via U USB met de PC verbond den, zo kan het geschreeven prograamma in dee µC geladen wo orden.
2.5. De IDE (In D ntegrated d Developm ment Environmentt)
Een n IDE is een omgeving d die voorzien n is van een n complete ttoolset om code te onttwikkelen, een te implementeeren. Hier w werd gebruik gemaakt vvan Freescaale CodeWaarrior, dit is een oelaat om vvia een overrzichtelijke o omgeving eembedded ssoftware te onttwikkelomgeving die to schrijven voor oa. deze freescale µC..
De versie van C CodeWarrio or die in dit project geb bruikt is: CodeWarrior for MPC55xx//MPC56xx Miccrocontrollerss V2.7_SE (Claassic) (geeschikt voor w C windows 7) R Release date: 31 August 20 010
Figuur 37 : IDE E – Freescale CoddeWarrior
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 17 ‐
Aansturing ABS kleppenblok
2.6. Eerste kennismakingtest met de µC
Er is in dit project op twee manieren code ontworpen: - Handmatig geschreven code in C‐taal - Gegenereerde code in C‐taal van een remalgoritme in Simulink, dat aangeleverd is door LMS International en aangepast door Tim Hermans 2.6.1. µController register configuratie
In dit eenvoudige programmaatje wordt aangetoond hoe een µC pin kan geconfigureerd worden aan de hand van de registers (terug te vinden in de datasheet). Als voorbeeld wordt hier de configuratie van een I/O pin aangehaald. Bij dit eenvoudige voorbeeld hangt aan de µC een LED‐bar met acht LEDjes en een array van acht drukknopjes. Als op een knopje wordt gedrukt, gaat het respectievelijke LEDje branden. Er is veel meer initialisatie nodig dan wat hier weergegeven is, toch geeft dit een inzicht hoe de registers van de µC ingesteld worden. (Dit eenvoudige I/O programmaatje kan terug gevonden worden in de bijgevoegde bestanden) Een pin op deze µC kan voor verschillende doelen gebruikt worden, dit is in software te configureren. In dit geval is een I/O pin gewenst. Eens de pin is geconfigureerd als I/O‐pin, moeten ook nog aangeven worden of Input ofwel Output gewenst is. Dit gebeurd aan de hand van controle registers:
- Kenbaar maken dat je een I/O pin gewenst is: “General‐purpose I/O pin” (GPIO) = Alternative mode “00” in het Pad Output Assignment register. - Kenbaar maken dat een Input of Output pin gewenst is: “Pad ConfigurationRegister” (PCR) configureren:
Pin configureren als input: 0000 0001 0000 0000 Pin configureren als output: 0000 0010 0000 0000
of 0x0100 of 0x0200 Figuur 36 : register
Opm.: Niet elke pin kan je zowel als input als output instellen. (zie hiervoor tabel “Pin muxing” in de µC manual) Eens het PCR register is ingesteld, kan het respectievelijke I/O geheugen gelezen of gezet worden. Dit kan dan gewoon gebeuren in C‐code. Een voorbeeld is te zien op volgende bladzijde.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 18 ‐
Aansturing ABS kleppenblok
Het eerste testje (C‐code) #include "MPC5604P_M26V.h" #include <stdio.h> #define #define #define #define #define #define #define #define
Testknopje1 Testknopje2 Testknopje3 Testknopje4 Testknopje5 Testknopje6 Testknopje7 Testknopje8
SIU.GPDI[65].R SIU.GPDI[64].R SIU.GPDI[67].R SIU.GPDI[66].R SIU.GPDI[69].R SIU.GPDI[68].R SIU.GPDI[71].R SIU.GPDI[70].R
//pin-E1 //pin-E0 //pin-E3 //pin-E2 //pin-E5 //pin-E4 //pin-E7 //pin-E6
#define #define #define #define #define #define #define #define
LED1 LED2 LED3 LED4 LED5 LED6 LED7 LED8
SIU.GPDO[100].R SIU.GPDO[101].R SIU.GPDO[102].R SIU.GPDO[103].R SIU.GPDO[104].R SIU.GPDO[105].R SIU.GPDO[106].R SIU.GPDO[107].R
//pin-G4 //pin-G5 //pin-G6 //pin-G7 //pin-G8 //pin-G9 //pin-G10 //pin-G11
/* globale initialisatie hier weg gelaten */ void main(void){ // Drukknop initialization -------START-INIT------------------------------------------------------------------------SIU.PCR[64].R = 0x0100; SIU.PCR[65].R = 0x0100; SIU.PCR[66].R = 0x0100; SIU.PCR[67].R = 0x0100; SIU.PCR[68].R = 0x0100; SIU.PCR[69].R = 0x0100; SIU.PCR[70].R = 0x0100; SIU.PCR[71].R = 0x0100; // Drukknop initialization -------START-INIT-------------------------------------------------------------------------// LED initialization ------------START-INIT---------------------------------------------------------------------------SIU.PCR[100].R = 0x0200; SIU.PCR[101].R = 0x0200; SIU.PCR[102].R = 0x0200; SIU.PCR[103].R = 0x0200; SIU.PCR[104].R = 0x0200; SIU.PCR[105].R = 0x0200; SIU.PCR[106].R = 0x0200; SIU.PCR[107].R = 0x0200; // LED initialization ------------END-INIT-------------------------------------------------------------------------------
while (1 == 1) { // drukken = LED AAN ==> (hier positieve logica switchjes) if(Testknopje1 == 1) {LED1 = 1;} else {LED1 = 0;} if(Testknopje2 == 1) {LED2 = 1;} else {LED2 = 0;} if(Testknopje3 == 1) {LED3 = 1;} else {LED3 = 0;} if(Testknopje4 == 1) {LED4 = 1;} else {LED4 = 0;} if(Testknopje5 == 1) {LED5 = 1;} else {LED5 = 0;} if(Testknopje6 == 1) {LED6 = 1;} else {LED6 = 0;} if(Testknopje7 == 1) {LED7 = 1;} else {LED7 = 0;} if(Testknopje8 == 1) {LED8 = 1;} else {LED8 = 0;} } }
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 19 ‐
Aanstu uring ABS kle eppenblok
2.6.2. Simulink co S ode generattie
Com mplexe algo oritmes worrden in testomgevingen meestal in grafische blokken on ntworpen. Hett hier gebru uikte remalggoritme dat aangeleverrd is door LMS Internattional en aaangepast is doo or Tim Herm mans is in Simulink ontw worpen. Sim mulink is eeen platform waar logicaa kan onttworpen wo orden in mo odel based d design, dit m maakt het d design overzzichtelijker dan een onttwerp in pro ogrammaco ode. Met Reeal‐Time Wo orkshop kan n het grafiscche Simulink model omgezet word den in C‐cod de zodat hett algoritme op de controller kan d draaien. Real‐Time Wo orkshop is een onderdeeel van de M Matlab‐Simu ulink omgevving. Waat nodig is o om het Simu ulink model via Real‐Tim me Workshop te impleementeren o op de µC wordt hier kort besprroken aan d de hand van n een klein vvoorbeeld (een code sllot). Zo kan LMS hun verrnieuwde Simulink algo oritmes porttmappen op p de freescaale µC.
Fiiguur 38 : code geeneratie voor µC Als voorbeeld is dit eenvo oudig codesslot met flip pflops gemaakt in Simulink (fig 39), hiervan zaal via RTW W C‐code geegenereerd d worden, en als voorbeeld op de freescale µC gemapt w worden.
Figguur 39 : Simulink grafisch ontworpen design
Linkks zijn de neegen inputss zichtbaar, dit stellen n negen drukknopjes voo or die aan d de µC hangeen. Als de code juiist is ingegeeven, zal hett Simulink o ontwerp de output (op de µC) hoo og maken. m.: Dit codeeslot is niet veilig, en b bovendien h hard coded, het is enkeel maar als vvoorbeeld. Opm De bedoeling is om dit graafisch ontw worpen proggramma in SSimulink om m te zetten iin C‐code viia RTW W, en de I/O O op de juisste pinnen vvan de µC te e mappen. ZZie volgende blz. Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 20 ‐
Aansturing ABS kleppenblok
2.6.2.1. Instellen Real‐Time workshop
In Simulink: Tools Æ Real‐Time Workshop ÆOptions
Als target file: ert.tlc = Embedded realtime target Als Language: C
Figuur 40 : screenprint
Figuur 41 : screenprint
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 21 ‐
Aansturing ABS kleppenblok
2.6.2.2. Genereer code
Als alles juist ingesteld is en het ontwerp naar wens is, kan de C‐code gegenereerd worden door een druk op de knop:
Simulink Æ Tools Æ Real‐Time Workshop Æ Build Model
Figuur 42 : screenprint – code generation report Als de code gegenereerd is zijn volgende bestanden (*.C en *.h) beschikbaar: -
projectname.c projectname.h projectname_private.h projectname_types.c rtwtypes.h
2.6.2.3. code mapping
Nu moet enkel de Simulink I/O (van §2.6.2) nog gemapt worden op effectieve I/O van de µC. Hiervoor worden handmatig enkele noodzakelijke regels aan de gegenereerde code toegevoegd. Alhoewel de µC I/O toekenning kan genest worden tussen de gegenereerde code, is werken met variabellen overzichtelijker. //---------------------VARIABLE DECLARATIE-------------------int valueA; int valueB; int valueC; int valueD; int valueE; int valueF; int valueG; int valueH; int valueI; int valueY; //------------------------------------------------------------
//---------------------GET THE INPUTS-------------------Simulink_Codegeneration_U.In1 = valueA; Simulink_Codegeneration_U.In2 = valueB; Simulink_Codegeneration_U.In3 = valueC; Simulink_Codegeneration_U.In4 = valueD; Simulink_Codegeneration_U.In5 = valueE; Simulink_Codegeneration_U.In6 = valueF; Simulink_Codegeneration_U.In7 = valueG; Simulink_Codegeneration_U.In8 = valueH; Simulink_Codegeneration_U.In9 = valueI; //------------------------------------------------------//---------------------THE OUTPUT-----------------------valueY = Simulink_Codegeneration_Y.Out1; //------------------------------------------------------
De variabele kunnen in de main.c gekoppeld worden aan de effectieve I/O van de µC. De logica zal afgehandeld worden door de gegenereerde Simulink code…
projectname initialize(); while (1) { projectname _step();
}
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 22 ‐
Aansturing ABS kleppenblok
Hoofdstuk 3
3. Stuurhardware (Interface Hardware) Vele sensoren en de meeste actuatoren kunnen niet zomaar met een µController uitgelezen of aangestuurd worden, om dit mogelijk te maken is bijkomende elektronica ontworpen. De meeste onderdelen zijn eerst op breadboard getest, en na werking op een PCB gezet. De hardware is modulair ontworpen, zodat elk deeltje afzonderlijk getest kan worden. Later als alles naar wens werkt en getest is, kan dit op één gezamenlijk PCB gezet worden. De schema’s zijn getekend in Multisim, en de PCB’s zijn ontworpen in Ultiboard. De gemaakte stuurelektronica wordt in dit hoofdstuk besproken: Elektronica Opstelling - Layout testplankje - Solenoïde opstelling - Motor aansluiting actuatoren - PCB voor solenoïdes - PCB voor pompmotor sensoren - PCB voor snelheidsensoren statusinfo - LED voor defect Statusinfo ontwikkelfase - LED’s voor de logische toestanden - LCD voor snelheidsweergave - Test drukknopjes voeding - 5 volt - 12 volt testbord - PCB vereenvoudigd Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 23 ‐
Aanstu uring ABS kle eppenblok
3.1. Elektronic E ca Opstellling
Op figuur 43 iss de gehele ABS kleppeensturing te e zien. Het ggeheel is opgesteld op een testtplankje, zo odat alles aaangesloten kan blijven en makkelijk transportteerbaar is.. De I/O naar heet virtueel vvoertuigmod del en naar het ABS‐mo odulatorblo ok kan ter p plaatse aan ngesloten w worden met de daarvoo or voorziene e connectorren.
Figuur 43 4 : foto opstellingg
3.1.1. Layout opst L telling
Op figuur 44 iss de layout vvan de opsttelling te zie en. De I/O vvan de geheele opstelling is met blauwe stippenlijn weergegeven, dezze I/O is in o overleg met LMS afgessproken. De grijze verbindingslijnen geven de verbindingen weer meet de µC bin nnen de opsstelling, de geb bruikte I/O o op de µC kaan terug gevvonden worrden in §3.6 6.2.2. De vo oedingslijne en naar de verrschillende m modules zijn hier voor de duidelijkkheid weg ggelaten.
Figuur 44 : layyout opstelling
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 24 ‐
Aansturing ABS kleppenblok
3.1.2. Solenoïde opstelling
De acht solenoïdes zijn op PCB uitgelijnd tov. de ABS modulator kleppen. De acht solenoïdes passen zuigend over de vingerhoedjes (hydraulische kleppen) van de modulator. De solenoïdes zijn afkomstig van Tyco (afdeling Oostkamp). De aansluiting op het PCB’tje is voorzien van één gemeenschappelijke massa (blauw). De witte draden zijn van de afzonderlijke solenoïdes.
Figuur 46 : PCB solenoïde opstelling
Figuur 45 : solenoïde opstelling De verbindingsdraden van de solenoïdes komen toe op een printje, met headertjes, dit vormt een connector. Deze connector kan in het PCB met de klepschakelelektronica geprikt worden.
Figuur 47 : solenoïde connector
3.1.2.1. Solenoïde plunjer testopstelling
Om visueel te testen of de plunjer van de electro‐hydraulischeklep in de modulator wel degelijk wordt aangetrokken en dus de klep schakelt, is dit plexi plaatje gemaakt. Het plaatje is voorzien van boutjes (deze simuleren de plunjers) die zwevend in de opening van de solenoïdes kunnen bewegen. De boutjes kunnen net zoals een echte klep in de ABS‐modulator terugveren, hiervoor zijn ze verend opgehangen met een elastiekje door de kop.
Figuur 48 : plunjer testopstelling - bovenkant Figuur 49 : plunjer testopstelling - onderkant Het plexi plaatje kan weg genomen worden, en vervangen worden door de echte ABS‐modulator. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 25 ‐
Aansturing ABS kleppenblok
3.1.3. Pompmotor aansluiting
Ook voor de motor is een testopstelling gemaakt om tests te kunnen doen los van de opstelling bij LMS. Op ABS‐modulator bij LMS zit de pompmotor als een geheel vast gemonteerd tegen het modulatorblok, hiervoor is een aansluitpen voorzien, die dwars door het modulatorblok kan gestoken worden tot in de pompmotor. 3.1.3.1. Pompmotor Testopstelling
Testmotor afkomstig uit een oude 5.0 ABS van Bosch.
Figuur 50 : pompmotor testopstelling 3.1.3.2. Pompmotor aansluiting
De aansluitpen van de ABS bij LMS zit dwars door het modulator blok, de lipjes komen uit in de aansluitklemmen van de pompmotor. De pen mag niet uitgetrokken worden tijdens werking.
Figuur 51 : aansluitpen voor LMS ABS
3.1.4. Montage solenoïde en aansluitpen
Op figuur 52 zijn de solenoïdes over de kleppen geschoven, en de aansluitpen tot in de motor gestoken, dit op de LMS‐testbank.
Figuur 52 : ABS @ LMS
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 26 ‐
Aansturing ABS kleppenblok
3.2. Actuatoren
Een actuator is een component die gestuurd wordt met een elektrisch signaal en dit omzet in een mechanische beweging. In dit project zijn twee types actuators nodig, de hydraulische kleppen, en de pompmotor. Om deze te sturen met de µC is volgende hardware ontworpen: - PCB voor solenoïdes - PCB voor pompmotor 3.2.1. PCB voor solenoïdes
Links op fig. 53 zie je de µC‐input, rechts de aansluitingen voor de acht kleppen. Om de µC te beschermen tegen eventuele doorslag van het vermogencirquit, is een optische ontkoppeling voorzien. Merk op dat deze ontkoppeling deels in twijfel kan getrokken worden, omdat er nog een gemeenschappelijke massa is. De kleppen worden vervolgens gestuurd door acht P‐channel mosfets. Ook een vrijloopdiode is voorzien. Als een klep in werking treedt, zal ook de bijhorende LED branden, dit is enkel om een visuele indicatie te hebben tijdens het SW‐ ontwerp. Per klep een jumper voorzien, zodat enkel aan de hand van de LED kan getest worden zonder dat de klep schakelt. Ook terugkoppeling voor het virtueel model in voorzien. 3.2.1.1. Schema
Schema Klepsturing
3.2.1.2. PCB
Figuur 53 : Schema Klepsturing
3D design van het PCB
Achterkant van het PCB
Figuur 54 : Schema Klepsturing
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 27 ‐
Aansturing ABS kleppenblok
3.2.2. PCB voor pompmotor
Onderaan op het schema zie je de µC‐Input, ($3.6.2.2) rechts de aansluitingen voor de pompmotor. Als de motor in werking treedt, zal ook de bijhorende LED branden. Dit is enkel om indicatie te hebben tijdens het SW‐ontwerp. Ook hier is op het testbord een jumper voorzien zodat tijdens het testen de motor manueel onderbroken kan worden, zo kan de werking getest worden met enkel de LED indicatie, (zodat medestudenten niet gestoord worden). 3.2.2.1. Schema
Schema pompmotor sturing
3.2.2.2. PCB
Figuur 55 : design pompmotor schakeling
3D design van het PCB
Achterkant van het PCB
Figuur 56 : achterkant PCB pompmotor
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 28 ‐
Aansturing ABS kleppenblok
3.3. Sensoren Wielsensoren geven zoals eerder vermeld (§1.3.1) een sinusoidaal of blokvormig signaal af. De frequentie is in functie van de snelheid. Door de frequentie van het signaal in te lezen met de µC kan de snelheid bepaald worden. In dit project zijn de input signalen echter niet afkomstig van sensoren maar van het virtueel voertuigmodel dat deze signalen simuleert.
Op een later tijdstip is vermeld dat het voor toekomstplannen handig zou zijn om de snelheidssignalen in te lezen met stroomwaarden in plaats van met frequentiewaarden. Dit omdat de nieuwste test set‐up van LMS de speedsignalen enkel stroomgestuurd kan aanbieden en niet met sinussen. De twee stuurmogelijkheden zijn opgenomen met keuzeknop voor: - Frequentie Input: Snelheid ingelezen met de sinusfrequentie. (§3.3.1) - Current Input : Snelheid ingelezen met de stroom in milliampères. (§3.3.2)
3.3.1. Sinus naar blok Het verkregen sinusoidaal signaal moet omgevormd worden naar een blokvormig signaal, zodat dit met de µC kan ingelezen worden.
Opm.: Let wel op de testbench bij LMS staan geen roterende wielen, dus ook geen wielsensoren + bijbehorende tandkransen. De snelheidssignalen worden gesimuleerd en zijn afkomstig van het virtueel voertuigmodel.
Afgesproken signaal eigenschappen amplitude 5v top top frequentie 1Hz = 1/0.167 Km/u toename lineair Figuur 57 : scoopbeeld sine -> square 3.3.1.1. Schema Links op het schema komen de vijf sinussignalen van het virtueel voertuigmodel binnen, rechtsonder is de blokgolf output voor de µC te zien. (Zie voor µC pinout $3.6.2.2)
Schema wielsensoren: sinus naar blok omvormer
Figuur 58 : design sinus naar blok omvormer
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 29 ‐
Aansturing ABS kleppenblok
3.3.1.2. PCB
3D design van het PCB
Achterkant van het PCB
Figuur 59 : PCB sine naar blok
Omdat de µC de blokgolf van de sinus naar blokgolf PCB naar beneden trok, is dit bijkomstig PCB’tje (fig 60) gemaakt. Het versterkt het blok signaal (van fig 58), zodat de µC dit niet meer naar beneden trekt. Hierdoor worden de blokgolven en dus de snelheden juist ingelezen met de µC. Schema
Schema transistorarray
Figuur 60 : design transistorarray
PCB
3D design van het PCB
Achterkant van het PCB
Figuur 61 : achterkant transistorarray
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 30 ‐
Aansturing ABS kleppenblok
3.3.2. Current Input
Om ook de mogelijkheid te hebben om de snelheid signalensignalen in te lezen met het recentste voertuigmodel dat enkel stroom gestuurd werkt, is een klein pcb’tje voorzien met daarop een schuifknopje zodat kan gekozen worden tussen sinus of ampère(mA) input. De µC kan geen stroomsignaal inlezen, wel een DC spanning tussen 0 en 5 Volt in 10bit. Hiervoor is een ‘meetweerstand’ voorzien van 249Ω (ideaal 250Ω). Afgesproken signaal eigenschappen stroom 4mA = 0 Km/u 20mA = 320 Km/u toename lineaire functie - Berekening in volt voor PXI‐simulatie
Spanning = 0,01245x + 0,996
-
Berekening in bit voor µC
3.4. Ontwikkelfase
Hier besproken: - Manuele bediening - LED Statusinfo - LCD Statusinfo - Testdrukknopjes 3.4.1. Manuele bediening
Met de manuele bediening kunnen de kleptoestanden van §1.3.4.2.1 handmatig gegenereerd worden.
sticker bedieningspaneel
onder sticker
Figuur 62 : ABS LED indicatie
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 31 ‐
Aansturing ABS kleppenblok
3.4.2. LED ‐ Statusinfo
Om tijdens software ontwerp visueel te kunnen controleren waar de controller mee bezig is, is een indicatiebordje met LEDjes voorzien. Later bleek dat deze visuele indicatie mocht blijven.
Hierop kan het volgende afgelezen worden: - Is de voertuigsnelheid hoger dan 15km/u ? - Is er op de rem gedrukt ? - Is er slip op één of meerdere wielen ? - Gaat ABS in werking ?
Merk op dat dit enkel maar nuttig is tijdens ontwerp, later is deze LED uitlezing zinloos. 3.4.2.1. Schema
Schema LED Status info
3.4.2.2. PCB
Figuur 63 : ABS LED indicatie
Hier is geen PCB van gemaakt, gewoon als een haarbol in elkaar gesoldeerd…
3D design van het PCB
Achterkant van het PCB
Figuur 64 : ABS LED indicatie haarbol
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 32 ‐
Aansturing ABS kleppenblok
3.4.3. LCD – Statusinfo
Het LCD scherm is nuttig gebruikt om status informatie weer te geven die niet met LED’s kon weergegeven worden. Zoals o.a. snelheidsinfo. Het LCD is veelvuldig gebruikt voor debuggen van het programma tijdens ontwerp. 3.4.3.1. Aansturing
Figuur 65 : LCD statusinfo
Om de aansturing van het scherm aanzienlijk te vereenvoudigen is het LCD scherm voorzien van een driver chip die op zijn beurt het scherm pixel voor pixel aanstuurt. De communicatie met de driver‐chip verloopt via de Data en Controle BUS. 3.4.3.1.1. Stuursignalen
Met de controleBUS weet de ‘driver chip’ wat er juist moet gebeuren met de gegevens die worden aangeboden via de dataBUS. Hiervoor zijn 3 controlelijnen voorzien: 1) RS Register Select Signal 2) R/W Read / Write Signal 3) E Enable Signal (voor het inklokken van de data)
3.4.3.1.2. Data & controle signalen
De databus van het LCD is een parallelle acht of vier bit bus(DB7 tot DB0). Op deze BUS worden zowel de instructiesignalen als de datasignalen(tekst) gestuurd. De instructiesignalen zijn terug te vinden in de datasheet van het scherm. Het data signaal is gewoon het ASCII nummer van de letter die naar het scherm geschreven wordt. 3.4.4. Test drukknopjes Jumper setting De testknopjes zijn gebruikt om het programma te debuggen. Positieve Logica En hier en daar wat testcases in te voegen. Via de twee jumpers kan Negatieve Logica gekozen worden voor positieve of negatieve logica. Hier is gekozen voor positieve logica, hierdoor kan het paneeltje met testdrukknopjes gewoon losgekoppeld worden van de µC, zonder dat de functies achter de knopjes geactiveerd worden. 3.4.4.1. Schema + PCB
Schema testdrukknopjes
PCB
Figuur 66 : testknopjes
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 33 ‐
Aansturing ABS kleppenblok
3.5. Voeding
Op 5volt DC (in rood bedraad) werkt: - de µController - de sensoren + versterking - manuele bediening + testknopjes - LCD + LED’jes
Op 12volt DC (in geel bedraad) werkt: - Hydraulische kleppen - pompmotor
3.5.1. ATX test voeding
Figuur 66 : ATX connector
Om het geheel te kunnen testen is er in eerste instantie gebruik gemaakt van een ATX voeding. Deze bezit de nodige 5 en 12 volt DC. Door de groene draad (P1 connector) met een van de zwarte draden(GND) kort te sluiten springt de voeding op.
3.5.2. Auto accu Om het geheel te voeden is het voorzien dat alles op 12volt kan werken (auto accu). Links op de foto zijn de batterij aansluitklemmen, deze mogen in geen geval verwisseld worden. In de aansluitdraad is een zekering voorzien. Na de zekering is een schakelaar voorzien, zodat tijdens het testen niet telkens de klemmen van de batterij losgekoppeld moeten worden. Achteraan is een standaard molex connector voorzien, zodat snel kan gewisseld worden tussen de testvoeding en de Auto‐accu. De controller werkt op 5 volt, daarom is er een spanningsregulator naar 5volt voorzien.
Figuur 67 : aansluitklemmen
3.5.3. Schema
Schema voeding
3.5.4. PCB
Figuur 68 : spanningsregelaar
3D design van het PCB
Achterkant van het PCB
Figuur 69 : PCB spanningsregelaar
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 34 ‐
Aanstu uring ABS kle eppenblok
3.6. Mini moe M ederbord
Hett Testboard dat bij de µ µC zat is uitgemeten en n herontwo orpen tot en nkel het ben nodigde. So ocket A en B zijn op dezelfde po ositie uitgelijnd, zodat het controller bordje h hierop gepriikt kan worden via de board‐to o‐board soccket. Op het einde vvan het ontw werp als alles naar wen ns werkt, kaan dit bordjje nogmaalss hermaakt worden met alle nodige p periferie op dit ene borrdje. Zo kan n alles van h het ontworp pen ABS klep pschakelplaankje (PVC d doos) uitein ndelijk op diit ene kleinee PCB’tje ko omen. 3.6.1. Schema S
Schema: m mini moederrbord
Figuur 70 : PC CB spanningsregeelaar In d dit bedradin ngschema iss een zwaree fout te zien, de +5v is verbonden n met de GN ND. Hett bedradinggschema is h hiervoor nieet hertekentt, de fout iss handmatigg rechtgezett op de PCB B layo out.
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 35 ‐
Aanstu uring ABS kle eppenblok
3.6.2. PCB P
3D deesign van he et PCB Achtterkant
3D d design van h het PCB voo orkant
Figuur 71 : PCB B minimodulle
Figuur 72 : solldeermal
Om de 2x12 O 20pin board d to board socketten tee plaatsen iss dit hulstukkje v voorzien, he et is een maal waar de vvrouwelijke socketten in gestoken n k kunnen wor rden om ze exact uit tee lijnen ten opzichte vaan elkaar en n ten n het µC‐prrintje. Middenin zijn tw o opzichte va wee soldeergaten voorzzien.
ut 3.6.2.1. PCB pinou
F Figuur 72 : pinou ut mini module
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 36 ‐
Aanstu uring ABS kle eppenblok
3.6.2.2. Pinout naar periferie e
Hieeronder is teerug te vind den welke p periferie is aaangesloten n op de I/O p pinnen van de µC. De pinmappingg is dezelfde als op hett evaluation n board, zod dat de conn nectors eenvvoudig oveergezet en b behouden kkunnen worrden. De fun ncties van d de pinnen ku unnen terugg gevonden n worden in de d datasheet vvan de µC.
Porrt A : (Speed ds)
PCR[0] PCR[2] PCR[3] PCR[4] PCR[5] PCR[6]
Æ Æ Æ Æ Æ Æ
sine Veehicle Speed (V VS) sine Sp peed Front Left (FL) sine Sp peed Front Rigt (FR) sine Sp peed Rear Left ((RL) sine Sp peed Rear Rightt (RR) sine Brrake Switch
‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐
PCR[8] PCR[9] PCR[10] PCR[11] PCR[12] PCR[13] PCR[14] PCR[15]
Æ Æ Æ Æ Æ Æ Æ Æ
peak pulse klep 2 peak pulse klep 1 peak pulse klep 4 peak pulse klep 3 peak pulse klep 6 peak pulse klep 5 peak pulse klep 8 peak pulse klep 7
Porrt C: (LED in ndicatie)
-
PCR[35] PCR[40] PCR[41] PCR[42] PCR[43] PCR[44] PCR[45] PCR[46] PCR[47]
Æ Æ Æ Æ Æ Æ Æ Æ Æ
Debug LED FR Slip > 20% LED ABS fro ont actief LED VS > 15 5% LED FL Slip > 20% LED p > 20% LED RR Slip Brake SSwitch LED ABS rear actief LED RL Slip > 20% LED
Porrt D: (perefeerie evaluattion board)
-
PCR[48] PCR[49] PCR[50] PCR[51] PCR[52] PCR[53] PCR[54] PCR[55] PCR[55]
Æ Æ Æ Æ Æ Æ Æ Æ
evaluation board buttton evaluation board buttton evaluation board buttton evaluation board buttton evaluation board LED D evaluation board LED D evaluation board LED D evaluation board LED D
Æ manu ual control RL decrease pressu ure Æ manu ual control RL hold pressure Æ manu ual control FL deecrease pressure Æ manu ual control FL ho old pressure Æ manu ual control Pum mp motor Æ manu ual control FR hold Æ manu ual control RR d decrease Æ manu ual control RR h hold Æ manu ual control RR d decrease
Porrt E: (test drrukknop)
-
PCR[66] PCR[67] PCR[69] PCR[70] PCR[71] PCR[77] PCR[78] PCR[79]
Æ Æ Æ Æ Æ Æ Æ Æ
testkno opje 1 testkno opje 2 testkno opje 4 testkno opje 3 testkno opje 5 testkno opje 6 testkno opje 7 testkno opje 8
‐ ‐ ‐ ‐ ‐ ‐
PCR[65] PCR[64] PCR[72] PCR[73] PCR[74] PCR[75]
Æ Æ Æ Æ Æ Æ
keuzee switch sine/m mA DC Veehicle Speed (V VS) DC Sp peed Rear Rightt (RL) DC Sp peed Rear Rightt (RR) DC Sp peed Rear Rightt (FL) DC Sp peed Rear Rightt (FR)
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 37 ‐
Aanstu uring ABS kle eppenblok
Porrt F: (LCD)
-
PCR[80] PCR[81] PCR[82] PCR[83] PCR[84] PCR[85] PCR[86] PCR[87] PCR[88] PCR[89] PCR[91]
Æ Æ Æ Æ Æ Æ Æ Æ Æ Æ Æ
LCD daatabus bit 0 LCD daatabus bit 1 LCD daatabus bit 2 LCD daatabus bit 3 LCD daatabus bit 4 LCD daatabus bit 5 LCD daatabus bit 6 LCD daatabus bit 7 LCD Reegister Selection LCD Reead / Write LCD En nable
Porrt G: (hydraulische klep ppen)
-
PCR[96] PCR[100] PCR[101] PCR[102] PCR[103] PCR[104] PCR[105] PCR[106] PCR[107]
Æ Æ Æ Æ Æ Æ Æ Æ Æ
Pomp Motor klep FLL In (Klep 1) klep FLL Out (Klep 2) klep RR R In (Klep 3) klep RR R Out (Klep 4) klep RLL In (Klep 5) klep RLL Out (Klep 6) klep FR R In (Klep 7) klep FR R Out (Klep 8)
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 38 ‐
Aanstu uring ABS kle eppenblok
H Hoofds stuk 4
4. So oftware –– Code
F Figuur 73 : SW opp µC
De embedded software op de µC besstaat uit een n deel gege enereerde code en u uit een deel manueel ggeschreven code, dit is schematiscch weeergegeven o op fig. 73. D De kleuren stellen het volgende voor: - Wit = gegenereerrde code (m model based d remalgorittme) eschreven ccode - Geel = manueel ge - Rood = portmappin ng (port drivvers) naar d de effectievve I/O
4.1. Simulink g S gegeneree erde code e
LMS werkt mo omenteel aaan een model waarin de acht kleppen en de p pompmotorr stuurlogica n het Simuliink design. De ontworp pen hardwaare van hoofdstuk drie mee wordt opgenomen in blijfft hier echteer hetzelfdee. Het gebieed van wat in Simulink en wat in C C‐code geschreven is kaan zo vverlegd worrden. In dit project wordt de logicca van de kleeppen en pompmotor afgehandeld in gesschreven C‐ccode. me 4.1.1. Remalgorit R
Figuuur 73 : screenprintt Simulink remalggoritme
Dit algoritme is aangeleveerd door LM MS en aange epast door TTim Herman ns, en word dt in dit projject als black‐box b beschouwd.. Dit wil zegggen dat de gepaste siggnalen op dee ingang van het algoritme de gewenstte signalen e er uit komeen. worden aangeeboden, en d
In ffiguur 73 is tte zien dat links de 4 w wielsnelhede en aangebo oden moeteen worden, en de refeerentiesnelheid (voertuigsnelheid d). Hier is oo ok te zien daat dit remallgoritme nie et op de vieer wieelen afzondeerlijk kan w werken, enkeel per as.
Aan n de twee u uitgangen ko omen de beerekende re emkoppels. Het remkop ppel aan de e uitgang moet een n getal zijn ttussen 0 en 3000 (kopp pel in Newtonmeter). Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 39 ‐
Aansturing ABS kleppenblok
4.1.2. Real‐Time workshop Van het verkregen remalgoritme worden C‐code bestanden gegenereerd, dit is geportmapt zoals beschreven in §2.6.2. Hieronder is een rapport te zien van de gegenereerde code.
Figuur 74 : RTW remalgoritme rapport Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 40 ‐
Aansturing ABS kleppenblok
4.2. Manuele C‐code Hier worden enkel de essentiële delen uit de manuele code besproken, de volledige code kan terug gevonden worden in de bijgevoegde bestanden. De C‐code is ingedeeld in enkele *.c en *.h bestanden. De code stuurt de hardware van hoofdstuk drie en handelt enkele bijbehorende logica af. De initialisatie van de µC en I/O is hier voor de duidelijkheid weggelaten. 4.2.1. LCD weergave
Hier kan gelijk welke info afgebeeld worden, in dit geval wordt bij het drukken op testknop nummer acht de verkregen snelheden van het virtueel wagenmodel weergegeven. De subroutines om het LCD aan te spreken met de doorgegeven waarden zijn hier voor de duidelijkheid weggelaten. if (Testknopje8 == 1) //show LCD INFO alse laatste button is gedrukt { Lcd_ReturnHome(); Lcd_Print_string("FL"); Lcd_Print_Value(speedFL); Lcd_Print_string("FR"); Lcd_Print_Value(speedFR); Lcd_Print_Value(VehicleSpeed); Lcd_Print_Char(' '); Line(2); Lcd_Print_string("RL"); Lcd_Print_Value(speedRL); Lcd_Print_string("RR"); Lcd_Print_Value(speedRR); Lcd_Print_string(" \0"); }
Lcd_Print_Char(' '); Lcd_Print_Char(' '); Lcd_Print_Char(' '); Lcd_Print_Char(' '); Lcd_Print_Char(' '); Lcd_Print_Char(' '); Lcd_Print_Char(' ');
4.2.2. ABS activatie locica
Hier gebeurt de controle of ABS in werking moet treden of niet. Eerst wordt er in de ‘ABS_Activation_Query’ gecheckt of de voertuigsnelheid groter is dan 15km/u en of er op de rem is gedrukt. Als dit zo is, wordt er gekeken of er meer dan 20% slip is op de voor of achter as. Als dit zo is, wordt de ABS op de slippende as geactiveerd in de subroutinen ‘ABS_Active_x’ met de meegegeven rem koppels van het remalgoritme. Als niet meer aan de voorwaarde voldaan is, zal de ABS werking gestopt worden op voor en/of achteras door de ‘NonABS_x’ subroutine. else if (ABS_Activation_Query(VehicleSpeed) == 1) //check of ABS al of niet moet gaan werken { if ( Slip_F_AS(VehicleSpeed, speedFL, speedFR) == 1 ) { ABS_Active_F(PRE_torque_F, THIS_torque_F); LED_ABS_F=1; } else { NonABS_F(); LED_ABS_F=0;} if ( Slip_R_AS(VehicleSpeed, speedRL, speedRR) == 1 ) { ABS_Active_R(PRE_torque_R, THIS_torque_R); LED_ABS_R=1; } else { NonABS_R(); LED_ABS_R=0;} } else { NonABS_F(); LED_ABS_F = 0; NonABS_R(); LED_ABS_R = 0; }
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 41 ‐
Aansturing ABS kleppenblok
4.2.3. Slip berekening
In deze subroutine word berekend of er meer dan 20% slip is, als dit zo is, wordt dit terug gegeven met een return waarde 1. int Slip_F_AS(int carSpeed, int wheelSpeedFL, int wheelSpeedFR) { //return 1 wil zeggen dat er slip is op de vooras "true" LED_Slip_FL=0; LED_Slip_FR=0; if ( wheelSpeedFR <= (carSpeed-(carSpeed*0.2)) ) if ( wheelSpeedFL <= (carSpeed-(carSpeed*0.2)) )
}
{ LED_Slip_FR=1; } { LED_Slip_FL=1; }
if (LED_Slip_FL==1 || LED_Slip_FR==1) { return 1; } else { return 0; }
4.2.4. Input Snelheden
Hier worden de snelheiden van het virtueel voertuigmodel ingelezen, voor ontstoring, wordt het gemiddelde genomen van enkele snelheden. Deze worden aangeboden met een bereik van 205 tot 1019 bit (§3.3.2). Vervolgens gebeurt de omzetting naar snelheid (in Km/u). void getAdcSpeeds(void) { int i; int Vehicle_BIT = 0; //10 BIT digitale waarde van ADC int FL_BIT = 0; //(zet terug op 0 voor MAV-filter) int FR_BIT = 0; int RL_BIT = 0; int RR_BIT = 0; /////////////moving average filter/////voor ontstoring/////////////// for(i = 0; i < 500;i++) { Vehicle_BIT = Vehicle_BIT + (ADC_1.CDR[5].R & 0x000003ff); FL_BIT = FL_BIT + (ADC_1.CDR[8].R & 0x000003ff); FR_BIT = FR_BIT + (ADC_1.CDR[9].R & 0x000003ff); RL_BIT = RL_BIT + (ADC_1.CDR[6].R & 0x000003ff); RR_BIT = RR_BIT + (ADC_1.CDR[7].R & 0x000003ff); }
}
VehicleSpeed speedFL speedFR speedRL speedRR
= (((Vehicle_BIT / 500) = (((FL_BIT / 500 ) = (((FR_BIT / 500 ) = (((RL_BIT / 500 ) = (((RR_BIT / 500 )
-205)/2.55); -204)/2.55); -204)/2.55); -204)/2.55); -204)/2.55);
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 42 ‐
Aansturing ABS kleppenblok
4.2.5. Klep status
Hier wordt bepaald in welke status de klep zich moet bevinden, druk opbouw, druk afbouw of druk houden (§1.3.4.2.1) void ABS_Active_F(int PRE_torque, int THIS_torque) { if (PRE_torque < THIS_torque) { //druk opbouw if (ETIMER_0.CHANNEL[1].CNTR.R >= THIS_torque*4) { HoldPressure_FL(); HoldPressure_FR(); } //rest van tijd else { IncreasePressure_FL(); IncreasePressure_FR(); } } else if (PRE_torque > THIS_torque) { //druk afbouw if (ETIMER_0.CHANNEL[1].CNTR.R >= 12000-(THIS_torque*4) ) { HoldPressure_FL(); HoldPressure_FR(); } //rest van tijd else { DecreasePressure_FL(); DecreasePressure_FR(); } } else { HoldPressure_FL(); HoldPressure_FR(); } }
4.2.6. Output kleppen
Hier worden de kleppen en de motor effectief geschakeld. void HoldPressure_FL(void) void HoldPressure_FR(void) void IncreasePressure_FL(void) void IncreasePressure_FR(void) void DecreasePressure_FL(void) void DecreasePressure_FR(void)
{ Klep_FL_IN = 1; { Klep_FR_IN = 1; { Klep_FL_IN = 0; { Klep_FR_IN = 0; { Klep_FL_IN = 1; { Klep_FR_IN = 1;
Klep_FL_OUT = 0; Motor = 1; } Klep_FR_OUT = 0; Motor = 1; } Klep_FL_OUT = 0; Motor = 1; } Klep_FR_OUT = 0; Motor = 1; } Klep_FL_OUT = 1; Motor = 1; } Klep_FR_OUT = 1; Motor = 1; }
void NonABS_F(void) { Klep_FL_IN = 0; Klep_FL_OUT = 0; Klep_FR_IN = 0; Klep_FR_OUT = 0; Motor = 0; LED_Slip_FL = 0; LED_Slip_FR = 0; }
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 43 ‐
Aansturing ABS kleppenblok
Hoofdstuk 5
5. Testen Om het geheel te testen zijn er drie testen gedaan: - Test met functiegenerator - Test met PXI in LABView manueel Test met PXI in LABView automatisch - Test met virtueel voertuigmodel van LMS Test met virtueel voertuigmodel en remtestbank van LMS
5.1. Testen met functiegenerator
In onderstaande figuur is de testopstelling te zien met vijf functiegeneratoren. Hiermee worden de vier wielsnelheden en de voertuigsnelheden gesimuleerd. Met de manuele brakeswitch kan de rem gesimuleerd worden. Door de frequentie van één of meerdere functiegeneratoren aan te passen, zal ABS al of niet in werking gaan. Dit is ook visueel te zien op het LED indicatiebordje. Bij ABS werking zullen de kleppen sneller of minder snel schakelen, afhankelijk van het remalgoritme. Dit is ook zichtbaar met de indicatie LED’s van de kleppen en hoorbaar aan de ratelende kleppen in het ABS modulatorblok. Eventueel kan ook de snelheid op het LCD‐schermpje opgevraagd worden.
Figuur 75 Testopstelling met functie generators
Dit is een open loop test, de snelheden worden met de hand ingesteld. De wielsnelheden en voertuigsnelheid worden niet automatisch bijgeregeld, in een gesloten loop is dit wel het geval. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 44 ‐
Aanstu uring ABS kle eppenblok
5.2. Testen me T et PXI
Om de klepschakeling te kunneen testen is gebruik gemaakt van eeen on”, een PXI. PXI sstaat voor ““PCI eXtentiions for Insttrumentatio platform m (van National Instrum ments) met D DAQ‐kaarte en om snel testomgeevingen te o ontwerpen.. Hiervoor iss een testbe ench in LABView w gemaakt. V Via een LAN N‐interface kan een verrbinding worden o opgezet tusssen het lab bVIEW modeel op de PC en de PXI. P stelling HW 5.2.1. PXI testops
De testopstelliing (fig. 76) is bijna identiek aan de opstellingg van §5.1 m met het versschil dat nu u ook auttomatisch kan getest w worden door een snelheidsprofiel aan te bied den van op d de PXI. Ook de toeestand van d de kleppen in de ABS m modulator kkunnen nu terug ingeleezen worden n.
Figuur 76 Testop pstelling met PXII
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 45 ‐
Aansturing ABS kleppenblok
5.2.1.1. Gebruikte DAQ‐blades (NI‐6713 & NI‐6254)
DAQ staat voor “Data Acquisition”. De DAQ‐blades kunnen gebruikt worden om signalen te genereren of in te lezen. Analog Output module (NI‐6713) Analog Input Module (NI‐6254)
B VS RR RL FR FL RL In FL In RL Out
FL Out RR In
FR In RROut FL Out
GND
Figuur 77 : DAQ-kaarten Breakoutbox SCB‐68 De signalen van de DAQ‐kaart, worden via een 68pin kabel verbonden met een breakoutbox. Daar kunnen aansluitingen makkelijk verbonden worden door de printkroonsteentjes.
Figuur 78 : DAQ-breakoutbox + aansluitkabels
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 46 ‐
Aansturing ABS kleppenblok
5.2.2. PXI testopstelling SW
De gebruikte software voor de testomgeving is LabVIEW en staat voor “Laboratory Virtual Instrumentation Engineering Workbench”. Dit is een blokgeorienteerde programmeeromgeving die de mogelijkheid heeft om DAQ‐kaarten aan te spreken. Een softwaretoepassing ontworpen in LabVIEW wordt een virtueel instrument genoemd (vi).
Een Virtueel Instrument bevat volgende twee onderdelen: 1) Frontend‐bedieningspaneel, hiermee bedient de gebruiker het instrument. 2) Blok‐diagram, hierin kan een instrument grafisch ontworpen worden. Voor het testen van de ABS klepsturing zijn vier testomgevingen gemaakt, één manuele en één automatische. Dit zowel voor de sturing in stroom(DC) als voor de sturing in frequentie(sinus). (§3.3) Enkel de LabVIEW opstelling met automatische frequentiesturing wordt hier besproken, de sturing in DC en de manuele sturing zijn bijna identiek. 5.2.2.1. Enkele interessante design blokken verklaard
Met het Simulate‐Signal blok, kan een type signaal gegenereerd worden. (sinus, blokgolf, driehoek, zaagtand, DC) Ook de amplitude, en frequentie kan hiermee ingesteld worden. Met dit DAQ‐blok kunnen signalen gegenereerd worden. Het signaaltype is afhankelijk van het blok dat voor de DAQ. Het signaal wordt hier gemapt op een effectieve input. Met dit DAQ‐blok kunnen signalen ingelezen worden. De fysische signalen worden in dit blok gemapt naar labview, voor eventuele verdere verwerking. Met dit blok, kan een Measurement file gemaakt worden. De gemeten signalen worden weg geschreven naar een TXT‐file op de PXI. Deze kunnen dan eventueel via FTP gedownload worden voor analyse. Hiermee kan een TXT‐file worden ingelezen, om automatisch een snelheidsprofiel te volgen. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 47 ‐
Aansturing ABS kleppenblok
5.2.2.2. Automatische test (sinus frequentie)
De automatische test lijkt op de eerst ontworpen manuele test, met het verschil dat hier een snelheidsprofiel gevolgd wordt (snelheid in functie van de tijd). Hiervoor is een MATLAB‐scriptje gebruikt om de wiel‐ en voertuigsnelheidsprofielen te genereren en in tekstbestandje te schrijven, dat vervolgens door het VI gelezen kan worden.
Bij deze automatische test worden ook de toestanden van de kleppen terug ingelezen, en in grafiek uitgezet samen met het snelheidsprofiel.
5.2.2.2.1. Frontend‐bedieningspaneel
Figuur 79 : VI Frontend
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 48 ‐
Aanstu uring ABS kle eppenblok
5.2.2.2.2. Blok‐diagram
F Figuur 80 : VI blook diagram
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 49 ‐
Aansturing ABS kleppenblok
5.2.2.2.3. Testresultaten
De testresultaten zijn gevisualiseerd in Excel grafiekjes. Op de horizontale as de tijd, op de verticale as, de snelheid. De kleuren op de grafiek stellen het volgende voor: - Blauwe lijn = gegenereerd snelheidsprofiel - Rode lijn = schakelen van de kleppen naar druk afbouwen In de testjes is verondersteld dat de rempedaal ingedrukt is, en ABS dus in werking kan treden. 5.2.2.2.3.1. Testje 1 Vehicle Speed (VS)
Speed Front Left (FL)
Speed Front Right (FR)
Speed Rear Left (RL)
Speed Rear Right (RR)
Je kan hier zien dat er op de voorste wielen slip optreedt (100%). Dus de wielen blokkeren. Tijdens de blokkeer periode, zullen de kleppen in de status druk afbouw moeten gaan, dit is in het rood te zien. Je kan hier ook zien, dat tijdens de laatste slipperiode de voertuigsnelheid onder de waarde van 15 Km/u duikt. De kleppen reageren hier niet meer. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 50 ‐
Aansturing ABS kleppenblok
5.2.2.2.3.2. Testje 2 Vehicle Speed (VS)
Speed Front Left (FL)
Speed Front Right (FR)
Speed Rear Left (RL)
Speed Rear Right (RR)
Hier is duidelijk te zien dat het huidige algoritme per as werkt en niet per individueel wiel, het andere wiel wordt mee afgeremd omdat beide wielen in software op dezelfde as zitten. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 51 ‐
Aansturing ABS kleppenblok
5.3. Testen met virtueel voertuigmodel
Het virtueel voertuigmodel van LMS dat de ABS kleppensturing voorziet van nodige input signalen wordt in dit project als ‘black box’ beschouwd: het virtueel voertuigmodel valt buiten het ontwerp van dit eindwerk. Vanaf hier gaat LMS de ABS kleppensturing verder gebruiken voor de uitbreiding en verdere ontwikkeling van hun virtueel voertuigmodel alsook voor ontwikkeling van nieuwere remalgoritmes.
Om af te sluiten volgen nog enkele foto’s van de opstelling zoals LMS deze verder zal gebruiken.
5.3.1. Opstelling met EtherCAT
ABS kleppensturing (dit project)
ABS modulator van LMS
Input van LMS (voertuigmodel) LMS EtherCAT (I/O van virtueel voertuig model)
Mogelijkheid om kleppen terug in te lezen naar virtueel voertuigmodel van LMS
De EtherCAT (Ethernet for Control Automation Technology) is een veldbus systeem dat via een LAN verbinding de I/O van het virtueel voertuigmodel naar de ABS klepsturing vormt.
5.3.2. Opstelling conference LMS München (Duitsland)
Hier is het project opgesteld in samenwerking met het virtueel voertuigmodel van LMS.
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 52 ‐
Aansturing ABS kleppenblok
5.3.3. Opstelling @ LMS
remklauw 4x
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 53 ‐
Aansturing ABS kleppenblok
CONCLUSIE / BESLUIT •
•
Het project kan onderling samenwerken met de opgegeven signalen van het virtueel voertuigmodel van LMS (zie doelstelling), en kan ook geïntegreerd worden in een cosimulatie met een voertuigmodel en een remhydraulicamodel. (zie doelstelling) Het project kan gebruikt worden om nieuwe remalgoritmes te testen. (zie doelstelling)
•
In een volgend project kan eventueel ook een deel van de klep stuurlogica ineens mee opgenomen worden in het Simulink model, zo wordt C‐code tot een minimum beperkt.
•
De schakeltijden van de kleppen zijn niet perfect, deze tijden kunnen nog aangepast worden. Het project kan uitgebreid worden naar ESP hiervoor is bijkomende ESP hardware en een nieuw algoritme nodig, de klepsturing schema’s kunnen echter eenvoudig uitgebreid worden van 8 naar 12 kleppen. Alles kan eventueel nog op één klein PCB’tje maar het bleek voor LMS informatiever als het opgedeeld is in de overzichtelijke modules. Het LCD en de LEDjes zijn in dit project handig gebruikt voor debuggen en statusinfo, bij een implementatie in een voertuig is dit niet aanwezig.
•
• •
CONCLUSIE / BESLUIT persoonlijk Persoonlijk ben ik tevreden over de werking van hardware en software en de onderlinge communicatie met het virtueel voertuigmodel van LMS. De tijden van de kleppen moeten nog wel een juistere afstelling krijgen. Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 54 ‐
Aansturing ABS kleppenblok
BIJLAGE
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 55 ‐
Aansturing ABS kleppenblok
I. De PCB’s ABS‐Kleppen‐Shape
Comparator
PompMotor Sturing
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 56 ‐
Aansturing ABS kleppenblok
Spanningsregelaar
KlepSturing
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 57 ‐
Aansturing ABS kleppenblok
KlepSturing Connector
Mini Motherboard
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 58 ‐
Aansturing ABS kleppenblok
Switch array
LED Statusinfo
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 59 ‐
Aansturing ABS kleppenblok
II. Literatuurlijst (geraadpleegde documenten) •
Boeken : Freescale Semiconductor “MPC5604P Microcontroller Reference Manual, Rev. 3” , (februari 2010)
•
Mail : @tycoelectronics.com, “Spoeltjes EBC450”, (november 2010)
•
Internet : - http://www.google.be/ - Wereldwijd distributeur van elektronische, elektrische, industriële producten http://www.farnell.com/ - The Effectiveness of Anti‐Lock Brake Systems (Amanda Delaney and Stuart Newstead) www.monash.edu.au/ Monash University Accident Research Centre - Frenos ABS http://www.youtube.com/watch?v=d2tp3YXbb0c - Technische Informatica Motorvoertuigen Leerweg Open Technisch Onderwijs http://www.timloto.org/ - Dé kennisbron voor automotive professionals http://www.amt.nl/ - Dé site met broninformatie voor auto‐ en carrosserietechniek http://www1.learningbox.nl/mobikit/index.asp - Brake Types livrary http://auto.howstuffworks.com/auto‐parts/brakes/brake‐types - XPC56xx Motherboard http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=XPC56xxMB&fr=g - NI‐DAQ Express VI Tutorial http://zone.ni.com/devzone/cda/tut/p/id/2744 - 555 Timer http://www.kpsec.freeuk.com/555timer.htm
•
Eindwerk : Loreyn T, “3D Computergestuurde Graveermachine”, (juni 2008)
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 60 ‐
Aansturing ABS kleppenblok
III. Gebruikte Afkortingen
ATX
Anti Blokeer Systeem Anti‐lock Braking System Advanced Technology Extended
DAQ DC
Data AcQuisition Direct Current
EBCM ECU ESP ERT
Electronic Brake Control Module Electronic Control Unit Electronic Stability Program Embedded Real‐time Workshop
ABS
FL FR FET
Front Left Front Right Field‐Effect Transistor
HIL HW
Hardware In the Loop Hardware
I/O ICT IDE ISP
Input and Output Informatie‐ en CommunicatieTechnologie Integrated Development Environement In System Programming
LabVIEW LAN LCD LED LQFP
Laboratory Virtual Instrumentation Engineering Workbench Local Area Network Liquid Crystal Display Light‐Emitting Diode Low‐profile Quad Flat Package
MC MOSFET
Master Cilinder Metal‐Oxide‐Semiconductor Field‐Effect Transistor
Ni NO NC
National Instruments Normal Open Normal Closed
PCB PCI PXI
Printed Circuit Board Peripheral Component Interconnect PCI eXtensions for Instrumentation
RL RR
Rear Left Rear Right
SW
Software
USB
Universal Serial Bus
VS Vi
Vehicle Speed Virtual Instrument
WS
Wheel Speed
µC µP
Micro Controller Micro Processor
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 61 ‐
Aanstu uring ABS kle eppenblok
IV. Eerste flow wchart
Ingescande flo owchart van n de eerste C C‐code (dezze is veroud derd)
Academ miejaar 2010 0‐2011, oplleiding: Ing. Elektrronica‐ICT Optie: ICTT
‐ 62 ‐
Aansturing ABS kleppenblok
V. Solenoïde oververhit bescherming
Als de ABS klep solenoïde gedurende lange tijd (+3min.) continu bekrachtigd blijft zal deze oververhit geraken, en eventueel doorbranden, dit komt niet voor tijdens normale werking.
Om langdurige bekrachtiging eventueel toch mogelijk te maken is dit bijkomend PCB’tje ontworpen. Het kan de solenoïdes door ze zeer snel aan en af te schakelen oneindig lang mechanisch bekrachtigd houden. Het aan en afschakelen wordt gerealiseerd met een 555 timer IC in astabiele mode en enkele logische poortjes. De logische poortjes zouden ook in een GAL kunnen geprogrammeerd worden, hierdoor zal het printje veel kleiner worden. De frequentie van de aan en uit tijd kan ingesteld worden door een gewenste weerstand en condensator te kiezen.
Als dit gewenst moest zijn, kan dit PCB’tje tussen de µC sturing en het PCB met de klepschakel elektronica geplaatst worden. Een timingdiagram van de werking:
timing diagram: oververhit bescherming
schema: oververhit bescherming
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
‐ 63 ‐
Aansturing ABS kleppenblok
3D design van het PCB
Achterkant van het PCB
VI. Foto’s making off Foto’s van de opbouw zijn terug te vinden op:
http://ABS.Loreyn.be
Academiejaar 2010‐2011, opleiding: Ing. Elektronica‐ICT Optie: ICT
(zolang de server online is)
‐ 64 ‐