mirror of
https://gitee.com/dlmu-cone/half-steering-basic-framework
synced 2026-10-23 17:42:20 +08:00
reast
This commit is contained in:
@@ -177,7 +177,7 @@ void ChassisInit()
|
|||||||
cap = SuperCapInit(&cap_conf); // 超级电容初始化 todo 控制
|
cap = SuperCapInit(&cap_conf); // 超级电容初始化 todo 控制
|
||||||
|
|
||||||
// (新增)设置超级电容功率补偿,例如补偿5W,可根据实际需求调整 todo 控制
|
// (新增)设置超级电容功率补偿,例如补偿5W,可根据实际需求调整 todo 控制
|
||||||
// SuperCapSetPowerOffset(cap, 5);
|
SuperCapSetPowerOffset(cap, 5);
|
||||||
|
|
||||||
// 发布订阅初始化,如果为双板,则需要can comm来传递消息
|
// 发布订阅初始化,如果为双板,则需要can comm来传递消息
|
||||||
#ifdef CHASSIS_BOARD
|
#ifdef CHASSIS_BOARD
|
||||||
|
|||||||
@@ -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 = 5,
|
friction_config.can_init_config.tx_id = 1,
|
||||||
friction_l = DJIMotorInit(&friction_config);
|
friction_l = DJIMotorInit(&friction_config);
|
||||||
|
|
||||||
friction_config.can_init_config.tx_id = 8; // 右摩擦轮,改txid和方向就行
|
friction_config.can_init_config.tx_id = 2; // 右摩擦轮,改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 = 7,
|
.tx_id = 5,
|
||||||
},
|
},
|
||||||
.controller_param_init_config = {
|
.controller_param_init_config = {
|
||||||
.angle_PID = {
|
.angle_PID = {
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
@@ -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_+30;
|
rc_ctrl[TEMP].rc.rocker_l_= rc_ctrl[TEMP].rc.rocker_l_+3;
|
||||||
// 左侧拨轮
|
// 左侧拨轮
|
||||||
RectifyRCjoystick();
|
RectifyRCjoystick();
|
||||||
// 开关,0左1右
|
// 开关,0左1右
|
||||||
|
|||||||
Reference in New Issue
Block a user