Electrical Engineering 180 credits
Adam Davidsson, Fredrik Lindblom
Electrical science and engineering, 15 credits
Degree thesis 15 credits Electrical Engineering
January 18, 2015
Adam Davidsson Fredrik Lindblom
Supervisors: Fredrik Lagerlöf, Stefan Byttner, and Hassan Mashad Nemati Prepared for: Volvo Powertrain
På grund av miljöföroreningar, tvingas bilindustrin ständigt med sänkta utsläppskrav lagstiftat av myndigheterna. Förbättrade tekniker för motorstyrning är ett måste för att få ner emissionerna. Användningen av en Exhaust Gas Recirculation (EGR) minskar utsläppen av kväveoxider väsentligt. Felaktiga EGR ventiler påverkar emissionerna negativt och behöver därför elimineras.
Det är möjligt att skapa fel på EGR ventilen genom att modifiera mjukvaran i styrenheten (ECU), men det skapar inte realistiska fel. Problemet genom att modifiera mjukvaran är att flaggor och olika parametrar är inställda för att bekräfta felfunktion hos ECU'n. För att skapa faktiska fel på EGR ventilen behövs ett externt verktyg för att modifiera styrsignalen.
Projektets huvudsyfte är att på ett flexibelt sätt kunna skapa fel på EGR-ventilen i en lastbilsmotor. Genom att undersöka motorns beteende på ett realistiskt och trovärdigt sätt kan man eliminera fel på EGR ventilen.
Syftet uppnåddes genom att en modell tagits fram som kan med hjälp av elektronik och en mikroprocessor avläsa och skapa en styrsignal.
Elektronikkretsen styrs av mikroprocessorn, som kan modifiera signalen och skapa fel i form av en trög ventil "Slow-response". Ett grafiskt användargränssnitt används för att kunna ändra och påverka felsignalen.
Kretsen med mikroprocessorn placeras säkert i en låda för att både skydda och bevara komponenterna.
Simuleringar av Slow-response har resulterat i att en felaktigt styrd ventil har skapats.
En Slow-response kan skapas med hjälp av två olika metoder. En metod är försening i tid då ny position uppstår, den andra metoden är en ramp funktion då styrsignalen gradvis ökar. Mjukvaran kan även skapa ett fel som efterliknar en fast ventil i ett fixerat värde. Med ovanstående uppräknade metoder går det i teorin att finna okända fel på EGR ventilen som påverkar emissionerna negativt.
Because of environmental pollution, forces the automotive industry constantly reduced emissions requirements legislated by the authorities. Improved techniques for engine control are a must for bringing down emissions. The use of an Exhaust Gas Recirculation (EGR) reduces NOx emissions significantly. Faulty EGR valves affect the emissions negative and therefore needs to be eliminated.
It is possible to create malfunctions on the EGR valve by modifying the software of the control unit (ECU), but it does not create realistic malfunctions. The problem by modifying the software is that flags and various parameters are set to confirm the malfunction of the ECU. To create actual failure of the EGR valve an external tool to modify the control signal is needed.
The project's main objective is on a flexible way creating malfunctions on the EGR valve in a truck engine. By investigating engine behavior in a realistic and credible way, one can eliminate malfunctions on the EGR valve.
The aim was achieved by a model that has been developed that can, using electronics and a microprocessor read and create a control signal.
The electronic circuit is controlled by the microprocessor, which can modify the signal and create malfunctions in the form of a slow valve "slow-response". A graphical user interface is used to change and influence the error signal.
The circuit with the microprocessor is placed safely in a box to both protect and preserve the components.
Simulation of Slow response has resulted in an incorrect operated valve being created.
Using two different methods a Slow-response can be created. One method is a delay in time, which occurs when the new position is given, the second method is a ramp function when the control signal is gradually increasing. The software can also create an error that mimics a stuck valve of a fixed value. With the above listed methods it is possible in theory to find unknown malfunctions on the EGR valve that influence emissions negatively.
We'd like to thank Fredrik Lagerlöf and Conny Nicander at Volvo Powertrain for the opportunity to work with the Thesis and all the people involved in the development of the project as whole. Thank you to everyone taking your time to not only help with the technical aspects of the project but helping putting the Thesis together with constructive criticism and aspiring guidance.
Special thanks to Thomas Lithén for all the help with components and technical advice at Halmstad University. Also to Agne Holmqvist, Johan Thorsen and Alistair Low at Volvo for their help with testing and for sharing their knowledge.
Stefan Byttner and Hassan Mashad Nemati for their help with this report.
We are grateful for the support, encouragement and patience of our families throughout the project. Adam would also like to thank Fredrik for his support and a great way to backing him up, his parents, Peter and Anna and his partner Moa.
Fredrik would also like to thank Petter Bengtsson for his advice on the design.
Adam Davidsson Fredrik Lindblom January 2015 Halmstad
Sammanfattning ... iv
Abstract ... vi
Acknowledgements ... viii
Abbreviations ... xii
Table of figures ... xiv
1.0 Introduction ... 1
1.1 Motivation ... 1
1.2 Problem description ... 2
1.3 Thesis goal and scope ... 3
1.4 Specification ... 4
2.0 Background ... 5
2.1 On-‐board Diagnostic ... 5
2.2.1 Types of OBD systems ... 6
2.2 EGR Valve ... 7
2.2.1 Control signal ... 8
2.3 Current research and development work ... 9
2.3.1 Existing solutions ... 10
3.0 Method ... 11
3.1Hardware ... 11
3.1.1 Circuit board ... 11
3.1.2 Manufacturing ... 11
3.1.3 Slow-‐response ... 12
3.1.4 Valve positioning ... 12
3.1.5 Microcontroller & GUI ... 12
3.1.6 Creating a Case ... 13
3.2 Software ... 14
3.2.1 Slow-‐response ... 15
3.2.2 Programming language ... 15
4.0 Theory ... 17
4.1 Paired drivers ... 17
4.2 Current measurement ACS712-‐05B-‐T ... 19
5.0 Results ... 21
5.1 Hardware design ... 21
5.2 Software design ... 24
5.2.1 Current measurement ... 27
5.2.2 Stuck valve ... 28
5.2.3 Delay in time ... 29
5.2.4 Ramp delay ... 30
5.2.5 Graphical user interface ... 31
5.3 Verification ... 31
6.0 Discussion ... 33
6.1 Slow-‐response as a software created error. ... 33
6.2 Current sensing ... 34
6.3 Hardware ... 34
6.3.1 Case ... 34
6.3.2 Circuit boards ... 35
7.0 Conclusion ... 37
7.1 Summary of results ... 37
7.2 Future work ... 37
Bibliography ... 39
EGR Exhaust Gas Recirculation
EATS Engine Aftertreatment System
ECU Engine Control Unit
OBD On Board Diagnostic
DTC Diagnostic Trouble Code DLC Diagnostic Link Connector MIL Malfunction Indicator Lamp
US EPA US Environmental Protection Agency NOx Nitrogen Oxides
PWM Pulse Width Modulated SRG Slow Response Generator CCD Current Control Device CAD Computer-aided design RMS Root Mean Square PLA Polylactide
Table of figures
Figure 1: OBD functionalty over malfunction detection on actuators . ... 5
Figure 2: EGR valve US10, which is on of the US valves. ... 7
Figure 3: EGR closed loop system. ... 7
Figure 4: EGR function in a diesel engine, stage 1 points at the EGR valve. Green arrows are air intake and red is exhaust from the engine . ... 8
Figure 5: Current as a function over time controlling the EGR valve with Dither to prevent friction when new position is given. ... 8
Figure 6: Passing an EGR set point through a first-order filter, to detect fault . ... 9
Figure 7: Cloosed-loop detecting fault by using an adjustable variable . ... 10
Figure 8: High-side & Low-side switch in pair. ... 14
Figure 9a: Current rise, Slow decay, Fast decay. ... 18
Figure 10a: Current rise, Slow decay, Fast decay. ... 18
Figure 11: The circuit board of the current control to the EGR valve. ... 21
Figure 12: The circuit board with the current sensor and voltage regulator. ... 22
Figure 13: Catia 3D plot. ... 23
Figure 14: Case from the side with USB connector to change the software if necessary. ... 23
Figure 15: Top view of case with EGR and voltage connectors and buttons to modify the LCD. ... 24
Figure 16: The main comparator, which have a switching output to control the Low- side switch [Appendix A]. ... 24
Figure 17: Dither versus enable signal, the enable signal changes depending on demandlevel. ... 25
Figure 18: Low-pass filter, that becomes a DC level which affects the Low-side output [Appendix A]. ... 25
Figure 19: Over current latch, detecting over currents [Appendix A]. ... 25
Figure 20: The setup used to test the SRG, the signals that is measured is to the EGR- valve and to the Dummy-valve. ... 26
Figure 21: ECU control signal (yellow) versus the CCD (green). ... 27
Figure 22: Using stuck, the valve won’t change position. ... 28
Figure 23: Close in on the control signals; the CCD signal is a replica of the ECU signal. ... 28
Figure 24: Slow-response by 24V and 2 seconds delay in time. ... 29
Figure 25: Slow-response by 12V and 2 seconds delay in time. ... 29
Figure 26: Slow-response by 24V and 2 seconds ramp function. ... 30
Figure 27: Slow-response by 12V and 2 seconds ramp function. ... 30
Figure 28: Graphical user interface flow on LCD screen. ... 31
Figure 29: Close in on the control signals, the output is ampere over time. The ECU (yellow) has an output of 556 mA, CCD (green) has an output of 546 mA, which is an error of approximately 2%.. ... 33
Due to one of mankind´s biggest challenge worldwide, the global warming effect and environmental pollution, much focus has been directed towards the automotive industry. One of the most common topics in the climate debate has been the emissions from diesel engines. Therefore the automotive industry has been forced to meet the lower emission requirements demanded by the European Union (EU) or by the United States Environmental Protection Agency (U.S EPA). In order to reach the emission requirements, it is essential to improve the technologies controlling the engine. Two technologies that can be used to reach these requirements are the use of exhaust gas recirculation (EGR) and the use of variable-geometry turbocharger.
The main combustion particles in the exhaust gas are water (H2O), carbon dioxide (CO2), hydrocarbons (HC), Particulate matter (PM), nitrogen oxides (NOx) and carbon monoxide (CO) . By the use of EGR, the exhaust gas is re-circulated back into the engine inlet, which reduces NOx emissions. EGR affect particle formation and the fuel consumption of the engine, NOx is the main particle reduced by the use of EGR. By using EGR NOx emission reduces, but to re- combust exhaust gases create soot in the outlet. When large soot deposits occur, the engine control unit starts the engine after-treatment system using urea to combust the soot. A compromise between NOx and soot must be done to meet legislation standards in the most efficient way.
Problems with the EGR valve could cause higher emissions. By knowing the behavior of the engine when a malfunction occur, diagnostic functionality can be created to eliminate and find these malfunctions. By generating different types of malfunctions to the EGR valve some unknown malfunctions can be found and eliminated.
To overcome and eliminate these problems, a slow response generator for manipulating the control signal is a way to achieve this.
This thesis is about creating an external unit, which will create a slow-response on the control signal to the EGR valve to simulate malfunctions.
1.2 Problem description
In order to certify engines, review their behavior, and measure the amount of emissions, authorities run a supervised test to review engine behavior and emission.
During such a test, realistic conditions such as cold-start ignition in cycles are tested, measuring the emissions. The same type of test is performed during warm start; the tests are performed to simulate a realistic duty cycle.
The combustion control engineers performing the testing should have access to an easy and reliable way to simulate malfunctions in the EGR valve. A simulated malfunction could be an error signal from the engine control unit (ECU) to the EGR valve, the signal will symbolize a faulty component. It is possible to create malfunctions on the EGR by modifying the software in the ECU, but this solution will not create a realistic malfunction. The problem by modifying the software is that flags and different parameters are set to tell the ECU it’s a malfunction. So to actually create a malfunction on the EGR and to monitor the engine behavior when it happens, a tool to modify the control signal needs to be created. It is possible to create malfunctions on the EGR by using two engine control units, which will position the valve in a wrong position. The problem with this solution is that it’s complex to create malfunctions and it’s not possible to create a slow valve.
By generating errors to the EGR valve using hardware instead similar to two ECU:s, i.e. changing the current in the control signal, one can examine how the engine actually handles a malfunction on the EGR valve. By doing this it is possible to test the functionality of the engine.
To simulate an actual malfunction on the EGR valve, an external and flexible tool is needed. This tool can be connected to an engine between the ECU and the EGR valve to generate malfunctions.
Malfunctions for the EGR valve are dependent on the flow through the valve to draw attention to potential problems. A fully open valve causing recirculation of emissions creates soot in the particulate filter, which leads to increased engine backpressure. A closed valve may result in increased emissions of nitrogen oxides and affects the emission, i.e. increases emissions negatively.
When the tool is flexible, it’s possible to simulate a plenitude of wrong components and create lots of different malfunctions. The amount of malfunctions to create to the EGR valve is primarily slow response to open, close, or both. To be able to saturate the valve and simulate that it doesn't leak or that it does not open fully.
Malfunctions converts to a DTC which are a format made for on-board diagnostics, that are stored in the ECU and can be viewed using a scan tool, ATI vision or Engineering Tool, which are examples of different OBD tools.
1.3 Thesis goal and scope
The aim of this project is to create repeatable malfunctions of actuators with an external flexible unit that can control and influence the control signal by simulating a faulty unit, primarily with a slow response. A Slow-response can be similar to a delay before the next change in the control signal is performed. The following goals are set within the project:
• Design of a circuit board that enables generating an EGR control signal. When the original signal is read, the circuit board can create and mimic the signal.
The control signal from the circuit board needs to be similar to the original. By using the same circuit as the original this is reachable.
• Design of software for the circuit board to allow a number of modifications to the EGR control signal. With the use of a microprocessor connected to the circuit board, software can be created that could both read and create a control signal. By having software compatible with the circuit board, the control signal can be modified and controlled by a graphical user interface to create a Slow-response.
• By verification of Slow-response functionality using an oscilloscope to monitor that a malfunction has been created.
The external unit needs to be easy to use, so government agencies can handle it for their certification.
The purpose for test engineers is to monitor what happens with the engine when the EGR malfunctions occur.
The aim is to create a slow-response on the ECU control signal. Creating a delay in time, either as a function of a ramp or pure time delay. The work is not to generate control signals, but to manipulate the control signal to symbolize malfunctions on the EGR valve in the way of a slow valve. To simulate an actual malfunction the valve has to be oil provided to move at all, therefore the device is only for use in real life at an engine lab and not for any other kind of simulation at all. The engines are connected through the ECU via a test computer to see engine parameters when malfunction occur. To observe a Slow-response has been created the functionality of the generator will be tested on the bench. This means that it will measure the control signal from the ECU and create its own signal, as well as monitoring the actual Slow- response.
In discussions with supervisors of the project at Volvo Powertrain a specification of the boundaries was made clear regarding the technical aspects of the project. The specification has the following points.
• An external device able to simulate an incorrect/damaged component in contact with the valve regarding opening and shutting the valve.
• Programming with an Arduino with the language C to control the hardware.
• Hardware should withstand voltages between 12-30 VDC as it is hooked up to the battery.
• A GUI to make altering and monitoring the error available.
• The external device is to be mounted in a protective case for usage in a tougher environment close to an engine block.
• The device should have failsafe implemented within its hardware to reduce risk of damaging the equipment and/or the user.
• A slow-response signal is to be created from the original signal from the ECU.
A slow-response can be viewed as a delay in the change of positioning of the valve.
• Volvo funds the project and provides additional software and equipment required to meet the specification.
2.1 On-board Diagnostic
On-board diagnostic (OBD) is a computer-based system designed to reduce emissions by monitoring the performance of engine components. OBD systems give access to the status of the various vehicle sub-systems. OBD implementations use a standard diagnostic link connector (DLC) to give real-time data from a standardized series of diagnostic trouble codes (DTCs), which gives access to rapidly identify and fix malfunctions within the vehicle .
Basic OBD systems consist of an ECU, which uses input data collected from different kinds of sensors (Figure 1). The ECU performs thousands of calculations every second to decide on the best ignition timing and determinate the fuel injector. The ECU makes these calculations to ensure the lowest emissions and the maximized efficiency each mileage.
When a DTC is given in a vehicle, it is visible in the trip computer or by that a warning lamp indicates also known as malfunction indicator lamp (MIL). An example of an indication of warning lamp is the "Check Engine" lamp, which gives the vehicle operator an early warning of faults on the vehicle. A modern vehicle has support for hundreds of different parameters and flags, which you can access through the DLC .
When a DTC is given and a warning lamp is indicating it is possible to access the information through the DLC (Figure 1). To access the information an OBD tool is needed. Some examples of available OBD tools are ScanTool, TechTool and ATI Vision.
Figure 1: OBD functionality over malfunction detection on actuators .
2.2.1 Types of OBD systems
There are two kinds of OBD systems, OBD-I and OBD-II
OBD-I is the first generation OBD systems, introduced in the 1980s. These early systems use their own connectors, hardware interfaces, and parameters. A vehicle technician who wanted to access DTCs or information about the vehicle, usually needed to buy a new tool for every different brand. OBD-I scan tools that support multiple contacts are delivered with an amount of different adapter cables, which is both expensive and complex to use .
OBD-II was introduced in the early 1990s, by the SAE and ISO. They created a set of standards, which described the digital information between ECUs and a diagnostic scanning tool connected to the DLC .
All OBD-II compatible vehicles were required to use a standard DLC, which is a 16- pin connector. They also had to communicate by one of the standard OBD-II communication protocols. By using the same connector and protocol makes the OBD- II less complex and more user friendly then OBD-I. OBD-II was first developed in model year 94 vehicles, and became a standard for all vehicles starting with model year 96 .
2.2 EGR Valve
The EGR valve may allow a certain amount of exhaust gas flowing back into the inlet of a diesel engine (Figure 2). This lowers the combustion temperature and emissions of NOx. The EGR valve receives its position depending on the throttle; the more throttle the more open valve. When you want to get the maximum power out of the engine with max throttle, the EGR valve closes completely so it doesn't affect the engine performance. The EGR valve is located between the exhaust and inlet and using oil pressure to get its position a solenoid valve handles the flow of oil, which in turn becomes a position of the EGR valve. The solenoid valve is a pilot valve that regulates a limited flow control to a separate pilot valve. This can be related to a closed loop regulating system (Figure 3).
Figure 2: EGR valve US10, which is on of the US valves.
Figure 3: EGR closed loop system.
The control signal to the EGR valve regulates oil flow, which in turn positions the valve. A fully open EGR valve causes soot in the particulate filter, which leads to increased engine backpressure this leads to frequent EATS regenerations. When the EGR valve is fully closed, the nitric oxide increases and raises the temperature of the engine that affects the emission requirements negatively.
If it gets clogged with soot, the “check engine” light will come on, and a DTC will show that there is problem with the EGR valve.
This is typically a result from a vehicle being driven mostly on shorter trips that doesn't allow the engine to get warm enough. Flow problems can also be caused by not change the oil frequently enough. A clogged EGR valve results in higher emissions, also can it affect fuel economy and cause poor idling – even major engine damage . Valves can be cleaned but it's hard to get it clean enough, that's why replacement is recommended when a clogged EGR valve appears.
Figure 4: EGR function in a diesel engine, stage 1 points at the EGR valve.
Green arrows are air intake and red is exhaust from the engine .
The following stages describe the operation of the EGR as depicted in Figure 4.
A sensor that measures the exact amount of exhaust gases from the exhaust manifold;
this sensor is controlling the EGR valve, which reintroduces exhaust gas into the air intake for re-combustion.
The measured exhaust gas gets cooled to an optimum temperature before being mixed back into the air intake.
The recycled exhaust gas is mixed now in the air intake. The mixed oxygen lowers the temperature of the combustion, which lowers flame temperatures. This means that emissions of NOx are reduced .
2.2.1 Control signal
The control signal to the EGR valve consists of a pulse width modulated (PWM) signal with some ripple, which is called dither (Figure 5). Dither is a PWM signal with the frequency of 100 Hz, after using dither the valve is moving at all times, which prevents friction on the valve when you want to change its position.
Figure 5: Current as a function over time controlling the EGR valve with Dither to prevent friction when new position is given.
2.3 Current research and development work
There are continuous improvements to reduce emissions and reduce fuel consumption for vehicles. Both the EU and the U.S. EPA are constantly setting new emission standards for vehicles to improve the environmental aspects. In the latest Euro 6 emission requirement in force since December 31, 2013 for trucks has been a huge emphasis in bringing down the NOx emissions from the previous emission requirements. The use of multiple injections and EGR shows result that NOx and particulate emissions as well as fuel consumption can be reduced over the entire engine . A solution that Volvo Trucks uses to get down and meet the new emissions requirements is the use of cooled EGR combined with an updated engine after- treatment system (EATS). They have pioneered the use of a new two-stage turbocharging that contributes both to operate the EGR valve and to achieve the high power levels .
In order to achieve the emission requirements a fully functioning EGR valve is a must. Therefore it is necessary to quickly find a fault in the EGR valve in case of malfunction and to know how the engine behaves when this occurs.
There are several researches and projects that develop a good way to find fault with the EGR valve. One example is the “method of diagnosing a slow EGR system of a combustion engine“ .
Using this method involves passing an EGR set point and an actual EGR value through a first-order filter to eliminate high frequency noise (Figure 6).
This method contains determining an actual EGR slope as a function of a difference between the EGR set point and the actual EGR value while producing an actual EGR gradient, and logs an error in the ECU if the expected EGR slope is greater than the actual EGR gradient with a predefined amount .
Figure 6: Passing an EGR set point through a first-order filter, to detect fault .
Another example is “a system and method for monitoring and detecting faults in a closed-loop system” .
In a closed-loop system that has an adjustable variable supervised to detect off- nominal behavior and to alert when malfunctions are detected (Figure 7).
The errors show up in such a way that the tracking error signal is affected and this influence manifests itself as a change of the frequency components.
A filter isolates a band of frequency components and tracking the faulty signal is more affected than others by differential caused by a malfunction to be detected .
Figure 7: Closed-loop detecting fault by using an adjustable variable .
2.3.1 Existing solutions
In the current situation it is possible to generate faulty EGR valve control signals using the software from the ECU, but this is with their own software. Usually flags and parameters are set in a way so that the engine handles the fault in the way you want. The authorities cannot ensure the credibility of the information from fault created by the software. The use is primarily for the authorities to check how the engine reacts to errors in the operation of the EGR valve.
A similar solution is a PWM controlled solenoid driver with the application to copy the control signal from a diesel engine to control the hydraulic fan drive circuit.
It uses the same functionality as the Slow-response generator (SRG) but has only a High-Side drive, when the SRG uses both High-side and Low-Side to use decay to control the EGR valve.
Except from this the principle it is almost the same as the solution for the SRG .
3.1Hardware 3.1.1 Circuit board
The first part of the project was understanding and replicating the current with the current control device (CCD) as an external circuit board with all the different parts and controllers. Putting together a circuit board replicating the CCD would facilitate the creating of an actual error from the hardware. An error could be created with the software of the microcontroller or with adding hardware to the output of the EGR- valve.
Development of a circuit board was necessary and schematics of the current solution for CCD was used as a reference to this development. The development tool of choice was OrCad with PCB editor and the footprint program Library Expert. An easy to use approach was the key to the reasoning behind the choice of the tools mentioned.
Making schematics and importing them with premade footprints from OrCad makes it easy to make the solder mask with the routing in the PCB editor. To minimize the layout of the circuit board a double layer board is created meaning routing between the components is available on two different layers.
The schematics required for the creation of a circuit board are made in the PCB- editor. Making a physical circuit board can either be sublet to a company that creates circuit boards or created at Halmstad University using a CNC milling machine. A milling machine can route the connections between the components from the files created with the PCB-editor. The components for the CCD needed to replicate the ECU solution for the current drive. The components is ordered from the electronics website ELFA . All the components required for the CCD were not available at ELFA, these components are ordered through the company that makes the current drive for the ECU. The circuit board is ordered through a manufacturing company in China that creates boards from PCB layouts called 3PCB . The circuit board is ordered from China to get a more professional circuit board, which the milling machine can not create, as well as it can be made with several layers.
To create a slow-response with hardware it is possible that making a low-pass filter that could remove the high rate of change in voltage over the load could give the valve a slow-response. This way of creating an error to the valve would be more static and could possibly simulate a faulty component in the valve itself. The con of making such a hardware-based error is that it is not very configurable.
3.1.4 Valve positioning
The positioning of the dummy-valve can be obtained by measuring the current that flows through it. To measure the current, a Hall effect sensor, which is a transducer that varies its output voltage depending on the measured magnetic field, can be used.
Using this in addition to an input with an A/D converter a digital representation of the current is possible. Of importance is that the transducer has a high enough resolution to be able to represent the change in current when the valve changes it’s positioning.
This additional hardware is therefore necessary to interpret the changes in position set by the ECU. This method would enable us to give a representation of the positioning of the valve. Other methods of measuring its positioning would be attaching a positioning sensor to the valve, it is considered that the current representation is a direct representation of the positioning of the valve and therefore no sensor is required. The current representation of the position works well when the valve is new, but as time passes the wear and depositions from the exhaust may cause the positioning to be inaccurate. Using a positioning sensor could solve this problem but is today not in use based on the additional cost.
3.1.5 Microcontroller & GUI
The purpose of the Microcontroller is to control the hardware using inputs and outputs of its configurable pins.
Using a Microcontroller is considered a good choice since it is small and with the right processor it enables fast switching of the output control pins.
The Arduino is a microcontroller board used for development applications; it provides I/O configurable pins with a 16 MHz processor suitable for the fast switching on the pins required for the control . The CCD also requires PWM for controlling the demanded level of current requested from the software that the Arduino supplies from one of its many outputs embedded on the board. The safety hardware embedded in the CCD also requires input to the microcontroller for configuration how to control the drivers of the valve. The A/D converter of the Arduino also enables to read the level of current through the Dummy-valve, which represents the positioning of the valve with additional hardware added.
Having inputs could make the slow-response adjustable by physically turning a knob or pressing a button. Using a well-known platform could benefit further development of additional errors and have an easy to use approach.
3.1.6 Creating a Case
To create a custom case for mounting the hardware in a 3D CAD software program was necessary to visualize and engineer how the fitting should be taken care of.
Visual engineering is a dynamic process of designing a device to fit your demands, which in this instance is the protective case for the Hardware.
Catia is a 3D CAD software that enables the user to plot both in 2D/3D and create a visual design to a concept.
The fabrication of the concept would be the next part of creating a case. Applying a physical layer of material from the concept drawing can be processed through a 3D- printer. 3D-printers are used in various industries such as automotive, aerospace, dental, and are today available for private consumer use.
The explosive growth in the use of the technology over the recent years has made this an easy to use tool even for the novice users. The printer extrudes a filament through a valve to a surface area successively creating layers of the concept drawing.
Designing the software consists of both replicating the already existing implementation of controlling the CCD and creating new software for generating an actual error. The CCD controller software is centred on using High-Side and Low- Side switching of output to the EGR-valve (Figure 8). The reasoning behind using both a High-Side and Low-Side switch is that it has an extra safety function meaning that if one of the switches is permanently turned on the other can be switched off.
This can be very important for actuator related drivers to ensure that an un-intended positioning of the valve does not happen. Another reason behind this is that since controlling the current through the actuator is important a feature called "fast-decay"
will be available, the feature is explained in detail in the theory part of the thesis.
Figure 8: High-side & Low-side switch in pair.
Creating the actual error of the slow-response can be achieved in different fashions.
A way of creating the slow-response can be adding a delay between the changes in positioning occurring. Creating this error may be achieved by adding the delay before position change is available, also called a dead time. Another way can be letting the change occur slowly over an interval of time. The different aspects of creating the slow-response of the valve has many different factors, and this is why having an interface can make the delay/ramping functions adjustable. The rate of change in the positioning over time can be achieved in numerous ways using software based error creation.
3.2.2 Programming language
The language for the Arduino depends on the development platform but can be used with its own programming language that is an implementation of wiring.
The platform can be used with both C and C++. The development part of the project is based around using the integrated software library wiring to make the programming of the CCD easier. The plan is to later convert the language to C, although the Arduino language is already a set of C/C++ functions .
Using the software library wiring would be suitable for the platform as it has an easy to use language reference and well documented structure .
4.1 Paired drivers
High-Side and Low-Side drives are sometimes paired together on both sides of the load they are intended to drive. Pairing them together enables features crucial to actuators intended for current regulation of the load. By switching the paired drivers for timed periods waveforms shown below can be achieved. The principle is called an open loop current control since there is no feedback of the current to any controller that can interpret its level.
Adding feedback of the current to a system can be achieved by measuring a voltage over a shunt resistor added between the low-side driver and ground, adding the resistor here is a suitable place since the low-side driver is switched on when the current needs to be regulated. This in addition to an A/D would give a representation of the current passing through.
Figure 9a and 10a) Showing the drivers in a "Current rise" state. Both drivers are turned on and current will flow from the supply through the load. The purpose is to move the positioning of the valve to the requested level.
Figure 9b and 10b) After requested level has been achieved the High-side is turned off. The energy stored in an inductive based load such as the valve will try to keep the current flowing in the direction of the blue arrow. The only way this is possible is to pull the current through the Low-Side diode. The voltage on the High-side of the load will be 0.7 V below ground. With this small voltage over the load the current will decay. Switching between the Current rise and the Slow decay will cause the valve to be held in its position.
Figure 9c and 10c) Showing the paired drivers in a Fast Decay state. Both drivers are turned off and the current will flow through both of the diodes. The Low-side of the load will be at 0.7 V while the High-Side will be at -0.7 V, this will result in the energy stored in the inductive load will return to the supply and current will decay rapidly. After the current has decayed to zero amps the drivers are fully turned off [Appendix A].
HIGH: ON HIGH: OFF HIGH: OFF LOW: ON LOW: ON LOW: OFF
Figure 9a: Current rise 9b: Slow decay 9c Fast decay.
The red lines indicate the direction of the current flow.
Figure 10a: Current rise 10b: Slow decay 10c Fast decay.
The red is showing the voltage through this phase, by putting all phases together a PWM-signal with dither is given.
4.2 Current measurement ACS712-05B-T
The ACS712 is a fully integrated Hall-Effect sensor that uses linear output depending on the current that passes through it; the sensor can detect both AC and DC. The sensor was selected because of its low ampere range and also for the high sensitivity.
There are different types of the ACS712-05B-T capsule depending on the current that needs to be detected by the device. The ACS712-05B-T has an output sensitivity of 185 mV/A but is dependant on the filtering capacitor soldered to the device and the noise level of the output. The device is bi-directional which means it can measure current in both directions, the range of the ACS712-05B-T is 0-5A.
The output of the sensor at 0A = 2.5 V
The output of the sensor at 1A = (0.185*1)+2,5 V=2.685 V
ADC of the Arduino Mega is at:
4.9 mV/unit at 100 Microseconds/unit .
Table 1: The resolution difference between 24 and 12V.
Actuator Irms(A) ΔmV ΔBits(max) Resolution
12 V 0-1.7 (0.185*1.6)=
(296/4.9)=6 0.4 bits
24 V 0-0.9 (0.185*0.9)=0.1665Vmax
=166.5 mV 166.5/4.9=3
3.98 0.9/33.98=0.026 48
5.1 Hardware design 5.1.1 Circuit board
A Circuit board was created using OrCad for the CCD alone and later a voltage regulator together with the ACS712 current sensor was created on a smaller board.
The design had some small layout errors with the footprints unfortunately, because of wrong reading of the schematic and components misplacing. Making small changes on the board modified the error and eliminated them. The circuit board was ordered from 3PCB in China and the components were ordered from ELFA and soldered to the board. External connectors were soldered close to the sides of the board for connections to voltage and the EGR-valve driver (Figure 11). The circuit board could have been integrated with the other smaller card to minimize the size of the layout and the mounting in the box.
Figure 11: The circuit board of the current control to the EGR valve.
The smaller Circuit board was created at Halmstad University and was intended for the Voltage regulator from the battery source to the Arduino as well as the ACS712 current sensor. The board was given the same height to match for mounting in the case and be fitted next to the board for the CCD (Figure 12).
Figure 12: The circuit board with the current sensor and voltage regulator.
The case for protecting the hardware was created using Catia and a 3D-printer called Makerbot Replicator 2. The material is a PLA plastic.
The two boards were mounted parallel to each other in the bottom of the case with wiring going across both the boards and to the Arduino mounted in the middle plate.
The screen was mounted on the lid of the case. To the screen a special mount plate was created to make mounting the screen on the lid available with custom made buttons.(Figure 13) Connections for the SRG were mounted on the lid and marked for current measurement and for connection to the EGR-valve (Figure 15).
Connections to the access of the software were added on the side (Figure 14).
Figure 13: Catia 3D plot.
Figure 14: Case from the side with USB connector to change the software if necessary.
Figure 15: Top view of case with EGR and voltage connectors and buttons to modify the LCD.
5.2 Software design
The software is compatible with the circuit board with I/O connections, where the microprocessor can both read the actual control signal and create one.
By creating a mimic of the original control signal with the circuit board its possible to control and modify the control signal with the microprocessor.
There are a few signals that are depending in which position the EGR valve will take.
These signals are all PWM signals with different frequency and duty cycle.
First is the dither signal that will reduce friction on the EGR valve, this signal is an 100 Hz PWM with 50% duty cycle that never changes. The dither signal gets superimposed on the dc level created by the low-pass filter, which in turn makes the main comparator output switching (Figure 16).
Figure 16: The main comparator, which have a switching output to control the Low-side switch [Appendix A].
The enable signal is also a 100 Hz PWM with different duty cycle depending on current flow through the valve.
This signal is synchronized with the dither signal and goes low when dither does for a mapped value (Figure 17). The enable signal controls the fast decay, which turns both Mosfet switches low under a time period.
Figure 17: Dither versus enable signal, the enable signal changes depending on demandlevel.
The current flow through the valve is depending on the demand value signal which is a 2kHz PWM signal with duty cycle from 0-100 %. This signal operates through an low-pass filter (Figure 18) and becomes an DC level that affects the low side output which in turn regulates the current through the valve.
Figure 18: Low-pass filter, that becomes a DC level which affects the Low-side output [Appendix A].
The last signal that controls the circuit board is a fault reset signal, which operates a safety latch on 1MHz PWM 50% duty cycle. The latch detects over currents, when over current occur the latch turns of both high and low side outputs to the valve (Figure 19).
Figure 19: Over current latch, detecting over currents [Appendix A].
By changing the demand value its possible to modify the control signal and simulate different types of malfunctions. When modifying the control signal its possible to position the EGR valve at any wanted position. With this option its possible to simulate a stuck valve at any position and with this operation the valve won't change its position at any time.
The Hall effect sensor, ACS712, measure both DC and AC current, but for AC current a more complex software function had to be made to get the exact RMS current. Because of special current form of the control signal, the current has to be measured through fixed time period to get an accurate current measure. The current through the sensor is the control signal from their ECU that controls a dummy valve.
By measuring the dummy valve, a specific demand value will get the same current through the real valve and by this be able to identify a change in position and create a Slow-response.
There are two different types of Slow-responses the circuit can create, delay in time when a new position given or delay in form of a current ramp function.
The delay in time function works as when a new position of the valve is measured the desired delay value will operate and then the new value will position the valve.
To create a Slow-response by using an ramp function instead, will increase the current value over time with a simple linear function.
All this functionality can be adjusted by the user with a graphical user interface. The graphical user interface is build up with different menus for delay functions both delay in time and ramp as well as a stuck valve. In these menus it’s possible to choose delay time and a value to simulate a stuck valve. It is easy to use and to adjust the Slow-response. When a new setting is wanted it’s easy to reset and start the process again.
The result is displayed by using an oscilloscope that can tell the difference between the ECU control signal and the CCD. The ECU signal is connected to the SRG for current measurement and then to a dummy valve. The output signal from the SRG is a modulated signal from the ECU creating a Slow-response (Figure 20). By creating a Slow-response one can evaluate the accuracy of re-making of the signal. The figures content values from the original ECU represented as yellow and from the CCD represented as green.
Figure 20: The setup used to test the SRG, the signals that is measured is to the EGR-valve and to the Dummy-valve.
5.2.1 Current measurement
The function creates an RMS value from the samples given from the analogRead function. Samples are read over a fixed sample interval, which is 50ms and then converted into an RMS value of the current, which can be mapped to a demand value to decide it’s positioning (Figure 21) [Appendix A and 18].
Figure 21: ECU control signal (yellow) versus the CCD (green). The output is in ampere over time.
By referring to the figure above one can monitor that the control signal from the CCD is not 100% accurate but having a mismatch on the current by approximately 5%
through all measuring. The mismatch is the same size for 24 and 12V, even if the signal is a bit faulty, it is considered good enough to do the job and create a slow response on the valve.
5.2.2 Stuck valve
By simulating a stuck valve, the demand value gets a fixed value from the graphical user interface. This value can be 0-170 depending on what position the user wants to put the valve in. With this option it's possible to simulate a fully closed valve as well as a fully open one. Once a value is selected the valve won't change position during operation, this way it's possible to simulate a valve being stuck in it's positioning (Figure 22) [Appendix A and 19].
Figure 22: Using stuck, the valve won’t change position. The ECU (yellow) CCD (green), the output is ampere over time.
The figure shows a stable value of the control signal, which won't change position.
By zooming in on the signal one can examine that the current behaves, as it's intended to. By monitoring the superimposed dither on the signal one can examine that the CCD signal has a smoother behavior compared to the original, which results in a more stable current period then the original from the ECU (Figure 23).
Figure 23: Close in on the control signals; the CCD signal is a replica of the ECU signal. The ECU (yellow) CCD (green), the output is ampere over time.
5.2.3 Delay in time
To simulate a Slow-response by creating a delay in time when a new position to the valve is given. By recognizing from the current sensor when the position is changed a delay in time is given and a Slow-response is created. This function operates through the whole simulation and as soon as the position from the ECU is changed a slow valve is operating (Figure 24).
Figure 24: Slow-response by 24V and 2 seconds delay in time. The ECU (yellow) CCD (green),
the output is ampere over time.
By referring to the figure one can examine the Slow-response in the form of a delay in time by a 24V supply. The settings for the delay time in this figure were 2 seconds, which in fact was approximately 2.05 seconds (Figure 25).
Figure 25: Slow-response by 12V and 2 seconds delay in time. The ECU (yellow) CCD (green),
the output is ampere over time.
The behavior of the signal when using 12V supply is similar to the 24V. The settings for delay in this figure are 2 seconds.
Since the EGR valve is a linear load, a linear map function is used to position the valve depending on the current measurement. When the position is changed the actual delay is given.
A function generates a duty cycle to the demandlevel depending on what position is given. The current through the valve represents the position [Appendix A].
5.2.4 Ramp delay
Ramp delay has the same principals as the delay in time function, but instead of a delay in time when next position is given, a linear function increases the control signal over time. This function represents a ramp delay instead of a delay in time (Figure 26 and 27).
Figure 26: Slow-response by 24V and 2 seconds ramp function. The ECU (yellow) CCD (green), the output is ampere over time.
Figure 27: Slow-response by 12V and 2 seconds ramp function. The ECU (yellow) CCD (green), the output is ampere over time.
By monitoring these figures one can examine the behavior of the control signal using a ramp function. Instead of a delay in time the value of the control signal is increasing over time. The time for the Slow-response is approximately 2 seconds for 24V supply and 2 seconds for 12V supply. The accuracy for the signal is the same as for the delay in time functionality.
The function perform a linear operation, y = kx + m, where m is the position at this moment, y the wanted position and x is the time delay. K is the actual ramp value that increases by one delay through the loop [Appendix A].
5.2.5 Graphical user interface
The result of the graphical user interface is that it's easy to use and to perform the different settings. The graphical user interface is built on a small amount of submenus. The different menu operates depending on which button is pushed. By pushing right or left in the beginning a Slow-response will affect the control signal, by pushing up the valve will operate in a stuck value and not perform position change during operation (Figure 28).
Figure 28: Graphical user interface flow on LCD screen.
Using an oscilloscope and looking at the different output signals of the dummy-valve and the existing actual valve one can verify that an actual error has been created in form of a Slow-response. In comparison by measuring the difference and analyse the result. Looking at what could delay or change the outcome of the project a risk analysis has been created. Making sure that the specification is met a specification of requirements has been made.
6.1 Slow-response as a software created error.
The creation of a Slow-response was considered a fairly straightforward concept of error creation. The implementation in software could make the approach to the problem a lot easier then creating it in a hardware fashion. In the results section both a ramp function and a delay in time could be implemented using timers and simple linear equations. With clear information regarding mapping of delays in the switching timings provided by Volvo functions for control of the CCD could be mapped and configured easily with the programming language used. The programming is considered to be easy for even novice users of the language and maybe it’s not complex enough for the best solution to the problem itself. However the results show that the creation of a Slow-response function in regards to both the delay and ramp function are possible.
The biggest concern in the regulation is still considered to be the sensor readings and the resolution not being high enough. The results of using the "stuck valve" function shows that using the valve in this fashion, by replicating the positioning of the valve driven by the ECU shows a relative small error in its positioning which would indicate an error in the current sensing and not an error in the hardware or the demanded value from the software (Figure 29).
Figure 29: Close in on the control signals, the output is ampere over time. The ECU (yellow) has an output of 556 mA, CCD (green) has an output of 546 mA, which is an error of approximately 2%.