
线控四轮转向智能车辆的路径跟踪控制研究 针对无人驾驶情况下的线控四轮转向智能车辆路径跟踪问题基于车辆动力学模型拓展得到路径跟踪系统状态方程。 采用分层控制上层利用MPC控制器计算出前轴以及后轴的理想转角下层执行器利用PID控制进行转角跟踪从而实现路径跟踪控制效果。 用执行器效果会差很多所以执行器图是单跑的先看底盘动力学这头倔驴。建立模型时发现后轮转向角对横摆力矩的影响系数居然是前轮的1.5倍这就像发现自家二哈拆家能力比阿拉斯加还猛。用Python搭建模型时得特别注意这个参数# 动力学参数配置 C_f 80000 # 前轮侧偏刚度 C_r 120000 # 后轮侧偏刚度 注意这里比前轮大 mass 1723 # 整车质量 l_f 1.232 # 前轴到质心距离 l_r 1.468 # 后轴到质心距离上层MPC控制器的预测域设置是个玄学问题。调试时发现预测步长超过20步后计算时间曲线比股价波动还刺激。最终选定8步预测窗口相当于让控制器具备3秒的预判眼% MPC参数配置 mpcobj mpcspecs.PredictiveController; mpcobj.PredictionHorizon 8; mpcobj.ControlHorizon 2; mpcobj.Weights.OutputVariables [10, 1]; % 横向误差权重大幅增加下层PID转角跟踪遇到个黑色幽默——执行器响应曲线和期望值玩起了二人转。实测发现后轮转向电机存在200ms延迟逼得我们在代码里塞了个临时补丁// 转角补偿逻辑 double compensate_delay(double target_angle) { static queuedouble angle_buffer; angle_buffer.push(target_angle); if(angle_buffer.size() 5) { // 5个控制周期补偿 return angle_buffer.front(); } return target_angle; // 缓冲未满时忍痛返回原始值 }现场调试时发现个魔幻现象当路径曲率超过0.15m⁻¹时后轮转角会突然反向。后来发现是轮胎侧偏刚度在高速下的非线性特性作祟紧急在MPC代价函数里加了侧偏角约束# 添加轮胎侧偏约束 for k in range(prediction_horizon): problem.subject_to(alpha_f[k] np.deg2rad(4)) # 前轮侧偏角约束 problem.subject_to(alpha_r[k] np.deg2rad(-6)) # 后轮侧偏角下限最终测试时让车在S弯道表演看着监控屏幕里的航向角误差曲线逐渐驯服有种在秋名山用数学公式漂移的快感。虽然执行器响应还是像树懒打太极但至少不会冲出跑道啃草了——这大概就是控制工程师的浪漫吧。线控四轮转向智能车辆的路径跟踪控制研究 针对无人驾驶情况下的线控四轮转向智能车辆路径跟踪问题基于车辆动力学模型拓展得到路径跟踪系统状态方程。 采用分层控制上层利用MPC控制器计算出前轴以及后轴的理想转角下层执行器利用PID控制进行转角跟踪从而实现路径跟踪控制效果。 用执行器效果会差很多所以执行器图是单跑的