首页:修订间差异
无编辑摘要 |
(准备翻译的页面) |
||
| 第1行: | 第1行: | ||
[[文件:MDCS-2023.png|缩略图|159x159像素|MDCS logo 2023]] | <languages/> | ||
[[文件:MDCS-2023.png|缩略图|159x159像素|<translate>MDCS logo 2023</translate>]] | |||
<translate> | |||
MDCS是一个机器人的开发平台,包括以下组件。 | MDCS是一个机器人的开发平台,包括以下组件。 | ||
| 第7行: | 第9行: | ||
* Simple:机器人集群管理系统,核心为交通控制和寻路。 | * Simple:机器人集群管理系统,核心为交通控制和寻路。 | ||
* CycleGUI:回合式交互GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。 | * CycleGUI:回合式交互GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。 | ||
更详细地综述见:[[MDCS概述]] | 更详细地综述见:[[Special:MyLanguage/MDCS概述|MDCS概述]] | ||
== 基本介绍 == | == 基本介绍 == | ||
''' | '''定位系统''':AGV的定位是由独立模块《Detour》完成。Detour支持激光雷达和视觉的各类SLAM算法,包括[[Special:MyLanguage/具有高鲁棒性的激光SLAM算法|具有高鲁棒性的2D激光SLAM算法]]、[[Special:MyLanguage/地纹SLAM|地纹SLAM]]、[[Special:MyLanguage/天花板SLAM|天花板SLAM]]、[[Special:MyLanguage/二维码识别导航|二维码导航]]等,支持[[Special:MyLanguage/多定位源的自动综合|多定位源的自动综合]]。Detour可以使用Medulla提供的数据来源、也可以自行获取。整套MDCS实施时一般使用Medulla提供的数据来源。 | ||
'''车队调度''':交管、包络、寻路等内核算法由SimpleCore提供,其原理参见[[调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景设置包络。对调度的运行原理参见:[[AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。 | '''AGV车载系统''':由Medulla(硬件抽象逻辑)、Clumsy(车体运动抽象)组成并对功能定义;二者原理见[[Special:MyLanguage/车体抽象原理|车体抽象原理]]。Medulla+Clumsy可实现各类车体动作,最简单诸如[[Special:MyLanguage/巡线行走|巡线行走]]、[[Special:MyLanguage/绕障行走|绕障行走]]等,复杂一些的例子如[[Special:MyLanguage/自动识别工位并取放货|自动识别工位并取放货]]、[[Special:MyLanguage/自动识别托盘取放货|自动识别托盘取放货]]、[[Special:MyLanguage/识别料框并堆垛拆垛|识别料框并堆垛拆垛]]、[[Special:MyLanguage/联动天眼系统进行装卸车|联动天眼系统进行装卸车]]等。车载软件定义了AGV的能力集以及测试方法,并可由调度软件做动作组合从而完成整套任务。 | ||
'''车队调度''':交管、包络、寻路等内核算法由SimpleCore提供,其原理参见[[Special:MyLanguage/调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景设置包络。对调度的运行原理参见:[[Special:MyLanguage/AGV任务运行逻辑|AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。 | |||
== 快速开始 == | == 快速开始 == | ||
'''定位''' | '''定位''' | ||
只关注定位导航功能的读者,请阅读:[[下载并部署Detour]]。若安装Detour有任何问题,可以看详细教程:[[安装Detour]]。 | 只关注定位导航功能的读者,请阅读:[[Special:MyLanguage/下载并部署Detour|下载并部署Detour]]。若安装Detour有任何问题,可以看详细教程:[[Special:MyLanguage/安装Detour|安装Detour]]。 | ||
'''整车适配''' | '''整车适配''' | ||
| 第25行: | 第29行: | ||
对于需要做整车适配的读者,请阅读以下文章。 | 对于需要做整车适配的读者,请阅读以下文章。 | ||
[[MDCS引擎适配机器人入门教学]]、[[叉车适配案例]]、[[潜伏顶升车(KIVA类小车)适配案例]]、[[全向车适配案例]]、[[牵引车适配案例]] | [[Special:MyLanguage/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]、[[Special:MyLanguage/叉车适配案例|叉车适配案例]]、[[Special:MyLanguage/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]]、[[Special:MyLanguage/全向车适配案例|全向车适配案例]]、[[Special:MyLanguage/牵引车适配案例|牵引车适配案例]] | ||
== 使用手册 == | == 使用手册 == | ||
=== 通识和入门教学 === | === 通识和入门教学 === | ||
[[使用手册 - MDCS简介]] | [[Special:MyLanguage/MDCS-Walkthrough|MDCS-Walkthrough]] | ||
[[Special:MyLanguage/使用手册 - MDCS简介|使用手册 - MDCS简介]] | |||
[[激光SLAM的能力边界]] | [[Special:MyLanguage/激光SLAM的能力边界|激光SLAM的能力边界]] | ||
=== 定位导航相关手册 === | === 定位导航相关手册 === | ||
[[使用手册 - 激光SLAM+反光板建图手册|使用手册 - 激光SLAM+反光板建图手册]] | [[Special:MyLanguage/使用手册 - 定位导航|使用手册 - 定位导航]] | ||
[[Special:MyLanguage/使用手册 - 激光SLAM+反光板建图手册|使用手册 - 激光SLAM+反光板建图手册]] | |||
[[使用手册 - 分析定位问题]] | [[Special:MyLanguage/使用手册 - 分析定位问题|使用手册 - 分析定位问题]] | ||
[[使用手册 - 激光+纹理导航|使用手册 - 激光+纹理导航]] | [[Special:MyLanguage/使用手册 - 激光+纹理导航|使用手册 - 激光+纹理导航]] | ||
[[使用手册 - Detour车体编辑器使用教学]] | [[Special:MyLanguage/使用手册 - Detour车体编辑器使用教学|使用手册 - Detour车体编辑器使用教学]] | ||
[[使用手册 - 双雷达标定手册]] / [[标定双激光雷达外参]] | [[Special:MyLanguage/使用手册 - 双雷达标定手册|使用手册 - 双雷达标定手册]] / [[Special:MyLanguage/标定双激光雷达外参|标定双激光雷达外参]] | ||
[[使用手册 - 在地纹导航中使用二维码快速找回定位]] | [[Special:MyLanguage/使用手册 - 在地纹导航中使用二维码快速找回定位|使用手册 - 在地纹导航中使用二维码快速找回定位]] | ||
[[使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位]] | [[Special:MyLanguage/使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位|使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位]] | ||
[[标定激光雷达外参]] | [[Special:MyLanguage/标定激光雷达外参|标定激光雷达外参]] | ||
=== 运动控制使用手册 === | === 运动控制使用手册 === | ||
[[ | [[Special:MyLanguage/使用叉车自动取托盘功能|使用叉车自动取托盘功能]] | ||
[[ | [[Special:MyLanguage/使用自动对准料架功能|使用自动对准料架功能]] | ||
[[ | [[Special:MyLanguage/使用叉车料架堆叠功能|使用叉车料架堆叠功能]] | ||
[[纯二维码导航]] | [[Special:MyLanguage/色带和磁条导航|色带和磁条导航]] | ||
[[Special:MyLanguage/纯二维码导航|纯二维码导航]] | |||
=== 调度相关手册 === | === 调度相关手册 === | ||
[[使用手册-routing字段:设置车辆必经点(必不经点)逻辑|使用手册 - routing字段:设置车辆必经点(必不经点)逻辑]] | [[Special:MyLanguage/使用手册 - 车队管控|使用手册 - 车队管控]] | ||
[[Special:MyLanguage/使用手册-routing字段:设置车辆必经点(必不经点)逻辑|使用手册 - routing字段:设置车辆必经点(必不经点)逻辑]] | |||
[[使用手册 - Simple:从使用到开发]] | [[使用手册 - Simple:从使用到开发|使用手册 - Simple:从使用到开发]] | ||
[[使用手册 - Simple:coder(路径编译器)机制详解]] | [[使用手册 - Simple:coder(路径编译器)机制详解|使用手册 - Simple:coder(路径编译器)机制详解]] | ||
[[使用手册 - Simple:包络如何定义]] | [[使用手册 - Simple:包络如何定义|使用手册 - Simple:包络如何定义]] | ||
[[使用手册 - MDCS软件部署方法介绍]] | [[Special:MyLanguage/使用手册 - MDCS软件部署方法介绍|使用手册 - MDCS软件部署方法介绍]] | ||
[[使用手册 - Simple软件文件管理标准化作业]] | [[Special:MyLanguage/使用手册 - Simple软件文件管理标准化作业|使用手册 - Simple软件文件管理标准化作业]] | ||
[[使用手册 - MDCS适配流程说明]] | [[Special:MyLanguage/使用手册 - MDCS适配流程说明|使用手册 - MDCS适配流程说明]] | ||
[[使用手册 - MDCS适配详细说明]] | [[Special:MyLanguage/使用手册 - MDCS适配详细说明|使用手册 - MDCS适配详细说明]] | ||
[[使用手册 - Simple图层合并手册]] | [[Special:MyLanguage/使用手册 - Simple图层合并手册|使用手册 - Simple图层合并手册]] | ||
[[使用手册 - 寻路启发器功能]] | [[Special:MyLanguage/使用手册 - 寻路启发器功能|使用手册 - 寻路启发器功能]] | ||
[[使用手册 - 更多交管细节用法]] | [[Special:MyLanguage/使用手册 - 更多交管细节用法|使用手册 - 更多交管细节用法]] | ||
[[使用手册 - 劫持用法]](用于中途更改路线) | [[Special:MyLanguage/使用手册 - 劫持用法|使用手册 - 劫持用法]](用于中途更改路线) | ||
=== 二次开发相关说明 === | === 二次开发相关说明 === | ||
[[如何使用CycleGUI快速开发UI界面]] | [[Special:MyLanguage/如何适配新的雷达|如何适配新的雷达]] | ||
[[Special:MyLanguage/如何使用CycleGUI快速开发UI界面|如何使用CycleGUI快速开发UI界面]] | |||
[[如何使用LessokajiWeaver的多语言功能]] | [[Special:MyLanguage/如何使用LessokajiWeaver的多语言功能|如何使用LessokajiWeaver的多语言功能]] | ||
[[开发手册 - 轨迹跟踪]] | [[Special:MyLanguage/开发手册 - 轨迹跟踪|开发手册 - 轨迹跟踪]] | ||
[[开发手册 - 目标跟踪]] | [[Special:MyLanguage/开发手册 - 目标跟踪|开发手册 - 目标跟踪]] | ||
[[开发手册 - SimpleComposer界面开发 - CAD工具]] | [[Special:MyLanguage/开发手册 - SimpleComposer界面开发 - CAD工具|开发手册 - SimpleComposer界面开发 - CAD工具]] | ||
[[使用手册 - Medulla:相机使用方法 Camera Data Access Guide]] | [[使用手册 - Medulla:相机使用方法 Camera Data Access Guide|使用手册 - Medulla:相机使用方法 Camera Data Access Guide]] | ||
=== 杂项 === | === 杂项 === | ||
[[ | [[Special:MyLanguage/如何查看工控机性能以及功耗墙|如何查看工控机性能以及功耗墙]] | ||
[[ | [[Special:MyLanguage/使用手册 - 数据录制与回放手册|使用手册 - 数据录制与回放手册]] | ||
[[FAQ]] | [[Special:MyLanguage/index.php?title=使用手册 - Linux MDCS部署&配置=&操作说明=|使用手册 - Linux MDCS部署&配置&操作说明]] | ||
[[Special:MyLanguage/FAQ|FAQ]] | |||
Cheat sheet | Cheat sheet | ||
[[待整理的杂项内容]] | [[Special:MyLanguage/待整理的杂项内容|待整理的杂项内容]] | ||
== 技术报告 == | == 技术报告 == | ||
| 第129行: | 第139行: | ||
*** Detour地面纹理SLAM算法详解 | *** Detour地面纹理SLAM算法详解 | ||
** Simple软件架构 | ** Simple软件架构 | ||
*** [[调度内核运行原理]] | *** [[Special:MyLanguage/调度内核运行原理|调度内核运行原理]] | ||
**** 基于预先规划交管算法:[[DPS调度算法详解]] | **** 基于预先规划交管算法:[[Special:MyLanguage/DPS调度算法详解|DPS调度算法详解]] | ||
*** 基于网络流的业务规划器 | *** 基于网络流的业务规划器 | ||
* LessokajiWeaver编译后处理工具 | * LessokajiWeaver编译后处理工具 | ||
| 第136行: | 第146行: | ||
== 接口 == | == 接口 == | ||
[[Detour-API|Detour]] | [[Special:MyLanguage/Medulla-API|Medulla]] | ||
[[Special:MyLanguage/Detour-API|Detour]] | |||
[[Clumsy-API|Clumsy]] | [[Special:MyLanguage/Clumsy-API|Clumsy]] | ||
[[Simple-API|Simple]] | [[Special:MyLanguage/Simple-API|Simple]] | ||
== 术语和约定 == | == 术语和约定 == | ||
[[定位导航]] | [[Special:MyLanguage/通用约定|MDCS开发通用约定]] | ||
[[Special:MyLanguage/定位导航|定位导航]] | |||
[[MDCS参数表:Medulla]] | [[MDCS参数表:Medulla|MDCS参数表:Medulla]] | ||
[[MDCS参数表:Detour]] | [[MDCS参数表:Detour|MDCS参数表:Detour]] | ||
[[MDCS参数表:Clumsy]] | [[MDCS参数表:Clumsy|MDCS参数表:Clumsy]] | ||
[[MDCS参数表:Simple]] | [[MDCS参数表:Simple|MDCS参数表:Simple]] | ||
== 特殊技术方案 == | == 特殊技术方案 == | ||
当前MDCS的特殊技术方案包括:[[托盘识别]]、[[双车/多车联动]]、[[汽车面差检测]]、[[天眼系统]]、[[自动装卸车应用]]、[[复合卷料机械手叉车]]、[[清洁机器人]]、[[设备跟随联动]]。其它技术方案还在进一步补充中。 | |||
当前MDCS的特殊技术方案包括:[[Special:MyLanguage/托盘识别|托盘识别]]、[[Special:MyLanguage/双车/多车联动|双车/多车联动]]、[[Special:MyLanguage/汽车面差检测|汽车面差检测]]、[[Special:MyLanguage/天眼系统|天眼系统]]、[[Special:MyLanguage/自动装卸车应用|自动装卸车应用]]、[[Special:MyLanguage/复合卷料机械手叉车|复合卷料机械手叉车]]、[[Special:MyLanguage/清洁机器人|清洁机器人]]、[[Special:MyLanguage/设备跟随联动|设备跟随联动]]。其它技术方案还在进一步补充中。 | |||
== 链接 == | == 链接 == | ||
* [https://dl.lessokaji.com MDCS下载站]:MDCS的各类程序可在该站上下载 | * [https://dl.lessokaji.com MDCS下载站]:MDCS的各类程序可在该站上下载 | ||
* [https://dev.lessokaji.com 技术讨论站]:包含FAQ、需求讨论、AGV项目实施经验等技术讨论 | * [https://dev.lessokaji.com 技术讨论站]:包含FAQ、需求讨论、AGV项目实施经验等技术讨论 | ||
| 第168行: | 第182行: | ||
* 一些视频案例:链接:https://pan.baidu.com/s/1foIUJzCnpbEaNoy6ooVbJg 提取码:2of9 | * 一些视频案例:链接:https://pan.baidu.com/s/1foIUJzCnpbEaNoy6ooVbJg 提取码:2of9 | ||
__无目录__ | __无目录__ | ||
</translate> | |||
2024年6月12日 (三) 22:29的版本

MDCS是一个机器人的开发平台,包括以下组件。
- Medulla:高效的硬件通信、控制和抽象平台。
- Detour:定位系统,内置激光雷达和视觉SLAM等。
- Clumsy:机器人运动指令平台,内置AGV/AMR的典型运动能力。
- Simple:机器人集群管理系统,核心为交通控制和寻路。
- CycleGUI:回合式交互GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。
更详细地综述见:MDCS概述
基本介绍
定位系统:AGV的定位是由独立模块《Detour》完成。Detour支持激光雷达和视觉的各类SLAM算法,包括具有高鲁棒性的2D激光SLAM算法、地纹SLAM、天花板SLAM、二维码导航等,支持多定位源的自动综合。Detour可以使用Medulla提供的数据来源、也可以自行获取。整套MDCS实施时一般使用Medulla提供的数据来源。
AGV车载系统:由Medulla(硬件抽象逻辑)、Clumsy(车体运动抽象)组成并对功能定义;二者原理见车体抽象原理。Medulla+Clumsy可实现各类车体动作,最简单诸如巡线行走、绕障行走等,复杂一些的例子如自动识别工位并取放货、自动识别托盘取放货、识别料框并堆垛拆垛、联动天眼系统进行装卸车等。车载软件定义了AGV的能力集以及测试方法,并可由调度软件做动作组合从而完成整套任务。
车队调度:交管、包络、寻路等内核算法由SimpleCore提供,其原理参见内核运行原理,SimpleCore提供编程接口使得用户可对具体车型或业务场景设置包络。对调度的运行原理参见:AGV任务运行逻辑 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。
快速开始
定位
只关注定位导航功能的读者,请阅读:下载并部署Detour。若安装Detour有任何问题,可以看详细教程:安装Detour。
整车适配
对于需要做整车适配的读者,请阅读以下文章。
MDCS引擎适配机器人入门教学、叉车适配案例、潜伏顶升车(KIVA类小车)适配案例、全向车适配案例、牵引车适配案例
使用手册
通识和入门教学
定位导航相关手册
使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位
运动控制使用手册
调度相关手册
使用手册 - routing字段:设置车辆必经点(必不经点)逻辑
使用手册 - Simple:coder(路径编译器)机制详解
使用手册 - 劫持用法(用于中途更改路线)
二次开发相关说明
开发手册 - SimpleComposer界面开发 - CAD工具
使用手册 - Medulla:相机使用方法 Camera Data Access Guide
杂项
Cheat sheet
技术报告
- MDCS架构
- LessokajiWeaver编译后处理工具
- CycleGUI
接口
术语和约定
特殊技术方案
当前MDCS的特殊技术方案包括:托盘识别、双车/多车联动、汽车面差检测、天眼系统、自动装卸车应用、复合卷料机械手叉车、清洁机器人、设备跟随联动。其它技术方案还在进一步补充中。
链接
- MDCS下载站:MDCS的各类程序可在该站上下载
- 技术讨论站:包含FAQ、需求讨论、AGV项目实施经验等技术讨论
- MDCS专用Nuget源:MDCS主要使用c#进行开发,该源包括主要会用的库
- MDCS代码库:git源
- MDCS授权站:License授权、代码阅读和编译权限授权站
- 一些视频案例:链接:https://pan.baidu.com/s/1foIUJzCnpbEaNoy6ooVbJg 提取码:2of9