From f40bb7707bccd4cc15eb200861602f514a4f5a9f Mon Sep 17 00:00:00 2001 From: liumin Date: Mon, 1 Dec 2025 16:18:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=8D=E9=A6=88=E8=BD=AC?= =?UTF-8?q?=E9=80=9F=E6=96=B9=E5=90=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app_demo/eth-xip/sf/app/app_differential_drive.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) 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));