开放式精密激光切割数控系统软PLC程序设计方法*

2015-06-01 03:36李志明李卫超吴荣华胡海龙王培德
制造技术与机床 2015年4期
关键词:数控系统元件机床

李志明 李卫超 吴荣华 胡海龙 王培德

(①燕山大学信息科学与工程学院(软件学院),河北 秦皇岛 066004;②河北省计算机虚拟技术与系统集成重点实验室,河北 秦皇岛 066004;③北京机床所精密机电有限公司,北京 100102)

在基于UMAC的开放式数控系统开发过程中,需要编写上位机数控软件和UMAC内部的软PLC程序两部分。其中上位机数控软件主要负责程序编辑及下载、机床位置信息显示、机床运动参数设定、错误及报警信息显示处理等功能,而UMAC运动控制器中运行的软PLC程序要负责数控面板、外围设备控制、异常处理、安全防护等功能的实现,是数控机床稳定性、可靠性的重要基础。由于数控面板上各按键及波段开关等根据机床工作模式的不同体现的功能各异,再加之其他功能的耦合等,使得开放式数控系统中的PLC程序结构较为复杂;若稍有处理不当,轻则可致机床功能故障,重则可引起严重事故。因此,研究一套通用性强、结构良好、响应速度快的PLC程序结构,对研发可靠性高、稳定性强的开放式数控系统具有重要意义[1-2]。

本文以某型号开放式精密激光切割数控机床相关功能的开发经验为基础,对软PLC程序的结构及其设计方法展开研究。

1 硬件系统结构

该数控机床的主要硬件设备及其相互连接关系如图1所示。从图1可知,UMAC运动控制器是整个硬件平台的控制核心,它的主要作用是完成伺服运动控制;通过软PLC程序的周期性执行实现数控面板、外设状态测控、激光器切割功率控制、报警及安全防护、上下位机通信数据传递等功能。

2 UMAC中软PLC程序的运行机制

UMAC运动控制器内部程序分为在前台实时运行的运动程序(加工程序)、在后台循环扫描运行的软PLC程序[3];从而,集成了运动控制和过程控制两大功能。UMAC中的软PLC程序分为两种,一是未经编译的PLC程序,一是经编译的PLCC程序;它们的编号均从0至31。由于省却了编译时间及可使用特殊的数据类型,PLCC程序比PLC程序的运行速度可快10倍以上[4-5]。

假设UMAC中有PLC0~PLC2以及PLCC0~PLCC31等程序,则其运行机制如图2所示。

通过图2,可以发现PLC程序的运行机制具有如下几点规律:

(1)PLC及PLCC程序执行的优先级与其程序编号呈反比,即PLC1程序比PLC2的优先级高。

(2)1个伺服周期内(后台),首先按优先级执行1个PLC程序,之后,执行所有PLCC1至PLCC31程序;若有时间空余,则执行第2个PLC程序。

(3)在下一个伺服时钟(前台)到来前,若不能执行完PLC程序,则可将其暂停;在伺服时钟内,首先进行伺服计算,继而执行1次PLC0和PLCC0程序;最后执行上次中断的或新的PLC程序。由此可见,0号PLC及PLCC程序是和伺服算法一起在前台执行的,具有很高的优先级。这也决定了PLC及PLCC的0号程序适合处理实时性要求很高、紧急的任务,但不可以过大;否则,将会占用伺服算法时间致使系统混乱。

(4)各PLC及PLCC程序依据各自优先级循环往复执行。

3 操控元件功能的复杂性

数控面板主要由按键及波段开关等操控元件组成,是数控系统中人机交互的重要接口之一。各操控元件依托软PLC程序实现各自的功能。

为规范操作流程、防止误操作,操控元件可分为不受模式控制和受模式控制两类。不受模式控制的操控元件的生效与否和机床工作模式无关,主要完成对外围设备的辅助控制任务;受模式控制的操控元件和数控功能密切相关,只有在特定的机床工作模式下才生效。

机床的工作模式,有自动模式、手动模式、回零模式等5种;而在受模式控制的操控元件之中,有相当数量的操控元件在多种模式下生效,从而形成了模式叠加状态,如图3所示。

从PLC程序设计的角度来看,对数控面板操控元件功能的实现,需考虑元件的受控性以及工作模式叠加性,从而增加了PLC程序的结构复杂性。

4 软PLC程序的作用

4.1 操控元件功能实现

数控面板上的操控元件,从元件类别角度,可分为按键和波段开关等;从生效条件角度,可分为受模式控制操控元件和不受模式控制操控元件两大类。用户通过对数控面板不同操控元件的操作,可将其对机床的操作指令转化为数控面板I/O接口的特定电平状态集。通过软PLC程序,实时检测并解析电平状态集,进而判断机床的工作模式并调用相应的程序模块以实现操控元件功能。

4.2 外设状态测控

从UMAC运动控制器的角度来看,需检测及控制的外部设备较多,如激光发生器、激光切割头调整箱、防护门、辅助气体、吸尘器等。这些设备的状态检测及控制功能均需通过软PLC程序对I/O端口电平状态的扫描或控制加以实现。

4.3 报警及安全防护

为防止系统故障对操作人员及设备造成意外损害,需针对系统运行过程中出现的问题制定完善的报警及安全防护措施。总体而言,系统报警的来源可分为两类,一是运动控制器的数控系统内部,一是外部设备。软PLC程序通过对相关I/O端口电平状态及UMAC内部寄存器状态进行实时检测,并对系统的严重错误及时启动应对动作,从而实现对整个数控系统的报警及安全防护功能。

4.4 激光器切割功率控制

在激光切割时,起点、终点、拐角处切割质量不佳是个通病;造成该问题的本质是切割速度与切割功率不匹配。文献[6]指出,最有效和推荐的激光功率控制方法是脉冲调制。脉冲调制的优点在于即时作用,通过改变平均功率和维持峰值功率的方法来调节功率,符合切割工艺和材料的要求。该方法中,激光光斑的重叠率是关键的参数之一,直接影响着切割质量[7]。

在本激光切割设备中,利用UMAC的软PLC程序,可超前获取各进给轴的预进给速度并计算出预矢量速度,并依据特定的加工工艺实时调整图1中轴卡6输出信号PFM的脉冲频率及占空比[8],从而实现切割速度与切割功率的实时匹配。

4.5 通信数据传递

在开放式激光切割数控系统中,上位机数控软件是另一重要的人机交互接口。一方面,整个数控系统的运动状态、设备状态、报警信息等均需上位机数控软件从UMAC运动控制器获取;另一方面,用户对数控系统的各种参数设置、控制命令等,也需通过上位机软件发送给UMAC运动控制器。由此可见,在系统运行过程中,上位机软件与UMAC运动控制器之间需要进行频繁的双向通讯。若采用UMAC的字符命令方式实现二者的通信,势必会导致占用大量的硬软件系统资源,且通信实时性及稳定性难以保证。

基于此,本文采用了基于双端口DPRM的通讯方式。首先,统筹规划DPRM的内存区域,划分出上传数据区和下发数据区。利用软PLC程序实现欲上传数据的采集工作,并将其送至上传数据区的指定地址空间;将上位机数控软件下发的参数送至下发数据区的指定地址空间,再经软PLC程序实时读取并处理,使之生效。这样,上位机数控软件与UMAC运动控制器的实时通信就能够像计算机访问自身内存一样稳定、高效。

5 软PLC程序设计方法

5.1 软PLC程序功能模块划分原则

功能模块划分是指在软件设计过程中,为了能够对系统开发流程进行管理,保证系统的稳定性以及后续的可维护性,从而对软件开发按照一定的准则进行模块的划分。根据模块来进行系统开发,可提高系统的开发进度,明确系统的需求,保证系统的稳定性。

在对开放式数控系统软PLC程序功能模块划分时,应遵循如下原则:

(1)全面充分地分析系统功能的总体需求,得出需求类表。

(2)对需求归类分析,形成核心功能主模块。

(3)结合软PLC程序的运行机理,合理分析系统结构层次,确定系统框架。

(4)依据功能需求,分析各核心功能主模块的运行频率及状态,并依据优先级,确定PLC及PLCC程序编号。

(5)事先规划好各种功能的连锁反应,以增强程序的逻辑性及稳定性。

(6)对核心功能主模块进行细化,得到各功能子模块。

(7)遵循一般程序设计方法中模块划分的基本原则,如“高内聚、低耦合”等。

图4是依据上述原则,结合文中所述某型号精密激光切割数控机床功能需求划分的软PLC功能模块图。

5.2 软PLC程序结构设计及其流程

在软件设计过程中,需要结合系统功能对软件的结构层次进行分析,并确定程序框架的主体。一个良好的系统框架是决定整个系统稳定性、封闭性、可维护性的重要条件之一;同时,也可更好地指导程序功能模块的划分。

在5.1节功能模块划分的基础上,确定该机床软PLC的程序结构及其简要流程如图5所示。其中,需要特别注意的是,UMAC内部的软PLC程序运行机理与一般的程序不同;它的特点在于每隔一段时间,就会执行一遍已启动的独立PLC程序,即自循环模式。

在图5中,各程序模块可分为两大类,一类是常运行功能模块,如激光功率控制、外设状态测控等模块;另一类是选择运行程序模块,如手摇模式、自动模式等模块。依据机床工作模式,启动相应模式的程序模块并关停无关模式程序模块的做法,具有节省UMAC运行资源、加快运行速度、提升系统稳定性等优点。此外,系统状态初始化模块执行且初始化成功后,将被彻底关闭,不再自循环执行。

5.3 程序开发的几点注意事项

I/O端口电平状态检测与封装模块是操控元件、外设状态测控、报警及安全防护等功能实现的基础。所有I/O端口状态都应按位封装到DPRM中的内存地址中;然后通过位操作来实现对操控元件、外设状态的提取和外设的控制。

在通信数据传递模块实施前,应根据详细的功能需求,事先分配好存放上传数据、下发数据的DPRAM内存空间地址。

在报警及安全防护功能模块实施前,应根据报警、错误等进行归类,然后划定存储报警及错误信息的空间地址,利用软PLC程序将各类信息集中到指定地址中,再加以解析处理。

此外,还要保证各功能的“原子性操作”,尤其是数控面板上操控元件的功能。例如,当处于回零模式时,X轴正在执行回零操作;在未执行完毕前,用户又选择了手动模式,则系统应确保 X轴的回零操作完成。

6 结语

图6是该精密激光切割数控机床的操控面板及上位机数控软件界面。本文依据上述思想及方法设计开发的软PLC程序已成功应用于该套设备之中。系统集成测试和实际使用表明,本文所构建的软PLC程序具有功能完善、运行稳定可靠、响应及时、系统资源占用低等优点,满足了该精密激光切割数控机床的设计要求。

[1]白江,王宇晗,金永乔.数控系统软PLC模块的研究与开发[J].机械设计与制造,2011(2):138-140.

[2]王飞,裴海龙.开放式数控系统中软PLC系统的开发及应用[J].制造技术与机床,2010(8):73-76.

[3]王宏,安波,张永生,等.基于PMAC的抗干扰软件PLC延时技术的应用[J].工业控制计算机,2006(7):72-73.

[4]刘瑛,谢富春.基于UMAC的开放式数控平台的构建与应用[J].制造技术与机床,2008(12):93-95.

[5]Delta Tau data systems,Inc.Turbo PMAC user manual[Z].2008:183-194.

[6]孙国军.激光切割控制中几个与数控相关的常见问题[J].金属加工:热加工,2011(4):21-22.

[7]杨伟.高精密激光切割的理论及应用技术研究[D].烟台:烟台大学,2009:32-33.

[8]李志明,胡海龙,吴荣华,等.基于UMAC的数控系统虚拟平台及其应用[J].制造技术与机床,2013(7):140-143.

猜你喜欢
数控系统元件机床
机床展会
承压类特种设备受压元件壁厚测定问题的探讨
2019,中国机床变中求进
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
基于通用机床的100%低地板有轨电车轮对旋修
数控系统中GUI软件平台设计和实现
机床挤刀装置的控制及应用
中核北方核燃料元件有限公司