Silicon ChipHow To Get More Than 100MPG From A Toyota Prius - February 2008 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Microcontroller projects can be simple and complex at the same time
  4. Feature: How To Get More Than 100MPG From A Toyota Prius by Jim Fell
  5. Review: ATTEN ADS7062CA Digital Storage Scope by Mauro Grassi
  6. Project: UHF Remote-Controlled Mains Switch by John Clarke
  7. Project: UHF Remote Mains Switch Transmitter by John Clarke
  8. Project: A PIR-Triggered Mains Switch by Jim Rowe
  9. Project: Shift Indicator & Rev Limiter For Cars by John Clarke
  10. Feature: PICAXE VSM: The PICAXE Circuit Simulator, Pt.2 by Clive Seager
  11. Vintage Radio: DC-to-AC inverters from the valve era, Pt.2 by Rodney Champness
  12. Project: Mini Solar Battery Charger by Branko Justic
  13. Advertising Index
  14. Book Store

This is only a preview of the February 2008 issue of Silicon Chip.

You can view 34 of the 104 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Items relevant to "UHF Remote-Controlled Mains Switch":
  • PIC16F88-I/P programmed for the UHF Remote Mains Switch Receiver [1010208A.HEX] (Programmed Microcontroller, AUD $15.00)
  • PIC16F88 firmware and source code for the UHF Remote Mains Switch receiver [1010208A.HEX] (Software, Free)
  • UHF Remote Mains Switch receiver PCB pattern (PDF download) [10102081] (Free)
  • UHF Remote Mains Switch receiver front panel artwork (PDF download) (Free)
Items relevant to "UHF Remote Mains Switch Transmitter":
  • PIC16F88-I/P programmed for the UHF Remote Mains Switch Transmitter [1020208A.HEX] (Programmed Microcontroller, AUD $15.00)
  • PIC16F88 firmware and source code for the UHF Remote Mains Switch transmitter [1020208A.HEX] (Software, Free)
  • UHF Remote Mains Switch transmitter PCB pattern (PDF download) [10202081] (Free)
  • UHF Remote Mains Switch transmitter front panel artwork (PDF download) (Free)
Items relevant to "Shift Indicator & Rev Limiter For Cars":
  • PIC16F88-I/P programmed for the Shift Indicator & Rev Limiter For Cars [0510208A.HEX] (Programmed Microcontroller, AUD $15.00)
  • PIC16F88 firmware and source code for the Shift Indicator & Rev Limiter for Cars [0510208A.HEX] (Software, Free)
  • Shift Indicator & Rev Limiter for Cars PCB patterns (PDF download) [05102081/2] (Free)
  • Shift Indicator & Rev Limiter for Cars lid artwork (PDF download) (Panel Artwork, Free)
Articles in this series:
  • PICAXE VSM: The PICAXE Circuit Simulator! (January 2008)
  • PICAXE VSM: The PICAXE Circuit Simulator! (January 2008)
  • PICAXE VSM: The PICAXE Circuit Simulator, Pt.2 (February 2008)
  • PICAXE VSM: The PICAXE Circuit Simulator, Pt.2 (February 2008)
  • PICAXE VSM: It’s Time to Play; Pt.3 (March 2008)
  • PICAXE VSM: It’s Time to Play; Pt.3 (March 2008)

Purchase a printed copy of this issue for $10.00.

How to get more 100 MPG from a Toyota Prius By Jim Fell The Toyota Prius has been the most successful and popular hybrid car produced so far but it has one weakness – it cannot go very far on battery power alone. This article tells how a large Lithium-ion battery was added to a Prius, giving it the ability to drive much further on battery power, thereby greatly increasing fuel economy. I first converted a car to purely electric operation in 1999 and after several improvements, particularly to the battery pack, the car was moderately successful. I was generally able to travel about 80km on a charge and considerably more if care was taken. The car completed the London to Brighton Electric Vehicle (EV) Run in 2005 and 2006. Unfortunately the Achilles heel of any EV is still the battery pack. With low-cost lead-acid batteries the range is severely limited and a long crosscountry run must be planned like a military campaign. There must be charging points every 80km or so and you need to stop for a couple of hours at each to restore some charge. In 2005 I started looking at the hybrid cars that were available and the Toyota Prius in particular. The interesting thing about the Prius was that it could run for a limited period as an EV, however with the NiMh 10  Silicon Chip battery pack the electric motor can take the car only about 1.6km at less than 50km. I wanted to reduce the fuel consumption of the Prius from 60 to 100 MPG, a massive cost saving, by the addition of a large Li-ion batterypack. This article describes how I achieved this using E-blocks and Flowcode as a control system. How it works Fig.1 shows how the Toyota Prius works. Essentially it is a normal car Fig.1: a much simplified diagram of the Toyota Prius drivetrain – essentially a normal car with an electric motor/generator added. siliconchip.com.au than with the addition of an electric motor/ generator in the drive train. When the driver needs to slow down, the brake pedal puts the electric motor into generator mode which charges the battery up. Conversely, at low speeds the electric motor is used to assist the conventional petrol engine to decrease fuel consumption. When I started the project a few groups in the USA were experimenting with supplementary battery packs to increase the range of the Prius. The Toyota, along with most modern cars, has a very complex electronic control system. The part that deals with drive and battery management uses CAN bus. The operation of the drive amongst other things is based on the State Of Charge (SOC) of the battery pack. If the SOC is low, the management system will recharge when descending a hill, braking or use any surplus energy from the engine. If the SOC is high, then the battery pack will be used to drive the car at low speed or to supplement the engine when driving, climbing hills or overtaking. In practice, the SOC is varying continuously, dependent upon traffic and driving pattern. I saw two main problems in adding a large battery pack in parallel with the existing NiMH battery. The first was: what would the reaction be from the Toyota management system if the existing battery started receiving siliconchip.com.au charge from an outside source – the second battery? The second problem was how to control this external charging source. The control system needed to be such that the existing batteries’ SOC could be manipulated so that the Toyota management system “saw” a high SOC and used the battery instead of the engine wherever possible. The first problem was simple. I connected my external charger across the Toyota battery pack and charged the pack. The SOC increased up to fully charged (about 80% SOC). The battery manager took into account the pack temperature and voltage and computed the SOC quite happily. So solving the second problem – transferring energy to the Toyota’s battery – was the main area of work. Circuit details I was lucky enough to have acquired Fig.2: graphical representation of the display unit. February 2008  11 12  Silicon Chip siliconchip.com.au Fig.3: block diagram/circuit of the modified Toyota Prius. The DC/DC converter was required because the author’s Li-Ion battery pack was some 40V less than the NiMH pack standard in the Prius. A word of warning: these batteries do pack an enormous amount of energy at dangerous voltage. Getting across these can kill! The dashboard is standard Prius but it has the addition of the multiprogrammer and CAN unit (with LCD readout on the front) in the DIN space where a CD player, cassette, etc would normally be located. a set of 56 Thunder Sky Li-ion cells which I could use as a second battery. These are connected in series to give a around 210V DC and more than 50Ah (ie, 10.5kWh). The Toyota’s NiMh battery produces around 240V DC so I knew that I would need an inverter to allow the additional battery pack to charge the Toyota’s own battery. In addition, I wanted to be able to recharge the Li-ion batteries overnight so I needed a recharge circuit. I also needed a circuit to control the flow of charge into the Prius’s own battery. Fig.3 shows the block diagram of the system. The extra battery pack was con- nected to the existing pack was by using four single pole high voltage power contactors and a high power DC/DC converter. The DC-DC converter is actually a battery charger which has a bridge rectifier as the first component to convert the normal AC mains input to DC. The DC-DC onboard converter is used to charge the Li-ion battery if required but that’s another story. The converter had a 2-stage selectable output. In high the converter would try to lift the existing pack to a high voltage and thus a high SOC. In low this voltage was lower and allowed the existing pack to lose charge letting the SOC% to fall back. The output of the DC-DC converter is controlled by switching in one of two sets of points. When the battery is being charged overnight it is isolated from Toyota circuit by a second set of points. The NiMh to Li-ion battery contactors would be energised the whole time during vehicle operation, until the extra battery pack was fully discharged and no longer able to contribute – at which time the batteries were disconnected. Controlling this system meant hack- Before and after: the Toyota Prius with standard boot (left) and after the addition of the 200V Li-Ion battery pack. As you can see, a fair amount of boot space is sacrificed for the battery upgrade. At the extreme left (green box, almost hidden) is the inverter. siliconchip.com.au February 2008  13 The DC-DC inverter is actually a commercial battery charger with a two-stage selectable output. Because it has a bridge rectifier “up front”, it can also be pressed into service to charge the Li-Ion pack from the mains, if required. ing into the Toyota CAN bus. The car has many devices on the CAN bus and fortunately they all broadcast their data onto the bus. The devices that need the data read it and react accordingly. As far as I am aware, no device solicits information from another device. What was needed was a custom CAN bus device that could read parameters on the system and move charge into the existing battery pack at the right time. At this time I read an article in Elektor on Flowcode (February 2006).This referred to a CAN bus system consisting of two nodes of a network. From past experience with other bus systems it can take a long time to get a system up and running. I have some experience with Microchip PIC devices and there is a wealth of information on their website concerning CAN bus. The data sheet on the CAN interface chip (MCP2515) runs to 81 pages. I ordered the Flowcode CAN system and saw immediately that all the hard work of using the CAN bus had already been done. Setting up the parameters for the bus and reading specific messages is carried out by prewritten macro commands. Getting the communication between two points was very straightforward. In order to monitor SOC in the Prius, a Kvaser Light CAN to USB unit was used to look at the traffic on 14  Silicon Chip the CAN bus. There is a convenient OBDII connector with 12V power located just under the steering wheel in the Prius. There is some documentation regarding the messages on the bus on the internet. The format of the data varies and a bit of manipulation is needed to convert the data to a form which can be displayed on an LCD panel. With some idea of what I wanted initially from the bus, I set up a system in the workshop which mimicked the function of the CAN bus in the Prius: one of the E-blocks systems continuously transmitted an SOC message in the same format as the Toyota message while the other system showed the system parameters on an LCD. This was used in the development and commissioning phases of the project on the bench and fitted into the radio compartment of the car. The display shows Battery Current, Battery Voltage (charging/discharging), State of Charge %, Charge Current Limit, Discharge Current Limit, Max Battery Temperature and Min Battery Temperature. In this way the whole system could be built up and tested away from the car. The second stage of the program used only one of the items (SOC%) and gave one of two outputs, high or low, depending on the value of SOC. In order to maintain the existing battery SOC at around 70%, a pair of decision instructions in Flowcode put on the low output if SOC% >70 (and disconnected the Li-Ion cells from the charge circuit) and put on the high output if SOC%<65 (which switched the Li-ion cells into the circuit and charged the NiMh Prius battery). In each case the opposite output would be turned off. One additional output was used to drive a relay to then energise the four main contactors. This output Inside the E-blocks controller/CAN bus/display unit. These are commercial modules adapted as required for use in the Prius. siliconchip.com.au The Software The two packages used by the author in the development of the Prius and mentioned in this feature, “Flowcode 3” and C “for 16 Series PIC micro” are available from Matrix Multimedia Ltd in the UK. Here’s a close-up of the Prius electronic dash, with the consumption (99.9 MPG) highlighted. It’s actually better than that: 99.9 is as high as the Prius dash goes! would come on five seconds after the system powered up and would go off in response to the additional battery pack becoming discharged. There was no need for a display on the final controller and this now lives in an enclosure in the boot next to the extra batteries and power contactors. As noted above, the extra battery pack is a set of 56 Thunder Sky Li-ion cells. These cells are about two years old and vary in capacity, the worst being about 50Ah at 20°C when discharged at 25A. The worst cell defines the pack capacity so with the current limit set to 25A the car will run for two to three hours in assist mode until the battery pack switches off. The car then runs in normal hybrid mode as before. The drawback of the system is that these batteries are very expensive, and physically large and heavy. The batteries also take up much of the The E-blocks used are also available from Matrix Multimedia. Contact Matrix Multimedia via their website, www.matrixmultimedia. com boot space, as you can see in one of the photos. Conclusion In summer the car will return about 60 MPG (4.7l/100km) in normal hybrid mode and about 100 MPG (2.8l/100km) in battery boost mode. Unfortunately, the Prius’s readout only goes to 99.9 MPG so you cannot tell how well it’s really doing. Another job for Flowcode will be to read the instantaneous fuel flow from the bus along with the speed and compute the real fuel consumption. Further gains can also be made by reading the bus speed signal and pulsing a relay when the speed drops below 50km/h to force the car into EV mode. The relay would be pulsed again on the speed rising to 50km/h to take the car out of EV mode; that is SC another job for Flowcode. REFERENCES: A screen grab of various “Flowcode 3” flowcharts used. This software is designed for easy development of PICmicro-based systems (see above right). siliconchip.com.au Elektor February 2006 Easy CAN Microchip www.microchip. com Plug in Prius Wiki group at www.eaaphev.org/wiki/Main_Page Follow links to plug in hybrids then Prius. February 2008  15