您的位置 首页 方案

根据LabVIEW德USB实时数据收集处理系统完成

通用串行总线USB(UniversalSerialBus)作为一种新型的数据通信接口在越来越广阔的领域得到应用。而基于USB接口的数据采集卡与传统

  通用串行总线USB(Universal Serial Bus)作为一种新式的数据通讯接口在越来越宽广的范畴得到运用。而依据USB接口的数据收集卡与传统的PCI卡及ISA卡比较具有即插即用、热插拔、传输速度快、通用性强、易扩展和性价比高级长处。

  USB的运用程序一般用Visual C++编写,较为杂乱,LabVIEW言语是一种依据图形程序的编程言语,内含丰厚的数据收集、数据信号剖析剖析以及操控等子程序,用户运用创立和调用子程序的办法编写程序,使创立的程序模块化,易于调试、了解和保护,并且程序编程简略、直观。因而它特别适用于数据收集处理体系。运用它编制USB运用程序,把LabVIEW言语和USB总线严密结合起来的数据收集体系将集成两者的长处。USB总线能够完成对外部数据实时高速的收集,把收集的数据传送到主机后再通过LabVIEW的功用模块顺利完成数据显现、剖析和存储。

  1 、USB及其在数据收集设备中的运用

  USB 自1995年在Comdex上露脸以来,已广泛地为各PC厂家所支撑。现在出产的PC简直都装备了USB接口,Microsoft的Windows 98、NT以及Mac OS、Linux等盛行操作体系都增加对USB的支撑。USB具有速度快、设备装置和装备简略、易于扩展、能够选用总线供电、运用灵敏等首要长处,运用越来越广泛。

  一个有用的USB数据收集体系硬件一般包含微操控器、USB通讯接口以及依据体系需求增加的A/D转换器和EPROM、 SRAM等。为了扩展其用处,还能够加上多路模仿开关和数字I/O端口。体系的A/D、数字I/O的规划可沿袭传统的规划办法,依据收集的精度、速率、通道数等诸元素挑选适宜的芯片,规划时应充沛留意抗干扰性,特别对A/D收集更是如此。在微操控器和USB接口的挑选上有两种办法:一种是选用一般单片机加上专用的USB通讯芯片;另一种是选用具有USB通讯功用的单片机。USB的另一大长处是能够总线供电,在数据收集设备中耗电量通道不大,因而能够规划成总线供电。

  一个USB设备的软件一般包含主机的驱动程序、运用程序和写进ROM里边的Firmware。Windows98供给了多种USB设备的驱动程序,但还没有一种专门针对数据收集体系,所以有必要针对特定的设备编制驱动程序。虽然体系现已供给了许多规范接口函数,但编制驱动程序仍然是USB开发中最困难的一件事。一般选用Windows DDK完成,但现在有许多第三方软件厂商供给了各式各样的生成东西,如Compuware的Driver Works、Blue Waters的Driver Wizard等软件能够轻易地生成高质量的USB驱动程序。单片机程序的编制也相同困难,并且没有任何一家厂商供给了主动生成的东西。编制一个安稳、完善的单片机程序直接关系到设备功用,有必要给予充沛的注重。以上两个程序是开发者所关怀的,而用户却不太关怀。用户关怀的是怎么高效地通过鼠标操作设备,怎么处理和剖析收集进来的很多数据。因而还有必要有高质量的用户软件。用户软件有必要有友爱的界面、强壮的数据剖析和处理才干以及供给给用户进行再开发的接口。

  2、 LabVIEW及其外部动态链接库的调用

  LabVIEW是美国国家仪器(NI)公司开发的一种依据图形程序的虚拟外表编程言语,其在测验与丈量、数据收集、仪器操控、数字信号剖析、工厂主动化等范畴获得了广泛的运用。LabVIEW程序称为虚拟仪器程序(简称VI),首要包含两部分:前面板(即人机界面)和方框图程序。前面板用于模仿实在仪器的面板操作,可设置输入数值、调查输出值以及完成图表、文本等显现。框图程序运用图形编程言语编写,相当于传统程序的源代码。其用于传送前面板输入的指令参数到仪器以履行相应的操作。LabVIEW的强壮功用在于层次化结构,用户能够把创立的VI程序当作子程序调用,以创立更杂乱的程序,并且,调用阶数能够是恣意的。 LabVIEW这种创立和调用子程序的办法使创立的程序模块化,易于调试、了解和保护。LabVIEW编程办法与传统的程序规划办法不同,它具有流程图程序规划言语的特色,摆脱了传统程序言语线形结构的捆绑。LabVIEW的履行次序依方块图间数据的流向决议,而不像一般通用的编程言语逐行履行。在编写方框图程序时,只需从功用模块中选用不同的函数图标,然后再以线条相互连接,即可完成数据的传输。

  LabVIEW虽有接口卡的驱动和管理程序,但首要是针对NI公司自己出产的卡。关于一般的I/O卡,还不能直接被LabVIEW所运用,有必要采纳其他办法。其间能够用LabVIEW的 PortIn和PortOut功用,但此法运用简略,无法完成较杂乱的接口功用。而选用动态链接库,能够依据详细需求编写恰当的程序,灵敏运用 LabVIEW的各项功用。用户能够自己编写DLLs完成LabVIEW与硬件的链接。用VC++6.0编制动态链接库,首要生成DLL结构, AppWizard将主动生成项目文件,但不发生任何代码,一切代码均需用户自己键入。DLL需求的文件有:①h函数声明文件;②c源文件;③def界说文件。H文件的作用是声明DLL要完成的函数原型,供DLL编译运用,一起还供给运用程序编译运用。C文件是完成详细文件的源文件,它有一个进口点函数, 在DLL被初度调用的运转,做一些初始化作业。一般情况下,用户无须做什么初始化作业,只需保存进口点函数结构即可。def文件是DLL项目中比较特别的文件,它用来界说该DLL项目将输出哪些函数,只要该文件列出的函数才干被运用函数调用。要输出的函数名列在该文件EXPORTS关键字下面。

  3、 依据AN2131Q的单光子收集体系

  该收集体系由笔者自行开发并用于单光子计数种子活性快速检测仪中。它首要由将光子信号转为电信号的光电倍增管(PMT)及其辅佐电路和依据AN2131Q的 USB收集卡组成。PMT及其前置放大器、放大器、鉴别器等辅佐电路能将弱小的光子信号转换为15ns的规范TTL脉冲信号,脉冲信号通过分频处理后再被 USB收集,USB将收集的成果实时地传给主机处理。

  3.1 USB收集卡的硬件组成

  该收集卡由微操控器、USB通讯接口、主机以及数字I/O端口组成,如图1所示。

  笔者规划了一种同步传输办法的单片计划,运用了内置微处理器的USB规划——EZ-USB AN2131Q。它是Cypress公司的一种内嵌微操控器的80脚USB芯片,包含三个8位多功用口,8位数据端口,16位地址端口,二个USB数据端口,二个可界说16位的守时/计数器和其他输入输出端口。其选用一种依据内部RAM的解决计划,答应客户随时不断地设置和晋级,不受端口数、缓冲巨细和传输速度及传输办法的约束。片内嵌有一个增强型8051微操控器,其4个时钟的循环周期使它比规范8051的速度快3倍。选用同步传输办法将单片机的计数值实时传送给主机,而主机对计数器的操控信号则选用块传输办法传送。EZ-USB是Cypress公司推出的USB开发体系,它为USB外设供给了一种很好的集成化解决计划。EZ-USB在其内核已做了很多繁琐的、重复性的作业,这样就简化了开发代码,从而缩短了开发周期。此外,开发商还供给了配套的开发软件(包含编译软件uVision 51、调试软件dScope 51、操控软件EZUSB Controll Panel)以及驱动程序GPD(General Purpose Driver)接口,以便于用户进行开发运用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/209383.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部