改chassis_cmd_send.vx发送bug,窝系牢痰

This commit is contained in:
chenfu
2024-05-21 13:28:12 +08:00
parent 01c894ef97
commit dbf246a750
2 changed files with 14 additions and 9 deletions

View File

@@ -42,6 +42,8 @@ static Robot_Status_e robot_state; // 机器人整体工作状态
static Work_Mode_e vision_work_mode; // 视觉工作模式 static Work_Mode_e vision_work_mode; // 视觉工作模式
static CANCommInstance *cmd_can_comm; // 底盘CAN通信实例 static CANCommInstance *cmd_can_comm; // 底盘CAN通信实例
static chassis_direction_e chassis_direction; // 底盘方向
void RobotCMDInit() void RobotCMDInit()
{ {
rc_data = RemoteControlInit(&huart3); // 修改为对应串口,注意如果是自研板dbus协议串口需选用添加了反相器的那个 rc_data = RemoteControlInit(&huart3); // 修改为对应串口,注意如果是自研板dbus协议串口需选用添加了反相器的那个
@@ -117,18 +119,20 @@ static void RemoteControlSet()
// gimbal_cmd_send.pitch =( vision_recv_data->pitch == 0 ? gimbal_cmd_send.pitch : vision_recv_data->pitch ); // gimbal_cmd_send.pitch =( vision_recv_data->pitch == 0 ? gimbal_cmd_send.pitch : vision_recv_data->pitch );
// } // }
// 左侧开关状态为[下],或视觉未识别到目标,纯遥控器拨杆控制 // 左侧开关状态为[下],或视觉未识别到目标,纯遥控器拨杆控制
chassis_cmd_send.vx = 0.0f; if (abs(rc_data[TEMP].rc.rocker_r1) > 500)
if (abs(rc_data[TEMP].rc.rocker_r1) > 300)
{ {
chassis_cmd_send.vx = 0.003f * (float)rc_data[TEMP].rc.rocker_r1; // _水平方向 chassis_direction = CHASSIS_ALIGN;
yaw_chassis_align_ecd = 2716; yaw_chassis_align_ecd = 2716;
} }
else if (abs(rc_data[TEMP].rc.rocker_r_) > 300) else if (abs(rc_data[TEMP].rc.rocker_r_) > 500)
{ {
chassis_cmd_send.vx = 0.003f * (float)rc_data[TEMP].rc.rocker_r_; // _水平方向 chassis_direction = CHASSIS_SIDLE;
yaw_chassis_align_ecd = 765; yaw_chassis_align_ecd = 765;
} }
chassis_cmd_send.vx = 0.003f * ((float)rc_data[TEMP].rc.rocker_r_ + (float)rc_data[TEMP].rc.rocker_r1);
gimbal_cmd_send.yaw -= 0.001f * (float)rc_data[TEMP].rc.rocker_l_; gimbal_cmd_send.yaw -= 0.001f * (float)rc_data[TEMP].rc.rocker_l_;
gimbal_cmd_send.pitch -= 0.0004f * (float)rc_data[TEMP].rc.rocker_l1; gimbal_cmd_send.pitch -= 0.0004f * (float)rc_data[TEMP].rc.rocker_l1;
// 摇杆控制的软件限位 // 摇杆控制的软件限位

View File

@@ -18,8 +18,8 @@
/* 开发板类型定义,烧录时注意不要弄错对应功能;修改定义后需要重新编译,只能存在一个定义! */ /* 开发板类型定义,烧录时注意不要弄错对应功能;修改定义后需要重新编译,只能存在一个定义! */
// #define ONE_BOARD // 单板控制整车 // #define ONE_BOARD // 单板控制整车
#define CHASSIS_BOARD //底盘板 //#define CHASSIS_BOARD //底盘板
//#define GIMBAL_BOARD //云台板 #define GIMBAL_BOARD //云台板
#define VISION_USE_VCP // 使用虚拟串口发送视觉数据 #define VISION_USE_VCP // 使用虚拟串口发送视觉数据
// #define VISION_USE_UART // 使用串口发送视觉数据 // #define VISION_USE_UART // 使用串口发送视觉数据
@@ -84,6 +84,7 @@ typedef enum
CHASSIS_FREE_DEBUG, // 底盘单独调试模式 CHASSIS_FREE_DEBUG, // 底盘单独调试模式
} chassis_mode_e; } chassis_mode_e;
// 云台模式设置 // 云台模式设置
typedef enum typedef enum
{ {
@@ -127,8 +128,8 @@ typedef struct
typedef enum typedef enum
{ {
CAHSSIS_ALIGN = 0, CHASSIS_ALIGN = 0,
CHASSIS_SIDLE CHASSIS_SIDLE,
} chassis_direction_e; } chassis_direction_e;
/* ----------------CMD应用发布的控制数据,应当由gimbal/chassis/shoot订阅---------------- */ /* ----------------CMD应用发布的控制数据,应当由gimbal/chassis/shoot订阅---------------- */