(⚠ 本仓库只包含了部分代码,全部源码暂未整理)
Lime_Robot上位机系统是针对室内移动机器人开发的综合控制平台,基于ROS 2框架构建,实现了室内建图导航、语音交互、视觉识别与机械臂协同抓取等核心功能,通过多模块协同工作完成复杂任务流程。
- 基于Cartographer框架实现实时2D SLAM建图,支持激光雷达数据处理,可配置扫描范围(最大8米)和地图分辨率(默认0.05米)
- 具备实时回环检测功能,通过优化算法提升地图精度,配置文件支持调整运动滤波参数(角度、距离阈值)
- 集成定位功能,通过cartographer_localization节点加载预存地图(.pbstream格式)实现机器人在已知环境中的精确定位
- 支持点云与激光雷达数据转换,通过pointcloud_to_laserscan模块实现数据格式适配
- 基于Navigation2框架实现自主路径规划与运动控制,包含AMCL定位、路径规划、避障等子模块
- 具备精细运动控制逻辑,通过cmd_nav_node节点实现PID闭环控制,支持位置与姿态的精确调节
- 支持目标点导航功能,可接收预设坐标或动态目标点信息,实现从当前位置到目标点的自主移动
- 包含自动定位初始化功能(autolocalization_node),启动时可通过旋转运动优化初始定位精度
- 基于wheeltec_mic_msg消息接口实现语音指令的接收与处理,支持在线与离线语音识别
- 可解析语音指令中的目标信息(如位置、角度),并转换为机器人可执行的控制命令
- 支持语音控制导航状态切换(启动/停止导航、返回起点等),实现人机自然交互
- 支持视觉识别结果接收(通过/object_xyz话题获取目标坐标),可实时解析目标物体的三维空间位置
- 实现视觉坐标到机器人坐标系的转换,通过TF变换计算目标在机器人局部坐标系中的相对位置
- 向机械臂发送目标抓取坐标(/target_xyz话题),协同完成抓取动作,支持抓取位置参数微调
- 提供机器人模型可视化(model_display节点),通过URDF模型展示机器人结构及各部件坐标关系
- 包含数据可视化工具(plot_helper),支持PID控制误差的实时绘图(1D/2D/3D模式)
- 具备传感器数据融合能力,通过ICP算法处理点云数据,优化机器人位姿估计精度
- 支持坐标存储与管理功能,可保存关键位置坐标用于后续导航任务调用
系统通过ROS 2话题机制实现各模块间的数据交互:语音指令触发导航任务,导航模块引导机器人到达目标区域后,视觉识别模块启动目标检测,将坐标信息传递给机械臂控制模块完成抓取,同时通过可视化模块实时展示整个过程的状态信息。