• 554查看
  • 0回复

[VCU] VCU学习笔记-VCU信号处理(2)

[复制链接]


该用户从未签到

发表于 6-12-2023 08:34:38 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


前言

本文我们学习VCU开发中的信号处理模块的建模,再次说明下,我就是个搞能耗开发的小卡拉米,文章内容来自于蹭课记的笔记,主要拿来给铁子们解解闷,一些VCU相关的专业性的问题就不要后台私信我了,俺也不会。


本文以制动踏板开关信号及加速踏板开度信号为例,学习VCU的信号的消抖、滤波、仲裁等方法。



制动开关信号

我们前文提到,对于系统安全、可靠性考虑,通常设置两路制动开关信号,一路为常开开关,一路为常闭开关。常开开关用于制动状态的判断,常闭开关用于信号校验。当两路制动开关信号不一致时,认为制动开关信号状态有效;当两路制动开关信号一致,则认为制动开关信号状态无效,整车需进行限速、降功率等措施。

同时,由底层输入两路制动开关信号需要经过50ms消抖处理,以消除电压波动。

对于制动开关信号的处理需要完成以下工作:

【1】对于输入信号进行消抖处理;

【2】进行开关信号有效性判断

【3】对有效性指令信号进行消抖处理

【4】开关信号有效时,使用第一路开关信号,无效时,开关状态为0

消抖模块(Debounce)

消抖模块又称防反跳,其功能是通过一定时间的延后消除状态的反复改变。下面以开关状态描述其实现的方式,开关断开记为0,闭合记为1.

【1】开关初始状态断开,状态为0

【2】开关闭合,状态为1

【3】开始消抖延时,此时输出为0

【4】延时结束检测开关状态,开关仍闭合则输出为1;

【5】延时过程中开关断开,则输出为0,开关闭合后重新执行【2】

将上述过程状态画个流程图。

VCU学习笔记-VCU信号处理(2)w5.jpg

眼熟了没,稍微一加工,这不就是个 stateflow吗。

VCU学习笔记-VCU信号处理(2)w6.jpg

加个输入信号测试一下,如下图所示,当输入信号出现短暂波动时,消抖模块的输出仍保持原输出值,当信号改变且在一定延时区间后仍保持稳定,消抖模块的输出与输入信号保持一致。

VCU学习笔记-VCU信号处理(2)w7.jpg

开关有效性判断

制动开关信号的冗余设计策略如下表所示,开关信号有效时,使用第一路开关信号,无效时,开关状态为0。

Simulink中建立模型如下:

VCU学习笔记-VCU信号处理(2)w8.jpg

单元测试

对两路制动信号分别输入如下信号,根据上文开关有效判断逻辑,在2-4s内,制动信号处理模块应输出1,其他时刻均输出0。考虑到消抖延时,则输出为1的时刻为2.6~4.6s,其他时刻均为0。

VCU学习笔记-VCU信号处理(2)w9.jpg

实际输出如下图所示,满足要求,测试通过。

VCU学习笔记-VCU信号处理(2)w10.jpg


加速踏板信号

加速踏板与制动踏板类似,通常采用双通道输入,一路作为状态判断,一路作为状态监测

对于加速踏板信号的处理需要完成以下工作:

【1】踏板开度计算,根据采集到的踏板传感器电压计算踏板开度

【2】踏板信号滤波,建立一阶低通滤波器,保留低频信号。

【3】踏板信号有效性判断

【4】信号仲裁

踏板开度计算

通常通过1-D look up table模块将踏板电压信号转换为开度信号,也可以通过下式计算:

VCU学习笔记-VCU信号处理(2)w12.jpg

式中:

Pnt:计算得到的踏板开度

Vact:采集到的的踏板开度电压

Vmin:踏板开度为0时对应的电压

Vmax:踏板开度100%是对应的电压

踏板0开度与100开度对应的电压,需要根据踏板特性确定,但要留一定余地,防止踏板开度一直不为0或100。

对计算得到的踏板开度信号进行限幅及滤波处理,过滤到毛刺信号即可。

VCU学习笔记-VCU信号处理(2)w13.jpg

一阶低通滤波

我们前文讲过一阶低通滤波的基本理论公式为:

VCU学习笔记-VCU信号处理(2)w14.jpg

式中:α为滤波系数,X ( n ) 为本次采样值,Y ( n?1 ) 为上次滤波输出值,Y ( n ) 为本次滤波输出值,在simulink中实现如下:

VCU学习笔记-VCU信号处理(2)w15.jpg

踏板信号有效性判断

通常需要进行电压信号有效性及开度一致性判断,并对故障信号进行100ms的去抖。

【1】当采集到的踏板电压信号大于电压最大值或低于电压最小值时认为此路踏板信号无效。

【2】当两路踏板开度差的绝对值>5(可标定)时,上报开度不一致故障

Simulink中建模如下:

VCU学习笔记-VCU信号处理(2)w16.jpg

信号仲裁

根据故障信息处理踏板开度信号,遵循如下规则:

【1】加速踏板1故障时,故障信息为1,使用加速踏板2开度信号;

【2】加速踏板2故障时,故障信息为2,使用加速踏板1开度信号;

【3】两路信号均故障时,故障信息为3,踏板开度输出为0;

【4】两路信号均无故障,存在开度不一致故障时,故障信息为4,踏板开度使用两路开度的平均值。

【5】无故障时,故障信息为0,使用加速踏板1开度信号;

Simulink中建模如下:

VCU学习笔记-VCU信号处理(2)w17.jpg

单元测试

对两路加速踏板信号输入如下信号,根据上文逻辑判断,在0-1s,两路踏板均存在故障,输出为0;在2-2.5s,第一路踏板信号故障,输出为第二路踏板开度;4.5~5.5s,第二路踏板信号故障,输出第一路踏板信号;其他无故障时刻输出第一路踏板开度信号(由于电压信号→开度信号转换,在某些时刻可能还存在开度不一致故障,这儿不一一解析了)。

VCU学习笔记-VCU信号处理(2)w18.jpg

测试结果如下图所示:

VCU学习笔记-VCU信号处理(2)w19.jpg

结语

本文介绍了VCU信号处理模块的中制动踏板开关及加速踏板开度信号处理建模方法,并介绍了消抖及低通滤波函数的建模方法。其他数字信号及模拟信号处理方式可适当参考,希望对给铁子们了解VCU开发有所帮助。


快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 4-3-2025 22:21 , Processed in 0.631963 second(s), 36 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.