LabVIEW中逐点(实时)滤波,每次运行数值不一样
来源:网络收集 点击: 时间:2024-07-27【导读】:
在LabVIEW中经常使用实时滤波(逐点滤波),输入参数都不变的情况下,如果被单次调用,每次运行的结果都会是一样的;如果被放在一个for循环或者while循环中使用,则每次运行的结果是不一样的。工具/原料moreLabVIEW原因分析1/3分步阅读
2/3
3/3
进入到labview中的逐点滤波程序框图中,可以看到,在底层其实有一个首次调用的判断,如果是首次调用则会初始化滤波参数,进行一次全新的滤波,如果不是首次调用,则会续用前一次滤波的参数和结果,进而实现逐点实时滤波。


因此,当把逐点滤波放在循环中的时候,内存中一直存在的,除了循环的第一次外,其它次循环中,该逐点滤波都是被判断为非首次调用,因为即便输入参数不发生改变,逐点滤波也会把每一次的输入参数作为新来的数值进行计算,因此就会发生,每次循环中滤波出来的数值是不一样的,而且随着循环次数的增加,输出会慢慢逼近输入,最终会跟输入一致,就相当于是一直采集到的新的数值,但是数值的大小没有发生过改变,类似于一条直线进来后进行滤波。


此外,如果把该逐点滤波封装成dll,该dll也存在这种情况,因为dll一旦加载,就一直存在于内存中,即除首次外,其余时间均为非首次调用。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1018454.html
上一篇:微信发票抬头在哪里
下一篇:通常来说,榴莲的气味越浓郁,说明?