电子科大机器人技术架构设计
 
Go to file
詹力 169c357dc2 update. 2023-12-15 13:06:17 +08:00
Docs 更新为实验室的PPT模板 2023-12-10 21:14:27 +08:00
Image update. 2023-12-01 18:37:31 +08:00
README.md update. 2023-12-15 13:06:17 +08:00

README.md

机器人开发规划和进度跟踪

2023-11-30 机器人开发状态更新

SLAM仓库http://logzhan.ticp.io:30000/logzhan/ORB-SLAM3-UESTC

定位参考系统仓库:http://logzhan.ticp.io:30000/logzhan/LightHouse-UESTC

路径规划仓库:http://logzhan.ticp.io:30000/logzhan/PathPlanning-UESTC

机器人硬件设计仓库:http://logzhan.ticp.io:30000/logzhan/RobotDriver-UESTC

机器人控制APP仓库http://logzhan.ticp.io:30000/logzhan/RobotApp-UESTC

割草机器人硬件厂商:https://cn.sunseekerpower.com/index.php?m=home&c=Lists&a=index&tid=81

一、 项目状态

1.1 进度说明(2023-12-15)

1.1.1 小车融合定位的说明:

下图描述了小车采用UWBIMU以及ODM的曲线对比。其中蓝色线表示Lighthouse的轨迹,红色线表示里程计的轨迹。黄色点表示的是UWB的轨迹点,紫色线表示多传感器融合后的结果。

近期的实验以及上图说明:

  1. Lighthouse定位精度较高,各种现象符合预期。
  2. 里程计在运行的早期精度很高,早期阶段远比UWB精度高。
  3. 虽然现阶段数据看起来融合后的结果比单纯里程计差,实际上是因为里程计的运行时间较短位置还没有发散,所以融合后的结果看起来比单纯里程计差。如果长时间运行,融合的优势才会逐步体现。
  4. 目前融合结果很大意义在于:目前我们的割草机器人初步拥有了一套完整的定位系统。相比单纯UWB定位和单纯里程计定位,融合后的结果结合了里程计的轨迹波动小的优点以及UWB长期运行不发散的问题。虽然对于部分同学毕业设计存在些许问题,但是对于割草机器人项目推进来说,定位已经不是阻碍,可以继续推进后续的目标检测、目标测距、导航避障、基于避障的全图路径规划
1.1.2 下一阶段要解决的问题

最近和许洪裱和卢瑞飞一同联调定位算法,发现项目有以下问题需要改进:

  1. 文档支持: 目前研二同学较多使用的是notion记录笔记,这个用于个人和团队使用没有问题。但是对应的,我们需要在代码仓库中维护一套markdown的文档。目前我已经在仓库中写了很多文档样例,后续研二开发同学clone仓库,完善文档和提交。

    1. 目前小车融合定位的节点如何启动的文档已经写了,但是全图路径规划的操作文档没有写。整个小车融合定位启动和路径规划的文档需要再梳理完善下(瑞飞较为熟悉操作步骤,跃杭协同瑞飞一起完善下)。
  2. 小车的直线偏移问题:这个问题还是影响比较大的,直接会影响路径规划的准确性。怀疑小车的PID调节模块没有起到作用。解决思路:给定小车前进的命令,记录小车的左右轮速,如果上报的左右轮速不同说明小车底盘的PID调节没有生效,需要看看编译选项问题或者代码逻辑问题。(涛锋)

  3. ros_merge_test代码问题:

    1. uwb_slam::System功能无效,内部有死循环会占用CPU,需要删除模块
    2. read_sensor_data.cpp和.h 功能无效,需要删除
    3. avoid.h无效需要删除
    4. 标准的注释格式需要完善, 无效代码需要整理, ../RobotKernal-UESTC/src/branch/main/Code/RK3588/Robot_ROS_APP/src/ros_merge_test/src/main.cpp 样例如下:
    /******************** (C) COPYRIGHT 2023 UPBot **********************************
    * File Name          : main.cpp
    * Current Version    : V1.0
    * Date of Issued     : 2023.12.13 zhanli@review
    * Comments           : UPbot割草机器人项目传感器融合定位入口函数
    ********************************************************************************/
    #include "../include/system.h"
    #include "../include/uwb.h"
    #include <iostream>
    #include <ros/ros.h>
    #include <thread>
    #include "senddata.h"
    
    
    /**---------------------------------------------------------------------
    * Function    : main
    * Description : 多传感器融合定位的入口函数
    * Date        : 2023/12/13 zhanli@review
    *---------------------------------------------------------------------**/
    int main(int argc, char** argv)
    
  4. 路径规划问题:

    目前路径规划是依靠ROS运行的,但是存在如下的疑问:

    4.1.ros内置的全图规划原理是什么?需要给出文档

    4.2.ros内置的路径规划代码,能否抽离出来?或者自己掌握路径规划包的编写自己的路径规划包?

    4.3.思考后续如何和目标检测的结果进行协同,观测到障碍物重新避障,给出思路文档

1.1 进度说明(2023-12-01)

项目 状态和说明 负责人 状态 更新时间
ORB-SLAM3采用实时图像和IMU测试 目前购买的IMU数据存在问题IMU的Y轴数据存在异常。Linux下IMU的串口驱动程序不够完善。ORB-SLAM3没有实时接入摄像头和IMU的样例需要修改适配。 李瑞瑞 进行中 2023-11-30
ORB-SLAM3在RK3588上运行 需要观测ORB-SLAM3(纯摄像头、摄像头+IMU)对RK3588的CPU的占用情况记录文档。
定位参考系统 采用HTC vive VR的激光定位系统用于评估机器人定位算法误差文档和资料仓库路径 詹力 完成 2023-12-01
多平台可视化GUI系统(IOS、android、windows、linux) 有GUI界面显示机器人的位置信息、检测边界信息、规划路径信息、电量信息、地图信息等。可以对机器人进行执行和控制。跨平台开发建议选择flutter.
机器人硬件和结构搭建 已购买割草机器人包含充电底座和机器人主体12月2日发货地址高研院10楼。 詹力 完成

1.2 项目里程碑

二、项目开发规划

image-20231201124843447

三、机器人硬件搭建

3.1 机器人硬件

机器人的基础硬件采用Sunseeker的智能机器人。支持自动寻址充电和蓝牙&WIFI控制。目前已经找到公司的官网卖家说可以通过app控制机器人操作暂时还未联系厂商要求提供app。

3.1.1 外观和功能

image-20231201181931675 机器人正面和背面图

image-20231201182548239

机器人充电界面和充电底座