添加单车底盘仿真平台并完善运动控制与夹臂功能

This commit is contained in:
2026-07-27 17:47:50 +08:00
parent 580a936a83
commit e6b99c45b3
47 changed files with 4238 additions and 122 deletions
@@ -0,0 +1,10 @@
namespace MyParking.Simulation.Models;
/// <summary>
/// 网页虚拟遥控器输入,所有输入范围均为-1到1。
/// </summary>
public sealed record ManualControlInputDto(
double Throttle,
double Steering,
double SpeedScale,
double SteeringScale);
@@ -0,0 +1,26 @@
namespace MyParking.Simulation.Models;
/// <summary>
/// 离线仿真的车辆数量、车队中心和成员相对布局。
/// </summary>
public sealed record SimulationConfigurationDto(
int VehicleCount,
FleetCenterDto FleetCenter,
IReadOnlyList<VehicleLayoutDto> Vehicles);
/// <summary>
/// 车队中心在世界坐标系中的位姿。
/// </summary>
public sealed record FleetCenterDto(
double XMeters,
double YMeters,
double YawRadians);
/// <summary>
/// 单车车体坐标系在车队中心坐标系中的位姿。
/// </summary>
public sealed record VehicleLayoutDto(
int VehicleId,
double XMeters,
double YMeters,
double YawRadians);
+25
View File
@@ -0,0 +1,25 @@
namespace MyParking.Simulation.Models;
/// <summary>
/// 网页绘制单辆停车机器人所需的状态快照。
/// </summary>
public sealed record VehicleStateDto(
int VehicleId,
double XMeters,
double YMeters,
double YawRadians,
double BodyLengthMeters,
double BodyWidthMeters,
string Mode,
bool ModeReady,
TwistStateDto TargetBodyTwist,
TwistStateDto ActualBodyTwist,
IReadOnlyList<WheelStateDto> Wheels);
/// <summary>
/// 网页显示的二维车体速度快照。
/// </summary>
public sealed record TwistStateDto(
double VxMetersPerSecond,
double VyMetersPerSecond,
double OmegaRadiansPerSecond);
+14
View File
@@ -0,0 +1,14 @@
namespace MyParking.Simulation.Models;
/// <summary>
/// 网页绘制单个舵轮所需的状态快照。
/// </summary>
public sealed record WheelStateDto(
string Name,
double XMeters,
double YMeters,
double TargetAngleDegrees,
double ActualAngleDegrees,
double TargetSpeedMetersPerSecond,
double ActualSpeedMetersPerSecond,
bool IsAligned);