1. 项目背景与核心挑战
在智能驾驶系统的开发过程中,横向控制算法是确保车辆稳定循迹的关键技术。双移线工况作为ISO标准测试场景之一,能够有效验证控制器在快速变道情况下的动态响应性能。这个项目通过Simulink搭建LQR控制器,与CarSim车辆动力学模型进行联合仿真,实现了在复杂工况下的精准路径跟踪。
传统PID控制在双移线工况下容易出现超调量大、收敛速度慢的问题。LQR(线性二次调节器)通过状态反馈实现多变量系统的最优控制,特别适合处理车辆横向动力学这类多输入多输出系统。但实际工程应用中存在三个主要难点:一是车辆模型参数辨识的准确性,二是权重矩阵Q和R的合理配置,三是实时性要求下的算法简化。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 系统架构设计解析
2.1 整体仿真框架
采用"控制器+车辆模型+场景"的三层架构:
code复制[Simulink LQR控制器] ←数据交互→ [CarSim车辆模型] ←场景输入→ [双移线路径]
信号交互通过CarSim S-Function接口实现,主要传输以下关键变量:
- 输入:横向偏差(m)、航向角偏差(rad)、车速(m/s)
- 输出:前轮转角(rad)、制动压力(MPa)
注意:CarSim的坐标系定义与Simulink可能存在差异,需在接口模块中做转换处理。实测发现忽略坐标系转换会导致控制量相位滞后约0.3秒。
2.2 车辆动力学模型简化
基于自行车模型建立状态空间方程:
code复制ẋ = Ax + Bu
y = Cx + Du
状态变量x选取:
code复制x = [横向偏差 航向角偏差 横摆角速度 侧偏角]^T
控制输入u为前轮转角δ。在CarSim中需关闭ESP等电子稳定程序,避免干扰控制效果验证。
3. LQR控制器实现细节
3.1 权重矩阵调参方法论
Q矩阵对角元素对应状态变量权重,建议初始值设置:
code复制Q = diag([10, 0.1, 0.01, 0.5])
R = 1
调参过程中发现三个关键规律:
- 横向偏差权重过大会导致方向盘抖动
- 航向角权重低于0.05时出现"蛇形走线"
- 车速60km/h时R值需增大到3以上保持稳定
3.2 离散化处理技巧
采用Tustin变换进行离散化,采样周期选择20ms。实测表
