论文部分内容阅读
目前,基于PC的开放式数控系统已经成为数控发展的主流,其软件平台普遍采用DOS或Windows操作系统。但数控系统对多任务和实时特性的要求,限制了如DOS、Windows等通用操作系统在开放式数控系统中的应用。基于此现状,本文研究了以RTLinux操作系统作为开放式数控系统软件平台的体系结构。RTLinux是基于Linux系统、可运行于多种硬件平台、性能优秀的实时多任务操作系统。基于RTLinux操作系统的数控系统,可以在无需下位机的前提下实现实时多任务调度。本文研究了RTLinux操作系统的原理、特征及任务调度策略,同时对RTLinux环境下的内核实时线程技术、中断技术、线程间通信机制等实时应用程序开发的关键技术进行了详细的论述,并研究了RTLinux环境下实时应用程序开发的基本模式。RTLinux中实时应用程序的任务分为两部分:实时域部分和非实时域部分。为满足实时应用程序对实时和多任务特性的需求,必须合理构建软件的体系结构。本文在深入分析开放式数控系统任务特点的前提下,研究了RTLinux平台上数控系统软件功能模块的划分方案、任务调度机制及主功能模块的实现策略。在软件体系结构中,论述了功能模块划分的基本原则及数据缓冲区间的关联;在任务调度机制中,研究了各任务的调度机制,并给出了可行性方案;主功能模块实现部分主要研究并实现了文件管理、译码、预处理、插补和加减速控制等任务,同时提出了模板式参数设置法及等距轮廓式刀具半径补偿算法。研究了RTLinux环境下GUI的构建方式:基于窗口系统的GUI和基于字符模式的GUI,并对窗口系统GUI对实时应用程序实时性能的影响进行了详细论述。本文在总结RTLinux环境下硬件设备驱动程序开发模式的基础上,阐述了COMEDI规范,研究了基于COMEDI进行驱动程序开发的关键技术,并进行了实例分析。实践证明,将RTLinux应用于开放式数控系统满足实时控制系统对响应的快速性、时间的精确性和控制的可预测性的要求。