待测版本(ID修改完成)

This commit is contained in:
fcl
2026-03-10 19:10:47 +08:00
parent 69e97cbefa
commit 09802b3daa
4 changed files with 12 additions and 12 deletions

View File

@@ -66,7 +66,7 @@ void GimbalInit()
Motor_Init_Config_s pitch_config = { Motor_Init_Config_s pitch_config = {
.can_init_config = { .can_init_config = {
.can_handle = &hcan2, .can_handle = &hcan2,
.tx_id = 4, .tx_id = 4,//2
}, },
.controller_param_init_config = { .controller_param_init_config = {
.angle_PID = { .angle_PID = {

View File

@@ -52,10 +52,10 @@ void ShootInit()
.motor_reverse_flag = MOTOR_DIRECTION_NORMAL, .motor_reverse_flag = MOTOR_DIRECTION_NORMAL,
}, },
.motor_type = M3508}; .motor_type = M3508};
friction_config.can_init_config.tx_id = 1, friction_config.can_init_config.tx_id = 5,
friction_l = DJIMotorInit(&friction_config); friction_l = DJIMotorInit(&friction_config);
friction_config.can_init_config.tx_id = 2; // 右摩擦轮,改txid和方向就行 friction_config.can_init_config.tx_id = 8; // 右摩擦轮,改txid和方向就行
friction_config.controller_setting_init_config.motor_reverse_flag = MOTOR_DIRECTION_REVERSE; friction_config.controller_setting_init_config.motor_reverse_flag = MOTOR_DIRECTION_REVERSE;
friction_r = DJIMotorInit(&friction_config); friction_r = DJIMotorInit(&friction_config);
@@ -63,7 +63,7 @@ void ShootInit()
Motor_Init_Config_s loader_config = { Motor_Init_Config_s loader_config = {
.can_init_config = { .can_init_config = {
.can_handle = &hcan2, .can_handle = &hcan2,
.tx_id = 5, .tx_id = 7,
}, },
.controller_param_init_config = { .controller_param_init_config = {
.angle_PID = { .angle_PID = {
@@ -96,7 +96,7 @@ void ShootInit()
.close_loop_type = CURRENT_LOOP | SPEED_LOOP, .close_loop_type = CURRENT_LOOP | SPEED_LOOP,
.motor_reverse_flag = MOTOR_DIRECTION_NORMAL, // 注意方向设置为拨盘的拨出的击发方向 .motor_reverse_flag = MOTOR_DIRECTION_NORMAL, // 注意方向设置为拨盘的拨出的击发方向
}, },
.motor_type = M3508 // 英雄使用m3508 .motor_type = M2006 // 英雄使用m3508
}; };
loader = DJIMotorInit(&loader_config); loader = DJIMotorInit(&loader_config);

View File

@@ -61,10 +61,10 @@ static void f_Integral_Limit(PIDInstance *pid)
} }
// 微分先行(仅使用反馈值而不计参考输入的微分) // 微分先行(仅使用反馈值而不计参考输入的微分)
static void f_Derivative_On_Measurement(PIDInstance *pid) // static void f_Derivative_On_Measurement(PIDInstance *pid)
{ // {
pid->Dout = pid->Kd * (pid->Last_Measure - pid->Measure) / pid->dt; // pid->Dout = pid->Kd * (pid->Last_Measure - pid->Measure) / pid->dt;
} // }
// 微分滤波(采集微分时,滤除高频噪声) // 微分滤波(采集微分时,滤除高频噪声)
static void f_Derivative_Filter(PIDInstance *pid) static void f_Derivative_Filter(PIDInstance *pid)
@@ -172,8 +172,8 @@ float PIDCalculate(PIDInstance *pid, float measure, float ref)
if (pid->Improve & PID_ChangingIntegrationRate) if (pid->Improve & PID_ChangingIntegrationRate)
f_Changing_Integration_Rate(pid); f_Changing_Integration_Rate(pid);
// 微分先行 // 微分先行
if (pid->Improve & PID_Derivative_On_Measurement) // if (pid->Improve & PID_Derivative_On_Measurement)
f_Derivative_On_Measurement(pid); // f_Derivative_On_Measurement(pid);
// 微分滤波器 // 微分滤波器
if (pid->Improve & PID_DerivativeFilter) if (pid->Improve & PID_DerivativeFilter)
f_Derivative_Filter(pid); f_Derivative_Filter(pid);

View File

@@ -40,7 +40,7 @@ static void sbus_to_rc(const uint8_t *sbus_buf)
rc_ctrl[TEMP].rc.rocker_l_ = (((sbus_buf[2] >> 6) | (sbus_buf[3] << 2) | (sbus_buf[4] << 10)) & 0x07ff) - RC_CH_VALUE_OFFSET; //!< Channel 2 rc_ctrl[TEMP].rc.rocker_l_ = (((sbus_buf[2] >> 6) | (sbus_buf[3] << 2) | (sbus_buf[4] << 10)) & 0x07ff) - RC_CH_VALUE_OFFSET; //!< Channel 2
rc_ctrl[TEMP].rc.rocker_l1 = (((sbus_buf[4] >> 1) | (sbus_buf[5] << 7)) & 0x07ff) - RC_CH_VALUE_OFFSET; //!< Channel 3 rc_ctrl[TEMP].rc.rocker_l1 = (((sbus_buf[4] >> 1) | (sbus_buf[5] << 7)) & 0x07ff) - RC_CH_VALUE_OFFSET; //!< Channel 3
rc_ctrl[TEMP].rc.dial = ((sbus_buf[16] | (sbus_buf[17] << 8)) & 0x07FF) - RC_CH_VALUE_OFFSET; rc_ctrl[TEMP].rc.dial = ((sbus_buf[16] | (sbus_buf[17] << 8)) & 0x07FF) - RC_CH_VALUE_OFFSET;
rc_ctrl[TEMP].rc.rocker_l_= rc_ctrl[TEMP].rc.rocker_l_; rc_ctrl[TEMP].rc.rocker_l_= rc_ctrl[TEMP].rc.rocker_l_+30;
// 左侧拨轮 // 左侧拨轮
RectifyRCjoystick(); RectifyRCjoystick();
// 开关,0左1右 // 开关,0左1右