quote:以下是引用冬日在2011-09-06 13:18:46的发言:
那个最大最小值其实没多大意义!
因为真正在应用中,最大最小值的出现不会就一个周期,比如出现了500ms的波峰,楼主的本意是要削掉这个波峰,但是因为你的循环时间只有100ms,所以第一次出现削掉了,后续的就不会再继续削掉了。
我写的是一个通用库,不针对500mS。
最大值、最小值既是平均值算法需要的,也顺便作为直接舍弃的判断依据,提高了程序运行效率。
如果一个较高的AIW值持续到一定时间,滤波后的平均值也就等于该较高的AIW值了。这就是通用库的意义。既能消除短脉冲产生的信号扰动,又能保持信号的准确。表长值越大,信号平均值输出就越滞后。所以应该根据不同信号类型选择表长。