From 410d62198f1ecdb41a6b1fa3efff6f6dc828166e Mon Sep 17 00:00:00 2001 From: ZHAISHUI04 <3150778793@qq.com> Date: Mon, 5 May 2025 14:54:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86freertos=E7=9A=84?= =?UTF-8?q?=E5=86=85=E5=AD=98=EF=BC=8C=E5=A2=9E=E5=8A=A0can2=E4=B8=8A?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Inc/FreeRTOSConfig.h | 2 +- MDK-ARM/R2.uvoptx | 10 +++ MDK-ARM/R2/R2.axf | Bin 2833972 -> 2834876 bytes R2.ioc | 3 +- User/Module/Chassis.c | 25 ++----- User/Module/Chassis.h | 27 -------- User/Module/config.c | 39 +++++++++-- User/Module/up.c | 96 ++++++++++++++++----------- User/Module/up.h | 40 +++++++---- User/device/can_use.c | 136 +++++++++++++++----------------------- User/device/can_use.h | 60 ++++++++--------- User/task/can_task.c | 17 ++--- User/task/chassis_task.c | 6 -- User/task/init.c | 4 +- User/task/up_task.c | 14 ++-- User/task/user_task.h | 5 +- 16 files changed, 239 insertions(+), 245 deletions(-) diff --git a/Core/Inc/FreeRTOSConfig.h b/Core/Inc/FreeRTOSConfig.h index 19445a7..d9fcec8 100644 --- a/Core/Inc/FreeRTOSConfig.h +++ b/Core/Inc/FreeRTOSConfig.h @@ -69,7 +69,7 @@ #define configTICK_RATE_HZ ((TickType_t)1000) #define configMAX_PRIORITIES ( 56 ) #define configMINIMAL_STACK_SIZE ((uint16_t)128) -#define configTOTAL_HEAP_SIZE ((size_t)15360) +#define configTOTAL_HEAP_SIZE ((size_t)0x6000) #define configMAX_TASK_NAME_LEN ( 16 ) #define configUSE_TRACE_FACILITY 1 #define configUSE_16_BIT_TICKS 0 diff --git a/MDK-ARM/R2.uvoptx b/MDK-ARM/R2.uvoptx index 3ee1328..9610097 100644 --- a/MDK-ARM/R2.uvoptx +++ b/MDK-ARM/R2.uvoptx @@ -195,6 +195,16 @@ 1 cmd_fromnuc + + 9 + 1 + up_cmd,0x0A + + + 10 + 1 + can_out + 0 diff --git a/MDK-ARM/R2/R2.axf b/MDK-ARM/R2/R2.axf index 5768f979673eb75282161ded8ddf55e6e87243c1..a717ef1df898be3ce26c972e9e368f885923c3de 100644 GIT binary patch delta 137284 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 m#-i-vdOQO1;fiQhDQ0ayJ% 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 diff --git a/R2.ioc b/R2.ioc index 1e268a9..730c0b8 100644 --- a/R2.ioc +++ b/R2.ioc @@ -107,9 +107,10 @@ FREERTOS.INCLUDE_xEventGroupSetBitFromISR=1 FREERTOS.INCLUDE_xSemaphoreGetMutexHolder=1 FREERTOS.INCLUDE_xTaskAbortDelay=1 FREERTOS.INCLUDE_xTaskGetHandle=1 -FREERTOS.IPParameters=Tasks01,INCLUDE_pcTaskGetTaskName,INCLUDE_xSemaphoreGetMutexHolder,INCLUDE_vTaskCleanUpResources,INCLUDE_xEventGroupSetBitFromISR,INCLUDE_uxTaskGetStackHighWaterMark2,INCLUDE_xTaskGetHandle,INCLUDE_xTaskAbortDelay,configCHECK_FOR_STACK_OVERFLOW +FREERTOS.IPParameters=Tasks01,INCLUDE_pcTaskGetTaskName,INCLUDE_xSemaphoreGetMutexHolder,INCLUDE_vTaskCleanUpResources,INCLUDE_xEventGroupSetBitFromISR,INCLUDE_uxTaskGetStackHighWaterMark2,INCLUDE_xTaskGetHandle,INCLUDE_xTaskAbortDelay,configCHECK_FOR_STACK_OVERFLOW,configTOTAL_HEAP_SIZE FREERTOS.Tasks01=defaultTask,24,128,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL FREERTOS.configCHECK_FOR_STACK_OVERFLOW=1 +FREERTOS.configTOTAL_HEAP_SIZE=0x6000 File.Version=6 GPIO.groupedBy=Group By Peripherals KeepUserPlacement=false diff --git a/User/Module/Chassis.c b/User/Module/Chassis.c index f05467b..338b2e3 100644 --- a/User/Module/Chassis.c +++ b/User/Module/Chassis.c @@ -42,19 +42,6 @@ int8_t Chassis_UpdateFeedback(Chassis_t *c, const CAN_t *can) { } - c->motorfeedback.rotor_pit6020angle = can->motor.pit6020.as_array[0].rotor_ecd; - c->motorfeedback.rotor_pit6020rpm = can->motor.pit6020.as_array[0].rotor_speed; - - c->motorfeedback.rotor_gimbal_yawangle = can->motor.chassis6020.as_array[0].rotor_ecd; - c->motorfeedback.rotor_gimbal_yawrpm = can->motor.chassis6020.as_array[0].rotor_speed; - - c->motorfeedback.rotor_gimbal_pitchangle = can->motor.chassis6020.as_array[1].rotor_ecd; - c->motorfeedback.rotor_gimbal_pitchrpm = can->motor.chassis6020.as_array[1].rotor_speed; - -// c->sick_dis[0] = can->sickfed.raw_dis[0]; -// c->sick_dis[1] = can->sickfed.raw_dis[1]; -// c->sick_dis[2] = can->sickfed.raw_dis[2]; -// c->sick_dis[3] = can->sickfed.raw_dis[3]; return CHASSIS_OK; } @@ -98,10 +85,10 @@ int8_t Chassis_init(Chassis_t *c,const Chassis_Param_t *param,float target_freq) void Chassis_speed_calculate(Chassis_t *c,fp32 Vx,fp32 Vy,fp32 Vw) //底盘逆运动学的解算 { - c->hopemotorout.OmniSpeedOut[3] = -Vx+Vy+Vw;//右前 - c->hopemotorout.OmniSpeedOut[0] = -Vx-Vy+Vw;//右后 + c->hopemotorout.OmniSpeedOut[0] = -Vx+Vy+Vw;//右前 + c->hopemotorout.OmniSpeedOut[1] = -Vx-Vy+Vw;//右后 c->hopemotorout.OmniSpeedOut[2] = Vx-Vy+Vw;//左后 - c->hopemotorout.OmniSpeedOut[1] = Vx+Vy+Vw;//左前 + c->hopemotorout.OmniSpeedOut[3] = Vx+Vy+Vw;//左前 } //bool isArrive(fp32 real_pos,fp32 target_pos,fp32 mistake) @@ -228,11 +215,11 @@ int8_t Chassis_Control(Chassis_t *c,CMD_t *ctrl,CAN_Output_t *out) //电机速度限幅 - abs_limit_fp(&c->move_vec.Vx,6000.0f); + abs_limit_fp(&c->move_vec.Vx,8000.0f); - abs_limit_fp(&c->move_vec.Vy,6000.0f); + abs_limit_fp(&c->move_vec.Vy,8000.0f); - abs_limit_fp(&c->move_vec.Vw,6000.0f); + abs_limit_fp(&c->move_vec.Vw,8000.0f); Chassis_speed_calculate(c,c->move_vec.Vx,c->move_vec.Vy,c->move_vec.Vw); diff --git a/User/Module/Chassis.h b/User/Module/Chassis.h index 31a6dd8..a6c3e11 100644 --- a/User/Module/Chassis.h +++ b/User/Module/Chassis.h @@ -58,26 +58,11 @@ typedef struct { AHRS_Eulr_t imu_eulr;//解算后存放欧拉角(弧度制) }ChassisImu_t; -/*底盘的类型*/ -typedef enum { - CHASSIS_TYPE_MECANUM, /* 麦轮 */ - CHASSIS_TYPE_OMNI_CROSS, /* 全向轮*/ - CHASSIS_TYPE_AGV, /* AGV舵轮 */ -} Chassis_Type_e; - -/*底盘的电机轮组*/ -typedef enum { - DJI_M3508, - DJI_G6020, - AGV_Group, -}Chassis_Motortype_e; /* 该结构体用于存取固定的一些参数 在config.c中更改后不再变化 */ typedef struct { - Chassis_Type_e chassis_type; /* */ - Chassis_Motortype_e motor_type; /**/ /*该部分决定PID的参数整定在config中修改*/ @@ -131,14 +116,6 @@ typedef struct{ fp32 rotor_rpm3508[4]; fp32 rotor_current3508[4]; - fp32 rotor_pit6020angle; - fp32 rotor_pit6020rpm; - - fp32 rotor_gimbal_yawangle; - fp32 rotor_gimbal_yawrpm; - - fp32 rotor_gimbal_pitchangle; - fp32 rotor_gimbal_pitchrpm; }motorfeedback; @@ -154,10 +131,6 @@ typedef struct{ struct { fp32 final_3508out[4]; - fp32 final_pitchout; - fp32 final_gimbal_yawout; - fp32 final_gimbal_pitchout; - }final_out; struct{ diff --git a/User/Module/config.c b/User/Module/config.c index 263d6ec..d0e7dd9 100644 --- a/User/Module/config.c +++ b/User/Module/config.c @@ -50,6 +50,35 @@ static const ConfigParam_t param ={ .i_limit = 2000.0f, .out_limit = 3000.0f, }, +.Pitch_Angle_M2006_speed_param={ //俯仰跑速度环 + .p = 20.0f, + .i = 0.05f, + .d = 0.0f, + .i_limit = 500.0f, + .out_limit = 3000.0f, +}, + +.Dribble_M3508_speed_param={ //三摩擦速度环 + .p = 5.0f, + .i = 0.3f, + .d = 0.0f, + .i_limit = 2000.0f, + .out_limit = 3000.0f, +}, +.Dribble_translate_M3508_speed_param={//平移用3508速度环 + .p = 5.0f, + .i = 0.3f, + .d = 0.0f, + .i_limit = 2000.0f, + .out_limit = 3000.0f, +}, +.Dribble_translate_M3508_angle_param= { //平移用3508角度环 + .p = 25.0f, + .i = 0.0f, + .d = 1.5f, + .i_limit = 1000.0f, + .out_limit = 3000.0f, +}, .go_cmd={ @@ -81,6 +110,7 @@ static const ConfigParam_t param ={ .go1_init_position = -50, .go1_release_threshold =-210, .m2006_Screw_init=0, + .Pitch_angle =57, }, @@ -113,18 +143,17 @@ static const ConfigParam_t param ={ }, - + .can = { - .pitch6020 = BSP_CAN_1, .motor_CHASSIS3508 = BSP_CAN_1, - .motor_UP3508 = BSP_CAN_2, + . motor_UP3508_shoot= BSP_CAN_2, + .motor_UP3508_Dribble= BSP_CAN_2, -// .chassis6020 = BSP_CAN_1,//禁用 .chassis5065 = BSP_CAN_1, .sick = BSP_CAN_2, - .encoder=BSP_CAN_2, + .encoder=BSP_CAN_2, }, diff --git a/User/Module/up.c b/User/Module/up.c index 1019da9..568ace0 100644 --- a/User/Module/up.c +++ b/User/Module/up.c @@ -11,6 +11,8 @@ #define MOTOR2006_ECD_TO_ANGLE (360.0 / 8191.0 / (GEAR_RATIO_2006)) //2006编码值转轴角度 #define MOTOR3508_ECD_TO_ANGLE (360.0 / 8191.0 / (GEAR_RATIO_3508)) //3508编码值转轴角度 +#define CAN2_G3508_ID (0x200) + // 定义继电器控制 #define RELAY1_TOGGLE(state) HAL_GPIO_WritePin(GPIOE, GPIO_PIN_9, (state) ? GPIO_PIN_SET : GPIO_PIN_RESET) @@ -27,9 +29,16 @@ int8_t up_init(UP_t *u,const UP_Param_t *param,float target_freq) PID_init (&u->pid .Shoot_M2006angle ,PID_POSITION ,&(u->param->Shoot_M2006_angle_param )); PID_init (&u->pid .Shoot_M2006speed ,PID_POSITION ,&(u->param->Shoot_M2006_speed_param )); + PID_init (&u->pid .Pitch_Angle_M2006_speed ,PID_POSITION ,&(u->param->Pitch_Angle_M2006_speed_param)); + PID_init (&u->pid .Pitch_M2006_angle ,PID_POSITION ,&(u->param->Pitch_M2006_angle_param )); PID_init (&u->pid .Pitch_M2006_speed ,PID_POSITION ,&(u->param->Pitch_M2006_speed_param )); + + PID_init (&u->pid .Dribble_translate_M3508_angle ,PID_POSITION ,&(u->param->Dribble_translate_M3508_angle_param )); + PID_init (&u->pid .Dribble_translate_M3508_speed ,PID_POSITION ,&(u->param->Dribble_translate_M3508_speed_param )); + PID_init (&u->pid .Dribble_M3508_speed ,PID_POSITION ,&(u->param->Dribble_M3508_speed_param )); + u->go_cmd =u->param ->go_cmd ; @@ -62,12 +71,19 @@ int8_t UP_UpdateFeedback(UP_t *u, const CAN_t *can, CMD_t *c) { u->motorfeedback .Encoder .angle = can ->Oid.angle ; u->motorfeedback .Encoder .ecd = can ->Oid.ecd ; - for(int i=0;i<4;i++){ - u->motorfeedback .DJmotor_feedback[i].rpm =can ->motor .up_motor3508 .as_array [i].rotor_speed ; - u->motorfeedback .DJmotor_feedback[i].ecd =can ->motor .up_motor3508.as_array [i].rotor_ecd ; - DJ_processdata(&u->motorfeedback .DJmotor_feedback [i], MOTOR2006_ECD_TO_ANGLE); - } - + for(int i=0;i<4;i++){ //范围0x201--0x204 + u->motorfeedback .DJmotor_feedback[i].id =i+CAN2_G3508_ID+1; + u->motorfeedback .DJmotor_feedback[i].rpm =can ->motor .up_dribble_motor3508 .as_array [i].rotor_speed ; + u->motorfeedback .DJmotor_feedback[i].ecd =can ->motor .up_dribble_motor3508.as_array [i].rotor_ecd ; + DJ_processdata(&u->motorfeedback .DJmotor_feedback [i], MOTOR3508_ECD_TO_ANGLE); + } + for(int i=0;i<2;i++){ //范围0x205--0x206 + u->motorfeedback .DJmotor_feedback[i+4].id =i+CAN2_G3508_ID+4+1; + u->motorfeedback .DJmotor_feedback[i+4].rpm =can ->motor .up_shoot_motor3508 .as_array [i].rotor_speed ; + u->motorfeedback .DJmotor_feedback[i+4].ecd =can ->motor .up_shoot_motor3508.as_array [i].rotor_ecd ; + DJ_processdata(&u->motorfeedback .DJmotor_feedback [i+4], MOTOR2006_ECD_TO_ANGLE); + } + u->cmd =c; return 0; @@ -106,10 +122,17 @@ int8_t DJ_Angle_Control(UP_t *u,int id,DJmotor_feedback_t *f,pid_type_def *Angle delta_angle = PID_calc(Angle_pid , f->total_angle , target_angle); delta_speed = PID_calc(Speed_pid , f->rpm , delta_angle); - u->final_out .DJfinal_out [id-1]=delta_speed; + u->final_out .DJfinal_out [id-CAN2_G3508_ID-1]=delta_speed; + return 0; +} +int8_t DJ_Speed_Control(UP_t *u,int id,DJmotor_feedback_t *f,pid_type_def *Speed_pid,fp32 target_speed) +{ + + fp32 delta_speed; + delta_speed = PID_calc(Speed_pid , f->rpm , target_speed); + u->final_out .DJfinal_out [id-CAN2_G3508_ID-1]=delta_speed; return 0; } - int8_t VESC_M5065_Control(UP_t *u,fp32 speed) { u->motor_target .VESC_5065_M1_rpm =speed; @@ -174,21 +197,33 @@ int8_t GO_SendData(UP_t *u, float pos, float limit) int8_t ALL_Motor_Control(UP_t *u,CAN_Output_t *out) { //电机控制 ,传进can - DJ_Angle_Control(u,1,&u->motorfeedback .DJmotor_feedback[0] , + DJ_Speed_Control(u,0x201,&u->motorfeedback .DJmotor_feedback[0] ,&u->pid .Dribble_M3508_speed,u->motor_target .Dribble_M3508_speed); + DJ_Speed_Control(u,0x202,&u->motorfeedback .DJmotor_feedback[1] ,&u->pid .Dribble_M3508_speed,u->motor_target .Dribble_M3508_speed); + DJ_Speed_Control(u,0x203,&u->motorfeedback .DJmotor_feedback[2] ,&u->pid .Dribble_M3508_speed,u->motor_target .Dribble_M3508_speed); + DJ_Angle_Control(u,0x204,&u->motorfeedback .DJmotor_feedback[3] , + &u->pid .Dribble_translate_M3508_angle , + &u->pid .Dribble_translate_M3508_speed , + u->motor_target .Dribble_translate_M3508_angle ); + DJ_Angle_Control(u,0x205,&u->motorfeedback .DJmotor_feedback[4] , &u->pid .Shoot_M2006angle , &u->pid .Shoot_M2006speed , u->motor_target .Shoot_M2006_angle ); - DJ_Angle_Control(u,2,&u->motorfeedback .DJmotor_feedback[1] , - &u->pid .Pitch_M2006_angle , - &u->pid .Pitch_M2006_speed , - u->motor_target .Pitch_M2006_angle ); +// DJ_Angle_Control(u,0x206,&u->motorfeedback .DJmotor_feedback[5] , +// &u->pid .Pitch_M2006_angle , +// &u->pid .Pitch_M2006_speed , +// u->motor_target .Pitch_M2006_angle ); + u->final_out .DJfinal_out [5]=PID_calc (&(u->pid .Pitch_Angle_M2006_speed ), + u->motorfeedback .Encoder.angle,u->motor_target .Shoot_Pitch_angle); + GO_SendData(u,u->motor_target .go_shoot,5 ); for(int i=0;i<4;i++){ - out ->motor_UP3508.as_array[i]=u->final_out.DJfinal_out [i] ; + out ->motor_UP3508_Dribble.as_array[i]=u->final_out.DJfinal_out [i] ; } - + for(int i=0;i<2;i++){ + out ->motor_UP3508_shoot.as_array[i]=u->final_out.DJfinal_out [i+4] ; + } out ->chassis5065 .erpm [0]= u->final_out .final_VESC_5065_M1out ; out ->chassis5065 .erpm [1]= -u->final_out .final_VESC_5065_M2out ; @@ -220,6 +255,8 @@ int8_t UP_control(UP_t *u,CAN_Output_t *out,CMD_t *c) is_pitch=0; } u->motor_target .Shoot_M2006_angle =u->PitchContext .PitchConfig .m2006_init_angle ; + u->motor_target .Shoot_Pitch_angle=u->PitchContext.PitchConfig.Pitch_angle; + u->PitchContext .PitchState = PITCH_PREPARE; //状态更新,开始夹球 // /*运球*/ @@ -245,10 +282,11 @@ int8_t UP_control(UP_t *u,CAN_Output_t *out,CMD_t *c) break ; case UP_Adjust: u->PitchContext.PitchConfig.go1_init_position += c->Vx ; - u->PitchContext.PitchConfig.m2006_Screw_init += c->Vy; - +// u->PitchContext.PitchConfig.m2006_Screw_init = c->Vy; + u->PitchContext.PitchConfig.Pitch_angle += c->Vy/100; + u->motor_target .go_shoot=u->PitchContext.PitchConfig.go1_init_position; - u->motor_target .Pitch_M2006_angle=u->PitchContext.PitchConfig.m2006_Screw_init; +// u->motor_target .Pitch_M2006_angle=u->PitchContext.PitchConfig.m2006_Screw_init; break ; case Dribble: { @@ -342,30 +380,14 @@ int8_t Pitch_Adjust(UP_t *u, CAN_Output_t *out,CMD_t *c) { u->PitchContext.PitchConfig.go1_init_position += c->Vx ; - u->PitchContext.PitchConfig.m2006_Screw_init += c->Vy; + u->PitchContext.PitchConfig.Pitch_angle += c->Vy; + u->motor_target .Shoot_Pitch_angle=u->PitchContext.PitchConfig.Pitch_angle; + } - - - - - - - - - - - - - - - - - - diff --git a/User/Module/up.h b/User/Module/up.h index efd0b09..b394340 100644 --- a/User/Module/up.h +++ b/User/Module/up.h @@ -56,6 +56,7 @@ typedef struct { fp32 go1_init_position; // GO电机触发位置,0,初始位置 fp32 go1_release_threshold; // go上升去合并扳机,扳机位置 fp32 m2006_Screw_init; + fp32 Pitch_angle; } PitchConfig_t; /* 投球控制上下文 */ @@ -122,7 +123,15 @@ typedef struct pid_param_t Shoot_M2006_angle_param; pid_param_t Pitch_M2006_speed_param; - pid_param_t Pitch_M2006_angle_param; + pid_param_t Pitch_M2006_angle_param; + + pid_param_t Pitch_Angle_M2006_speed_param; + + pid_param_t Dribble_M3508_speed_param;//三摩擦用的速度环 + + pid_param_t Dribble_translate_M3508_speed_param;//平移用的速度环 + pid_param_t Dribble_translate_M3508_angle_param;//平移用的角度环 + DribbleConfig_t DribbleConfig_Config; PitchConfig_t PitchConfig_Config; @@ -134,7 +143,7 @@ typedef struct { fp32 ecd; fp32 rpm; - + uint8_t id; fp32 orig_angle; fp32 last_angle; int32_t round_cnt; @@ -151,10 +160,7 @@ typedef struct{ DribbleContext_t DribbleContext; /*投篮过程*/ PitchContext_t PitchContext; - - - UP_Imu_t pos088; - + CMD_t *cmd; struct{ @@ -166,15 +172,12 @@ typedef struct{ GO_MotorData_t *go_data;//存放go电机数据 - DJmotor_feedback_t DJmotor_feedback[4]; + DJmotor_feedback_t DJmotor_feedback[6]; struct { uint32_t ecd; float angle; - - }Encoder; - - + }Encoder; }motorfeedback; @@ -188,7 +191,10 @@ typedef struct{ fp32 Pitch_M2006_angle; fp32 go_shoot; + fp32 Dribble_M3508_speed;//运球转速 + fp32 Dribble_translate_M3508_angle;//平移用的3508转动角度 + fp32 Shoot_Pitch_angle; }motor_target; struct{ @@ -203,6 +209,14 @@ typedef struct{ pid_type_def Pitch_M2006_angle; pid_type_def Pitch_M2006_speed; + pid_type_def Pitch_Angle_M2006_speed; + + pid_type_def Dribble_M3508_speed;//三摩擦用的速度环 + + pid_type_def Dribble_translate_M3508_speed;//平移用的速度环 + pid_type_def Dribble_translate_M3508_angle;//平移用的角度环 + + }pid; GO_MotorCmd_t go_cmd; @@ -212,7 +226,7 @@ typedef struct{ /*经PID计算后的实际发送给电机的实时输出值*/ struct { - fp32 DJfinal_out[4]; + fp32 DJfinal_out[6]; fp32 final_VESC_5065_M1out; fp32 final_VESC_5065_M2out; @@ -236,6 +250,8 @@ int8_t UP_control(UP_t *u,CAN_Output_t *out,CMD_t *c); int8_t ALL_Motor_Control(UP_t *u,CAN_Output_t *out); int8_t DJ_processdata(DJmotor_feedback_t *f,fp32 ecd_to_angle); int8_t DJ_Angle_Control(UP_t *u,int id,DJmotor_feedback_t *f,pid_type_def *Angle_pid,pid_type_def *Speed_pid,fp32 target_angle); +int8_t DJ_Speed_Control(UP_t *u,int id,DJmotor_feedback_t *f,pid_type_def *Speed_pid,fp32 target_speed); + int8_t Pitch_Process(UP_t *u, CAN_Output_t *out,CMD_t *c); diff --git a/User/device/can_use.c b/User/device/can_use.c index c6e47c2..6ebb56e 100644 --- a/User/device/can_use.c +++ b/User/device/can_use.c @@ -12,11 +12,13 @@ #define CAN_MOTOR_CUR_RES (16384) -//#define CAN_GM6020_CTRL_ID_BASE (0x1ff) //禁用 #define CAN_PITCH6020_CTRL_ID (0x2ff) #define CAN_G3508_CTRL_ALL_CHASSIS_ID (0x200) -#define CAN_G3508_CTRL_ALL_UP_ID (0x1ff) + +/*CAN2上有6个大疆电机*/ +#define CAN_G3508_CTRL_ALL_UP_SHOOT_ID (0x1ff) +#define CAN_G3508_CTRL_ALL_UP_Dribble_ID (0x200) #define CAN_VESC_CTRL_ID_BASE (0x300) @@ -118,13 +120,12 @@ static void CAN_CAN2RxFifoMsgPendingCallback(void) { raw_rx2.hcan =BSP_CAN_GetHandle(BSP_CAN_2); osMessageQueuePut(gcan->msgq_raw, &raw_rx2, 0, 0); } - /* Exported functions ------------------------------------------------------- */ int8_t CAN_Init(CAN_t *can, const CAN_Params_t *param) { if (can == NULL) return DEVICE_ERR_NULL; - can->msgq_raw = osMessageQueueNew(12, sizeof(CAN_RawRx_t), NULL); - + can->msgq_raw = osMessageQueueNew(32, sizeof(CAN_RawRx_t), NULL); + can->param = param; CAN_FilterTypeDef can_filter = {0}; @@ -175,42 +176,14 @@ void CAN_Encoder_Control(CAN_t *can) HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->encoder),&raw_tx.tx_header,raw_tx.tx_data,&(can->mailbox.up )); } -int8_t CAN_DJIMotor_Control(CAN_MotorGroup_e group, CAN_Output_t *output, + int8_t CAN_DJIMotor_Control(CAN_MotorGroup_e group, CAN_Output_t *output, CAN_t *can) { if (output == NULL) return DEVICE_ERR_NULL; - int16_t motor1, motor2, motor3, motor4, motor5, motor6, motor7; + int16_t motor1, motor2, motor3, motor4; switch (group) { -// case CAN_MOTOR_CHASSIS6020: //(总线0x1ff的6020禁用,怕和3508冲突) -// motor1 = -// (int16_t)(output->chassis6020.named.m1); -// motor2 = -// (int16_t)(output->chassis6020.named.m2); -// motor3 = -// (int16_t)(output->chassis6020.named.m3); -// motor4 = -// (int16_t)(output->chassis6020.named.m4); - -// raw_tx.tx_header.StdId = CAN_GM6020_CTRL_ID_BASE; -// raw_tx.tx_header.IDE = CAN_ID_STD; -// raw_tx.tx_header.RTR = CAN_RTR_DATA; -// raw_tx.tx_header.DLC = CAN_MOTOR_TX_BUF_SIZE; - -// raw_tx.tx_data[0] = (uint8_t)((motor1 >> 8) & 0xFF); -// raw_tx.tx_data[1] = (uint8_t)(motor1 & 0xFF); -// raw_tx.tx_data[2] = (uint8_t)((motor2 >> 8) & 0xFF); -// raw_tx.tx_data[3] = (uint8_t)(motor2 & 0xFF); -// raw_tx.tx_data[4] = (uint8_t)((motor3 >> 8) & 0xFF); -// raw_tx.tx_data[5] = (uint8_t)(motor3 & 0xFF); -// raw_tx.tx_data[6] = (uint8_t)((motor4 >> 8) & 0xFF); -// raw_tx.tx_data[7] = (uint8_t)(motor4 & 0xFF); - -// HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->chassis6020), -// &raw_tx.tx_header, raw_tx.tx_data, -// &(can->mailbox.chassis)); -// break; case CAN_MOTOR_CHASSIS3508: motor1 = (int16_t)(output->motor_CHASSIS3508.named.m1); @@ -239,17 +212,17 @@ int8_t CAN_DJIMotor_Control(CAN_MotorGroup_e group, CAN_Output_t *output, &raw_tx.tx_header, raw_tx.tx_data, &(can->mailbox.chassis)); break; - case CAN_MOTOR_UP3508: + case CAN_MOTOR_UP3508_Dribble: motor1 = - (int16_t)(output->motor_UP3508.named.m1); + (int16_t)(output->motor_UP3508_Dribble.named.m1); motor2 = - (int16_t)(output->motor_UP3508.named.m2); + (int16_t)(output->motor_UP3508_Dribble.named.m2); motor3 = - (int16_t)(output->motor_UP3508.named.m3); + (int16_t)(output->motor_UP3508_Dribble.named.m3); motor4 = - (int16_t)(output->motor_UP3508.named.m4); + (int16_t)(output->motor_UP3508_Dribble.named.m4); - raw_tx.tx_header.StdId =CAN_G3508_CTRL_ALL_UP_ID; + raw_tx.tx_header.StdId =CAN_G3508_CTRL_ALL_UP_Dribble_ID; raw_tx.tx_header.IDE = CAN_ID_STD; raw_tx.tx_header.RTR = CAN_RTR_DATA; raw_tx.tx_header.DLC = CAN_MOTOR_TX_BUF_SIZE; @@ -263,35 +236,39 @@ int8_t CAN_DJIMotor_Control(CAN_MotorGroup_e group, CAN_Output_t *output, raw_tx.tx_data[6] = (uint8_t)((motor4 >> 8) & 0xFF); raw_tx.tx_data[7] = (uint8_t)(motor4 & 0xFF); - HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->motor_UP3508), + HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->motor_UP3508_Dribble), &raw_tx.tx_header, raw_tx.tx_data, &(can->mailbox.up)); break; - case CAN_MOTOR_PITCH6020: - motor5 = - (int16_t)(output->pitch6020.named.m1); - motor6 = - (int16_t)(output->pitch6020.named.m2); - motor7 = - (int16_t)(output->pitch6020.named.m3); - raw_tx.tx_header.StdId = CAN_PITCH6020_CTRL_ID; + case CAN_MOTOR_UP3508_SHOOT: + motor1 = + (int16_t)(output->motor_UP3508_shoot.named.m1); + motor2 = + (int16_t)(output->motor_UP3508_shoot.named.m2); + motor3 = + (int16_t)(output->motor_UP3508_shoot.named.m3); + motor4 = + (int16_t)(output->motor_UP3508_shoot.named.m4); + + raw_tx.tx_header.StdId =CAN_G3508_CTRL_ALL_UP_SHOOT_ID; raw_tx.tx_header.IDE = CAN_ID_STD; raw_tx.tx_header.RTR = CAN_RTR_DATA; raw_tx.tx_header.DLC = CAN_MOTOR_TX_BUF_SIZE; - - raw_tx.tx_data[0] = (uint8_t)((motor5 >> 8) & 0xFF); - raw_tx.tx_data[1] = (uint8_t)(motor5 & 0xFF); - raw_tx.tx_data[2] = (uint8_t)((motor6 >> 8) & 0xFF); - raw_tx.tx_data[3] = (uint8_t)(motor6 & 0xFF); - raw_tx.tx_data[4] = (uint8_t)((motor7 >> 8) & 0xFF); - raw_tx.tx_data[5] = (uint8_t)(motor7 & 0xFF); - raw_tx.tx_data[6] = 0; - raw_tx.tx_data[7] = 0; - - HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->pitch6020), + + raw_tx.tx_data[0] = (uint8_t)((motor1 >> 8) & 0xFF); + raw_tx.tx_data[1] = (uint8_t)(motor1 & 0xFF); + raw_tx.tx_data[2] = (uint8_t)((motor2 >> 8) & 0xFF); + raw_tx.tx_data[3] = (uint8_t)(motor2 & 0xFF); + raw_tx.tx_data[4] = (uint8_t)((motor3 >> 8) & 0xFF); + raw_tx.tx_data[5] = (uint8_t)(motor3 & 0xFF); + raw_tx.tx_data[6] = (uint8_t)((motor4 >> 8) & 0xFF); + raw_tx.tx_data[7] = (uint8_t)(motor4 & 0xFF); + + HAL_CAN_AddTxMessage(BSP_CAN_GetHandle(can->param->motor_UP3508_shoot), &raw_tx.tx_header, raw_tx.tx_data, - &(can->mailbox.chassis)); - break; + &(can->mailbox.up)); + break; + default: break; @@ -379,16 +356,6 @@ int8_t CAN_StoreMsg(CAN_t *can, CAN_RawRx_t *can_rx) { // 处理CAN1消息 if (can_rx->hcan == BSP_CAN_GetHandle(BSP_CAN_1)) { switch (can_rx->rx_header.StdId) { - case CAN_G6020_AgvM1: - case CAN_G6020_AgvM2: - case CAN_G6020_AgvM3: - case CAN_G6020_AgvM4: - // 存储消息到对应的电机结构体中 - index = can_rx->rx_header.StdId - CAN_G6020_AgvM1; - can->recive_flag |= 1 << (index); - CAN_DJIMotor_Decode(&(can->motor.chassis6020.as_array[index]), can_rx->rx_data); - break; - case CAN_CHASSIS_M3508_M1_ID: case CAN_CHASSIS_M3508_M2_ID: case CAN_CHASSIS_M3508_M3_ID: @@ -408,30 +375,35 @@ int8_t CAN_StoreMsg(CAN_t *can, CAN_RawRx_t *can_rx) { // 处理CAN2消息 if (can_rx->hcan == BSP_CAN_GetHandle(BSP_CAN_2)) { switch (can_rx->rx_header.StdId) { - case CAN_G6020_Pitch: - // 存储消息到对应的电机结构体中 - index = can_rx->rx_header.StdId - CAN_G6020_Pitch; - can->recive_flag |= 1 << (index); - CAN_DJIMotor_Decode(&(can->motor.pit6020.as_array[index]), can_rx->rx_data); - detect_hook(PITCH6020_TOE + index); - break; case CAN_UP_M3508_M1_ID: case CAN_UP_M3508_M2_ID: case CAN_UP_M3508_M3_ID: case CAN_UP_M3508_M4_ID: + // 存储消息到对应的电机结构体中 index = can_rx->rx_header.StdId - CAN_UP_M3508_M1_ID; - can->recive_flag |= 1 << (index); - CAN_DJIMotor_Decode(&(can->motor.up_motor3508.as_array[index]), can_rx->rx_data); + can->recive_flag |= 1 << ((index+4)); + CAN_DJIMotor_Decode(&(can->motor.up_dribble_motor3508.as_array[index]), can_rx->rx_data); detect_hook(CHASSIS3508M1_TOE + index); break; + case CAN_UP_M3508_M5_ID: + case CAN_UP_M3508_M6_ID: + + + // 存储消息到对应的电机结构体中 + index = can_rx->rx_header.StdId - CAN_UP_M3508_M5_ID; + can->recive_flag |= 1 << ((index+8)); + CAN_DJIMotor_Decode(&(can->motor.up_shoot_motor3508.as_array[index]), can_rx->rx_data); + break; case CAN_SICK_ID: // 存储消息到sickfed结构体中 CAN_Sick_Receive(&(can->sickfed), can_rx->rx_data); break; case CAN_Encoder_ID: CAN_Encoder_Decode(&(can->Oid),can_rx->rx_data); + can->recive_flag |= 1 << 10; + break ; default: diff --git a/User/device/can_use.h b/User/device/can_use.h index e6f1993..8bdfe47 100644 --- a/User/device/can_use.h +++ b/User/device/can_use.h @@ -9,29 +9,19 @@ typedef enum { CAN_CHASSIS_M3508_M2_ID = 0x202, /* 2 */ CAN_CHASSIS_M3508_M3_ID = 0x203, /* 3 */ CAN_CHASSIS_M3508_M4_ID = 0x204, /* 4 */ + + CAN_UP_M3508_M1_ID = 0x201, /* 1 */ + CAN_UP_M3508_M2_ID = 0x202, /* 2 */ + CAN_UP_M3508_M3_ID = 0x203, /* 3 */ + CAN_UP_M3508_M4_ID = 0x204, /* 4 */ - /**/ - CAN_G6020_AgvM1 =0x205, - CAN_G6020_AgvM2 =0x206, - CAN_G6020_AgvM3 =0x207, - CAN_G6020_AgvM4 =0x208, - - CAN_UP_M3508_M1_ID = 0x205, /* 1 */ - CAN_UP_M3508_M2_ID = 0x206, /* 2 */ - CAN_UP_M3508_M3_ID = 0x207, /* 3 */ - CAN_UP_M3508_M4_ID = 0x208, /* 4 */ + CAN_UP_M3508_M5_ID = 0x205, /* 1 */ + CAN_UP_M3508_M6_ID = 0x206, /* 2 */ CAN_SICK_ID=0x301, CAN_Encoder_ID=0x01, - CAN_G6020_Pitch =0x209, - - // CAN_VESC5065_M1 =0x211, //vesc的数据指令使用了扩展id,[0:7]为驱动器id,[8:15]为帧类型 - // CAN_VESC5065_M2 =0x212, - // CAN_VESC5065_M3 =0x213, - // CAN_VSEC5065_M4 =0x214, - CAN_VESC5065_M1_MSG1 =0x90b, //vesc的数据回传使用了扩展id,[0:7]为驱动器id,[8:15]为帧类型 CAN_VESC5065_M2_MSG1 =0x90c, CAN_VESC5065_M3_MSG1 =0x90d, @@ -46,10 +36,12 @@ typedef enum { typedef enum { - CAN_MOTOR_PITCH6020, CAN_MOTOR_5065, CAN_MOTOR_CHASSIS3508, - CAN_MOTOR_UP3508, + + CAN_MOTOR_UP3508_SHOOT, + CAN_MOTOR_UP3508_Dribble, + CAN_MOTOR_GROUT_NUM, } CAN_MotorGroup_e; @@ -85,11 +77,10 @@ typedef union{ }Vesc_ByteGet; typedef struct { -// CAN_DJIOutput_t chassis6020; CAN_VescOutput_t chassis5065; CAN_DJIOutput_t motor_CHASSIS3508; - CAN_DJIOutput_t motor_UP3508; - CAN_DJIOutput_t pitch6020; + CAN_DJIOutput_t motor_UP3508_shoot; + CAN_DJIOutput_t motor_UP3508_Dribble; } CAN_Output_t; @@ -107,11 +98,12 @@ typedef struct { } CAN_RawTx_t; typedef struct { -// BSP_CAN_t chassis6020;//禁用 BSP_CAN_t chassis5065; BSP_CAN_t motor_CHASSIS3508; - BSP_CAN_t motor_UP3508; - BSP_CAN_t pitch6020; + BSP_CAN_t motor_UP3508_shoot; + BSP_CAN_t motor_UP3508_Dribble; + + BSP_CAN_t sick; BSP_CAN_t encoder; @@ -147,7 +139,7 @@ typedef union { CAN_MotorFeedback_t m3; CAN_MotorFeedback_t m4; } named; -} CAN_ChassisMotor_t; +} CAN_Data_Motor_t; typedef union { CAN_MotorFeedback_t as_array[4]; @@ -161,11 +153,14 @@ typedef union { typedef struct { - CAN_ChassisMotor_t chassis6020; - CAN_ChassisMotor_t chassis5065; - CAN_ChassisMotor_t up_motor3508; - CAN_ChassisMotor_t chassis_motor3508; - CAN_ChassisMotor_t pit6020; + CAN_Data_Motor_t chassis6020; + CAN_Data_Motor_t chassis5065; + /*1是指用来运球的,2用来扳机和俯仰*/ + CAN_Data_Motor_t up_shoot_motor3508; + CAN_Data_Motor_t up_dribble_motor3508; + + CAN_Data_Motor_t chassis_motor3508; + CAN_Data_Motor_t pit6020; } CAN_Motor_t; @@ -178,8 +173,7 @@ typedef struct { const CAN_Params_t *param; struct { uint32_t chassis; - uint32_t up; - + uint32_t up; } mailbox; osMessageQueueId_t msgq_raw; diff --git a/User/task/can_task.c b/User/task/can_task.c index c21e9cf..fcfc4ca 100644 --- a/User/task/can_task.c +++ b/User/task/can_task.c @@ -56,19 +56,20 @@ const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_CAN; osMessageQueueReset(task_runtime.msgq.can.feedback.UP_CAN_feedback ); osMessageQueuePut(task_runtime.msgq.can.feedback.UP_CAN_feedback , &can, 0, 0); /*电机控制*/ - if (osMessageQueueGet(task_runtime.msgq.can.output.pitch6020, - &(can_out.pitch6020),0,0) == osOK) { - CAN_DJIMotor_Control(CAN_MOTOR_PITCH6020,&can_out,&can); - } + //底盘4个 if (osMessageQueueGet(task_runtime.msgq.can.output.chassis3508, &(can_out.motor_CHASSIS3508), 0, 0) == osOK) { CAN_DJIMotor_Control(CAN_MOTOR_CHASSIS3508,&can_out,&can); } - if (osMessageQueueGet(task_runtime.msgq.can.output.up3508, - &(can_out.motor_UP3508), 0, 0) == osOK) { - CAN_DJIMotor_Control(CAN_MOTOR_UP3508,&can_out,&can); + //上层运球4个,发射2个 + if (osMessageQueueGet(task_runtime.msgq.can.output.up_dribble_3508, + &(can_out.motor_UP3508_Dribble), 0, 0) == osOK) { + CAN_DJIMotor_Control(CAN_MOTOR_UP3508_Dribble,&can_out,&can); + } + if (osMessageQueueGet(task_runtime.msgq.can.output.up_shoot_3508, + &(can_out.motor_UP3508_shoot), 0, 0) == osOK) { + CAN_DJIMotor_Control(CAN_MOTOR_UP3508_SHOOT,&can_out,&can); } - tick += delay_tick; /* 计算下一个唤醒时刻 */ osDelayUntil(tick); /* 运行结束,等待下一个周期唤醒 */ } diff --git a/User/task/chassis_task.c b/User/task/chassis_task.c index be1d133..40f6485 100644 --- a/User/task/chassis_task.c +++ b/User/task/chassis_task.c @@ -88,12 +88,6 @@ void Task_Chassis(void *argument) osMessageQueueReset(task_runtime.msgq.can.output.chassis3508);//清空队列 osMessageQueuePut(task_runtime.msgq.can.output.chassis3508, &out.motor_CHASSIS3508, 0, 0); //发送数据 - osMessageQueueReset(task_runtime.msgq.can.output.pitch6020); - osMessageQueuePut(task_runtime.msgq.can.output.pitch6020, &out.pitch6020, 0, 0); - - osMessageQueueReset(task_runtime.msgq.can.output.pitch6020 ); - osMessageQueuePut(task_runtime.msgq.can.output.pitch6020 , &out.pitch6020, 0, 0); - vofa_send[0] = chassis.vofa_send[0]; vofa_send[1] = chassis.vofa_send[1]; vofa_send[2] = chassis.vofa_send[2]; diff --git a/User/task/init.c b/User/task/init.c index e63b787..4f20970 100644 --- a/User/task/init.c +++ b/User/task/init.c @@ -59,9 +59,9 @@ void Task_Init(void *argument) { osMessageQueueNew(2u, sizeof(CAN_t), NULL); task_runtime.msgq.can.output.chassis3508 = osMessageQueueNew(2u, sizeof(CAN_DJIOutput_t), NULL); - task_runtime.msgq.can.output.up3508 = + task_runtime.msgq.can.output.up_shoot_3508 = osMessageQueueNew(2u, sizeof(CAN_DJIOutput_t), NULL); - task_runtime.msgq.can.output.pitch6020 = + task_runtime.msgq.can.output.up_dribble_3508 = osMessageQueueNew(2u, sizeof(CAN_DJIOutput_t), NULL); diff --git a/User/task/up_task.c b/User/task/up_task.c index 506576d..c784f32 100644 --- a/User/task/up_task.c +++ b/User/task/up_task.c @@ -71,13 +71,6 @@ void Task_up(void *argument) osDelay(1); - - /*imu数据获取*/ - osMessageQueueGet(task_runtime.msgq.imu.eulr, &UP.pos088.imu_eulr, NULL, 0); - - osMessageQueueGet(task_runtime.msgq.imu.gyro, &UP.pos088.bmi088.gyro,NULL, 0); - - osMessageQueueGet(task_runtime.msgq.imu.accl, &UP.pos088.bmi088.accl,NULL, 0); /*can上设备数据获取*/ osMessageQueueGet(task_runtime.msgq.can.feedback.UP_CAN_feedback, &can, NULL, 0); @@ -91,8 +84,11 @@ void Task_up(void *argument) - osMessageQueueReset(task_runtime.msgq.can.output.up3508 );//清空队列 - osMessageQueuePut(task_runtime.msgq.can.output.up3508, &UP_CAN_out.motor_UP3508 , 0, 0); //发送数据 + osMessageQueueReset(task_runtime.msgq.can.output.up_dribble_3508 );//运球 + osMessageQueuePut(task_runtime.msgq.can.output.up_dribble_3508, &UP_CAN_out.motor_UP3508_Dribble , 0, 0); + osMessageQueueReset(task_runtime.msgq.can.output.up_shoot_3508 );//发射 + osMessageQueuePut(task_runtime.msgq.can.output.up_shoot_3508, &UP_CAN_out.motor_UP3508_shoot , 0, 0); + osMessageQueuePut(task_runtime.msgq.can.output.shoot5065 ,&UP_CAN_out.chassis5065, 0, 0); diff --git a/User/task/user_task.h b/User/task/user_task.h index 2108081..928f2ef 100644 --- a/User/task/user_task.h +++ b/User/task/user_task.h @@ -78,9 +78,8 @@ typedef struct { osMessageQueueId_t shoot5065; osMessageQueueId_t chassis3508; - osMessageQueueId_t pitch6020; - osMessageQueueId_t up3508; - + osMessageQueueId_t up_dribble_3508; + osMessageQueueId_t up_shoot_3508; } output; struct { /*均包括所有数据,选择调用*/