您的位置 首页 芯闻

学习LabVIEW(九)——匹配滤波的简略仿真之二

之前在《学习LabVIEW(六)——匹配滤波的简单仿真》中,我们直接利用信号处理->信号运算->互相关节点实现了匹配滤波。框图非常简单,把信

之前在《学习LabVIEW(六)——匹配滤波的简略仿真》中,咱们直接运用“信号处理->信号运算->相互关”节点完成了匹配滤波框图十分简略,把信号序列和同步序列一起输入到相互关节点,输出便是想要的成果了。相互关节点怎么运算相互关呢?它包含了两种算法,一种是时域的卷积,另一种是频域的相乘,运用FFT进步核算功率。今日咱们自己运用数据行列和向量点积(内积)完成相互关的运算。数据行列节点发挥了一组移位寄存器的效果(见《诙谐的LabVIEW编程之乱用多个移位寄存器》),点积节点则完成了加权求和。这便是内积或许相关的运算实质。
首要,信号的结构仍是运用了MATLAB节点,这样比较便利并且便于调整,如下图所示:

MATLAB节点输出的信号是一个数组,咱们运用for-loop和索引形式的地道,将数组拆成一个一个的元素,在循环中顺次处理,相当于把一个Buffer中的数据转化成了一个标量构成的数据流。留意syncHead进入循环的地道没有运用索引形式,由于在循环内部要把syncHead作为一个全体来处理。在循环内部,将外部来的数据流中的标量数据输入到数据行列节点,然后将数据行列节点的输出与同步头运用点积节点作内积运算。运算得到的标量经过一个索引形式的地道连接到循环之外的scope,这样就能在界面上看到滤波的成果。完好的程序框图如下所示:

程序的一次运转成果如下图所示:

至于这种在时域完成的相关运算,是不是不如根据FFT的频域运算高效呢?实际上,序列点数很少时,时域的完成更高效一些。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/211859.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部