From d0727de06f7d87ec58dd6faa0784490ed6faa4b3 Mon Sep 17 00:00:00 2001 From: Robofish <1683502971@qq.com> Date: Wed, 1 Oct 2025 18:50:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=AE=8Cbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- User/module/config.c | 2 +- User/module/gimbal.c | 21 ++++++--------------- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/User/module/config.c b/User/module/config.c index ec473ae..91f7035 100644 --- a/User/module/config.c +++ b/User/module/config.c @@ -141,7 +141,7 @@ Config_RobotParam_t robot_config = { .gyro = 1000.0f, }, .pit_motor ={ - .can = BSP_CAN_1, + .can = BSP_CAN_2, .id = 0x206, .gear = false, .module = MOTOR_GM6020, diff --git a/User/module/gimbal.c b/User/module/gimbal.c index f96c444..69a10c3 100644 --- a/User/module/gimbal.c +++ b/User/module/gimbal.c @@ -209,25 +209,16 @@ int8_t Gimbal_Control(Gimbal_t *g, Gimbal_CMD_t *g_cmd) { break; case GIMBAL_MODE_ABSOLUTE: - // yaw_omega_set_point = PID_Calc(&(g->pid.yaw_angle), g->setpoint.eulr.yaw, - // g->feedback.imu.eulr.yaw, 0.0f, g->dt); - // g->out.yaw = PID_Calc(&(g->pid.pit_omega), yaw_omega_set_point, - // g->feedback.imu.gyro.z, 0.f, g->dt); - - // pit_omega_set_point = PID_Calc(&(g->pid.pit_angle), g->setpoint.eulr.pit, - // g->feedback.imu.eulr.rol, 0.0f, g->dt); - // g->out.pit = PID_Calc(&(g->pid.pit_omega), pit_omega_set_point, - // g->feedback.imu.gyro.y, 0.f, g->dt); - // yaw_omega_set_point = PID_Calc(&(g->pid.yaw_angle), g->setpoint.eulr.yaw, - // g->feedback.motor.yaw.rotor_abs_angle, 0.0f, g->dt); - // g->out.yaw = PID_Calc(&(g->pid.pit_omega), yaw_omega_set_point, - // g->feedback.imu.gyro.z, 0.f, g->dt); + yaw_omega_set_point = PID_Calc(&(g->pid.yaw_angle), g->setpoint.eulr.yaw, + g->feedback.imu.eulr.yaw, 0.0f, g->dt); + g->out.yaw = PID_Calc(&(g->pid.pit_omega), yaw_omega_set_point, + g->feedback.imu.gyro.z, 0.f, g->dt); pit_omega_set_point = PID_Calc(&(g->pid.pit_angle), g->setpoint.eulr.pit, - g->feedback.motor.pit.rotor_abs_angle, 0.0f, g->dt); + g->feedback.imu.eulr.rol, 0.0f, g->dt); g->out.pit = PID_Calc(&(g->pid.pit_omega), pit_omega_set_point, g->feedback.imu.gyro.y, 0.f, g->dt); - // g->out.pit = sinf(g->lask_wakeup/300000.0f); + break;