修复一点bug,编码器重新校准

This commit is contained in:
ZHAISHUI04 2025-05-31 15:10:24 +08:00
parent 9fe37c6b89
commit 4c8a3945c4
5 changed files with 11 additions and 11 deletions

Binary file not shown.

View File

@ -129,7 +129,7 @@ int8_t Chassis_Control(Chassis_t *c, CMD_t *ctrl, CAN_Output_t *out) {
c->move_vec.Vy = 0;
c->move_vec.Vx = 0;
c->NUC_send .send [0]=1;
c->NUC_send .send [0]=0;
break;
case AUTO_NAVI_Adjust:
c->move_vec.Vw = ctrl->Vw * 6000;

View File

@ -110,13 +110,13 @@ static const ConfigParam_t param ={
},
/*投球*/
.PitchConfig_Config = {
.m2006_init_angle =-90,
.m2006_init_angle =-100,
.m2006_trigger_angle =0,
.go1_init_position = -50,
.go1_Receive_ball = -5, //偏下
.go1_release_threshold =-210,
.m2006_Screw_init=0,
.Pitch_angle =56,
.Pitch_angle =58,
},

View File

@ -317,7 +317,7 @@ int8_t UP_control(UP_t *u,CAN_Output_t *out,CMD_t *c)
{
if(u->DribbleContext.DribbleState== DRIBBLE_PREPARE){
u->DribbleContext .DribbleState=DRIBBLE_TRANSLATE;
u->DribbleContext .DribbleState=DRIBBLE_PROCESS_DOWN;
}
//光电状态更新
Dribble_Process(u,out);
@ -444,8 +444,8 @@ int8_t Dribble_Process(UP_t *u, CAN_Output_t *out)
case DRIBBLE_PROCESS_DOWN:
u->motor_target.Dribble_M3508_speed[0]=u->DribbleContext .DribbleConfig.m3508_dribble_speed;
u->motor_target.Dribble_M3508_speed[1]=-u->DribbleContext .DribbleConfig.m3508_dribble_speed;
u->motor_target.Dribble_M3508_speed[2]=-u->DribbleContext .DribbleConfig.m3508_dribble_speed;
u->motor_target.Dribble_M3508_speed[1]=u->DribbleContext .DribbleConfig.m3508_dribble_speed;
u->motor_target.Dribble_M3508_speed[2]=u->DribbleContext .DribbleConfig.m3508_dribble_speed;
if(is_reached_multiple(u->motorfeedback .DJmotor_feedback [0].rpm,
u->motorfeedback .DJmotor_feedback [1].rpm,
@ -461,8 +461,8 @@ int8_t Dribble_Process(UP_t *u, CAN_Output_t *out)
if(common_speed_flag){
if(u->DribbleContext .DribbleConfig .light_ball_flag == 0){//球下落检测,反转
u->motor_target.Dribble_M3508_speed[0]=u->DribbleContext .DribbleConfig.m3508_dribble_Reverse_speed;
u->motor_target.Dribble_M3508_speed[1]=-u->DribbleContext .DribbleConfig.m3508_dribble_Reverse_speed;
u->motor_target.Dribble_M3508_speed[2]=-u->DribbleContext .DribbleConfig.m3508_dribble_Reverse_speed;
u->motor_target.Dribble_M3508_speed[1]=u->DribbleContext .DribbleConfig.m3508_dribble_Reverse_speed;
u->motor_target.Dribble_M3508_speed[2]=u->DribbleContext .DribbleConfig.m3508_dribble_Reverse_speed;
u->DribbleContext .DribbleState=DRIBBLE_PROCESS_UP;
}
@ -475,8 +475,8 @@ int8_t Dribble_Process(UP_t *u, CAN_Output_t *out)
common_speed_flag =0;
if((u->motorfeedback .DJmotor_feedback [0].rpm<-2000)&&
(u->motorfeedback .DJmotor_feedback [1].rpm>2000)&&
(u->motorfeedback .DJmotor_feedback [2].rpm>2000)
(u->motorfeedback .DJmotor_feedback [1].rpm>-2000)&&
(u->motorfeedback .DJmotor_feedback [2].rpm>-2000)
){
if(u->DribbleContext .DribbleConfig .light_ball_flag == 1){

View File

@ -93,7 +93,7 @@ void CAN_Encoder_Decode(CAN_EncoderFeedback_t *feedback,
{
case 0x01:
feedback->ecd =raw[3]|raw[4]<<8|raw[5]<<16|raw[6]<<24;
feedback->angle=(fp32)(4089-(fp32)feedback->ecd)/(4089-3861)*(70.0f-50.0f)+50.0f;
feedback->angle=(fp32)(2048-(fp32)feedback->ecd)/(2048-1797)*(70.0f-48.0f)+48.0f;
break;
}