本文为您介绍数据滤波组件。
功能说明
数据滤波组件可以对指定的数据进行滤波处理。为了减少对特征数据的干扰,减小干扰信号在有用信号中的比重,可以对数据进行滤波处理。本组件支持7种滤波方法,包括限幅滤波,中值滤波,滑动平均滤波,一阶滞后滤波,FIR滤波,最大值滤波,最小值滤波。
计算逻辑原理
以下计算公式涉及的参数定义:
t表示本次,t-1表示前一次。
X(t)表示本次滤波输入值。
Y(t)表示本次滤波输出值。
Y(t-1)表示前一次滤波输出值。
F表示滤波有效值(前一次滤波输出值或固定值)。
A表示滤波输入值和有效值允许的最大偏差。
α表示滞后因子。
M表示滤波窗口大小。
计算公式如下:
限幅滤波:对输入信号进行限幅滤波操作,对与有效值的偏差超出上限的当前信号进行处理并输出。有效值可以是配置的固定值或者前一次的输出值。
中值滤波:对输入信号做中值滤波操作,取采样数据的中值。
滑动平均滤波:对输入信号做滑动平均滤波操作,取采样数据的平均值。
一阶滞后滤波:对输入信号做一阶滞后滤波操作,根据当前输入信号和前一时刻输出信号的加权平均来计算输出信号。
最大值滤波:对输入信号做最大值滤波操作,取采样数据的最大值。
最小值滤波:对输入信号做最小值滤波操作,取采样数据的最小值。
FIR滤波:对输入信号做FIR滤波操作。算法采用的是低通FIR滤波,其原理是将输入信号中高于截止频率的频率成分滤除,只保留低于该截止频率的频率成分。低通FIR滤波器可以有效地滤除输入信号中高频成分,实现对信号的平滑和去噪处理。
参数说明
IN端口-输入参数
参数名 | 参数描述 | 是否必填 | 输入数据类型 | 数据源类型 |
时间变量 | 滤波选取的数据时间范围。 说明 算法支持的输入时间格式为:
年月日和时分秒之间也可用大写T连接,例如:2023-01-11T12:01:00。 建议输入时间格式:yyyy-mm-dd hh:mm:ss。 输出时间格式为:yyyy-mm-dd hh:mm:ss。 | 当采样方式选择"按时间"时才需要配置。 | datetime或时间字符串 说明 若存在非时间数据,则会抛出异常。 |
|
滤波变量 | 需做滤波处理的变量。 | 是 | 整数或浮点数 说明 若存在非数值数据,则会抛出异常。 |
|
OUT端口-输出参数
参数名 | 参数描述 | 输出数据类型 |
输出 | 输出包含时间变量和滤波变量。 | 时间变量:与输入类型相同。 滤波变量:浮点型。 |
其他参数
参数名 | 参数描述 | 是否必填 | 参数默认值 | 参数范围 |
滤波类型 | 选择滤波的方法。 | 是 | 滑动平均滤波 |
|
限幅滤波
参数名 | 参数描述 | 是否必填 | 参数默认值 | 参数范围 |
滤波有效值 | 限幅滤波有效值的选择方法。
| 否 | 前一次输出值 |
|
固定值 | 限幅滤波的固定有效值。 | 否 | 0 | [-99999999,99999999] |
最大偏差 | 当前值与滤波有效值可接受的最大偏差。 | 否 | 0 | [0,99999999] |
中值滤波、滑动平均滤波、FIR滤波、最大值滤波、最小值滤波
参数名 | 参数描述 | 是否必填 | 参数默认值 | 参数范围 |
采样方式 | 滤波数据选择的方式。
| 否 | 按时间 |
|
采样时长 | 滤波窗口时长,单位:秒。 | 否 | 60 | [0,7200] |
采样次数 | 滤波窗口样本数。 | 否 | 5 | [0,1800] |
一阶滞后滤波
参数名 | 参数描述 | 是否必填 | 参数默认值 | 参数范围 |
滞后因子 | 一阶滞后滤波的系数,控制信号的平滑程度。滞后因子的取值范围是0到1之间。较大的滞后因子表示更强的平滑效果,但也会导致更大的延迟。 | 否 | 0.5 | [0,1] |
FIR滤波
参数名 | 参数描述 | 是否必填 | 参数默认值 | 参数范围 |
截断频率 | 值越小则过滤的高频信号越多。有效范围:0,0.5/运行周期(秒)。 | 否 | 0.01 | [0,0.5] |