基于labwindows/cvi多线程技术数据采集系统的构建

基于labwindows/cvi多线程技术数据采集系统的构建

ID:9806230

大小:106.50 KB

页数:4页

时间:2018-05-10

基于labwindows/cvi多线程技术数据采集系统的构建_第1页
基于labwindows/cvi多线程技术数据采集系统的构建_第2页
基于labwindows/cvi多线程技术数据采集系统的构建_第3页
基于labwindows/cvi多线程技术数据采集系统的构建_第4页
资源描述:

《基于labwindows/cvi多线程技术数据采集系统的构建》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于LabWindows/CVI多线程技术数据采集系统的构建摘要:在简要介绍虚拟仪器实验室的基础上,本文对LabWindows/CVI软件开发平台下利用多线程技术实现实时数据采集进行了研究与设计,重点讨论了在数据采集过程中数据采集卡驱动的制作,多线程技术的应用以及对数据库存储的操作,大大提高CPU的利用率。关键字:LabWindows/CVI多线程数据采集Abstract:Onthebasisofintroductionofvirtualinstrumentlaboratory,thepaperstudieshowtoacquiredatawithmulti—t

2、hreadtechnologybasedonLabWindows/CVI,anddiscussesthedriveofPMD-1208FS,applicationofmulti—threadtechnologyandtheoperationofthedatabasesave,raisetheCPUutilizationconsumedly.Keywords:LabWindows/CVIMulti-threadtechnologyDataacquisition1引言虚拟仪器技术是近几年发展起来的新一代仪器技术,它通过应用程序与各功能化模块结合,用户利用友好的图形界

3、面来控制计算机,完成对仪器控制、数据采集、分析、存储及显示等,正是由于这种由传统仪器到虚拟仪器的转变和实现.促进测控技术的发展和更新。虚拟仪器实验室是利用计算强大的显示、运算、处理功能,将一个具体的实际系统实验用计算机来模拟.配以生动形象的声音、图像或图形。达到与实际系统实验逼近的效果。学生可以在网上或独立的计算机上进行实验.在时间空间上突破了常规实验方法的限制。数据采集系统是虚拟仪器实验室的一个重要组成部分,也是系统获取原始数据的主要手段:本文针对此研究平台LabWindows/CVI的多线程实时数据采集技术,大大提高CPU的利用率.2.多线程技术线程是指进程

4、内部的可独立执行的单元,是操作系统对系统资源的基本调度单位。单线程程序只有一个线程即主线程,多线程程序是在同一时间段内至少有2个线程在执行程序代码,其中每1个线程都有自己的堆栈,并独立于应用程序内的其它线程而运行,在实时控制中,常会遇到多任务同时进行工作的情况,比如数据采集和处理并行进行一若采用单线程编程方法,需要等到一遍数据采集完之后才能进行数据处理,大大降低程序的执行效率.系统的实时性也难以得到保证,而多线程技术的应用可以把这些任务分给几个单独的线程,1个线程进行数据采集,其它线程进行数据处理或其它工作,这样就能最大限度的保证数据采集的实时性,又能及时响应用

5、户的其它操作,尤其在采集数据很大、数据处理任务很重时更加明显。3LabWindows/CVI下的多线程设计LabWindows/CVI是在Windows环境下.面向计算机测控领域的虚拟仪器软件开发平台。它以ANSIC为核心,将功能强大、应用广泛的C语言与测控专业工具有机地结合起来,并支持多线程,利用它的集成开发环境,在编程过程中直接调用用户界面函数和高级分析库函数,从而大大缩短软件的开发时间。在典型的LabWindows/CVI多线程程序中,使用主线程创建、显示并运行用户界面,在次线程中运行其它的对时间要求很高的操作。在CVI中,设计多线程数据采集时,应首先创建

6、线程池和新线程即数据采集线程;然后调用函数使主线程在结束之前处于等待状态,直到线程函数执行结束,这样可以使主线程在次线程结束前退出时,次线程能完全释放它们所占用的资源;再运行数据采集线程函数;最后结束线程函数后还要释放线程和线程池:在创建多线程后,实现线程间的信息交换也是必须考虑的一个问题:CVI专门提供了一个数据管道用于两个线程之间的通信:数据管道实际上是一个先进先出的队列,并且可以响应一定的事件:在建立线程安全队列TSQ的同时,设置对应于某一事件的回调函数,当有线程向线程安全队列TSQ添加数据或读取数据时,就会触发预先定义好的事件响应函数,这些函数存在于数据

7、处理线程中.从而完成相应的数据处理功能。多线程处理架构如图一所示:图一图二4.数据采集系统的设计数据采集系统主要完成的任务有实时采集波形,产生任意波形,对输入信号的波形进行直观的显示,并对幅值、频率、置位连续调控;将采集的信号存人数据库或输出等。这些任务要求通过设计不同的程序模块来完成,并设计用户界面程序,由用户界面程序控制其它各功能程序的运行。流程图如图二所示。4.1系统硬件介绍本系统硬件部分采用PMD1208—FS多功能数据采集卡,PMD1208—FS是一款支持USB2.0高速采集设备,支持八模拟通道输入(通道自带A/D),双通道12位模拟输出,16根数字I

8、/O线,支持8通道11位

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。