1、完善了控制阈值等级

2、修改了电机提速间隔
This commit is contained in:
2025-09-19 17:19:17 +08:00
parent 7f660d9939
commit 105824c0c3
3 changed files with 28 additions and 30 deletions
@@ -14,7 +14,7 @@
#define MAX_SPEED 480 // 最大速度(PWM占空比) #define MAX_SPEED 480 // 最大速度(PWM占空比)
#define ACCEL_STEP 10 // 加速步进值 #define ACCEL_STEP 10 // 加速步进值
#define DECEL_STEP 10 // 减速步进值 #define DECEL_STEP 10 // 减速步进值
#define ACCEL_INTERVAL 2 // 加减速间隔(ms) #define ACCEL_INTERVAL 10 // 加减速间隔(ms)
+2 -3
View File
@@ -7,12 +7,11 @@
#define USE_FILE_SYSTEM 1 #define USE_FILE_SYSTEM 1
#define SDCARD_BLOCK_MAX (10000) #define SDCARD_BLOCK_MAX (10000)
#define OSC_CNT 40 #define OSC_CNT 40
#define SLOPE_CNT 20 #define SLOPE_CNT 30
#define STOP_TIME_MS 500 #define STOP_TIME_MS 500
#define RUN_TIME_MS 200 #define RUN_TIME_MS 0
#define BDC_STOP() Motor_Control(MOTOR_CMD_STOP) #define BDC_STOP() Motor_Control(MOTOR_CMD_STOP)
#define BDC_UP() Motor_Control(MOTOR_CMD_FORWARD) #define BDC_UP() Motor_Control(MOTOR_CMD_FORWARD)
+25 -26
View File
@@ -78,63 +78,63 @@ void GradeControl(ControlLevel_m level)
{ {
switch(level){ switch(level){
case LEVEL_1:{ case LEVEL_1:{
App.ADTrack.Slope_VPT = 500; App.ADTrack.Slope_VPT = 1000;
App.ADTrack.LeftUpVPT = 10000; App.ADTrack.LeftUpVPT = 10000;
App.ADTrack.LeftLowVPT = 10000; App.ADTrack.LeftLowVPT = 10000;
App.ADTrack.RightUpVPT = 10000; App.ADTrack.RightUpVPT = 10000;
App.ADTrack.RightLowVPT = 10000; App.ADTrack.RightLowVPT = 10000;
App.ADTrack.LeftUpShieldVPT = 4000; App.ADTrack.LeftUpShieldVPT = 5000;
App.ADTrack.LeftLowShieldVPT = 4000; App.ADTrack.LeftLowShieldVPT = 5000;
App.ADTrack.RightUpShieldVPT = 4000; App.ADTrack.RightUpShieldVPT = 5000;
App.ADTrack.RightLowShieldVPT = 4000; App.ADTrack.RightLowShieldVPT = 5000;
break;} break;}
case LEVEL_2:{ case LEVEL_2:{
App.ADTrack.Slope_VPT = 500; App.ADTrack.Slope_VPT = 1000;
App.ADTrack.LeftUpVPT = 20000; App.ADTrack.LeftUpVPT = 20000;
App.ADTrack.LeftLowVPT = 20000; App.ADTrack.LeftLowVPT = 20000;
App.ADTrack.RightUpVPT = 20000; App.ADTrack.RightUpVPT = 20000;
App.ADTrack.RightLowVPT = 20000; App.ADTrack.RightLowVPT = 20000;
App.ADTrack.LeftUpShieldVPT = 4000; App.ADTrack.LeftUpShieldVPT = 5000;
App.ADTrack.LeftLowShieldVPT = 4000; App.ADTrack.LeftLowShieldVPT = 5000;
App.ADTrack.RightUpShieldVPT = 4000; App.ADTrack.RightUpShieldVPT = 5000;
App.ADTrack.RightLowShieldVPT = 4000; App.ADTrack.RightLowShieldVPT = 5000;
break;} break;}
case LEVEL_3:{ case LEVEL_3:{
App.ADTrack.Slope_VPT = 500; App.ADTrack.Slope_VPT = 1000;
App.ADTrack.LeftUpVPT = 30000; App.ADTrack.LeftUpVPT = 30000;
App.ADTrack.LeftLowVPT = 30000; App.ADTrack.LeftLowVPT = 30000;
App.ADTrack.RightUpVPT = 30000; App.ADTrack.RightUpVPT = 30000;
App.ADTrack.RightLowVPT = 30000; App.ADTrack.RightLowVPT = 30000;
App.ADTrack.LeftUpShieldVPT = 4000; App.ADTrack.LeftUpShieldVPT = 5000;
App.ADTrack.LeftLowShieldVPT = 4000; App.ADTrack.LeftLowShieldVPT = 5000;
App.ADTrack.RightUpShieldVPT = 4000; App.ADTrack.RightUpShieldVPT = 5000;
App.ADTrack.RightLowShieldVPT = 4000; App.ADTrack.RightLowShieldVPT = 5000;
break;} break;}
case LEVEL_4:{ case LEVEL_4:{
App.ADTrack.Slope_VPT = 500; App.ADTrack.Slope_VPT = 1000;
App.ADTrack.LeftUpVPT = 40000; App.ADTrack.LeftUpVPT = 40000;
App.ADTrack.LeftLowVPT = 40000; App.ADTrack.LeftLowVPT = 40000;
App.ADTrack.RightUpVPT = 40000; App.ADTrack.RightUpVPT = 40000;
App.ADTrack.RightLowVPT = 40000; App.ADTrack.RightLowVPT = 40000;
App.ADTrack.LeftUpShieldVPT = 4000; App.ADTrack.LeftUpShieldVPT = 5000;
App.ADTrack.LeftLowShieldVPT = 4000; App.ADTrack.LeftLowShieldVPT = 5000;
App.ADTrack.RightUpShieldVPT = 4000; App.ADTrack.RightUpShieldVPT = 5000;
App.ADTrack.RightLowShieldVPT = 4000; App.ADTrack.RightLowShieldVPT = 5000;
break;} break;}
case LEVEL_5:{ case LEVEL_5:{
App.ADTrack.Slope_VPT = 500; App.ADTrack.Slope_VPT = 1000;
App.ADTrack.LeftUpVPT = 50000; App.ADTrack.LeftUpVPT = 50000;
App.ADTrack.LeftLowVPT = 50000; App.ADTrack.LeftLowVPT = 50000;
App.ADTrack.RightUpVPT = 50000; App.ADTrack.RightUpVPT = 50000;
App.ADTrack.RightLowVPT = 50000; App.ADTrack.RightLowVPT = 50000;
App.ADTrack.LeftUpShieldVPT = 4000; App.ADTrack.LeftUpShieldVPT = 5000;
App.ADTrack.LeftLowShieldVPT = 4000; App.ADTrack.LeftLowShieldVPT = 5000;
App.ADTrack.RightUpShieldVPT = 4000; App.ADTrack.RightUpShieldVPT = 5000;
App.ADTrack.RightLowShieldVPT = 4000; App.ADTrack.RightLowShieldVPT = 5000;
break;} break;}
} }
} }
@@ -655,7 +655,6 @@ static void App1mSRoutine(void)
App.StopCollDelay1mSCnt--; App.StopCollDelay1mSCnt--;
if(App.RunCollDelay1mSCnt > 0) if(App.RunCollDelay1mSCnt > 0)
App.RunCollDelay1mSCnt--; App.RunCollDelay1mSCnt--;
if(App.EvenRunning == true) if(App.EvenRunning == true)
App.EvenRunDelay1mSCnt++; App.EvenRunDelay1mSCnt++;