Files
ParkingRobot/docs/记录.txt
T

65 lines
2.3 KiB
Plaintext

编译命令:
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-and-package.ps1
1. TrajectoryPoint.cs 已完成
2. Trajectory2D.cs 下一步
3. TrajectoryProjection.cs 定义一次投影结果
4. TrajectoryProjector.cs 实现连续线段投影
5. TrajectoryBuilder.cs 原始离散点转标准轨迹
1. VehicleState.cs
2. FirstOrderLowPassFilter.cs
3. VelocityEstimator2D.cs
4. IVehicleStateProvider.cs
5. DetourVehicleStateProvider.cs
private const double LinearVelocityFilterTimeConstantSeconds =
0.15;
private const double AngularVelocityFilterTimeConstantSeconds =
0.20;
PathTrackingContext.cs
LateralControlCommand.cs
ILateralController.cs
ILongitudinalController.cs
GcpMotionCommand.cs
AckermannGcpAllocator.cs
StanleyLateralController.cs
PidLongitudinalController.cs
GcpCommandExecutor.cs
ParkingGeometricController.cs
轨迹投影没有进度连续性
[TrajectoryProjector.cs (line 33)](/D:/Users/Desktop/入职培训/停车机器人/MyParking/MultiWheelC/Trajectory/TrajectoryProjector.cs:33) 每个控制周期都会遍历整条轨迹并选择全局最近线段。
当前4 m直线、圆弧、普通 S 曲线一般没有问题;但以后遇到自交、回环、相邻平行路径或 Detour 跳变时,投影可能突然跳到另一段轨迹。
建议在开始复杂曲线测试前增加:
上一次投影线段索引
有限前向搜索窗口
少量允许回退范围
现阶段测试直线不需要马上改。
通用轨迹动作没有起点航向保护
当前直线测试以实时 Detour 位姿作为起点,因此起点位置和航向天然匹配,没有问题。
但 [TrajectoryTrackingMovement.cs (line 119)](/D:/Users/Desktop/入职培训/停车机器人/MyParking/MultiWheelC/Movements/TrajectoryTrackingMovement.cs:119) 本身允许传入任意世界坐标轨迹。如果将来传入的轨迹起点航向和车辆实际航向差别很大,车辆会直接边走边纠正。
后续至少应选择一种:
规划层保证起点位姿和实际车辆一致;
控制器检查初始航向误差,超限则拒绝启动;
增加起步航向对齐状态。
第一阶段建议采用第二种,简单、安全。
把前后GCP转角分解成两个模态:
共同转角 = (前GCP转角 + 后GCP转角) / 2
差动转角 = (前GCP转角 - 后GCP转角) / 2