RoboMaster裁判系统V2.01串口协议详析与修订历史

需积分: 0 0 下载量 58 浏览量 更新于2024-07-01 收藏 373KB PDF 举报
裁判系统学生串口协议附录V2.0详细描述了RoboMaster组委会于2019年7月23日发布的用于裁判系统的学生串口通信协议。此协议主要用于控制和通信管理,适用于比赛中的机器人和裁判设备。以下是关键知识点: 1. **协议概述**: - 采用串口通信方式,配置为波特率115200,8位数据位,1位停止位,无硬件流控,无校验位。 2. **版本更新历史**: - V1.0: 首次发布,包含了基础数据结构和功能; - V1.1: 增加了弹丸数、请求补给机器人ID等字段,并修正了通信数据的细节; - V2.0: 对部分描述进行修改,如比赛机器人存活情况、空中机器人发射时间、场地事件等内容,并新增了裁判警告信息和客户端自定义图形等功能。 3. **命令码与功能**: - 0x0001: 比赛状态数据,每秒发送一次,包含比赛进程信息; - 0x0002: 比赛结果数据,比赛结束后发送; - 0x0003: 比赛机器人血量数据,每秒发送一次; - 0x0101: 场地事件数据,事件触发时发送,如小能量机关和基地护盾信息; - 0x0102: 场地补给站动作标识,动作改变后发送; - 0x0103: 请求补给站补弹数据(仅RM对抗赛未开放),发送频率上限为10Hz; - 0x0104: 裁判警告数据,警告发生时发送; - 0x0201: 机器人状态数据,每10Hz发送,包括机器人详细状态信息。 4. **数据帧结构**: - 包含帧头(SOF、数据长度、序列号和CRC8校验)、命令ID、数据段和帧尾(CRC16校验)。 5. **帧头细节**: - SOF (Start Of Frame): 固定值0xA5,表示数据帧的开始; - data_length: 数据部分的长度; - seq: 包序号,用于区分不同的数据包; - CRC8和CRC16: 数据包的校验,确保数据传输的准确性。 通过这个串口协议附录,参赛队伍可以与裁判系统进行有效且可靠的通信,获取比赛状态、机器人健康信息以及场地动态,同时也能发送请求和警告信息。对于开发者来说,理解和遵循这些规范至关重要,以实现比赛机器人的正确操作和与裁判系统的无缝对接。