第11计算机辅助数控程序编制11.1数控编程的基本概念11.1.1数控加工的特点数控加工是指在数控机床上进行零件加工的一种工艺方法。数控加工过程是用数控装置或计算机代替人工操纵机床进行自动化加工的过程。图11.1为数控加工过程示意图图11.1数控加工过程示意图数控加工具有如下特点:(1)加工精度高(2)生产效率高(3)自动化程度高(4)生产准备时间短(5)数控加工使用数字信息,便于计算机控制和管理,容易连接CAD系统,形成CAD/CAM集成系统。11.1.2数控编程的内容和步骤1.工艺方案分析在分析零件图样、生产批量、现有数控设备条件的基础上,首先分析并拟订工艺方案,即确认加工对象是否适合于数控加工、毛坯的选择、工序的划分以及选用合适的数控机床。2.工序详细设计工序的详细设计,包括工件的定位与夹紧、工步划分、刀具选择、切削用量的确定、走刀分配以及工艺文件的编制等内容。在上述工序详细设计的基础上,进行工序卡的编制,工序卡一般包括工步与走刀的序号、加工部位与尺寸、刀号与补偿号、刀具型式与规格、主轴转速、进给量以及工时等内容。3.运动轨迹的坐标值计算首先建立零件坐标系,作为各坐标尺寸的基准,计算各次运动轨迹的程序坐标值,作为数控系统的输入数据。坐标值计算主要包括基点、节点及辅助计算三部分:(1)基点计算零件轮廓一般是由直线、圆弧及曲线等几何元素组成,所以要计算相邻两个几何要素的交点或切点(即基点)的坐标值。(2)节点计算由于数控系统一般只具备直线插补和圆弧插补功能,所以对非圆曲线还要计算该曲线本身用直线段逼近或圆弧段逼近相邻线段的交点或切点(节点)坐标值。(3)辅助计算辅助计算包括刀具的引入与退出路线的坐标值计算、脉冲数的计算与圆整及坐标系的换算等。4.加工程序单的编写根据上述已确定的工序卡和所计算的运动轨迹坐标值,用数控机床规定的指令代码与程序格式逐段编写加工程序单。5.控制介质的制备将程序单上的内容记录在控制介质上,作为数控机床的输入信息。控制介质有穿孔带和磁带等。6.程序校核与试切一般的校核方法是将程序输送给机床进行空运转画图检查。该方法只能检查运动的正确性,而不能检查出由于计算或刀具调整不当造成的误差,所以还必须进行首件试切作综合检查,若有错误,可根据问题的性质进行修改和补偿,直到满足图样要求。11.1.3数控程序编制的方法1.手工编程手工编程也可称为人工编程。手工编程的主要步骤和内容如下:(1)根据零件图样对零件进行工艺分析,在分析的基础上确定加工路线和工艺参数。(2)根据零件的几何形状和尺寸,计算数控机床运动所需数据。(3)根据计算结果及确定的加工路线,按规定的格式和代码编写零件加工程序单。(4)按程序单在穿孔机或卡片上穿孔、制成控制介质。2.自动编程随着计算机技术和算法语言的发展,首先提出了用“语言程序”的方法实现自动编程。所谓“语言程序”就是用专用的语言和符号来描述零件图样上的几何形状及具相对零件运动的轨迹、顺序和其它工艺参数等。这个程序称为零件的源程序。零件源程序编好后,输入给计算机。“数控软件”分两步对零件源程序进行处理。第一步是计算刀具中心相对零件运动轨迹。第二步是针对具体NC机床的功能产生控制指令的后置处理程序。图11.4数据自动编程过程11.2自动编程语言11.2.1自动编程语言的发展概况现在国际上流行的数控自动编程语言有上百种,其中流传最广、影响最深、最具有代表性的是美国MIT研制的APT系统(AutomaticallyProgrammedTools)。我国机械工业部1982年发布的NC机床自动编程语言标准(JB3112—82)采用了APT的词汇语法;1985年国际标准化组织ISO公布的NC机床自动编程语言(ISO4342—1985)也是以APT语言为基础的。APT语言系统的特点是:(1)APT语言有多种多样的处理能力。(2)用APT语言编写的零件源程序接近英语自然语言。(3)APT编程可靠性高。(4)富有灵活性。(5)数据处理所需费用少,制备时间短。11.2.2APT语言的基本组成1.基本符号数控语言中的基本符号是语言中不能再分的成分。语言中的其它成分均由基本符号组成。常用的基本符号有字母、数字、标点符号、算术运算符号等。APT自动编程语言中常用到的标点符号和算术符号如下:(1)逗号“,”用于分隔语句内的词汇、标识符和数据(2)斜杠“/”用来分隔语句的主部和辅部,或者在计算语句中作除法运算符号。(3)星号“*”这是乘法运算符号。(4)双星号“**”或“↑”这是指数运算符号。(5)正号“+”用来表示算术加法或规定一个数的符号。(6)负号“-”用来表示算术减法或规定一个数的符号。(7)符号“$”表示语句尚未结束,延续到下一行。(8)冒号“:”用于分隔语句及其标号。(9)方括号“[]”用于给出子曲线的起点号和终点号,或用于复合语句及下标变量中。(10)等号“=”用于定义时给定一个名字或者给标识符号赋值用。(11)分号“;”作为语句结束符号。(12)圆括号“()”用于括上算术自变量及几何图形语句中的嵌套定义部分。(13)小数点“.”用于分隔数的整数部分和小数部分。2.词汇词汇是APT语言所规定的具有特定意义的单词。APT语言中,大约有300多个词汇,按其作用大致可分为下列几种:(1)几何元素词汇如POINT(点),LINE(线),PLANE(平面)等。(2)几何关系和位置状况词汇如PARLEL(平行),PERPTO(垂直),TANTO(相切)等。(3)与计算有关和函数类词汇如SINF(正弦),COSF(余弦),EXPF(指数),SQRTF(平方根)等。(4)加工工艺词汇如BORE(镗孔),CHAM(倒角),ROUGH(粗加工),DVSJSE(加工余量)等。(5)刀具名称词汇如TURNTL(车刀),MILTL(铣刀),DRITL(钻头)等。(6)与刀具运动有关的词汇如GOFWD(向前),GODLTA(走增量),TLLFT(刀具在左)等。3.语句语句是数控编程语言中具有独立意义的基本单位。它由词汇、数值、标识符号等按语法规则组成。按语句在程序中的作用大致右分为几何定义语句、刀具运动语句、工艺数据语句等几类。11.2.3APT语言基本语句1.几何定义语句几何定义语句是为了描述零件的几何图形而设置的。几何定义语句的一般形式为标识符=APT几何元素/定义方式(1)点的定义1)由给定坐标值定义点其格式为标识符=POINT/x,y,z2)由两直线的交点定义点其格式为标识符=POINT/INTOF,line1,line23)由直线和圆的交点定义点P1=POINT/XSMALL,INTOF,L1,C14)两圆交点定义格式标识符=POINT/Circle,CircleYLARGLYSMALLXSMALLINTOFXLARGE,5)用圆心定义点格式标识符=POINT/CENTER,Circle6)极座标定义格式格式:标识符=POINT/RTHEIA,radius,degrees(2)直线定义(共六种)1)通过两点定义格式为标识符=LINE/x1,y1,x2,y2标识符=LINE/point,point2)通过一点并与坐标轴x成某一角度:格式:标识符=LINE/point,STANGL,degrees3)通过一点与给定直线成某一角度:格式:标识符=LINE/point,ATANGL,degrees,line4)与给定直线相平行并隔一定距离:格式:标识符=LINE/PARLEL,line,,offset5)过一点与圆相切格式:标识符=LINE/POINT,,TANTO,circle6)切于两圆:格式:标识符=LINE/,TANTO,circle,YSMALLYLARGEXSMALLXLARGELEFTRIGHTLEFTRIGHT(3)圆定义1)用圆心和半径定义:格式:标识符=CIRCLE/x,y,radius2)用圆中心并切于给定圆定义:格式:标识符=CIRLE/CENTER,point,,TANTO,circle3)过三点定义圆格式:标识符=CIRCLE/point1,point2,point34)利用半径和切于两交线定义圆5)用半径并切于一线一圆定义:6)用半径并切于两个圆定义:SMALLLARGE(4)平面的定义1)不共线的三点定义格式:标识符=PLANE/P1,P2,P32)通过一点平行于另一平面的平面格式:标识符=PLANE/P,PARLEL,PL13)用平面方程式AX+BY+CZ=D的四个系数定义的平面格式:标识符=PLANE/A,B,C,D(5)矢量的定义格式:标识符=VECTOR/[参数]1)用x、y、z矢量元素定义格式:VECTOR/x、y、z2)用两点定义格式:VECTOR/Point1,Point2,(6)点群定义在点位控制孔系的加工中,使用点群,它依赖于点群组内的对称形状进行定义,表示格式如下:〈符号〉=PATERN/〈参数〉(7)短阵定义其格式为:〈符号〉MATRIX/〈参数〉一般有在参考平面中旋转、指定比例、平面对称、旋转和平移等几种定义方法2.刀具运动语句刀具运动语句是用来模拟加工过程中刀具运动的轨迹。为了定义刀具在空间的位置和运动,引进了如图11.25所示三个控制面的概念,即零件表面(PS)、导向面(DS)和检查面(CS)。零件面是刀具在加工运动过程中,刀具端点运动形成的表面。它是控制切削深度的表面。导向面是在加工运动中,刀具与零件接触的第二个表面,是引导刀具运动的面,由此可以确定刀具与零件表面之间的位置关系。检查面是刀具运动终止位置的限定面,刀具在到达检查面之前,一直保持与零件面和导向面所给定的关系,在到达检查面后,可以重新给出新的运动语句。图11.25通过上述三个控制面就可联合确定刀具的运动。(1)刀具起始位置的指定格式FROM/(2)连续切削用初始运动语句格式:GO/,DS,,PS,,CS(3)连续切削运动词语格式:/DS,,CSpointzy,x,PASTONTOPASTONTOPASTONTOGDOWNGOUPGOFWDGOLFTGORGTPSTANTANTOPASTONTO(4)点位运动指令1)GODLTAGODLTA/…语句表示刀具从当前位置移动某一增量。2)GOTOGOTO是一个绝对运动语句,表示刀具从当前位置以直线方式移动到语句中规定的点。(5)刀具描述刀具描述格式为:CUTTER/dCUTTER/d,rCUTTER/d,r,e,f……,h(6)公差的描述公差描述格式为:INTOLdsval,psval,cslval,cs2valOUTTOL/dsval,psval,cslval,cs2valTOLER/dsval,psval,cslval,cs2val11.2.4后置处理命令后置处理程序通过CLDATA与几何处理程序相连系。后置处理程序的功能可概括为:1)将CLDATA转换为机床的坐标;2)将CLDATA转换为具有:①主轴或工作台最大行程;②变换切削速度和进给速度;③变换准备、辅助功能;④完成直线和圆弧插补;⑤控制拐角加工时的超调量和;⑥控制程序带阅读时间、伺服调整时间等控制功能的NC程序段。3)提供:①要求的程序带;②特征列表打印和;③其他操作指令输出。G—POST(Generalisedpostprocessor)是美国通用计算机公司推出的商业化的通用后置处理程序。它是按照APT刀具定位文件设计的,能对多种机床加工控制轮廓进行计算,输出操作指定机床的控制介质。特定机床的后置处理程序,利用人机对话方式,由G—POST读出要求的选择文件,处理CLDATA文件而产生。选择文件包括控制G—POST功能的必要信息。最常用的后置处理指令有:AUXFUN、CLEAPR、COOLNT、COUPLE、CUTCOM、CYCLE、CYCLE、FEDRAT、LEADER、LOADTL、OPSKIP、PITCH、PREFUN、