littlebot
Published on 2025-04-16 / 2 Visits
0

【源码】基于ROS的机器人路径规划系统

项目简介

本项目作为OPIL(Open Platform for Innovations in Logistics)平台的一部分,致力于为物流环境中的机器人提供路径规划服务。通过计算无冲突的最优路径,保障多个机器人能在同一环境中安全共存。项目主要包含任务调度模块(TaskPlanner)和运动任务规划模块(Motion Task Planner, MTP),支持多机器人路径规划、任务分配以及状态监控。

项目的主要特性和功能

  • 路径规划:运用CARP算法(Context-Aware Route Planning),计算最短且无冲突的路径,避免死锁和碰撞。
  • 多机器人协调:支持多个机器人同时作业,可动态调整路径以适应环境变化。
  • 拓扑管理:借助拓扑代理(Topology Agents)管理物流环境的拓扑结构,支持动态更新和冲突检测。
  • 任务分配:逻辑代理(Logical Agents)负责任务分配和路径管理,支持任务的动态调整和错误处理。
  • 接口通信:提供与机器人节点(RAN)的通信接口,支持任务分配、取消和状态反馈。

安装使用步骤

1. 安装ROS

确保已安装ROS Melodic或Noetic,并创建一个catkin工作空间。 bash mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src cd ~/catkin_ws catkin_make

2. 启动系统

使用提供的launch文件启动系统节点。 bash roslaunch mod_sw_tp mod_sw_tp.launch

3. 配置文件说明

  • Topology:配置拓扑启动模块,设置日志级别、拓扑文件类型和顶点足迹半径。
  • Router:启动路由节点,计算无冲突路径。
  • Logical Agent:为每个机器人启动逻辑代理节点,管理任务和路径。

4. 接口使用

  • MotionAssignment.msg:发送运动任务分配消息,指定机器人的下一个目标点。
  • CancelTask.msg:取消指定任务。
  • Motion.msg:接收机器人的当前位置和速度信息。
  • AssignmentStatus.msg:获取当前任务和路径的状态。

依赖项

  • ROS1 Melodic或Noetic
  • 其他ROS依赖项:industrial-msgs, amcl, tf, map-server, tf2-geometry-msgs, angles, stage, tf2-eigen, eigen-conversions, geometry-msgs, laser-geometry, visualization-msgs, move-base-msgs, behaviortree-cpp-v3

许可证

本项目基于Apache 2.0许可证发布。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】