数控编程的基础知识

  一个完整的零件加工程序由程序号(名)和若干个程序段组成,每个程序段由若干个指令字组成,每个指令字又由字母、数字和符号组成。例如:

  程序段格式是指一个程序段中指令字的排列顺序和表达方式。在国际标iso6983-i-1982和我国的gb8870-1988标准中都作了具体规定。目前数控系统广泛采用的是字地址程序段格式。

  字地址程序段格式由一系列指令字或称功能字组成,程序段的长短、指令字的数量都是可变的,指令字的排列顺序没有严格要求。各指令字可根据需要选用,不需要的指令字以及与上一程序段相同的续效指令字可以不写。这种格式的优点是程序简短、直观、可读性强、易于检验、修改。字地址程序段的一般格式如下:

  零件数控加工程序可由主程序和子程序组成。在一个加工程序中,如果有几个连续的程序段在多处重复出现,则可将这些重复使用的程序段按规定的格式独立编号成子程序,输入到数控系统的子程序存储区中,以备调用。程序中子程序以外的部分便称为主程序。在执行主程序的过程中,如果需要,可调用子程序,并可以多次重复调用。

  数控机床的坐标轴和运动方向,应有统一的规定,并共同遵守。这样将给数控系统和机床的设计、程序编制和使用维修带来极大的便利。

  (1)直线进给和圆周进给运动坐标系 机床的一个直线进给运动或一个圆周进给运动定义一个坐标轴。标准规定采用右手直角笛卡儿坐标系,即直线进给运动用直角坐标系x、y、z表示,常称为基本坐标系。 x、y、z坐标的相互关系用右手定则确定。围绕x、y、z轴旋转的圆周进给坐标轴分别用a、b、c坐标表示,其正向根据右手螺旋定则确定,如图2-3所示。

  为方便数控加工程序的编制以及使程序具有通用性,目前国际上数控机床的坐标轴和运动方向均已标准化。标准规定,在加工过程中无论是刀具移动,工件静止,还是工件移动,刀具静止,一般都假定工件相对静止不动,而刀具在移动,并同时规定刀具远离工件的方向作为坐标轴的正方向。

  1) z坐标 规定平行于机床主轴(传递切削动力)的刀具运动坐标为z坐标,取刀具远离工件的方向为正方向(+z)。

  对于刀具旋转的机床,如铣床、钻床、镗床等,平行于旋转刀具轴线的坐标为z坐标。 而对于工件旋转的机床,如车床、外圆磨床等,则平行于工件轴线) x坐标 规定x坐标轴为水平方向,且垂直于z轴并平行于工件的装夹面。对于工件旋转的机床(如车床、外圆磨床等),x坐标的方向是在工件的径向上,且平行于横向滑座 。同样,取刀具远离工件的方向为x坐标的正方向。对于刀具旋转的机床(如铣床、镗床等)则规定:当z轴为水平时,从刀具主轴后端向工件方向看,向右方向为x轴的正方向;当z轴为垂直时,面对刀具主轴向立柱方向看,向右方向为x轴的正方向。

  3) y坐标 y坐标垂直于x、z坐标。在确定了x、z坐标的正方向后可按右手定则确定y坐标的正方向。

  4) a、b、c坐标 a、b、c坐标分别为绕x、y、z坐标的回转进给运动坐标,在确定了x、y、z坐标的正万向后,可按右手螺旋定则来确定a、b、c坐标的正方向(图2-3)。

  (3)编程坐标系 工件与刀具是一对相对运动,在数控编程时,为了方便,一律假定工件固定不动,全部用刀具运动的坐标系编程。这样,即使在编程人员不知道刀具移近工件还是工件移近刀具的情况下,也能编制正确的程序。

  机床坐标系是机床上固有的坐标系,并设有固定的坐标原点,其坐标和运动方向视机床的种类和结构而定。

  机床坐标系的原点也称机床原点、机械原点。它是机床上的一个固定点,亦是工件坐标系的基准点,由机床制造厂确定。

  工件坐标系是编程人员在编程时使用的,是由编程人员以工件图样上的某一点为原点所建立的坐标系,编程尺寸都按工件坐标系中的尺寸确定。故工件坐标系也称编程坐标系。工件坐标系的原点也称工件原点、编程原点。它是可以用程序指令设置和改变的。在一个零件的全部加工程序中,根据需要,可以一次或多次设定或改变工件原点。

  机床坐标系与工件坐标系的关系如图2-4所示。一般说来,工件坐标系的坐标轴与机床坐标系相应的坐标轴相平行,方向也相同,但原点不同。在加工中,工件随夹具在机床上安装后,要测量工件原点与机床原点之间的坐标距离,这个距离称为工件原点偏置,这个偏置值需要预存到数控系统中。在加工时,工件原点偏置值能自动加到工件坐标系上,使数控系统按机床坐标系确定加工时的坐标值。

  (1)绝对坐标系 在坐标系中,所有的坐标点均以固定的坐标原点为起点确定坐标值,这种坐标系称为绝对坐标系(图2-5a)。

  (2)增量(相对)坐标系 在坐标系中,运动轨迹(直线或圆弧)的终点坐标值是以起点开始计算的,这种坐标系称为增量(相对)坐标系。增量坐标系的坐标原点是移动的,坐标值与运动方向有关(0图2-5b)。

  零件加工程序主要是由一个个程序段构成的,程序段又是由程序字构成的。程序字又分为尺寸字和功能宇,各种功能字是程序段的主要组成部分,功能字又称为功能指令或功能代码。常用的功能代码有准备功能g代码和辅助功能m代码,另外,还有进给功能f代码,主轴速度功能s代码,刀具功能t代码等。

  准备功能g代码和辅助功能m代码描述程序段的各种操作和运动特征,是程序段的主要组成部分。

  准备功能代码,简称g指令或g代码,它是使机床或数控系统建立起某种加工方式的指令。g代码由地址码g后跟两位数字组成,从g00至g99共有100种。

  g代码按功能类别分为模态代码和非模态代码。模态代码一旦被指定,功能一直保持到出现同组其它任一代码时才失效,否则继续保持有效。所以在编下一个程序段时,若需使用同样的g代码则可省略不写,这样可以简化加工程序编制。而非模态代码只在本程序段中有效。

  辅助功能代码,也称m功能、m指令或m代码。它由地址码m和其后两位数字组成。共有100种(m00~m99)。它是控制机床辅助动作的指令,主要用作机床加工时的工艺性指令。如主轴的开、停、正反转,切削液的开、关,运动部件的夹紧与松开等。

  (1) f代码 f代码为进给速度功能代码,它是续效代码,用来指定进给速度,单位一般为mm/min,当进给速度与主轴转速有关时(如车螺纹、攻螺纹等),单位为mm/r。

  (2) s代码 s代码为主轴转速功能代码。该代码为续效代码,用来指定主轴的转速,单位为r/min。它以地址符s为首,后跟一串数字。

  (3) t代码 t代码为刀具功能代码。在有自动换刀功能的数控机床上,该指令用以选择所需的刀具号和刀补号。它以地址符t为首,其后跟一串数字,数字的位数和定义由不同的机床自行确定。