|
@@ -645,6 +645,7 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
|
|
|
if((MC_ConfigParam2.SpeedLimitStartAdj > 50) || (MC_ConfigParam2.SpeedLimitStartAdj < -50)) MC_ConfigParam2.SpeedLimitStartAdj=0;
|
|
|
if((MC_ConfigParam2.SpeedLimitEndAdj > 50) || (MC_ConfigParam2.SpeedLimitEndAdj < -50)) MC_ConfigParam2.SpeedLimitEndAdj=0;
|
|
|
|
|
|
+ #if 0
|
|
|
if(MC_GasMode_Param.Mode_bit.SpeedLimit <= 5)
|
|
|
{
|
|
|
speedLimitStart = (((MC_ConfigParam1.SpeedLimit + (int8_t)MC_ConfigParam2.SpeedLimitAdj + GasMode_Param.Mode_bit.SpeedLimit + 0x1F - (0xAA >> 3) - 2) * 10 + MC_ConfigParam2.SpeedLimitStartAdj) * MC_LimitSpeed_Cal_K_BySOC((((MC_ConfigParam1.SpeedLimit >> 7) & 0x01) == 0 ? ENABLE : DISABLE), MC_RunInfo.SOC)) >> 10;
|
|
@@ -657,6 +658,11 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
|
|
|
speedLimitEnd = (((MC_ConfigParam1.SpeedLimit + (int8_t)MC_ConfigParam2.SpeedLimitAdj + GasMode_Param.Mode_bit.SpeedLimit - (0xAA >> 3)) * 10 + MC_ConfigParam2.SpeedLimitEndAdj + 22) * MC_LimitSpeed_Cal_K_BySOC((((MC_ConfigParam1.SpeedLimit >> 7) & 0x01) == 0 ? ENABLE : DISABLE), MC_RunInfo.SOC)) >> 10;
|
|
|
slewRate = 1024 / (speedLimitEnd - speedLimitStart - 3);
|
|
|
}
|
|
|
+ #else //客户测试,限速32km/h
|
|
|
+ speedLimitStart = 310;
|
|
|
+ speedLimitEnd = 345;
|
|
|
+ slewRate = 29;
|
|
|
+ #endif
|
|
|
|
|
|
//随车速调节助力比
|
|
|
if(MC_GasMode_Param.Mode_bit.StartMode == 0) //零速启动
|
|
@@ -781,7 +787,11 @@ MC_CalParam_Struct_t MC_AssistRunMode_Walk_Process(MC_WorkMode_Struct_t p_MC_Wor
|
|
|
uint8_t WalkMode_MotorSpeedSet = 0;
|
|
|
|
|
|
//新增配置项,兼容旧电机
|
|
|
+ #if 0
|
|
|
WalkMode_MotorSpeedSet = (MC_ConfigParam1.WalkMode_MotorSpeedSet == 0) ? 135 : MC_ConfigParam1.WalkMode_MotorSpeedSet;
|
|
|
+ #else //客户需求推行2.6mph
|
|
|
+ WalkMode_MotorSpeedSet = 105;
|
|
|
+ #endif
|
|
|
|
|
|
if(MC_WalkProcess_Param.MotorSpeedSetBigin < (WalkMode_MotorSpeedSet << 5) - 10)
|
|
|
{
|
|
@@ -1228,9 +1238,21 @@ MC_CalParam_Struct_t MC_AssistRunMode_Torque_Process(uint16_t SenorData, MC_Gear
|
|
|
if((MC_ConfigParam2.SpeedLimitStartAdj > 50) || (MC_ConfigParam2.SpeedLimitStartAdj < -50)) MC_ConfigParam2.SpeedLimitStartAdj = 0;
|
|
|
if((MC_ConfigParam2.SpeedLimitEndAdj > 50) || (MC_ConfigParam2.SpeedLimitEndAdj < -50)) MC_ConfigParam2.SpeedLimitEndAdj = 0;
|
|
|
|
|
|
+ #if 1 //客户测试,加大限速区间
|
|
|
+ MC_ConfigParam2.SpeedLimitStartAdj = -10;
|
|
|
+ MC_ConfigParam2.SpeedLimitEndAdj = 20;
|
|
|
+ #endif
|
|
|
+
|
|
|
+ #if 0
|
|
|
speedLimitStart = (((MC_ConfigParam1.SpeedLimit + (int8_t)MC_ConfigParam2.SpeedLimitAdj) * 10 + MC_ConfigParam2.SpeedLimitStartAdj) * MC_LimitSpeed_Cal_K_BySOC((((MC_ConfigParam1.SpeedLimit >> 7) & 0x01) == 0 ? ENABLE : DISABLE), MC_RunInfo.SOC)) >> 10;
|
|
|
speedLimitEnd = (((MC_ConfigParam1.SpeedLimit + (int8_t)MC_ConfigParam2.SpeedLimitAdj) * 10 + MC_ConfigParam2.SpeedLimitEndAdj + 22) * MC_LimitSpeed_Cal_K_BySOC((((MC_ConfigParam1.SpeedLimit >> 7) & 0x01) == 0 ? ENABLE : DISABLE), MC_RunInfo.SOC)) >> 10;
|
|
|
- slewRate = 1024 / (speedLimitEnd - speedLimitStart - 3);
|
|
|
+ slewRate = 1024 / (speedLimitEnd - speedLimitStart - 3);
|
|
|
+ #else //客户测试,限速45km/h
|
|
|
+ speedLimitStart = 450;
|
|
|
+ speedLimitEnd = 475;
|
|
|
+ slewRate = 40;
|
|
|
+ #endif
|
|
|
+
|
|
|
//随车速调节助力比
|
|
|
Torque_Temp = (uint16_t)((uint32_t)(Torque_Temp * Function_Linear_3Stage(speedLimitStart, 0, speedLimitStart, slewRate, MC_SpeedSensorData.Speed_Data)) >> 10);
|
|
|
|