c#算法(9)——信号消抖处理

前言:

在自动化软件开发中,经常要读取一些IO信号,有时候我们会认为一个信号持续了一段时间才认为这是一个真实有效的信号,如果持续的时间过短就不能认为该信号是一个有效信号,所以就要对信号的持续时间进行一个判断,也叫作消抖处理(消除信号的瞬间抖动),下面就是详细的消抖过程,并用图形做了演示:

一、无抖动信号效果

正常情况下,5秒才认为有一个真实的信号,由于时间设置了20秒,所以采集到了3个真实的信号,如下:
c#算法(9)——信号消抖处理_第1张图片

二、加入抖动信号的效果

如果在采集信号的过程中,每当信号的有效时间快要达到5秒的时候,这时加入一个干扰信号,这样就会导致该信号的持续时间少于5秒,这样该信号就不会被软件识别为是一个真实的信号,如下:
c#算法(9)——信号消抖处理_第2张图片
从上图可以看出,由于干扰信号的加入,曲线在很长一段时间没有捕捉到真实信号,这是因为干扰被加入以后,有效信号持续时间小于设定的5秒,这时就不认为这是一个有效信号了。
代码如下:

namespace 信号消除抖动

你可能感兴趣的:(c#上位机算法,c#,算法,开发语言)