01--概述  

        主要简单叙述在基于模型的过程中比较常用的一些算法,一个是一阶低通滤波器,一个是功能触发,另外一个是周期性触发。会简单介绍下这些算法的应用。

02--一阶低通滤波器

其计算公式为:Y(n) = A*X(n) + (1−A)*Y(n-1)

A=滤波系数;范围为0-1;
X(n)=本次采样值;
Y(n-1)=上次滤波输出值;
Y(n)=本次滤波输出值;
一阶低通滤波法采用本次采样值与上次滤波输出值进行加权,得到有效滤波
值,使得输出对输入有反馈的作用。
滤波系数越小,滤波结果越平稳,但是灵敏度越低,即本次采样值占比越低。
滤波系数越大,灵敏度越高,但是滤波结果越不稳定,本次采样值占比越高。

滤波的作用:在信号传输的过程中避免某些时刻信号值得波动比较大而造成整车上或驾驶性上的冲击感比较强,适当的滤波能够有效改善车辆在行驶过程中的抖动现象。

低通滤波pytorch_信号传输

低通滤波pytorch_开发语言_02

 当令系数A=0.8时,滤波的结果更加接近于真实值,但是不够平稳

 

低通滤波pytorch_python_03

  当令系数A=0.2时,滤波的结果比较平稳,但是远离了真实值

低通滤波pytorch_信号传输_04

 所以,滤波系数在标定的过程中需要依据具体情况而定

03--功能触发

工程上的simulink模型

低通滤波pytorch_低通滤波器_05

 内部逻辑为:

低通滤波pytorch_python_06

 当输入信号达到SwitchOnPoint时,该功能开启,达到SwitchOffPoint时,该功能关闭,而在SwitchOnPoint和SwitchOffPoint中间状态时保持上一时刻的输出值。

可以用发动机水温进行举例:

当发动机水温达到90℃时,风扇开启,当发动机水温降到85℃时,风扇关闭。在水温从85升到90的过程中,风扇保持关闭,而温度从90降为85时,风扇保持开启。

模型及仿真如下:

低通滤波pytorch_低通滤波pytorch_07

 04--周期性触发

一些功能需要进行周期性触发,比如电驱动系统中的电池自加热功能等。

低通滤波pytorch_低通滤波pytorch_08

 内部逻辑:

低通滤波pytorch_开发语言_09

在采样时间达到count数前,内部会进行自加 ,等自加达到了count数时,功能开启,标志位置1.

低通滤波pytorch_低通滤波器_10