|
@@ -1,386 +1,179 @@
|
|
|
-
|
|
|
-#include "BCUdisp.h"
|
|
|
-
|
|
|
-uint16_T appv_V_cellU[cmnc_num_cellUNumMax]; /* 静态电压 */
|
|
|
-uint8_T appd_st_preCyc;
|
|
|
-
|
|
|
-boolean_T spmd_flg_firstRun;
|
|
|
-boolean_T socd_flg_firstRun;
|
|
|
-boolean_T sohd_flg_firstRun;
|
|
|
-boolean_T blcd_flg_firstRun;
|
|
|
-boolean_T sord_flg_firstRun;
|
|
|
-boolean_T soed_flg_firstRun;
|
|
|
-boolean_T iscd_flg_firstRun;
|
|
|
-boolean_T pimd_flg_firstRun;
|
|
|
-boolean_T sfmd_flg_firstRun;
|
|
|
-boolean_T tmsd_flg_firstRun;
|
|
|
-boolean_T cdmd_flg_firstRun;
|
|
|
-boolean_T csmd_flg_firstRun;
|
|
|
-boolean_T sopd_flg_firstRun;
|
|
|
-
|
|
|
-uint16_T blcv_Q_reqCpEi[cmnc_num_cellUNumMax]; /*均衡需求容量 读取量(数组); */
|
|
|
-uint16_T blcv_Q_reqCpEo[cmnc_num_cellUNumMax]; /*均衡需求容量 写入量(数组); */
|
|
|
-uint32_T blcv_Q_totalCpEi[cmnc_num_cellUNumMax]; /*累计均衡容量 读取量(数组); */
|
|
|
-uint32_T blcv_Q_totalCpEo[cmnc_num_cellUNumMax]; /*累计均衡容量 写入量(数组); */
|
|
|
-boolean_T blcv_flg_excute[cmnc_num_cellUNumMax]; /*均衡执行请求标志位 (数组); */
|
|
|
-
|
|
|
-boolean_T ihd_flg_HVILFlt; /* 保护板上传的高压互锁故障 */
|
|
|
-boolean_T ihd_flg_DTCClear; /* 上位机发送的故障清楚指令;*/
|
|
|
-uint8_T ihd_st_authFaild; /* 底层诊断的认证失败故障;*/
|
|
|
-int16_T ihd_I_curr; /*电池包电流; */
|
|
|
-uint8_T ihd_st_chrgConnect; /*充电器连接状态; */
|
|
|
-uint16_T ihd_P_gas; /*气体浓度 */
|
|
|
-uint16_T ihd_T_ACPlugT; /*慢充插头温度 +40 */
|
|
|
-uint16_T ihd_T_DCPlugT; /*快充插头温度+40 */
|
|
|
-uint16_T ihd_T_bdtemp; /*板子温度 */
|
|
|
-uint16_T ihd_T_heatPanT1; /*加热板温度1+40 */
|
|
|
-uint16_T ihd_T_heatPanT2; /*加热板温度2 +40 */
|
|
|
-uint16_T ihd_T_mosT; /*Mos温度+40 */
|
|
|
-boolean_T ihd_flg_EESaveFlt; /*EE存储故障 */
|
|
|
-boolean_T ihd_flg_battULowFlt; /*保护板上传的总压欠压故障; */
|
|
|
-boolean_T ihd_flg_battUOverFlt; /*保护板上传的总压过压故障; */
|
|
|
-boolean_T ihd_flg_cellULowFlt; /*保护板上传的单体欠压故障; */
|
|
|
-boolean_T ihd_flg_cellUOverFlt; /*保护板上传的单体过压故障; */
|
|
|
-boolean_T ihd_flg_chrgCurrOverFlt; /*保护板上传的充电过流故障; */
|
|
|
-boolean_T ihd_flg_chrgModTLowFlt; /*保护板上传的充电模组温度过低故障; */
|
|
|
-boolean_T ihd_flg_chrgModTOverFlt; /*保护板上传的充电模组温度过高故障; */
|
|
|
-boolean_T ihd_flg_chrgMosClosFlt; /*充电Mos失效 */
|
|
|
-boolean_T ihd_flg_chrgMosTOverFlt; /*保护板上传的充电Mos温度过高故障; */
|
|
|
-boolean_T ihd_flg_currOpenFlt; /*保护板上传的电流开路故障 */
|
|
|
-boolean_T ihd_flg_disChrgCurrOverFlt; /*保护板上传的放电过流故障; */
|
|
|
-boolean_T ihd_flg_disChrgModTLowFlt; /*保护板上传的放电模组温度过低故障; */
|
|
|
-boolean_T ihd_flg_disChrgModTOverFlt; /*保护板上传的放电模组温度过高故障; */
|
|
|
-boolean_T ihd_flg_disChrgMosClosFlt; /*放电Mos失效 */
|
|
|
-boolean_T ihd_flg_disChrgMosTOverFlt; /*保护板上传的放电Mos温度过高故障; */
|
|
|
-boolean_T ihd_flg_urtRecFlt; /*内网通讯故障 */
|
|
|
-uint16_T ihd_pct_soc; /*保护板SOC */
|
|
|
-uint16_T ihd_pct_soh; /*保护板SOH */
|
|
|
-uint8_T ihd_st_workStat; /*电池工作状态 */
|
|
|
-uint16_T ihd_tm_parkTime; /*驻车时间; */
|
|
|
-uint16_T ihv_T_modT[cmnc_num_modTNumMax]; /*模组温度(数组)+40 */
|
|
|
-uint16_T ihv_V_cellU[cmnc_num_cellUNumMax]; /*电池单体电压(数组); */
|
|
|
-boolean_T ihd_st_chrgMosControl;
|
|
|
-boolean_T ihd_st_disChrgMosControl;
|
|
|
-boolean_T ihd_st_relayControl;
|
|
|
-uint8_T ihd_st_heatForceControl;
|
|
|
-uint8_T ihd_st_EOLState;
|
|
|
-boolean_T ihd_flg_urtRecFlg;
|
|
|
-uint8_T ihd_st_reSet;
|
|
|
-
|
|
|
-int16_T sfmd_I_curr; /*处理后整包电流 */
|
|
|
-uint16_T sfmd_T_modTMax; /*处理后模组温度最小 */
|
|
|
-uint16_T sfmd_T_modTMin; /*处理后模组温度最大 */
|
|
|
-uint16_T sfmd_idx_modTMax; /*处理后模组温度最小 */
|
|
|
-uint16_T sfmd_idx_modTMin; /*处理后模组温度最大 */
|
|
|
-uint16_T sfmd_V_cellUAvrg; /*处理后单体电压平均 */
|
|
|
-uint16_T sfmd_V_cellUMax; /*处理后单体电压最大 */
|
|
|
-uint16_T sfmd_V_cellUMin; /*处理后单体电压最小 */
|
|
|
-uint16_T sfmd_idx_cellUMin;
|
|
|
-uint16_T sfmd_idx_cellUMax;
|
|
|
-boolean_T sfmd_flg_cellUInval; /*单体电压有效标志位 ; 0为有效;1为无效 */
|
|
|
-boolean_T sfmd_flg_currInval; /*电流有效标志位 ; 0为有效;1为无效 */
|
|
|
-boolean_T sfmd_flg_modTInval; /*模组温度有效标志位 ; 0为有效;1为无效 */
|
|
|
-uint16_T sfmd_num_fltNum; /*故障数量 */
|
|
|
-uint8_T sfmd_st_fltAct; /*故障禁止指令 */
|
|
|
-uint8_T sfmd_st_fltLevel; /*故障等级 */
|
|
|
-uint16_T sfmv_T_modT[cmnc_num_modTNumMax]; /*处理后模组温度 */
|
|
|
-uint16_T sfmv_V_cellU[cmnc_num_cellUNumMax]; /*处理后单体电压 */
|
|
|
-uint16_T sfmv_idx_fltCode[20]; /*诊断故障码(数组) */
|
|
|
-uint16_T sfmd_V_battU; /* 处理过后的总电压 */
|
|
|
-boolean_T sfmd_flg_mainCirClosFltEi; /*主回路常闭故障读取量 */
|
|
|
-boolean_T sfmd_flg_mainCirClosFltEo; /*主回路常闭故障写入量 */
|
|
|
-boolean_T sfmd_flg_heatCirClosFltEi; /*加热回路常闭故障读取量 */
|
|
|
-boolean_T sfmd_flg_heatCirClosFltEo; /*加热回路常闭故障写入量 */
|
|
|
-boolean_T sfmd_flg_heatCirOpenFltEi; /*加热回路常开故障读取量 */
|
|
|
-boolean_T sfmd_flg_heatCirOpenFltEo; /*加热回路常开故障写入量 */
|
|
|
-boolean_T sfmd_flg_heatRunFltEi;
|
|
|
-boolean_T sfmd_flg_heatRunFltEo;
|
|
|
-boolean_T sfmd_flg_iscFltEi;
|
|
|
-boolean_T sfmd_flg_iscFltEo;
|
|
|
-
|
|
|
-uint16_T socd_pct_vcuSoc; /*vcuSOC; */
|
|
|
-uint16_T socd_pct_ahSoc; /*安时SOC; */
|
|
|
-uint16_T socd_pct_estSoc; /*估算SOC;*/
|
|
|
-uint16_T socd_flg_EEsave; /*实时存储标志位;*/
|
|
|
-uint16_T socd_pct_ekfSoc; /*EKFSOC;*/
|
|
|
-uint16_T socd_pct_battSoc; /*电池真实SOC; */
|
|
|
-uint16_T socd_pct_battSocEi; /*电池真实SOC 读取量; */
|
|
|
-uint16_T socd_pct_battSocEo; /*电池真实SOC 写入量; */
|
|
|
-uint16_T socd_pct_bcuSoc; /*电池显示SOC; */
|
|
|
-uint16_T socd_pct_bcuSocEi; /*电池显示SOC读取量; */
|
|
|
-uint16_T socd_pct_bcuSocEo; /*电池显示SOC写入量; */
|
|
|
-uint16_T socv_pct_cellSoc[cmnc_num_cellUNumMax];
|
|
|
-uint16_T socd_pct_cellBattSoc;
|
|
|
-boolean_T socd_flg_cellSocDisable;
|
|
|
-
|
|
|
-uint16_T sohd_Q_chrgEi; /*充入容量读取量; */
|
|
|
-uint16_T sohd_Q_chrgEo; /*充入容量写入量; */
|
|
|
-boolean_T sohd_flg_chrgEndEi; /*充电结束标志位读取量; */
|
|
|
-boolean_T sohd_flg_chrgEndEo; /*充电结束标志位写入量; */
|
|
|
-uint16_T sohd_pct_bcuSoh; /*电池SOH; */
|
|
|
-uint16_T sohd_tm_chrgStartStatEi; /*充电前静置时间读取量; */
|
|
|
-uint16_T sohd_tm_chrgStartStatEo; /*充电前静置时间写入量; */
|
|
|
-uint16_T sohv_Q_cellCap[cmnc_num_cellUNumMax]; /*单体容量 */
|
|
|
-uint16_T sohv_Q_cellCapArrEi[cmnc_num_cellUNumMax]; /*单体容量(数组) 读取量 */
|
|
|
-uint16_T sohv_Q_cellCapArrEo[cmnc_num_cellUNumMax]; /*单体容量(数组) 写入量 */
|
|
|
-uint16_T sohv_Q_packCapArrEi[10]; /*10次整包容量(数组)读取量; */
|
|
|
-uint16_T sohv_Q_packCapArrEo[10]; /*10次整包容量(数组)写入量; */
|
|
|
-uint16_T sohv_V_chrgStartStatEi[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)读取量; */
|
|
|
-uint16_T sohv_V_chrgStartStatEo[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)写入量; */
|
|
|
-
|
|
|
-uint16_T soed_E_nowEng;
|
|
|
-uint16_T soed_pct_nowStat;
|
|
|
-uint16_T soed_E_fullEng;
|
|
|
-
|
|
|
-uint16_T sopd_P_chrgPMax;
|
|
|
-uint16_T sopd_P_disChrgPMax;
|
|
|
-int16_T sopd_I_chrgCurrMax;
|
|
|
-int16_T sopd_I_disChrgCurrMax;
|
|
|
-
|
|
|
-uint16_T sorv_R_cellEi[cmnc_num_cellUNumMax];
|
|
|
-uint16_T sorv_R_cellEo[cmnc_num_cellUNumMax];
|
|
|
-uint16_T sorv_R_cell[cmnc_num_cellUNumMax];
|
|
|
-
|
|
|
-boolean_T iscd_flg_flt;
|
|
|
-uint16_T iscv_Q_remainCpEi[cmnc_num_cellUNumMax];
|
|
|
-uint32_T iscd_tm_totalEi;
|
|
|
-uint16_T iscv_Q_remainCpEo[cmnc_num_cellUNumMax];
|
|
|
-uint32_T iscd_tm_totalEo;
|
|
|
-
|
|
|
-uint8_T tmsd_st_heatAct; /*热管理请求状态; */
|
|
|
-
|
|
|
-uint8_T csmd_st_chrgMod; /* 充电模式 */
|
|
|
-uint8_T csmd_st_chrgSt; /* 充电状态 */
|
|
|
-int16_T csmd_I_chrgCurrReq; /* 充电需求电流 */
|
|
|
-uint8_T csmd_idx_chrgEndReason; /* 充电结束原因 */
|
|
|
-
|
|
|
-uint16_T cand_idx_cellNr; /*循环发送的单体编号; */
|
|
|
-uint16_T cand_Q_cellCap; /*循环发送的单体容量; */
|
|
|
-uint16_T cand_V_chrgStartStat; /*循环发送的充电前单体电压; */
|
|
|
-uint16_T cand_Q_blcReqCp; /*循环发送的单体需求均衡容量; */
|
|
|
-uint16_T cand_Q_blcTotalCp; /*循环发送的单体累计均衡容量; */
|
|
|
-
|
|
|
-int16_T cdmv_V_deltOCV[cmnc_num_cellUNumMax];
|
|
|
-int16_T cdmv_R_deltOhm[cmnc_num_cellUNumMax];
|
|
|
-boolean_T cdmv_flg_inval[cmnc_num_cellUNumMax];
|
|
|
-
|
|
|
-uint16_T pimd_V_ocv;
|
|
|
-uint16_T pimd_R_ohm;
|
|
|
-uint16_T pimd_R_polar;
|
|
|
-uint16_T pimd_F_polar;
|
|
|
-uint16_T pimv_V_cellOcv[cmnc_num_cellUNumMax];
|
|
|
-uint16_T pimv_R_cellOhm[cmnc_num_cellUNumMax];
|
|
|
-uint16_T pimd_pct_battSoc;
|
|
|
-uint16_T pimv_pct_cellSoc[cmnc_num_cellUNumMax];
|
|
|
-boolean_T pimv_flg_inval[cmnc_num_cellUNumMax];
|
|
|
-
|
|
|
-uint16_T test_cellCap[cmnc_num_cellUNumMax];
|
|
|
-uint16_T test_countEn;
|
|
|
-int16_T test_deltU;
|
|
|
-int16_T test_data[200][3]={{0,4141,4144},
|
|
|
-{0,4141,4144},
|
|
|
-{0,4141,4144},
|
|
|
-{0,4141,4144},
|
|
|
-{0,4141,4144},
|
|
|
-{-135,4077,4115},
|
|
|
-{-135,4077,4115},
|
|
|
-{-40,4125,4136},
|
|
|
-{-189,4070,4113},
|
|
|
-{-189,4070,4113},
|
|
|
-{-123,4095,4123},
|
|
|
-{-187,4094,4115},
|
|
|
-{-4,4136,4140},
|
|
|
-{-84,4108,4128},
|
|
|
-{-84,4108,4128},
|
|
|
-{-134,4092,4119},
|
|
|
-{-6,4134,4139},
|
|
|
-{-6,4134,4139},
|
|
|
-{-175,4078,4112},
|
|
|
-{-57,4114,4131},
|
|
|
-{-57,4114,4131},
|
|
|
-{-74,4110,4129},
|
|
|
-{-107,4102,4121},
|
|
|
-{-99,4106,4128},
|
|
|
-{-44,4115,4132},
|
|
|
-{-44,4115,4132},
|
|
|
-{-51,4100,4122},
|
|
|
-{-51,4100,4122},
|
|
|
-{-85,4109,4124},
|
|
|
-{-64,4106,4128},
|
|
|
-{-109,4093,4123},
|
|
|
-{-55,4125,4127},
|
|
|
-{-90,4082,4113},
|
|
|
-{-90,4082,4113},
|
|
|
-{-140,4083,4116},
|
|
|
-{0,4135,4138},
|
|
|
-{-239,4056,4102},
|
|
|
-{0,4134,4137},
|
|
|
-{0,4134,4137},
|
|
|
-{-16,4131,4136},
|
|
|
-{56,4155,4147},
|
|
|
-{56,4155,4147},
|
|
|
-{16,4146,4143},
|
|
|
-{0,4136,4139},
|
|
|
-{0,4136,4139},
|
|
|
-{0,4136,4139},
|
|
|
-{-2,4136,4140},
|
|
|
-{7,4139,4141},
|
|
|
-{2,4138,4140},
|
|
|
-{2,4138,4140},
|
|
|
-{-146,4092,4118},
|
|
|
-{-272,4045,4099},
|
|
|
-{-272,4045,4099},
|
|
|
-{-272,4045,4099},
|
|
|
-{-159,4070,4108},
|
|
|
-{-192,4065,4107},
|
|
|
-{-199,4064,4106},
|
|
|
-{-199,4064,4106},
|
|
|
-{-175,4091,4106},
|
|
|
-{62,4132,4146},
|
|
|
-{62,4132,4146},
|
|
|
-{62,4132,4146},
|
|
|
-{-241,4051,4098},
|
|
|
-{-241,4051,4098},
|
|
|
-{-217,4056,4101},
|
|
|
-{-144,4074,4113},
|
|
|
-{34,4158,4146},
|
|
|
-{-122,4091,4116},
|
|
|
-{-122,4091,4116},
|
|
|
-{-102,4103,4115},
|
|
|
-{-140,4088,4109},
|
|
|
-{-138,4096,4117},
|
|
|
-{0,4130,4134},
|
|
|
-{0,4131,4134},
|
|
|
-{-233,4059,4101},
|
|
|
-{0,4132,4134},
|
|
|
-{0,4132,4134},
|
|
|
-{-96,4092,4121},
|
|
|
-{-166,4076,4110},
|
|
|
-{-166,4076,4110},
|
|
|
-{-112,4086,4119},
|
|
|
-{-9,4127,4133},
|
|
|
-{-164,4074,4111},
|
|
|
-{-81,4103,4121},
|
|
|
-{-81,4103,4121},
|
|
|
-{-82,4099,4121},
|
|
|
-{-62,4127,4132},
|
|
|
-{-62,4127,4132},
|
|
|
-{72,4155,4144},
|
|
|
-{0,4131,4134},
|
|
|
-{0,4131,4134},
|
|
|
-{-112,4069,4123},
|
|
|
-{-112,4069,4123},
|
|
|
-{-87,4109,4120},
|
|
|
-{-158,4135,4111},
|
|
|
-{-158,4135,4111},
|
|
|
-{36,4144,4141},
|
|
|
-{-149,4080,4112},
|
|
|
-{46,4146,4141},
|
|
|
-{-170,4073,4106},
|
|
|
-{-170,4073,4106},
|
|
|
-{-167,4071,4108},
|
|
|
-{65,4152,4143},
|
|
|
-{65,4152,4143},
|
|
|
-{-177,4067,4107},
|
|
|
-{-115,4079,4115},
|
|
|
-{-115,4079,4115},
|
|
|
-{-182,4067,4108},
|
|
|
-{-182,4067,4108},
|
|
|
-{-150,4072,4112},
|
|
|
-{-136,4066,4109},
|
|
|
-{-136,4066,4109},
|
|
|
-{-94,4083,4117},
|
|
|
-{-97,4092,4118},
|
|
|
-{-97,4092,4118},
|
|
|
-{-97,4092,4118},
|
|
|
-{-98,4093,4116},
|
|
|
-{-98,4093,4116},
|
|
|
-{24,4111,4124},
|
|
|
-{24,4111,4124},
|
|
|
-{-40,4089,4117},
|
|
|
-{-64,4106,4120},
|
|
|
-{-64,4106,4120},
|
|
|
-{-6,4128,4130},
|
|
|
-{-6,4128,4130},
|
|
|
-{-6,4126,4131},
|
|
|
-{-150,4082,4109},
|
|
|
-{-150,4082,4109},
|
|
|
-{-120,4089,4115},
|
|
|
-{-96,4091,4117},
|
|
|
-{-96,4091,4117},
|
|
|
-{-96,4091,4117},
|
|
|
-{-52,4112,4122},
|
|
|
-{-49,4115,4123},
|
|
|
-{-55,4111,4121},
|
|
|
-{-55,4111,4121},
|
|
|
-{-49,4115,4123},
|
|
|
-{-36,4115,4126},
|
|
|
-{-36,4115,4126},
|
|
|
-{-36,4115,4127},
|
|
|
-{-6,4126,4131},
|
|
|
-{-6,4126,4131},
|
|
|
-{66,4153,4143},
|
|
|
-{66,4153,4143},
|
|
|
-{-115,4075,4111},
|
|
|
-{61,4151,4143},
|
|
|
-{61,4151,4143},
|
|
|
-{54,4148,4142},
|
|
|
-{47,4126,4119},
|
|
|
-{47,4126,4119},
|
|
|
-{-82,4117,4129},
|
|
|
-{-51,4108,4122},
|
|
|
-{-138,4094,4118},
|
|
|
-{-133,4091,4111},
|
|
|
-{-133,4091,4111},
|
|
|
-{-154,4077,4109},
|
|
|
-{-63,4094,4123},
|
|
|
-{-63,4094,4123},
|
|
|
-{-125,4085,4109},
|
|
|
-{-125,4085,4109},
|
|
|
-{-133,4089,4110},
|
|
|
-{-49,4114,4122},
|
|
|
-{-49,4114,4122},
|
|
|
-{-38,4114,4127},
|
|
|
-{-24,4115,4127},
|
|
|
-{-24,4115,4127},
|
|
|
-{0,4128,4131},
|
|
|
-{0,4128,4132},
|
|
|
-{60,4150,4141},
|
|
|
-{-198,4061,4102},
|
|
|
-{-198,4061,4102},
|
|
|
-{-196,4057,4103},
|
|
|
-{-149,4076,4108},
|
|
|
-{-149,4076,4108},
|
|
|
-{-149,4076,4108},
|
|
|
-{12,4093,4127},
|
|
|
-{12,4093,4127},
|
|
|
-{-202,4053,4103},
|
|
|
-{-126,4083,4111},
|
|
|
-{-32,4115,4126},
|
|
|
-{52,4152,4141},
|
|
|
-{52,4152,4141},
|
|
|
-{0,4127,4130},
|
|
|
-{56,4147,4140},
|
|
|
-{56,4147,4140},
|
|
|
-{48,4141,4139},
|
|
|
-{0,4127,4130},
|
|
|
-{0,4127,4130},
|
|
|
-{-31,4148,4114},
|
|
|
-{-31,4148,4114},
|
|
|
-{-133,4077,4109},
|
|
|
-{-47,4114,4122},
|
|
|
-{-47,4114,4122},
|
|
|
-{-37,4104,4125},
|
|
|
-{-67,4122,4121},
|
|
|
-{-46,4107,4124},
|
|
|
-{-46,4107,4124},
|
|
|
-{-46,4107,4124},
|
|
|
-{-46,4107,4124},
|
|
|
-{0,4128,4131}};
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
+#include "BCUdisp.h"
|
|
|
+
|
|
|
+uint16_T appv_V_cellU[cmnc_num_cellUNumMax]; /* 静态电压 */
|
|
|
+uint8_T appd_st_preCyc;
|
|
|
+
|
|
|
+boolean_T spmd_flg_firstRun;
|
|
|
+boolean_T socd_flg_firstRun;
|
|
|
+boolean_T sohd_flg_firstRun;
|
|
|
+boolean_T blcd_flg_firstRun;
|
|
|
+boolean_T sord_flg_firstRun;
|
|
|
+boolean_T soed_flg_firstRun;
|
|
|
+boolean_T iscd_flg_firstRun;
|
|
|
+boolean_T pimd_flg_firstRun;
|
|
|
+boolean_T sfmd_flg_firstRun;
|
|
|
+boolean_T tmsd_flg_firstRun;
|
|
|
+boolean_T cdmd_flg_firstRun;
|
|
|
+boolean_T csmd_flg_firstRun;
|
|
|
+boolean_T sopd_flg_firstRun;
|
|
|
+
|
|
|
+uint16_T blcv_Q_reqCpEi[cmnc_num_cellUNumMax]; /*均衡需求容量 读取量(数组); */
|
|
|
+uint16_T blcv_Q_reqCpEo[cmnc_num_cellUNumMax]; /*均衡需求容量 写入量(数组); */
|
|
|
+uint32_T blcv_Q_totalCpEi[cmnc_num_cellUNumMax]; /*累计均衡容量 读取量(数组); */
|
|
|
+uint32_T blcv_Q_totalCpEo[cmnc_num_cellUNumMax]; /*累计均衡容量 写入量(数组); */
|
|
|
+boolean_T blcv_flg_excute[cmnc_num_cellUNumMax]; /*均衡执行请求标志位 (数组); */
|
|
|
+
|
|
|
+boolean_T ihd_flg_HVILFlt; /* 保护板上传的高压互锁故障 */
|
|
|
+boolean_T ihd_flg_DTCClear; /* 上位机发送的故障清楚指令;*/
|
|
|
+uint8_T ihd_st_authFaild; /* 底层诊断的认证失败故障;*/
|
|
|
+int16_T ihd_I_curr; /*电池包电流; */
|
|
|
+uint8_T ihd_st_chrgConnect; /*充电器连接状态; */
|
|
|
+uint16_T ihd_P_gas; /*气体浓度 */
|
|
|
+uint16_T ihd_T_ACPlugT; /*慢充插头温度 +40 */
|
|
|
+uint16_T ihd_T_DCPlugT; /*快充插头温度+40 */
|
|
|
+uint16_T ihd_T_bdtemp; /*板子温度 */
|
|
|
+uint16_T ihd_T_heatPanT1; /*加热板温度1+40 */
|
|
|
+uint16_T ihd_T_heatPanT2; /*加热板温度2 +40 */
|
|
|
+uint16_T ihd_T_mosT; /*Mos温度+40 */
|
|
|
+boolean_T ihd_flg_EESaveFlt; /*EE存储故障 */
|
|
|
+boolean_T ihd_flg_battULowFlt; /*保护板上传的总压欠压故障; */
|
|
|
+boolean_T ihd_flg_battUOverFlt; /*保护板上传的总压过压故障; */
|
|
|
+boolean_T ihd_flg_cellULowFlt; /*保护板上传的单体欠压故障; */
|
|
|
+boolean_T ihd_flg_cellUOverFlt; /*保护板上传的单体过压故障; */
|
|
|
+boolean_T ihd_flg_chrgCurrOverFlt; /*保护板上传的充电过流故障; */
|
|
|
+boolean_T ihd_flg_chrgModTLowFlt; /*保护板上传的充电模组温度过低故障; */
|
|
|
+boolean_T ihd_flg_chrgModTOverFlt; /*保护板上传的充电模组温度过高故障; */
|
|
|
+boolean_T ihd_flg_chrgMosClosFlt; /*充电Mos失效 */
|
|
|
+boolean_T ihd_flg_chrgMosTOverFlt; /*保护板上传的充电Mos温度过高故障; */
|
|
|
+boolean_T ihd_flg_currOpenFlt; /*保护板上传的电流开路故障 */
|
|
|
+boolean_T ihd_flg_disChrgCurrOverFlt; /*保护板上传的放电过流故障; */
|
|
|
+boolean_T ihd_flg_disChrgModTLowFlt; /*保护板上传的放电模组温度过低故障; */
|
|
|
+boolean_T ihd_flg_disChrgModTOverFlt; /*保护板上传的放电模组温度过高故障; */
|
|
|
+boolean_T ihd_flg_disChrgMosClosFlt; /*放电Mos失效 */
|
|
|
+boolean_T ihd_flg_disChrgMosTOverFlt; /*保护板上传的放电Mos温度过高故障; */
|
|
|
+boolean_T ihd_flg_urtRecFlt; /*内网通讯故障 */
|
|
|
+uint16_T ihd_pct_soc; /*保护板SOC */
|
|
|
+uint16_T ihd_pct_soh; /*保护板SOH */
|
|
|
+uint8_T ihd_st_workStat; /*电池工作状态 */
|
|
|
+uint16_T ihd_tm_parkTime; /*驻车时间; */
|
|
|
+uint16_T ihv_T_modT[cmnc_num_modTNumMax]; /*模组温度(数组)+40 */
|
|
|
+uint16_T ihv_V_cellU[cmnc_num_cellUNumMax]; /*电池单体电压(数组); */
|
|
|
+boolean_T ihd_st_chrgMosControl;
|
|
|
+boolean_T ihd_st_disChrgMosControl;
|
|
|
+boolean_T ihd_st_relayControl;
|
|
|
+uint8_T ihd_st_heatForceControl;
|
|
|
+uint8_T ihd_st_EOLState;
|
|
|
+boolean_T ihd_flg_urtRecFlg;
|
|
|
+uint8_T ihd_st_reSet;
|
|
|
+
|
|
|
+int16_T sfmd_I_curr; /*处理后整包电流 */
|
|
|
+uint16_T sfmd_T_modTMax; /*处理后模组温度最小 */
|
|
|
+uint16_T sfmd_T_modTMin; /*处理后模组温度最大 */
|
|
|
+uint16_T sfmd_idx_modTMax; /*处理后模组温度最小 */
|
|
|
+uint16_T sfmd_idx_modTMin; /*处理后模组温度最大 */
|
|
|
+uint16_T sfmd_V_cellUAvrg; /*处理后单体电压平均 */
|
|
|
+uint16_T sfmd_V_cellUMax; /*处理后单体电压最大 */
|
|
|
+uint16_T sfmd_V_cellUMin; /*处理后单体电压最小 */
|
|
|
+uint16_T sfmd_idx_cellUMin;
|
|
|
+uint16_T sfmd_idx_cellUMax;
|
|
|
+boolean_T sfmd_flg_cellUInval; /*单体电压有效标志位 ; 0为有效;1为无效 */
|
|
|
+boolean_T sfmd_flg_currInval; /*电流有效标志位 ; 0为有效;1为无效 */
|
|
|
+boolean_T sfmd_flg_modTInval; /*模组温度有效标志位 ; 0为有效;1为无效 */
|
|
|
+uint16_T sfmd_num_fltNum; /*故障数量 */
|
|
|
+uint8_T sfmd_st_fltAct; /*故障禁止指令 */
|
|
|
+uint8_T sfmd_st_fltLevel; /*故障等级 */
|
|
|
+uint16_T sfmv_T_modT[cmnc_num_modTNumMax]; /*处理后模组温度 */
|
|
|
+uint16_T sfmv_V_cellU[cmnc_num_cellUNumMax]; /*处理后单体电压 */
|
|
|
+uint16_T sfmv_idx_fltCode[20]; /*诊断故障码(数组) */
|
|
|
+uint16_T sfmd_V_battU; /* 处理过后的总电压 */
|
|
|
+boolean_T sfmd_flg_mainCirClosFltEi; /*主回路常闭故障读取量 */
|
|
|
+boolean_T sfmd_flg_mainCirClosFltEo; /*主回路常闭故障写入量 */
|
|
|
+boolean_T sfmd_flg_heatCirClosFltEi; /*加热回路常闭故障读取量 */
|
|
|
+boolean_T sfmd_flg_heatCirClosFltEo; /*加热回路常闭故障写入量 */
|
|
|
+boolean_T sfmd_flg_heatCirOpenFltEi; /*加热回路常开故障读取量 */
|
|
|
+boolean_T sfmd_flg_heatCirOpenFltEo; /*加热回路常开故障写入量 */
|
|
|
+boolean_T sfmd_flg_heatRunFltEi;
|
|
|
+boolean_T sfmd_flg_heatRunFltEo;
|
|
|
+boolean_T sfmd_flg_iscFltEi;
|
|
|
+boolean_T sfmd_flg_iscFltEo;
|
|
|
+
|
|
|
+uint16_T socd_pct_vcuSoc; /*vcuSOC; */
|
|
|
+uint16_T socd_pct_ahSoc; /*安时SOC; */
|
|
|
+uint16_T socd_pct_estSoc; /*估算SOC;*/
|
|
|
+uint16_T socd_flg_EEsave; /*实时存储标志位;*/
|
|
|
+uint16_T socd_pct_ekfSoc; /*EKFSOC;*/
|
|
|
+uint16_T socd_pct_battSoc; /*电池真实SOC; */
|
|
|
+uint16_T socd_pct_battSocEi; /*电池真实SOC 读取量; */
|
|
|
+uint16_T socd_pct_battSocEo; /*电池真实SOC 写入量; */
|
|
|
+uint16_T socd_pct_bcuSoc; /*电池显示SOC; */
|
|
|
+uint16_T socd_pct_bcuSocEi; /*电池显示SOC读取量; */
|
|
|
+uint16_T socd_pct_bcuSocEo; /*电池显示SOC写入量; */
|
|
|
+uint16_T socv_pct_cellSoc[cmnc_num_cellUNumMax];
|
|
|
+uint16_T socd_pct_cellBattSoc;
|
|
|
+boolean_T socd_flg_cellSocDisable;
|
|
|
+
|
|
|
+uint16_T sohd_Q_chrgEi; /*充入容量读取量; */
|
|
|
+uint16_T sohd_Q_chrgEo; /*充入容量写入量; */
|
|
|
+boolean_T sohd_flg_chrgEndEi; /*充电结束标志位读取量; */
|
|
|
+boolean_T sohd_flg_chrgEndEo; /*充电结束标志位写入量; */
|
|
|
+uint16_T sohd_pct_bcuSoh; /*电池SOH; */
|
|
|
+uint16_T sohd_tm_chrgStartStatEi; /*充电前静置时间读取量; */
|
|
|
+uint16_T sohd_tm_chrgStartStatEo; /*充电前静置时间写入量; */
|
|
|
+uint16_T sohv_Q_cellCap[cmnc_num_cellUNumMax]; /*单体容量 */
|
|
|
+uint16_T sohv_Q_cellCapArrEi[cmnc_num_cellUNumMax]; /*单体容量(数组) 读取量 */
|
|
|
+uint16_T sohv_Q_cellCapArrEo[cmnc_num_cellUNumMax]; /*单体容量(数组) 写入量 */
|
|
|
+uint16_T sohv_Q_packCapArrEi[10]; /*10次整包容量(数组)读取量; */
|
|
|
+uint16_T sohv_Q_packCapArrEo[10]; /*10次整包容量(数组)写入量; */
|
|
|
+uint16_T sohv_V_chrgStartStatEi[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)读取量; */
|
|
|
+uint16_T sohv_V_chrgStartStatEo[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)写入量; */
|
|
|
+
|
|
|
+uint16_T soed_E_nowEng;
|
|
|
+uint16_T soed_pct_nowStat;
|
|
|
+uint16_T soed_E_fullEng;
|
|
|
+
|
|
|
+uint16_T sopd_P_chrgPMax;
|
|
|
+uint16_T sopd_P_disChrgPMax;
|
|
|
+int16_T sopd_I_chrgCurrMax;
|
|
|
+int16_T sopd_I_disChrgCurrMax;
|
|
|
+
|
|
|
+uint16_T sorv_R_cellEi[cmnc_num_cellUNumMax];
|
|
|
+uint16_T sorv_R_cellEo[cmnc_num_cellUNumMax];
|
|
|
+uint16_T sorv_R_cell[cmnc_num_cellUNumMax];
|
|
|
+
|
|
|
+boolean_T iscd_flg_flt;
|
|
|
+uint16_T iscv_Q_remainCpEi[cmnc_num_cellUNumMax];
|
|
|
+uint32_T iscd_tm_totalEi;
|
|
|
+uint16_T iscv_Q_remainCpEo[cmnc_num_cellUNumMax];
|
|
|
+uint32_T iscd_tm_totalEo;
|
|
|
+
|
|
|
+uint8_T tmsd_st_heatAct; /*热管理请求状态; */
|
|
|
+
|
|
|
+uint8_T csmd_st_chrgMod; /* 充电模式 */
|
|
|
+uint8_T csmd_st_chrgSt; /* 充电状态 */
|
|
|
+int16_T csmd_I_chrgCurrReq; /* 充电需求电流 */
|
|
|
+uint8_T csmd_idx_chrgEndReason; /* 充电结束原因 */
|
|
|
+
|
|
|
+uint16_T cand_idx_cellNr; /*循环发送的单体编号; */
|
|
|
+uint16_T cand_Q_cellCap; /*循环发送的单体容量; */
|
|
|
+uint16_T cand_V_chrgStartStat; /*循环发送的充电前单体电压; */
|
|
|
+uint16_T cand_Q_blcReqCp; /*循环发送的单体需求均衡容量; */
|
|
|
+uint16_T cand_Q_blcTotalCp; /*循环发送的单体累计均衡容量; */
|
|
|
+
|
|
|
+int16_T cdmv_V_deltOCV[cmnc_num_cellUNumMax];
|
|
|
+int16_T cdmv_R_deltOhm[cmnc_num_cellUNumMax];
|
|
|
+boolean_T cdmv_flg_inval[cmnc_num_cellUNumMax];
|
|
|
+
|
|
|
+uint16_T pimd_V_ocv;
|
|
|
+uint16_T pimd_R_ohm;
|
|
|
+uint16_T pimd_R_polar;
|
|
|
+uint16_T pimd_F_polar;
|
|
|
+uint16_T pimv_V_cellOcv[cmnc_num_cellUNumMax];
|
|
|
+uint16_T pimv_R_cellOhm[cmnc_num_cellUNumMax];
|
|
|
+uint16_T pimd_pct_battSoc;
|
|
|
+uint16_T pimv_pct_cellSoc[cmnc_num_cellUNumMax];
|
|
|
+boolean_T pimv_flg_inval[cmnc_num_cellUNumMax];
|
|
|
+
|
|
|
+uint16_T test_cellCap[cmnc_num_cellUNumMax];
|
|
|
+uint16_T test_countEn;
|
|
|
+
|