docs: define complete trajectory velocity fields
This commit is contained in:
@@ -12,7 +12,7 @@
|
|||||||
- 在换向点和任务终点精确停车;
|
- 在换向点和任务终点精确停车;
|
||||||
- 支持固定周期滚动重规划、上一轨迹拼接和安全停车尾段;
|
- 支持固定周期滚动重规划、上一轨迹拼接和安全停车尾段;
|
||||||
- 通过可配置参数、可关闭调试旁路、明确状态和独立复核保证模块可标定、可诊断;
|
- 通过可配置参数、可关闭调试旁路、明确状态和独立复核保证模块可标定、可诊断;
|
||||||
- 输出包含 `x、y、yaw、vx、vy、t、k` 的不可变轨迹。
|
- 输出包含 `x、y、yaw、signedLongitudinalVelocity、speed、vx、vy、yawRate、t、k` 的不可变轨迹。
|
||||||
|
|
||||||
第一版车辆模型仅支持普通非完整运动的前进和倒车。蟹行、横移和原地旋转不进入该模型。
|
第一版车辆模型仅支持普通非完整运动的前进和倒车。蟹行、横移和原地旋转不进入该模型。
|
||||||
|
|
||||||
@@ -140,26 +140,28 @@ EmPlanningResult EmPlanningService.Plan(
|
|||||||
|
|
||||||
### 4.3 轨迹点
|
### 4.3 轨迹点
|
||||||
|
|
||||||
公开轨迹点至少包含:
|
公开轨迹点包含:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
X m,世界坐标
|
X m,世界坐标
|
||||||
Y m,世界坐标
|
Y m,世界坐标
|
||||||
Yaw rad,车辆车头世界航向
|
Yaw rad,车辆车头世界航向
|
||||||
|
SignedLongitudinalVelocity m/s,车体纵向带符号速度,前进为正、倒车为负
|
||||||
|
Speed m/s,无符号合成速率,始终非负
|
||||||
VelocityX m/s,世界坐标速度分量
|
VelocityX m/s,世界坐标速度分量
|
||||||
VelocityY m/s,世界坐标速度分量
|
VelocityY m/s,世界坐标速度分量
|
||||||
|
YawRate rad/s,车辆航向角速度,逆时针为正
|
||||||
TimeFromStart s,从本条轨迹生效时刻起
|
TimeFromStart s,从本条轨迹生效时刻起
|
||||||
VehicleCurvature 1/m,最终公开字段 k
|
VehicleCurvature 1/m,最终公开字段 k
|
||||||
```
|
```
|
||||||
|
|
||||||
为保证执行、诊断和后续扩展,内部契约同时保留:
|
为保证诊断和后续扩展,内部契约另外保留:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
SegmentIndex
|
SegmentIndex
|
||||||
SegmentLocalS
|
SegmentLocalS
|
||||||
PathS
|
PathS
|
||||||
Direction
|
Direction
|
||||||
SignedLongitudinalVelocity
|
|
||||||
LongitudinalAcceleration
|
LongitudinalAcceleration
|
||||||
LongitudinalJerk
|
LongitudinalJerk
|
||||||
GeometricCurvature
|
GeometricCurvature
|
||||||
@@ -167,6 +169,18 @@ VehicleCurvatureDerivative
|
|||||||
BoundaryType
|
BoundaryType
|
||||||
```
|
```
|
||||||
|
|
||||||
|
上述公开速度字段允许冗余,但只有一套权威关系:
|
||||||
|
|
||||||
|
```text
|
||||||
|
signedV = SignedLongitudinalVelocity
|
||||||
|
speed = abs(signedV)
|
||||||
|
vx = signedV*cos(Yaw)
|
||||||
|
vy = signedV*sin(Yaw)
|
||||||
|
yawRate = signedV*VehicleCurvature
|
||||||
|
```
|
||||||
|
|
||||||
|
`SignedLongitudinalVelocity` 是 ST 结果结合方向段得到的权威速度标量。`Speed`、`VelocityX`、`VelocityY` 和 `YawRate` 均由它生成,不允许调用者分别赋值。独立验证器必须复核这些等式;任一字段超过数值容差即返回 `ValidationFailed`,不得发布自相矛盾的轨迹。
|
||||||
|
|
||||||
每次 EM 结果只覆盖当前一个方向段,因此其中的 `SegmentLocalS` 与 `PathS` 都从本次结果起点开始严格递增;全局任务进度必须与 `SegmentIndex` 组合使用,不能仅靠单个 S 值定位换向前后的状态。
|
每次 EM 结果只覆盖当前一个方向段,因此其中的 `SegmentLocalS` 与 `PathS` 都从本次结果起点开始严格递增;全局任务进度必须与 `SegmentIndex` 组合使用,不能仅靠单个 S 值定位换向前后的状态。
|
||||||
|
|
||||||
`TimeFromStart` 从零开始且严格递增。`EmPlanningResult` 另行保存 `GeneratedAtUtc`、`EffectiveAtUtc` 和输入状态时间戳。
|
`TimeFromStart` 从零开始且严格递增。`EmPlanningResult` 另行保存 `GeneratedAtUtc`、`EffectiveAtUtc` 和输入状态时间戳。
|
||||||
@@ -970,6 +984,7 @@ Contracts + Configuration
|
|||||||
- 倒车时 `l>0` 位于运动方向左侧;
|
- 倒车时 `l>0` 位于运动方向左侧;
|
||||||
- `±π` 附近连续展开;
|
- `±π` 附近连续展开;
|
||||||
- `yawRate=signedV*VehicleCurvature`;
|
- `yawRate=signedV*VehicleCurvature`;
|
||||||
|
- `speed=abs(signedV)` 且 `vx/vy` 与 `Yaw`、`signedV` 一致;
|
||||||
- 回环路径不投影到错误分支;
|
- 回环路径不投影到错误分支;
|
||||||
- 换向重复位姿不跨段投影;
|
- 换向重复位姿不跨段投影;
|
||||||
- `ReferenceS` 与 `PathS` 不混用。
|
- `ReferenceS` 与 `PathS` 不混用。
|
||||||
@@ -1016,6 +1031,7 @@ Contracts + Configuration
|
|||||||
- 现有可消费平滑状态均可进入 EM;
|
- 现有可消费平滑状态均可进入 EM;
|
||||||
- 不可消费平滑状态被拒绝;
|
- 不可消费平滑状态被拒绝;
|
||||||
- 最终所有点数值有限,时间严格递增;
|
- 最终所有点数值有限,时间严格递增;
|
||||||
|
- 公开的 `SignedLongitudinalVelocity`、`Speed`、`VelocityX`、`VelocityY` 和 `YawRate` 满足统一派生关系;
|
||||||
- 完整车体逐点和连续扫掠无碰撞;
|
- 完整车体逐点和连续扫掠无碰撞;
|
||||||
- 曲率、速度、加速度和 jerk 均在配置限制内;
|
- 曲率、速度、加速度和 jerk 均在配置限制内;
|
||||||
- 换向和目标边界精确保留;
|
- 换向和目标边界精确保留;
|
||||||
|
|||||||
Reference in New Issue
Block a user