基于LabWindows_CVI的数据采集系统

更新时间:2023-05-10 15:52:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于LabWindows_CVI的数据采集系统

计 算 机 工 程 第 35 卷 第22期

Vol.35 No.22 Computer Engineering ·工程应用技术与实现·

文章编号:1000—3428(2009)22—0230—02

文献标识码:A

2009年11月

November 2009

中图分类号:TP334.7

基于LabWindows/CVI的数据采集系统

窦颖艳,肖伸平,龙永红,曾红兵

(湖南工业大学电气与信息工程学院,株洲 412000)

摘 要:针对传统数据采集系统通信接口缺乏灵活性的问题,提出一种基于LabWindows/CVI的高速数据采集系统。以Cypress公司FX2LP系列的CY7C68013A芯片作为通信和主控芯片,选择LabWindows/CVI语言搭建数据采集系统的软件平台,采用调用动态链接库方法设计上位机和数据采集系统的通信软件。结果证明,该数据采集系统完全满足设计和使用需求。 关键词:数据采集;动态链接库;软件平台

Data Acquisition System Based on LabWindows/CVI

DOU Ying-yan, XIAO Shen-ping, LONG Yong-hong, ZENG Hong-bing

(School of Electrical and Information Engineering, Hunan University of Technology, Zhuzhou 412000)

【Abstract】Since there’s a lack of unflexibility of the correspondence interface for the conventional data acquisition system, a high speed dataacquisition system is designed based on LabWindows/CVI. The CY7C68013A chip of Cypress Corporation FX2LP serial is used as the main chipand USB2.0 interface chip. LabWindows/CVI is chosen to build the software platform, and Dynamic Linking Library(DLL) is used to designcommunication software for the PC and data acquisition system. Results prove that the system can absolutely fulfill the design and use request. 【Key words】data acquisition; Dynamic Linking Library(DLL); software platform

1 概述

目前,国内外常用的数据采集控制系统采用数据采集板卡的A/D采集卡,常用的有ISA总线、PCI总线、422、485等接口形式,这种板卡不仅安装麻烦,而且易受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备[1]。通用串行总线(Universal Serial Bus, USB)的出现很好地解决了以上问题。USB具有方便快捷、即插即用、传输速率高等优点,其第2代协议USB2.0具有480 Mb/s的传输速率,完全可以满足目前数据采集控制系统对数据实时传输速率越来越高的要求。

LabWindows/CVI(C for Virtual Instrumention)是NI公司推出的交互式C语言开发平台。它以ANSI C为核心,将功能强大、使用灵活的C语言平台与用于数据采集、分析和显示的测控专业工具有机结合。它的交互式开发平台、交互式编程方法、丰富的功能面板和函数库为C语言的开发人员建立了自动化检测系统、数据采集系统、过程控制系统等提供了理想的软件开发环境[2]。本文结合两者设计了一套基于USB2.0的高速便携式数据采集系统,介绍了用LabWindows/ CVI开发数据采集系统的方法和步骤。

据进行显示、存储和报表打印,并将实验数据存入数据库。

图1 系统结构

3 系统硬件设计

3.1 CY7C68013A芯片

EZ-USB FX2LP芯片内部结构如图2所示。

集成的USB2.0收发器

2 系统结构

采集系统主要由3个部分组成:主机(能支持USB2.0协议的PC),内部包含CPU及高速缓存的USB接口控制芯片CY7C68013A-128Pin,串行A/D转换器。系统结构如图1所示。CY7C68013A-128Pin是整个系统的核心部分,它控制采集数据的类型、与主机的通信以及数据传输。TLC2543实现对采样模拟信号的A/D转换,并

将数字信号传送给CY7C68013A。上位机操作系统以Windows XP为平台,以LabWindows/CVI8.1为开发工具,以数据采集卡为转换元件,利用计算机强大的图形界面和数据分析处理能力,对测量数 ——230

图2 EZ-USB FX2LP芯片的内部结构

该USB数据采集系统采用Cypress公司的EZ-USB

FX2LP[3]系列的CY7C68013A芯片,同时集成了8051微控制

基金项目:国家自然科学基金资助项目(60874025)

作者简介:窦颖艳(1984-),女,硕士研究生,主研方向:智能控制;肖伸平、龙永红,教授、博士;曾红兵,讲师、博士 收稿日期:2009-04-22 E-mail:xsph_519@

基于LabWindows_CVI的数据采集系统

于仪器控制、自动检测、数据处理的应用软件。用器和USB2.0收发器,在提高集成度的同时加快了数据传输

速度。EZ-USB FX2LP系列有3种型号:CY7C68013A- 56Pin, LabWindows/CVI提供的控制库(包括开关、旋钮、图表等)可

该系列的芯片都CY7C68013A-100Pin, CY7C68013A-128Pin。以很容易地设计出符合实际要求、界面新颖美观的操作界面。

是针对USB2.0的,并且与USB1.1兼容。它采用另外,LabWindows/CVI提供了丰富的库函数用于数据获取、CY7C68013A-128Pin,128脚,TQPF封装,功能非常完善,数据处理和显示等功能,这为开发不同的应用软件带来了极主要包括USB2.0收发器、串行接口引擎(SIE)、增强型8051大的方便。 内核、16 KB片内RAM的高速CPU、16位并行地址总线+ 动态链接库(Dynamic Link Library, DLL)是一种基于8位数据总线、I2C总线、4 KB的先进先出(FIFO)存储器、I/O接口和通用可编程接口(GPIF)。与另外2种相比,主要是增加了16位地址总线和8位数据总线以及更多的I/O口,因此,CY7C68013A-128Pin的可扩展性最好。 3.2 同步高速数据采集芯片

系统A/D转换器的设计采用TI公司的TLC2543,是 一种具有11个模拟输入通道的串行A/D转换器,采样精度达12位,外接串行时钟最高频率可达4.1 MHz,能满足多数较高精度、多路数据采集的要求。采用简单的3线SPI串行接口,可方便地与8位MCU连接。 3.3 电源电路设计

由于计算机的USB接口具有向外供电的功能,因此采用USB总线的电源为整个电路供电。由于CY7C68013A-56Pin工作需要3.3 V的电压,而USB总线的电压为5 V,因此不能直接使用,必须进行电压调整。笔者采用LT1763CS8-3.3电压调整芯片实现5 V到3.3 V的电压转换,该芯片经过简单的电阻电容的连接便可以实现电压的调整,使用十分方便,特别适合USB总线供电的系统。

4 系统软件设计

4.1 固件的设计

采用C51编辑器,开发环境为uVision3,利用EZ-USB开发包的固件代码框架,根据数据采集卡功能需求开发固件。固件程序一般包括芯片的初始化、设备的重新列举、中断的处理、数据的接收和发送以及外围设电路的控制等。在固件程序中主要实现以下几个函数:TD_ Init函数:负责对USB 端点进行初始化设置;TD_Resume函数:该函数可在设备被外部唤醒事件唤醒且框架程序恢复处理后被调用;TD_Poll函数:负责系统中循环任务的处理,它主要是对各个端点的状态进行查询,处理各种OUT或IN端点的交互,完成数据的传输。数据采集卡的功能在TD_Poll()中完成,固件存储利用EZ-USB芯片的软功能,即用RAM存储,并由驱动程序完成固件的下载[4-6]。

4.2 USB设备驱动程序

USB需要通用驱动和下载固件驱动2个程序。通用驱动用于完成外设与用户程序的通信,可使用Cypress公司开发包所提供的已经编好的通用驱动程序ezusb.sys,一般不需要重新编写;下载固件驱动则负责在外设连接USB后把特定的固件程序下载到CY7C68013A的RAM中使CPU重启,同时模拟断开与USB的连接,以完成对外设的重新设置,使主机能够根据新的设置安装通用驱动程序,重新列举外设为一个新的USB设备。它可以用Cypress公司已经编好的驱动部分和固件程序由DDK编译后生成。在本设计方案中,采用在配置好的辅助开发环境中修改该通用驱动程序的方式。 4.3 应用程序设计

应用程序开发选用LabWindows/CVI8.1,它是在Windows环境下面向计算机测控领域的虚拟仪器软件开发平台。LabWindows/CVI是一个完全的ANSI C开发环境,适用

Windows的程序模块,它不仅可以作为一个运行模块(包含函数代码),而且可以包含程序以外的任何数据或资源(位图或

图标等)。该设计中动态链接库的设计主要解决USB数据采

集卡与应用程序之间的通信,使用LabWindows/CVI平台开

发的应用程序不能直接调用Windows的API函数,而在Windows平台下,应用程序与USB设备通信都要使用Windows的API函数,因此,两者之间必须建立联系。由于LabWindows/CVI平台开发的应用程序可以直接调用DLL中的函数,因此DLL就是上述两者建立联系的桥梁[7-8]。数据采集流程见图3。

图3 数据采集流程

LabWindows/CVI应用程序调用DLL与普通函数调用方式基本相同,在程序中用语句Read Data(参数1,参数2,参数3)调用DLL中的出口函数,其中,参数依实际采集方式而定,类型要与DLL中形参相同。调用时在应用程序中要声明DLL中头文件“EZUSB.H”,以确定

Read Data()源型,此外要将库文件“EZUSB.H”和“EZUSB.lib”加入到应用程序的项目(project)中一起编译,就可以在源程序中调用API函数驱动采集卡,即实现了LabWindows/CVI对DLL的调用。

5 应用程序设计

利用LabWindows/CVI对自制数据采集卡进行环境温度、湿度、光照监测,三路模拟输入实现对电压信号(温度、湿度和光照)的采集,并将信号先转换为十进制,然后进行标度变换,转换为相应的温度值,显示于控件中,点击On按钮进行数据采集。上位机用户界面见图4。

图4 用户界面

(下转第235页)

—231—

基于LabWindows_CVI的数据采集系统

由系统产生一批呈正态分布的数据的数学期望是25.8,用户输入的标准差值为0.02,数据个数为100。

直方图如图4所示。数据统计结果如图5所示。

所占比例/(%)

40200

3%

25.7

5%

34%

38%

由直方图可以看出,数据的分布呈现正态分布。由数据统计结果显示可以看出,这批数据的平均值Xbar的值为25.804,标准差Sigma为0.02,和设定的数据保持了很好的一致性。

6 结束语

16%

4%

25.8

25.9

采集数值

图4 运行结果

作为国际上行之有效的质量管理技术之一,统计过程控制正在受到国内越来越多企业的重视和采用,它将作为企业降低废品、提高产品质量、增加企业效益的重要工具。现在已经涌现了许多关于SPC的软件。对于轴承SPC过程控制的软件编制有效地研究了SPC的数学模型,并且自主地设计了数据结构和算法来完成SPC的控制显示图像的功能,为实际在工业中的应用打下了较好的基础。

参考文献

[1] Sylvac D100S 使用指导书[Z]. 2004.

[2] 叶慈南, 曹伟丽. 应用数理统计[M]. 北京: 机械工业出版社,

2004.

[3] 丁岳伟, 彭敦陆. Java程序设计[M]. 北京: 高等教育出版社,

图5 数据统计结果显示

2005.

编辑 顾逸斐

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(上接第229页)

Structure and Route Algorithm for Network on Chip[C]//Proc. of the 7th International Conference on ASIC. Guilin, China: [s. n.], 2007. [2] Glass C J, Lionel M N. The Turn Model for Adaptive Routing[C]//

Proc. of the 19th Annual International Symposium on Computer Architecture. New York, USA: ACM Press, 1992.

[3] Dally W J, Seitz C L. Deadlock-free Message Routing in

Multiprocessor Interconnection Networks[J]. IEEE Transactions on Computers, 1987, 36(5): 547-553.

[4] Chiu Ge-Ming. The Odd-even Turn Model for Adaptive Routing[J].

IEEE Transactions on Parallel and Distributed System, 2000, 11(7): 729-738.

5 结束语

本文在Turn Model模型的基础上提出一种无死锁的确定性XY-YX路由算法,并通过NIRGAM仿真平台对本文算法与XY路由算法、minimal OE路由算法进行了性能方面的比较。结果显示,与XY路由算法相比,本文算法在热点模式和转置模式下具有更小的延迟,可以很好地解决XY路由算法在X方向上的堵塞问题,算法的复杂度很低,几乎和XY路由算法一样简单。与自适应的OE算法相比,本文算法的硬件开销更小。

参考文献

[1] Wu Chang, Li Yubai, Chai Song. Design and Simulation of a Torus

编辑 张正兴

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(上接第231页)

用[M]. 北京: 化学工业出版社, 2006.

[3] 薛园园. USB应用开发技术大全[M]. 北京: 人民邮电出版社,

2007.

[4] 靳 明, 姚剑敏, 宋建中. 基于USB2.0接口的视频图像采集卡

的实现[J]. 计算机工程, 2004, 30(20): 154-156.

[5] 周振宇, 谷海颖. 基于USB总线的实时数据采集系统设计[J].

电子技术应用, 2002, (2): 17-19.

[6] 白凤山, 潘长勇, 杨知行. 用动态链接库(DLL)实现

LabWindows/CVI与数据采集卡的通讯[J]. 电测与仪表, 2000, (8): 54-56.

[7] 罗 锦, 孟 晨, 苏振中. 动态链接库技术在虚拟仪器系统构建

中的应用[J]. 计算机工程, 2003, 29(3): 176-177.

[8] 徐朝农, 韩江洪. USB基本驱动程序的设计[J]. 微计算机应用,

2001, 22(3): 178-180.

6 结束语

在本数据采集系统的设计中,CY7C68013A-128Pin芯片灵活的接口和可编程特性简化了外部硬件的设计,用LabWindows/CVI开发的应用程序实现了计算机与自制采集卡之间的通信,为搭建全自动的大规模测试与控制系统奠定了基础,节省了工作时间与成本,提高了测量准确率与系统的可靠性,有利于设备的生产和调试。另外,USB设备的可热插拔特性使该系统具有便携式的特点,使用方便,无须关机重启或打开机箱进行安装。同时,USB的高传输速度、强纠错能力、方便的即插即用特点,使之在测试仪表领域具有良好的发展前景。

参考文献

[1] 张振海, 张雁鹏. 基于USB数据采集系统的设计与实现[J]. 兰

州交通大学学报: 自然科学版, 2006, 25(1): 110-112.

[2] 王建新, 杨世凤, 隋美丽. Labwindows/CVI测试技术及工程应

编辑 张正兴

—235—

本文来源:https://www.bwwdw.com/article/d8oe.html

Top