基于VC多线程的实时数据采集系统.pdf

基于VC多线程的实时数据采集系统.pdf

ID:51502868

大小:512.35 KB

页数:4页

时间:2020-03-25

基于VC多线程的实时数据采集系统.pdf_第1页
基于VC多线程的实时数据采集系统.pdf_第2页
基于VC多线程的实时数据采集系统.pdf_第3页
基于VC多线程的实时数据采集系统.pdf_第4页
资源描述:

《基于VC多线程的实时数据采集系统.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、舰船防化2008年第2期,44~47CHEMICALDEFENCEONSHIPSNo.2,44~47基于VC多线程的实时数据采集系统孟昭荣,江立辉,胡兴伟,柳琪(中国船舶重工集团公司第七一八研究所,河北邯郸,056027)摘要:在工业数据采集和处理系统中如何提高实时性和通用性,是设计人员要着重考虑的问题。本文着重介绍了在Windows环境下,利用VC++多线程技术,进行实时数据采集的方法,成功地实现了数据采集的准确性和实时性,并且整个系统运行良好。关键词:实时;数据采集;多线程;同步;双缓冲中图分类号:TP274.2文献标识码:

2、AReal-timeDataAcquisitionSystemontheBasisofVCMulti-ThreadMengZhao-rong,JiangLi-hui,HuXing-wei,LiuQi(The718thResearchInstituteofCSIC,Handan056027,China)Abstract:Howtoimprovethereal-timecharacterandcommonabilityindataacquisitionandtheprocesssystemoftheindustry?Itistheq

3、uestionthatthedesignershouldconsideremphatically.Theauthorintroducesthemethodofutilizingmuiti-threadtechnologyofVCundertheWindows,canimprovesystematicreal-timecharacterandcommonabilitygreatlyandrunwell.Keywords:Real-time,DataAcquisition,Multi-Thread,Synchronization,D

4、ouble-buffering处理。但是Windows并不是实时操作系统,因而在0引言其环境下开发实时测控系统需要采用一些技术。本随着操作系统技术的发展,先后出现了多道程文介绍了在Windows环境下利用VC++多线程技术,序设计、分时系统等许多技术,提高了系统运行的结合工程实际,给出了一个实时性和通用性较强的效率。多线程技术的引入,不但可以挖掘潜在的CPU实时数据采集和处理系统。空闲时间,而且还可以提高应用程序反应的速度,1实时数据采集系统其优点在有多个任务需要完成和有巨大数据流量的[1]某装置试验的实时数据采集要求在长时间数

5、据程序中反映的尤为突出。某装置测控系统采集的物理量有压力,温度,采集过程中,每经过一个时间段的数据采集,系统流量等,需要测量的参数多,测量速度快,精确度就对这段时间内得到的数据进行相应的处理,在显高。由于试验任务的要求,不仅需要实时连续,长示设备上按照时间轴和幅值坐标的对应关系,实时时间的数据采集,在采集的同时,还必须动态显示绘制出这段时间内的信号波形,边采集边分析,便信号波形;在试验过程中还需要实时监测一些关键于试验人员在试验过程中迅速了解设备的运行状点,当有异常情况发生时能及时报警并做出相应的况,从而及时做出判断和决策,对于

6、试验的顺利进2008年第2期基于VC多线程的实时数据采集系统·45·行具有重大意义。本测试系统的采集卡选用台湾凌华公司的cPCI总线的9116多功能数据采集卡,其最高采样[2]速率可达250kHz以及16位的转换精度,其中最重要的一个特点是采集卡上有一个2K的FIFO(先进先出)高速缓存,可以在任何时刻方便地从FIFO中读取数据,从而可以实现实时显示信号波形的目的。对于实时数据采集系统来说,FIFO的高速缓存可以使系统在任何时刻得到需要的数据,是实时数据采集系统中重要的一环。在测试系统中采用循环缓冲技术中的双缓冲技术(doubl

7、e-buffering)。双缓冲技术是把缓存区分成相等的两部分,当程序读取缓存区一半数据的同时另一半正在被新的数据填充,形成数据连续采集的过程。在这种模式下,当FIFO半满时(half-full),就会产生一个中断信号,然后由ISR(InterruptServiceRoutine)完成数据传输。FIFO系统可以使新数据顺次排列在缓存区中,不会覆盖以前的数据,从而防止数据丢失。整个过程无需CPU干预,完全[3]由硬件完成,有效地提高了数据的传输速率。数据采集流程图如图1所示。[4]2VC的多线程技术图1数据采集程序流程图Fig.1

8、Flowchartofdatacollectingprogram由于某装置测试系统的多任务特点,需实现数适用于处理后台任务,而不影响用户对应用程序的据采集、实时控制,动态显示图形,数据存储和人使用。工作者线程仅仅由一个函数体实现,其实现机交互功能,而且各任务的运

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

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

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