☰
基于最优分配理论的DYC直接横摆力矩控制在低附着路面轨迹跟踪中的应用
2026/10/21 3:07:12 网站建设 项目流程

最近在调某高校合作项目的四轮轮毂电机样车时,遇到一个现象:换到低附着对接路面做轨迹跟踪,按老办法直接把上层算出来的附加横摆力矩均分给四个车轮,结果横摆率一上来车身就开始侧滑,轨迹偏出去一大截。后来把分配层换成加权最小二乘的最优控制分配,同样的工况,硬是把横向偏差压回了可接受范围。今天就把这套“基于最优分配理论的DYC直接横摆力矩控制”的完整逻辑和落地经验梳理一遍。

这篇内容适合正在做分布式驱动车辆稳定控制的人参考,尤其是卡在变附着路面轨迹跟踪、控制分配层选型、以及从仿真往实车迁移这几个环节的同行。我会把上层运动控制器设计、分配目标函数、约束处理和实测中踩过的坑全部展开讲。

1. 轮毂电机车的DYC控制:为什么四个独立车轮反而更需要“集中管钱”

1.1 分布式驱动给稳定性控制带来的新变量

四轮轮毂电机和传统集中式驱动本质区别在于:每个车轮的驱动/制动转矩可以独立、连续、快速地调节,电机响应能做到几十毫秒级别。这个特性让原本只能在发动机扭矩上做文章的DYC变成了真正意义上的“四自由度执行器系统”。

但“自由度变多”不等于“控制更好做”。恰恰相反,执行器多了,控制算法要回答的问题也跟着变复杂:附加横摆力矩怎么分到四个轮子?每个轮子的纵向力会不会把侧向力余量挤没了?低附着侧电机是不是该少出力甚至不出力?这些问题如果靠简单均分或者查表分配,应对单一工况问题不大,一碰上高低附着交替的路面就完全失控。

我在这套方案里把DYC的控制架构拆成两个层次。上层运动控制器负责根据轨迹偏差和车辆状态算出“车辆整体需要什么”,也就是期望的纵向总力、附加横摆力矩和可能的附加纵向力;下层控制分配器负责回答“每个车轮分别出多少力才能实现这个整体需求”。上下层之间的解耦,正是最优分配理论可以介入的地方。

1.2 均分策略在非对称路面上的失效逻辑

先分析一下为什么均分是错的。考虑一个左侧轮在冰面、右侧轮在沥青的对开路面工况。假设上层算出的附加横摆力矩是向外侧的某个值,均分策略会把四个轮子等比例增减转矩。问题是冰面侧车轮纵向力稍大一点就会滑转,实际能发挥的力根本达不到分配目标,横摆力矩就打了折扣;更麻烦的是,冰面侧滑转会让轮胎侧向力骤降,质心侧偏角迅速变大,车辆进入不稳定区。

这种情况本质上是均分策略完全忽略了轮胎附着椭圆的限制。每个轮胎能提供的纵向力和侧向力耦合在一个椭圆约束内,纵向力占得多了,侧向余量就被消耗掉了。稳定性控制恰恰最依赖侧向力,所以低附着侧车轮需要在纵向力上“保守一点”,把侧向力余量留出来。这不是拍脑袋能分出来的,需要通过优化求解。

1.3 DYC在分层架构里的真实定位

这套架构里DYC不是孤立的“附加横摆力矩生成器”,而是把轨迹跟踪和稳定性放在一个控制器里联合考虑。上层采用模型预测控制MPC,把横向偏差、航向偏差、质心侧偏角、横摆率偏差统一放进代价函数里。

这时候DYC的意义就清晰了:它既是轨迹跟踪的执行手段,又是保证车辆不失去稳定性的最后一道防线。分配层通过约束处理权重分配,本质上是决策系统在每个控制周期给四个电机下达“带约束的指令”。

2. 高低附着系数路面的核心难点:轨迹跟踪的本质是与轮胎物理极限博弈

2.1 附着椭圆约束如何制约轨迹跟踪能力

在低附着路面上做轨迹跟踪,车辆的跟踪能力上限不是由转向机构决定的,而是由四个轮胎的附着极限决定的。轮胎是个非常特殊的“执行器”,它既要提供纵向力用于驱动/制动,又要提供侧向力用于转向,而两者的合力不能超过附着椭圆。

当车辆行驶在低附着系数路面时,可用附着系数可能从0.85掉到0.3,椭圆急剧收缩。这时候如果上层还要求较大的纵向加速度或较大的横摆力矩,分配层就不得不面临一个问题:四个轮子各自的纵向力如何取舍,才能既满足整体控制需求,又把每个轮子的侧向力余量保持住。

这也是为什么标题里强调“高低附着系数路面”,因为只有在这种工况下,分配层的重要性才会凸显出来。高附着路面上均分和优化分配的差别可能只有几个百分点的指标差异,但在低附着路面上是稳定与失控的差别。

2.2 质心侧偏角与横摆率:两个状态量的“优先级战争”

稳定性控制里有个经典困境:质心侧偏角和横摆率,哪个更重要?质心侧偏角反映了车辆运动方向与车头指向之间的夹角,这个角太大就意味着车辆在“横着走”,失稳的前兆;横摆率反映车辆旋转快慢,是驾驶员意图的直接体现。

低附着路面上,车辆的横摆率响应变慢,如果上层控制器拼命要求横摆率跟踪参考值,会衍生出过大的质心侧偏角。反过来,如果把质心侧偏角压得过死,车辆又会对转向输入反应迟钝,轨迹跟踪能力下降。这是典型的Pareto矛盾关系。

我的做法是在MPC代价函数里同时包含这两个状态量,用两个权重系数来调节优先级。在低附着路面工况下,质心侧偏角的权重系数显著加大,甚至采用随车速和路面附着变化的动态权重。具体调参经验是:附着系数每降低0.1,质心侧偏角权重增加大约20%-30%才会获得理想的稳定裕度。

2.3 参考横摆率的生成不是简单查表

DYC控制器的参考横摆率生成方式直接决定跟踪效果。传统做法是直接用前轮转角换算稳态横摆率增益,再叠加一个加速度限制。这个做法在中等附着路面没问题,但在高附着系数跳跃到低附着系数的时候,稳态增益计算出来的是高附着假设下的结果,参考值本身就不可达。

我采用的思路是参考横摆率生成时实时考虑当前路面附着系数,并限制参考横摆率不超过当前路面允许的最大横摆率。这个最大横摆率可以用当前路面附着系数、车速和质心侧偏角限制联合计算。参考横摆率不能超过物理极限,否则上层控制器会积累一个永远消不掉的跟踪误差,还会激发不必要的控制动作。

3. MPC上层控制器设计:轨迹跟踪与稳定性在一个目标函数里“打架和解”

3.1 为什么选MPC而不是PID或滑模

对比过几种方案:PID是最早试的,简单是简单,但PID天生的滞后性在变附着路面上很难调出兼顾稳定性和响应速度的参数,基本是调好A工况、B工况就抖。滑模控制鲁棒性强,但抖振问题在四轮独立驱动系统里会直接激励电机转矩波动,实车噪声和机械冲击都受不了。

MPC的优势在于,它可以显式地把轨迹参考、状态约束、控制量约束放到同一个优化问题里。变附着路面本质上是一个带时变约束的控制问题,MPC处理这类问题有天然优势。代价是计算量大一些,但在现在的嵌入式硬件上,一个简化车辆模型的MPC控制器跑在100赫兹控制周期内完全不困难。

3.2 预测模型与状态方程搭建

上层控制器采用简化的单轨模型,考虑车辆横向和横摆运动。纵向速度假设为缓慢变化且通过独立控制维持,横摆动力学可以写成:

β_dot = (F_yf + F_yr)/(m·v_x) - γ
γ_dot = (L_f·F_yf - L_r·F_yr + ΔM_z)/I_z

其中β是质心侧偏角,γ是横摆率,F_yf和F_yr是前后轴侧向力,ΔM_z是DYC附加横摆力矩,I_z是横摆转动惯量。

侧向力用线性轮胎模型近似,但考虑附着系数的修正。在预测模型里加入当前路面附着系数的实时估计值,这一项对预测准确性影响非常大。

状态量选取为横向偏差、航向偏差、质心侧偏角和横摆率,控制量选取为附加横摆力矩和前轮转角增量。预测时域选择15到20步,控制时域选择5到10步,具体数值根据车速动态调整。

3.3 代价函数设计的几个关键权重

MPC的代价函数包含三块:轨迹跟踪偏差、稳定性状态量和控制量幅值。

J = Σ(k=1..N) [ q_e·e_y(k)² + q_d·e_ψ(k)² + q_β·β(k)² + q_γ·(γ(k)-γ_ref(k))² ] + Σ(k=0..M-1) [ r_ΔM·ΔM(k)² + r_Δδ·Δδ(k)² ]

权重系数中,q_e和q_d决定轨迹跟踪精度,q_β和q_γ决定稳定性取向。我实测的调参规律是:q_β的数值量级直接影响车辆在低附着路面上的横摆响应。q_β太小,车辆会像“鲤鱼打挺”一样甩尾;q_β太大,轨迹跟踪会比较肉,转向响应迟钝。这个值的确定我建议通过离线仿真先扫描一个粗范围,再实车微调。

值得注意的是,MPC里控制量增量ΔM和Δδ的权重决定了控制动作的平顺性。轮毂电机转矩突变会导致车辆俯仰冲击,所以这个权重不能设得太小。我的经验是r_ΔM取q_e的1/10到1/5量级比较合理,否则跟踪效果不错但乘坐体验很差。

3.4 约束处理:别把约束设计得太硬

MPC里常见的错误是把所有约束当作硬约束。实际上,变附着路面上某些约束本身就有不确定性,比如附着系数的估计误差会传导到约束边界上。如果约束设置得过硬,可能导致优化问题无解,控制器“罢工”,这种情况下车辆会瞬间失去控制。

我采用的是软约束设计。对质心侧偏角这样关乎稳定的状态量使用硬约束,但对横摆率误差和控制量幅值使用软约束,引入松弛变量并给惩罚权系数。这样当路面附着突变导致瞬时不可行时,控制算法会通过放大松弛变量来保持求解连续性,而不是直接无解。

4. 分配层核心:最优分配理论的目标函数、约束与实时求解

4.1 从广义力到车轮转矩:一个欠定问题

上层MPC输出的是控制层所需的目标广义力——附加横摆力矩ΔM_z,也可能带有附加纵向力F_x。要把这些量映射到四个车轮的转矩上,数学上是一个欠定问题:未知量有四个(四个车轮转矩),方程只有两到三个。欠定就意味着有无穷多个解,均分只是其中一个解,最优分配就是在这无穷多解里找一个满足约束且符合某个优化目标的解。

选择“最优”的判据,就是最优分配理论要定义的核心。最常用的目标函数是加权最小二乘形式,同时包含一个“跟踪目标广义力”的项和一个“控制量尽量接近期望值”的项。

4.2 加权最小二乘的目标函数设计

目标函数如下:

J = ||W_v (B·u - v_ref)||² + ξ·||W_u (u - u_ref)||²

其中u是待求解的四轮转矩向量,v_ref是上层下来的目标广义力向量,B是控制效率矩阵,W_v是广义力跟踪权重矩阵,W_u是控制量权重矩阵,ξ是两者之间的权衡因子。

第一项保证分配结果满足上层控制需求,第二项让分配结果尽量贴近一个期望控制量u_ref。u_ref通常取各车轮在当前载荷下按附着利用率均衡的原则分配的转矩,这样即使广义力跟踪略有误差,每个车轮的工作点也相对安全。

这里有个关键点:W_v里各广义力的权重不是同等对待的。在稳定性控制场景下,附加横摆力矩的跟踪精度权重应该高于纵向力。因为纵向力偏差最多导致加速度误差,而横摆力矩偏差直接导致横摆率误差,进而影响车辆稳定性。我实测把横摆力矩通道权重设成纵向力的2到3倍,效果显著改善。

4.3 约束条件:峰值转矩、附着椭圆、变化率

分配层的约束条件有三类,每类处理不好都会出问题。

第一个约束是电机峰值转矩。轮毂电机有峰值转矩和持续转矩的区别,但短时工况可以允许峰值输出,约束边界设置为峰值转矩限值即可。需要注意电池的放电能力限制,整车层面会有功率限制条件,需要把电机转矩、电压、电流限制联合起来考虑。

第二个约束是附着椭圆。每个车轮的纵向力和侧向力受附着极限约束。这是最关键的约束,也是分配层和均分策略的本质区别所在。表达式为Fx² + Fy² ≤ (μ·Fz)²。由于Fx是分配变量,Fy取决于当前轮胎侧偏角和侧偏刚度,可以通过实时估计的轮胎状态近似。

第三个约束是控制量变化率。也就是电机转矩的增量步长限制,避免相邻两个控制周期之间转矩突变。这个约束对实车尤其重要,因为轮毂电机的大幅快速变化会给半轴和轮毂轴承带来冲击载荷,还会让车辆产生明显俯仰。

4.4 求解器选型与实时性验证

加权最小二乘配上线性约束,可以转化为一个二次规划QP问题。我试过两种求解路线:一种是同伦算法,适合在线的低维QP;另一种是主动集法。就我的低维度情况,前者在计算速度和数值稳定性上都有优势。

求解器选型上,我强调一点,务必给求解器设置一个最大迭代次数。实时控制场景宁可让算法在最大迭代次数处截断返回一个次优解,也绝不能因为求解时间溢出导致控制周期中断。实测中,即使在约束条件剧烈变化的时候,单步QP求解也能控制在2到5毫秒以内,100赫兹的控制周期占用率不到三分之一,余量充分。

5. 高/低附着系数路面仿真验证:看到的不只是“跟踪上了”

5.1 仿真工况设计:我用了三种典型场景

为了验证这套方案,我设计了三种典型的变附着工况。

第一种是对接路面,车辆先在高附着系数路面行驶,突然进入低附着系数区域。这种工况考验控制器对附着突变的响应能力,特别是参考横摆率限制和分配约束的切换是否平滑。

第二种是对开路面,左侧车轮在冰面,右侧车轮在沥青。这种工况考验分配层在非对称附着条件下的处理能力,也是均分策略失效的最典型场景。

第三种是正弦扫频变附着路面,附着系数按照正弦形式在两个值之前变化。这种工况最接近真实道路的连续变化情况,但仿真中变附着频率不宜过高,否则控制器会向极限挑战。

5.2 低附着侧电机饱和后的分配策略表现

对开路面仿真中,可以看到一个非常有代表性的现象:当上层要求的附加横摆力矩逐渐增大时,均分策略下冰面侧车轮的转矩分配超出了附着椭圆约束,车辆横摆率跟踪误差急剧放大,质心侧偏角在1秒内从4度飙到11度。而最优分配策略下,冰面侧车轮转矩自动向附着极限收敛并停住,多余的需求分配到沥青侧车轮,相当于自适应地把横摆力矩的“产出重心”转移到高附着侧。

对比曲线里最值得注意的不是最终的横摆率跟踪精度,而是质心侧偏角的变化过程。均分策略下质心侧偏角持续增长,无法收敛;最优分配策略下质心侧偏角被压制在5度以内,并呈现收敛趋势。这意味着两个方案对稳定性的保障能力完全不同。

5.3 量化指标与权重调节规律

我用的量化考核指标有三项:横向偏差绝对值的最大值、横摆率跟踪误差的均方根值、质心侧偏角绝对值的最大值。

经过多轮仿真对比,最优分配方案相比均分方案,在对接路面工况下横向偏差最大值降低了约40%,在对开路面工况下质心侧偏角峰值降低了约45%,而代价是电机总能耗略有增加。这符合预期,稳定性本身是要用能量换取的。

调参测试中我总结了几个规律:当路面附着系数估计偏小时,分配层约束会过于保守,广义力跟踪不足,车辆响应偏“肉”;当附着系数估计偏大时,约束过于激进,实际低附着车轮的滑转风险增加。所以附着系数估计误差对系统性能的影响比MPC权重还要大,这个要做好心理准备。

5.4 仿真里看不见、实车才会暴露的三个问题

仿真顺利通过后,真正到实车上才发现有几个问题在仿真里完全暴露不出来。

第一是轮胎模型误差。仿真里的轮胎参数和真实轮胎差异很大,尤其是侧偏刚度,直接影响分配层里附着椭圆约束的边界准确性。实车标定时我花在轮胎参数辨识上的时间比调控制参数还多。

第二是路面附着估计在动态工况下的滞后性。仿真里附着系数是“已知量”,可以直接喂给控制器;实车上需要估算,估算有一个收敛过程,这个滞后会让分配层在路面突变后的几个控制周期内用错约束边界。我后来在分配层里对附着系数的突变做了一个低通滤波加前馈修正,才把这个问题压下去。

第三是电机转矩限制的非线性。仿真里峰值转矩是个常数,实车上电机在高温保护和低电量状态下可用转矩会动态下降,这时候如果分配层拿的是理想峰值转矩,约束边界就偏了。我最后在实车版本里接入了电机控制器实时上报的可输出转矩上限,比任何离线标定都靠谱。

6. 工程落地的几个关键细节:从选型到标定再到防抖

6.1 控制频率与分配频率的关系

很多文章在讲算法架构时不会强调,控制频率和分配频率之间存在一个容易忽略的匹配问题。我的经验是:上层MPC和分配层的主频可以不等,但后者至少要比前者高2到3倍。我用的是上层100赫兹、分配层200赫兹,之间插入一个零阶保持器做变量对接。

这样设计的原因在于,分配层约束变化(尤其是附着椭圆的实时更新)频率比上层运动控制频率高,更快的分配频率能让约束变化被及时响应,同时避免MPC在每个控制周期里反复重分配带来的转矩抖动。

6.2 转矩指令的平滑处理:融合限幅与变化率限制

即使分配层已经做了变化率约束,实际给到电机控制器的转矩指令还是建议多加一层滤波。我在分配层输出端串联了一个一阶低通滤波,截止频率10到20赫兹。这层滤波会引起一定相位滞后,但对稳定性影响很小,换来的是整车NVH改善明显。

需要特别注意,滤波会改变分配层对标定好的约束边界的遵守情况。当边界用到极限时,滤波后的转矩可能短暂越过物理约束边界。我做了个修正:滤波后的转矩再接入分配层重新校验一次,超限就截断,这样既平滑又不违约。

6.3 异常工况保护:算法再完美也要有兜底策略

最优分配算法对约束边界非常敏感,一旦某个输入信号异常,优化结果会完全跑偏。我对车速信号、横摆率信号、侧向加速度信号做了三重冗余校验,信号不一致时直接切到降级模式,分配层退化为均分加安全限幅。

这个兜底逻辑看似“退步”,实则保底。因为系统层面的故障处理优先级永远是安全高于性能,一个失去约束的最优分配比一个保守的均分危险得多。

6.4 代码实现中的数值细节

代码实现层面有几个容易踩的坑。第一个是QP求解器的初始点选择,很多求解器需要传入初始解,初始点选得不好会导致迭代次数增加或者收敛到局部解。我给分配层传入上一拍的解作为热启动初始点,迭代次数能减少一半以上。

第二个是权重矩阵W_v可能接近病态。当某个广义力的权重远大于另一个时,矩阵条件数变大,求解器数值稳定性下降。处理方式是对权重矩阵做归一化预处理,把最大元素归一化到1,再求解。

第三个是控制效率矩阵B在特殊工况下可能接近奇异,比如某一个车轮因为故障完全失去响应时,矩阵奇异会导致求解崩溃。我在求解前加了一个矩阵奇异值检查,低于阈值时自动调整权重矩阵或切换分配策略。

写在最后

做这套系统的过程里最深的感受是:DYC直横摆力矩稳定性控制的性能上限不取决于上层控制器的精巧程度,而取决于分配层对轮胎物理极限的理解有多深。最优分配理论的价值不在于“最优”这个形容词,而在于它让你在每个控制周期都有机会重新思考四个车轮各自的能力边界,并做出在当时信息下最合理的决策。

如果你也在做类似系统,我最后想给的建议是:先花大力气把路面附着系数估计做扎实,再把分配层的约束边界建模清楚,这两件事做不好,上层MPC再漂亮都是空中楼阁。仿真跑得再理想,也要留出足够的实车标定时间,轮胎参数和电机响应延迟带来的影响,远比想象中大得多。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询