首页/en:修订间差异

来自MDCS wiki
跳到导航 跳到搜索
(更新以匹配源页面内容的新版本)
无编辑摘要
 
第6行: 第6行:
* Clumsy:Robot skills platform, easy to extend, embedded with often-used classical motion skills.
* Clumsy:Robot skills platform, easy to extend, embedded with often-used classical motion skills.
* Simple:Robot fleet management, compile skills for task. Have a good traffic control algorithm and easy to extend path-finding algorithm.
* Simple:Robot fleet management, compile skills for task. Have a good traffic control algorithm and easy to extend path-finding algorithm.
* CycleGUI:A GUI framework to "cast" simplistic UI or visual objects anywhere/anytime in the code.
* CycleGUI:A GUI framework targeting algorithm core debugging and info-displaying that "cast" simplistic UI or visual objects anywhere/anytime in the code.
* DIVER(Dotnet Integrated Vehicle Runtime): A minimal dotnet runtime aiming at vehicle control with MCU.


More comprehensive introduction refers to: [[特殊:我的语言/MDCS概述|MDCS概述]]
More comprehensive introduction refers to: [[特殊:我的语言/MDCS概述|MDCS概述]]
第15行: 第16行:
'''AGV车载系统''':由Medulla(硬件抽象逻辑)、Clumsy(车体运动抽象)组成并对功能定义;二者原理见[[特殊:我的语言/车体抽象原理|车体抽象原理]]。Medulla+Clumsy可实现各类车体动作,最简单诸如[[特殊:我的语言/巡线行走|巡线行走]]、[[特殊:我的语言/绕障行走|绕障行走]]等,复杂一些的例子如[[特殊:我的语言/自动识别工位并取放货|自动识别工位并取放货]]、[[特殊:我的语言/自动识别托盘取放货|自动识别托盘取放货]]、[[特殊:我的语言/识别料框并堆垛拆垛|识别料框并堆垛拆垛]]、[[特殊:我的语言/联动天眼系统进行装卸车|联动天眼系统进行装卸车]]等。车载软件定义了AGV的能力集以及测试方法,并可由调度软件做动作组合从而完成整套任务。
'''AGV车载系统''':由Medulla(硬件抽象逻辑)、Clumsy(车体运动抽象)组成并对功能定义;二者原理见[[特殊:我的语言/车体抽象原理|车体抽象原理]]。Medulla+Clumsy可实现各类车体动作,最简单诸如[[特殊:我的语言/巡线行走|巡线行走]]、[[特殊:我的语言/绕障行走|绕障行走]]等,复杂一些的例子如[[特殊:我的语言/自动识别工位并取放货|自动识别工位并取放货]]、[[特殊:我的语言/自动识别托盘取放货|自动识别托盘取放货]]、[[特殊:我的语言/识别料框并堆垛拆垛|识别料框并堆垛拆垛]]、[[特殊:我的语言/联动天眼系统进行装卸车|联动天眼系统进行装卸车]]等。车载软件定义了AGV的能力集以及测试方法,并可由调度软件做动作组合从而完成整套任务。


'''车队调度''':交管、包络、寻路等内核算法由SimpleCore提供,其原理参见[[特殊:我的语言/调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景设置包络。对调度的运行原理参见:[[特殊:我的语言/AGV任务运行逻辑|AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。
'''车队调度''':交管、寻路、包络、可达性分析等内核算法由SimpleCore提供,其原理参见[[特殊:我的语言/调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景编程声明寻路规则、运行脚本、包络、可达性需求等。对调度的运行原理参见:[[特殊:我的语言/AGV任务运行逻辑|AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。


== 快速开始 ==
== 快速开始 ==
第21行: 第22行:
'''定位'''
'''定位'''


只关注定位导航功能的读者,请阅读:[[特殊:我的语言/下载并部署Detour|下载并部署Detour]]。若安装Detour有任何问题,可以看详细教程:[[特殊:我的语言/安装Detour|安装Detour]]。
如果您有Detour使用经验,请阅读 [[特殊:我的语言/下载并部署Detour|下载并部署Detour]] 快速开始。如果您首次使用Detour,请阅读详细教程:首先是 [[特殊:我的语言/安装Detour|安装Detour]] ,然后 [[标定激光雷达外参]] ,然后 [[激光SLAM建图]] ,用于优化地图的 [[激光地图编辑指南]] ,最后 使用激光SLAM功能


'''整车适配'''
'''整车适配'''
第27行: 第28行:
对于需要做整车适配的读者,请阅读以下文章。
对于需要做整车适配的读者,请阅读以下文章。


[[特殊:我的语言/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]、[[特殊:我的语言/叉车适配案例|叉车适配案例]]、[[特殊:我的语言/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]]、[[特殊:我的语言/全向车适配案例|全向车适配案例]]、[[特殊:我的语言/牵引车适配案例|牵引车适配案例]]
[[特殊:我的语言/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]、[[特殊:我的语言/叉车适配案例|叉车(牵引车)适配案例]]、[[特殊:我的语言/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]]、[[特殊:我的语言/全向车适配案例|全向车适配案例]]、[[特殊:我的语言/牵引车适配案例|双阿克曼车型适配案例]]


== 使用手册 ==
== 使用手册 ==
第34行: 第35行:


[[特殊:我的语言/MDCS-Walkthrough|MDCS-Walkthrough]]
[[特殊:我的语言/MDCS-Walkthrough|MDCS-Walkthrough]]
[[Detour简介]]


[[特殊:我的语言/使用手册 - MDCS简介|使用手册 - MDCS简介]]
[[特殊:我的语言/使用手册 - MDCS简介|使用手册 - MDCS简介]]
第42行: 第45行:


[[特殊:我的语言/使用手册 - 定位导航|使用手册 - 定位导航]]
[[特殊:我的语言/使用手册 - 定位导航|使用手册 - 定位导航]]
[[激光SLAM建图|使用手册 - 激光SLAM建图]]


[[特殊:我的语言/使用手册 - 激光SLAM+反光板建图手册|使用手册 - 激光SLAM+反光板建图手册]]
[[特殊:我的语言/使用手册 - 激光SLAM+反光板建图手册|使用手册 - 激光SLAM+反光板建图手册]]
第55行: 第60行:
[[特殊:我的语言/使用手册 - 在地纹导航中使用二维码快速找回定位|使用手册 - 在地纹导航中使用二维码快速找回定位]]
[[特殊:我的语言/使用手册 - 在地纹导航中使用二维码快速找回定位|使用手册 - 在地纹导航中使用二维码快速找回定位]]


[[特殊:我的语言/使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位|使用手册 - 同时使用激光、地温、二维码、轮编里程计和IMU进行鲁棒定位]]
[[特殊:我的语言/使用手册 - 同时使用激光、地纹、二维码、轮编里程计和IMU进行鲁棒定位|使用手册 - 同时使用激光、地纹、二维码、轮编里程计和IMU进行鲁棒定位]]


[[特殊:我的语言/标定激光雷达外参|标定激光雷达外参]]
[[特殊:我的语言/标定激光雷达外参|标定激光雷达外参]]
[[使用手册 - 如何在核显工控机上运行地纹导航]]
[[激光雷达选型测试报告]]


=== 运动控制使用手册 ===
=== 运动控制使用手册 ===
第98行: 第107行:


[[特殊:我的语言/使用手册 - 劫持用法|使用手册 - 劫持用法]](用于中途更改路线)
[[特殊:我的语言/使用手册 - 劫持用法|使用手册 - 劫持用法]](用于中途更改路线)
[[可达性状态编程|使用手册 - 可达性状态编程(用于如驶入式巷道叉车避免前车放货后影响后车运行等场景)]]


=== 二次开发相关说明 ===
=== 二次开发相关说明 ===
第114行: 第125行:


[[使用手册 - Medulla:相机使用方法 Camera Data Access Guide]]
[[使用手册 - Medulla:相机使用方法 Camera Data Access Guide]]
[[如何基于SimpleCore核心库进行调度系统开发]]


=== 杂项 ===
=== 杂项 ===
第121行: 第134行:
[[特殊:我的语言/使用手册 - 数据录制与回放手册|使用手册 - 数据录制与回放手册]]
[[特殊:我的语言/使用手册 - 数据录制与回放手册|使用手册 - 数据录制与回放手册]]


[[Special:MyLanguage/index.php?title=使用手册 - Linux MDCS部署&配置=&操作说明=|使用手册 - Linux MDCS部署&配置&操作说明]]
[[使用手册 - Linux MDCS部署配置和操作说明]]


[[特殊:我的语言/FAQ|FAQ]]
[[特殊:我的语言/FAQ|FAQ]]


Cheat sheet
Cheat sheet
[[Detour版本发布记录]]


[[特殊:我的语言/待整理的杂项内容|待整理的杂项内容]]
[[特殊:我的语言/待整理的杂项内容|待整理的杂项内容]]
第139行: 第154行:
*** [[特殊:我的语言/调度内核运行原理|调度内核运行原理]]
*** [[特殊:我的语言/调度内核运行原理|调度内核运行原理]]
**** 基于预先规划交管算法:[[特殊:我的语言/DPS调度算法详解|DPS调度算法详解]]
**** 基于预先规划交管算法:[[特殊:我的语言/DPS调度算法详解|DPS调度算法详解]]
**** 流场规划
*** 基于网络流的业务规划器
*** 基于网络流的业务规划器
* LessokajiWeaver编译后处理工具
* LessokajiWeaver编译后处理工具

2024年10月25日 (五) 03:18的最新版本

MDCS logo 2023

MDCS is a comprehensive robot developing platform, consists of following components:

  • Medulla:Provide efficient messaging, user-defined hardware abstraction.
  • Detour:Positioning system including Lidar SLAM, Visual SLAM, and there coupling.
  • Clumsy:Robot skills platform, easy to extend, embedded with often-used classical motion skills.
  • Simple:Robot fleet management, compile skills for task. Have a good traffic control algorithm and easy to extend path-finding algorithm.
  • CycleGUI:A GUI framework targeting algorithm core debugging and info-displaying that "cast" simplistic UI or visual objects anywhere/anytime in the code.
  • DIVER(Dotnet Integrated Vehicle Runtime): A minimal dotnet runtime aiming at vehicle control with MCU.

More comprehensive introduction refers to: 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,请阅读详细教程:首先是 安装Detour ,然后 标定激光雷达外参 ,然后 激光SLAM建图 ,用于优化地图的 激光地图编辑指南 ,最后 使用激光SLAM功能 。

整车适配

对于需要做整车适配的读者,请阅读以下文章。

MDCS引擎适配机器人入门教学叉车(牵引车)适配案例潜伏顶升车(KIVA类小车)适配案例全向车适配案例双阿克曼车型适配案例

使用手册

通识和入门教学

MDCS-Walkthrough

Detour简介

使用手册 - MDCS简介

激光SLAM的能力边界

定位导航相关手册

使用手册 - 定位导航

使用手册 - 激光SLAM建图

使用手册 - 激光SLAM+反光板建图手册

使用手册 - 分析定位问题

使用手册 - 激光+纹理导航

使用手册 - Detour车体编辑器使用教学

使用手册 - 双雷达标定手册 / 标定双激光雷达外参

使用手册 - 在地纹导航中使用二维码快速找回定位

使用手册 - 同时使用激光、地纹、二维码、轮编里程计和IMU进行鲁棒定位

标定激光雷达外参

使用手册 - 如何在核显工控机上运行地纹导航

激光雷达选型测试报告

运动控制使用手册

使用叉车自动取托盘功能

使用自动对准料架功能

使用叉车料架堆叠功能

色带和磁条导航

纯二维码导航

调度相关手册

使用手册 - 车队管控

使用手册 - routing字段:设置车辆必经点(必不经点)逻辑

使用手册 - Simple:从使用到开发

使用手册 - Simple:coder(路径编译器)机制详解

使用手册 - Simple:包络如何定义

使用手册 - MDCS软件部署方法介绍

使用手册 - Simple软件文件管理标准化作业

使用手册 - MDCS适配流程说明

使用手册 - MDCS适配详细说明

使用手册 - Simple图层合并手册

使用手册 - 寻路启发器功能

使用手册 - 更多交管细节用法

使用手册 - 劫持用法(用于中途更改路线)

使用手册 - 可达性状态编程(用于如驶入式巷道叉车避免前车放货后影响后车运行等场景)

二次开发相关说明

如何适配新的雷达

如何使用CycleGUI快速开发UI界面

如何使用LessokajiWeaver的多语言功能

开发手册 - 轨迹跟踪

开发手册 - 目标跟踪

开发手册 - SimpleComposer界面开发 - CAD工具

使用手册 - Medulla:相机使用方法 Camera Data Access Guide

如何基于SimpleCore核心库进行调度系统开发

杂项

如何查看工控机性能以及功耗墙

使用手册 - 数据录制与回放手册

使用手册 - Linux MDCS部署配置和操作说明

FAQ

Cheat sheet

Detour版本发布记录

待整理的杂项内容

技术报告

  • MDCS架构
    • Medulla软件架构
    • Detour软件架构
      • Detour激光SLAM算法详解
      • Detour地面纹理SLAM算法详解
    • Simple软件架构
  • LessokajiWeaver编译后处理工具
  • CycleGUI

接口

Medulla

Detour

Clumsy

Simple

术语和约定

MDCS开发通用约定

定位导航

MDCS参数表:Medulla

MDCS参数表:Detour

MDCS参数表:Clumsy

MDCS参数表:Simple

特殊技术方案

当前MDCS的特殊技术方案包括:托盘识别双车/多车联动汽车面差检测天眼系统自动装卸车应用复合卷料机械手叉车清洁机器人设备跟随联动。其它技术方案还在进一步补充中。

链接