集中停车控制配置并完善终点逼近和周期诊断
This commit is contained in:
@@ -0,0 +1,171 @@
|
||||
using ClumsyCore;
|
||||
|
||||
namespace MultiWheelC;
|
||||
|
||||
/// <summary>
|
||||
/// 定义停车状态估计、轨迹跟踪和原地自转使用的车辆级参数。
|
||||
/// </summary>
|
||||
public partial class PilotConfig
|
||||
{
|
||||
#region 停车控制-状态估计
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour最大合理线速度(m/s)")]
|
||||
public float ParkingDetourMaximumLinearSpeed = 1.20f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour最大合理角速度(deg/s)")]
|
||||
public float ParkingDetourMaximumAngularSpeedDegrees = 45f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour位置跳变余量(m)")]
|
||||
public float ParkingDetourPositionJumpMargin = 0.03f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour航向跳变余量(deg)")]
|
||||
public float ParkingDetourHeadingJumpMarginDegrees = 5f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour速度预测位置残差(m)")]
|
||||
public float ParkingDetourVelocityPositionResidual = 0.04f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour速度预测航向残差(deg)")]
|
||||
public float ParkingDetourVelocityHeadingResidualDegrees = 5f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour静止确认时间(s)")]
|
||||
public float ParkingDetourStationaryConfirmationSeconds = 0.35f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour线速度滤波时间常数(s)")]
|
||||
public float ParkingDetourLinearVelocityFilterSeconds = 0.15f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Detour角速度滤波时间常数(s)")]
|
||||
public float ParkingDetourAngularVelocityFilterSeconds = 0.20f;
|
||||
|
||||
[FieldMember(desc = "停车控制:电机反馈速度滤波时间常数(s)")]
|
||||
public float ParkingWheelVelocityFilterSeconds = 0.10f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 停车控制-Stanley
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley横向误差增益(1/s)")]
|
||||
public float ParkingStanleyCrossTrackGain = 0.4f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley航向误差增益")]
|
||||
public float ParkingStanleyHeadingGain = 1.0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley最低分母速度(m/s)")]
|
||||
public float ParkingStanleyMinimumSpeed = 0.15f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley使用电机实际速度")]
|
||||
public bool ParkingStanleyUseActualSpeed = true;
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley横向修正上限(deg)")]
|
||||
public float ParkingMaximumCrossTrackCorrectionDegrees = 10f;
|
||||
|
||||
[FieldMember(desc = "停车控制:Stanley航向修正上限(deg)")]
|
||||
public float ParkingMaximumHeadingCorrectionDegrees = 10f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 停车控制-纵向PID
|
||||
|
||||
[FieldMember(desc = "停车控制:纵向速度Kp")]
|
||||
public float ParkingLongitudinalKp = 0.5f;
|
||||
|
||||
[FieldMember(desc = "停车控制:纵向速度Ki(1/s)")]
|
||||
public float ParkingLongitudinalKi = 0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:纵向速度Kd(s)")]
|
||||
public float ParkingLongitudinalKd = 0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:纵向积分修正上限(m/s)")]
|
||||
public float ParkingMaximumIntegralCorrection = 0.05f;
|
||||
|
||||
[FieldMember(desc = "停车控制:纵向速度误差死区(m/s)")]
|
||||
public float ParkingLongitudinalSpeedErrorDeadband = 0.025f;
|
||||
|
||||
[FieldMember(desc = "停车控制:最大命令速度(m/s)")]
|
||||
public float ParkingMaximumCommandSpeed = 0.50f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 停车控制-原地自转
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转Kp")]
|
||||
public float InPlaceRotateKp = 1.05f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转Ki")]
|
||||
public float InPlaceRotateKi = 0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转Kd")]
|
||||
public float InPlaceRotateKd = 0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转积分限幅")]
|
||||
public float InPlaceRotateMaxI = 0f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转到位角度容差(deg)")]
|
||||
public float InPlaceRotateArriveDeg = 1.5f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转起转前舵轮对齐容差(deg)")]
|
||||
public float InPlaceRotateWheelAlignDeg = 2f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转最小有效角速度(deg/s)")]
|
||||
public float InPlaceRotateMinimumSpeed = 1f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转最大角速度(deg/s)")]
|
||||
public float InPlaceRotateMaxSpeed = 47.5f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转角加速度(deg/s²)")]
|
||||
public float InPlaceRotateAcc = 60f;
|
||||
|
||||
[FieldMember(desc = "停车控制:原地自转超时(s)")]
|
||||
public float InPlaceRotateTimeoutSec = 15f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 停车控制-舵轮回正
|
||||
|
||||
[FieldMember(desc = "停车控制:舵轮回正到位容差(deg)")]
|
||||
public float ParkingWheelForwardToleranceDegrees = 2f;
|
||||
|
||||
[FieldMember(desc = "停车控制:舵轮回正稳定确认时间(s)")]
|
||||
public float ParkingWheelForwardStableSeconds = 0.3f;
|
||||
|
||||
[FieldMember(desc = "停车控制:舵轮回正超时(s,0关闭)")]
|
||||
public float ParkingWheelForwardTimeoutSeconds = 10f;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 停车控制-GCP与完成条件
|
||||
|
||||
[FieldMember(desc = "停车控制:最大GCP转角(deg)")]
|
||||
public float ParkingMaximumGcpAngleDegrees = 45f;
|
||||
|
||||
[FieldMember(desc = "停车控制:最大GCP转角速度(deg/s)")]
|
||||
public float ParkingMaximumGcpAngleRateDegreesPerSecond = 15f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点距离容差(m)")]
|
||||
public float ParkingFinishDistance = 0.03f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点速度容差(m/s)")]
|
||||
public float ParkingFinishSpeed = 0.02f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点航向容差(deg)")]
|
||||
public float ParkingFinishHeadingToleranceDegrees = 3f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点制动预瞄距离(m)")]
|
||||
public float ParkingTerminalBrakingPreview = 0.02f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点单向逼近范围(m)")]
|
||||
public float ParkingTerminalApproachDistance = 0.10f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点单向逼近增益(1/s)")]
|
||||
public float ParkingTerminalApproachGain = 0.8f;
|
||||
|
||||
[FieldMember(desc = "停车控制:终点单向逼近最大速度(m/s)")]
|
||||
public float ParkingTerminalMaximumApproachSpeed = 0.05f;
|
||||
|
||||
[FieldMember(desc = "停车控制:最大轨迹偏离距离(m)")]
|
||||
public float ParkingMaximumDistanceToTrajectory = 0.30f;
|
||||
|
||||
[FieldMember(desc = "停车控制:轨迹执行超时(s)")]
|
||||
public float ParkingExecutionTimeoutSeconds = 120f;
|
||||
|
||||
#endregion
|
||||
}
|
||||
Reference in New Issue
Block a user