您当前位置:首页 > 新闻频道 > 技术动态 > 正文
LabWindows/CVI平台下虚拟信号分析仪的设计

张扬  肖世德

(西南交通大学机械工程学院,四川成都610031)

摘要:针对目前传统信号分析仪功能单一、修改不易、使用不便等缺点,以LabWindows/CVI为平台,研究开发了一种多功能虚拟信号分析仪。设计时把人机交互界面的响应处理和信号采集与显示分开成两个线程运行,大大缩短用户操作的等待时间,提高了系统运行效率。该信号分析仪具备伪随机信号产生、双通道信号采集、时域分析、频谱分析、互相关函数计算等功能。实验测试表明,该虚拟信号分析仪基本功能完全实现,信号分析结果正确,说明了推广发展虚拟仪器的可行性和必要性。

关键词:虚拟仪器集成电路通信C语言信号处理时域频域测量仪器滤波干扰傅里叶变换

0引言

  虚拟仪器技术是伴随着集成电路、计算机技术和通信技术的迅速发展而产生的。它通过软件将仪器与计算机有机地融合为一体,从而把计算机强大的数据计算处理能力和仪器硬件的测量、控制能力结合在一起,大大减少了仪器硬件成本,并且显著缩小了仪器体积。与传统的固定仪器相比,用户可以根据需求,灵活地对虚拟仪器进行功能设计、维护和系统升级。

  目前能够用于虚拟仪器系统开发且比较成熟的开发工具可以分为两类:第一类是通用的可视化编程软件,主要有Microsoft公司的Visual C++和VisualBasic等;第二类是专用于虚拟仪器开发的编程软件,主要有NI公司图形化的编程环境LabVIEW和文本语言的编程环境LabWindows/CVI,以及NI公司和Microsoft合作开发的Measurement Studio等。

  多功能虚拟信号分析仪设计所采用的LabWindows/CVI是以ANSIC为核心的交互式C语言开发平台,它将功能强大、使用灵活的C语言平台与用于数据采集分析和显示的测控专业工具有机地结合起来。利用集成化开发环境、交互式编程方法、函数面板和丰富的库函数大大增强C语言的功能,为C语言的开发设计人员编写检测系统、自动测试环境、数据采集系统、过程监控系统等应用软件提供了一个理想的软件开发环境。

1  信号采集与处理的关键技术

  信号处理是指对信号进行某种加工变换或运算(如滤波、变换、估计、识别等)。广义的信号处理可把信号分析也包括在内。信号处理包括时域和频域处理。时域处理中最典型的是波形分析,例如示波器就是一种最通用的波形分析和测量仪器。把信号从时域变换到频域进行分析和处理,可以获得更多的信息。

  因此频域处理更为重要。信号处理主要是滤波,把信号中感兴趣的部分(有效信号)提取出来,抑制(削弱或滤除)不感兴趣的部分(干扰或噪声)。

1.1  信号时域处理的关键技术

  时域分析是对信号的时域波形的分析,从记录的信号中提取各种有用的信息或将记录的信号转换成所需要的形式。通过不同的时域处理方法,可以确定实测波形的幅值和时间历程。通常时域分析包括信号参数测试(峰值、有效值、均值等)、自相关、微积分、抽取等分析算法。

1.1.1  自相关分析

在测试结果的分析中,相关是一个非常重要的概念。相关是指变量之间的线性关系。变量x、y之间相关程度可以用相关系数p,,来表示:

式中:E为数学期望;u、u,分别为x、y,的均值;σ。σ,分别为x、y的标准差。

  设x(t)是某各态历经过程的一个记录样本(所谓各态历经过程是指样本的集合平均等于时间平均),x(t+下)是x(t)时移f后的样本。x(t)的自相关函数定义为:

设x(t)、x(t+T)的相关系数为p(;),(。+,),简写作Px(下)。因为z(t+r)、x(t)具有相同的均差和标准差,所以:

将式(3)的分母移项到等式的左边,就可以得到:

1.1.2互相关分析

两个随机信号x(t)和y(t)的互相关函数R。(7.)定义为:

  式(13)、(14)为离散傅里叶变换对,在时频域均为有限长且都是离散的。

  在实际工作中,常常遇到的是非周期序列,可能是有限长,也可能是无限长。若x(n)是有限长,则令其长度为N;若x(n)为无限长序列,则可用矩形窗将其截成N点,然后把这N点序列视为一个周期序列x(n)的其中一个周期,也就是说x(n)是由x(n)做周期延拓形成的。

  由上述可知,X(k)将是x(n)的傅里叶变换或是对其傅里叶变换的某种程度上的近似。

对于DFT,求出一点X(k),需N次复数乘法,求N点X(k),需N2次复数乘法。当N很大时,其计算量是相当庞大的。而快速傅里叶变换算法使Ⅳ点的DFT的计算量下降为次,从而使DFT成为信号处理中最重要、最方便的计算。

  分裂基算法是最好的快速傅里叶变换算法,该算法的基本思路是对偶序号输出使用基2算法,对奇序号输出使用基4算法。算法推导如下。

  对于N=2M点DFT,对k的偶序号项用频率抽取( DIF)基2的FFT算法,即:

对k的奇序号项用基4的算法,即:

式中:r =0,1,2,…,N/4 -1。式(15)、(16)、(17)构成了分裂基算法的L型算法结构。

1.2.2  自功率谱密度分析

一个信号可以从时域描述,也可以从频域来描述,这两种描述是存在一个对应关系的。功率谱分析能够提供信号的频域信息,是研究平稳随机过程的重要方法。对于遍历随机过程的一个样本序列,这个序列只是无穷多个可能的随机序列中的一个,因此这个序列实际上不能真正代表整个随机过程。但是不管选取哪个序列,通过该序列计算得到的自相关函数总是相同的,即由某一个序列计算得到的自相关函数能够作为对过程本质的描述。因此,可从自相关函数出发考虑信号的功率谱问题。

  P,(f)表示了信号的功率沿频率轴的分布,故称P;(f)为自功率谱密度函数。

经典谱估计的基本方法:在实际应用中,由于只能获得测量信号的有限长观察序列,因此只能用所得的有限长序列来估计信号的功率谱,这就产生了谱估计。经典谱估计的方法有直接法和间接法两种。直接法又称周期图法。设x(n)为时域信号的N点采样序列,x(k)是采样序列的傅里叶变换,则用周期图法估计的信号功率谱为:

由于X(k)可由FFT求出,所以P;(k)也可以方便地求出。需要说明的是,LabWindows/CVI使用的功率谱计算公式为:

  谱估计的另一种算法是间接法。使用间接法时,先由x(n)估计出信号的自相关函数r(m),然后对其求傅里叶变换,得到x(n)功率谱。

1. 2.3互功率谱密度分析

互功率谱密度分析类似于自功率谱密度,如果信号x(t)和y(t)的互相关函数Rxy(下)满足傅里叶变换的条件:

则信号x(t)和y(t)的互功率谱密度函数定义为:

对于一个单输入单输出的线性系统,设系统的频率响应为H(f,若其输入为x(t),输出为y(t),则有:

  故由输入信号的自功率谱和输入输出的互功率谱就可以直接得到系统的频率响应函数。所得到的H(f)不仅含有幅频特性,而且含有相频特性。

对于Ⅳ点离散序列x(n)、y(n),设其傅里叶变换为X(k、Y(k),LabWindows/CVI使用的互谱计算公式为:

2虚拟信号分析仪的设计

  本文设计的双通道多功能虚拟信号分析仪共由两大部分组成:硬件部分和软件部分。

2.1硬件部分

系统硬件采用某公司的STM32 F4开发板。使用STM32F407ZGT6内部ADC对信号进行采样。由于外部输入信号可能有负压部分,因此需要对信号进行平移。输入级采用1 Mfl下拉电阻接同相放大器的结构(下拉电阻在原理图上未画出),使输入阻抗约为1 MQ。经过缓冲结构后,将信号与参考源产生的1.5 V直流电压相加,结构采用同相加法器,如图1所示。

为了在缓冲级能够处理直流信号和负压信号,运放部分需要采用双电源供电,而开发板提供的电压只有+5 V和+3.3 V两种。由于这里需要的电流较小、噪声小,所以采用反向电荷泵来产生-3.3 V的电压,采用的芯片为TPS60400,仅需3个外部1 F电容即可以产生-3.3 V,使得整体电路简单方便。具体电路如图2所示。

参考源采用TL431产生2.495 V的电压,通过两个电阻分压产生1.5 V的参考电压,经过运放缓冲给加法器提供参考。具体电路如图3所示。

2.2  软件部分

  软件部分按功能划分为上位机和下位机。上位机负责数据处理与人机交互,下位机负责信号采样。上位机和下位机之间采用开发板自带的USB串口通信。

2.2.1上位机部分

上位机共有两个线程。第一线程利用中断的方法,主要对面板的按键和文本输入框等控件进行响应,以获取用户的设置信息。第二线程的软件流程图如图4所示,主要负责数据的采集和信号的显示。

2.2.2串口通信

  波特率设置为115 200 bit/s,信号位8位,1位终止位,无校验。上位机的串口设置为1~ 15,检测不到串口时会有提示,此时检查连线,若连线正常,打开控制面板_+设备管理器,查看开发板的端口号是否在1~15内,若不在,修改端口号。

2.2.3下位机部分

(1)下位机的主函数流程图如图5所示,主函数主要执行两个任务,一是各模块的初始化(系统时钟、ADC、定时器、串口),二是循环检测串口是否接收到数据。为了防止误收数据,设定采样率必须以“SR” (SampleRate)开头,后跟两个8位数据有效,并且为了防止设置的采样率过高,与Oxlfff按位与,使设定的采样率不大于4 096个/s。

(2) ADC采用PBO(ADC1通道8)PC4(ADC1通道14),具体设定如下。

(3)串口的端口配置和初始化设置如下。

(4)系统时钟采用168 MHz即可满足要求,定时器的设定时间公式为:

式中:Te.。为TIM3的输入时钟频率,MHz;To。。为TIM3溢出时间,us。

为了使采样率从1—4 096之间步进1时,有采样间隔时间的改变,设置分频系数(psc)为839,这样采样率与定时器计数个数( arr)之间的关系为arr=100 000/SR -1。因此需要改变采样率时,只需要根据公式计算出arr的值并修改定时器中断时间即可。这里为了分辨X通道和Y通道的数据,在两组数据发送前,发送“X”和“Y”以作区分。ADC采样为12位数据,因此传递数据时需要先发高8位再发低8位。定时器中断流程图如图6所示。

3  系统功能测试

  将温度传感器LM35输出端接入X通道,此时信号分析仪经测试得到该信号平均值为0.252 V,有效值也为0.252 V,万用表测得传感器LM35输出电压为219 mV。

  将两个温度传感器LM35输出端分别接入X和Y通道,信号分析仪经测试得到X通道信号平均值为0. 249 V,有效值为0.250 V,万用表测得连接X通道的传感器LM35输出电压为221 mV;Y通道信号平均值为0.232 V,有效值为0.233 V,万用表测得连接Y通道的传感器LM35输出电压为228 mV。

  使用函数发生器产生一个该信号分析仪量程内的正弦波,分别连接到示波器和本信号分析仪输入端,两者显示效果相近,测试结果符合预期要求。

4结束语

  传统仪器功能相对单一,并且不容易进行扩展。为顺应仪器发展的趋势,需要进行虚拟仪器的研究设计。在LabWindows/CVI环境下,通过硬件电路设计及上位机和下位机软件的编写,开发完成了虚拟信号分析仪,尤其是采用多线程数据采集技术,在响应用户操作方面取得了比较明显的效果。通过测试,该仪器能够完成数据采集、实现信号时域波形显示、相关性计算以及统计信息实时显示线性振幅谱等功能,结果正确可靠,表明了推广发展虚拟仪器的可行之性。

关键字:
About Us - 关于我们 - 服务列表 - 付费指导 - 媒体合作 - 广告服务 - 版权声明 - 联系我们 - 网站地图 - 常见问题 - 友情链接
Copyright©2014安装信息网 www.zgazxxw.com. All rights reserved.
服务热线:4000-293-296 联系电话:0371-61311617 传真:0371-55611201 QQ: 邮箱:zgazxxw@126.com 豫ICP备18030500号-4
未经过本站允许,请勿将本站内容传播或复制
安全联盟认证