This commit is contained in:
2026-04-04 23:24:36 +08:00
parent 5e0901a4d9
commit 7c2396a282
11 changed files with 132 additions and 57 deletions

View File

@@ -93,9 +93,25 @@ extern "C" {
* 用途侧向测距补偿d_actual_to_wall = d_sensor - sensor_inset
* 即传感器测到的距离减去这个内缩量才是车体边缘到墙的真实距离
* ⚠ 极其重要沟道40cm - 车体20cm = 每边仅10cm1cm的偏差就是10%的误差!
* 注意:此值作为未分侧设置时的默认值。建议使用下面的分侧参数。
*/
#define PARAM_VL53_SIDE_INSET 0.0f
/** @brief [改进A][实测] 左侧 VL53L0X 传感器内缩距离 [m]
* 测量方法:将机器人精确放在走廊正中央(卷尺确认)
* 理论值 = (走廊宽-车宽)/2 = (0.40-0.20)/2 = 0.10m
* left_inset = 理论值 - 实测左侧前后平均读数
* 用途:消除左右安装不对称引起的系统性横向偏置(解决"持续偏右/偏左"问题)
* ⚠ 标定后请填入实测值!当前为 0.0 表示未标定。
*/
#define PARAM_VL53_LEFT_INSET 0.0f
/** @brief [改进A][实测] 右侧 VL53L0X 传感器内缩距离 [m]
* 测量方法同上right_inset = 理论值 - 实测右侧前后平均读数
* ⚠ 标定后请填入实测值!当前为 0.0 表示未标定。
*/
#define PARAM_VL53_RIGHT_INSET 0.0f
/* ------------------- 编码器参数 ------------------- */
/** @brief [实测] 编码器每转脉冲数 (CPR)
* 测量方法:查阅 F407 固件配置,或实车转动一圈数脉冲
@@ -155,12 +171,13 @@ extern "C" {
/* --- EKF 观测噪声 R (对传感器信任度) --- */
/** @brief [调优] 横向观测噪声方差 [m²]
* 含义VL53L0X 测距的可靠程度
* 调优方法:从 0.001 开始,根据走廊跟踪平滑度调整
* 典型值0.001~0.005
* [改进B] 从 0.002 提高到 0.015,适配 VL53 可信度不高的实际表现
* 调优方法VL53 噪声越大,此值越大
* 典型值0.005~0.02
* 过大EKF 不信任侧向雷达,横向响应慢
* 过小EKF 过度信任雷达,对跳变敏感
*/
#define PARAM_EKF_R_EY 0.002f
#define PARAM_EKF_R_EY 0.015f
/** @brief [调优] 航向观测噪声方差 [rad²]
* 含义:同侧前后雷达差分测角的可程靠度
@@ -171,14 +188,14 @@ extern "C" {
/** @brief [调优] IMU 航向观测噪声方差 [rad²]
* 含义IMU yaw 作为 EKF 航向观测时的噪声
* 设计意图IMU yaw 用于长时航向约束 (防止 wz 积分漂移)
* R 值应明显大于侧墙航向观测 R_ETH避免干扰侧墙短时精确修正
* 调优方法:从 0.01 开始,如果 IMU yaw 非常稳定可减
* 典型值0.005~0.05
* 过大IMU 航向观测作用弱,等于没接入
* 过小IMU 航向主导,侧墙观测被压制
* [改进C] 从 0.01 降低到 0.002,充分利用 IMU yaw 的高精度。
* IMU 是航向 e_th 的唯一观测源侧墙航向已取消R 值应小。
* 调优方法:IMU yaw 越稳定,此值可越
* 典型值0.001~0.01
* 过大IMU 航向观测作用弱,e_th 靠 wz 积分漂移
* 过小IMU 航向主导过强,短时抖动可能传入
*/
#define PARAM_EKF_R_ETH_IMU 0.01f
#define PARAM_EKF_R_ETH_IMU 0.002f
/* --- EKF 初始状态 --- */
/** @brief [调优] e_y 初始不确定度 [m²]