《1 前言》
1 前言
作为一种新型加工装备, 并联机床的若干运动坐标轴与工件笛卡尔坐标轴之间为非线性关系, 导致刀具的位置和姿态能力存在耦合关系, 且刚度、速度和精度受终端位姿影响较大
笔者结合六自由度6-TPS型并联机床的研究与开发, 阐述了后置处理器中控制数据的流程及其功能需求, 研究了系统的结构体系, 详细论述了关键模块和算法。最后给出一个实际的样件切削实验, 验证了所开发的后置处理器的实用性和有效性。
《2 结构》
2 结构
六自由度6-TPS型并联机床结构和坐标系如图1, 分别建立机床坐标系{M}、运动坐标系{T}、基础坐标系{B}和工件坐标系{C}
《图1》
Fig.1 The structure and coordinate system of the parallel kinematic machine tools
《3 控制数据生成原理及流程》
3 控制数据生成原理及流程
《3.1 控制数据生成原理》
3.1 控制数据生成原理
后置处理系统接受刀位文件, 根据机床结构参数和工艺要求, 将其转化为实际控制轴的坐标。首先进行工件坐标系的定位计算, 即建立{C}和{M}的关系, 将相对于{C}的刀具位姿转化为相对于{M}的坐标, 然后根据刀具位姿确定动平台位姿, 最后计算6个伸缩杆的位置和速度。
确定基于{M}的机床位姿过程可表示为
式中Cq=[qxqypz 1]T为刀位文件中相对于{C}的刀具位置矢量;
Ck=[kxkykz 0]T为刀位文件中相对于{C}的刀具方向矢量;
《图3》
《图4》
TC为刀位文件的预处理矩阵;
Lt为刀具长度。
利用式 (1) 和式 (2) 求出的动平台位姿MrT和MRT, 可求得静平台和动平台各铰链点相对于{M}的位置矢量MBi和MTi, 可表示为
式中MrB, MBB为{B}相对于{M}的位置矢量和姿态矩阵, 根据图1定义, MBB为单位矩阵。
BBi, TTi为静平台和动平台各铰链点相对于{B}和{T}的位置矢量。
各伺服支链的矢量分别为
式中li为第i个支链的方向矢量;
li为第i个支链的长度。
由式 (5) 对时间求导, 速度表达式为
式中V是由6条支链伸缩速度组成的关节空间速度矢量;
v为刀具在笛卡儿空间中的六维速度矢量;
J为雅可比矩阵, 反映了工作空间向关节空间的速度映射。
《3.2 控制流程》
3.2 控制流程
系统接收的数据有两类, 一类是与标准数控代码兼容的G代码, 另一类是来自CAD/CAM的刀位文件。与传统机床不同, 在并联机床中G代码的作用类似于刀位文件, 描述基于坐标系{M}的刀具运动轨迹, 它只是为了增强并联机床兼容性而采用的一种中间代码。系统控制流程如图3, 对于五自由度刀位文件, 系统根据预先计算得到的定位矢量对其进行预处理、代码转换和作业空间检验。G代码必须经过编辑、译码和刀具补偿处理。系统将加工程序段生成参数化的二进制轨迹文件, 以磁盘方式传送给指令解释执行模块, 进行速度控制和虚轴空间插补计算, 然后经过虚实空间的坐标变换生成实际控制轴的运动指令, 并传送给可编程多轴控制器PMAC。PMAC对数据点进行精插补生成每个插补周期的控制指令。
《4 系统功能及结构体系》
4 系统功能及结构体系
后置处理器可完成如下功能:
●接收G代码以及商品化CAD/CAM系统生成的刀位文件, 并将其转化为数控代码;
●对刀位文件进行多种镜像或旋转处理;
●根据机床内部信息传输协议, 将数控代码转化为参数化的二进制刀具轨迹文件;
●根据机床的独特机械构型及加工要求进行作业验证;
●刀具补偿, 包括二维刀补和三维刀补;
●译码, 包括语法检查和词法检查;
●虚轴空间的粗插补;
●轮廓速度和主轴速度规划;
●字符输入和编辑;
●基本数控;
●与PMAC通讯。
系统采用结构化和模块化的设计, 划分为若干相互独立的功能模块, 定义彼此通讯协议, 既保证功能实现, 又增加了程序的可扩充性和可维护性。整体结构如图4所示。
《5 关键技术》
5 关键技术
《5.1 内部数据传输协议》
5.1 内部数据传输协议
传统机床在加工中对文本格式的数控程序进行分段解释和运行, 系统运行效率低, 限制机床运行速度。笔者在研究中, 定义了参数化的二进制轨迹文件, 将程序段分为运动控制指令和辅助控制指令, 分别定义相应数据格式以代替传统数控代码
采用这种参数化的二进制内部数据传输, 缩短了数据处理和插补时间, 提高了控制实时性。
《5.2 粗插补》
5.2 粗插补
并联机床采用两级插补策略, 即基于笛卡儿空间的粗插补和基于实际控制坐标的精插补。在粗插补中, 采用不同的刀具位姿描述所生成的刀具运动轨迹不同。一般的方法是基于动平台位姿进行线性化离散。首先由五自由度刀位文件转化为六自由度的动平台位姿文件, 基于这6个坐标分别线性插补。由于动平台的姿态采用欧拉角描述, 具有不唯一性和不连续性, 使得线性化插补中出现刀具姿态与实际编程要求不符, 产生过切现象, 严重影响工件的加工质量。采用基于刀轴矢量的插补方法可解决这一问题
《5.3 刀具补偿》
5.3 刀具补偿
刀具补偿可分为刀具长度补偿和半径补偿。对刀具长度的处理, 可以将机床的运动坐标系{T}直接建立在刀尖点上, 在位姿转换中即可将刀具长度计算在内。这里分别介绍三维刀具补偿和二维刀具补偿的实现方法。
《5.3.1 三维刀具半径补偿》
5.3.1 三维刀具半径补偿
系统可根据指令选择二维或三维刀具半径补偿。进行三维刀具半径补偿时, 系统根据加工表面切触点的坐标及单位法向矢量、刀具类型和参数, 计算刀心点的位置 (图5) 。
设刀具切触点P的位置矢量为p=[x y z]T, 单位法向矢量为n=[nxnynz]T, 则刀具中心点T的位置矢量为
式中Q= (R-R1) m, R为刀具半径;
R1为刀具的刃口半径, 球形刀:R=R1, 环形刀:R>R1, 端铣刀:R1=0;
m为n在XY平面上投影的单位矢量,
《5.3.2 二维刀具半径补偿 》
5.3.2 二维刀具半径补偿
刀具补偿的轨迹可分为切入程序段、切削程序段和注销程序段。切入程序段是由起刀位置到切入零件轮廓并开始形成补偿的程序段, 必须是直线段, 与切削程序段的转接如图6。
1) 刀具半径矢量的计算。
刀具半径矢量是编程轨迹点指向补偿后的刀心点的矢量。以x-y 平面上的加工为例, 如图7所示, 在直线段中, 设起点A (x0, y0) 和终点B (x1, y1) , 刀具半径为R, 刀具半径矢量r=[rxry]T满足下式
经整理可得
式中D为程序段长度,
《图9》
g为刀具补偿方向的标志, g=1, 当程序段为G41;g=-1, 当程序段为G42。
在圆弧中 (见图8) , 设起点为A (x0, y0) , 终点为B (x1, y1) , 起点指向圆心的矢量为q[I, J]T, 圆弧上一点P (xp, yp) 的半径矢量为
式中P是由圆心指向补偿点P 的矢量,
g为刀具补偿方向的标志, g=1, 当程序段为G02G41或G03G42;g=-1, 当程序段为G02G42或G03G41。
2) 轮廓交接类型判断及计算。
如图9所示, 设A, B和C分别为两段轨迹的起点、交接点和终点,
对于伸长型交点的计算, 4种轮廓交接计算最后均可归结为求两直线交点。对于缩短型交点的计算, 除直线接直线求交之外, 其他三种轮廓转接交点求解最后归结为直线与圆弧的求交。对于插入型交点计算, 首先根据两个线段的矢量 (或切线矢量) 和刀具补偿半径计算插入点S3和S4, 然后用直线段将S1, S2, S3和S4连接起来。
《5.4 刀位文件的预处理》
5.4 刀位文件的预处理
对于一些具有对称结构的零件, 为了减小零件编程工作量, 一般不需要CAD/CAM系统生成零件的全部刀位文件。这就要求系统具有对刀位文件镜像或旋转处理的功能, 即刀位文件的数据预处理, 确定式 (1) 和式 (2) 中的TC, 转换的形式为
式中Cq′, Ck′为转换后的刀具位置和方向矢量。
《5.5 译码》
5.5 译码
系统对以单个程序段为单位的零件程序进行处理, 需要将其中的各种零件轮廓信息 (如起点、终点、直线或圆弧等) 、加工速度信息 (F代码) 和其他辅助信息 (M, S, T代码等) 识别出来, 这个过程称为译码。译码模块可看作是一个小型的编译程序:输入源程序, 经过编译, 把编译的情况列表, 并输出一个目的程序。编译情况列表包括源程序、程序的出错代码及位置。
译码可分为词法分析和语法分析。首先, 进行词法分析, 对源程序依次进行扫描, 对构成源程序的字符串进行分解, 识别单词。在语法分析中, 将单词符号串合成各类语法单位, 确定整个输入串是否构成语法上正确的句子。如果在源程序中发现有不符合词法和语法规定的地方, 及时报警, 给出错误代码提示, 回到编辑状态进行修改。
每种语言都有一套自身的语法规则。本系统采用了扩展BNF范式 (extended backus Naur form, EBNF) 来描述数控加工程序的语法。根据这些语法规则, 系统定义了用来存放单词词法信息和每一程序段语法信息的两个数据结构, 以此进行相应的词法和语法检查。
《6 实验研究》
6 实验研究
利用所开发的系统, 进行了若干切削实验
《7 结论》
7 结论
笔者论述了6-TPS型并联机床后置处理器的开发及实验, 主要结论:
1) 并联机床后置处理器不仅具有传统后置处理的编程和自动转换刀位文件的功能, 而且具有大部分传统数控系统的实时功能。
2) 采用参数化的二进制轨迹文件代替传统文本代码, 可提高运算速度, 增强系统实时性。
3) 基于刀轴矢量的粗插补能更好地满足编程要求, 保持切削速度变化平稳, 避免过切。
4) 基于刀具半径矢量的刀具半径补偿, 求解唯一且快速, 适合机床控制。
5) 在预处理中对刀位文件进行镜像、旋转等处理, 减少了编程工作量, 提高了系统的适应性。
6) 采用EBNF 范式来描述数控代码的词法和语法, 可有效完成数控代码的译码。
加工实验表明, 所开发的后置处理器完全可应用于实际的制造环境, 对其他构型的并联机床也具有适用性。