首页 > 文章中心 > 正文

计算机控制体系实时性的提升办法

计算机控制体系实时性的提升办法

实时控制系统要求在有需求时马上得到满足,没有时间上的滞后,即实时性是第一要求。在工业控制中应用广泛,实时控制系统的使用目的是按时完成规定的任务。控制系统中对于任务必须按要求完成的称为硬实时,不能做任意更改;控制系统中对于任务可以做某些时间上的变更,在某一时间段完成即可的没有严格的完成次序的称为软实时。一个计算机控制系统可以在某段应用时间内实时,没有必要时刻实时。硬实时和软实时相比,硬实时容易因局部错误而导致控制失效,软实时则容错率较高,或许会出现短时间失效但系统能很快恢复。计算机控制系统是为应用而生,按照需求来设计实现的。通用的计算机控制系统从设计之初就考虑其为实时系统,例如WindowsNT、OS390,多数操作系统是分时操作系统,是多任务多线程的。目前人们在分时操作系统中也常常涉及到实时应用,这种应用的实时没有要求精确到一定级别,如利用WindowsXP平台设计某个工业控制程序完全可以满足某些实时应用的需求。

1计算机控制系统的应用分类

计算机控制系统传感器装置采集的一般是模拟信号,模拟信号要被计算机处理则需要模数变换的环节。当计算机控制系统发出数字信号指令时,这些信号到达控制系统的终端时需要转换为执行部件使用的模拟信号,这种过程需要数模转换的环节。(1)数据采集应用:通过控制系统的传感器采集数据信息,要求对传感器装置获取的瞬时数据信息以最快的速度采集到控制系统中。(2)实时控制决策应用:对上述采集的数据能够及时处理,如立即分析这些数据的结果马上得出结论,可以对下一步的控制系统做出决策性判断。(3)实时控制应用:上述做出的决策性判断信息传入下一个环节,中心处理单元根据这些传入数据信息做出迅速响应,在适当时机控制完成整个控制系统的任务。

2Windows系统实时性应用研究

计算机控制系统的实时性要求系统能及时响应,在嵌入式设备中使用普遍,该类系统由于其外设相对简单,系统响应迅速,很容易满足实时性要求。现在计算机平台使用Windows操作系统的占绝大多数,Windows系列操作系统功能很强,系统提供的API非常丰富,操作系统本身是多线程多任务的机制,工业控制多采用现在流行的Windowsxp作为软件平台。基于Windwosxp软件平台,利用软件开发工具设计工控软件,利用这些控制软件实现对硬件接口和外部设备的控制操作。

2.1多线程技术多线程是Windows系列操作系统的一个优势,利用该项技术CPU可以分时地处理不同的任务,用户感觉就是多个任务在同时进行,利用Windows系列平台开发的计算机控制系统,多线程技术是必须采用的,实现实时操作的界面程序作为主线程执行,利用辅助线程对辅助任务进行后台处理,多个线程协调工作,满足用户对实时性的要求,当然这种实时性不是要求很高的。

2.2定时器Windows的定时器在控制程序中非常有用,操作系统执行的任务如果耗时,将占用CPU很多时间,其他的任务等待某个大任务完成后再去做显然是不合理的,Windows操作系统有能力把这个大任务分解,在分解的时候如何统筹执行就依靠Win-dows的定时器来实现,在Windows的消息队列中有个WM_TIMER的消息,分解的任务要等到该消息来临时刻去执行,就可以达到任务分时统筹的目的。不过尽管Windows的机制可以进行分时,但是由于任务有优先级的设定,并不能特别准确地保证这种控制的实时性,适用于要求低的控制系统。

3计算机控制系统的实时性提高策略

对于计算机控制系统的实时性要求很严格,这是与其具体需求密切相关的。例如:在整个移动信息网络中,如果网络核心设备出问题,要求必须在50ms时间内切到核心备机设备,否则整个公共移动电话服务将中断,这种情况绝对禁止发生,程控交换网也是如此,诸如此类计算机控制系统实时性要求精确到一定程度。下面分析提高控制系统的实时性的具体策略。

3.1将中断响应时间降到最短当有外部事件触发时计算机控制系统要马上做出响应,从响应该外部触发事件到执行中断代码程序的时间要求很短。这个响应时间间隔定义为中断延迟,对于优秀的计算机控制系统要做到随时能响应并处理中断,现实应用中处理程序的某些情况有屏蔽中断的要求,比如在数据库修改过程要求短暂屏蔽中断处理,这种屏蔽是必要的,保障正常数据库读写操作。屏蔽时间的最大值叫做最大中断延迟。在嵌入式应用系统中硬件中断的次数不确定,与系统的实际情况关系很大,有可能出现若干次的硬件中断,举例:病人监护系统也是一种计算机控制系统,在监控一个病人心脏的实时情况时,假如病人心跳发生多次变化,这种传感信息通过网卡传入网络信息系统引起护士注意,护士响应该信息按下相应功能按键,即中断得到迅速处理,这是刻不容缓的,否则情况不容预测。计算机控制系统能够在处理上采取最优先处理,支持最优先响应。

3.2将进程切换时间降到最低在控制系统中经常面临新任务新情况,如果中心处理器在处理某个任务时,有突然的任务加入,该任务的优先级高,处于不能协调的情况必须先处理新任务,否则会影响这个系统控制的实施,那么中心处理器需要马上切换任务,保存当前正在处理任务的一切设置及参数,例如需要保存寄存器信息和内存当前状态以及当恢复该任务需要的一切信息等。这个过程也需要消耗处理器时间,对于任务没有交叉的情况很容易处理,直接切换即可,可是对于2个有交互信息的任务需要处理的信息较多,需要耗费一定时间。为了保持实时性,必须尽量将进程切换的时间降到最低。

3.3优先级继承抢占优先级不是在任何时候都能奏效,由于操作系统的机制并不能完全保证高优先级都能抢占低优先级的资源,也会出现低优先级占用资源不放的状态,这种状态的解决方法是通过优先级继承的方式获得资源,使计算机控制系统的实时性得到保证。计算机控制系统有网络分布架构的,如果一个计算机控制系统拥有网络分布的多个终端,该控制系统就支持网络架构的优先级继承方式,通过优先级继承方式获取到对资源的占用,假如对于这种情况没有解决方法,那么这种多终端的网络式计算机控制系统很容易陷入局部网络瘫痪或系统停滞的状态。

3.4缩短进程资源分配等待时间多进程计算机控制系统资源是共享的,那么对于资源的合理调度就是首要问题。对于某个进程当它急需资源的时候能够解决所需这是实时系统的要求,当某个资源被低优先级的进程占用不能释放的时候,所需资源被抢占,以至于低优先级进程在停滞状态,整个计算机控制系统的资源不能协调,这种等待是系统不允许的。解决这种实时性的方法是2种:优先级继承和优先级极限。2者的实现都是通过提高占有资源的低优先级进程的优先级,让其优先级和等待资源的进程优先级相同。

3.5简化控制系统,突出实时性计算机控制系统对实时性要求较高,在控制系统中减少不必要的资源开支,不需要关注美观的界面,尽量满足控制系统的实时需要,主要将实时任务突出。现在实时控制系统较多,计算机控制系统在设计之初要抛掉不必要的考虑,将满足实时需求作为首要条件。

4结语

计算机控制技术是多学科多领域交融的技术,以计算机应用技术为核心,以电子工业控制为过程,同时将自动化应用、无线电技术、软件编程技术、网络通信技术融入其中,为实现精密仪器设备生产制造、工业自动化的生产过程、国防科研应用等领域提供广泛的应用前景。

作者:国海东左永文单位:吉林工业职业技术学院