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
+2 -23
View File
@@ -1,30 +1,9 @@
using System;
using MDCSToolBox.Clumsy.AgvInterfaces;
using MDCSToolBox.Clumsy.MotionControllers;
namespace MultiWheelC;
public class AGV : MultiWheelInterface
public class AGV : BasicInterface
{
public override AbstractGeometricController GetController()
{
return new ChassisController().Get();
}
public override MultiWheelMagTracker GetMagController()
{
throw new NotImplementedException("Tutorial MultiWheelC does not implement magnetic tracking.");
}
public override NaiveMagnetController GetNaiveMagnetController()
{
throw new NotImplementedException("Tutorial MultiWheelC does not implement naive magnetic tracking.");
}
public void FleetGo(float srcX, float srcY, int srcId, float dstX, float dstY, int dstId, int trackId,
float speed = -1, bool reverse = false, float carDirectionBias = 0)
{
BasicGo(srcX, srcY, srcId, dstX, dstY, dstId, trackId, speed, reverse, carDirectionBias,
multiVehicleSync: true);
}
public override AbstractGeometricController GetController() => new ChassisController().Get();
}