天棚控制算法思想最早是由一个外国人Karnopp在1974年最早提出来的,为了有效减轻路面颠簸对车身的影响,为了最大程度将车身与路面解耦,他设想有一个减振器,直接一端链接天空,另一端链接车身;这个减振器的阻尼力方向与车身运动方向相反,恰好能使得车身保持在水平位置不动;这样,就算路面再怎么颠簸,都不会影响到车身,如下图所示:
当然,这个设想是理想化,不可能实现的,现实中减振器都是按照在车轮与车身之间,不可能按照在天空与车身之间。
但是顺着天棚的解耦思想,随着电控可调阻尼减振器的出现,学者们开始陆陆续续提出了一些CDC的控制算法,最经典的是2-State Sky-hook Control(两状态),随后在两状态的基础上又延伸出了连续天棚 Skyhook Linear Approximation Damper Control,以及考虑了车身加速度的 Sky hook --ADD算法。这一节,我们只讲两状态和连续天棚的原理及仿真。
2-State Sky--hook Control算法公式如下:
公式中,表示车身位移,表示减振器行程,即, 则表示车身垂向位移速度,表示减振器垂向压缩拉伸速度, c表示减振器的阻尼系数。这个公式意思是:如果车身位移速度方向与减振器压缩速度方向相反,则取最小阻尼;如果车身位移速度方向与减振器压缩速度方向相同,则取最大阻尼。为什么要这么设置呢,参考下图,我们详细讲解
如上图所示,红色箭头表示车身及车轮质量的运动方向,向上为正,向下为负,箭头长度表示运动速度的大小。
我们假设蓝车正快速经过一个减速带,过程分为4个阶段
1、车轮刚压到减速带,车轮会立刻上移,此时车身因为弹簧和减振器原因,向上运动相对滞后,所以两者运动方向都是向上,但是车身速度比车轮速度小,减震器速度为负的,对应上图的第二象限。如果希望车身的运动少点,则需要软一点的阻尼,让车轮更容易向上运动,同时也降低车轮对车身的影响,这刚好与车身、减振器速度符号相反,则取最小阻尼相对应。
2、车轮冲上减速带顶部,快要到达顶部阶段;此时,车轮运动速度减小,但是仍是向上,车身由于惯性以及滞后,速度反而大于车轮,减振器速度为正;如果期望车身运动少一点,则此时取大阻尼,可以抑制车身不断向上运动。这与车身、减振器速度符号相同,则取最大阻尼相对应。
3、车轮离开减速带顶峰,开始往下走,车轮下坠的速度大于车身下坠速度。这时候需要软一点的阻尼,防止车身快速的被车轮往下拽。
4、车轮接触地面,车身也在往下运动,这时如果还是小阻尼,则车点头幅度会过大,应该大阻尼会比较好。
以上是拿过减速带举例来解释天棚公式,往细里想,路上坑坑洼洼也是可以类比于大大小小的减速带,是同理的。
对于过减速带悬架运动的四个过程如果理解不过来,可以反复观看下面的视频。
汽车模拟器 :模拟各种重卡通过减速带-游戏-高清完整正版视频在线观看-优酷 (youku.com)
下面开始搭建模型仿真,悬架模型用四分之一车二自由度模型。
1、原来二自由度模型里阻尼C改为输入,不再是个单一变量;同时将车身速度和减振器运动速度作为输出。
2、搭建2-state sky-hook模型。
4、初步仿真,设置几个不同频率的正弦输出,看下几组阻尼的舒适性效果(车身加速度)。从下面几张图可以看出,1.5hz车身共振频率附近,大阻尼效果最好,2-state天棚控制居然达到了与大阻尼相当的效果。而频率高于车身共振频率后,小阻尼效果最好,2-state的表现有明显的顿挫,平滑的部分逊色于小阻尼。可见2-state天棚能初步达到我们想要的效果(车身共振频率附近性能与大阻尼相当,车身共振频率以后,性能与小阻尼相当)。
5、为了严谨性,我们设计一个脚本,自动让正弦输入频率依次从0.1hz,0.2hz.....20hz输入,记录每次仿真的路面输入加速度的幅值、车身振动加速度的幅值,来绘制出幅频特性曲线。
从这图可以明显看出,2-state能明显改善车身共振频率点附近的舒适性,但是对高频(7hz以后),2-state性能甚至比C_max还差。我们猜想,这可能是与2-state开关切换时候,阻尼不线性引起的顿挫有关,等会将它与线性的天棚对比。
汽车理论里提到的线性天棚推导过程如下
我们直接上手搭这部分控制逻辑模型,其中Csky是一个标定参数,可以先尝试不同比值,这里就先随便拿个8000来演示。
同样是1,1.5,5,10这四个频率,如下图所示,仍然存在着顿挫。
同样的,在从0.1hz到20hz跑一遍,幅频曲线如下:
车身共振峰上,相比2-state,连续天棚效果略差于2-state,但是车身共振频率以后,连续天棚的效果非常理想,对高频振动的过滤,达到了Cmin的水平。但是美中不足的是,它同样存在符号换向时候的顿。
使用之前章节搭建的随机路面,仿真两种天棚算法与常阻尼系数。
最后一张图中,出现2状态的天棚车身共振频率处的效果好于最大阻尼,这有点诡异。哪位朋友如果知道为什么出现这种情况,也请评论区告知下?
模型与脚本:
如果有需要的,可以搜某宝店铺,极简车辆控制 获取,大哥们的支持是不断创作的动力。