Add MultiWheelS Simple scheduling plugin for fleet sync

Introduce the MultiWheelS (SimpleComposer host) plugin with the
MultiVehicleCar definition so fleet auto-sync is driven via Simple
dispatch instead of the hand-rolled AGV.FleetGo path. Simplify
MultiWheelC.AGV to BasicInterface, drop the obsolete FleetGo helper
and FleetStraightMovementTest, wire MultiWheelS into Tutorial.sln,
and update RunAndDeploy docs plus add the MultiVehicleAutoSyncReview
notes.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-28 23:12:23 +08:00
co-authored by Cursor
parent d3abf0fb02
commit d935e847ec
7 changed files with 317 additions and 47 deletions
+18 -3
View File
@@ -28,13 +28,22 @@ dotnet build Tutorial.sln
- M 插件 → `build\Medulla\plugins\`
- C 插件 → `build\Clumsy\``build\Clumsy_AGV2\`PostBuild 复制运行时)
- S 插件 → `build\Simple\plugins\`PostBuild 复制 SimpleComposer 宿主到 `build\Simple\`
MultiWheelS 为旧式 net48 项目,需用 MSBuild 单独编译:
```powershell
msbuild D:\MDCS\Source\Tutorial\MultiWheel\MultiWheelS\MultiWheelS.csproj /p:Configuration=Debug
```
或在 Visual Studio 中打开 `Tutorial.sln` 编译 `MultiWheelS` 项目。
## 3. 目录结构
```text
Tutorial/
DiffWheel/DiffWheelM/ DiffWheel/DiffWheelC/
MultiWheel/MultiWheelM/ MultiWheel/MultiWheelC/
MultiWheel/MultiWheelM/ MultiWheel/MultiWheelC/ MultiWheel/MultiWheelS/
deploy/ # 配置模板(入库)
build/ # 运行目录(gitignore
```
@@ -69,7 +78,13 @@ Tutorial/
1. 完成上一节双车启动
2. 至少一台车 `PosAvailable=true`Detour 定位有效)
3. 主车 Clumsy 触发自动联动或调度 `AGV.FleetGo(..., multiVehicleSync:true)`
3. 通过 Simple 调度触发自动联动(推荐):
- 编译 `MultiWheelS`(见第 2 节),确认 `build\Simple\plugins\MultiWheelS.dll` 存在
-`build\Simple\` 运行 `SimpleComposer.exe`(自动加载 `./plugins`
- 添加车型 **「多车联动AGV」**`MultiVehicleCar``MultiVehicleSync=true`
- 主车设置 `cport:8008`、从车 `cport:8009`(可用 `SetCPort``conf` 字段)
- 在该车上规划路径 → 编译为 `agv.BasicGo(..., multiVehicleSync:true)` → 主车 `ChassisController` 开启 `MultiVehicleAutoEnabled``PilotDefinition` 50ms 循环广播并驱动车队
4. 自动联动机制已知问题见 [MultiVehicleAutoSyncReview.md](./MultiVehicleAutoSyncReview.md)
## 7. 差速示例
@@ -85,4 +100,4 @@ Tutorial/
| `chassis.json` | 四轮舵轮几何 |
| `startup.iocmd` | `SetShareObjectTag Multi1/Multi2` |
详细算法见 [MultiVehicleSync.md](./MultiVehicleSync.md),修复清单见 [BugFixes.md](./BugFixes.md)。
详细算法见 [MultiVehicleSync.md](./MultiVehicleSync.md),修复清单见 [BugFixes.md](./BugFixes.md),自动联动机制问题分析见 [MultiVehicleAutoSyncReview.md](./MultiVehicleAutoSyncReview.md)