...
Description | BMS Carrier Firmware |
---|---|
Target release | MSXIV |
Epic | |
Document owner | |
Project leads | |
Team members | Arshan Khanifar Zubair Waheed (Deactivated) |
Goals / Background / Strategic Fit / Requirements
Detail the behaviour of the BMS carrier board and how firmware should enable/control it
Background and strategic fit
...
.
Monitors voltages, currents, temperatures, fan status and a whole bunch of other things relevant to the the battery and other battery related boards.
Board Overview (Firmware)
Inputs
Outputs
Possible Events I/O
- CAN (inout)
- Kill Switch (in) (?)
- AFEs (iso-SPI) (inout)
- Fan Control (out)
- Current Sense Board (out) (?)
- Relays (inout)
Stuff that happens (Internal / Synchronous) Possible Events
- CAN Message recieved
- Monitor Temparature (AFE)
- Too High→ increase fan speed
- Too low → who cares (?)
- Car powered on
- validate battery health / status
- turn on relays
- turn on current sense board
- Monitors state of charge
- Voltage
- Current
Stuff that happens (External / Out of our control / Asynchronous)
...
- Kill Switch flipped (?)
- AFE Under/Over volt
- Disconnect relay
Meeting Notes
- logs all
- Voltage,
- Temp,
- Current
- Relay States
- Controls
- Relays
- used for state of the charge model:
- state of the charge status of battery how much eneergyenergy
- we need fast logging for a good soc model
- overcharge
- over temperature
- over current
- undercharge
- power distribution tells u something’s wrong
- dc dc failed
- precharge board:
- precharge failed
- controls the relays
- if AFE undervoltage, we disconnect the relays
- you can also disconnect from car power button so that comes from can
- other conditions:
- controls fans based on the temp
- car turn on: checks battery pack status, then connects relays
- turns on the current sense board: firmware doesn't need to care it's literally a line that goes to it.
- PI RPI will be SOC algorithm
- connetion between pi's havnehaven't made decision
How it works:
- Three AFEs
- Temperatures measured via thermistors (AFEs)
- gpio's control the mux (for AFEAFEs)
- adc: for reading measurements
- we talk to this bish using iso-spi
- LTC6811 is the chiBchip (Battery Monitor)
Questions
Question | Answer |
---|---|
What are the conditions under which we disconnect the relays? | |
How many ways are there to change the relay state? Is BMS Carrier the only one controlling them? | |
What are the incoming CAN messages? | |
What are the outgoing CAN messages? | |
How is state of charge calculated? | |
What's the maximum rate we can have for voltage measurement? | |
What's the maximum rate we can have for current measurement? | |
What should it do when we power the car ON? | |
How are we computing the SOC? | |
What are the temperature ranges for fan control? | |
Can fan status be monitored? Does it need to be? (rpm too high/too low) |
Misc Links
Some Guys Masters Thesis on EV BMS - https://pdfs.semanticscholar.org/7b9d/934eaf10114c091e1229ed4d65de3a1002a0.pdf
LTC6811 (Battery Monitor) Datasheet - https://www.analog.com/media/en/technical-documentation/data-sheets/68111fb.pdf