使用手册 - MDCS简介:修订间差异

来自MDCS wiki
跳到导航 跳到搜索
无编辑摘要
无编辑摘要
 
第1行: 第1行:
1. MDCS是什么?
1.1 以物流车队比喻现代机器人架构
1.2 MDCS实现了T3架构
2. 车队管控(S)
3. 自动驾驶(C)
4. 底盘控制(M)
5. 定位导航(D)
= 1. MDCS是什么? =
= 1. MDCS是什么? =
MDCS是移动机器人的全栈实现,应用于工厂生产物流机器人控制,由刘诗聪博士团队开发维护。在介绍MDCS之前,我们用物流车队来比喻工厂物流机器人,以便读者对该领域有个感官认知,然后理解MDCS的功能架构和各子系统功能。本文面向非移动机器人专业的读者,尽可能用非技术语言来说明MDCS。对MDCS开发感兴趣的工程师可阅读《开发指南》,以便深入理解MDCS的实现原理。
MDCS是移动机器人的全栈实现,应用于工厂生产物流机器人控制,由刘诗聪博士团队开发维护。在介绍MDCS之前,我们用物流车队来比喻工厂物流机器人,以便读者对该领域有个感官认知,然后理解MDCS的功能架构和各子系统功能。本文面向非移动机器人专业的读者,尽可能用非技术语言来说明MDCS。对MDCS开发感兴趣的工程师可阅读《开发指南》,以便深入理解MDCS的实现原理。

2023年10月3日 (二) 01:24的最新版本

1. MDCS是什么?

MDCS是移动机器人的全栈实现,应用于工厂生产物流机器人控制,由刘诗聪博士团队开发维护。在介绍MDCS之前,我们用物流车队来比喻工厂物流机器人,以便读者对该领域有个感官认知,然后理解MDCS的功能架构和各子系统功能。本文面向非移动机器人专业的读者,尽可能用非技术语言来说明MDCS。对MDCS开发感兴趣的工程师可阅读《开发指南》,以便深入理解MDCS的实现原理。

1.1 以物流车队比喻现代机器人架构

没有机器人,人类如何运输货物?我们以物流公司的运输车队为例。从运输角度来看,调度、司机和货车在物流车队中各司其职,共同协作完成货物的运输任务。将这个比喻应用到移动机器人技术架构中,我们可以更好地理解机器人三层架构的全局规划、任务执行和行为之间的职责与协作关系。

  1. 调度:在物流车队中,调度负责整体运输任务的规划与分配,确保货物能够按时、按需送达目的地。对应到移动机器人技术架构的全局规划层,调度模块负责机器人的定位、路径规划和任务分配等功能。通过全局规划,机器人能够知道自己在环境中的位置、需要完成的任务以及如何高效地完成这些任务。
  2. 司机:在物流车队中,司机负责驾驶货车将货物从出发地点送达目的地。对应到移动机器人技术架构的任务执行层,驱动模块负责控制机器人的行动,使其能够按照预定的路径移动,并完成各种任务。这可能包括搬运货物、检测障碍物、充电等。
  3. 货车:在物流车队中,货车是运输货物的载体,负责承载货物并将其安全送达目的地。对应到移动机器人技术架构的行为层,传感器和执行器模块负责收集环境中的信息,并将驱动模块的指令转化为实际的动作。例如,传感器可以检测到障碍物或地面的摩擦力,而执行器则可以控制机器人的轮子或臂关节等部件。

在移动机器人技术架构中,全局规划层、任务执行层和行为层之间存在密切的协作关系。全局规划层根据环境信息和任务需求生成路径规划和任务分配策略,任务执行层根据这些策略控制机器人的行动,行为层则负责收集环境信息并执行具体的动作。通过这种协作关系,移动机器人能够高效地完成各种任务,实现与人类驾驶员类似的工作效果。

1.2 MDCS实现了T3架构

移动机器人 T3 架构是一个三层次的机器人系统架构,包括感知层、决策层和执行层。下面是对这三个层次的详细说明:

  1. 感知层:感知层是机器人 T3 架构的第一层,主要负责收集来自环境的各种信息。这一层包括了机器人的传感器,如激光雷达、摄像头、超声波传感器、陀螺仪等。通过这些传感器,机器人可以获取周围环境的三维结构、光照信息、距离信息以及自身在空间中的位置和姿态。感知层的目标是为决策层提供准确、实时的数据,以便机器人能够对环境做出正确的判断和响应。
  2. 决策层:决策层是机器人 T3 架构的第二层,主要负责处理感知层提供的数据,并根据这些数据来制定机器人的行动策略。这一层包括了机器人的导航算法、路径规划算法、障碍物避免算法等。决策层的目标是为执行层提供合适的控制指令,以使机器人能够安全、有效地到达目标地点。
  3. 执行层:执行层是机器人 T3 架构的第三层,主要负责根据决策层提供的控制指令来实现机器人的运动。这一层包括了机器人的驱动器、伺服电机、轮组等。执行层的目标是将决策层提供的控制指令转换为机器人的具体运动,从而实现机器人在空间中的移动。

移动机器人 T3 架构是一个分层的、模块化的系统,通过感知层收集环境信息,决策层处理信息并制定行动策略,执行层实现机器人的具体运动。这种架构使得机器人能够更加高效、灵活地应对复杂的环境,从而实现自主导航和移动。

MDCS实现了T3架构,它还包括管控子系统,用于管理和调度移动机器人舰队。MDCS与T3架构的映射关系如表1-1。

层次 MDCS的子系统 子系统职责
管控层 Simple(车队管控) 车队管理,路线规划,交通管制,任务调度。
决策层 Clumsy(自动驾驶) 任务执行,局部路线规划,轨迹跟踪,运动控制,高级安全管理。
感知层 Detour(定位导航) 激光与地纹SLAM(持续建图与定位),多里程计融合。
执行层 Medulla(底盘控制) 传感器与驱动器通信,扩展IO外设通信,响应式安全。

表 1-1 MDCS架构与T3的映射关系


得益于MDCS的全栈自研算法,使其能够为不同作业场景提供合适的技术方案,典型应用场景摘要如下:

  • 纯激光SLAM方案。适用于低动态的作业环境,如封闭的立体库、出库拣选和线边输送等场景。
  • 地纹 + 激光SLAM方案。适用于大动态的作业环境,地纹SLAM以地面纹理定位导航,不受周边环境变化影响;激光SLAM实现定位,与地纹里程计融合,实现稳定可靠的定位导航功能。
  • IMU + 激光SLAM方案。适用于地面问题不良的作业环境,如环氧地坪。基于惯导传感器实现的轮里程计,其输出精度使D(etour)持续推算机器人航迹,并使用激光SLAM的定位数据修正里程计累积误差,同样实现稳定可靠的定位导航功能。
  • 点云特征识别导航。根据点云中的几何特征来识别物体,并规划出机器人轨迹。比如识别托盘货架腿,识别中心点后驶入,可大幅减少库位标定工作量。又如识别托盘轮廓,计算进叉路线,解决人工放置托盘的位置检测问题。

2. 车队管控(S)

S是用于管理工厂物流的自主移动机器人(AMR,Autonomous Mobile Robot)和自动导引车(AGV,Automated Guided Vehicle)的软件。其主要目标是提高运输效率、降低运维成本并确保运输过程的安全性。

S 的主要功能包括:

  1. 路径规划和导航:根据工厂内部的布局和任务需求,为 AMR/AGV 规划最佳行驶路径,确保它们能够准确、高效地完成物料运输任务。
  2. 通信与协同:与工厂内的其他设备和系统进行通信,确保 AMR/AGV 与整个生产流程的协同工作。例如,与仓库管理系统(WMS)和生产执行系统(MES)进行数据交换,实现实时的物料追踪和调度。
  3. 队列管理和优先级调度:可以根据任务的优先级和时效性,对 AMR/AGV 车队进行动态调度,确保关键任务得到优先处理。
  4. 故障检测与预防:实时监控 AMR/AGV 的运行状态,检测潜在故障并进行预警,以降低停机时间和维护成本。
  5. 安全管理:确保 AMR/AGV 在遵守安全规定的前提下运行,实现与工厂内部其他设备的协同安全。
  6. 人机交互:直观的用户界面,方便操作人员监控 AMR/AGV 的运行状态、任务进度等信息,并进行必要的人工干预。

S实现了管控的核心功能,并可通过插件实现项目的定制化需求。它运行在管控服务器上,管理和调度车队执行任务。

注意:S是管控内核,应用功能一般通过插件实现,比如充电任务、MES接口等。

3. 自动驾驶(C)

C通过D获得机器人位姿、速度、方向等信息,并根据这些信息做出任务执行决策,比如跟踪S下发的路径,或通过点云识别托盘,规划叉取托盘的路线。C的职责和功能如下:

  1. 任务执行:执行S规划的路线,并将其拆分为若干子任务并逐个执行。
  2. 对象跟踪:根据激光雷达、深度相机等传感器数据,识别特定对象,并规划到对象的无碰撞路线。
  3. 轨迹跟踪:负责控制机器人的导航,以使其能够沿着规划好的路径移动。
  4. 高级安全:综合机器人定位、运动状态和避障等信息,在盲目驾驶(定位丢失)、危险驾驶(避障关闭)等异常状态下停车。

C实现了自动驾驶的核心功能,通过插件实现不同车型适配。它运行在移动机器人的车载控制器中,对上连接S,对下控制M,实现机器人的自动驾驶功能。

4. 底盘控制(M)

M与底盘的传感器和驱动器通信,它是C的下位执行者,负责将传感器数据上传给C,并将C下发的速度和角度指令转给驱动器。C的主要职责和功能如下:

  1. 处理传感器数据:与底盘的传感器通信,将解码后的数据上传给C,并在通信异常时触发报警。
  2. 控制底层执行器:通过控制底层执行器,例如马达、驱动器等,来实现对机器人的运动和操作控制。
  3. 响应式安全:实时监控机器人的状态,一旦发现异常情况或故障,及时进行处理,确保机器人能够正常运行。

M实现了底盘控制的核心功能,通过插件来适配不同的底盘轮系,它是机器人运动和操作的执行者。

5. 定位导航(D)

激光 SLAM(Simultaneous Localization and Mapping)一种用于自主导航的机器人技术,主要负责机器人在未知环境中的同时定位和地图构建。D以SLAM为核心算法,支持地纹、单线激光和多线激光。D通过激光雷达等传感器收集的数据,计算机器人在空间中的位置和姿态,同时构建周围环境的地图。

D的主要职责和功能如下:

  1. 定位:确定机器人在未知环境中的位置和姿态,以便于导航和避障。
  2. 地图构建:根据激光雷达数据创建环境地图,支持单、双激光雷达建图与定位,也支持地纹与激光的复合建图与定位。
  3. 位置估计:利用激光雷达和地纹相机数据,估计机器人在当前环境中的具体位置。
  4. 姿态更新:根据传感器数据,更新机器人在当前环境中的姿态信息,以便于精确导航。
  5. 多里程计:支持激光里程计、地纹里程计和轮里程计,支持多里程计融合应用。

D实现了机器人的定位导航能力,其核心算法能够在i3以上CPU实现视觉(地纹)与激光(单/多线)SLAM功能,并可融合基于IMU的轮里程计,以满足不同作业场景下的定位导航要求。