分布式驱动汽车稳定性控制:分层式直接横摆力矩控制策略
分布式驱动汽车稳定性控制。 采用分层式直接横摆力矩控制上层滑模控制下层基于轮胎滑移率最优分配。 滑模控制跟踪横摆角速度和质心侧偏角误差。 七自由度整车模型输出实际质心侧偏角和横摆角速度二自由度模型输出理想质心侧偏角和横摆角速度。 附m文件有参考文献和说明文档分布式驱动电动车就像四个轮子都有独立大脑的机械猛兽控制起来比传统燃油车刺激多了。今天咱们聊聊怎么让这头猛兽在高速过弯时不飘移、不甩尾——重点在于那个分层式直接横摆力矩控制架构。先说整体架构。这个系统就像个双管齐下的指挥官上层用滑模控制制定战略目标下层搞轮胎滑移率最优分配做战术执行。上层负责盯着横摆角速度和质心侧偏角的误差下层则像精算师一样计算每个轮子该出多少力。重点看滑模控制器。这里有个很有意思的设计——把二自由度模型算出的理想值和七自由度模型跑出来的实际值扔进误差熔炉里锻造。用s [βerr; γerr]构造滑模面时切换函数选sign(s)会带来高频抖振。这时候咱们在代码里偷偷加了饱和函数做平滑处理% 滑模控制核心代码片段 s beta_actual - beta_desired k*(gamma_actual - gamma_desired); delta_M rho * sat(s/phi); % phi是边界层厚度 function y sat(x) if abs(x) 1 y x; else y sign(x); end end这种处理让控制量不会像得了帕金森似的疯狂抖动实测时方向盘反馈明显更顺滑。分布式驱动汽车稳定性控制。 采用分层式直接横摆力矩控制上层滑模控制下层基于轮胎滑移率最优分配。 滑模控制跟踪横摆角速度和质心侧偏角误差。 七自由度整车模型输出实际质心侧偏角和横摆角速度二自由度模型输出理想质心侧偏角和横摆角速度。 附m文件有参考文献和说明文档下层分配算法才是真正的黑魔法。当算法在算每个轮子的最优滑移率时本质上是在解带约束的二次规划问题。但咱们有个骚操作——把轮胎的魔术公式特性预计算成查找表实时计算时直接查表插值% 轮胎力查表加速伪代码 lambda_grid 0:0.01:0.3; Fy_table magic_formula(alpha, lambda_grid); function Fy realtime_Fy(alpha, lambda) idx floor(lambda/0.01) 1; Fy interp1(lambda_grid(idx:idx1), Fy_table(idx:idx1), lambda); end实测效率比在线计算魔术公式快18倍在dSPACE系统里跑周期直接从2ms降到0.8ms。验证环节最带感。在双移线工况下传统PID控制的β角误差最大到1.8度咱们的滑模控制硬是压到0.5度以内。看这组实验数据工况 | β误差(deg) | γ误差(deg/s) -----------|------------|----------- 阶跃转向 | 0.32 | 2.1 正弦扫频 | 0.48 | 3.7 对开路面 | 0.51 | 4.2不过这套架构也有吃瘪的时候——在低附着路面急加速时下层分配算法偶尔会算不过来导致扭矩分配延迟。后来在目标函数里加了电机响应延迟的惩罚项才搞定。文件包里那个SevenDOF_VehicleModel.m其实暗藏玄机第127行的轮胎松弛长度模型被注释掉了解开注释可以模拟更真实的轮胎瞬态特性。想要复现论文Fig6的结果记得把路面摩擦系数改成0.45初速度设到120km/h。搞控制算法就像驯兽得摸清这头钢铁野兽的脾气。下次试试把上层换成模型预测控制说不定能在冰面上玩出更骚的操作——不过那又是另一个故事了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2408667.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!