diff --git a/boards/e3_176_ref/app_demo/eth-xip/sf/app/app_differential_drive.c b/boards/e3_176_ref/app_demo/eth-xip/sf/app/app_differential_drive.c index 7009304..11a39e4 100644 --- a/boards/e3_176_ref/app_demo/eth-xip/sf/app/app_differential_drive.c +++ b/boards/e3_176_ref/app_demo/eth-xip/sf/app/app_differential_drive.c @@ -662,7 +662,7 @@ static void diffInput(void *signal_id) 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; // 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 = 0;//motor_speed_temp + diff_data.right_motor_speed = motor_speed_temp;// // 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)// 处理第二个电机速度信号(右电机) { 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))//取速度较小的轮速 { @@ -703,7 +703,7 @@ static void diffInput(void *signal_id) 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]);//低通滤波器 // left_speed_fiter[0] = diff_data.left_motor_speed; @@ -858,7 +858,6 @@ void diffParametersInit(void *signal_id) deffcurvature = deffcurvature * 0.0001f; printf("remote speed = %f, remote curvature = %f\n", deffspeed, deffcurvature); - deffspeed = (float)((int16_t)(un_manual_computer_input.bit_data.set_speed)); deffcurvature = (float)((int16_t)(un_manual_computer_input.bit_data.set_curvature));