Executive Summary - Interdisciplinary Capstone Design @ UI



Design of an Interface Between the Microsquirt Engine Controller and the 2003 FLHT Harley-Davidson MotorcyclePrepared for: ECE 482By: Justin Clarkjustin.clark@vandals.uidaho.edu Mat Stein stei6494@vandals.uidaho.edu Larry Sawhilllarrysawhill@vandals.uidaho.eduExecutive SummaryAre team has continued designing an electronic control unit (ECU) that allows user access to timing parameters for the control of fuel injection and ignition systems of Harley Davidson motorcycles. As vehicle customization trends continue to develop, so does the need for proper tuning. The use of aftermarket performance upgrades often leads to reduced engine life and/or an increase in harmful emissions. This is frequently the result of neglect regarding the proper tuning of fuel injection and ignition timing within automobiles and motorbikes alike. With the ability to tune the parameters affecting electronic fuel injector (EFI) control, performance drops generated by vehicle modification can be compensated for. However, current industry-standard EFI systems need to be replaced by systems that allow access to said parameters.This report outlines the design of an EFI system that allows access to timing parameters for a 2003 FLHT Harley-Davidson motorcycle. Enclosed is a discussion of circuit elements chosen to require minimal power – allowing power by use of the bike’s 12 V battery – while maintaining a relatively small board size – restricting container size to that of the stock ECU – thus providing an easy-to-use and cost effective solution.Table of ContentsIntroduction _________________________________________________________________Page 4Background __________________________________________________________Page 4Problem Definition __________________________________________________Page 4Project Schedule _____________________________________________________Page 6Team Member Responsibilities _____________________________________Page 7Design _________________________________________________________________________Page 7Concepts Considered & Selected ____________________________________Page 7Selected Design _______________________________________________________Page 10Future Work __________________________________________________________Page 13References ____________________________________________________________________Page 13Appendix ______________________________________________________________________Page A1Microsquirt Module Silkscreen ______________________________________Page A1Microsquirt Module Processor ______________________________________Page A2Microsquirt Module Sensors _________________________________________Page A3Microsquirt Module Ignition Input __________________________________Page A4Microsquirt Tach Output _____________________________________________Page A5Microsquirt Power Supply ___________________________________________Page A6Microsquirt CAN Circuit ______________________________________________Page A7Microsquirt Serial Circuit ____________________________________________Page A8Microsquirt Connector _______________________________________________Page A9Microsquirt Ignition and Injector Drivers ______________________Page A10Microsquirt Fast Idle & Fuel Pump Circuits ____________________Page A11Interface Schematic ______________________________________________Page A12Interface Layout __________________________________________________Page A13Breakout Board ___________________________________________________Page A14– Introduction 1.1 – Background Many vehicle owners have the urge to modify their vehicles to meet their expectations. In this day and age, doing so requires altering control parameters within a vehicle’s engine control unit (ECU). The ECU monitors and controls parameters that guide engine performance and operation. Such parameters include engine temperature and revolutions-per-minute, both of which are directed via fuel maps located within the ECU’s memory.Given most owners’ unfamiliarity with the nuances of electronic engine control, modifying these settings can reduce fuel efficiency and engine life as well as increase harmful engine emissions. Given the inability to easily manipulate variables within the stock ECU, a need has developed for a custom engine control unit with an easily configurable interface for electronic fuel injector (EFI) control.1.2 – Problem DefinitionThe goal of this project is to design a custom engine controller that will enable the end-user to adjust the parameters to suit their needs and maintain reliable performance at low cost. The controller will provide adaptive fuel and timing control that will be consistent over varying equipment and operating conditions. The MicroSquirt controller was chosen as an intermediate goal to enable the transition to a custom controller due to its relative low cost and open source code. To run the MicroSquirt, the correct settings, such as: 1. injector timing and duration; 2. coil timing and duration; 3. referencing off the correct cylinder; 4. spark advance table; 5. volumetric efficiency table; 6. air/fuel ratio table; must be programmed into the MicroSquirt software. These settings have been attained to a degree such that we were able to run the engine with the stock controller running one cylinder and the MicroSquirt running the other. The goal of running the engine alone with the MicroSquirt will soon be accomplished. Once it is reached, the custom board will be connected to the MicroSquirt and the control will slowly transition to the custom board. The design of our custom engine controller (also known as the interface board) has been completed (Appendix A12) with the physical layout and construction beginning next semester. This board has been designed to communicate with MicroSquirt via an Atmel AT90CAN128 microcontroller, and to communicate with the instrument panel via the J1850 bus. It was then necessary to place a CAN transceiver along with the Atmel AT90CAN128 and a J1850 transceiver on the custom board. The physical dimensions of this board must be small enough to mount in the same location as the stock engine control unit. Therefore, the amount of circuitry and the placing of components must be carefully considered. The board must also be able to handle the high voltage output from the reluctance sensors. 1.3 – Project Schedule1.4 – Team Member Responsibilities Justin Clark – Project Documentation, Configure Microsquirt, ProgrammerMat Stein – Leader, Board schematic & Layout editor, TimekeeperLarry Sawhill – Web Designer, Configure Microsquirt, Communication2.0 – Design 2.1 – Concepts Considered & SelectedFor engine controllers, our team only considered using the Microsquirt due to the fact that it was part of the project from the previous team who worked on this project. Since this was a continuation of previous work, we chose not to deviate much in order to take advantage of as much from their work as we could. This turned out to be a good choice due to the amount of useful information and support available for the Microsquirt. Due to problems the previous team experienced, we chose to go a slightly different route with our project. We decided to build a board that will allow a seamless connection of the Microsquirt to our motorcycle rather than build the engine controller from scratch. We were hoping this would solve some of the problems experienced by the previous team. There are two flavors of the Microsquirt; The regular Microsquirt, or the Microsquirt Module. The regular Microsquirt is meant to be wired into a vehicle with no additional hardware attached [2]. This sealed architecture does not allow easy mounting of the Microsquirt into our own enclosure with our interface board. For this reason we chose to use the Microsquirt Module. It is a single board with a 50-pin header used to plug into another board [1]. This gives us the ability to add other features. This module board, however, does not include the ignition MOSFET’s, so we must include these on our board [1]. This will not be a problem since we plan on eventually rolling that functionality to our board in the future. For the microcontroller on our interface board, we first considered using the same microcontroller that is used on the Microsquirt because it, in future projects, will take on the responsibility of running the motorcycle independently. Another option was to use an Atmel AVR processor due to its ease of programming and testing. The Atmel was also an attractive choice because our sponsor commonly uses AVR processors for other projects and has the equipment in place for working with them. Atmel offers several automotive grade processors that would be equivalent to the processor the Microsquirt uses including on-chip CAN and RS232 transceivers. We chose to use the Atmel AVR platform due to its ease of programming, as well as the availability of programming hardware already available. Communication is an important aspect of this project considering it is an interface board to allow two different interfaces to connect. The instrument cluster on the Harley-Davidson motorcycle obtains its data via a J1850 communication link to the stock engine controller. For this reason we had to come up with a solution that will send this data to the stock instrument cluster so all information is still properly presented to the rider. To obtain this information, we had two options. The first option would be to use the RS232 port on the Microsquirt, which is the same one used to program it. This would be a little more complicated because we would have to still allow our users access to this port for tuning the Microsquirt to their custom configuration. The second option was to use the Microsquirts CAN interface, which is not being used for anything else. Not all information needed to send on the J1850 bus can be obtained from the Microsquirt, such as the RPM data. This data is obtained by the stock ECU by a reluctance sensor located in the drive train. We will use this same sensor to obtain this information. We need to take into account the possible voltages this sensor can return, and take precautions by clamping this input when bringing it onto our board.Our module will consist of our interface board with the Microsquirt Module plugged into it. The bikes inputs and outputs will plug into our interface board through the stock connector located on our board. All motor control input and output will simply pass through our interface board for now to the Microsquirt for control. We will intercept the J1850 signals and interpret the communication with the rest of the motorcycles sub-systems. We will obtain the information needed to send on the J1850 bus by communicating with the Microsquirt through its CAN interface. Our board will be powered off of the power supply located on the Microsquirt for now, but will include a clone of this power supply printed on board for future use as a standalone engine controller. In order for our project to be useful, we must first be able to run the motorcycle with the Microsquirt. This means a great deal of work needs to be done in setting up the Microsquirt to run this bike. Due to the fact that the Microsquirt is designed to be compatible with many different engine designs, which has the side effect of having many different combinations of settings. None of us being experts at four stroke engines, this was the biggest learning curve for us. With the help of our sponsor and the documentation provided by Bruce Bowling and Al Grippo[1] we were able to narrow the major configurations down and begin to properly set up the Microsquirt. 2.2 – Selected DesignThe selected design and architecture of our system is fairly simply. It consists of the Microsquirt Module plugging into our interface board. The motorcycle then plugs into our interface board which routes the I/O to and from the Microsquirt for engine control. Since the Microsquirt Module does not have drivers to run the ignition coils, our board will contain the MOSFET’s to do this. Our interface board will communicate with the Microsquirt Module to obtain engine characteristics needed for display on the stock instrument cluster. This communication to the instrument cluster is done through the motorcycles J1850 bus. This is accessed through the stock engine controllers connector. The microcontroller we chose for our interface board was one that would be powerful enough to run as a standalone engine controller. We selected the top end automotive Atmel AVR AT90CAN128 processor for its large amount of memory for programming, its amount of I/O, as well as its on-chip serial and CAN transceivers [4]. This processor is obviously overkill for our current design, but will make things easier for future work in migrating engine control onto our board. It is also a 5 volt processor with analog to digital inputs ranging from 0 to 5 volts. This meets the requirement of the motorcycles sensors being 0 to 5 volts, so no level conversion will need to be done. For CAN communication, our processor does the necessary work of formatting the messages, but we needed to add a level converter to properly talk on the CAN interface at voltage levels that were compatible with CAN. For this task we selected the Microchip MCP2551 for its availability as well as its compatibility to the Microsquirt [5]. The Microsquirt uses the same IC, so we thought it best to use the same device. For the J1850 transceiver, selection seemed fairly limited due to the fact that it is an old protocol, so we selected the Freescale MC33390. This was mainly due to the fact that it was the only J1850 transceiver that seemed to still be available for purchase. The Microsquirt itself has numerous settings that much be set correctly to operate. We began by going through the configuration section of the documentation posted by Bruce Bowling and Al Grippo [1]. The first round of steps consist of setting up the general fuel settings. This involves setting the cranking RPM, which we set to 500RPM, and setting the Lag Factors for the sensor inputs. This is used to smooth the quickly changing inputs being sampled. We left these settings to default for now as suggested by the documentation, we can later tune these for smoother running. The next step was to characterize the sensors of the bike so the Microsquirt knows what voltage equates to what real world value. This is done by the sensor calibration menu which is done for us for the throttle position sensor. We obtained the values for the manifold air pressure sensor, the intake air temperature, and engine temperature sensors from the Harley-Davidson Electrical Diagnostic Manual [3]. We also disabled many extra devices such as the idle air control for now until we have a running engine to tune it with. We then set up the fuel injection control in the Microsquirt to operate with one fuel squirt per engine cycle using a simultaneous injector staging. This basically means that for each engine cycle, we will squirt the fuel twice. In order for this to work we have to cut the amount of fuel normally delivered in half. It also means that we have a wasted spark. This is okay because no damage is done by having the spark plug ignite during the exhaust stroke. This setup was recommended by Bruce Bowling and Al Grippo on their configuration page of their website [1]. We then began characterizing our volumetric efficiency and spark advance tables. We obtained a copy of the stock tables from our sponsor and burnt them to the Microsquirt. The next ignition setting that must be set is timing. This involves knowing what your engine is doing. The 88 cubic inch Harley Davidson engine is an odd fire engine with the second cylinder 45 degrees offset from the first running on a single crank pin. The number of skip teeth in this menu is a course adjustment of how many teeth after the missing teeth is top dead center for cylinder one. For us, this is 11 teeth minus 18 degrees. So we enter 11 in skip teeth and -18 in trigger offset, which acts as a fine adjustment. We then set the ignition to trigger off the rising edge of the ignition capture and using a “going high” inverted spark output. This is due to the way the ignition drivers are wired, it actually pulls the channel low to start charging the coil and goes high again to spark. With these settings, keeping the rest at default, we attempt to start the engine with no success. We are still in the process of working with Al Grippo on the Microsquirt Forums to resolve our issues and get the engine running [1]. The Microsquirt Module hardware can be seen in the Appendix section of this report, as well as the preliminary design of our interface board. On the board layout of our interface board, you can see how the Microsquirt Module is to attach. Note the layout for the breakout board we are using which was designed from the previous team working on this project, also located in the appendix. Finalizing this design as well as testing the interface hardware is a task left to next semester. Running the Motorcycle is a task which will be done as soon as possible, hopefully before next semester. 2.3 – Future WorkIt is the intent of this team that continued work be performed regarding a custom ECU for the 2003 Harley-Davidson FLHT. While well under way, a significant amount of work is still needed to bring this customizable ECU to life. Continued efforts by both this team and teams to come will produce the customizable ECU needed to optimally upgrade modern, computer-controlled vehicles.3.0 – References[1]. B. Bowling and A. Grippo, “Introduction to the MicroSquirt Module EFI controller,” 2009. [Online], Available: [Accessed: Jan. 26, 2010].[2]. B. Bowling and A. Grippo, “Introduction to the MicroSquirt EFI controller,” 2005. [Online]. Available: [Accessed: Jan. 26, 2010].[3]. “Touring Models 2003 Harley-Davidson,” Electrical Diagnostic Manual, Milwaukee: Harley-Davidson Motor Company, 2002.[4]. Atmel Corporation. “8-bit AVR Microcontroller with 128K Bytes of ISP Flash and CAN Controller,” 2008. [Online Data Sheet]. Available: [Accessed: Feb. 22, 2010].[5]. Microchip Technology Inc. “High-Speed CAN Transceiver,” 2007. [Online Data Sheet]. Available: [Accessed: Feb 22, 2010].4.0 – Appendix 4.1 – Microsquirt Module Silkscreen4.2 – Microsquirt Module Processor4.3 – Microsquirt Module Sensors4.4 – Microsquirt Module Ignition Input4.5 – Microsquirt Tach Output4.6 – Microsquirt Power Supply4.7 – Microsquirt CAN Circuit4.8 – Microsquirt Serial Circuit4.9 -- Microsquirt Connector4.10 – Microsquirt Ignition and Injector Drivers4.11 – Microsquirt Fast Idle & Fuel Pump Circuits4.12 – Interface Schematic4.13 – Interface Layout4.14 – Breakout Board ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download