For explosion drawings and OE part numbers, see…
A good source for all parts is JC Parts.
Parts may of course be replaced by functionally compatible ones, for example use a fork lift relais for the main power relais (relais & fuses are no special parts). Błażej Błaszczyk has built his prototype without using Renault parts. For details please contact him at [email protected].
- The
296740718R
signal connector is Yazaki part no. 7282-8854-30 (contact terminals sold separate). - The
296743399R
main power connector is DELPHI part no. F473110, with contact terminals F176600. - The
296746418R
charger power connector is DELPHI part no. F873110, with contact terminals 15516298.
Note: Lutz Schäfer offers to build individual custom battery cases offering more space. For details please contact him at [email protected].
Sizes:
- Standard Renault Box: 724 x 368 x 208 mm
- Lutz-Box V1 (without car modification): 745 x 400 x 245 mm
- Lutz-Box V2 (car modification necessary): 745 x 480 x 245 mm
Note: if you plan to use Pascals integrated Twizy BMS, you won't need an Arduino. The integrated BMS also implements the Twizy protocol.
For a basic setup you'll need an Arduino, a CAN interface and a relais to switch the 3MW signal.
If you want/need to measure cell voltages and temperatures with the Arduino, you will most probably need some analog input extension. A very simple and cheap setup for up to 16 cells is to use an analog multiplexer based on the CD74HC4067 chip.
Standard Arduinos can be powered from 12V, but will burn the voltage difference (convert to heat), so a step-down voltage regulator is highly recommended. The Pololu A-Star SV series has on-board step-down regulators suitable for a 12V supply.
Using an Arduino Uno style main board with shields reduces soldering requirements but needs more money and space than for example a Nano based board with break out components.
Keep in mind for all setups, this is an automotive application: expect high levels of mechanical stress due to road shocks and temperature expansion/contraction. Protect your electronics against humidity.
Price note: there are lots of cheap Arduino clones available. These can of course be used as well. Expect a lower build quality, so better order some spares (always a good idea).
Category | Component | ~Price |
---|---|---|
Main+Power | Pololu A-Star 32U4 Prime SV | 24.95 € |
CAN | Seeed Studio CAN-BUS Shield v1.2 | 24.95 € |
Relais | Seeed Studio Relais Shield V3.0 | 21.95 € |
Total | **~ 72 €** |
Category | Component | ~Price |
---|---|---|
Main | Arduino Nano V3 clone | 4.95 € |
I/O | Arduino NANO Screw Terminal Expansion Board | 4.95 € |
CAN | NiRen MCP2515_CAN (TJA1050) | 4.50 € |
CAN | … 16 MHz quartz | 0.23 € |
Relais | 5V 2 Channel Relay Shield | 2.95 € |
Total | **~ 18 €** |
Category | Component | ~Price |
---|---|---|
Main | Arduino Uno R3 | 20.80 € |
Main | Arduino Nano V3 | 23.80 € |
Main+Power | Pololu A-Star 32U4 Prime SV | 24.95 € |
Power | Pololu 5V, 2.5A Step-Down Voltage Regulator D24V22F5 | 8.95 € |
CAN | Seeed Studio CAN-BUS Shield v1.2 | 24.95 € |
CAN | NiRen MCP2515_CAN (TJA1050) Note: these come with 8 MHz quartz, you should replace this with a 16 MHz type |
4.50 € |
Relais | Seeed Studio Relais Shield V3.0 | 21.95 € |
Relais | 5V 2 Channel Relay Shield | 2.95 € |
I/O | Adafruit Proto-Screwshield | 15.50 € |
I/O | Arduino NANO Screw Terminal Expansion Board | 4.95 € |
I/O | SparkFun Analog/Digital MUX Breakout - CD74HC4067 (16 Channel) | 4.95 € |
I/O | Adafruit ADS1015 12-Bit ADC - 4 Channel | 10.95 € |
I/O | Mayhew Labs Extended ADC Shield | 30 € |
I/O | Seeed Studio RS232 Shield | 12.50 € |
I/O | HC-05 Bluetooth module | 6.00 € |
This example setup could be used for a battery pack with a very basic BMS that does only cell protection and has no communication interface. So the Arduino is used to monitor cell voltages, pack current and temperature. This is all optional -- basically you could derive the SOC estimation from just the overall pack voltage as well.
The Fritzing diagram only shows the I/O connections, but there's little more: add power supply and enable the multiplexer permanently (connect pin EN to VCC). Obviously, when using a CAN shield like shown in the diagram, it's wiring is done by mounting the shield.
The bluetooth module is optional but neat, it enables to check your VirtualBMS output with a smartphone.
Cell voltages can be measured using the multiplexer shown and simple voltage dividers measuring the stacked voltages, but keep in mind you lose precision by the scaling. The Arduino analog ports provide 10 bit resolution on the voltage range of 0-5 V = ~5 mV. So when scaling to 60 V, resolution drops to ~60 mV. This is good enough to detect a bad cell, but not for precise health monitoring. You may use ADC shields with higher resolution and/or differential voltage probes to get the single cell voltages, but when thinking about this, take a look at specialized battery monitoring chips like the MAX11080 or LTC6811 first.
The pack current can be measured using either a shunt (with an instrumentation amplifier or an ADC with preamp) or a hall sensor module like the LEM HAC 600-S or the Tamura L06P400S05. The LEM outputs -4…+4 V so needs to be mapped to the Arduino's 0…5 V (i.e. using an offset voltage divider), the Tamura outputs 0…5 V (2.5 V = 0 A) so can be used directly.
The temperatures can be measured using LM35 sensors. Depending on the variant used, voltage may need to be mapped to the Arduino input. If you want to measure every single cell temperature, you can also extend the setup by another MUX for the temperature sensors -- just use the same address pins as for the voltage MUX.