2.25-3.2

碎碎念

确认选题后进行了简单的组内分工,我负责定位导航系统以及视觉识别跟踪系统,同时学习控制部分。
感觉任务还是蛮重的,但我的想法也好多好多,很多比较先进的算法也不知道能不能做得出来,比如其实我还挺想做最优控制的,用这个来控制激光器跟踪应该会很丝滑。
视觉上我也超想跑一个slam实践一下,或者搞个激光雷达玩玩。

但后几天的调研发现这些方案太贵了,而且或许没太大必要性,我们有更好的定位方案。或许还是识别小车更重要一点。

工作进度

  • 确定了几种可行的定位方案:imu惯性测量、两个激光测距定点、观察头顶的视觉slam、激光雷达。
  • 调研了大批的开发板:jetson nano、jetson tx2、树莓派5b+kit、香橙派、爱思派。
  • 配好了yolo环境,可以开始收集数据集训练网络了。

下周安排

  • 定位方案不着急确定,可以一个一个尝试,看哪个方案最合适。
  • 首要确定开发板,然后开始搭建开发环境,搭载yolo进行简单小车识别,考虑如何提前小车位置信息。
  • 和老师同学交流,商讨数据集。
  • 开题答辩ppt完成。

3.3-3.9

工作进度

  • 购买了jetson nano并进行了基本的环境配置和学习
  • 部署了yolov5n模型,转到engine后,推理时间能达到33ms左右
  • 向战队借了一个mind的USB工业相机,已配好驱动
  • 使用coco数据集训练的yolov5n,从相机取流推理跑通,帧率只有16左右,原因在于pre_process和取流
  • 将取流与预处理、推理分成两个进程处理,并行或许能达到更高的帧率,正在debug进程通信问题

下周安排

  • 跑通多进程处理方案,效果应该会更好
  • 尝试通过载板pin口驱动舵机,尝试相机跟踪人脸
  • 调试相机参数,获取更高的画面质量
  • 考虑开始写ros架构

本周总结

基本完成上周任务,数据集问题还没确定,主要是目标区域贴纸老师们还没确定,所以数据集还没准备好。

3.10-3.16

工作进度

  • 跑通了python的双进程,现在能稳定在25fps勉强够用,识别进度先推到这里
  • 发现jetson nano国产板子没法支持输出PWM, 所以舵机测试先搁置了
  • 相机参数设置和ros架构搁置了
  • 拿到了stm32和四个直流电机,准备尝试串口和驱动底盘

下周安排

  • 串口通信,尝试驱动底盘
  • 学习尝试ros架构

本周总结

本周工作量较小,主要是去搞了战队的事情。和师兄交流说是电控比较重要,接下来会把重心放在这里。

3.17-3.23

工作进度

  • 底盘驱动完成,通过编码器算出速度作为反馈,控制量为PWM信号
  • 配置了遥控器,完成了遥控移动
  • 和控院同学讨论了地盘和云台分离结构的可行性以及成本,估计要废弃小陀螺运动

本周总结

底盘控制基本完成,遥控虽然头疼了好久,但好在也是完成了。
接下来就是云台控制部分、上下位机通信部分、定位导航测试(IMU、激光测距)
但现在云台的结构还没决定,周内需要进一步讨论,但感觉其他人都没啥想法,最后还是需要我自己想、自己拍定,有点头大。
先尝试解决导航定位问题,主要是涉及imu解码,再把拖了好久的上下位机串口通信给解决一下。
ros架构真的没时间管呀

下周安排

  • 确定云台结构
  • imu解码和编码器结合,惯性导航定位测试
  • 串口通信

3.24-4.1

工作进度

  • 放弃小陀螺方案
  • 确定导航方案,2D激光雷达+IMU

本周总结

主控板烧了,电控方面停滞一周进度。
小陀螺方案滑环和同步带结构太复杂且昂贵,同时收益很低,放弃。
购买了成品IMU组件,不需要自己做IMU解码,直接使用。
导航定位方案确定,但需要进一步调研。

下周安排

  • 跑通激光雷达和IMU的联合建图

4.2 - 4.28

工作进度

  • 完成建图、定位导航部分
  • 完成串口通信,导航可以跑通
  • 完成云台控制部分,云台可以转动

下周安排

  • 解决cmd_vel下发速度过低的问题,主要是local_planner路径太短
  • 云台控制模块接入导航模块,尝试云台控制