foxBMS  1.3.0
The foxBMS Battery Management System API Documentation
pana_ncr18650bd.h File Reference

Configuration of the battery cell (e.g., minimum and maximum cell voltage) More...

#include "general.h"
Include dependency graph for pana_ncr18650bd.h:

Go to the source code of this file.

Macros

#define BC_VOLTAGE_NOMINAL_mV   (3600u)
 
#define BC_VOLTAGE_DEEP_DISCHARGE_mV   (BC_VOLTAGE_MIN_MSL_mV - 100u)
 
#define BC_CAPACITY_mAh   (3180u)
 the cell capacity used for SOC calculation, in this case Ah counting More...
 
#define BC_TEMPERATURE_MAX_DISCHARGE_MSL_ddegC   (600)
 
#define BC_TEMPERATURE_MAX_DISCHARGE_RSL_ddegC   (550)
 
#define BC_TEMPERATURE_MAX_DISCHARGE_MOL_ddegC   (500)
 
#define BC_TEMPERATURE_MIN_DISCHARGE_MSL_ddegC   (-200)
 
#define BC_TEMPERATURE_MIN_DISCHARGE_RSL_ddegC   (-180)
 
#define BC_TEMPERATURE_MIN_DISCHARGE_MOL_ddegC   (-150)
 
#define BC_TEMPERATURE_MAX_CHARGE_MSL_ddegC   (450)
 
#define BC_TEMPERATURE_MAX_CHARGE_RSL_ddegC   (400)
 
#define BC_TEMPERATURE_MAX_CHARGE_MOL_ddegC   (350)
 
#define BC_TEMPERATURE_MIN_CHARGE_MSL_ddegC   (100)
 
#define BC_TEMPERATURE_MIN_CHARGE_RSL_ddegC   (120)
 
#define BC_TEMPERATURE_MIN_CHARGE_MOL_ddegC   (150)
 
#define BC_VOLTAGE_MAX_MSL_mV   (4200u)
 
#define BC_VOLTAGE_MAX_RSL_mV   (4150u)
 
#define BC_VOLTAGE_MAX_MOL_mV   (4100u)
 
#define BC_VOLTAGE_MIN_MSL_mV   (2500u)
 
#define BC_VOLTAGE_MIN_RSL_mV   (2550u)
 
#define BC_VOLTAGE_MIN_MOL_mV   (2600u)
 
#define BC_CURRENT_MAX_DISCHARGE_MSL_mA   (550000u)
 
#define BC_CURRENT_MAX_DISCHARGE_RSL_mA   (525000u)
 
#define BC_CURRENT_MAX_DISCHARGE_MOL_mA   (500000u)
 
#define BC_CURRENT_MAX_CHARGE_MSL_mA   (50000u)
 
#define BC_CURRENT_MAX_CHARGE_RSL_mA   (47500u)
 
#define BC_CURRENT_MAX_CHARGE_MOL_mA   (45000u)
 

Detailed Description

Configuration of the battery cell (e.g., minimum and maximum cell voltage)

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
2018-10-02 (date of creation)
Updated
2022-05-30 (date of last update)
Version
v1.3.0
Prefix
BC

This files contains basic macros of the battery cell in order to derive needed inputs in other parts of the software. These macros are all depended on the hardware.

Definition in file pana_ncr18650bd.h.

Macro Definition Documentation

◆ BC_CAPACITY_mAh

#define BC_CAPACITY_mAh   (3180u)

the cell capacity used for SOC calculation, in this case Ah counting

Type
int
Unit
mAh

Definition at line 208 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_CHARGE_MOL_mA

#define BC_CURRENT_MAX_CHARGE_MOL_mA   (45000u)

the different strings

Definition at line 200 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_CHARGE_MSL_mA

#define BC_CURRENT_MAX_CHARGE_MSL_mA   (50000u)

Maximum charge current limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mA 6 modules (7s20p) in series, 3 strings in parallel

Definition at line 198 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_CHARGE_RSL_mA

#define BC_CURRENT_MAX_CHARGE_RSL_mA   (47500u)

current reduced by 4,54 A because of imbalances between

Definition at line 199 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_DISCHARGE_MOL_mA

#define BC_CURRENT_MAX_DISCHARGE_MOL_mA   (500000u)

the different strings

Definition at line 185 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_DISCHARGE_MSL_mA

#define BC_CURRENT_MAX_DISCHARGE_MSL_mA   (550000u)

Maximum discharge current limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mA 6 modules (7s20p) in series, 3 strings in parallel

Definition at line 183 of file pana_ncr18650bd.h.

◆ BC_CURRENT_MAX_DISCHARGE_RSL_mA

#define BC_CURRENT_MAX_DISCHARGE_RSL_mA   (525000u)

current reduced by 50 A because of imbalances between

Definition at line 184 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_CHARGE_MOL_ddegC

#define BC_TEMPERATURE_MAX_CHARGE_MOL_ddegC   (350)

Maximum temperature limit during charge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 107 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_CHARGE_MSL_ddegC

#define BC_TEMPERATURE_MAX_CHARGE_MSL_ddegC   (450)

Maximum temperature limit during charge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 105 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_CHARGE_RSL_ddegC

#define BC_TEMPERATURE_MAX_CHARGE_RSL_ddegC   (400)

Maximum temperature limit during charge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 106 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_DISCHARGE_MOL_ddegC

#define BC_TEMPERATURE_MAX_DISCHARGE_MOL_ddegC   (500)

Maximum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 77 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_DISCHARGE_MSL_ddegC

#define BC_TEMPERATURE_MAX_DISCHARGE_MSL_ddegC   (600)

Maximum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 75 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MAX_DISCHARGE_RSL_ddegC

#define BC_TEMPERATURE_MAX_DISCHARGE_RSL_ddegC   (550)

Maximum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 76 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_CHARGE_MOL_ddegC

#define BC_TEMPERATURE_MIN_CHARGE_MOL_ddegC   (150)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 122 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_CHARGE_MSL_ddegC

#define BC_TEMPERATURE_MIN_CHARGE_MSL_ddegC   (100)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 120 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_CHARGE_RSL_ddegC

#define BC_TEMPERATURE_MIN_CHARGE_RSL_ddegC   (120)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 121 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_DISCHARGE_MOL_ddegC

#define BC_TEMPERATURE_MIN_DISCHARGE_MOL_ddegC   (-150)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 92 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_DISCHARGE_MSL_ddegC

#define BC_TEMPERATURE_MIN_DISCHARGE_MSL_ddegC   (-200)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 90 of file pana_ncr18650bd.h.

◆ BC_TEMPERATURE_MIN_DISCHARGE_RSL_ddegC

#define BC_TEMPERATURE_MIN_DISCHARGE_RSL_ddegC   (-180)

Minimum temperature limit during discharge. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
deci °C

Definition at line 91 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_DEEP_DISCHARGE_mV

#define BC_VOLTAGE_DEEP_DISCHARGE_mV   (BC_VOLTAGE_MIN_MSL_mV - 100u)

Deep-discharge cell voltage limit. If this voltage limit is violated, the cell is faulty. The BMS won't allow a closing of the contactors until this cell is replaced. a replacement of the cell is confirmed by sending the respective CAN debug message

Type
int
Unit
mV

Definition at line 171 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MAX_MOL_mV

#define BC_VOLTAGE_MAX_MOL_mV   (4100u)

Maximum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 137 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MAX_MSL_mV

#define BC_VOLTAGE_MAX_MSL_mV   (4200u)

Maximum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 135 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MAX_RSL_mV

#define BC_VOLTAGE_MAX_RSL_mV   (4150u)

Maximum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 136 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MIN_MOL_mV

#define BC_VOLTAGE_MIN_MOL_mV   (2600u)

Minimum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 159 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MIN_MSL_mV

#define BC_VOLTAGE_MIN_MSL_mV   (2500u)

Minimum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 157 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_MIN_RSL_mV

#define BC_VOLTAGE_MIN_RSL_mV   (2550u)

Minimum cell voltage limit. When maximum safety limit (MSL) is violated, error state is requested and contactors will open. When recommended safety limit (RSL) or maximum operating limit (MOL) is violated, the respective flag will be set.

Type
int
Unit
mV

Definition at line 158 of file pana_ncr18650bd.h.

◆ BC_VOLTAGE_NOMINAL_mV

#define BC_VOLTAGE_NOMINAL_mV   (3600u)

nominal cell voltage according to data sheet

Type
int
Unit
mV

Definition at line 146 of file pana_ncr18650bd.h.