<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://wiki2.lessokaji.com/index.php?action=history&amp;feed=atom&amp;title=%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97</id>
	<title>插件开发指南 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://wiki2.lessokaji.com/index.php?action=history&amp;feed=atom&amp;title=%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97"/>
	<link rel="alternate" type="text/html" href="https://wiki2.lessokaji.com/index.php?title=%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97&amp;action=history"/>
	<updated>2026-05-16T16:55:40Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki2.lessokaji.com/index.php?title=%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97&amp;diff=1047&amp;oldid=prev</id>
		<title>Artheru：​Initial bilingual draft (auto-published)</title>
		<link rel="alternate" type="text/html" href="https://wiki2.lessokaji.com/index.php?title=%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97&amp;diff=1047&amp;oldid=prev"/>
		<updated>2026-05-16T14:00:49Z</updated>

		<summary type="html">&lt;p&gt;Initial bilingual draft (auto-published)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 概述 / Overview ==&lt;br /&gt;
本页是 MDCS '''插件开发'''的总入口。MDCS 把所有可扩展能力归为 5 个 ''插件家族''，每个家族对应一类 ''扩展点 + 基类 + 打包约定''。完整离线副本见 `D:\src\cookbook\HOW_TO_CUSTOMIZE.md`。&lt;br /&gt;
&lt;br /&gt;
This is the hub for MDCS '''plugin development'''. MDCS organises every extension point into 5 ''plugin families'', each with its own base class + packaging convention. Offline mirror: `D:\src\cookbook\HOW_TO_CUSTOMIZE.md`.&lt;br /&gt;
&lt;br /&gt;
== 1. 5 类插件 / The five families ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! 家族 / Family !! 宿主进程 / Host process !! 基类 / Base !! 入门页 / Tutorial&lt;br /&gt;
|-&lt;br /&gt;
| 雷达插件 / Lidar plugin || Medulla || `Lidar2DIOObject` / `Lidar3DIOObject` || [[Special:MyLanguage/如何适配新的雷达|如何适配新的雷达]] / [[Special:MyLanguage/2D激光雷达适配|2D激光雷达适配]]&lt;br /&gt;
|-&lt;br /&gt;
| 相机插件 / Camera plugin || Medulla || `IOObject`（约定 `MainIOObject` 类名）|| [[Special:MyLanguage/3D相机适配|3D相机适配]]&lt;br /&gt;
|-&lt;br /&gt;
| 底盘适配 / Cart hardware || Medulla || `CartDefinition` || [[Special:MyLanguage/MDCS引擎适配机器人入门教学|MDCS引擎适配机器人入门教学]]&lt;br /&gt;
|-&lt;br /&gt;
| Movement / 运动适配 || Clumsy || `MovementDefinition` || [[Special:MyLanguage/巡线行走|巡线行走]] / [[Special:MyLanguage/MovementDefinition详解|MovementDefinition详解]]&lt;br /&gt;
|-&lt;br /&gt;
| 车队插件 / Fleet plugin || SimpleComposer || `ClumsyCar` / `Car` / `BusinessLogic` + `[CarType]` || [[Special:MyLanguage/如何基于SimpleCore核心库进行调度系统开发|如何基于SimpleCore核心库进行调度系统开发]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
底层共通约定见以下子页：&lt;br /&gt;
Shared conventions live on these sub-pages:&lt;br /&gt;
&lt;br /&gt;
* [[Special:MyLanguage/插件契约与打包约定|插件契约与打包约定]] — `MainIOObject` 命名 + Costura + LessokajiWeaver + 部署路径&lt;br /&gt;
* [[Special:MyLanguage/IOObject属性参考|IOObject属性参考]] — `[IOObjectMonitor] / [IOObjectUtility] / [IOObjectWebUtility] / [IOObjectWatch]`&lt;br /&gt;
* [[Special:MyLanguage/CartDefinition属性参考|CartDefinition属性参考]] — `[AsInitParam] / [AsUpperIO] / [AsLowerIO] / [UseLadderLogic]`&lt;br /&gt;
* [[Special:MyLanguage/LadderLogic框架|LadderLogic框架]] — 周期循环宿主&lt;br /&gt;
* [[Special:MyLanguage/startup.iocmd脚本语法|startup.iocmd脚本语法]] — 启动脚本&lt;br /&gt;
* [[Special:MyLanguage/DObject共享内存协议|DObject共享内存协议]] — IPC&lt;br /&gt;
* [[Special:MyLanguage/MovementDefinition详解|MovementDefinition详解]] — Movement 契约&lt;br /&gt;
* [[Special:MyLanguage/SimpleAgvInterface Queue机制|SimpleAgvInterface Queue机制]] — Queue 行为&lt;br /&gt;
* [[Special:MyLanguage/TightCoupler外部反馈API|TightCoupler外部反馈API]] — 外部位姿源接入&lt;br /&gt;
* [[Special:MyLanguage/插件测试与发布|插件测试与发布]] — 测试 + 打包 + 发布&lt;br /&gt;
* [[Special:MyLanguage/插件开发清单|插件开发清单]] — Do's &amp;amp; Don'ts&lt;br /&gt;
&lt;br /&gt;
== 2. 工程脚手架 / Scaffolding ==&lt;br /&gt;
脚手架工具：`D:\src\cookbook\MDCS-plugin-helper\generate.py`（交互式 Python 脚本）。&lt;br /&gt;
Scaffolder: `D:\src\cookbook\MDCS-plugin-helper\generate.py` (interactive).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd D:\src\cookbook\MDCS-plugin-helper&lt;br /&gt;
python generate.py&lt;br /&gt;
# Choose 1 — Create a project&lt;br /&gt;
# Pick the plugin family&lt;br /&gt;
# Enter project name&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
它会下载 ''参考 DLL''（`Ref&amp;lt;Name&amp;gt;.dll` 系列）到 `ref/`，并下载对应 boilerplate `.cs` 文件。&lt;br /&gt;
It downloads the reference DLLs (`Ref&amp;lt;Name&amp;gt;.dll`) into `ref/` and a boilerplate `.cs` file.&lt;br /&gt;
&lt;br /&gt;
== 3. 车型适配案例 / Vehicle case studies ==&lt;br /&gt;
按车型分类的端到端案例：&lt;br /&gt;
End-to-end case studies by vehicle type:&lt;br /&gt;
&lt;br /&gt;
* [[Special:MyLanguage/叉车适配案例|叉车适配案例]] — 凌鸟 LB14&lt;br /&gt;
* [[Special:MyLanguage/潜伏顶升车(KIVA类小车)适配案例|潜伏顶升车(KIVA类小车)适配案例]] — 浙江迈睿 KIVA&lt;br /&gt;
* [[Special:MyLanguage/全向车适配案例|全向车适配案例]] — 麦克纳姆 + 四舵&lt;br /&gt;
* [[Special:MyLanguage/牵引车适配案例|牵引车适配案例]] — 单 / 双阿克曼&lt;br /&gt;
&lt;br /&gt;
== 4. 特殊场景 / Specialty applications ==&lt;br /&gt;
* [[Special:MyLanguage/自动识别工位并取放货|自动识别工位并取放货]]&lt;br /&gt;
* [[Special:MyLanguage/双车/多车联动|双车 / 多车联动]]&lt;br /&gt;
* [[Special:MyLanguage/联动天眼系统进行装卸车|联动天眼系统进行装卸车]]&lt;br /&gt;
* [[Special:MyLanguage/设备跟随联动|设备跟随联动]]&lt;br /&gt;
* [[Special:MyLanguage/识别料框并堆垛拆垛|识别料框并堆垛拆垛]]&lt;br /&gt;
* [[Special:MyLanguage/汽车面差检测|汽车面差检测]]&lt;br /&gt;
* [[Special:MyLanguage/清洁机器人|清洁机器人]]&lt;br /&gt;
* [[Special:MyLanguage/复合卷料机械手叉车|复合卷料机械手叉车]]&lt;br /&gt;
&lt;br /&gt;
== 5. 关联文档 / See also ==&lt;br /&gt;
* [[Special:MyLanguage/操作指南|操作指南]] — 运维者视角&lt;br /&gt;
* [[Special:MyLanguage/核心开发指南|核心开发指南]] — 平台开发者视角&lt;br /&gt;
* [[Special:MyLanguage/车体抽象原理|车体抽象原理]] — 三层模型&lt;br /&gt;
&lt;br /&gt;
[[Category:开发手册]]&lt;br /&gt;
[[Category:二次开发相关说明]]&lt;/div&gt;</summary>
		<author><name>Artheru</name></author>
	</entry>
</feed>