Forráskód Böngészése

修改档位不限功率参数。

Deyauo 1 éve
szülő
commit
7ffcab463e

+ 1 - 1
MDK-ARM/QD007A_CTL_APP.uvprojx

@@ -14,7 +14,7 @@
         <TargetCommonOption>
           <Device>STM32F103RB</Device>
           <Vendor>STMicroelectronics</Vendor>
-          <PackID>Keil.STM32F1xx_DFP.2.3.0</PackID>
+          <PackID>Keil.STM32F1xx_DFP.1.1.0</PackID>
           <PackURL>http://www.keil.com/pack/</PackURL>
           <Cpu>IROM(0x08000000,0x20000) IRAM(0x20000000,0x5000) CPUTYPE("Cortex-M3") CLOCK(12000000) ELITTLE</Cpu>
           <FlashUtilSpec></FlashUtilSpec>

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 1547 - 1547
MDK-ARM/QD007A_CTL_APP/QD007A_CTL_APP_CRC.hex


BIN
MDK-ARM/bin/QD007A_CTL_APP.bin


+ 25 - 6
User/Src/motor_control.c

@@ -647,7 +647,7 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 			case MC_GearSt_Torque_ECO:
 			{
 				//控制输入给定加速斜率
-				TorqueAccStep = 4;
+				TorqueAccStep = 2;
 				//控制输入给定减速斜率
 				TorqueDecStep = 2;	
 				//根据输入调节力矩环给定
@@ -666,7 +666,7 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 			case MC_GearSt_Torque_NORM:
 			{
 				//控制输入给定加速斜率
-				TorqueAccStep = 4;
+				TorqueAccStep = 2;
 				//控制输入给定减速斜率
 				TorqueDecStep = 2;	
 				//根据输入调节力矩环给定
@@ -685,7 +685,7 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 			case MC_GearSt_Torque_SPORT:
 			{
 				//控制输入给定加速斜率
-				TorqueAccStep = 4;
+				TorqueAccStep = 2;
 				//控制输入给定减速斜率
 				TorqueDecStep = 2;	
 				//根据输入调节力矩环给定
@@ -704,7 +704,7 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 			case MC_GearSt_Torque_TURBO:
 			{
 				//控制输入给定加速斜率
-				TorqueAccStep = 4;
+				TorqueAccStep = 2;
 				//控制输入给定减速斜率
 				TorqueDecStep = 2;	
 				//根据输入调节力矩环给定
@@ -750,8 +750,9 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 		}
 	}
 	else if(GasMode_Param.Mode_bit.PowerLimitFlag == 0) //不根据挡位限制功率,按照Turbo参数
-	{
-	  //控制输入给定加速斜率
+	{		
+    #if 0 //限制最大力矩
+    //控制输入给定加速斜率
 		TorqueAccStep = (MC_AssisParam.Gear_SMART.AccCnt <= 0) ? 1 : MC_AssisParam.Gear_SMART.AccCnt;
 		//控制输入给定减速斜率
 		TorqueDecStep = MC_AssisParam.Gear_TURBO.DecCnt;	
@@ -765,7 +766,25 @@ MC_CalParam_Struct_t MC_AssistRunMode_GasTorque_Process(MC_GasMode_Struct_t GasM
 		PID_IMax.hLower_Limit_Output = -(MC_AssisParam.Gear_TURBO.Upper_Iq);   //Lower Limit for Output limitation
 		PID_IMax.hUpper_Limit_Output = 0; //Upper Limit for Output limitation
 		PID_IMax.wLower_Limit_Integral = -(MC_AssisParam.Gear_TURBO.Upper_Iq << 10); // 放大1024
+		PID_IMax.wUpper_Limit_Integral = 0; // 放大1024		
+        
+    #else //根据车速限制最大力矩
+    //控制输入给定加速斜率
+		TorqueAccStep = 2;
+		//控制输入给定减速斜率
+		TorqueDecStep = 2;	
+		//根据输入调节力矩环给定
+		Torque_Temp = (uint32_t)(MC_TorqueProcess_Param.TorqueApp * MC_Cal_MaxIq_BySpeed(50, 100, 2100, 1365, MC_SpeedSensorData.Speed_Data)) >> 11;
+		//给定上限
+		Torque_Temp = (Torque_Temp > MC_Cal_MaxIq_BySpeed(50, 100, 2100, 1365, MC_SpeedSensorData.Speed_Data)) ? MC_Cal_MaxIq_BySpeed(50, 100, 2100, 1365, MC_SpeedSensorData.Speed_Data) : Torque_Temp;
+		//限流参数设置
+		CurrentLimitSet = (uint32_t)(1024 * MC_ConfigParam1.CurrentLimit * 1000 >> 17) * 100;
+		CurrentLimitPresent = MC_DataSet_Linear_Process(CurrentLimitSet, CurrentLimitPresent, 5 ,1);
+		PID_IMax.hLower_Limit_Output = -(MC_Cal_MaxIq_BySpeed(50, 100, 2100, 1365, MC_SpeedSensorData.Speed_Data));   //Lower Limit for Output limitation
+		PID_IMax.hUpper_Limit_Output = 0; //Upper Limit for Output limitation
+		PID_IMax.wLower_Limit_Integral = -(MC_Cal_MaxIq_BySpeed(50, 100, 2100, 1365, MC_SpeedSensorData.Speed_Data) << 10); // 放大1024
 		PID_IMax.wUpper_Limit_Integral = 0; // 放大1024
+    #endif
 	}
 	
 	//限速值设定

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott