VW Hybrid Battery Packs: Difference between revisions

From openinverter.org wiki
Jump to navigation Jump to search
(→‎Using Multiple Packs: added some description, needs tidying)
Line 120: Line 120:


== Using Multiple Packs ==
== Using Multiple Packs ==
Currently NO Turn Key solutions exist for using more than 1 pack, however ....
The next release of SIMP BMS (assuming to be V3) shall use a teensy 4 which will have 3 canbuses however this is in the early stages of development.
It could be possible to use 2 sets of SIMPBMS however they would exist on 2 separate can buses, this would not to be easy task to implement.
It could be possible to translate the CAN id's from the second pack by using a can in the middle device and still use a single SIMPBMS <code>however this has never been tested.</code>
This is due to the fact that the can id's outputted from the modules are fixed, the ranges used are from  <code>01B0 to 01CE (432-462). If these CAN id's were translated (from the second pack) using a can in the middle device to id's to a range like 01D0 to 01EE (464-494) a single SIMPBMS could be used as there is an undocumented code allowing for extended id's.</code><syntaxhighlight lang="arduino">
    ///////////////// one extender increment//////////
   
    case (0x1D0):
      CMU = 9;
      Id = 0;
      break;
    case (0x1D1):
      CMU = 9;
      Id = 1;
      break;
    case (0x1D2):
      CMU = 9;
      Id = 2;
      break;
    case (0x1D4):
      CMU = 10;
      Id = 0;
      break;
    case (0x1D5):
      CMU = 10;
      Id = 1;
      break;
    case (0x1D6):
      CMU = 10;
      Id = 2;
      break;
    case (0x1D8):
      CMU = 11;
      Id = 0;
      break;
    case (0x1D9):
      CMU = 11;
      Id = 1;
      break;
    case (0x1DA):
      CMU = 11;
      Id = 2;
      break;
    case (0x1DC):
      CMU = 12;
      Id = 0;
      break;
    case (0x1DD):
      CMU = 12;
      Id = 1;
      break;
    case (0x1DE):
      CMU = 12;
      Id = 2;
      break;
    case (0x1E0):
      CMU = 13;
      Id = 0;
      break;
    case (0x1E1):
      CMU = 13;
      Id = 1;
      break;
    case (0x1E2):
      CMU = 13;
      Id = 2;
      break;
    case (0x1E4):
      CMU = 14;
      Id = 0;
      break;
    case (0x1E5):
      CMU = 14;
      Id = 1;
      break;
    case (0x1E6):
      CMU = 14;
      Id = 2;
      break;
    case (0x1E8):
      CMU = 15;
      Id = 0;
      break;
    case (0x1E9):
      CMU = 15;
      Id = 1;
      break;
    case (0x1EA):
      CMU = 15;
      Id = 2;
      break;
    case (0x1EC):
      CMU = 16;
      Id = 0;
      break;
    case (0x1ED):
      CMU = 16;
      Id = 1;
      break;
    case (0x1EE):
      CMU = 16;
      Id = 2;
      break;
    ///////////////////////standard ids////////////////
   
    case (0x1B0):
      CMU = 1;
      Id = 0;
      break;
    case (0x1B1):
      CMU = 1;
      Id = 1;
      break;
    case (0x1B2):
      CMU = 1;
      Id = 2;
      break;
    case (0x1B4):
      CMU = 2;
      Id = 0;
      break;
    case (0x1B5):
      CMU = 2;
      Id = 1;
      break;
    case (0x1B6):
      CMU = 2;
      Id = 2;
      break;
    case (0x1B8):
      CMU = 3;
      Id = 0;
      break;
    case (0x1B9):
      CMU = 3;
      Id = 1;
      break;
    case (0x1BA):
      CMU = 3;
      Id = 2;
      break;
    case (0x1BC):
      CMU = 4;
      Id = 0;
      break;
    case (0x1BD):
      CMU = 4;
      Id = 1;
      break;
    case (0x1BE):
      CMU = 4;
      Id = 2;
      break;
    case (0x1C0):
      CMU = 5;
      Id = 0;
      break;
    case (0x1C1):
      CMU = 5;
      Id = 1;
      break;
    case (0x1C2):
      CMU = 5;
      Id = 2;
      break;
    case (0x1C4):
      CMU = 6;
      Id = 0;
      break;
    case (0x1C5):
      CMU = 6;
      Id = 1;
      break;
    case (0x1C6):
      CMU = 6;
      Id = 2;
      break;
    case (0x1C8):
      CMU = 7;
      Id = 0;
      break;
    case (0x1C9):
      CMU = 7;
      Id = 1;
      break;
    case (0x1CA):
      CMU = 7;
      Id = 2;
      break;
    case (0x1CC):
      CMU = 8;
      Id = 0;
      break;
    case (0x1CD):
      CMU = 8;
      Id = 1;
      break;
    case (0x1CE):
      CMU = 8;
      Id = 2;
      break;
</syntaxhighlight>

Revision as of 23:52, 10 February 2021

Information on reusing VW Golf/Passat GTE hybrid battery Packs.

Specification Overview

Passat GTE

The 9.9 KWH Passat GTE battery pack contains 96S 28AH Samsung cells arranged in to 4 modules of 24S with a liquid cooled heatsink down the middle.

Golf GTE

The Golf GTE battery pack has a plastic top cover, containing 8.7 KWH Panasonic cells arranged in to 4 modules of 24S with a liquid cooled heatsink down the middle.

Disassembly

I Can Not understate the importance of Insulation when dealing With High Voltages, Both of your tools and yourself of course! Also ensuring that we do everything to prevent a Shor Circuit.

All Metal tools were covered in Tape And/Or Heat Shrink so that in the event of a drop there would not be a dangerous short circuit, and also as an added layer of insulation from the battery to myself!

I only ever toughed the HV contacts when I absolutely had to, no point taking chances!

Useful/Tools used:

  1. Torx & Socket Drive Set (insulated with shrink wrap/tape)
  2. Electric Screwdriver
  3. Magnet on a stick (Covered in tape of course)
  4. Insulation Tape & Duct Tape
  5. Gloves … I used nitrile gloves, Electrician’s gloves & some garden gloves so I didn’t tear the electrical gloves.
  6. Electrical screwdrivers & a normal screwdrivers covered in insulation tape.
  7. Voltmeter
  8. Insulated shoes
  9. Nylon straps the battery came tied to the pallet.
  10. Emergency help on hand in case of electrocution (including gloves for them & I attached one of the nylon straps to myself so I could be pulled away)
  11. Work in the dry obviously
A09A7625.jpg

After Undoing all of the torx bolt on the top the cover can be removed … look at those precision straps to hold the modules down.

A09A7628.jpg

At this point after prodding about underneath the foam and looking down the sides I need access to the bottom to unbolt the modules, find that un-loved screwdriver (covered in paint in my case on top of my daughter’s rabbit hutch) and use gentle persuasion to remove the rubber plugs to get access to the torx bolts and remove them. Be very careful this thing is damn heavy you don’t wan this to land on your toes or any part of your body

A09A7632.jpg
A09A7633.jpg

Now back to the top side … remove all the foam, disconnect all of the cables you can (I could not remove the module bms plugs). Happily my module sat at 355 volts (88.8v per module) so not too low at about 3.7v per cell!

I then started tackling all of the bolts holding down the modules in the middle, however then came the ones that were under the Contactor box.

The scary bit where I disconnected the HV connections from the Contactor box thing, immediately covering with insulation tape, first negative, positive, then I tackled the mid pack connection (not shown in this photo). Then I removed all of the connections from the contactor box to allow it the removed to allow access to the torx bolts obstructed by it.

A09A7634.jpg

Now back to the top side … remove all the foam, disconnect all of the cables you can (I could not remove the module bms plugs). Happily my module sat at 355 volts (88.8v per module) so not too low at about 3.7v per cell!

I then started tackling all of the bolts holding down the modules in the middle, however then came the ones that were under the Contactor box.

The scary bit where I disconnected the HV connections from the Contactor box thing, immediately covering with insulation tape, first negative, positive, then I tackled the mid pack connection (not shown in this photo). Then I removed all of the connections from the contactor box to allow it the removed to allow access to the torx bolts obstructed by it.


BMS

The BMS slaves on the modules can be re-used using SimpBMS running on a Teensy Microcontroller.

https://github.com/Tom-evnut/SimpBMS

https://github.com/Tom-evnut/VW-bms

Battery Modules

Passat GTE

The Battery Module weighs 23.4 Kg, (Add module dimensions), There is a BMS connector (TE 1-1670990-1) on both sides of the the module.

Module Weight
BMS Board

Cooling

The Battery Cells are cooled by a liquid cold plate in the middle of the module, the outside diameter of the metal pipe connector is 8.0mm

Battery Module cooling connectors
Original Pipework Connector

Contactors/Pre-Charge

Passat GTE

The Control box contains

  • PEC 300A 450VDC fuse
  • 2 x Contactors (Data Matrix Code '#3Q0915646B ###100117*288 LS301CRFIFO*=', Non Economiser Type Current Draw 0.556A@12.8V)
  • 1 x Pre-Charge Relay (Data Matrix Code '#3Q0915646A ###281116*288 LS301HGC9KB*=')
  • 1 x Pre-Charge Resistor (Resistance TBC)
  • 1 x Current Shunt (Data Matrix Code:p88970180259, Rating TBC)
  • 1 x Contactor Control Board
Contactor Box
HV Contactor
Pre Charge Relay
INSERT

Resistor Pic

Fuse
Error creating thumbnail: File with dimensions greater than 12.5 MP
Shunt
Control Board

Reusing with Open Inverter controlling the contactors and relay directly should be as simple as supplying 12v and switching the ground as required.

Golf GTE

The control box contains a

Golf GTE Fuse
Golf GTE Fuse
Main Control Box
Main Control Box
Pre-charge relay
Pre-charge relay
Contactor
Contactor

Reusing with Open Inverter controlling the contactors and relay directly should be as simple as supplying 12v and switching the ground as required.

Using Multiple Packs

Currently NO Turn Key solutions exist for using more than 1 pack, however ....

The next release of SIMP BMS (assuming to be V3) shall use a teensy 4 which will have 3 canbuses however this is in the early stages of development.

It could be possible to use 2 sets of SIMPBMS however they would exist on 2 separate can buses, this would not to be easy task to implement.

It could be possible to translate the CAN id's from the second pack by using a can in the middle device and still use a single SIMPBMS however this has never been tested.

This is due to the fact that the can id's outputted from the modules are fixed, the ranges used are from 01B0 to 01CE (432-462). If these CAN id's were translated (from the second pack) using a can in the middle device to id's to a range like 01D0 to 01EE (464-494) a single SIMPBMS could be used as there is an undocumented code allowing for extended id's.

    ///////////////// one extender increment//////////
    
    case (0x1D0):
      CMU = 9;
      Id = 0;
      break;
    case (0x1D1):
      CMU = 9;
      Id = 1;
      break;
    case (0x1D2):
      CMU = 9;
      Id = 2;
      break;

    case (0x1D4):
      CMU = 10;
      Id = 0;
      break;
    case (0x1D5):
      CMU = 10;
      Id = 1;
      break;
    case (0x1D6):
      CMU = 10;
      Id = 2;
      break;
    case (0x1D8):
      CMU = 11;
      Id = 0;
      break;
    case (0x1D9):
      CMU = 11;
      Id = 1;
      break;
    case (0x1DA):
      CMU = 11;
      Id = 2;
      break;
    case (0x1DC):
      CMU = 12;
      Id = 0;
      break;
    case (0x1DD):
      CMU = 12;
      Id = 1;
      break;
    case (0x1DE):
      CMU = 12;
      Id = 2;
      break;

    case (0x1E0):
      CMU = 13;
      Id = 0;
      break;
    case (0x1E1):
      CMU = 13;
      Id = 1;
      break;
    case (0x1E2):
      CMU = 13;
      Id = 2;
      break;

    case (0x1E4):
      CMU = 14;
      Id = 0;
      break;
    case (0x1E5):
      CMU = 14;
      Id = 1;
      break;
    case (0x1E6):
      CMU = 14;
      Id = 2;
      break;

    case (0x1E8):
      CMU = 15;
      Id = 0;
      break;
    case (0x1E9):
      CMU = 15;
      Id = 1;
      break;
    case (0x1EA):
      CMU = 15;
      Id = 2;
      break;

    case (0x1EC):
      CMU = 16;
      Id = 0;
      break;
    case (0x1ED):
      CMU = 16;
      Id = 1;
      break;
    case (0x1EE):
      CMU = 16;
      Id = 2;
      break;


    ///////////////////////standard ids////////////////
    

    case (0x1B0):
      CMU = 1;
      Id = 0;
      break;
    case (0x1B1):
      CMU = 1;
      Id = 1;
      break;
    case (0x1B2):
      CMU = 1;
      Id = 2;
      break;

    case (0x1B4):
      CMU = 2;
      Id = 0;
      break;
    case (0x1B5):
      CMU = 2;
      Id = 1;
      break;
    case (0x1B6):
      CMU = 2;
      Id = 2;
      break;

    case (0x1B8):
      CMU = 3;
      Id = 0;
      break;
    case (0x1B9):
      CMU = 3;
      Id = 1;
      break;
    case (0x1BA):
      CMU = 3;
      Id = 2;
      break;

    case (0x1BC):
      CMU = 4;
      Id = 0;
      break;
    case (0x1BD):
      CMU = 4;
      Id = 1;
      break;
    case (0x1BE):
      CMU = 4;
      Id = 2;
      break;

    case (0x1C0):
      CMU = 5;
      Id = 0;
      break;
    case (0x1C1):
      CMU = 5;
      Id = 1;
      break;
    case (0x1C2):
      CMU = 5;
      Id = 2;
      break;

    case (0x1C4):
      CMU = 6;
      Id = 0;
      break;
    case (0x1C5):
      CMU = 6;
      Id = 1;
      break;
    case (0x1C6):
      CMU = 6;
      Id = 2;
      break;

    case (0x1C8):
      CMU = 7;
      Id = 0;
      break;
    case (0x1C9):
      CMU = 7;
      Id = 1;
      break;
    case (0x1CA):
      CMU = 7;
      Id = 2;
      break;

    case (0x1CC):
      CMU = 8;
      Id = 0;
      break;
    case (0x1CD):
      CMU = 8;
      Id = 1;
      break;
    case (0x1CE):
      CMU = 8;
      Id = 2;
      break;