Add Clumsy plugins and dual-vehicle fleet sync demo.
Restructure into DiffWheel/MultiWheel folders, add DiffWheelC and MultiWheelC with MovementTests, FleetRemote multi-vehicle manual sync, deploy templates, and documentation. Update dependency paths to D:\MDCS\Release and mirror motor feedback in MotorRoutine for simulation. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"WheelConfig": {
|
||||
"LeftFront": { "Position": { "X": 525.0, "Y": 200.0 } },
|
||||
"LeftRear": { "Position": { "X": -525.0, "Y": 200.0 } },
|
||||
"RightFront": { "Position": { "X": 525.0, "Y": -200.0 } },
|
||||
"RightRear": { "Position": { "X": -525.0, "Y": -200.0 } }
|
||||
},
|
||||
"MaxSpeed": 0.3,
|
||||
"AccPerSecond": 0.3,
|
||||
"DeAccPerSecond": 0.5,
|
||||
"MinTurnSpeedFac": 0.25,
|
||||
"ControlPointRadius": 500.0,
|
||||
"GcpThetaPerSecond": 10.0,
|
||||
"MinimumTurningAngleForAckermann": 60.0
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"basicSpeed": 0.2,
|
||||
"DriveTaskInterval": 50,
|
||||
"script": "MultiWheelC.dll",
|
||||
"detourHost": "127.0.0.1",
|
||||
"detourPort": 4321,
|
||||
"msConf": {
|
||||
"MultiVehicleMasterEndpoint": "/",
|
||||
"MultiVehicleFleetNum": 2,
|
||||
"MultiVehicleSyncInterval": 50,
|
||||
"TestCarSyncDistance": 2400,
|
||||
"TestCarSyncTh": 0,
|
||||
"ManualCarSyncVxFac": 1.0,
|
||||
"ManualCarSyncVthFac": 1.0,
|
||||
"SyncThAccPerSec": 30,
|
||||
"PosAvailable": true,
|
||||
"SimpleIp": "127.0.0.1",
|
||||
"CarNum": 1
|
||||
},
|
||||
"layout": {
|
||||
"chassis": {
|
||||
"width": 1000,
|
||||
"length": 1550,
|
||||
"contour": [
|
||||
750, -500, -750, -500, -750, -300, -800, -280, -800, -220,
|
||||
-750, -200, -750, 200, -800, 220, -800, 280, -750, 300,
|
||||
-750, 500, 750, 500
|
||||
]
|
||||
},
|
||||
"components": [
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "front_lidar_1",
|
||||
"x": 700, "y": 0, "yaw": 0, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "rear_left_lidar_1",
|
||||
"x": -700, "y": 450, "yaw": 180, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "rear_right_lidar_1",
|
||||
"x": -700, "y": -450, "yaw": 180, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"port": 8008,
|
||||
"allowMultiple": true,
|
||||
"soTag": "Multi1",
|
||||
"detourHost": "127.0.0.1",
|
||||
"detourPort": 4321,
|
||||
"HideConsoleOnStart": false,
|
||||
"FollowCarOnStart": true,
|
||||
"ShowRobot3dModel": true,
|
||||
"ShowRobotArrow": true
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"basicSpeed": 0.2,
|
||||
"DriveTaskInterval": 50,
|
||||
"script": "MultiWheelC.dll",
|
||||
"detourHost": "127.0.0.1",
|
||||
"detourPort": 4421,
|
||||
"msConf": {
|
||||
"MultiVehicleMasterEndpoint": "127.0.0.1:8008",
|
||||
"MultiVehicleFleetNum": 2,
|
||||
"MultiVehicleSyncInterval": 50,
|
||||
"TestCarSyncDistance": 2400,
|
||||
"TestCarSyncTh": 0,
|
||||
"ManualCarSyncVxFac": 1.0,
|
||||
"ManualCarSyncVthFac": 1.0,
|
||||
"SyncThAccPerSec": 30,
|
||||
"PosAvailable": true,
|
||||
"SimpleIp": "127.0.0.1",
|
||||
"CarNum": 2
|
||||
},
|
||||
"layout": {
|
||||
"chassis": {
|
||||
"width": 1000,
|
||||
"length": 1550,
|
||||
"contour": [
|
||||
750, -500, -750, -500, -750, -300, -800, -280, -800, -220,
|
||||
-750, -200, -750, 200, -800, 220, -800, 280, -750, 300,
|
||||
-750, 500, 750, 500
|
||||
]
|
||||
},
|
||||
"components": [
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "front_lidar_2",
|
||||
"x": 700, "y": 0, "yaw": 0, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "rear_left_lidar_2",
|
||||
"x": -700, "y": 450, "yaw": 180, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "lidar2d",
|
||||
"options": {
|
||||
"name": "rear_right_lidar_2",
|
||||
"x": -700, "y": -450, "yaw": 180, "z": 0, "pitch": 0, "roll": 0,
|
||||
"isCircle": false, "ignoreDist": 100, "maxDist": 200000,
|
||||
"filterChassis": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"port": 8009,
|
||||
"allowMultiple": true,
|
||||
"soTag": "Multi2",
|
||||
"detourHost": "127.0.0.1",
|
||||
"detourPort": 4421,
|
||||
"HideConsoleOnStart": false,
|
||||
"FollowCarOnStart": true,
|
||||
"ShowRobot3dModel": true,
|
||||
"ShowRobotArrow": true
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"basicSpeed": 0.2,
|
||||
"DriveTaskInterval": 50,
|
||||
"script": "DiffWheelC.dll",
|
||||
"msConf": {
|
||||
"ChassisWidth": 600,
|
||||
"SimpleIp": "127.0.0.1"
|
||||
},
|
||||
"layout": {
|
||||
"chassis": {
|
||||
"width": 600,
|
||||
"length": 900,
|
||||
"contour": [-450, 300, 450, 300, 450, -300, -450, -300]
|
||||
},
|
||||
"components": []
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
@echo off
|
||||
setlocal
|
||||
cd /d "%~dp0"
|
||||
if not exist chassis.json copy /Y ..\..\deploy\chassis.json chassis.json >nul
|
||||
if not exist clumsy.json copy /Y ..\..\deploy\clumsy_agv1\clumsy.json clumsy.json >nul
|
||||
if not exist clumsyconsole.json copy /Y ..\..\deploy\clumsy_agv1\clumsyconsole.json clumsyconsole.json >nul
|
||||
echo [Clumsy AGV1] Master, tag Multi1. Start Medulla build\Medulla first.
|
||||
ClumsyLite.exe
|
||||
pause
|
||||
@@ -0,0 +1,9 @@
|
||||
@echo off
|
||||
setlocal
|
||||
cd /d "%~dp0"
|
||||
if not exist chassis.json copy /Y ..\..\deploy\chassis.json chassis.json >nul
|
||||
if not exist clumsy.json copy /Y ..\..\deploy\clumsy_agv2\clumsy.json clumsy.json >nul
|
||||
if not exist clumsyconsole.json copy /Y ..\..\deploy\clumsy_agv2\clumsyconsole.json clumsyconsole.json >nul
|
||||
echo [Clumsy AGV2] Slave, tag Multi2. Start Medulla build\Medulla_AGV2 first.
|
||||
ClumsyLite.exe
|
||||
pause
|
||||
Reference in New Issue
Block a user