0 引言
随着开放式数控系统统的发展,采用软件控制缩小硬件规模、降低成本是目前高端数控机床的发展趋势。软PLC以软件形式实现了传统PLC的控制功能,具有开放的体系结构、强大的网络通讯功能和更强的数据处理能力等特点。目前,国外已有成熟的软PLC产品,如:Servo Works软件中的PLC引擎模块、SOFTPLC公司的SoftPLC、西门子的SIMATIC WinAC等等。国内对软PLC也进行了研究,取得了一些进展。文献给出了一种基于DSP/BIOS嵌入式的软PLC执行系统构架,文献提出了一种基于tLC/OS.II的软PLC的实现方法,从一定程度上提升了软PLC的稳定性,但他们采用的是专用操作系统,不符合开放的要求和趋势,且软PLC控制系统的功能和稳定性与国外相比有很大差距。
五轴数控铣床具有很高的加工精度和效率,能够一次性完成三轴铣床很难加工的大型、复杂的自由曲面,但需要其软PLC控制系统更快地做出响应。因此,性能稳定的软PLC和更快的数据传输速率非常重要。文献提出了一种基于SERCOS接口的软PLC系统,但未对软PLC运行系统深人分析,文献则详细描述了软PLC多任务的实现方法,但未给出实现函数等细节。因此,本文针对上述问题对五轴数控铣床的软PLC控制系统进行了研究。
1 软PLC控制系统的总体结构
1.1 软件平台的选择
与其它开放的操作系统相比,Windows具有丰富的软件资源和极高的市场占有率,有利于多任务软件的开发。但它不是实时操作系统,无法满足软PLC实时性的要求归j。可向WindowsXP系统内核嵌入实时扩展子系统RTX(Real—Time Extension)解决实这一问题。所以本文选用WindowsXP+RTX5.0作为软PLC的开发和运行的软件平台,既符合开放的要求,又能满足数控系统和软PLC的实时性。
1.2 软PLC控制系统的总体结构
五轴数控铣床软PLC的控制流程如图1所示。当有加工信息输入时,首先软CNC进行分析、译码,然后将M、S、T等开关量信息交由软PLC进行处理,最后将CPU处理完的开关量信息通过I/O接口输出,通过控制主电路电器元件通断来驱动铣床部件动作。
软PLC控制系统由开发系统和运行系统两部分组成。开发系统是一个标准通用的开发环境,采用国际标准IEC61131.3中的五种开发语言编写用户程序,利用通信接口模块将可执行的目标代码传送给运行系统。运行系统是整个软PLC控制的核心,负责解释和执行用户程序,将开关量控制信息输出给电气部分,以驱动设备动作。
合理的设计软PLC的结构有利于提升控制系统的稳定性。根据软件组件的思想,可将软PLC控制系统分为几个具有独立功能的模块,模块间定义规范的接口。五轴数控铣床软PLC控制系统总体结构如图2所示。
由于软PLC开发系统只是提供一个开发环境和控制方案,而目标代码的执行是由运行系统完成,因此下面重点对软PLC运行系统各模块进行分析。