修改反馈转速方向

This commit is contained in:
2025-12-01 16:18:30 +08:00
parent 90dd43f3f9
commit f40bb7707b

View File

@@ -662,7 +662,7 @@ static void diffInput(void *signal_id)
else if (signal_id == &un_motor_input1)// 处理第一个电机速度信号(左电机) else if (signal_id == &un_motor_input1)// 处理第一个电机速度信号(左电机)
{ {
diff_data.right_front_motor_speed = (float)((int16_t)(un_motor_input1.bit_data.MotCon_1Signal3) ) / 6.0; // 20250502 1号控制器增加反相 diff_data.right_front_motor_speed = -(float)((int16_t)(un_motor_input1.bit_data.MotCon_1Signal3) ) / 6.0; // 20250502 1号控制器增加反相
diff_data.right_rear_motor_speed = (float)((int16_t)(un_motor_input2.bit_data.MotCon_1Signal4) ) /6.0; diff_data.right_rear_motor_speed = (float)((int16_t)(un_motor_input2.bit_data.MotCon_1Signal4) ) /6.0;
// motor_speed_temp = (motor_speed_temp + (int16_t)un_motor_input2.bit_data.MotCon_1Signal4)/2/6; // motor_speed_temp = (motor_speed_temp + (int16_t)un_motor_input2.bit_data.MotCon_1Signal4)/2/6;
@@ -676,7 +676,7 @@ static void diffInput(void *signal_id)
} }
// diff_data.right_motor_speed = LOWPASS_FILTER(motor_speed_temp,right_speed_fiter[0]); // diff_data.right_motor_speed = LOWPASS_FILTER(motor_speed_temp,right_speed_fiter[0]);
diff_data.right_motor_speed = 0;//motor_speed_temp diff_data.right_motor_speed = motor_speed_temp;//
// right_speed_fiter[0] = diff_data.right_motor_speed; // right_speed_fiter[0] = diff_data.right_motor_speed;
@@ -692,7 +692,7 @@ static void diffInput(void *signal_id)
else if (signal_id == &un_motor_input2)// 处理第二个电机速度信号(右电机) else if (signal_id == &un_motor_input2)// 处理第二个电机速度信号(右电机)
{ {
diff_data.left_front_motor_speed = (float)( (int16_t)(un_motor_input1.bit_data.MotCon_1Signal4) ) /6.0; // 20250502 1号控制器增加反相 diff_data.left_front_motor_speed = (float)( (int16_t)(un_motor_input1.bit_data.MotCon_1Signal4) ) /6.0; // 20250502 1号控制器增加反相
diff_data.left_rear_motor_speed = (float)( (int16_t) (un_motor_input2.bit_data.MotCon_1Signal3) ) / 6.0; diff_data.left_rear_motor_speed = -(float)( (int16_t) (un_motor_input2.bit_data.MotCon_1Signal3) ) / 6.0;
if(fabs(diff_data.left_front_motor_speed) > fabs(diff_data.left_rear_motor_speed))//取速度较小的轮速 if(fabs(diff_data.left_front_motor_speed) > fabs(diff_data.left_rear_motor_speed))//取速度较小的轮速
{ {
@@ -703,7 +703,7 @@ static void diffInput(void *signal_id)
motor_speed_temp = diff_data.left_front_motor_speed; motor_speed_temp = diff_data.left_front_motor_speed;
} }
diff_data.left_motor_speed = 0; // motor_speed_temp diff_data.left_motor_speed = motor_speed_temp; //
// diff_data.left_motor_speed = LOWPASS_FILTER(motor_speed_temp,left_speed_fiter[0]);//低通滤波器 // diff_data.left_motor_speed = LOWPASS_FILTER(motor_speed_temp,left_speed_fiter[0]);//低通滤波器
// left_speed_fiter[0] = diff_data.left_motor_speed; // left_speed_fiter[0] = diff_data.left_motor_speed;
@@ -859,7 +859,6 @@ void diffParametersInit(void *signal_id)
printf("remote speed = %f, remote curvature = %f\n", deffspeed, deffcurvature); printf("remote speed = %f, remote curvature = %f\n", deffspeed, deffcurvature);
deffspeed = (float)((int16_t)(un_manual_computer_input.bit_data.set_speed)); deffspeed = (float)((int16_t)(un_manual_computer_input.bit_data.set_speed));
deffcurvature = (float)((int16_t)(un_manual_computer_input.bit_data.set_curvature)); deffcurvature = (float)((int16_t)(un_manual_computer_input.bit_data.set_curvature));
// 单位转换 // 单位转换