自动测机器信号稳定频率

2019-07-17 09:50发布

现在有一台机器,通常使用低波滤通来测定其在不同的速度时候传感器的稳定频率值。

由于labview的低波滤通控件的截止频率使用控件输入的,必须靠人工一个一个的实验,十分麻烦,

现在想让LABVIEW自动测在不同速度下,不同的稳定频率值,并且记录下来,

换句话讲,滤波器的截止频率输入值应该是数组而不是单一控件,因为控件只有一个值,机器速度变化的时候,系统频率也在变,无法自动换下一个截止频率,

不知道哪位大侠,有非常高超的LABVIEW编程技巧,尤其是自适应滤波类 或变截止频率滤波器的编程经验,能够指点迷津,重谢。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
ferriteemi5149
2019-07-18 17:44
收到,写得非常好,给个赞。虽然你写的程序与我们的实际需要还有一定的差距,但是,100积分将会在未来赠送给你,如果你的程序在86上运行成功地化。
你的程序里面阶数是一个整形变量而不是个数组。理想的阶数应该是个整形数组。如果你有能力写出来的话,那就更好了。你肯定得用双重WHILE循环,只有这样,截至频率才能够和阶数形成遍历。而这样,稍有不慎,就会死机。

为啥会要求这样来?给你举个例子,看官你就明白了
比如
截止频律一般在70Hz到90Hz之间,而阶数则在3阶到12阶之间。
如果有双层循环,
4阶  70Hz
4阶  71Hz
...
4阶  90Hz
然后是5阶,遍历70到90赫兹
然后是6阶,遍历70到90赫兹,
...
然后是9阶,也就是速度最大的情况,也同样需要遍历70到90Hz。

因为全程有TDMS文件自动实时记录,所以,所有的遍历结果将会被完整地记录下来。

通过Matlab脚本的迭代处理TDMS文件,LABVIEW能很快确定,最佳的频率是多少。

现在你编写的程序阶数不是个数组,因此,遍历的时候,每一阶做完后,还需要人工的变更他的值,需要停机器的人为干

预。有几阶,就得停几回。

这就是差距。

不过还得多谢你提供了新思路。





一周热门 更多>