foxBMS  1.6.0
The foxBMS Battery Management System API Documentation
sof_trapezoid_cfg.h File Reference

Header for SOF configuration. More...

#include "battery_cell_cfg.h"
#include "battery_system_cfg.h"
#include <math.h>
#include <stdint.h>
Include dependency graph for sof_trapezoid_cfg.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  SOF_CONFIG_s
 

Macros

#define SOF_STRING_CURRENT_CONTINUOUS_CHARGE_mA    ((float_t)BC_CURRENT_MAX_CHARGE_MOL_mA * BS_NR_OF_PARALLEL_CELLS_PER_CELL_BLOCK)
 
#define SOF_STRING_CURRENT_CONTINUOUS_DISCHARGE_mA    ((float_t)BC_CURRENT_MAX_DISCHARGE_MOL_mA * BS_NR_OF_PARALLEL_CELLS_PER_CELL_BLOCK)
 
#define SOF_STRING_CURRENT_LIMP_HOME_mA   (20000.00f)
 
#define SOF_TEMPERATURE_LOW_CUTOFF_DISCHARGE_ddegC   (BC_TEMPERATURE_MIN_DISCHARGE_MOL_ddegC)
 
#define SOF_TEMPERATURE_LOW_LIMIT_DISCHARGE_ddegC   (BC_TEMPERATURE_MIN_DISCHARGE_MSL_ddegC)
 
#define SOF_TEMPERATURE_LOW_CUTOFF_CHARGE_ddegC   (BC_TEMPERATURE_MIN_CHARGE_MOL_ddegC)
 
#define SOF_TEMPERATURE_LOW_LIMIT_CHARGE_ddegC   (BC_TEMPERATURE_MIN_CHARGE_MSL_ddegC)
 
#define SOF_TEMPERATURE_HIGH_CUTOFF_DISCHARGE_ddegC   (BC_TEMPERATURE_MAX_DISCHARGE_MOL_ddegC)
 
#define SOF_TEMPERATURE_HIGH_LIMIT_DISCHARGE_ddegC   (BC_TEMPERATURE_MAX_DISCHARGE_MSL_ddegC)
 
#define SOF_TEMPERATURE_HIGH_CUTOFF_CHARGE_ddegC   (BC_TEMPERATURE_MAX_CHARGE_MOL_ddegC)
 
#define SOF_TEMPERATURE_HIGH_LIMIT_CHARGE_ddegC   (BC_TEMPERATURE_MAX_CHARGE_MSL_ddegC)
 
#define SOF_VOLTAGE_CUTOFF_CHARGE_mV   (BC_VOLTAGE_MAX_MOL_mV)
 
#define SOF_VOLTAGE_LIMIT_CHARGE_mV   (BC_VOLTAGE_MAX_RSL_mV)
 
#define SOF_VOLTAGE_CUTOFF_DISCHARGE_mV   (BC_VOLTAGE_MIN_MOL_mV)
 
#define SOF_VOLTAGE_LIMIT_DISCHARGE_mV   (BC_VOLTAGE_MIN_RSL_mV)
 

Variables

const SOF_CONFIG_s sof_recommendedCurrent
 

Detailed Description

Header for SOF configuration.

SPDX-License-Identifier: BSD-3-Clause

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

We kindly request you to use one or more of the following phrases to refer to foxBMS in your hardware, software, documentation or advertising materials:

  • ″This product uses parts of foxBMS®″
  • ″This product includes parts of foxBMS®″
  • ″This product is derived from foxBMS®″
Author
foxBMS Team
Date
2020-10-07 (date of creation)
Updated
2023-10-12 (date of last update)
Version
v1.6.0
Prefix
SOF

Definition in file sof_trapezoid_cfg.h.

Macro Definition Documentation

◆ SOF_STRING_CURRENT_CONTINUOUS_CHARGE_mA

#define SOF_STRING_CURRENT_CONTINUOUS_CHARGE_mA    ((float_t)BC_CURRENT_MAX_CHARGE_MOL_mA * BS_NR_OF_PARALLEL_CELLS_PER_CELL_BLOCK)

Maximum current in mA in charge direction that a string can sustain. Normally set once for the specific battery cell from data sheet

Definition at line 72 of file sof_trapezoid_cfg.h.

◆ SOF_STRING_CURRENT_CONTINUOUS_DISCHARGE_mA

#define SOF_STRING_CURRENT_CONTINUOUS_DISCHARGE_mA    ((float_t)BC_CURRENT_MAX_DISCHARGE_MOL_mA * BS_NR_OF_PARALLEL_CELLS_PER_CELL_BLOCK)

Maximum current in mA in discharge direction that a string can deliver. Normally set once for the specific battery cell from data sheet.

Definition at line 79 of file sof_trapezoid_cfg.h.

◆ SOF_STRING_CURRENT_LIMP_HOME_mA

#define SOF_STRING_CURRENT_LIMP_HOME_mA   (20000.00f)

Current in mA that the string should be able to discharge when in limp home mode, i.e., something noncritical went wrong but it should be able to drive home. The value is chosen by the system engineer.

Definition at line 87 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_HIGH_CUTOFF_CHARGE_ddegC

#define SOF_TEMPERATURE_HIGH_CUTOFF_CHARGE_ddegC   (BC_TEMPERATURE_MAX_CHARGE_MOL_ddegC)

Hot temperature in deci °C where the derating of maximum charge current starts, i.e., above this temperature battery pack should not deliver full charge current.

Definition at line 136 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_HIGH_CUTOFF_DISCHARGE_ddegC

#define SOF_TEMPERATURE_HIGH_CUTOFF_DISCHARGE_ddegC   (BC_TEMPERATURE_MAX_DISCHARGE_MOL_ddegC)

Hot temperature in deci °C where the derating of maximum discharge current starts, i.e., above this temperature battery pack should not deliver full discharge current.

Definition at line 122 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_HIGH_LIMIT_CHARGE_ddegC

#define SOF_TEMPERATURE_HIGH_LIMIT_CHARGE_ddegC   (BC_TEMPERATURE_MAX_CHARGE_MSL_ddegC)

Hot temperature in deci °C where the derating of maximum charge current is fully applied, i.e., above this temperature battery pack should not deliver any current in charge direction.

Definition at line 143 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_HIGH_LIMIT_DISCHARGE_ddegC

#define SOF_TEMPERATURE_HIGH_LIMIT_DISCHARGE_ddegC   (BC_TEMPERATURE_MAX_DISCHARGE_MSL_ddegC)

Hot temperature in deci °C where the derating of maximum discharge current is fully applied, i.e., above this temperature battery pack should not deliver any current in discharge direction.

Definition at line 129 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_LOW_CUTOFF_CHARGE_ddegC

#define SOF_TEMPERATURE_LOW_CUTOFF_CHARGE_ddegC   (BC_TEMPERATURE_MIN_CHARGE_MOL_ddegC)

Cold temperature in deci °C where the derating of maximum charge current starts, i.e., below this temperature battery pack should not deliver full charge current.

Definition at line 108 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_LOW_CUTOFF_DISCHARGE_ddegC

#define SOF_TEMPERATURE_LOW_CUTOFF_DISCHARGE_ddegC   (BC_TEMPERATURE_MIN_DISCHARGE_MOL_ddegC)

Cold temperature in deci °C where the derating of maximum discharge current starts, i.e., below this temperature battery pack should not deliver full discharge current.

Definition at line 94 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_LOW_LIMIT_CHARGE_ddegC

#define SOF_TEMPERATURE_LOW_LIMIT_CHARGE_ddegC   (BC_TEMPERATURE_MIN_CHARGE_MSL_ddegC)

Cold temperature in deci °C where the derating of maximum charge current is fully applied, i.e., below this temperature battery pack should not deliver any current in charge direction.

Definition at line 115 of file sof_trapezoid_cfg.h.

◆ SOF_TEMPERATURE_LOW_LIMIT_DISCHARGE_ddegC

#define SOF_TEMPERATURE_LOW_LIMIT_DISCHARGE_ddegC   (BC_TEMPERATURE_MIN_DISCHARGE_MSL_ddegC)

Cold temperature in deci °C where the derating of maximum discharge current is fully applied, i.e., below this temperature battery pack should not deliver any current in discharge direction.

Definition at line 101 of file sof_trapezoid_cfg.h.

◆ SOF_VOLTAGE_CUTOFF_CHARGE_mV

#define SOF_VOLTAGE_CUTOFF_CHARGE_mV   (BC_VOLTAGE_MAX_MOL_mV)

Above this voltage value battery pack should not be exposed to full current in charge direction.

Definition at line 148 of file sof_trapezoid_cfg.h.

◆ SOF_VOLTAGE_CUTOFF_DISCHARGE_mV

#define SOF_VOLTAGE_CUTOFF_DISCHARGE_mV   (BC_VOLTAGE_MIN_MOL_mV)

Below this voltage value battery pack should not deliver full current in discharge direction.

Definition at line 158 of file sof_trapezoid_cfg.h.

◆ SOF_VOLTAGE_LIMIT_CHARGE_mV

#define SOF_VOLTAGE_LIMIT_CHARGE_mV   (BC_VOLTAGE_MAX_RSL_mV)

Above this voltage value battery pack should not be exposed to any current in charge direction.

Definition at line 153 of file sof_trapezoid_cfg.h.

◆ SOF_VOLTAGE_LIMIT_DISCHARGE_mV

#define SOF_VOLTAGE_LIMIT_DISCHARGE_mV   (BC_VOLTAGE_MIN_RSL_mV)

Below this voltage value battery pack should not deliver any current in discharge direction.

Definition at line 163 of file sof_trapezoid_cfg.h.

Variable Documentation

◆ sof_recommendedCurrent

const SOF_CONFIG_s sof_recommendedCurrent
extern

Configuration values for the SOF window of the recommended battery current

Definition at line 66 of file sof_trapezoid_cfg.c.