APP下载

嵌入式柔性数控系统的组态结构与实现方法

2011-05-30

中国机械工程 2011年13期
关键词:数控系统开放式嵌入式

曹 建 福

西安交通大学机械制造系统工程国家重点实验室,西安,710049

0 引言

航空航天、汽车、造船等行业技术的不断发展,对数控装备的柔性和适应性提出了更高的要求,因此开放式数控系统的研究引起了国际范围内的普遍关注。从20世纪90年代初,欧美、日本等工业发达国家就相继提出开放式数控系统问题[1]。美国最早提出了NGC(下一代控制器)计划,三大汽车公司(通用公司、福特公司、克莱斯勒公司)提出了OMAC(开放式模块化结构控制器)标准。欧洲提出了OSACA(开放式数控系统体系结构)计划,日本提出了OSEC(控制器的开放系统环境)计划。这些标准协议得到了许多数控技术厂商的支持,一些符合这些技术规范的基于PC的数控系统已投入应用。从20世纪90年代开始,国内开展了开放式数控系统的研究工作(CONUC),并在2002年发布了开放式数控系统的国家标准GB/T 18759。华中数控、蓝天数控等公司采用通用PC平台+运动控制器的硬件结构,开发了系列的开放式数控系统[2]。近年来,国内也开展了基于现场总线的开放式数控系统的研究工作,北京航空航天大学、大连光洋、上海开通公司等开发出光纤总线式数控系统,这些现场总线数控系统的核心处理模块均基于PC平台。这些基于PC平台的数控系统虽然己具有一定的开放性,但严格来说还不具备开放式数控系统的本质特性。

在开放式数控系统的结构和关键技术研究方面,国内外研究者也进行了大量的研究工作。文献[3]将STEP-NC数据模型和IEC61499标准引入到数控系统设计中,提出了一种基于分层块结构的开放式数控系统,除了具有面向对象的特点外还支持设计框架。文献[4]提出了一种内核软件结构,它通过使用资源模型和进程模型来实现。文献[5]开发了一种五层树形结构的CNC软件包,树的节点单元是具体函数,处理实时任务的模块单元采用动态链接库,处理非实时任务的模块单元采用COM组件来实现,外部接口遵循SERCOS实时串行协议,内部接口遵循OMAC协议。文献[6]提出了功能分离设计法,包括三个部件,即机器引擎接口、事件处理器(EP)、系统描述数据(SDD),机器引擎接口通过HMI进行设定任务,SDD存储规则和NC功能,EP负责处理事件。文献[7-10]研究了基于现场总线和组件技术的开放式数控系统结构。文献[11]提出了一种由主控流水线、驱动程序和微代码实时单元构成的数控流水线体系,流水线封装了从指令译码到生成数控微代码的控制功能,采用标准编程接口实现,微代码实时单元由开放式硬件进行控制。文献[12]用层级式有限状态机描述数控系统的控制逻辑,可根据有限状态机完成对数控系统的重构。文献[13]提出了基于组件的开放式控制系统结构框架,由硬件层、实时操作系统层、CML层、应用程序层等组成。

虽然基于PC平台的设计数控系统是近几十年国内外采取的主流模式,但未来高性能数控系统采用嵌入式技术是必然的选择,而对嵌入式数控系统的开放性,国内外还只是停留在研究阶段[14]。针对嵌入式智能测控仪器装置的快速组态开发难题,笔者研究开发出嵌入式柔性开发平台,并利用该平台开发出系列的嵌入式数控系统,这些数控系统已在五轴联动加工中心、六轴管相贯切割机、高速雕刻机等装备上得到了大量应用。

1 嵌入式柔性数控系统的体系结构

1.1 硬件逻辑结构

具有开放式体系结构CNC允许用户根据需要进行选配和集成、更改或扩展系统的功能,以便迅速适应不同的应用需求,该体系结构应该具有以下属性:①互操作性;②可移植性;③可伸缩性;④可替换性。为解决嵌入式高性能数控系统的开放性问题,笔者及合作者们提出了一种基于构件的柔性开放式控制系统框架。针对二轴到九轴各种数控装备的需求,为保证嵌入式数控系统核心硬件的兼容性,CNC硬件被抽取成10多种基本的功能构件,包括CPU模板、位置控制板、显示与操作终端、内装式PLC、远程操作面板等,硬件构件之间通过现场总线或标准的总线连接,其集成逻辑结构如图1所示。CAN协议建立在国际标准组织开放系统互连模型之上,协议简单,最高通信速率可达1Mbit/s,直接传输距离高达10km,采取多主工作方式,高抗电磁干扰性、纠错能力强;同时,CAN接口安装方便,成本低。因此,本文选用CAN总线作为CNC控制器与PLC、操作面板之间的数据通信方式。所开发的数控系统与驱动器的连接接口提供了两种形式,图1a所示为典型的数字脉冲量或模拟量接口,图1b所示为高速以太网接口。提供驱动器的以太网接口可兼容多种总线协议,目前已实现了MechatrolinkⅢ协议,这是由日本安川公司提出的一种符合EEE802.3u标准的以太网协议,传输速度可达到100Mbit/s。

CPU模板使用了带PC104总线的3.5英寸嵌入式CPU处理单元,位置控制模板采用DSP+FPGA形式实现,DSP使用的是 TI公司的TMS320F2812。为了提高多轴联动插补速度,插补算法采取软插补(粗)+硬插补(精)结合的模式。

内装式PLC模板负责高速的逻辑控制功能,实现机床辅助设备、加工中心中刀库、机械臂等控制任务。

1.2 高速运动控制现场总线协议

高档数控系统要实现高速高精控制,这既要在内部完成大量的数据传输,同时还要保证通信的实时性和可靠性。本文定义了一种面向数控系统的高速现场总线通信协议,这种协议在使用的CAN总线上保证各节点之间的循环通信周期达到16ms。协议采用带29位报文标识符的扩展帧,其通信报文形式如表1所示。

图1 嵌入式柔性数控系统硬件集成逻辑结构

表1 CAN总线报文结构

CAN报文由扩展的29位标识符、1位数据类型、1位远程发送请求、4位该帧内数据段数据长度、0~8字节数据段、16位循环冗余码(CRC)、2位应答位和1位帧结尾组成。

CAN标识符的分配在设计应用层协议时非常重要,它决定了信息的优先权及等待时间,同时也影响了通信结构适用性和标识符使用的效率。报文标识符中包含有优先标记、目标地址、源地址、帧类型、帧号、保留位、结束标记,其格式如表2所示。

表2 扩展帧报文标识符格式

其中,优先标记(1位)用来标记当前帧的优先级别。对于正常信息,将该标记置1,对于紧急信息(如报警信息、紧急断电等),将该标记置0。该标记先于其他帧占用总线,在最短的时间内到达目的地址。目标地址(7位)指定该帧数据或信息所要到达的目的地。源地址(7位)指定该帧数据或信息的来源地址;在数控系统中,对每个CAN模板都设定一个地址号,用来区分不同的设备。CAN总线上的节点个数主要取决于总线驱动电路,目前最多可达110个。本文采用了长度为7位的目标地址和源地址,可以有128个编码地址。帧类型(1位)用来标记该帧数据场中的内容,它是数据内容还是控制信息。帧号(8位)用来标记数据拆分后的帧块序号。由于每个邮箱最多可存放8字节,消息的大小不定,对32位的CNC控制器侧输入信号,可直接传输,而刀库表和梯形图程序段却远远超过64位,需要分段传输。在传输超过8字节长度的数据时,按照每块8字节对数据进行拆分,根据先后顺序需指定相应帧号,从0开始递增。帧号用8位表示,取值范围为0~255,用这种方式完全满足数控系统的通信需求。保留(4位)是指可根据功能扩展的需要增加其他功能。结束标记(1位)用来标记传输过程结束。

CAN报文数据段要传送的数据包括 MST代码、I/O信息、当前刀盘位置信息、梯形图程序、刀库表信息以及远程操作面板信号,表3所示为数据段数据类型的定义。

表3 数据段中数据类型定义

2 柔性数控系统控制软件的组态方法

开放式数控系统的控制软件都应当具备可剪裁性或多重性,整个体系结构应当能够被重新配置,以满足多种应用领域的需求,具备理想“开放性”概念的控制软件应可被拆分为多个标准部件。为了实现上的方便同时又满足组态的特性,我们提出了一个柔性的软件框架结构,如图3所示。“柔性”与“开放性”这两个概念有不同点,它们又具有相同的特性,“开放性”侧重与外部系统通过定义标准的接口相互操作,而“柔性”是指系统能通过改变自身结构以适应外部环境的能力。

这种柔性数控系统采用基于构件的组态结构,软件由三部分组成:嵌入式柔性开发平台、功能程序构件库和模型算法构件库。嵌入式柔性开发平台用来实现功能构件封装、系统配置等任务。针对多轴联动数控系统具有多任务和实时性的特点,控制软件的进程管理设计成前台、后台程序模式。后台模块称为“背景”程序,主要用来完成加工数据的准备工作和管理工作,前台模块是一个循环运行的程序,它是主程序,在运行过程中被1ms实时中断服务程序打断,前后台程序相互配合完成数控系统的各项控制和管理任务。功能构件的程序模式由配置脚本文件指定。

图3 嵌入式柔性数控系统软件结构

构件化结构的关键是构件抽取,即对可重用对象的提炼概括。通过良好地定义这些对象之间相互通信的接口,可以将这些基本对象或将它们进一步分析以后形成的粒度更小的对象,在开发过程中加以重用。本论文建立的构件库由用户层构件库和核心层构件库组成,两者之间通过标准硬件接口通信。用户层构件库包括人机界面、加工数据预处理、代码编程、图形模拟、梯形图编辑等非实时任务构件,其组成见图4。考虑到用户层使用Win CE的原因,选择利用 COM构件实现。核心层构件库涉及数控加工的实时性任务,包括插补计算、MST代码处理、报警处理、速度控制和位置控制等,其组成见图5,因为在核心层没有使用操作系统,因此利用功能函数形式实现。各种功能构件按标准的接口进行封装,功能构件的标准接口见图6,事件端口是任务发生事件状态,公共参数包括系统通用参数、主轴参数、伺服运动参数、刀具参数等,(x1,x2,…,xn)为构件的入口参数,(y 1,y2,…,ym)为构件的出口参数。图7是一个典型的功能构件接口图,译码构件把数控加工代码转换成进行插补的标准数据格式。

图4 用户层构件库组成

图5 核心层构件库组成

图6 功能构件标准接口

图7 译码功能构件接口

3 高性能数控模型算法构件库

柔性数控系统的性能很大程度上依赖于运动控制模型与算法,已开发的模型算法构件包括多轴联动插补、前瞻速度处理、五轴旋转刀具中心点补偿(RTCP)、闭环位置控制、样条插补等。模型算法在实现时被封装成标准的函数形式:

其中,Event_state用来设置某功能构件激活的条件,(Parameter_1,Parameter_2,…,Parameter_n)表示构件之间的连接关系和接口定义,配置时设置和初始化。Method表示用C语言写的模型与算法程序,包括基本语句与函数。Address_map参数的作用是功能构件脱离硬件设备和编程环境,在具体使用时再绑定具体的物理地址。

3.1 前瞻速度处理构件

前瞻速度处理构件的目的是插补前计算程序段的最优转接速度,同时实现前加减速自适应控制,以保证加工段的速度平滑过渡和加工效率,预处理段数为 100。该构件被封装为 int speed_control(int SegNo,int*Feed,struct Speed Regs*in),入口参数为预读段的段标号(int SegNo)、预读段的各段指令速度Fh(int*Feed)、加工类型及加工坐标(xh,yh,zh)(struct Speed Regs*in)。出口参数为:预读段的转接点最优衔接速度v e,i(int feed_end)。公共接口参数有各加工轴最大允许速度(Vx max,Vy max,Vz max)(int V max[3])、最大允许加速度(Ax max,Ay max,Az max)(int A max[3])、最大允许加加速度(Jxmax,Jymax,Jz max)(int16 JJspeed[3])等。

实现思路为在预读段衔接进给速度限制和加工过程平滑减速的约束条件下,对转接点最优衔接速度进行预计算。利用加速方式求得预读段的终点进给速度,作为衔接进给速度的速度上限,同时对预读段作反向速度修正,其修正速度不大于转接点速度上限,以满足加工过程平滑减速的约束条件。

以S曲线加速方式求得预读段l(i)的终点进给速度v(0)e,i,再与该段的反向修正末速度v(1)e,i比较,通过下式求得转接点最优衔接速度为

3.2 五轴旋转刀具中心点补偿(RTCP)构件

五轴加工旋转刀具中心点补偿方法用于实时补偿数控系统的非线性运动误差。RTCP功能由两个构件实现,非实时函数 Cal_RTCPPoint(Strct S_Line,int32 PivotD_X,Int32 PivotD_Y,int32 PivotD_Z,char*OutStr),它负责计算出各直线轴需补偿的增量值,而实时函数RTCP_Chabu(Real_pos,Real_pos1,Real_pos2,int32 PivotD_X,Int32 PivotD_Y,int32 PivotD_Z)负责计算各插补周期的补偿量struct inter_pos comPos,将该补偿量和插补增量合成后获得位置输出量struct inter_pos realpos。构件入口参数为结构体型参数struct S_Line Line,其中包含刀具初始位置P、目标位置坐标Po、枢轴中心距。出口参数为各插补周期输出位置坐标 P′o。

计算思路是利用空间投影等方法计算旋转补偿向量,并根据刀位点初始信息以及直线插补计算所得坐标位置,计算输出位移量,采用先计算法平面补偿向量,再进行投影的方法,避免了繁杂的矩阵运算。计算整段旋转补偿值来约束段末刀位点,计算各插补周期旋转补偿量约束每个插补周期补偿精度的方法,实现高精度补偿。对指定曲线进行投影,将转动曲线投影至任意两个线性轴确定的某一法平面,计算该法平面的转动半径以及相对于本插补周期转动轴初始角度的转动增量Δα,并根据枢轴中心距,将刀具初始坐标进行刀具坐标转换,再求出平面转动补偿向量ΔP,并将其进行空间投影,然后根据P′o=P o-ΔP计算实际输出位移。

4 嵌入式柔性数控系统的工业应用

利用该嵌入式柔性开发平台,研究了加工中心用五轴联动数控系统的实现问题。加工中心用数控系统需要的技术指标是:5个运动轴可实现联动,最小分辨率为 0.001mm/0.001°,具有直线、圆弧插补、空间螺旋线等插补功能。切削速度达到24m/min,快移速度达到24m/min,进给加速度达到20m/s2。具有微线段的前瞻自适应速度控制功能,微线段最小段长为0.01mm,预读段数为100段。应提供内装式PLC,可使用梯形图编程,还具有三维动态仿真显示功能。

选择的硬件构件是六轴位置控制板、300Hz CPU板、一块96输入/88输出PLC、远程操作面板和其他部件。除已开发基本组件外,还根据加工中心的要求增加了刀库管理、五轴加工固定循环等一些功能组件,将它们进行编译,放入到组件库中,为组态数控系统控制软件编写了配置文件,给出组件间的拓扑结构。

图8 STH-850型数控加工中心

所开发的系统已在苏州一企业的五轴数控加工中心上进行了成功的应用,实际应用的数控加工中心如图8所示,已完成了速度、精度测试和实际切削实验。图9为开发的六轴数控系统主界面图。按照国家标准对加工精度进行了测试,测试结果如表4所示。实际测试表明,微线段加工时其进给速度可达到10m/min,可实现进给速度的高速平滑衔接。图10为使用五轴联动加工叶轮试件的实际切削图。数控系统经过持续不间断生产加工,结果表明:采用嵌入式柔性框架可增加数控系统的开放性和可扩展性,控制系统可靠稳定,加工过程中速度控制平稳,精度高。

图9 六轴数控系统主界面图

表4 试件测试结果 mm

图10 五轴联动加工试件实际切削图

5 结束语

基于PC平台的开放式数控系统存体体积大、可靠性差等问题,嵌入式数控系统是未来数控系统的发展趋势。为解决嵌入式数控系统的开放性问题,本文提出并实现了基于构件的柔性开放式结构,并开发出系列的高性能数控系统,这些系统已在工业上得到了成功的应用,现场测试表明系统性能稳定可靠,能满足开放性要求。

[1] Prischow G,Junghans G.Open System Controllers-a Challenge for the Future of the Machine Tool Industry[J].Annals of CIRP,1993,41(1):449-452.

[2] 阳道善,林奕鸿,朱志红,等.华中网络数控系统的开发与应用[J].中国机械上程,1999,10(10):1150-1152.

[3] Minhat M,Vyatkin V,Xu X,et al.A Novel Open CNC Architecture Based on STEP-NCData Model and IEC 61499 Function Block[J].Robotics and Computer-Integrated Manufacturing,2009,25:560-569.

[4] Sungsik P,Sun H K,Hyunbo C.Kernel Software for Efficiently Building,Re-configuring,and Distributing an Open CNC Controller[J].International Journal of Advanced Manufacturing Technology,2006,27:788-796.

[5] Liu Y,Wang Y Z,Fu H Y,et al.Open Architecture CNC Software Package and Key Technology[C]//Proceedings of the 2009 International Conference on Information Technology and Computer Science.Kiev Ukraine,2009:225-228.

[6] Hu T L,Zhang C R,Liu R L,et al.Design and Implementation of an Open CNC Core At the Shop Floor Level[J].International Journal of Advanced Manufacturing Technology,2009,40:541-552.

[7] Yu D,Hu Y,Xu XW,et al.An Open CNC System Based on Component Technology[J].IEEE Transactions on Automation Science and Engineering,2009,6(2):302-310.

[8] Wei H X,Duan X M,Chen Y D,et al.Research of Open CNC System Based on CORBA[C]//Proceedings of the 2008 Fifth IEEE International Symposium on Embedded Computing.Beijing,2008:364-369.

[9] 陶耀东,林浒.高性能开放式数控系统框架设计[J].小型微型计算机系统,2009,30(9):1911-1916.

[10] 陈友东,陈五一,王田苗.基于组件的开放结构数控系统[J].机械工程学报,2006,42(6):188-192.

[11] 董靖川,王太勇,徐跃.基于数控流水线技术的开放式数控系统[J].计算机集成制造系统,2009,15(6):1130-1139.

[12] 李霞,王永章,梁宏斌,等.有限状态机在开放式数控系统中的应用[J].计算机集成制造系统,2005,11(3):428-432.

[13] 杜少华,胡毅,宋桃桃.组件技术在开放式控制系统中的研究[J].小型微型计算机系统,2009,30(4):623-627.

[14] 李诚人.嵌入式开放型数控系统研究[J].计算机应用与软件,2008,25(1):227-229.

猜你喜欢

数控系统开放式嵌入式
开放式数字座舱软件平台IndiGO
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
小学作文开放式教学的思考
TS系列红外传感器在嵌入式控制系统中的应用
开放式计算机实验教学自主学习平台
搭建基于Qt的嵌入式开发平台
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
数控系统中GUI软件平台设计和实现