Please visit the Conversion Interest page to help us gauge DIYers interest!

We Support Net Neutrality, please visit battleforthenet.com and savetheinternet.com and wikipedia.org/wiki/Net_neutrality for more information.

PHEV Standards

From EAA-PHEV

Jump to: navigation, search

Contents

Proposed standards for use in the PHEV industry.

[edit] PHEV Status on CAN bus

This is a proposal for a standard way of adding the status of a PHEV system onto the vehicle's CAN bus.

The purpose of doing so if to allow a data logger connected to the vehicle's CAN bus to read the true and complete status of the PHEV system. Even if the PHEV system reports false data to the vehicle in order to achieve a certain performance, the these messages report the actual data.

The purpose of setting a standard is so that manufacturers of data-logging equipment may easily develop products that can reliably read the PHEV state, regardless of PHEV vendor.

[edit] Physical Layer

The Physical Layer (such as baud rate, wiring...) is whatever the vehicle already uses.

[edit] PHEV messages

These messages are used:

  • PHEV System Status
  • Charger Status
  • Overall Battery Status (4 messages)
  • Scanned status of individual blocks

Up to 255 additional messages may be used

  • Status of each individual block

[edit] Indentifiers

Unfortunately, car manufacturers do not follow a common scheme when assigning message identifiers. Therefore, there is always a risk that whatever numbers are chosen for identifiers may not be available in a particular HEV. As of this writing, only the identifiers used in a Prius and on a Escape HEV are known.

Higher numbers are preferred, as that results in a lower priority, since these data are not critical to the function of the vehicle.

The following identifiers were chosen:

  • 6F0h PHEV System Status
  • 6F8h Charger Status
  • 6FCh Overall Battery Status - voltage
  • 6FDh Overall Battery Status - temperature
  • 6FEh Overall Battery Status - resistance
  • 6FFh Overall Battery Status - charge
  • 700h Scanned status of individual blocks
  • 701h Detailed status of block 1 (optional)
  • 702h Detailed status of block 2 (optional)
  • ...
  • 7FFh Detailed status of block 255 (optional, if existing)


[edit] Data rates

  • The status of the PHEV system and of its battery are of sufficient interest to warrant a reading every 1 s. Faster rates will not add information, and these items do not tend to change any more rapidly than once per second.
  • Information on the individual cell blocks is not as time critical, and it requires more space. Therefore, these data are presented sequentially, at a rate of 1 s per block. So, for example, with a battery with 14 blocks, it will take 14 seconds to report on all the blocks. Assuming a maximum of 255 blocks, it will take 4 and 1/4 minutes to report on all blocks.

Of course, if an implementation presents the data of each block each in its own message, then that information will be available every 1 s.

[edit] Message format

Notes:

  • h = hex value; d = decimal value; b = binary value;

Period
[ms]: How often a message is repeated

[edit] PHEV System Status

ID (hex) Period
[ms]
No of
data
bytes
byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
6F0h 1000 8 Flags (01) - Current (02) Up Time (03)

[edit] Charger Status

ID (hex) Period
[ms]
No of
data
bytes
byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
6F8h 1000 8 Flags (81) Line voltage (82) Temperature (83) Plugged-in time (84) Start DOD (85) End DOD (86) Charge cycles (87)

[edit] Overall Battery Status

ID (hex) Period
[ms]
No of
data
bytes
byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
6FCh 1000 6 Pack Voltage (C1) Min Block Vtg (C2) Min Vtg Block # (C3) Max Block Vtg (C4) Max Vtg Block # (C5)
6FDh 10000 6 Air Temperature (D1) Avg Temperature (D2) Min Block Tmpr (D3) Min Tmpr Block # (D4) Max Block Tmpr (D5) Max Tmpr Block # (D6)
6FEh 10000 6 No of blocks (E1) Pack Resistance (E2) 00h 00h Max Block Res (E3) Max Res Block # (E4)
6FFh 10000 8 DOD (F1) Capacity (F2) Total Charge (F3)



1)
2) Battery voltage.

  • 16 bits, signed.
  • Units: 1/64 V (high byte units: 4 V).
  • Range: 0 to 1023 V


3)
4) Depth of Discharge.

  • 16 bits, signed.
  • Units: 1/64 Ah (high byte units: 4 Ah).
  • Range: 0 to 1023 Ah


[edit] Scanned status of individual blocks

ID (hex) Period
[ms]
No of
data
bytes
byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
700h 1000 5 Voltage (701) Temperature (702) Resistance (703) Block # (704)


[edit] Detailed status of block n

Notes:

  • Optional
  • 1 < n < 255
  • if more than 255 blocks, bytes 5 through 8 can be used for blocks 256 through 511
ID (hex) Period
[ms]
No of
data
bytes
byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
700h + n 1000 4 Voltage (701) Temperature (702) Resistance (703)

[edit] Notes


01) PHEV system status flags

byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
()


02) Battery current.

  • 16 bits, signed.
  • Units: 1/64 A (high byte units: 4 A).
  • Range: +/ 512 A


03) Up Time: time since last reset

  • 32 bits, unsigned
  • Units: s
  • Range: 0 to 136 years


81) Flags

byte 0 byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7
()


82) Line voltage

  • 8 bits, unsigned
  • Units: Vac
  • Range: 0 to 255


83) Charger temperature

  • 8 bits, signed
  • Units: Degrees C
  • Range: - 127 to + 128


84) How long the vehicle has been plugged-in, or was plugged in the last time

  • 8 bits, unsigned
  • Units: 1024 s (17 minutes)
  • Range: 0 to 3 days


85) Depth Of Discharge when charging was started the last time

  • 8 bits, unsigned
  • Units: %
  • Range: 0 to 100


86) Depth Of Discharge when charging was stopped the last time

  • 8 bits, unsigned
  • Units: %
  • Range: 0 to 100


87) Number of times plugged-in for charging

  • 16 bits, unsigned
  • Range: 0 to 65535


)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)

Personal tools