# Work To be done & optimized - **待完成**:不完成可能导致整车功能不完整 - **待优化**:对已有的功能进行性能提高/模块解耦/可维护性增强 - **待添加**:不紧急的/锦上添花的功能 **==标为黄色高亮的代表紧急程度高。==** ## BSP ### 待完成 #### bsp_buzzer - [ ] 添加初始化完成时的音乐播放 ### 待优化 #### bsp_buzzer 需要和**daemon**模块配合。 - [ ] 增加错误或异常提示音 - [ ] 增加功能提示音 #### bsp_led 需要和**daemon**模块配合。这同时会影响到module层的led_task,放在这一并解决。 - [ ] 增加错误或异常流水灯 - [ ] 增加功能点灯 ### 待添加 #### bsp_spi - [ ] 增加spi的板级支持包,供IMU使用和其他外接模块使用 #### bsp_iic - [ ] 增加iic的板级支持包,供磁力计和OLED屏等使用 - [ ] 增加软件iic的支持包 #### bsp_gpio - [ ] 增加GPIO引脚的控制(有待商榷是否需要单独添加,HAL实际上已经提供较好的封装) #### bsp_usb - [ ] 增加usb的支持,用于虚拟串口或和PC进行高速通信 #### bsp_blueteetch - [ ] 增加蓝牙功能,方便调试和测试 #### bsp_wifi - [ ] 增加无线网络功能,方便调试和测试 --- ## Module ### 待完成 #### ==servo_motor== 舵机模块,需要预先定义90/180/360连续旋转的电机类型,并且能够设定max和min位置。 - [ ] 编写舵机模块 #### ==daemon== 应用和模块监视功能,用于提供掉线和异常检测与应对机制,和底层的buzzer、led、oled等配合提供快速的问题定位。 - [ ] 编写daemon #### LKMotor LK系列电机,目前仅用于平衡步兵驱动轮。后续可能使用其他瓴控电机。 - [ ] 重构LKMotor模块 #### HTMotor 海泰04电机。目前仅用于平衡步兵关节电机。 - [ ] 重构海泰电机模块 #### imu - [ ] 增加角速度的反馈,并且能够获取加速度值(目前看来修改反馈数据类型定义即可) #### refereeUI - [ ] 提供UI绘制封装 - [ ] 绘制电容剩余容量/当前底盘状态/当前云台状态/底盘位置/射表 - [ ] 绘制视觉识别UI/识别状态/击打状态 #### ==master_machine== - [ ] 增加IMU数据的时间戳 - [ ] 增加加速度计数据 - [ ] 重构seasky protocol的接口 - [ ] 增加数据未更新的处理 #### LQR - [ ] 通用的LQR控制器 ### 待优化 #### imu 需要重写部分数据结构,并在bsp_spi完成之后移植到新的bsp上。 - [ ] 重构imu模块 #### motor_task - [ ] 给不同的伺服机构添加不同的执行频率 #### remote_control - [ ] 将键盘数据解析替换为位域操作 #### referee - [ ] 优化三个裁判系统模块的组织关系 #### message_center - [ ] 增加队列剩余信息和数据时间戳的支持 #### can_comm - [ ] 增加can_comm数据未更新的处理 #### controller - [ ] 增加前馈数据 #### user_lib - [ ] 将所有通用的计算函数和常用函数汇集在此 #### dji_motor - [ ] 增加3508和2006的开环零位校准函数 - [ ] 为实例增加低通滤波系数变量,使不同电机有不同的配置 ### 待添加 #### step_motor - [ ] 增加步进电机模块 #### referee_communication - [ ] 增加裁判系统多机通信功能 #### controller - [ ] 增加扰动观测器,可能需要新增模块 - [ ] 增加模型控制器,可能需要新增模块 #### master_process - [ ] 兼容其他通信方式,如can,spi,usb等 --- ## APP ### 待完成 #### ==robot_cmd== - [ ] 键盘控制 - [ ] 鼠标控制 - [ ] 双板兼容 #### ==chassis== - [ ] 根据裁判系统的功率数据和超级电容,进行输出限幅 - [ ] 双板兼容 #### ==shoot== - [ ] 优化单发模式的位置闭环(是否要改成速度闭环,然后定时?) - [ ] 增加卡弹检测和反转 - [ ] 弹仓盖控制(需待servo_motor完成) - [ ] 双发射机构兼容 - [ ] 42mm发射机构兼容 ### 待优化 #### robot_cmd - [ ] 解耦各个应用的运行模式 - [ ] 优化消息发布和接收性能 #### gimbal - [ ] 增加不同模式之间的过渡(是否有必要?) - [ ] 增加底盘速度前馈控制 #### chassis - [ ] 根据电机的实际速度计算底盘的真实运动 - [ ] 若为双板,根据IMU的数据对电机实际速度进行融合 - [ ] 增加不同模式之间的过渡(是否有必要?) #### shoot