[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81932":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":8,"htmlUrl":8,"language":9,"languages":8,"totalLinesOfCode":8,"stars":10,"forks":11,"watchers":12,"openIssues":13,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":13,"stars7d":15,"stars30d":16,"stars90d":14,"forks30d":14,"starsTrendScore":17,"compositeScore":18,"rankGlobal":8,"rankLanguage":8,"license":8,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":8,"pushedAt":8,"updatedAt":23,"readmeContent":24,"aiSummary":25,"trendingCount":14,"starSnapshotCount":14,"syncStatus":15,"lastSyncTime":26,"discoverSource":27},81932,"Hy-Embodied-RoboFusion","Tencent-Hunyuan\u002FHy-Embodied-RoboFusion","Tencent-Hunyuan",null,"C",29,5,25,1,0,2,4,3,39.73,false,"main",true,[],"2026-06-12 04:01:36","# Robo Fusion 通信协议规范\r\n\r\n## 文档信息\r\n- **协议版本**: 1.0\r\n- **创建日期**: 2026-04-13\r\n- **最后更新**: 2026-04-14\r\n\r\n## 1. 协议概述\r\n\r\nRobo Fusion 协议是一个基于UDP的应用层通信协议，专为机器人控制系统设计，支持电机控制、传感器数据采集和设备状态监控。协议采用结构化的二进制数据格式，支持多种设备类型和数据交换模式。\r\n\r\n- **PDO通信**：周期性传输实时数据，如电机控制指令和状态信息、传感器数据等，采用事件驱动机制\r\n- **SDO通信**：客户端\u002F服务器通信模式，用于传输关键配置参数和设备状态信息，主要用于初始化配置，采用请求-响应机制\r\n- **端口分配**：不同服务使用独立的端口号，便于上层应用开发和管理\r\n\r\n### 1.1 协议特性\r\n- 支持多种电机控制模式（MIT、PP、PV、PT、CSP、CSV、CST）\r\n- 支持多类型传感器数据采集（IMU、力传感器、编码器）\r\n- 采用紧凑的二进制格式，确保高效数据传输\r\n- 支持实时状态监控和故障诊断功能\r\n\r\n### 1.2 设备类型\r\n| 类型值 | 设备类型 | 描述 |\r\n|--------|----------|------|\r\n| 0x00   | 未使用   | 保留类型 |\r\n| 0x80   | 同步帧   | 用于时序协调的同步帧 |\r\n| 0x10   | 电机SDO  | 电机服务数据对象 |\r\n| 0x20   | 电机RXPDO | 电机接收过程数据对象 |\r\n| 0x30   | 电机TXPDO | 电机发送过程数据对象 |\r\n| 0x60   | 力传感器TXPDO | 力传感器发送数据 |\r\n| 0x61   | IMU TXPDO | 惯性测量单元发送数据 |\r\n| 0x62   | 编码器TXPDO | 编码器发送数据 |\r\n\r\n### 1.3 协议格式规范\r\n\r\n#### PDO（过程数据对象）格式\r\nPDO用于周期性传输实时数据，支持多个PDO类型组合在单个UDP数据包中传输。\r\n\r\n**PDO数据包结构：**\r\n```\r\n+--------------+---------------+---------------+---------------+---------------+---------------+\r\n|  类型 (1字节) |  长度 (2字节) |   数据 (N字节) |  类型 (1字节) |  长度 (2字节) |   数据 (N字节) | ...\r\n+--------------+---------------+---------------+---------------+---------------+---------------+\r\n```\r\n\r\n**字段说明：**\r\n\r\n| 字段 | 长度  | 描述                                                                                 |\r\n|------|-------|--------------------------------------------------------------------------------------|\r\n| 类型 | 1字节 | PDO类型标识符 (0x20: 电机RXPDO, 0x30: 电机TXPDO, 0x60-0x62: 传感器TXPDO)             |\r\n| 长度 | 2字节 | 后续数据字段的长度（字节数）                                                         |\r\n| 数据 | N字节 | 具体的PDO数据内容，格式取决于PDO类型                                                 |\r\n\r\n#### SDO（服务数据对象）格式\r\nSDO用于配置参数传输和设备状态查询，采用请求-响应模式。\r\n\r\n**SDO数据包结构：**\r\n```\r\n+--------------+---------------+------------+-----------------+----------------+-------------------+---------------+\r\n|  类型 (1字节) |  长度 (2字节) |  ID (1字节) |  操作码 (1字节) | 操作长度 (1字节) | 寄存器地址 (2字节) |   数据 (N字节) |...\r\n+--------------+---------------+------------+-----------------+----------------+-------------------+---------------+\r\n```\r\n\r\n**字段说明：**\r\n\r\n| 字段       | 长度  | 描述                                                                                 |\r\n|------------|-------|--------------------------------------------------------------------------------------|\r\n| 类型       | 1字节 | SDO类型标识符 (0x10)                                                                 |\r\n| 长度       | 2字节 | 后续数据字段的长度（字节数）                                                         |\r\n| ID         | 1字节 | 设备标识符                                                                           |\r\n| 操作码     | 1字节 | 操作类型 (0x01: 读, 0x02: 写, 0x03: 响应, 0x04: 错误)                                |\r\n| 操作长度   | 1字节 | 后续数据字段的长度（字节数）                                                         |\r\n| 寄存器地址 | 2字节 | 目标寄存器地址                                                                       |\r\n| 数据       | N字节 | 读写的数据内容                                                                       |\r\n\r\n### 1.4 通信端口\r\n| 端口号 | 端口类型 | 描述 |\r\n|--------|----------|------|\r\n| 9110   | 电机PDO  | 电机过程数据对象通信端口 |\r\n| 8880   | 电机SDO  | 电机服务数据对象通信端口 |\r\n| 8887   | CM7调试  | Cortex-M7处理器调试端口 |\r\n| 8884   | CM4调试  | Cortex-M4处理器调试端口 |\r\n\r\n### 1.5 通信示例\r\n\r\n**PDO通信示例（多个PDO组合）：**\r\n```\r\nUDP数据包: [0x30][0x0018][电机TXPDO数据][0x61][0x0020][IMU数据]\r\n```\r\n\r\n**SDO通信示例（参数配置）：**\r\n```\r\n写操作: [0x10][0x000C][0x01][0x01][0x04][0x1000][0x3F800000] \u002F\u002F 写入电机参数\r\n读操作: [0x10][0x0008][0x01][0x00][0x04][0x1000][00000000] \u002F\u002F 读取电机参数\r\n```\r\n\r\n## 2. 数据结构定义\r\n\r\n### 2.1 基本数据类型\r\n\r\n#### ROFU_TYPE_T (枚举)\r\n定义协议中使用的设备类型标识符。\r\n\r\n```c\r\ntypedef enum {\r\n    ROFU_NOUSED_TYPE = 0x00,\r\n\r\n    \u002F\u002F 同步帧\r\n    ROFU_SYNC_FRAME_TYPE = 0x80,\r\n\r\n    \u002F\u002F 电机类\r\n    ROFU_MOTOR_SDO_TYPE = 0x10,\r\n    ROFU_MOTOR_RXPDO_TYPE = 0x20,\r\n    ROFU_MOTOR_TXPDO_TYPE = 0x30,\r\n\r\n    \u002F\u002F 传感器类\r\n    ROFU_SENSOR_TXPDO_FT_TYPE = 0x60,\r\n    ROFU_SENSOR_TXPDO_IMU_TYPE = 0x61,\r\n    ROFU_SENSOR_TXPDO_ENCODE_TYPE = 0x62,\r\n} ROFU_TYPE_T;\r\n```\r\n\r\n#### ROFU_PORT_T (枚举)\r\n通信端口定义。\r\n```c\r\ntypedef enum {\r\n    \u002F\u002F 电机PDO通信端口\r\n    ROFU_MOTOR_PDO_PORT = 9110,\r\n    \u002F\u002F 电机SDO通信端口\r\n    ROFU_MOTOR_SDO_PORT = 8880,\r\n    \u002F\u002F CM7调试端口\r\n    ROFU_DEBUG_M7_PORT = 8887,\r\n    \u002F\u002F CM4调试端口\r\n    ROFU_DEBUG_M4_PORT = 8884,\r\n} ROFU_PORT_T; \u002F\u002F 端口号\r\n```\r\n\r\n#### ROFU_PDO_T (结构体)\r\n通用过程数据对象结构。\r\n```c\r\ntypedef struct {\r\n    uint8_t type;      \u002F\u002F 数据类型\r\n    uint16_t len;      \u002F\u002F 数据长度\r\n    uint8_t *pdata;    \u002F\u002F 数据指针\r\n} ROFU_PDO_T;\r\n```\r\n\r\n#### ROFU_SDO_T (结构体)\r\n服务数据对象结构。\r\n```c\r\ntypedef struct {\r\n    uint8_t type;      \u002F\u002F 数据类型\r\n    uint16_t len;      \u002F\u002F 数据长度\r\n    uint8_t id;        \u002F\u002F 设备ID\r\n    uint8_t op;        \u002F\u002F 操作码\r\n    uint8_t op_len;    \u002F\u002F 操作数据长度\r\n    uint16_t addr;     \u002F\u002F 寄存器地址\r\n    uint8_t *pdata;    \u002F\u002F 数据指针\r\n} ROFU_SDO_T;\r\n```\r\n\r\n#### ROFU_SDO_OP_T (枚举)\r\nSDO操作码定义。\r\n```c\r\ntypedef enum {\r\n    ROFU_NOUSED_READ = 0x00,\r\n\r\n    \u002F\u002F SDO读操作\r\n    ROFU_SDO_OP_READ = 0x01,\r\n\r\n    \u002F\u002F SDO写操作\r\n    ROFU_SDO_OP_WRITE = 0x02,\r\n\r\n    \u002F\u002F SDO响应\r\n    ROFU_SDO_OP_RESPONSE = 0x03,\r\n\r\n    \u002F\u002F SDO错误\r\n    ROFU_SDO_OP_ERROR = 0x04,\r\n} ROFU_SDO_OP_T;\r\n```\r\n\r\n#### ROFU_SDO_STATE_T (枚举)\r\nSDO状态定义。\r\n```c\r\ntypedef enum {\r\n    ROFU_SDO_FRAME_OK = 0x00,\r\n\r\n    \u002F\u002F 未定义帧\r\n    ROFU_SDO_FRAME_NO_DEFINED = 0x01,\r\n\r\n    \u002F\u002F 帧长度错误\r\n    ROFU_SDO_FRAME_LEN_ERROR = 0x02,\r\n\r\n    \u002F\u002F pdo帧超时\r\n    ROFU_SDO_FRAME_OUTTIME = 0x03,\r\n} ROFU_SDO_STATE_T;\r\n```\r\n\r\n#### ROFU_SDO_ADDR_T (枚举)\r\nSDO寄存器地址定义。\r\n```c\r\ntypedef enum {\r\n    ROFU_SDO_ADDR_NOUSED = 0x0000,\r\n\r\n    \u002F\u002F 电机SDO地址\r\n    ROFU_SDO_ADDR_MOTOR_ALL = 0x1000,\r\n    ROFU_SDO_ADDR_MOTOR_POLE = 0x1001,\r\n    ROFU_SDO_ADDR_MOTOR_PHASE_SEQ = 0x1002,\r\n    ROFU_SDO_ADDR_MOTOR_REDU_RATIO = 0x1003,\r\n    ROFU_SDO_ADDR_MOTOR_RS = 0x1004,\r\n    ROFU_SDO_ADDR_MOTOR_LQ = 0x1005,\r\n    ROFU_SDO_ADDR_MOTOR_LD = 0x1006,\r\n    ROFU_SDO_ADDR_MOTOR_KT = 0x1007,\r\n    ROFU_SDO_ADDR_MOTOR_INERTIA = 0x1008,\r\n    ROFU_SDO_ADDR_MOTOR_KE = 0x1009,\r\n\r\n    \u002F\u002F 三环PID地址\r\n    ROFU_SDO_ADDR_PID_ALL = 0x2000,\r\n    ROFU_SDO_ADDR_PID_CUR_KP = 0x2001,\r\n    ROFU_SDO_ADDR_PID_CUR_KI = 0x2002,\r\n    ROFU_SDO_ADDR_PID_VEL_KP = 0x2003,\r\n    ROFU_SDO_ADDR_PID_VEL_KI = 0x2004,\r\n    ROFU_SDO_ADDR_PID_POS_KP = 0x2005,\r\n\r\n    \u002F\u002F 保护阈值地址\r\n    ROFU_SDO_ADDR_THR_ALL = 0x2010,\r\n    ROFU_SDO_ADDR_THR_VBUS_HIGH = 0x2011,\r\n    ROFU_SDO_ADDR_THR_VBUS_LOW = 0x2012,\r\n    ROFU_SDO_ADDR_THR_IPHASE_HIGH = 0x2013,\r\n    ROFU_SDO_ADDR_THR_MOS_TEMP_MAX = 0x2014,\r\n    ROFU_SDO_ADDR_THR_MOTOR_TEMP_MAX = 0x2015,\r\n    ROFU_SDO_ADDR_THR_MOTOR_SPEED_MAX = 0x2016,\r\n} ROFU_SDO_ADDR_T;\r\n```\r\n## 3. 电机控制协议\r\n#### ROFU_MOTOR_CTRL_T (联合体)\r\n\r\n```c\r\ntypedef union {\r\n    struct {\r\n        \u002F\u002F 0: disable\r\n        \u002F\u002F 1: enable\r\n        uint16_t enable : 1;\r\n\r\n        \u002F\u002F 0: MIT\r\n        \u002F\u002F 1: PP\r\n        \u002F\u002F 2: PV\r\n        \u002F\u002F 3: PT\r\n        \u002F\u002F 4: CSP\r\n        \u002F\u002F 5: CSV\r\n        \u002F\u002F 6: CST\r\n        uint16_t mode : 7;\r\n\r\n        uint16_t : 8;\r\n\r\n    } bits;\r\n    uint16_t data;\r\n} ROFU_MOTOR_CTRL_T;\r\n```\r\n### 3.2 控制模式说明\r\n\r\n| 模式值 | 模式名称 | 描述 |\r\n|--------|----------|------|\r\n| 0      | MIT      | 力矩控制模式 |\r\n| 1      | PP       | 位置轮廓控制模式 |\r\n| 2      | PV       | 速度轮廓控制模式 |\r\n| 3      | PT       | 力矩轮廓控制模式 |\r\n| 4      | CSP      | 循环位置控制模式 |\r\n| 5      | CSV      | 循环速度控制模式 |\r\n| 6      | CST      | 循环力矩控制模式 |\r\n\r\n### 3.3 电机头结构体\r\n\r\n#### RX 头结构 (ROFU_MOTOR_RXHEAD_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t id;                    \u002F\u002F 电机ID号\r\n    uint16_t seq;                  \u002F\u002F 命令序列号\r\n    ROFU_MOTOR_CTRL_T ctrl; \u002F\u002F 控制字\r\n} ROFU_MOTOR_RXHEAD_T;\r\n```\r\n\r\n#### TX 头结构 (ROFU_MOTOR_TXHEAD_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t id;\r\n    uint16_t seq;\r\n    ROFU_MOTOR_CTRL_T state;\r\n} ROFU_MOTOR_TXHEAD_T;\r\n```\r\n\r\n### 3.4 完整RXPDO结构\r\n\r\n```c\r\ntypedef struct {\r\n    ROFU_MOTOR_RXHEAD_T header;\r\n    union {\r\n        ROFU_MOTOR_RXPDO_MIT_T mit;\r\n        ROFU_MOTOR_RXPDO_PT_T pt;\r\n        ROFU_MOTOR_RXPDO_PV_T pv;\r\n        ROFU_MOTOR_RXPDO_PP_T pp;\r\n        ROFU_MOTOR_RXPDO_CST_T cst;\r\n        ROFU_MOTOR_RXPDO_CSV_T csv;\r\n        ROFU_MOTOR_RXPDO_CSP_T csp;\r\n    };\r\n} ROFU_MOTOR_RXPDO_T;\r\n```\r\n\r\n### 3.5 完整TXPDO结构\r\n\r\n```c\r\ntypedef struct {\r\n    ROFU_MOTOR_TXHEAD_T header;\r\n    union {\r\n        ROFU_MOTOR_TXPDO0_T pdo0;\r\n    };\r\n} ROFU_MOTOR_TXPDO_T;\r\n```\r\n\r\n### 3.6 RXPDO 数据结构\r\n\r\n#### MIT 模式 (ROFU_MOTOR_RXPDO_MIT_T)\r\n```c\r\ntypedef struct {\r\n    int16_t kp;           \u002F\u002F 比例增益\r\n    int32_t pos_target;   \u002F\u002F 目标位置\r\n    int16_t kd;           \u002F\u002F 微分增益\r\n    int32_t vel_target;   \u002F\u002F 目标速度\r\n    int16_t taff;         \u002F\u002F 扭矩补偿\r\n} ROFU_MOTOR_RXPDO_MIT_T;\r\n```\r\n\r\n#### PT 模式 (ROFU_MOTOR_RXPDO_PT_T)\r\n```c\r\ntypedef struct {\r\n    int16_t tor_target;  \u002F\u002F 目标扭矩\r\n    int16_t tor_profile; \u002F\u002F 扭矩斜率\r\n} ROFU_MOTOR_RXPDO_PT_T;\r\n```\r\n\r\n#### PV 模式 (ROFU_MOTOR_RXPDO_PV_T)\r\n```c\r\ntypedef struct {\r\n    int32_t vel_target;  \u002F\u002F 目标速度\r\n    int32_t vel_max;     \u002F\u002F 最高速度\r\n    int32_t acc_profile; \u002F\u002F 加速度斜率\r\n    int32_t dec_profile; \u002F\u002F 减速度斜率\r\n} ROFU_MOTOR_RXPDO_PV_T;\r\n```\r\n\r\n#### PP 模式 (ROFU_MOTOR_RXPDO_PP_T)\r\n```c\r\ntypedef struct {\r\n    int32_t pos_target;  \u002F\u002F 目标位置\r\n    int32_t vel_target;  \u002F\u002F 目标速度\r\n    int32_t acc_profile; \u002F\u002F 加速度斜率\r\n    int32_t dec_profile; \u002F\u002F 减速度斜率\r\n} ROFU_MOTOR_RXPDO_PP_T;\r\n```\r\n\r\n#### CST 模式 (ROFU_MOTOR_RXPDO_CST_T)\r\n```c\r\ntypedef struct {\r\n    int16_t tor_target; \u002F\u002F 目标扭矩\r\n} ROFU_MOTOR_RXPDO_CST_T;\r\n```\r\n\r\n#### CSV 模式 (ROFU_MOTOR_RXPDO_CSV_T)\r\n```c\r\ntypedef struct {\r\n    int32_t vel_target; \u002F\u002F 目标速度\r\n} ROFU_MOTOR_RXPDO_CSV_T;\r\n```\r\n\r\n#### CSP 模式 (ROFU_MOTOR_RXPDO_CSP_T)\r\n```c\r\ntypedef struct {\r\n    int32_t pos_target; \u002F\u002F 目标位置\r\n} ROFU_MOTOR_RXPDO_CSP_T;\r\n```\r\n\r\n### 3.8 TXPDO 数据结构\r\n\r\n#### 电机状态数据 (ROFU_MOTOR_TXPDO0_T)\r\n```c\r\ntypedef struct {\r\n    int32_t pos_real;     \u002F\u002F 实际位置\r\n    int32_t vel_real;     \u002F\u002F 实际速度\r\n    int16_t tor_real;     \u002F\u002F 实际扭矩\r\n    int16_t mos_temper;   \u002F\u002F MOS温度\r\n    int16_t motor_temper; \u002F\u002F 电机温度\r\n    int16_t error_code;   \u002F\u002F 故障码\r\n} ROFU_MOTOR_TXPDO0_T;\r\n```\r\n\r\n### 3.9 SDO 配置参数\r\n\r\n#### PID 参数配置 (ROFU_MOTOR_SDO_PID_T)\r\n```c\r\ntypedef struct {\r\n    int16_t cur_kp;     \u002F\u002F 电流KP增益\r\n    int16_t cur_ki;     \u002F\u002F 电流KI增益\r\n    int16_t vel_kp;     \u002F\u002F 速度KP增益\r\n    int16_t vel_ki;     \u002F\u002F 速度KI增益\r\n    int16_t pos_kp;     \u002F\u002F 位置KP增益\r\n} ROFU_MOTOR_SDO_PID_T; \u002F\u002F 三环PID参数\r\n```\r\n\r\n#### 电机参数配置 (ROFU_MOTOR_SDO_CONFIG_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t pole;          \u002F\u002F 极对数\r\n    uint8_t phase_seq;     \u002F\u002F 相序\r\n    uint8_t redu_ratio;    \u002F\u002F 减速比\r\n    int16_t Rs;            \u002F\u002F 定子电阻\r\n    int16_t Lq;            \u002F\u002F Lq电感\r\n    int16_t Ld;            \u002F\u002F Ld电感\r\n    int16_t Kt;            \u002F\u002F 转矩常数\r\n    int16_t inertia;       \u002F\u002F 转动惯量\r\n    int16_t Ke;            \u002F\u002F 反电动势常数\r\n} ROFU_MOTOR_SDO_CONFIG_T; \u002F\u002F 电机参数\r\n```\r\n\r\n#### 保护阈值配置 (ROFU_MOTOR_SDO_THR_T)\r\n```c\r\ntypedef struct {\r\n    uint16_t vbus_high;      \u002F\u002F Vbus高阈值 \r\n    uint16_t vbus_low;       \u002F\u002F Vbus低阈值 \r\n    uint16_t iphase_high;    \u002F\u002F 相电流高阈值 \r\n    uint16_t mos_temper;     \u002F\u002F MOS温度阈值 \r\n    uint16_t motor_temper;   \u002F\u002F 电机温度阈值 \r\n    uint16_t speed_max;      \u002F\u002F 速度最大阈值 \r\n} ROFU_MOTOR_SDO_THR_T; \u002F\u002F 保护阈值\r\n```\r\n\r\n## 4. 传感器协议\r\n\r\n#### IMU 传感器数据 (ROFU_IMU_TXPDO_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t id;                 \u002F\u002F 设备ID\r\n    uint16_t seq;               \u002F\u002F 序列号\r\n    uint32_t sample_time_fine;  \u002F\u002F 采样时间\r\n    int16_t quaternion[4];      \u002F\u002F 四元数 (w, x, y, z)\r\n    int16_t acceleration[3];    \u002F\u002F 加速度 (x, y, z)\r\n    int16_t rate_of_turn[3];    \u002F\u002F 角速度 (x, y, z)\r\n    uint8_t state;              \u002F\u002F 状态字\r\n    uint8_t err_code;           \u002F\u002F 错误码\r\n} ROFU_IMU_TXPDO_T;\r\n```\r\n#### 力传感器数据 (ROFU_FT_TXPDO_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t id;                 \u002F\u002F 设备ID\r\n    uint16_t seq;               \u002F\u002F 序列号\r\n    int16_t fx;                 \u002F\u002F X轴力\r\n    int16_t fy;                 \u002F\u002F Y轴力\r\n    int16_t fz;                 \u002F\u002F Z轴力\r\n    int16_t mx;                 \u002F\u002F X轴力矩\r\n    int16_t my;                 \u002F\u002F Y轴力矩\r\n    int16_t mz;                 \u002F\u002F Z轴力矩\r\n    uint8_t err_code;           \u002F\u002F 错误码\r\n} ROFU_FT_TXPDO_T;\r\n```\r\n#### 编码器数据 (ROFU_ENCODE_TXPDO_T)\r\n```c\r\ntypedef struct {\r\n    uint8_t id;                 \u002F\u002F 设备ID\r\n    uint16_t seq;               \u002F\u002F 序列号\r\n    int32_t pos;                \u002F\u002F 位置值\r\n    uint8_t state;              \u002F\u002F 状态字\r\n} ROFU_ENCODE_TXPDO_T;\r\n```\r\n## 5. 通信协议规范\r\n\r\n### 5.1 数据包格式\r\n所有数据包采用小端字节序，结构体打包对齐为1字节。\r\n\r\n### 5.2 错误处理\r\n- 错误码为32位无符号整数\r\n- 错误码厂家自定义\r\n\r\n### 5.3 通信时序\r\n- 建议通信频率: 1kHz\r\n- 超时时间: 100ms\r\n\r\n## 6. 附录\r\n\r\n### 6.1 版本历史\r\n| 版本 | 日期 | 描述 |\r\n|------|------|------|\r\n| 1.0  | 2026-04-13 | 初始版本 |\r\n\r\n### 6.2 技术说明\r\n- 所有结构体使用 `#pragma pack(1)` 进行1字节对齐打包\r\n- 协议支持PDO（过程数据对象）和SDO（服务数据对象）两种通信模式\r\n- 电机控制支持8种不同的控制模式，每种模式有对应的数据结构\r\n- 传感器数据包括IMU、力传感器和编码器的测量数据\r\n- 所有数据都采用小端格式\r\n\r\n### 6.3 编译环境\r\n- Cubeide 版本:V1.18.0\r\n- CubeMx 版本:V6.14.0\r\n- 芯片型号：STM32H755\r\n\r\n## 7. 联系方式\r\n如需进一步了解RoboFusion技术，请发邮件到：RoboticsX@tencent.com","Robo Fusion 协议是一个基于UDP的应用层通信协议，专为机器人控制系统设计。该协议支持多种电机控制模式（如MIT、PP、PV等）和传感器数据采集（IMU、力传感器、编码器等），采用紧凑的二进制格式确保高效的数据传输。其核心功能包括PDO通信（用于周期性传输实时数据，如电机控制指令和传感器数据）和SDO通信（用于配置参数传输和设备状态查询）。此外，协议还支持实时状态监控和故障诊断。Robo Fusion 适用于需要高效率、低延迟通信的机器人应用场景，特别适合在工业自动化、服务机器人等领域中使用。","2026-06-11 04:07:14","CREATED_QUERY"]