当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]引言在日常的测试测量中,经常使用数据采集卡采集数据。但是很多数据采集卡往往通过PCI总线完成数据的传输,它有诸多弊端,例如操作不便,受限于计算机插槽数量和中断资源,

引言

在日常的测试测量中,经常使用数据采集卡采集数据。但是很多数据采集卡往往通过PCI总线完成数据的传输,它有诸多弊端,例如操作不便,受限于计算机插槽数量和中断资源,现场信号对计算机安全有威胁,计算机内部的强电磁干扰对被测信号也会造成很大的影响,最耗时最复杂的数据分析却由用户通过第三方软件(如VC,VB等) 在PC机上编写上位机软件来完成,因此用户不得不在这方面花费大量精力。这些问题都遏制了基于PCI总线的数据采集系统的进一步开发和应用,因此迫切需要设计一种更为简便通用的高速数据采集通信系统来完成数据采集以及与计算机的数据交互。

近年来通用串行总线(USB)以即插即用等技术优势得到了广泛的应用,INTEL等公司最近公布了USB 3.0主控制器规范,该标准的数据传输速率有望达5Gbps,且支持双向同时传输,完全可以满足实时数据采集的要求。LABVIEW是美国NI公司基于图形化编程语言的虚拟仪器开发环境,内置信号采集、测量分析与数据显示功能,集开发、调试、运行于一体,其交互式的Express VI 易与各种范围的I/O信号连接,可以非常容易地与各种主流的现场总线通信以及与大多数通用数据库链接,大大简化了开发进程。如果根据DSP本身的特点,把 DSP集成到采集卡上,并把数据采集和部分数据处理工作留给DSP来完成,然后计算机再利用LABVIEW强大的数据处理显示功能,这无疑将大大提高测量速度和精度。

系统总体设计方案

本文提出了一种基于LABVIEW的USB接口高速数据采集系统的设计,充分利用DSP丰富的片上外设以及高性能的数字信号处理能力,将采集的数据经DSP处理后通过高速USB接口传输到PC机上,通过LABVIEW软件按照用户的特定要求来处理并显示。

TMS320F2812型DSP芯片是TI公司推出的具有高速处理能力的高精度32位定点数字信号控制器,指令速度高达150MIPS,片内集成了模数转换器(A/D转换器)、脉宽调制电路、捕获单元、光电编码器、串行外设接口等模块,为进一步拓展 DSP的应用领域提供了丰富的资源。本设计采用TMS320F2812芯片(DSP)作为数据采集与控制单元,以CYPRESS公司的高速USB接口芯片 CY7C68001为基础,利用DSP片上A/D转换器采集数据,经处理后把数据通过USB总线传输至PC机,PC机接收到数据后按照用户的要求通过 LABVIEW处理并显示数据。该系统主要有三部分组成:4通道被测信号调理部分、数据采集控制处理部分和上位机控制面板部分,系统总体框图如图1所示。

系统硬件设计

信号调理模块

由于被测输入信号范围为-15V~+15V,而DSP片上高速A/D转换器要求输入信号必须为0~3V,所以需要对被测信号进行调理。

信号调理模块主要由高速运算放大器AD8028组成。很多运放都有这样一个特点:当输入信号接近门槛电压时,输出从一个差分对到另一个差分对变换时会产生失真,再加上信号调理模块对输入信号衰减的比例很大,如果设计不当误差会更大,因此运放的选择非常关键。AD8028是Analog Devices公司的轨到轨输入输出的高速运算放大器,工作电压2.7V-12V,共模抑制比110dB,带宽190MHz,压摆率100V/μS,它有一个突出的优点:即允许用户通过片上特定的引脚选择门槛电压,这无疑大大减小了失真,因此AD8028是一个理想的选择,其单通道信号调理模块电路图如图 2所示。

数据采集模块

DSP片上ADC模块是可配置为2个独立的8通道模块、也可以级联构成一个16通道的带流水线的 12位ADC,最高采样速率12.5MHz,流水线转换时间是80ns,单次转换时间是200ns。该模块主要由前向模拟多路复用开关、采样/保持电路、变换内核、结果寄存器、排序器、电压参考等部分组成,ADC模块的功能框图如图3所示。

USB从接口CY7C68001模块

CY7C68001集成有USB2.0收发器(物理层)、USB2.0串行接口引擎SIE(链路层)、4kB的FIFO和电压调节器、锁相环,支持高速(480Mb/s)或全速(12Mb/s)传输,3.3V操作电压,具有同步与异步的FIFO接口,支持USB2.0协议要求的全部4种传输方式(控制传输、中断传输、批量传输和同步传输),可以满足用户对各种数据传输方式的需求。片上的串行接口处理器(SIE)能完成大部分的USB协议操作,使用户可以摆脱复杂的协议细节,简化用户配置代码,加快程序开发过程。但是由于不带MCU内核,所以USB 应用层协议应该由DSP编程实现,USB固件的加载必须靠DSP控制来完成。

本设计将CY7C68001映射为DSP的外设,占用DSP的外扩区域XINTF0空间,地址分配如下:FIFO2,FIFO4,FIFO6,FIFO8和命令口的地址分别为000,001,010,011,100,采用并行异步读写方式完成二者之间数据和命令的交换。当CY7C68001的地址线FIFOADR[2:0]为100时,选中CY7C68001的命令口,通过CY7C68001的命令口,可以访问其内部37个寄存器、Endpoint0缓冲器(64个字节FIFO)和描述表(500个字节FIFO)等。CY7C68001中断信号 INT#和4个状态信号READY、FLAGA、FLAGB、FLAGC分别与DSP的外部中断1 (XINT1), GPIOA0,GPIOA1,GPIOA2,GPIOA3相连。在实际应用中,由于通信速度达480Mb/s,所以要对电源进行退耦处理, 另外CY7C68001最好使用24MHz有源晶振以增强系统的抗干扰能力,硬件电路图如图4所示。

系统软件设计

传统的开发USB应用系统的步骤是:先用Windows DDK(设备驱动程序开发包)或第三方开发工具(如Driver Studio)开发USB驱动程序,然后用Visual C++编写DLL(动态连接库),最后再调用DLL来开发应用程序。本文介绍一种简单快速开发USB接口应用系统的方法,它直接在LABVIEW环境下通过NI-VISA开发能驱动用户USB系统的应用程序,完全避开了以前开发USB驱动程序的复杂性,大大缩短了开发周期。

LABVIEW及其对VISA的调用

VISA(Virtual Instrument Software Architecture)是一个用来与各种仪器总线进行通讯的高级应用编程接口(API),不受平台、总线和环境的限制,可用来对USB、GPIB、串口、VXI、PXI和以太网系统进行配置、编程和调试。当进行USB通信时,VISA提供了两类函数供LABVIEW调用:USB INSTR设备与USB RAW设备。USB INSTR设备是符合USBTMC协议的USB设备,可以通过使用USB INSTR类函数控制,通信时无需配置NI-VISA;而USB RAW设备是指除了明确符合USBTMC规格的仪器之外的任何USB设备,通信时要配置NI-VISA。[!--empirenews.page--]

(1)配置NI-VISA的步骤

①使用Driver Development wizard(驱动程序开发向导)创建INF文档;

②安装INF文档,并安装使用INF文档的USB设备;

③使用NI-VISA Interactive Control(NI-VISA互动控制工具)对设备进行测试,以证实USB设备已正确安装,并获得USB设备的各属性值。

(2)与Nl-VISA相配合的LABVIEW模板中VI子节点

ViOpen,打开并指定VISA resource name的设备的连接;

ViProperty,VISA设备的属性子节点,可以设置端点或传输方式;

ViWrite,向VISA resource name指定的设备写入数据;

ViRead,从VISA resource name指定的设备读出数据;

ViClose,结束设备读写并关闭与指定设备的连接。

(3)USB RAW设备读写的操作

USB RAW设备的读写流程图如图5所示。

前面板部分

LABVIEW是NI公司开发的一种基于图形程序的编程语言,用户利用创建和调用子程序的方法编写程序,使创建的程序模块化且编制简单直观。一个LABVIEW程序分为3部分;前面板、框图程序和图标/接线端口。前面板提供与用户交互的图形化界面,通过面板上的各种按钮、开关等控件可以实现对整个系统的操作或控制;实时波形显示窗口能对产生的信号波形进行预览和监视。还可以通过LABVIEW波形显示器自带的功能对波形进行观察和测量,对稳定的周期信号可以直接准确地读出幅值和频率,采集的正弦波波形如图6所示

结束语

随着电子计算机的广泛应用,社会的数字化程度越来越高,数据采集也越来越重要,本系统是一种通用的高速数据采集系统,可用于生物电波、电子学频谱、声波分析等瞬态信号的实时采集和观察等场合。其中基于USB总线的高速数据采集系统具有可靠性高、数据不丢失、抗干扰性强、便于数据传输和处理等优点,因而具有良好的应用前景和实用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

USB接口,英文全称为Universal Serial Bus,中文含义是“通用串行总线”。它是一种快速的、双向的、同步传输的、廉价的并且可以进行热拔插的串行接口。USB接口不仅广泛应用于个人电脑和移动设备等信息通讯产品...

关键字: usb接口 USB Type-A

NI提供的软件包经济省时,不仅帮助开发人员节省时间,还为创客提供了新的机遇

关键字: LabVIEW 自动化测试系统

强大的图形化编程工具使整个测试和测量过程的各个方面实现可视化

关键字: LabVIEW 图形化编程工具

摘要:对于每一型新机试飞,或者是重大的研究性试飞和验证试飞,都必须实施遥测监控。现基于TTS(TextToSpeech)语音合成技术,结合飞行试验遥测监控系统的不足,利用TTS引擎在LabVIEW开发环境下设计并实现了遥...

关键字: 飞行试验遥测监控系统 TTS LabVIEW

在科研以及应用软件领域,LabVIEW和MATLAB作为比较常用的2款工具,相信很多人都用过吧。简单的概括一下,LabVIEW侧重测试测量和数据采集,MATLAB侧重科学计算和数据分析。

关键字: LabVIEW matlab 混合编程

摘要:利用单片机和虚拟仪器LabVIEW在PC端设计了温湿度测量及控制系统,用于温湿度数据监测。该系统上位机为PC端监控界面,下位机为单片机,单片机采集温湿度数据,并将采集到的数据通过串口发送给监控界面进行监测和管理。该...

关键字: DHT11 LabVIEW 单片机

摘要:当前闭环步进电机在自动化设备中的应用越来越广泛,故为了进一步满足闭环步进电机的应用需求,采用LabVIEW上位机+运动控制卡+驱动器模块的控制方案进行了多轴运动系统的设计,通过设计的上位机软件实现闭环步进电机的实时...

关键字: 闭环步进电机 精度测试 LabVIEW

摘要:为满足某扭矩检测试验标准要求,基于LabView设计开发了一款扭矩检测装置,该装置能检测某类零部件的断裂力矩,满足试验标准要求,其他零部件的扭矩也可在该装置上检测。类似的扭矩装置可参考该装置进行设计。

关键字: 伺服电机 LabVIEW PLC

在下述的内容中,小编将会对LabVIEW的相关消息予以报道,如果LabVIEW是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: LabVIEW 测试测量 NI

一直以来,LABVIEW都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来LABVIEW的相关介绍,详细内容请看下文。

关键字: LabVIEW 测试测量 测试仪器
关闭
关闭