基于高档数控的实时多任务实现

2012-03-09 11:35:21来源: 互联网

为了解决高档数控系统对控制软件实时性的要求,提出了分时并行处理的设计方法,以实时环境下多线程技术的原理为依据,用Delphi提供的多线程编程组件完成了系统线程的具体实现,并且以开发实例的方式给出了多线程技术在实现数控系统实时响应中的应用。实时多任务的实现,显著提高了CPU的利用率,并使系统的可靠性得到了保证。

  引言

  通信在IPC(Industrial Personal Computer)与运动控制器构成的开放式数控系统开发平台上,虽然这种主从式结构,确保了运动控制指令在运动控制器内高速、实时的被执行,但在PC平台上,仍需要完成诸如实时显示、预处理计算、系统状态监控等许多任务。为了保证系统的实时性能,拟采用多线程技术,通过多任务并行处理的方式,提高系统实时性。

  1 进程与线程以及多线程技术

  Windows操作系统既支持多进程,又支持多线程。一个进程就是应用程序的一个实例,一次执行过程也就是调入内存准备执行的程序,包括当前执行的应用程序的执行代码和程序执行相关的一些环境信息。每个进程拥有整台计算机的资源,无须知道其他进程在计算机中的信息。通常每个进程至少有一个线程在执行所属地址空间中的代码,该线程称为主线程,如果该主线程运行结束,系统将自动清除进程及其他地址空间。

  线程是进程内部执行的路径,是操作系统分配CPU时间的基本实体,是程序运行的最小单位。每个进程都由主线程开始进行应用程序的执行。线程由一个堆栈、CPU寄存器的状态和系统调用列表中的一个人口组成。每个进程可以包含一个以上的线程,这些线程可以同时独立地执行进程地址空间中的代码,共享进程中的所有资源。

  Windows系统分配处理器时间的最小单位是线程,系统不停地在各个线程之间切换。在PC机中,同一时间只有一个线程在运行。通常系统为每个线程划分的时间片很小(ms级别),这样快速系统的实时性就有了保障。

  要实现多线程编程,可建立辅助线程(Worker Thread)和用户界面线程(User Interface Thread)。辅助线程主要用来执行数控程序、坐标显示、动态仿真和数据预处理;用户界面线程用来处理用户的输入,响应用户产生的事件和消息。

  2 实时多任务的实现

  数控系统软件具有实时性和多任务两大特点。数控系统中要管理和控制的任务很多,如当数控系统正处于加工控制状态时,为了保证加工的连续性,在各个程序段之间不停顿,各数控加工程序段的预处理、插补计算、位置控制和各种辅助控制任务都要及时进行;为了使操作人员及时了解和干预数控系统的工作状态,系统在执行加工任务的同时还应该及时进行一些人机交互工作,即显示加工状态、接收操作人员通过操作面板输入的各种改变系统状态的控制信号等。为了及时检查和预报软、硬件的各种故障,系统在运行控制程序和人机交互程序同时还要及时运行诊断程序;此外,系统还可能被要求及时完成通信等其他任务。可见,理想的数控程序,应具有实时多任务的处理能力。

  针对数控系统软件的实时性和多任务性两大特点,采用分时并行处理技术来确定数控系统软件结构。分时并行处理技术是指一个处理器同时完成多种任务。系统用时间片轮换的方式处理和完成各任务,即按照某种轮换次序给每个任务分配一段CPU时间进行各任务的处理。从微观上看,各任务分时占用CPU;从宏观的角度来看,在一段时间内,CPU并行完成了多个任务。在软件设计中,利用Windows的多线程技术以“资源分时共享”为原则,有效地解决CNC系统的实时多任务问题。应用优先级抢占方式来进行线程调度,以满足系统的实时性要求,利用时间重叠和资源共享的方法来实现并行处理。

  2.1 系统线程的总体设计

  Windows提供两种线程,辅助线程和主线程。主线程有窗口,因此它有自己的消息循环,可以处理消息,使程序能够迅速响应命令和其他事件;辅助线程没有窗口,所以它不需要处理消息。它可用于完成一些费时的工作,以免在由主线程处理这些工作时阻碍程序消息的处理。软件设计时有并行要求的模块置于独立的线程中,以实现系统的多任务并行工作。根据对系统实时多任务的分析,将软件系统中的线程设计为:

  (1)主线程

主线程是应用系统启动时创建的第一个线程,其他线程都是由主线程直接或间接创建。主线程主要负责创建客户界面、数据显示、与客户交互、系统初

[1] [2]

关键字:高档  数控  实时多任务

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2012/0309/article_14949.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
高档
数控
实时多任务

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved