• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

虚拟仪器课程设计——基于labview的函数信号发生器的设计

中文摘要

 

随着电子技术、计算技术和网络技术的高速发展,传统的电子测量仪器的功能和作用已发生了质的变化,新型的虚拟仪器应运而生。其实质是利用最新的计算机技术来实现和扩展传统仪器的功能。计算机和仪器的密切结合是目前仪器发展的一个重要方向。实验表明,设计的虚拟函数信号发生器输出信号性能优于普通传统的信号源。

虚拟仪器是1986年美国国家仪器公司(NI)提供的一种新型一起概念。其基本构成包括计算机、虚拟仪器软件、硬件接口模块等。在这里,硬件仅是为了解决信号的输入输出,软件才是整个系统的关键。当基本硬件确定后,就可以通过不同的软件实现不同的功能。虚拟仪器应用软件集成了仪器的所有采集、控制、数据分析、结果输出和用户界面等功能。使传统仪器的某些硬件甚至整个仪器都被计算机软件所代替。虚拟仪器的软件是其最核心、最关键的部分,其主要功能是对硬件执行通信和控制,对信号进行分析和处理,以及对结果进行恰当的表达和输出等。虚拟仪器的软件开发平台目前主要有两类。NI公司的Labview软件开发平台是一种专业图形化编程软件,采用图形化编程方式,结构流程清晰,但缺点是对硬件的要求较高,比较依赖NI的专用产品,对信号控制方式不够灵活。

本文所述主要是虚拟函数信号发生器的设计原理及功能。是基于Labview8.5软件的设计。能够产生正弦波、方波、锯齿波、三角波等几种波形。是以同学所接触的信号发生器的面板为基础进行的参数设置。根据现实中常用信号源的基本要求,本文设计合理的数学模型,并通过虚拟仪器和采集卡共同作用输出该模型的物理信号。

 

关键词  虚拟仪器 NI-DAQ采集卡 函数信号发生器

全部回复(19)
正序查看
倒序查看
saha
LV.5
2
2014-01-16 11:10
1 设计任务描述

 

1.1设计题目:基于labview的函数信号发生器的设计

 

1.2设计要求

 

1.2.1设计目的

 

能够熟悉利用Labview软件,并用此软件编写程序框图和构造前面板。使设计的面板更直观,漂亮。达到虚拟仪器的功能。

1.2.2基本要求

 

设计基于Labview 的函数信号发生器。

要求:1)掌握NI-DAQ使用方法。

      2)了解函数信号产生方法。

      3)输出一路占空比可调的方波信号,一路函数信号(输出信号类型可选择)。

1.2.3发挥部分

 

1)产生的正弦波、三角波、锯齿波能够调节频率、幅值、相位;方波能够调节占空比。

2)在调节的基础上能够将频率、幅值和相位的值显示出来。

 

2 设计思路

 

理解题目以后,我们又回去查阅了很多相关资料。最后确定了设计的总体思路。用Labview软件设计的过程是先进行程序框图的设计,然后再设计前面板。首先是确定我们需要的函数信号发生器一共可以产生哪些波形,然后是各个波形怎样实现和相互切换。最后是怎样来控制波形的产生。

从一些资料中受到启发,我们需要解决的一共就只有四个大问题:

<波形选择>:与我们常用的函数信号发生器相联系,根据仪器的功能,可以产生多种波形;但是我们需要的是一种波形,所以必须做好信号相互切换的功能。因此用case条件结构是最好的选择。我可以在case结构中添加多个条件分支,并用特定的数据类型表示不同的波形。在case结构中的条件选择端口加一个【文本下拉列表】,输入各个可以产生的波形(必须与条件分支中的标签一一对应),这样就可以实现波形的选择了。

<信号产生>:产生各个波形的方法有很多。比如用公式编写、有仿真信号生成、还有函数生成。但是最简单的是用【函数选板】中的【信号处理】的子选板中的【波形生成】中的【正弦波形】、【方波】、【三角波】、【锯齿波】。但是这些控件必须自己输入各种参数值。

<波形控制>:一个理想的函数信号发生器必须有一个开关,如我们所用到的函数信号发生器一样。在不需要发生器的时候就利用【开关】来控制信号的产生与否。因此,只需要在case条件结构的外面再加一个while循环结构就可以了。

<参数显示>:产生的波形的各个参数是否满足我们的要求,如果没有显示这些参数的话,我们是不能知道的。所以只需在程序框图中加一个显示控件或局部变量都可以。

以上就是整个虚拟函数发生器的设计思路。

0
回复
saha
LV.5
3
2014-01-16 11:11
@saha
1设计任务描述 1.1设计题目:基于labview的函数信号发生器的设计 1.2设计要求 1.2.1设计目的 能够熟悉利用Labview软件,并用此软件编写程序框图和构造前面板。使设计的面板更直观,漂亮。达到虚拟仪器的功能。1.2.2基本要求 设计基于Labview的函数信号发生器。要求:1)掌握NI-DAQ使用方法。     2)了解函数信号产生方法。     3)输出一路占空比可调的方波信号,一路函数信号(输出信号类型可选择)。1.2.3发挥部分 1)产生的正弦波、三角波、锯齿波能够调节频率、幅值、相位;方波能够调节占空比。2)在调节的基础上能够将频率、幅值和相位的值显示出来。 2设计思路 理解题目以后,我们又回去查阅了很多相关资料。最后确定了设计的总体思路。用Labview软件设计的过程是先进行程序框图的设计,然后再设计前面板。首先是确定我们需要的函数信号发生器一共可以产生哪些波形,然后是各个波形怎样实现和相互切换。最后是怎样来控制波形的产生。从一些资料中受到启发,我们需要解决的一共就只有四个大问题::与我们常用的函数信号发生器相联系,根据仪器的功能,可以产生多种波形;但是我们需要的是一种波形,所以必须做好信号相互切换的功能。因此用case条件结构是最好的选择。我可以在case结构中添加多个条件分支,并用特定的数据类型表示不同的波形。在case结构中的条件选择端口加一个【文本下拉列表】,输入各个可以产生的波形(必须与条件分支中的标签一一对应),这样就可以实现波形的选择了。:产生各个波形的方法有很多。比如用公式编写、有仿真信号生成、还有函数生成。但是最简单的是用【函数选板】中的【信号处理】的子选板中的【波形生成】中的【正弦波形】、【方波】、【三角波】、【锯齿波】。但是这些控件必须自己输入各种参数值。:一个理想的函数信号发生器必须有一个开关,如我们所用到的函数信号发生器一样。在不需要发生器的时候就利用【开关】来控制信号的产生与否。因此,只需要在case条件结构的外面再加一个while循环结构就可以了。:产生的波形的各个参数是否满足我们的要求,如果没有显示这些参数的话,我们是不能知道的。所以只需在程序框图中加一个显示控件或局部变量都可以。以上就是整个虚拟函数发生器的设计思路。

主程序流程图

0
回复
saha
LV.5
4
2014-01-16 11:12
@saha
主程序流程图[图片]

各部分程序框图及前面板的设计

4.1 正弦波信号的产生及参数的设计

产生波形的方法有很多,可以用【仿真信号】、【信号生成】等。我选择的是【波形生成】,即正弦波形(

这只实现了一种波形,还有其它波形。所以就涉及到了波形的选择。因此,我用了case条件结构。充分利用它的功能,我改变【选择器标签】中的数据类型,并添加所需要的条件分支。每一个分支就对应一个波形。并根据这个波形的特点,选择不同的参数。同样,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样就可以实现正弦波。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值,看是否达到要求。

正弦波的设计原理图如下所示:

0
回复
saha
LV.5
5
2014-01-16 11:12
@saha
各部分程序框图及前面板的设计4.1正弦波信号的产生及参数的设计产生波形的方法有很多,可以用【仿真信号】、【信号生成】等。我选择的是【波形生成】,即正弦波形(这只实现了一种波形,还有其它波形。所以就涉及到了波形的选择。因此,我用了case条件结构。充分利用它的功能,我改变【选择器标签】中的数据类型,并添加所需要的条件分支。每一个分支就对应一个波形。并根据这个波形的特点,选择不同的参数。同样,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样就可以实现正弦波。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值,看是否达到要求。正弦波的设计原理图如下所示:[图片]

当然,频率是有单位的。所以,我用了一个字符串函数:【格式化写入字符串】,根据要求加入了单位:“Hz”

4.2方波信号的产生及参数的设计

接下来,我设计的波形是方波。选择【波形生成】中的方波波形(

涉及到的波形切换,用case条件结构,充分利用它的功能,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样既可以实现正弦波,也可以切换到其它的波形。再添加一个显示控件,调节参数的同时,也可以观测它的值。

方波的设计原理图如下所示:

0
回复
saha
LV.5
6
2014-01-16 11:13
@saha
当然,“频率”是有单位的。所以,我用了一个字符串函数:【格式化写入字符串】,根据要求加入了单位:“Hz”。4.2方波信号的产生及参数的设计接下来,我设计的波形是方波。选择【波形生成】中的方波波形(涉及到的波形切换,用case条件结构,充分利用它的功能,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样既可以实现正弦波,也可以切换到其它的波形。再添加一个显示控件,调节参数的同时,也可以观测它的值。方波的设计原理图如下所示:[图片]

频率的单位处理方法与正弦波的方法一样即可。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”

4.3锯齿波信号的产生及参数的设计

与上面的方法一样,选择【波形生成】中的锯齿波形(

再用一个case条件结构,让各参数值通过条件结构的通道,并充分利用它的结构特点,每一个分支就对应一个波形。并根据这个波形的特点,选择不同的参数。同样,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样就可以实现锯齿波。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值。

    锯齿波的设计原理图如下所示:

0
回复
saha
LV.5
7
2014-01-16 11:15
@saha
“频率”的单位处理方法与正弦波的方法一样即可。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”。4.3锯齿波信号的产生及参数的设计与上面的方法一样,选择【波形生成】中的锯齿波形(再用一个case条件结构,让各参数值通过条件结构的通道,并充分利用它的结构特点,每一个分支就对应一个波形。并根据这个波形的特点,选择不同的参数。同样,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样就可以实现锯齿波。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值。   锯齿波的设计原理图如下所示:[图片]

频率的单位处理方法与其它波形的方法一样。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”

4.4三角波信号的产生及参数的设计

选择的是【波形生成】,即三角波形(

还有其它波形,切换的方法前面已经提到过。因此,用case条件结构,充分利用它的功能,改变【选择器标签】中的数据类型,并添加所需要的条件分支。每一个分支就对应一个波形。【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值。

    三角波的设计原理图如下所示:

0
回复
saha
LV.5
8
2014-01-16 11:15
@saha
“频率”的单位处理方法与其它波形的方法一样。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”。4.4三角波信号的产生及参数的设计选择的是【波形生成】,即三角波形(还有其它波形,切换的方法前面已经提到过。因此,用case条件结构,充分利用它的功能,改变【选择器标签】中的数据类型,并添加所需要的条件分支。每一个分支就对应一个波形。【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值。   三角波的设计原理图如下所示:[图片]

频率的单位处理方法与其它波形的方法一样。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”

4.5波形控制的设计

    根据实际,当我们在使用完信号发生器以后,必须把它关掉。所以,我们设计的信号发生器如果没有开关的话,就不符合要求。解决这个问题很简单,在总的框图外面加一个while循环结构,【循环条件】处连接一个【开关】控件,并且选择【真时继续】。

    设计如下图所示:

0
回复
saha
LV.5
9
2014-01-16 11:17
@saha
“频率”的单位处理方法与其它波形的方法一样。用一个字符串函数:【格式化写入字符串】,根据图标的提示和要求加入了单位:“Hz”。4.5波形控制的设计   根据实际,当我们在使用完信号发生器以后,必须把它关掉。所以,我们设计的信号发生器如果没有开关的话,就不符合要求。解决这个问题很简单,在总的框图外面加一个while循环结构,【循环条件】处连接一个【开关】控件,并且选择【真时继续】。   设计如下图所示:[图片]
4.6 DAQ助手的创建

NI-DAQ主要是为被测对象提供激励信号。根据不同的要求选择DAQ的不同功能,例如,我们组的设计用的是D/A输出;在DAQ中就是选择【生成信号】。具体创建步骤如下:

1)在程序框图的窗口中打开【函数】选板,执行【测量I/O QUOTE

2)如下图所示,在【生成信号】中,选择【模拟输出】的【电压】输出,选择通道ao0或是ao1后,创建完成。

3)后面的提示窗口,可直接点【确定】。

0
回复
saha
LV.5
10
2014-01-16 11:17
@saha
4.6DAQ助手的创建NI-DAQ主要是为被测对象提供激励信号。根据不同的要求选择DAQ的不同功能,例如,我们组的设计用的是D/A输出;在DAQ中就是选择【生成信号】。具体创建步骤如下:(1)在程序框图的窗口中打开【函数】选板,执行【测量I/O】QUOTE(2)如下图所示,在【生成信号】中,选择【模拟输出】的【电压】输出,选择通道ao0或是ao1后,创建完成。(3)后面的提示窗口,可直接点【确定】。[图片][图片]
4.7前面板的设计

无论什么仪器设备,我们首先看到的就是它的前面板,通过前面板可以直观的看出仪器的功能及其特点。所以前面板的设计相当重要。我们应当秉持着美观、直接、特色、规范的原则设计前面板。就如人的脸面一样,第一印象特别重要。

下面是我设计的前面板,如图所示:

0
回复
saha
LV.5
11
2014-01-16 11:18
@saha
4.7前面板的设计无论什么仪器设备,我们首先看到的就是它的前面板,通过前面板可以直观的看出仪器的功能及其特点。所以前面板的设计相当重要。我们应当秉持着美观、直接、特色、规范的原则设计前面板。就如人的脸面一样,第一印象特别重要。下面是我设计的前面板,如图所示:[图片]

5 多功能信号发生器工作过程分析

5.1正弦波的工作过程及波形验证

一切准备就绪以后,点【连续运行】,此时【开关】为的状态,否则没有任何波形的输出。程序正常运行后,转动频率幅值等参数的旋钮,此时会发现显示的波形也随着改变。

例如:旋转频率值为4.9Hz幅值2.22065偏移量1.34792初始相位1.21657

验证波形图如下所示:

0
回复
saha
LV.5
12
2014-01-16 11:20
@saha
5多功能信号发生器工作过程分析5.1正弦波的工作过程及波形验证一切准备就绪以后,点【连续运行】,此时【开关】为“开”的状态,否则没有任何波形的输出。程序正常运行后,转动“频率”、“幅值”等参数的旋钮,此时会发现显示的波形也随着改变。例如:旋转“频率”值为4.9Hz,“幅值”为2.22065,“偏移量”为1.34792,“初始相位”为1.21657。验证波形图如下所示:[图片][图片]
5.2方波的工作过程及波形验证

准备就绪以后,点【连续运行】,此时【开关】为的状态,否则没有任何波形的输出。程序正常运行后,转动频率幅值等参数的旋钮,此时会发现显示的波形也随着改变。

例如:旋转频率值为3.7Hz幅值4.8356偏移量3.42139初始相位3.94333占空比50.6057

验证波形图如下所示:

0
回复
saha
LV.5
13
2014-01-16 11:21
@saha
5.2方波的工作过程及波形验证准备就绪以后,点【连续运行】,此时【开关】为“开”的状态,否则没有任何波形的输出。程序正常运行后,转动“频率”、“幅值”等参数的旋钮,此时会发现显示的波形也随着改变。例如:旋转“频率”值为3.7Hz,“幅值”为4.8356,“偏移量”为3.42139,“初始相位”为3.94333,“占空比”为50.6057。验证波形图如下所示:[图片][图片][图片]
5.3三角波的工作过程及波形验证

确定程序无误后,点【连续运行】,此时【开关】为的状态,否则没有任何波形的输出。程序正常运行后,转动频率幅值等参数的旋钮,此时会发现显示的波形也随着改变。

例如:旋转频率值为6.4Hz幅值7.83158偏移量2.40441初始相位2.90392

验证波形图如下所示:

0
回复
saha
LV.5
14
2014-01-16 11:22
@saha
5.3三角波的工作过程及波形验证确定程序无误后,点【连续运行】,此时【开关】为“开”的状态,否则没有任何波形的输出。程序正常运行后,转动“频率”、“幅值”等参数的旋钮,此时会发现显示的波形也随着改变。例如:旋转“频率”值为6.4Hz,“幅值”为7.83158,“偏移量”为2.40441,“初始相位”为2.90392。验证波形图如下所示:[图片][图片]
5.4锯齿波的工作过程及波形验证

设计完成并确定没错以后,点【连续运行】,此时【开关】为“开”的状态,否则没有任何波形的输出。程序正常运行后,转动“频率”、“幅值”等参数的旋钮,此时会发现显示的波形也随着改变。

例如:旋转“频率”值为8.9Hz,“幅值”为3.10417,“偏移量”为1.83658,“初始相位”为2.44846

验证波形图如下所示:

0
回复
saha
LV.5
15
2014-01-16 11:23
@saha
5.4锯齿波的工作过程及波形验证设计完成并确定没错以后,点【连续运行】,此时【开关】为“开”的状态,否则没有任何波形的输出。程序正常运行后,转动“频率”、“幅值”等参数的旋钮,此时会发现显示的波形也随着改变。例如:旋转“频率”值为8.9Hz,“幅值”为3.10417,“偏移量”为1.83658,“初始相位”为2.44846。验证波形图如下所示:[图片][图片]

6 主要元器件介绍

6.1 模拟示波器

示波器由显示电路显示电路、垂直(Y轴)放大电路、水平(X轴)放大电路和电源供给电路共同组成。显示电路包括偏转系统和荧光屏。

0
回复
saha
LV.5
16
2014-01-16 11:25
@saha
6主要元器件介绍6.1模拟示波器示波器由显示电路显示电路、垂直(Y轴)放大电路、水平(X轴)放大电路和电源供给电路共同组成。显示电路包括偏转系统和荧光屏。[图片][图片]

由示波管的原理可知,一个直流电压加到一对偏转板上时,将使光点在荧光屏上产生一个固定位移,该位移的大小与所加直流电压成正比。如果分别将两个直流电压同时加到垂直和水平两对偏转板上,则荧光屏上的光点位置就由两个方向的位移所共同决定。

如果将一个正交流电压弦加到一对偏转板上时,光点在荧光屏上将随电压的变化而移动。这光点距离坐标原点的瞬时偏转值将与加在垂直偏转板上的电压瞬时值成正比。如果加在垂直偏转板上的交流电压频率10Hz~20Hz以上,则由于荧光屏的余辉现象和人眼的视觉暂留现象,在荧光屏上看到的就不是一个上下移动的点,而是一根垂直的亮线了。该亮线的长短在示波器的垂直放大增益一定的情况下决定于正弦交流电压峰一峰值的大小。如果在水平偏转板上加一个正弦交流电压,则会产生相类似的情况,只是光点在水平轴上移动罢了。如果将被测信号电压加到垂直偏转板上,锯齿波扫描电压加到水平偏转板上,而且被测信号电压的频率等于锯齿波扫描电压的频率,则荧光屏上将显示出一个周期的被测信号电压随时间变化的波形曲线。

  为使荧光屏上的图形稳定,被测信号电压的频率应与锯齿波电压的频率保持整数比的关系,即同步关系。为了实现这一点,就要求锯齿波电压的频率连续可调,以便适应观察各种不同频率的周期信号。其次,由于被测信号频率和锯齿波振荡信号频率的相对不稳定性,即使把锯齿波电压的频率临时调到与被测信号频率成整倍数关系,也不能使图形一直保持稳定。因此,示波器中都设有同步装置。也就是在锯齿波电路的某部分加上一个同步信号来促使扫描的同步,对于只能产生连续扫描(即产生周而复始连续不断的锯齿波)一种状态的简易示波器(如国产SB-10型示波器等)而言,需要在其扫描电路上输入一个与被观察信号频率相关的同步信号,当所加同步信号的频率接近锯齿波频率的自主振荡频率(或接近其整数倍)时,就可以把锯齿波频率“拖入同步”或“锁住”。对于具有等待扫描(即平时不产生锯齿波,当被测信号来到时才产生一个锯齿波进行一次扫描)功能的示波器(如国产ST-16型示波器、SBT-5型同步示波器、SR-8型双踪示波器等等)而言,需要在其扫描电路上输入一个与被测信号相关的触发信号,使扫描过程与被测信号密切配合。这样,只要按照需要来选择适当的同步信号或触发信号,便可使任何欲研究的过程与锯齿波扫描频率保持同步。

 6.2  NI-DAQ采集卡

可利用编程语言驱动程序函数,从而驱动数据采集卡,设计者只需正确设置输入参数,就可实现数据采集的任务,而不需要编写代码程序。一个典型的数据采集卡的功能有模拟输入、模拟输出、数字I/O、计数器/定时器等,这些功能分别由相应的单元电路来实现。

模拟输入是采集卡最基本的功能。它一般由多路开关、放大器、采集/保持电路,以及A/D转换器来实现,通过这些部分,一个模拟信号就可以转化为数字信号。A/D转换器的性能和参数直接影响着模拟输入的质量,要根据实际需要的精度来来选择合适的A/D转换器。模拟输出通常是为系统提供输出或控制信号。数模转换器的建立时间、转换率、分辨率等因素都会影响模拟输出信号。建立时间和转换率决定了输出信号幅值改变的快慢。建立时间短、转换率高的D/A转换器可以提供一个较高频率的信号。应该实际需要选择D/A转换器的参数指标。

数据采集(DAQ)是通过DAQ卡采集数据和输出数据。通常一块DAQ卡能实现多种功能,其中包括模数转换(A/D)、数模转换(D/A)、数字输入输出(DI/O)和计算器/定时器功能。

0
回复
saha
LV.5
17
2014-01-16 11:25
@saha
由示波管的原理可知,一个直流电压加到一对偏转板上时,将使光点在荧光屏上产生一个固定位移,该位移的大小与所加直流电压成正比。如果分别将两个直流电压同时加到垂直和水平两对偏转板上,则荧光屏上的光点位置就由两个方向的位移所共同决定。如果将一个正交流电压弦加到一对偏转板上时,光点在荧光屏上将随电压的变化而移动。这光点距离坐标原点的瞬时偏转值将与加在垂直偏转板上的电压瞬时值成正比。如果加在垂直偏转板上的交流电压频率10Hz~20Hz以上,则由于荧光屏的余辉现象和人眼的视觉暂留现象,在荧光屏上看到的就不是一个上下移动的点,而是一根垂直的亮线了。该亮线的长短在示波器的垂直放大增益一定的情况下决定于正弦交流电压峰一峰值的大小。如果在水平偏转板上加一个正弦交流电压,则会产生相类似的情况,只是光点在水平轴上移动罢了。如果将被测信号电压加到垂直偏转板上,锯齿波扫描电压加到水平偏转板上,而且被测信号电压的频率等于锯齿波扫描电压的频率,则荧光屏上将显示出一个周期的被测信号电压随时间变化的波形曲线。  为使荧光屏上的图形稳定,被测信号电压的频率应与锯齿波电压的频率保持整数比的关系,即同步关系。为了实现这一点,就要求锯齿波电压的频率连续可调,以便适应观察各种不同频率的周期信号。其次,由于被测信号频率和锯齿波振荡信号频率的相对不稳定性,即使把锯齿波电压的频率临时调到与被测信号频率成整倍数关系,也不能使图形一直保持稳定。因此,示波器中都设有同步装置。也就是在锯齿波电路的某部分加上一个同步信号来促使扫描的同步,对于只能产生连续扫描(即产生周而复始连续不断的锯齿波)一种状态的简易示波器(如国产SB-10型示波器等)而言,需要在其扫描电路上输入一个与被观察信号频率相关的同步信号,当所加同步信号的频率接近锯齿波频率的自主振荡频率(或接近其整数倍)时,就可以把锯齿波频率“拖入同步”或“锁住”。对于具有等待扫描(即平时不产生锯齿波,当被测信号来到时才产生一个锯齿波进行一次扫描)功能的示波器(如国产ST-16型示波器、SBT-5型同步示波器、SR-8型双踪示波器等等)而言,需要在其扫描电路上输入一个与被测信号相关的触发信号,使扫描过程与被测信号密切配合。这样,只要按照需要来选择适当的同步信号或触发信号,便可使任何欲研究的过程与锯齿波扫描频率保持同步。 6.2 NI-DAQ采集卡可利用编程语言驱动程序函数,从而驱动数据采集卡,设计者只需正确设置输入参数,就可实现数据采集的任务,而不需要编写代码程序。一个典型的数据采集卡的功能有模拟输入、模拟输出、数字I/O、计数器/定时器等,这些功能分别由相应的单元电路来实现。模拟输入是采集卡最基本的功能。它一般由多路开关、放大器、采集/保持电路,以及A/D转换器来实现,通过这些部分,一个模拟信号就可以转化为数字信号。A/D转换器的性能和参数直接影响着模拟输入的质量,要根据实际需要的精度来来选择合适的A/D转换器。模拟输出通常是为系统提供输出或控制信号。数模转换器的建立时间、转换率、分辨率等因素都会影响模拟输出信号。建立时间和转换率决定了输出信号幅值改变的快慢。建立时间短、转换率高的D/A转换器可以提供一个较高频率的信号。应该实际需要选择D/A转换器的参数指标。数据采集(DAQ)是通过DAQ卡采集数据和输出数据。通常一块DAQ卡能实现多种功能,其中包括模数转换(A/D)、数模转换(D/A)、数字输入输出(DI/O)和计算器/定时器功能。

0
回复
saha
LV.5
18
2014-01-16 11:26
@saha
[图片]
小结

 

这一次虚拟仪器的课程设计的时间比较短,就一周时间。于是同学们都紧锣密鼓的张罗怎样让自己的作品做得更好,功能更多,前面板更具有创意。于是同学们都积极思考、相互交流。因此,时间就过得很快,也很有意义。

当然过程中遇到困难时不可避免的,要想做成一个让人满意的作品必须对程序框图中的程序反复测试和修改。由于老师为了培养我们独立解决问题的能力,因此一般不参与设计。在同学的帮助下,最后终于把问题都解决了。有时侯我们也会遇到自己确实不能解决的问题,老师还是会提出解决问题的建议,或是指点应该改进的方向。

课程设计是对所学知识的综合理解与应用,它不仅要求我们对Labview软件特别熟悉,而且还要求我们能够熟练运用各个【编程】中的各种函数结构。通过设计函数信号发生器,让我懂得发现问题,分析问题,并解决问题可以提高自己的能力。同时通过分析解决问题,加深对所学知识的理解与掌握。通过这次课程设计我学到了很多书本上永远都学不到得东西,

在课设期间我几乎每天都去实验室认真思考更好的办法,将自己的想法通过程序框图,并在前面板上面显示出来。很多时候我坚持认为自己的想法没有问题,但就是怎么也不能达到预期的结果。甚至我还怀疑是不是机器出了什么问题。当经过很多次的修改、重新运行,终于成功的那一刻,内心的成就感和自豪感是那么的强烈。

经过这次课程设计,虚拟仪器的强大作用和它巨大的发展潜力让我很振奋。原来人类的技术进步得那么快,为了让损失最小,通过这种特殊的软件来创造出更好的作品。对该信号发生器所产生的信号进行测试,结果表明该信号源输出正弦信号性能优于普通传统信号源产生的信号。虚拟仪器不是计算机功能简单的扩展,也不单纯是传统智能仪器的替代品,虚拟仪器有着广阔的发展前景。同时这次课设的主要目的就是让我们通过不断的练习,并利用它来解决实际的问题。实践是检验真理的最佳途径。通过这周的课设和学习,我知道了自己的不足。

本次的课程设计虽然结束了,但是努力学习并没有结束。我也收获了很多,也学会了团队精神的重要性,个人的能力是有限的,团结才能有力量,我们都尽自己所能来完成这次课程设计。这是对我们所学的课本知识的测验,也是对是否能快速吸收新的知识的一种考验。通过这次课设,我的知识面又得到了扩展。

0
回复
石头心
LV.1
19
2015-12-16 12:59
@saha
各部分程序框图及前面板的设计4.1正弦波信号的产生及参数的设计产生波形的方法有很多,可以用【仿真信号】、【信号生成】等。我选择的是【波形生成】,即正弦波形(这只实现了一种波形,还有其它波形。所以就涉及到了波形的选择。因此,我用了case条件结构。充分利用它的功能,我改变【选择器标签】中的数据类型,并添加所需要的条件分支。每一个分支就对应一个波形。并根据这个波形的特点,选择不同的参数。同样,【分支选择器】的数据类型必须与【选择器标签】中的数据类型一致。这样就可以实现正弦波。为了使我们所得到的波形的参数更加准确,可以再添加一个显示控件;这样,调节参数的同时,也可以观测它的值,看是否达到要求。正弦波的设计原理图如下所示:[图片]
您好,看了您的帖子受益匪浅,作为一个初学者,我在学习过程中有两个控件找不到(用的是8.5版本),并以图片形式发送过去,希望您能帮助解决。谢谢

0
回复
2015-12-16 13:32
占座留个记号,不知加了采集卡后的实际效果如何?
0
回复