feat: 适配新结构,反转电机并增加复位高度

This commit is contained in:
bmy
2024-08-03 12:36:36 +08:00
parent bbbd95ac2b
commit dff6629dc3
2 changed files with 7 additions and 10 deletions

View File

@@ -3,7 +3,6 @@
"type": "ARM", "type": "ARM",
"dependenceList": [], "dependenceList": [],
"srcDirs": [ "srcDirs": [
".eide/deps",
"3rd-part", "3rd-part",
"libraries/cmsis", "libraries/cmsis",
"libraries/drivers", "libraries/drivers",
@@ -68,13 +67,11 @@
"libraries/cmsis/cm4/device_support", "libraries/cmsis/cm4/device_support",
"project/inc", "project/inc",
".cmsis/include", ".cmsis/include",
".eide/deps",
"3rd-part/PID-Library", "3rd-part/PID-Library",
"app", "app",
"3rd-part/lwprintf" "3rd-part/lwprintf"
], ],
"libList": [], "libList": [],
"sourceDirList": [],
"defineList": [ "defineList": [
"USE_STDPERIPH_DRIVER", "USE_STDPERIPH_DRIVER",
"AT32F425C8T7" "AT32F425C8T7"
@@ -82,5 +79,5 @@
} }
} }
}, },
"version": "3.3" "version": "3.4"
} }

View File

@@ -24,11 +24,11 @@ void by_motion_set_pwm_m1(int32_t pwm_duty)
pwm_duty = clip_s32(pwm_duty, -900, 900); // 不可以拉满哦 pwm_duty = clip_s32(pwm_duty, -900, 900); // 不可以拉满哦
if (pwm_duty < 0) { if (pwm_duty < 0) {
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, -pwm_duty); tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, -pwm_duty);
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, 0);
} else {
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, 0); tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, 0);
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, pwm_duty); } else {
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, 0);
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, pwm_duty);
} }
} }
@@ -49,7 +49,7 @@ int16_t by_motion_get_speed_m1(void)
{ {
#define alpha (0.1f) #define alpha (0.1f)
static float last_speed = 0.0f; static float last_speed = 0.0f;
param_m1.real_speed = alpha * last_speed + (1.0f - alpha) * (float)(+1 * (int16_t)tmr_counter_value_get(TMR3)); param_m1.real_speed = alpha * last_speed + (1.0f - alpha) * (float)(-1 * (int16_t)tmr_counter_value_get(TMR3));
last_speed = param_m1.real_speed; last_speed = param_m1.real_speed;
tmr_counter_value_set(TMR3, 0); tmr_counter_value_set(TMR3, 0);
return (int16_t)param_m1.real_speed; return (int16_t)param_m1.real_speed;
@@ -184,7 +184,7 @@ void by_motion_init(void)
// 等待复位 // 等待复位
} }
by_motion_set_speed_m1(0); by_motion_set_speed_m1(0);
by_motion_set_distance2(100, 30); by_motion_set_distance2(130, 30);
delay_ms(2600); delay_ms(2600);
by_motion_set_distance2(0, 30); by_motion_set_distance2(0, 30);
} }