基于USB总线的嵌入式虚拟仪器的设计_第1页
基于USB总线的嵌入式虚拟仪器的设计_第2页
基于USB总线的嵌入式虚拟仪器的设计_第3页
基于USB总线的嵌入式虚拟仪器的设计_第4页
基于USB总线的嵌入式虚拟仪器的设计_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于USB总线的嵌入式虚拟仪器的设计        摘要:针对传统虚拟仪器不具有即插即用、热插拔等功能,提出了基于系统和USB总线技术构建嵌入式虚拟仪器的设计方案和具体实现。同时在分析传统虚拟仪器不足的基础上,构建了基于USB总线的虚拟仪器体系。该嵌入式技术可以把虚拟仪器的硬件集成在嵌入式电路板上,软件固化在Flash存储器上,完成A/D转换、D/A转换以及数字滤波和数字信号处理等功能,并给出了软、硬件设计方案。设计的虚拟仪器具有智能化和良好的系统扩展性,是未来虚拟仪器的方向。关键词:虚拟仪器,嵌入式系统,通用串行

2、总线0引言虚拟仪器是以机作为测试仪器的硬件平台,通过调用不同的软件实现特定的测试功能,达到仪器的多功能快速切换,从而实现普通仪器的全部功能以及一些在普通仪器上无法实现的功能。随着后PC时代的来临,业界对虚拟仪器的智能化和小型化的要求越来越高。嵌入式系统的发展使得基于嵌入式微处理器和实时操作系统的嵌入式虚拟仪器能够满足恶劣工作环境下的便携虚拟仪器的需要。同时,基于USB总线的仪器设备克服了现有PC总线虚拟仪器的不足,具有即插即用、热插拔的优点,满足自动化测量的要求,特别适合现场信号的测试。因此,基于嵌入式计算平台和USB总线技术,设计具有数据融合和USB总线协议的通信能力的虚拟仪器成为构建测试系

3、统的新思路。1传统虚拟仪器及其缺点目前比较流行的虚拟仪器系统基本上是基于PCI/ISA总线的插卡式虚拟仪器。通过将特定的仪器功能制作在数据采集卡上,然后将其插入计算机的扩展槽中,在计算机的软硬件支持下完成测试任务1。相对于传统的仪器而言,虚拟仪器使用户可以根据具体的应用需要,设计自己的仪器系统,实现了仪器的定制化和多样化。但是,基于PCI/ISA总线的虚拟仪器存在着明显的缺点:一方面在插入数据采集卡时需要打开主机箱,由于主机上的PCI插槽有限,直接接入主机的现场测试信号对计算机的安全造成很大的威胁;同时,计算机内部的强电磁干扰对被测信号也会造成很大的影响,并且由于采用插卡模式,不便于与笔记本电

4、脑相连,进行现场数据信号的测试;另一方面,由于通用PC机主要用于办公室环境,它的电气和机械设计不以工业应用为目的,系统的可靠性差。此外,通过PC机上的Windows操作系统不是实时多任务操作系统,是为了便于用户管理和利用计算机资源而设计的。传统虚拟仪器的测试不可避免地存在着丢失数据的危险。因此,实时性、可靠性比较差。2嵌入式虚拟仪器的体系结构嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统2。构建基于嵌入式系统的虚拟仪器需要解决的技术问题集中在系统平台的构建和特定的虚拟仪器应用程序的设计等方面。基于嵌入式软

5、/硬件环境,系统的体系结构如图1所示。screen.width-461) window.open('/Newspic/2008518/933582718.jpg');" src="/Newspic/2008518/933582718.jpg" border=0> 图1嵌入式虚拟仪器的体系结构嵌入式系统的硬件平台是嵌入式操作系统和应用程序运行的硬件环境,它以嵌入式微处理器为中心,配置存储器、输入与输出(I/O设备)、通信模块等必要的外设,并根据特定的应用进行高效率地设计。针对虚拟仪器的特定应用,在以嵌入式微处理器为核心的基础上,增加数字信号处理

6、(DSP)芯片,对高速的数据流处理进行优化和数学计算,具有独立控制和实时处理的优点,可以使嵌入式微处理器从数据处理任务中解脱出来,更高效地完成其他任务,起到了加快数据采集和信号处理的作用。嵌入式系统中的软件部分以嵌入式操作系统为核心,向上提供应用编程接口(API),向下屏蔽具体硬件特性的板级支持包括BSP、USB驱动程序等。其中,嵌入式系统所使用的实时多任务操作系统(RTOS),采用优先级调度策略和时间片轮转调度策略的任务调度机制,能够充分保证系统的实时性和可靠性。虚拟仪器的应用程序是图形化界面和人机接口层与外界进行通信的,主要功能是对系统的测量参数进行设置和测量数据波形显示与分析。基于嵌入式

7、技术,可以把虚拟仪器的硬件集成在嵌入式电路板上,软件固化在Flash存储器上,完成A/D转换、D/A转换以及数字滤波和数字信号处理等功能。通过虚拟仪器的应用程序能够方便地改变硬件的功能或性能参数,实现不同场合的测试应用,从而依靠硬件设备的柔性来增强其适用性和灵活性。3基于USB总线的虚拟仪器系统基于USB总线的嵌入式虚拟仪器具有使用方便、数据传输速度快、连接灵活的特点。可以采用星型的拓扑结构构建分布式测试系统,如图2所示。screen.width-461) window.open('/Newspic/2008518/9341951.jpg');" src="

8、/Newspic/2008518/9341951.jpg" border=0> 图2嵌入式虚拟仪器的USB总线系统该系统主要由PC机、USB集线器和嵌入式虚拟仪器组成。系统的体系结构设计按照智能模块的设计思路进行,智能模块的作用是完成特定应用的测试功能。利用USB总线的优势可以实现测试方案的灵活配置和测试功能的自由扩展,即当需要添加新测试功能时,只需开发支持USB接口的相应测试功能的嵌入式虚拟仪器模块即可。USB系统中嵌入式虚拟仪器部分的USB总线接口和逻辑设备组合在一起就构成了USB设备接口,提供了传送和接收数据包的总线接口,并管理虚拟仪器设备的各种工作状态。USB设备接口的

9、开发是USB外设开发的关键,它涉及到USB协议和规范的具体实现。USB系统软件中的USB驱动程序是开发的一个难点。虚拟仪器设备可以定义为人机接口设备(HID)类,这样PC机可以直接使用Windows操作系统内置的HID类驱动程序。PC机的通信应用程序使用VisualC+调用API函数和HID驱动程序进行通信,完成和嵌入式虚拟仪器通信的功能。当插入嵌入式虚拟仪器时,主机检测该设备并通过自动加载相关的驱动程序来对该设备进行配置,并使其正常工作。1         USB技术和虚拟仪器技术结合在一起是机仪表领域研究的热点

10、,基于USB总线接口设计的嵌入式虚拟仪器具有良好的系统扩展性。嵌入式虚拟仪器可以独立完成特定的信号处理和分析,又可以通过USB总线系统组合在一起,构建大型的测试系统,完成复杂的测试功能。screen.width-461) window.open('/Newspic/2008518/93432146.jpg');" src="/Newspic/2008518/93432146.jpg" border=0> 图3硬件逻辑图4硬件系统设计嵌入式虚拟仪器从功能模块上分为:信号调理和模数转换电路、嵌入式控制模块、存储系统、液晶显示模块、USB总线接口逻

11、辑等部分,详见图3。信号调理部分主要是为了使输入的信号满足采样的电压幅度,降低系统中影响信号质量的噪声干扰。模拟信号调理电路可以根据输入的模拟信号频率、幅度、通道数等选择合适的芯片,设计时应充分考虑抗干扰的性能。在微处理器和USB控制器的设计有两种方式可供选用:一种嵌入式微处理器加上专用的USB通信芯片组成;另一种是采用具有USB通信功能的嵌入式微处理器。此外,由于采样速率较高,因而需要设计大容量的缓存,可以在同样采集频率下保存较长的连续采样信号,便于分析处理。该嵌入式虚拟仪器以三星公司的S3C44B0X微处理器为核心,该处理器基于ARM7TMDI内核,并自带8通道10位A/D转换器。配以TI

12、公司的TMS320C5416作为数字信号处理器,采用Philips公司的PDIUSBD12作为USB接口芯片。S3C44B0X微处理器与USB接口芯片PDIUSBD12通过并行接口进行数据传输,数据交换采用中断方式。系统的工作原理如下所述:输入信号首先进入模拟信号调理电路进行采样,进而送入S3C44B0X微处理器的A/D模块进行转换,并将得到的数字信号存储到系统的SDRAM存储器中。随后,接口控制器PDIUSBD12从SDRAM存储器里顺序读出数据并通过USB控制器发送到USB总线上,传输给PC机。同时,还可以在S3C44B0X微处理器控制下,利用DSP芯片进行数字滤波后,进行数字信号的分析和

13、处理,并将结果在LCD上进行显示。5软件系统设计在嵌入式虚拟仪器中,将信号采集到系统中并不意味着任务已经完成,还需要利用软件完成信号分析的工作。因此,嵌入式虚拟仪器的软件系统包括数据采集、存储、处理、显示以及USB通信等。软件系统流程图如图4所示。screen.width-461) window.open('/Newspic/2008518/93451824.jpg');" src="/Newspic/2008518/93451824.jpg" border=0> 图4嵌入式虚拟仪器的软件流程图虚拟仪器软件的最大特点是模块化,根据系统具体要求

14、编制各子程序用于解决各个子任务,然后再将它们集成到一套完整的应用系统中。虚拟仪器中有对多个输入的信息进行数据融合的功能。如何由采集到的数据最大限度的提取出有用信号都属于数据融合的范畴。可以采用的算法有:加权平均法、卡尔曼滤波、D2N证据推理法、最优算法、遗传算法等。此外,虚拟仪器应用程序还包括信号的频域分析如DFT、FFT等频谱分析功能,以及信号的时域处理包括数组数据的积分、微分、卷积和相关计算,以及统计分析计算、数值分析和计算和数字滤波器等。整个系统的USB驱动程序可分为两部分:一部分是嵌入式虚拟仪器的USB驱动程序;另一部分是PC主机端的USB驱动程序。嵌入式虚拟仪器的USB驱动程序是软件

15、系统中最重要的组成部分之一,用来实现仪器硬件的通信和控制功能。采用C语言在嵌入式开发平台下进行驱动程序的设计。智能虚拟仪器的USB驱动程度应提供四种功能:从主机中接收数据;向主机发送数据;启动和重新设定参数以及能够产生同步的控制信号。为此,需要完成如下操作:设备复位,硬件初始化,配置PDIUSBD11的寄存器;通过读取PDIUSBD11中断输出管脚的状态,判断是否有PDIUSBD11中断;如果有中断,则读取PDIUSBD11中断寄存器,否则,转步骤;进入中断处理程序,根据中断的类型,执行相应的数据传输操作;判断设备是否需要挂起,若是,则将设备挂起,直到被USB总线唤醒;重复执行步骤。PC主机端

16、的USB驱动程序由USB主机控制器(HCD)、USB驱动(USBD)和USB设备驱动程序组成。USBD和HCD称为USB系统软件,完成USB协议相关的操作和USB设备的总线枚举,一般由操作系统提供。针对本嵌入式虚拟仪器的USB设备驱动程序可以按照HID类的规范进行驱动程序的编制,主要完成与USBD软件层接口以及管理设备的数据通信管道等工作,实现USB设备的一些特定初始化工作,并将用户应用程序的请求转化为对相应USBD驱动程度的调用。通过对用户应用程序提供API函数,从而屏蔽USB实现的细节。另外,为了扩展嵌入式虚拟仪器的功能,充分利用已有的虚拟仪器的技术,可以采用PC机作为嵌入式虚拟仪器的数据处理和协调中心,构建基于USB总线的分布式测试系统。这时,PC机作为虚拟仪器平台来分析、处理和显示数据,其高级开发语言采用Lab2View,提供人机交互、显示多窗口虚拟仪器界面、提供测试控制、数据输入和结果输出,并模拟产品面板,实现仿真功能。这是一般的虚拟仪器研究的内容,在此不作详细讨论。6结束语虚拟仪器技术是计算机技术、测试技术和仪器技术相结合的产物,正向着智能化、开放式体系结构的方向。本文提出的基于嵌入式计算平台和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论