2022年用Delphi在工业控制和自动化实现多线程进行数据采 .pdf
《2022年用Delphi在工业控制和自动化实现多线程进行数据采 .pdf》由会员分享,可在线阅读,更多相关《2022年用Delphi在工业控制和自动化实现多线程进行数据采 .pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据采集技术在工业控制及自动化等领域中发挥着重要的作用。数据采集的一般过程是这样的:向采集卡发出通道选择指令。选择要采集的通道号。启动 A/D 转换。等待,直到转换完成。从采集卡读出数据。对于多通道的采集,在程序的设计中,一般采用的两种方法。查询法或中断法。所谓查询方法就是采用一个循环,依次采集各个数据通道。查询法的优点是程序简单,易于实现;缺点是采集过程中,CPU多数时间是在等待,造成资源的浪费。中断法是采用硬件中断的形式先启动 A/D 转换,在转换结束时发出一中断信号CPU 响应采集卡的中断时读出所采集的数据。这样,在等待转换的时间里,CPU可以进行其他的计
2、算工作,而不用处于等待状态。中断法的优点是资源能充分利用;但是程序设计复杂,尤其是当系统的硬件中断资源紧张时,很容易造成中断冲突;另外,在Windows或 Win95 等操作系统中,不允许用户安装中断处理程序时,则无法实现。-以上讨论的两种方法都是在DOS 下的方法;在Win95 下,现在有了一个更好的方法多线程技术。现在,我们可以利用多线程技术来进行数据采集。-1.采用多线程进行数据采集的优点-Win95/98最让人喜爱的除了漂亮的界面以外,就是多线程与多任务了。DOS 环境中,执行中的程序可以独占全部的资源;在 Windows环境中,虽然它是一个略具雏形的多任务环境,但是只
3、要你喜欢,你的程序仍然可以掌握所有的CPU时间。但是,在Windows95 以及Windows NT中,一个程序无法独占所有的CPU执行时间。而且,一个程序也不是从头到尾一条线。相反,一个程序在执行中可以分为多个程序片段,同时执行。这些能同时执行的程序片段称为线程。在Windows 95 以及 Windows NT中,操作系统同一时间可以轮流执行多个程序,这就是多任务。-采用多线程进行数据采集可以有效地加快程序的反应速度、增加执行的效率。一般的程序中都要处理用户的输入,但用户的输入速度与CPU的执行速度相比就向走路与做飞机一样。这样,CPU就将浪费大量的时间用来等待用户的输入(如在DOS环境中
4、)。如果采用多线程,那么就可以用一个线程等待用户的输入;另一个线程进行数据处理或其他的工作。对于数据采集程序,可以用一个单独的线程进行数据采集。这样,能最大限度的保证采集的实时性,而另外的线程同时又能及时地响应用户的操作或进行数据处理。否则,程序在采集数名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 6 页 -据时就不能响应用户的操作;在响应用户操作时就不能进行数据采集。尤其当采集的数据量很大,数据处理任务很重时,如果不采用多线程,采集时的漫长的等待是很让人接受的。-但是,多线程要比普通程序设计复杂得多。由于任一时刻都可能有多个线程同时执行,所以,许多的变量、数据都可能会被其他线
5、程所修改。这就是多线程程序中最关键的线程间的同步控制问题。-2.多线程进行数据采集应解决的问题-其实,多线程程序设计复杂是暂时的;如果,你采用传统的C进行多线程的设计,那么你必须自己控制线程间的同步。那将是很复杂的。但是,如果利用面向对象的设计方法,采用 Delphi进行多线程程序设计,问题就简单多了。这是因为,Delphi已将多线程的复杂性替我们处理了,我们所要做的就是继承。-具体地说,多线程数据采集需要完成以下工作:-从 TThread 类派生一个自己的类SampleThread。这就是我们用于数据采集的类。进行采集时,只需要简单地创建一个SampleThread 的实例。-重载超类TTh
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年用Delphi在工业控制和自动化实现多线程进行数据采 2022 年用 Delphi 工业 控制 自动化 实现 多线程 进行 数据
限制150内