基于USB的虚拟信号发生器设计

  • 格式:doc
  • 大小:26.00 KB
  • 文档页数:6

下载文档原格式

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

基于USB的虚拟信号发生器设计

摘要:虚拟仪器是当今仪器技术的发展热点,本文在介绍虚拟仪器的基础上提出了一种基于USB的虚拟信号发生器的设计思路,详细介绍了利用图形化编程语言LabVIEW进行仪器程序设计的方法。仪器具有波形显示、存储,而且操作简单、高速数据采集等优点。非常适合在高职院校开展虚拟仪器项目教学。

关键词:虚拟仪器信号发生器USB数据采集LabVIEW 软件

1 引言

信号发生器是高职院校实验教学中应用十分广泛的电子测量仪器。它可以产生不同频率、不同幅值的正弦波、方波、锯齿波、三角波和白噪声等常用波形信号。传统的信号发生器种类繁多,价格和应用场合存在很大差异,一般从几百元到几千元不等。应用于高校实验教学中的信号发生器主要存在外型笨重,功能单一,扩展功能差,电路元件多,维护升级成本高,不易携带等缺点。随着计算机技术、信息处理技术和电子技术的发展,近年来出现了一种基于计算机和软件设计的虚拟仪器。虚拟仪器以计算机为核心,加上一块数据采集卡和相应的软件即可实现仪器的功能,仪器的功能由软件来定义。虚拟仪器实质是将传统仪器硬件与最新计算机软件技术结合起来,以实现并扩展传统仪器的功能,它在智能化程度、处理能力、性价比等方面均

比传统仪器具有优势。实现了“软件即仪器,实验室拎着走”的新理念。

2 系统硬件设计

虚拟信号发生器由硬件和软件两大部分组成。硬件部分是一块USB数据采集卡,完成输出信号调理与信号D/A转换,即获得所需信号。软件部分包括采集卡驱动程序和以LabVIEW为平台开发的用户应用程序。

1.1 数据采集卡

虚拟信号发生器采用美国国家仪器公司(NATIONAL INSTRUMENTS,简称NI)的数据采集卡USB-6009, 它可直接插在计算机的USB接口上,其安装容易、便于携带,不受计算机插槽数量影响,可扩展性好。该数据采集卡支持单极性和双极性模拟信号输入,采样速率达48 kS/s,信号输入范围分别为-20~20 V。提供8路单端/4路差分模拟输入通道,2路独立的模拟输出通道,信号输出范围分别为0~5 V。12个的TTL数字I/O、2个32位的定时计数器。该数据采集卡支持的操作系统有:Windows 2000/NT/XP/ME/9X、Linux 等。使用的软件有LabVIEW、LabWindows/CVI等。

1.2 虚拟信号发生器性能指标

虚拟信号发生器的设计参考了传统信号发生器的功能,并结合虚拟仪器的特点与计算机强大的信息处理能力,在功能上进行了扩展,

实现了波形显示、存储以及多个参数数字显示等功能。

虚拟信号发生器主要性能指标:

输出波形:正弦波、方波、锯齿波、三角波等任意波形,波形通过选择不同函数节点实现。

频率范围:0.1~10KHz,理论上频率范围是覆盖全频段,但具体涉及到计算机和采集卡性能。

输出电压:0.1~5V峰-峰值。

其它功能:能设置频率、幅值、相位、采样信息、直流偏置、占空比等参数;能显示生成波形和输出相位;具有复位功能;能存储和显示波形,显示光标。

3 系统软件设计

虚拟示波器的硬件部分实现信号的采集传输,软件部分实现示波器的所有功能,体现了虚拟示波器的“软件即仪器,实验室拎着走”的新理念。系统中的软件采用美国NI公司的图形化编程工具LabVIEW,主要用于数据采集、分析、处理,它用图标代码代替编程语言创建应用程序,用数据流编程方法描述程序的执行,用图标和连线代替文本的形式编写程序,为虚拟仪器设计者提供了便捷轻松的设计环境。

使用LabVIEW软件开发的程序称为VI,VI包括三部分:1)程序前面板:用于设置输入数值和观察输出量,是与用户直接接触的图形用户界面,相当传统仪器的控制面板。2)程序框图:用Lab-VIEW 图形编程语言编写,是用户为完成特定功能而编写的程序,相当传统程序的源代码。3)图标/接口板:对于已经编辑好的VI,用户可以个性化它的图标,当它作为节点调用时显示的是编辑后图标。节点上的端口是子VI的输入\输出端口,用户可以在接口板上编辑。

LabVIEW采用的是自上向下的模块化编程方法,所生成的各个子程序有利于主程序的设计与实现。这种设计方法可大大减小虚拟仪器开发的难度,有利于仪器开发人员之间的分工协作。

3.1 虚拟信号发生器的软件流程

虚拟信号发生器的所有功能都由软件来定义,因此具有很大灵活性。系统软件包括前面板生成、采集卡输出、波形显示、信号分析、信号存储等模块。使用DAQmx驱动程序将波形数据放入缓冲区,然后执行模拟输出任务。为了得到需要的周期数,可以在前面板进行采样点数和采样频率的设置。

3.2 前面板设计

前面板是用户界面,由输入、输出控制和显示三部分构成。既利用了LabVIEW平台的各种优势,又考虑了传统仪器的风格习惯,利用软件生成了显示窗、调节旋钮、开关等部件,仪器的操作、调节均

由鼠标完成。屏幕左侧为参数设置区域,提供了2个通道的信号源。每个信号源可产生的正弦、方波、三角波、锯齿波、白噪声等信号波形,其参数控制包括信号幅值、频率、采样率、延迟等,用户也可根据自己的需要设置相位、偏移量、占空比等参数。2个通道的信号源可单独显示,也可合成显示,同时还提供了窗函数选择、噪声控制、采样点数选择等控制。时域加窗包括采样窗、汉宁窗、海明窗、三角窗、矩形窗、平顶窗、布莱克曼窗、凯塞窗、指数窗等窗函数。滤波器提供巴特沃斯、切比雪夫等供用户可根据自己需求选取。

3.3 程序框图设计

虚拟示波器的框图程序与相应的软面板对应,连线表示信号的流向。根据该虚拟信号发生器要实现的功能和软面板控件的布局,对应的程序框图设计如图4所示。所有控件是在(while)循环结构中连续运行,直到用户点击停止按钮退出程序。信号发生器输出信号的种类是由选择结构(Case)来实现的,当用户点击前面板波形选择按钮时,来控制不同信号的产生和输出。

4 结语

本文设计的能虚拟信号发生器实现了多种信号波形输出、数据的存储和显示、波形复位等功能。与传统由模拟器件搭建的仪器相比,该仪器集信号采集、显示及信号分析于一体,具有功能强大、操作简单、使用方便等优点。经过2年多的教学应用表明,能够替代传统的