赵福春,李沛卿,赵万生,顾 琳
(上海交通大学机械与动力工程学院机械系统与振动国家重点实验室,上海 200240)
作为一种重要的特种加工技术,电火花线切割加工被广泛应用于模具、难切削导电材料及精密零部件制造等领域[1]。电火花线切割机床分为往复走丝型和单向走丝型,其中单向走丝型线切割机床的加工质量高,但设备及运行成本也较高,主要用于精密产品的加工[2];往复走丝型线切割机床结构简单、成本低,在中低端市场应用广泛。
数控系统作为线切割机床的重要组成部分,其性能优劣直接影响机床的加工精度和效率[3]。当前基于PC 的数控系统主要分为两大类:一类是PC 用于处理人机交互等非实时任务,专用的运动控制器完成运动控制等实时任务;另一类是基于PC 的全软件数控系统,所有与数控相关的工作都由PC 完成。随着计算机技术的快速发展,基于PC 的全软件数控系统因为具有成本低、灵活性高及开放性好等优势,越来越受欢迎。
近年来,PC 从单一的台式机向一体机、笔记本电脑、平板电脑等多种类方向发展,很多PC 都不再预留PCI 接口,因此传统的基于PCI 的运动控制器受到PC 类型的限制。与此同时,凭借着高传输速度、通用性和开放性的优势,以太网已从传统商业领域进入工业领域,形成了当前最重要的工业通信技术——工业实时以太网。其中,Ethernet POWERLINK(简称EPL)因为其采用标准以太网硬件,通过软件实现硬实时通信而得到了最广泛的使用,并成为我国工业以太网推荐性标准。
本文以开放式全软件数控系统EMC2和实时以太网EPL 为基础,设计了新一代开放式线切割加工数控系统。该系统采用主站和从站分开的模块化设计,结构灵活,开放性好。对于提高往复走丝电火花线切割加工数控系统的兼容性、通用性有很好的借鉴作用。
EMC2[4]是Enhanced Machine Controller 的 简称,目前已更名为LinuxCNC。它是由美国NIST 主导开发的基于Linux 平台的开放源代码的数控系统平台。因为其良好的模块化机制及开源的特性,引起了国内外学者的关注,并已发展到了2.5.1 的最新版本。
EMC2 可用于数控机床、机器人及其他自动化设备的运动控制和过程控制等。它采用模块化的结构,主要包括一个硬件抽象层(HAL),一个软PLC组件(ClassieLadder)。其四大模块分别是GUI 模块、运动控制器模块EMCMOT、离散IO 控制器模块EMCIO和任务执行器模块EMCTASK。EMC2 系统的模块化机制,使系统结构非常灵活,用户可根据实际需要增加或删减模块。EMC2 最初应用于控制数控铣床,上海交通大学基于EMC2 成功开发了单向走丝型线切割加工数控系统原型,获得了良好的加工效果,且具有出色的稳定性与可靠性[5]。但目前EMC2 接口设备扩展普遍采用ISA、PCI 等接口,随着很多PC 都不再预留PCI 接口,此种结构的扩展方式受到一定的限制。随着工业实时以太网的快速发展,开发EMC2 的工业实时以太网接口设备扩展具有非常重要的意义。
EPL 是一个基于标准以太网的三层通信网络,它规定了物理层、数据链路层和应用层。EPL 的物理层采用标准以太网,无需专用芯片,因此无论主站、从站都可在PC、ARM、DSP 及FPGA 等有以太网接口的硬件平台上实现,而不受任何芯片供应商的限制。通过修改数据链路层,采用SCNM(时间槽网络通信管理)来对通信进行实时调度,解决了传统以太网CSMA/CD 冲突解决算法导致的网络数据传输的非实时性问题。同时,通过NMT 网络管理状态机来实现通信事件的状态管理。应用层采用CANopen 通过对象字典对网络数据进行统一管理,其中PDO 为过程数据对象用于传输实时数据,SDO为服务数据对象用于传递配置信息等服务数据[6]。CANopen 的采用保证了EPL 设备的一致性和通用性,使EPL 应用也变得灵活、简洁。
openPOWERLINK 是EPL 的开源应用,包括基于标准C 语言的EPL 协议栈代码和用FPGA 实现的openMac和openHub等,也包括在Windows、Linux、Vxworks 等操作系统下的应用程序代码。openPOWERLINK 当前最新的版本为1.08.1,协议栈的软件结构见图1[7]。
图1 EPL 软件结构
本开放式数控系统以台式机作为硬件平台,运行EMC2 及EMC2 所需的实时Linux 环境,EMC2实现图形化界面(GUI),G 代码解释与插补,运动控制,IO 控制,EPL 主站模块及任务调度等所有数控系统运动控制相关的任务与功能。EMC2 的各个模块通过共享内存(SHM)和中性消息语言(NML)进行通信。运动控制模块把插补完的运动控制指令存到SHM,EPL 主站模块周期性地读取SHM 数据,并把数据通过以太网发送到从站。同时,周期性地把加工检测信号传送给上位机系统。FPGA 从站则实现检测控制数据的数字信号与物理信号的转换,并实现与EPL 主站模块对象字典数据周期性同步。系统的体系架构见图2。
图2 线切割加工数控系统体系架构
EMC2 的外部设备驱动是通过硬件抽象层HAL 来实现的。HAL 提供了虚拟的硬件平台,隐藏了特定平台的硬件接口细节,无论是PCI、ISA 还是以太网设备,只需更改HAL 配置文件,编写设备的驱动程序即可,因此无需修改EMC2 的其他模块程序。
基于HAL 的EMC2 设备驱动[8]主要完成设备的初始化、底层硬件驱动、驱动退出时的资源释放等工作。为了实现EMC2 的EPL 设备驱动,本文参考openPOWERLINK 的Linux 内核态开源应用。具体的工作原理为:首先,为模块申请ID 号,其后对该模块的操作都是通过该ID 号索引来实现的;其次,申请共享内存用于EPL 主站模块与EMC2 其他模块之间通信。此外,为了提高通信稳定性,网卡驱动使用RTAI 的中断函数取代Linux 的中断,以使EPL 可及时响应网络中断[9];最后,根据需要初始化EPL 通信参数,连接变量与对象字典,修改同步回调函数,使其可周期性地向从站发送数据和处理接收由从站发来的数据。
基于CANopen 的EPL 应用层定义的对象字典用于主站与从站数据周期性同步,连接对象字典与用户变量,可实现用户变量周期性更新,因此对主站的变量操作等同于对从站变量的操作。用户变量、对象字典、EPL 协议栈的对等数据传输见图3。
图3 EPL 数据传输示意图
本线切割加工数控系统中,在PC 端实现了所有数控系统的相关功能,包括运动控制及短路回退等功能。其工作流程见图4。
图4 中的虚线框表示从站或信号来自从站。EPL 主站模块周期性地取出控制指令,并把控制指令与对象字典连接,通过以太网传递到从站,从站把控制指令转换为物理信号进行电机控制。取指令或短路回退功能控制由EPL 主站模块进行控制,并由放电检测信号决定正常进给或进行短路回退等功能。特别的,EPL 周期性地发送运动控制指令,如果需要暂停进给时,则需发送的控制指令必须是0,即控制字对应的对象字典要赋值为0x00。
图4 线切割加工数控系统工作流程
FPGA(现场可编程逻辑门阵列)因其具有丰富的引脚资源,引脚功能可灵活定义,且具有高性能的并行处理能力,因而得到了广泛的应用。基于FPGA 的EPL 从站是EPSG 官方推荐的EPL 通信解决方案。基于FPGA 的EPL 从站方案有多种,既可将EPL和用户的应用集成在同一个FPGA,也可将FPGA 仅用于EPL 通信,FPGA 与用户MCU 之间通过并行16/8 bits 接口或SPI 接口通信。由于在本线切割加工数控系统中从站仅作为PC 的接口扩展功能使用,因此采用第一种方式实现FPGA 从站。从站使用一个RPDO(接收过程数据对象)用于接收主站的运动控制指令,2 个TPDO(发送过程数据对象)用于向主站发送间隙放电状态检测信号,以及电极丝状态等其他IO 信号。
基于Alter FPGA 的EPL 从站设计主要包括两部分:一部分为Quartus II 工程设计,用于建立NIOS II 软核,添加CPU、POWERLINK 等组件,定制外设,引脚配置等;另一部分为NIOS II 软件工程,通过C 语言实现控制指令物理控制信号转换算法。
为了验证开发的数控系统的功能和稳定性,在数控电火花线切割加工机床上用本文研制的基于PC+EPL 从站的线切割加工数控系统替代原有的BKDF 型线切割加工数控系统,并利用原有的高频脉冲电源、运丝控制、冲液系统等控制功能。新研制的线切割加工数控原型系统与机床连接见图5。
图5 线切割加工数控系统加工实验现场
数控系统的GUI和G 代码解释、插补、轨迹规划等部分采用了上海交通大学完成的且应用于国家863 计划重点项目及04 国家重大专项“高效精密单向走丝线切割加工技术与装备”的数控系统中的相关模块[5]。系统的运行界面见图6。
图6 线切割加工数控系统运行界面
选用10 mm 厚的模具钢作为工件材料,脉冲电源的脉宽为24 μs,脉间为72 μs,加工的样件实物见图7,加工时间为60 min。加工过程平稳,能实现长时间的稳定加工。电火花线切割加工所产生的高频电磁干扰对网络传输无影响。
图7 加工样件实物
本文将EMC2和openPOWERLINK 等开源技术引入电火花线切割加工的数控系统,并研发出基于EPL 实时以太网通讯的线切割加工数控系统。该系统以PC 作为主控制器运行EMC2,基于FPGA 的从站用于扩展PC 主站的接口能力,与主站相关变量同步,并实现数字信号与物理信号的转换。主站与从站通过EPL 进行实时通信。实际加工实验验证了该方案的可行性。
全软件数控是数控系统的发展方向,由于EMC2和EPL 都为开源技术,且基于PC和标准以太网等通用设备或芯片,可提供成本低、结构灵活的开放式数控系统开发平台,并为进一步研发新一代体系架构的线切割加工数控系统提供了参考。
[1]赵万生.先进电火花加工技术[M].北京:国防工业出版社,2003.
[2]宣仲义.高速快走丝电火花线切割机床数控系统设计与开发[D].杭州:浙江工业大学,2009.
[3]邵昌旭,陈默,赵万生.嵌入式电火花线切割加工数控系统原型[J].电加工与模具,2012(2):17-20.
[4]The EMC Team.User Manual V2.5,[DB/OL].http∶//www.linuxcnc.org.2012-08.
[5]豆尚成,陈成细,奚学程,等.基于Linux 的线切割加工全软数控系统[C]//第14 届全国特种加工学术会议论文集[M].哈尔滨:哈尔滨工业大学出版社,2011.
[6]张小强.工业以太网的时钟同步及实时传输实现技术研究[D].广州:华南理工大学,2011.
[7]Krüger D.OpenPOWERLINK∶ Ethernet POWERLINK Protocol Stack Software Manual [J].SYS TEC electronic GmbH.2010.8∶4.
[8]The EMC Team.HAL Manual V2.5.http∶//www.linuxcnc.org.2011-05.
[9]Erwinski K,Paprocki M,Grzesiak L,et al.Application of ethernet powerlink for communication in a Linux RTAI open CNC control system [J].Industrial Electronics,2013,60(2):628-636.