第1页第二章数控机床加工程序编制基础主讲:辜良瑶第2页2.1概述2.2数控编程的基础2.3数控编程的指令代码2.4数控编程的数学处理2.5手动编程(编程举例)第3页在编制数控加工程序前,应首先了解:数控程序编制的主要工作内容,程序编制的工作步骤,每一步应遵循的工作原则等,最终才能获得满足要求的数控程序。2.1概述OXYADCB12281042%0001N01G92X0Y0N10G90G00X10Y12S600M03N20G01X10Y28F100N30G01X42Y28N40G01X42Y12N50G01X10Y12N60G00X0Y0N70M30第4页一、数控程序编制的定义编制数控加工程序是使用数控机床的一项重要技术工作,理想的数控程序不仅应该保证加工出符合零件图样要求的合格零件,还应该使数控机床的功能得到合理的应用与充分的发挥,使数控机床能安全、可靠、高效的工作。第5页将零件的工艺过程、工艺参数、刀具位移量及方向以及其它辅助动作(换刀、变速、冷却、夹紧等),按运动顺序用数控机床规定的指令代码和程序格式编成加工程序,再将程序通过传输介质,输出给数控装置,从而指挥数控机床加工的过程叫数控编程。——编写——工艺分析——对程序的处理第6页二、数控程序编制的内容及步骤数控编程是指从零件图纸到获得数控加工程序的全部工作过程。编程工作主要包括:(1)分析零件图样和制定工艺方案(工艺处理)(2)数学处理(3)编写零件加工程序(4)程序检验零件图样工艺人员夹具表工艺规程编程人员修改机床表刀具表编程手册加工程序初编零件试切第7页返回第8页三、数控程序编制的方法数控加工程序的编制方法主要有两种:手工编制程序和自动编制程序。(1)手工编程手工编程指主要由人工来完成数控编程中各个阶段的工作。第9页(2)计算机自动编程自动编程是指在编程过程中,除了分析零件图样和制定工艺方案由人工进行外,其余工作均由计算机辅助完成。第10页采用计算机自动编程时,数学处理、编写程序、检验程序等工作是由计算机自动完成的,并可自动绘制出刀具中心运动轨迹,使编程人员可及时检查程序是否正确,需要时可及时修改。由于计算机自动编程代替程序编制人员完成了繁琐的数值计算,可提高编程效率几十倍乃至上百倍,因此解决了手工编程无法解决的许多复杂零件的编程难题。I.采用基于APT语言的自动编程II.采用计算机高级语言进行辅助编程III.采用CAD/CAM集成系统进行数控编程(Pro/EUGIdeasMasterCAMCAXA)第11页ISO标准机床坐标系——采用右手笛卡尔直角坐标系。其中,X、Y、Z坐标轴的相互关系如下:2.2数控编程的基础2.2.1、坐标系1)伸出右手的大拇指、食指和中指,并互为90°。则大拇指代表X坐标,食指代表Y坐标,中指代表Z坐标。2)大拇指的指向为X坐标的正方向,食指的指向为Y坐标的正方向,中指的指向为Z坐标的正方向。1、机床坐标系的规定一、机床坐标系第12页3)围绕X、Y、Z坐标旋转的旋转坐标分别用A、B、C表示,根据右手螺旋定则,大拇指的指向为X、Y、Z坐标中任意轴的正向,则其余四指的旋转方向即为旋转坐标A、B、C的正向。第13页2、坐标轴1)Z坐标Z坐标的运动方向是由传递切削动力的主轴所决定的,即平行于主轴轴线的坐标轴即为Z坐标Z坐标的正向为刀具离开工件的方向。第14页对于刀具旋转的机床,如铣床、钻床、镗床等,平行于旋转刀具轴线的坐标为Z坐标;第15页•对于工件旋转的机床,如车床,外圆磨床等,则平行于工件轴线的坐标为Z坐标;第16页没有主轴的机床,则规定垂直于工件装夹表面的坐标为Z坐标(如刨床);第17页①如果工件做旋转运动(车床、磨床),则X坐标的方向是在工件的径向上,刀具离开工件的方向为X坐标的正方向。2)X坐标X坐标平行于工件的装夹平面,一般在水平面内。确定X轴的方向时,要考虑两种情况:第18页②如果刀具做旋转运动(铣床、钻床),则分为两种情况:Z坐标水平时,从刀具主轴后端向工件方向看,向右方向为X轴的正方向;Z坐标垂直时,面对刀具主轴向立柱方向看,向右方向为X轴的正方向。第19页在数控铣床加工中,一般是刀具不动(只做旋转运动),工件固定在工作台上,工作台移动。即工件运动。在数控车床上,一般是工件装夹在卡盘上做旋转运动,刀具运动。在编程时,我们始终认为工件静止,而刀具是运动的。这样编程人员在不考虑机床上工件与刀具具体运动的情况下,就可以依据零件图样,确定零件的加工过程。机床相对运动的规定第20页3)Y坐标Y坐标垂直于X、Z坐标,在确定X、Z坐标的正方向后,可以用根据X和Z坐标的方向,按照右手直角坐标系来确定Y坐标的方向。第21页3、机床原点机床原点是指在机床上设置的一个固定点,即机床坐标系的原点。它在机床装配、调试时就已确定下来,是数控机床进行加工运动的基准参考点。1)数控车床的机床原点在数控车床上,机床原点一般取在卡盘端面与主轴中心线的交点处。第22页2)数控铣床的机床原点在数控铣床上,机床原点一般设定在X、Y、Z坐标的正方向极限位置上。第23页编程坐标系是编程人员根据零件图样及加工工艺等建立的坐标系。编程坐标系一般供编程使用,确定编程坐标系时不必考虑工件毛坯在机床上的实际装夹位置。如下图所示,其中O2即为编程坐标系原点。二、编程坐标系第24页编程原点是根据加工零件图样及加工工艺要求选定的编程坐标系的原点。编程原点应尽量选择在零件的设计基准或工艺基准上,编程坐标系中各轴的方向应该与所使用的数控机床相应的坐标轴方向一致,如下图所示为车削零件的编程原点。第25页三、加工坐标系加工坐标系是指工件装夹后,用于建立编程坐标系与机床坐标系之间的关系所定义的虚拟坐标系。主要是确定零件装夹后,相应的编程原点在机床坐标系中的坐标或者机床原点在编程坐标系中的坐标。第26页例:以下图为例,在配置FANUC-OM系统的立式数控铣床上设置编程原点02。编程原点设置在工件轴心线与工件底端面的交点上。设工作台工作面尺寸为800mm×320mm,若工件装夹在接近工作台中间处,则确定了编程坐标系的位置,其编程原点02就在距机床原点O1为X3、Y3、Z3处。并且X3=-345.72mm,Y3=-196.22mm,Z3=-53.16mm。-345.72-53.16第27页1、G54~G59指令(教材P71)G54~G59用于确定编程原点在机床坐标系中的坐标。坐标值在数控机床的控制面板输入。在多数机床中常称为“零点偏移”。如对于上例选定的编程原点O2,如将其坐标值输入G54寄存器,即完成加工坐标系的设定:X3=-345.72mm,Y3=-196.22mm,Z3=-53.16mmG54X-345.72G54Y-196.22G54Z-53.16G55XG55YG55Z…………………G54G01X0Y0Z70F200第28页2、G92指令(教材P72)确定机床原点在编程坐标系中的坐标。程序段格式为:G92XYZX、Y、Z为机床原点在编程坐标系中的坐标。如上例中,使用G92的数控代码为:G92X345.72Y196.22Z53.16G01X0Y0Z70F200第29页•G50X25.0Z350.0•设定加工坐标系为X1O1Z1•G50X25.0Z10.0•设定加工坐标系为X2O2Z2工件坐标系设定35010O2Z1、Z2O1X1X225第30页一、字与字的功能1、地址和数字英文字母及各种字符称为地址;数字0~9(包括小数点,+,-号)称为数字。2、字在数控加工程序中,字由地址和数字组合而成,字是组成数控加工程序的最基本的代码。如:“X2500”是一个字,X为地址符,数字“2500”为地址中的内容。2.2.2数控编程的程序结构与格式第31页3、字的功能组成程序段的每一个字都有其特定的功能含义,以下是以FANUC-0M数控系统的规范为主来介绍的。(1)顺序号字N顺序号又称程序段号或程序段序号。顺序号位于程序段之首,由顺序号字N和后续数字组成。(2)准备功能字G准备功能字的地址符是G,又称为G功能或G指令,是用于建立机床或控制系统工作方式的一种指令。第32页(3)尺寸字尺寸字用于确定机床上刀具运动终点的坐标位置。第一组X,Y,Z,U,V,W用于确定终点的直线坐标尺寸;第二组A,B,C用于确定终点的角度坐标尺寸;第三组I,J,K用于确定圆弧轮廓的圆心坐标尺寸。用P指令暂停时间、用R指令圆弧的半径等。(4)进给功能字F进给功能字的地址符是F,又称为F功能或F指令,用于指定切削的进给速度。对于车床,F可分为每分钟进给和主轴每转进给两种,对于其它数控机床,一般只用每分钟进给。F指令在螺纹切削程序段中常用来指螺纹的导程。第33页(5)主轴转速功能字S主轴转速功能字的地址符是S,又称为S功能或S指令,用于指定主轴转速。单位为r/min。(6)刀具功能字T刀具功能字的地址符是T,又称为T功能或T指令,用于指定加工时所用刀具的编号。对于数控车床,其后的数字还兼作指定刀具长度补偿和刀尖半径补偿用。(7)辅助功能字M辅助功能字的地址符是M,后续数字一般为1~3位正整数,又称为M功能或M指令,用于指定数控机床辅助装置的开关动作。第34页常用地址符及其含义地址符说明程序号O或P或%程序编号地址程序段号N程序段顺序编号地址坐标字XYZ直线坐标轴ABC旋转坐标轴R圆弧半径IJK圆弧中心坐标加工功能G机床动作方式辅助功能M冷却液开关、主轴转停等补偿功能H刀具长度补偿D刀具直径补偿暂停功能P暂停运行刀具号T刀库中刀具编号切削用量F主轴转速S第35页4、程序格式数控机床的加工程序以程序字作为最基本的单位,程序字的集合构成程序段,程序段的集合又构成了完整的加工程序。注意:有的程序段(程序字)是所有程序中必不可少的,有的却是根据需要选择使用的。%O0006N10G54G90G49G80G17;N20M06T01;N30S1000M03;N40G00X0.Y0.M08;N60G01Z-6.F100;……%程序以%开始,%结束O0006称为程序号。程序中的每一行称为程序段,以“;”作为分行标记程序开始标记、程序号、程序段、程序结束标记是任何加工程序都必须具备的四个要素。第36页国际标准ISO6983-I-1982和我国的GB8870-88标准都推荐使用这种字地址程序段格式,并作了具体规定。N-G-X-Y-Z-…F-S-T-M-;例如:N20G01X25.Y-36.Z64.F100S300T02M03;程序段号字准备功能字尺寸字进给功能字主轴转速功能字刀具功能字辅助功能字程序结束符程序段的一般格式为(教材P66):第37页在程序段中,必须明确组成程序段的各要素:怎样的轨迹移动:准备功能字G;移动目标:终点坐标值X、Y、Z;进给速度:进给功能字F;主轴转速:主轴转速功能字S;使用刀具:刀具功能字T;机床辅助动作:辅助功能字M。第38页5、主程序和子程序子程序号和主程序号格式相同,即用O后缀数字组成。不同点在:程序结束的辅助功能不是M30,而是M99。子程序调用指令有以下三种格式(见教材P66图3-10):1)N10M98P0100;2)N10M98P0100L3;3)N10M98P60100;——调用子程序O0100一次——调用子程序O0100三次——调用子程序O0100六次第39页2.3数控编程的指令代码2.3.1数控编程常用指令代码分类1、准备功能G、辅助功能M、主轴功能S、进给功能F、刀具功能T代码2、模态G代码和非模态G代码3、模态M功能和非模态M功能4、前作用M功能和后作用M功能第40页1、尺寸单位设定指令一、单位设定指令尺寸单位设定指令有G20、G21。其中G20表示英制尺寸,G21表示公制尺寸。G21为缺省值。2、进给速度单位的设定指令G94、G95,均为模态指令,G94为缺省值。程序段格式为:G94F;或G95FG94设定每分钟进给量,G20-in/min、G21-mm/min。G95设定每转进给量,G20-in/r、G21-mm/r。2.3.2准备功能指令(G代码)第41页1、绝对尺寸指令和增量尺寸指令在加