首页:修订间差异

来自MDCS wiki
跳到导航 跳到搜索
 
(未显示2个用户的15个中间版本)
第1行: 第1行:
<languages/>
<languages/><translate>
[[文件:MDCS-2023.png|缩略图|159x159像素|MDCS logo 2023]]
<translate>
<!--T:1-->
<!--T:1-->
MDCS是一个机器人的开发平台,包括以下组件。
MDCS是上海懒书智能科技开发的机器人软件构建框架,包括以下组件。
</translate>
</translate>
<translate>
<translate>
第11行: 第9行:
* Clumsy:机器人运动指令平台,内置AGV/AMR的典型运动能力。
* Clumsy:机器人运动指令平台,内置AGV/AMR的典型运动能力。
* Simple:机器人集群管理系统,核心为交通控制和寻路。
* Simple:机器人集群管理系统,核心为交通控制和寻路。
* CycleGUI:回合式交互GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。
* CycleGUI:针对算法内核交互的回合式GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。此外还支持''裸眼3D显示''
* DIVER(Dotnet Integrated Vehicle Runtime): 是一个专门用于载具控制系统的.NET运行环境,可将C#程序开发的Medulla下位硬件控制程序无痛地运行在MCU中。
* DIVER(Dotnet Integrated Vehicle Runtime): 是一个专门用于载具控制系统的.NET运行环境,可将C#程序开发的Medulla下位硬件控制程序无痛地运行在MCU中。


第24行: 第22行:


'''车队调度''':交管、寻路、包络、可达性分析等内核算法由SimpleCore提供,其原理参见[[特殊:我的语言/调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景编程声明寻路规则、运行脚本、包络、可达性需求等。对调度的运行原理参见:[[特殊:我的语言/AGV任务运行逻辑|AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。
'''车队调度''':交管、寻路、包络、可达性分析等内核算法由SimpleCore提供,其原理参见[[特殊:我的语言/调度内核运行原理|内核运行原理]],SimpleCore提供编程接口使得用户可对具体车型或业务场景编程声明寻路规则、运行脚本、包络、可达性需求等。对调度的运行原理参见:[[特殊:我的语言/AGV任务运行逻辑|AGV任务运行逻辑]] 。MDCS提供一个简单的壳层称为SimpleComposer,其提供UI和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。
'''周围系统''':CycleGUI可用于3D显示和远程界面显示,可快速开发诸如3D标注程序、[[全息座舱]]等应用;DIVER可用于基于MCU低成本快速地开发四向穿梭车、磁导航车、编舞机器人等。V-helper是一套MDC(车载程序)的远程监控和运维程序,可监控MDC程序的堆栈、检查DObject/Hedingben变量内容等。


== 快速开始 ==
== 快速开始 ==
第30行: 第30行:


如果您有Detour使用经验,请阅读 [[特殊:我的语言/下载并部署Detour|下载并部署Detour]] 快速开始。如果您首次使用Detour,请阅读详细教程:首先是 [[特殊:我的语言/安装Detour|安装Detour]] ,然后 [[标定激光雷达外参]] ,然后 [[激光SLAM建图]] ,用于优化地图的 [[激光地图编辑指南]] ,最后 使用激光SLAM功能 。
如果您有Detour使用经验,请阅读 [[特殊:我的语言/下载并部署Detour|下载并部署Detour]] 快速开始。如果您首次使用Detour,请阅读详细教程:首先是 [[特殊:我的语言/安装Detour|安装Detour]] ,然后 [[标定激光雷达外参]] ,然后 [[激光SLAM建图]] ,用于优化地图的 [[激光地图编辑指南]] ,最后 使用激光SLAM功能 。
在激光不友好的场景,我们可以使用地纹SLAM。请阅读[[地纹SLAM技术概述]]来了解这个特性。


'''整车适配'''
'''整车适配'''
第36行: 第38行:


[[特殊:我的语言/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]、[[特殊:我的语言/叉车适配案例|叉车(牵引车)适配案例]]、[[特殊:我的语言/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]]、[[特殊:我的语言/全向车适配案例|全向车适配案例]]、[[特殊:我的语言/牵引车适配案例|双阿克曼车型适配案例]]
[[特殊:我的语言/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]、[[特殊:我的语言/叉车适配案例|叉车(牵引车)适配案例]]、[[特殊:我的语言/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]]、[[特殊:我的语言/全向车适配案例|全向车适配案例]]、[[特殊:我的语言/牵引车适配案例|双阿克曼车型适配案例]]
传感器适配
[[2D激光雷达适配]]、[[3D相机适配]](全局曝光、alt/azi固定的、像素化的3D雷达也算此类)、[[3D激光雷达适配]]、


== 使用手册 ==
== 使用手册 ==
第41行: 第47行:
=== 通识和入门教学 ===
=== 通识和入门教学 ===


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


[[Detour简介]]
[[Detour简介]]
第48行: 第54行:


[[特殊:我的语言/激光SLAM的能力边界|激光SLAM的能力边界]]
[[特殊:我的语言/激光SLAM的能力边界|激光SLAM的能力边界]]
[[非标车型使用手册]]


=== 定位导航相关手册 ===
=== 定位导航相关手册 ===
第74行: 第82行:


[[激光雷达选型测试报告]]
[[激光雷达选型测试报告]]
[[输入GPS外部定位]]
[[DetourLite检查表]]


=== 运动控制使用手册 ===
=== 运动控制使用手册 ===
第150行: 第162行:


[[特殊:我的语言/待整理的杂项内容|待整理的杂项内容]]
[[特殊:我的语言/待整理的杂项内容|待整理的杂项内容]]
[[FundamentalLib使用说明]]


== 技术报告 ==
== 技术报告 ==
第193行: 第207行:


当前MDCS的特殊技术方案包括:[[特殊:我的语言/托盘识别|托盘识别]]、[[特殊:我的语言/双车/多车联动|双车/多车联动]]、[[特殊:我的语言/汽车面差检测|汽车面差检测]]、[[特殊:我的语言/天眼系统|天眼系统]]、[[特殊:我的语言/自动装卸车应用|自动装卸车应用]]、[[特殊:我的语言/复合卷料机械手叉车|复合卷料机械手叉车]]、[[特殊:我的语言/清洁机器人|清洁机器人]]、[[特殊:我的语言/设备跟随联动|设备跟随联动]]。其它技术方案还在进一步补充中。
当前MDCS的特殊技术方案包括:[[特殊:我的语言/托盘识别|托盘识别]]、[[特殊:我的语言/双车/多车联动|双车/多车联动]]、[[特殊:我的语言/汽车面差检测|汽车面差检测]]、[[特殊:我的语言/天眼系统|天眼系统]]、[[特殊:我的语言/自动装卸车应用|自动装卸车应用]]、[[特殊:我的语言/复合卷料机械手叉车|复合卷料机械手叉车]]、[[特殊:我的语言/清洁机器人|清洁机器人]]、[[特殊:我的语言/设备跟随联动|设备跟随联动]]。其它技术方案还在进一步补充中。
[[文件:Drliuwechat.png|缩略图|100x100像素|微信联系方式]]


== 链接 ==
== 链接 ==


* [https://dl.lessokaji.com MDCS下载站]:MDCS的各类程序可在该站上下载
*[https://dl.lessokaji.com MDCS下载站]:MDCS的各类程序可在该站上下载
* [https://dev.lessokaji.com 技术讨论站]:包含FAQ、需求讨论、AGV项目实施经验等技术讨论
* [https://dev.lessokaji.com 技术讨论站]:包含FAQ、需求讨论、AGV项目实施经验等技术讨论
* [https://nuget.lessokaji.com MDCS专用Nuget源]:MDCS主要使用c#进行开发,该源包括主要会用的库
* [https://git.lessokaji.com MDCS代码库]:git源
* [https://git.lessokaji.com MDCS代码库]:git源
* [https://auth.lessokaji.com MDCS授权站]:License授权、代码阅读和编译权限授权站
* [https://auth.lessokaji.com MDCS授权站]:License授权、代码阅读和编译权限授权站
* 一些视频案例:链接:https://pan.baidu.com/s/1foIUJzCnpbEaNoy6ooVbJg 提取码:2of9
* 视频案例链接: <nowiki>https://pan.baidu.com/s/19c0XIZGZGJJGGyVdS-5mQA?pwd=1234</nowiki> 提取码: 1234
 
__无目录__
__无目录__

2025年10月11日 (六) 19:35的最新版本

MDCS是上海懒书智能科技开发的机器人软件构建框架,包括以下组件。

  • Medulla:高效的硬件通信、控制和抽象平台。
  • Detour:定位系统,内置激光雷达和视觉SLAM等。
  • Clumsy:机器人运动指令平台,内置AGV/AMR的典型运动能力。
  • Simple:机器人集群管理系统,核心为交通控制和寻路。
  • CycleGUI:针对算法内核交互的回合式GUI框架,可在任何算法中随时提交协程由CycleGUI托管界面,协程仅在需要刷新界面时调用,效率很高。此外还支持裸眼3D显示
  • DIVER(Dotnet Integrated Vehicle Runtime): 是一个专门用于载具控制系统的.NET运行环境,可将C#程序开发的Medulla下位硬件控制程序无痛地运行在MCU中。

更详细地综述见:MDCS-Walkthrough 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和基础的车辆通信定义,在此之上还支持插件进一步定义车辆具体细节和业务逻辑。

周围系统:CycleGUI可用于3D显示和远程界面显示,可快速开发诸如3D标注程序、全息座舱等应用;DIVER可用于基于MCU低成本快速地开发四向穿梭车、磁导航车、编舞机器人等。V-helper是一套MDC(车载程序)的远程监控和运维程序,可监控MDC程序的堆栈、检查DObject/Hedingben变量内容等。

快速开始

定位

如果您有Detour使用经验,请阅读 下载并部署Detour 快速开始。如果您首次使用Detour,请阅读详细教程:首先是 安装Detour ,然后 标定激光雷达外参 ,然后 激光SLAM建图 ,用于优化地图的 激光地图编辑指南 ,最后 使用激光SLAM功能 。

在激光不友好的场景,我们可以使用地纹SLAM。请阅读地纹SLAM技术概述来了解这个特性。

整车适配

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

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

传感器适配

2D激光雷达适配3D相机适配(全局曝光、alt/azi固定的、像素化的3D雷达也算此类)、3D激光雷达适配

使用手册

通识和入门教学

MDCS-Walkthrough

Detour简介

使用手册 - MDCS简介

激光SLAM的能力边界

非标车型使用手册

定位导航相关手册

使用手册 - 定位导航

使用手册 - 激光SLAM建图

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

使用手册 - 分析定位问题

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

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

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

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

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

标定激光雷达外参

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

激光雷达选型测试报告

输入GPS外部定位

DetourLite检查表

运动控制使用手册

使用叉车自动取托盘功能

使用自动对准料架功能

使用叉车料架堆叠功能

色带和磁条导航

纯二维码导航

调度相关手册

使用手册 - 车队管控

使用手册 - 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版本发布记录

待整理的杂项内容

FundamentalLib使用说明

技术报告

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

接口

Medulla

Detour

Clumsy

Simple

术语和约定

MDCS开发通用约定

定位导航

MDCS参数表:Medulla

MDCS参数表:Detour

MDCS参数表:Clumsy

MDCS参数表:Simple

特殊技术方案

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

微信联系方式

链接

  • MDCS下载站:MDCS的各类程序可在该站上下载
  • 技术讨论站:包含FAQ、需求讨论、AGV项目实施经验等技术讨论
  • MDCS代码库:git源
  • MDCS授权站:License授权、代码阅读和编译权限授权站
  • 视频案例链接: https://pan.baidu.com/s/19c0XIZGZGJJGGyVdS-5mQA?pwd=1234 提取码: 1234