GHz高频信号的LabVIEW和MATLAB混合处理新方法

发布者:Yuexiang666最新更新时间:2019-11-08 来源: 21ic关键字:高频信号  均方差  相关系数  LabVIEW  MATLAB 手机看文章 扫描二维码
随时随地手机看文章

随着技术力量的不断提升,被处理的信号的频率越来越高。例如,手机的信号便是上GHz的超高频信号。在采集这类超高频信号的过程中,系统很容易受到各种电磁波的干扰,从而使有用信号夹带各式各样的谐波成分,这就给后续的信号处理带来了很大的麻烦,诸如数据量过大,计算复杂等。因此设计一套效率高,可用性强的系统来对高频信号进行采集及处理显得尤其重要。

1 设计思路
在这篇文章中,作者讨论一种可行的方法,即是使用LabVIEW来进行数据采集,使用MATLAB作为数据处理的平台。那么如何高效的将两者结合将成为设计的关键。本文将对不同的结合方法进行实验,具体执行步骤如下:首先使用LabVIEW将高频信号采集回来并暂时保存;鉴于MATLAB强大的计算能力,作者使用它来产生一个用于比较的高采样率的波形,并将这个波形通过3种不同的技术引入LabVIEW;最后通过均方差与相关性,可行性与速度的对比,分析哪一种方法才是最好的。

2 文献调查
在文献中,作者介绍了在LabVIEW平台如何运用DAQ工具进行基本采集的相关操作。文献中的作者介绍了在MATLAB上对信号进行各种处理的基本方法。在文献中,作者展示了在NI平台上如何运用Math Script RT模块来开发MATLAB代码。文献介绍了在LabVIEW中使用MATLABscript模块进行接口设计。

3 软件介绍说明
LabVIEW是一种基于数据流的编程语言,而MATLAB是第四代编程语言,用来执行数字计算的任务。


LabVIEW的数据流编程是一种基于图标的,因而常被人们称为G语言。用这些图标连成的程序叫做VIs(虚拟仪器)。程序的接口是基于前面板的,它能够接收输入和提供输出,在前面板中各部分模块以图标连线的方式组成一个结构框架。前面板中的另外一个重要的特性是连线板,它的作用是在一个VI中以图标的方式使用另一个VI。


人们最初使用LabVIEW只是用来测量,自动化控制,但是随着LabVIEW集成了越来越多的特性,它逐渐转变成了一种完善的开发环境。G语言最大的优势就在于他并行执行的能力。
MATLAB常被人们称为第四代语言。它具有严谨的数字化矩阵操作,如果用一些简单的语言,如:C,C++,来执行这些操作的话,那不论对编程者还是计算机来说都将是非常困难的。MATLAB起初是用来计算复杂的矩阵的。它也集成了不同的特性来满足各种各样的要求。例如,添加的Simulink就是MATLAB朝图形模块化发展的重要的一步。


使用LabVIEW还是MATLAB来完成特定的功能,取决于编程者的个人爱好。但是由于某些原因,作者需要将一种编程环境的特性使用在另一种环境中,比如:将一个使用MATIAB写的代码使用在并行执行的环境中。本文主要研究了LabVIEW与MATLAB相结合的3种解决方法,并通过一个用来标度的信号发生器来分析使用3种不同方法的优劣。

4 系统
所设计的系统结构如图1所示。

a.JPG


4.1 产生信号
当要对一个高频信号(比如高达2 GHz的信号)进行采集和处理的时候,通常会设计一个高速或者超高速硬件采集电路。包括放大部分、滤波部分;A/D和D/A转换部分等,这对电路的要求非常高,要求边采集边存储,电路速度高,而且要考虑各种辐射干扰等,同时,目前市场上的高频信号发生器价格普遍昂贵。因此作者使用LabVIEW的DAQmx工具包,产生虚拟高频信号。


DAQmx产生的虚拟高频信号可调参数多,且能够产生诸如正弦波,方波锯齿波等波形。作者使用不同参数的信号,以使得结果更具有说服力。例如:频率范围:500 M~10 GHz,分辨率为10 Hz。


4.2 LabVIEW进行采集及显示
先在DAQmx定时VI中设定好采样模式及采样率,这里作者设定的是连续采样模式和1 000的采样率;接着在DAQmx读取VI中,作者设定为模拟多通道多采样2D DBL,超时设为2;最后将DAQmx开始任务VI、DAQmx停止任务VI、DAQmx清除任务VI与前面两个VI连接,这样就完成了基本的采集设计。将产生的模拟信号直接连接到波形图表VI可以很直观的看到波形。
前面板设计如图2所示。

b.JPG


其主要部分是显示采集波形的图表,和内部产生波形数据的图表。表盘和其左方的波形图是均方差的相关表述,数字控件描述的是均方差和相关系数的值。


相比起其他的信号比较法,如:基线信号比较法、信噪比和有效数据位比较法等,采用均方差来比较波形显得更加的简便,可靠。而相关性揭示了2个波形的相似度,即是2个数据间的线性关系。


采集的数据在LabVIEW中被保存为一个txt文档,这只需要将数据连线到写入文本文件VI即可。保存的数据可以被用来进行处理、分析或者是其它用途,同时这也提供了备份以防止不可遇见的事故发生。


4.3 MATLAB进行处理
MATLAB被用来执行数据计算来比较2个波形。 

4.3.1 均方差
均方差的代码实现了将2个波形数据按照矩阵的形式代入方程中,然后将所得结果返回给LabVIEW并显示出来。均方差的公式由下式给出
c1.jpg
4.3.2 相关系数
相关系数可以用以下命令实现
R=corrcoef(X) (2)
这条命令将2个矩阵(一个是采集得到的,一个是内部生成的)建立相关性,并输出计算得到的相关系数。
相关系数的公式如下
c.JPG
4.3.3 参考信号
参考信号用来与采集得到的信号数据进行均方差与相关性的对比。它由MATLAB产生,因为MATLAB拥有丰富的数学函数库及强大的各种工具箱(ToolBox),这就使得作者可以很方便灵活的产生各种参数的不同信号,而且使用MATLAB能得到较高的采样率,并且对信号的处理也比较简单,同时也避免了将参考信号引入MATLAB script模块的麻烦。

5 3种方法
5.1 第一种
为了实现第一种方法,作者运用LabVIEW的DAO工具包,设定好产生虚拟信号的参数,再将信号采集回来,并将数据保存为一个txt文件。将这个txt文件引入MATLAB,并与MATLAB内部产生的信号进行对比,通过计算得到均方差和相关系数。


5.2 第二种方法

第二种方法只使用LabVIEW一个软件,首先采集信号数据并保存,接着使用LabVIEW的MATLAB script模块产生内部信号,最后将俩信号对比并计算均方差和相关系数,如图3所示。

d1.jpg


5.3 第三种方法
第三种方法借助LabVIEW内部的Math Script RT来完成,具体步骤和第二种方法类似,如图4所示。

d.JPG


6 结果分析
实验环境为CPU:Intel Pentium D 2.8 GHz,内存:1G,显卡:GT220。系统:Windows XP。


产生高频信号为1 GHz,深度为1 024 M,重复实验10次。
对于一些小误差,如校准误差,几乎可以忽略不计,因为都是在同一个环境下试验完成的。因此作者集中分析方法的可行性,然后对比3种方法,最后得出结论哪一种是最好的。


6.1 引入txt文件
这种方法非常耗时。首先,使用LabVIEW采集得到数据并将之保存为一个txt文件,然后再将这个文件引入MATLAB。即是用户需要在打开一个软件后再打开另外一个软件来完成操作,这是很繁琐的。


从开发者的角度来说,这种方法也许很简单或者说是不那么复杂。但是,这种方法可行性最低。因为除了耗时,它还需要对这两种软件有一定的认识,因此花在查找文献上的时间也相应的增多了。


另外,这种方法增加了电脑的负担,毕竟是开了两个程序。如果你使用的是一台老电脑的话,那么这可能会降低你的工作效率。
综上,作者不建议使用这种方法。


6.2 使用MATLAB script
这种方法经过验证比上一种要好。因为用户不必打开两个应用程序来执行程序,所以相对的比较可行。


但是,这种方法也需要安装MATLAB软件,才能在LabVIEW中调用MATLAB script模块。这样就导致了程序执行的缓慢,因为用户必须等待一段时间让计算机进行切换计算。
除了操作性的难题,这种方法最主要的问题还是不能够实时计算。采集的数据必须先保存为矩阵的形式,然后再调用MATLAB script模块进行处理。这样就不仅浪费了时间,而且还需要另外的算法来临时保存数据。


6.3 使用Math Script RT
这种方法使用了内嵌的Math Script模块,它集合了LabVIEW和MATLAB的优点,而且还不需要安装另外的软件。Math Script模块没有必要调用MATLAB软件,因为它本身就能够识别800多条命令,也就是说使用。Math Script模块的话就不需要再安装MATLAB软件了。


相比上一种方法,最主要的优势除了运行快还有就是能够进行实时处理。因为其不需要对数据进行临时的数据存储,也没有丢失实时的信息,这就使得它的运行速度是最快的。测试结果如图5所示。

e.JPG



7 结论
为了最优化系统的性能,本文提倡对不同目的使用不同的软件。使用LabVIEW进行数据采集,运用MATLAB进行数据处理,这是很多项目的需要,也是很多程序员的需要。文中使用3种方法将LabVIEW与MATLAB的特性相结合:引入txt文件到MATLAB,使用MATLAB script模块,使用Math Script RT。通过分析得到的结果,证实了使用Math Script RT无论在速度和可行性方面都是最好的。


关键字:高频信号  均方差  相关系数  LabVIEW  MATLAB 引用地址:GHz高频信号的LabVIEW和MATLAB混合处理新方法

上一篇:基于LabVIEW的光伏电源监控系统设计
下一篇:应用LabVIEW与AWR软件为无线应用设计复杂电路

推荐阅读最新更新时间:2024-11-12 16:38

基于LabVIEW的弹道解算软件设计
现代导弹从出现已经过去了50多年,这50年当中导弹技术不断发展。其中包括了伴随着导弹而发展起来的新型学科-外弹道学,它不仅研究导弹飞行过程中质心的运动过程还研究了姿态控制学与制导理论等。外弹道学涉及到的技术范围广且需要各个学科相互联系。本文研究的是铅垂平面内,弹丸质心的运动轨迹,建立质心运动方程组,已知弹丸初始状态利用四阶龙格库塔方法求解发射轨迹。据此编写了LABVIEW程序实现解算过程并且将轨迹显示出来。 1 质心运动方程 研究弹丸质心的运动过程,第一步要做基本假设; 1)整个发射至击中目标的运动过程中,攻角为0。 2)弹丸是轴对称的。 3)地面为平面。 4)飞行过程中重力加速度大小不变且垂直向下。 5)科氏加速度为0
[测试测量]
基于<font color='red'>LabVIEW</font>的弹道解算软件设计
[LabVIEW]基于LV的CAN报文数据解析
今天做了这个东东​ CAN报文数据解析前面板 逻辑框图 前面板中将列表控件作为输入,自己假设一些CAN报文输入进去。​​ 列表中的PF列及为数据报文,是我们感兴趣的内容,主要解析这部分,因为输入的数据是16进制的字符串,需要输出为十进制数,并通过相应的形式(仪表或数字显示)实时地显示出来,目前只是将列表中的数据报文解析成了十进制的数列(上图右侧),下一步工作就是将其按照协议来解析转化成可读的数据。
[测试测量]
Labview中局部变量和全局变量
局部变量的作用域是整个VI,它用于在单个VI中传输数据; 全局变量的作用域是整台计算机,它主要用于多个VI之间共享数据
[测试测量]
<font color='red'>Labview</font>中局部变量和全局变量
LabVIEW设计模式系列——普遍使用值改变事件
标准: 1、当使用值改变事件时,使用单击时触发或者单击时释放开关动作。这样即保证仅仅触发一次,也保证按钮恢复默认值 标准: 1、值改变事件的优点:不论是鼠标动作还是键盘动作都能触发值改变事件,增强了程序的灵活性。
[测试测量]
Matlab的孤立逆变源的设计方案
  基于Matlab软件平台,采用双环控制策略设计的逆变源,利用Matlab-Simulink-SimPowerSystems的工具箱进行建模仿真,验证了本文所设计方案的可行性和有效性。   引言   随着太阳能、风能等可再生能源的发展,分布式发电以其环境污染少、能源综合利用率高、供电可靠等优点,逐渐成为了各国家竞相研究的热点,在美国、欧洲等技术成熟的国家和地区,以将其广泛应用在微电网中。逆变 电源 作为一种有效的电力供应源,成为了微电网的重要组成部分,并在微电网的研究和实施中得到了广泛的应用。   本文设计的基于PWM的孤立逆变电源,其控制模型采用电压外环和电流内环双环控制策略,电压外环和电流内环均采用PI控制方式。应用Ma
[电源管理]
<font color='red'>Matlab</font>的孤立逆变源的设计方案
基于LabVIEW的光谱数据采集与分析
1.引言 随着科学技术的发展和光谱分析系统的广泛研究,人们对光谱分析系统的主要指标,如光谱测量范围、分辨率、精度等方面,都提出了越来越高的要求,光谱仪现在的发展方向是微型化、自动化和高精度化。因此,本文引入了新兴的虚拟仪器技术,设计了一个基于LabVIEW的光谱分析及数据采集系统,使光谱分析系统整体性能有所提高,并且操作简单,功能较强。 2.系统设计 2.1系统结构 根据光谱分析采集系统的工作流程,将整个系统分为光学系统设计、硬件设计及应用程序设计三部分工作。光谱分析系统是典型的基于光电探测器进行测量的光电检测仪器,所以结合系统的设计要求,为了满足微型化以及低成本的要求,考虑使用线阵CCD探测器。光栅分出的光由TCD1304AP型
[测试测量]
基于<font color='red'>LabVIEW</font>的光谱数据采集与分析
MathWorks 宣布 MATLAB 与 NVIDIA TensorRT 集成来加快人工智能应用
中国北京 – 2018 年 4 月 11 日 – MathWorks 今日宣布 ,MATLAB 现在可通过 GPU Coder 实现与 NVIDIA TensorRT 集成。这可以帮助工程师和科学家们在 MATLAB 中开发新的人工智能和深度学习模型,且可确保性能和效率满足数据中心、嵌入式应用和汽车应用不断增长的需求。 MATLAB 提供了一个完整的工作流程来快速训练、验证和部署深度学习模型。工程师可以使用 GPU 资源,而无需额外编程操作,因此可以专注于应用本身而不是性能调优。 NVIDIA TensorRT 与 GPU Coder 的全新集成使得可以在 MATLAB 中开发深度学习模型,然后以高吞吐量低延迟的方式部署在
[半导体设计/制造]
基于PXI模块化仪器和LabVIEW软件
"相比于早期手动连接的台式设备,通过使用NI PXI模块化仪器和LabVIEW开发的二次监视雷达(SSR)自动测试系统,用户可以节省90%的雷达测试时间。相比于其它基于传统盒式仪器的自动测试设备,在有效节省时间的同时,此种设计还可为用户节省60%的成本。" - Vishwanath Kalkur, Captronic Systems Pvt Ltd 挑战: 运用PXI模块化仪器和LabVIEW软件开发二次监视雷达自动测试系统。 解决方案: 通过使用NI PXI模块化仪器和NI LabVIEW FPGA模块,设计一种用户自定义的且可扩展的方案,以测试雷达的全部功能。 与主雷达不同,二次监视雷达(SSR)可以通过建立双向通
[测试测量]
基于PXI模块化仪器和<font color='red'>LabVIEW</font>软件
小广播
最新测试测量文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved