LabVIEW开发环境中,提供了许多产生正弦信号的vi,包括Express vi、内置vi(这里仅讨论纯正弦波)。
Picture
1-1

上图中
Express VI,对应于函数》信号处理》波形生成》仿真信号
Sine Waveform.vi,对应于函数》信号处理》波形生成》Sine Waveform.vi
Sine Wave.vi,对应于函数》信号处理》信号生成》Sine Wave.vi
Sine Pattern.vi,对应于函数》信号处理》信号生成》Sine Pattern.vi

如果打开各个vi的程序框图,我们会发现:
在Express VI的程序框图中包含着Sine Waveform.vi,
在Sine Waveform.vi的程序框图中包含着Sine Wave.vi,
而Sine Waveform.vi和Sine Pattern.vi是由不同的“调用库函数节点”实现的。
 
那么在程序设计中使用那个vi更好呢?

一般来说,如果仅仅是做个试验或验证,当然是Express VI更方便。因为它是基于配置的,无须更多的图形化程序代码。

如果是做程序设计当然使用另外的三个都可以。我个人倾向是使用最后一个,Sine Pattern.vi。因为它最简单也最好理解。

下面我们就主要分析一下后面的两个vi,特别是最后一个Sine Pattern.vi(读者最好先看看这两个vi的帮助文件,这对加深理解有好处)。
 
Picture
1-2
从上图中我们看到这两个vi的外部特性只有一个差别,就是Sine Wave.vi有一个“频率(frequcecy)”输入控件,而Sine Pattern.vi中确取而代之使用的是“周期数(cycles)”输入控件。

这里需要注意的是:
Sine Wave.vi中的“频率(frequcecy)”是指的正弦信号的频率值,单位为周期/采样的归一化单位。默认值是1周期/128采样(Sample的默认值是128)。
它的输出是生成正弦波的数组。

Sine Pattern.vi中的“周期数(cycles)”是指的正弦信号的完整周期数,默认值是:1.0。
它的输出是包含正弦信号的数组。
  
由于Sine Wave.vi中的“频率(frequcecy)”的单位为周期/采样的归一化单位。所以对许多人特别是初学者(包括我)很难理解和使用。主要是频率、采样、周期、数据长度等混杂在一起,不直观且很容易搞错。所以这里建议使用Sine Pattern.vi。

Sine Pattern.vi我们可以默认使用1个周期,那它对应的“采样(Sample)”就很好理解了。下面我们结合上面的两行蓝色字略做分析。
第一行蓝色字表述的是:Sine Wave.vi生成的是正弦波的数组。数组的长度与频率、采样等参数有关,不固定。或者说每个完整的信号周期包含有多少采样点不直观,还需要换算得出。 

第二行蓝色字表述的是:Sine Pattern.vi生成的是正弦信号的数组。数组的长度(1个完整周期)只与采样参数有关,是固定长度的。换句话说,我们可以任意确定正弦信号的一个完整周期内取多少个采样点。对于上面的默认参数是是一个完整正弦信号周期内取128点(也就是数组的长度)。
  
Picture
1-3 等效128点的示意图
那使用Sine Pattern.vi输出信号的频率是多少?如何设定?
且等我们下回分解。
 
Picture
 


Comments

求助
11/25/2010 04:22

求助关于信号发生器的问题,QQ303924823
急需帮助!!!

Reply
labview7i
11/25/2010 07:25

我没有QQ
请发信到我的电子邮箱

Reply
lwj
03/17/2011 07:06

你的电子邮箱是多少呀?

Reply
labview7i
03/17/2011 20:18

labview@263.net

已经有QQ,参见个人主页!

Reply
07/16/2012 19:46

Appreciate your details

Reply



Leave a Reply


Google Analytics