虚拟信号发生器设计

  • 格式:doc
  • 大小:528.00 KB
  • 文档页数:12

下载文档原格式

  / 12
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

综合设计实验报告信息工程与自动化学院自动化系题目:虚拟信号发生器设计

姓名:

学号:

专业:

设计时间:2013.6.1

1.题目要求

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

LabVIEW是一种图形化编程语言,作为数据采集和仪器控制软件的标准被广泛应用于工业界、学术界和研究性实验室。LabVIEW是功能强大、灵活的多平台仪器和分析软件系统。通过采用虚拟仪器开发语言LabVIEW开发一个积分微分器,阐述基于LabVIEW的虚拟仪器在模拟电路实验中应用的实践性,并完成系统的仿真调试,让学生能够真正地的理解并完全地掌握LabVIEW技术。

要求:1)掌握虚拟仪器系统软件开发工具

2)掌握labview的图形编程方法

3)掌握NI-DAQ使用方法。

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

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

2.方案设计与论证

经过仔细思考之后,我去查阅了很多相关资料。最后确定了设计的总体思路。用Labview 软件设计的过程是先进行程序框图的设计,然后再设计前面板。首先是确定函数信号发生器可以产生哪些波形,然后是各个波形怎样实现相互切换,最后是怎样控制波形的产生。

我从一些资料中受到启发,知道了我需要解决四个大问题:

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

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

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

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

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

主程序流程图

3.程序的前面板和程序框图

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

产生波形的方法有很多,可以用【仿真信号】、【信号生成】等。我选择的是【波形生成】,即正弦波形(),它一共有四个参数:频率、幅值、相位、直流偏移量。只要我把四个参数都设置为变量,就能实现各个参数的调节,进而产生能满足不同要求的波形。达到一个虚拟仪器的功能。

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

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

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

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

接下来选择【波形生成】中的方波波形(),它一共有五个参数:频率、幅值、相位、直流偏移量、占空比。其中,占空比尤其重要,不仅要能调节,而且要准确的显示它的数值。同样,把其它四个参数都设置为变量,就能实现各个参数的调节,进而能满足我们的需要。

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

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

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

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

与上面的方法一样,选择【波形生成】中的锯齿波形(),一共有四个参数:频率、幅值、相位、直流偏移量。把四个参数都设置为变量,就能实现各个参数的调节。

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

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

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

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

选择的是【波形生成】,即三角波形(),它一共有四个参数:频率、幅值、相位、直流偏移量。同时,把四个参数都设置为变量,就能实现各个参数的调节。

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

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