数 控 铣削编程 ------ 2010 机电一体化技术专业 主编 韩文成 参编 郭瑞华 王凤霞 于婷婷 主审 王建明 电子信息与自动化系 ------ 2010 机电一体化技术专业 主编 韩文成 参编 郭瑞华 王凤霞 于婷婷 主审 王建明 电子信息与自动化系 主讲人: 韩文成
前 言 本讲义是根据机电一体化技术专业新的课程安排而编写。《机床数 控技术应用》课程是机电一体化技术专业学生学习的骨干课程之一。数 前 言 本讲义是根据机电一体化技术专业新的课程安排而编写。《机床数 控技术应用》课程是机电一体化技术专业学生学习的骨干课程之一。数 控机床是典型的机电一体化设备,而对数控编程的学习可深化机电一体 化技术专业学生对机电一体化技术的理解和学习,对今后的生产实践打 好基础。数控铣床的编程是学习数控编程的重要环节,这对于学生在今 后生产实践中学习应用其他编程知识有着重要作用。根据工学结合的实 际情况,针对机电一体化技术专业技能型人才的培养要求,本讲义采用 多个教学情境,利用较多的图表准确、较详细地描述数控铣床的编程步 骤及方法,适用于机电专业、数控专业学习者阅读和参考,每个部分突 出循序渐进的特点,可实现基于生产过程的理论与实践相统一的目的, 从而培养出机电一体化技术专业的技能型人才。
目 录 第一章 数控加工编程基础……………………………………………………1 目 录 第一章 数控加工编程基础……………………………………………………1 1.1 概述 ………………………………………………………………………1 1.2 编程基础知识 ……………………………………………………………4 1.3 常用准备功能指令的编程方法…………………………………………16 1.4 数控编程的工艺处理……………………………………………………30 1.5 加工刀具的选择…………………………………………………………36 习题一……………………………………………………………………42 第二章 数控铣床加工编程编制……………………………………………43 2.1 数控铣床的编程特点 ………………………………………………… 43 2.2 数控铣床编程中的特殊功能指令………………………………………43 习题二……………………………………………………………………52 第三章 数控铣床编程实例………………………………………………… 53 参考资料……………………………………………………………………61
第一章 数控加工编程基础 1.1 概述 数控程序:由程序号(名)和若干个程序段组成的加工程序,谓之。(每个程序段 第一章 数控加工编程基础 1.1 概述 1.1.1 数控编程的基本概念 数控程序:由程序号(名)和若干个程序段组成的加工程序,谓之。(每个程序段 由若干个指令字组成,每个指令字又由字母、数字、符号组成。) 国际上已经形成了两种通用的标准,即国际标准化组织(ISO)标准和美国电子工业学会(EIA)标准。 我国机械工业部根据ISO标准制定了JB3050-82《数字控制机床用七单位编码字符》、 JB3051-1999《数字控制机床坐标和运动方向的命名》、 JB3208-1999《数字控制机床穿孔带程序段格式中的准备功能G和辅助功能M代码》。
1.1.1 数控编程的基本概念 数控加工:是指在数控机床上进行零件加工的一种工艺方法。 在数控机床上加工零件时,首先要根据零件图样,按规定的代码及程序格式 将零件加工的全部工艺过程、工艺参数、位移数据和方向以及操作步骤等以数字 信息的形式记录在控制介质上(如穿孔带、磁带、U盘、移动硬盘等),然后输入 给数控装置,从而指挥数控机床加工。 数控编程:我们将从零件图样到制成控制介质的全部过程称为数控加工的程 序编制,简称数控编程。 编程就是将加工零件的加工顺序、刀具运动轨迹的尺寸数据、工艺参数(主 运动和进给运动速度、切削深度)以及辅助操作(换刀、主轴正反转、冷却液开 关、刀具夹紧、松开等)加工信息,用规定的文字、数字、符号组成的代码,按 一定格式编写成加工程序。 使用数控机床加工零件时,程序编制是一项重要的工作。迅速、正确而经济 地完成程序编制工作。对于有效地利用数控机床是重要环节之一。
1.1.2 数控编程的内容和步骤 第一章 数控加工编程基础 第一章 数控加工编程基础 1.1.2 数控编程的内容和步骤 数控编程的一般内容主要包括:分析零件图样、确定加工工艺过程、数值计算、编写零件加工程序、制作控制介质、程序校验和试切削等。数控编程的步骤一般如图1-1所示。具体过程如下:
第一章 数控加工编程基础 1.分析零件图样制定工艺方案: 在确定加工工艺过程时,编程人员要根据零件图样进行工艺分析,然后选择加工方案,确定加工顺序、加工路线、装卡方式、刀具、工装以及切削用量等工艺参数。这些工作与普通机床加工零件时工艺规程的编制基本上是相似的,但也有自身的一些特点。要考虑所用数控机床的指令功能,要充分发挥数控机床的效能。
2.数值计算 按已确定的加工路线和允许的零件加工误差,计算出所需的输人数控装置 的数据,称为数值计算。 第一章 数控加工编程基础 2.数值计算 按已确定的加工路线和允许的零件加工误差,计算出所需的输人数控装置 的数据,称为数值计算。 数值计算的主要内容是在规定的坐标系内计算零件轮廓和刀具运动的轨迹 的坐标值。数值计算的复杂程度取决于零件的复杂程度和数控装置功能的强 弱,差别很大。对于点位控制的数控机床(如数控冲床等)加工的零件,一般不 需要计算,只是当零件图样坐标系与编程坐标系不一致时,才需要对坐标进行 换算。对于形状比较简单的零件(如直线和圆弧组成的零件)的轮廓加工,需要 计算出几何元素的起点、终点、圆弧和圆心、两几何元素的交点或切点的坐标 值,有的还要计算刀具中心的运动轨迹坐标值。对于形状比较复杂的零件(如 非圆曲线、曲面组成的零件)的轮廓加工,需要用直线段或圆弧段逼近,根据 要求的精度计算出其节点坐标值。这种情况一般要用计算机来完成数值计算 的工作。
节点计算 (150,160,120)
第一章 数控加工编程基础 3.编写零件加工程序单 加工路线、工艺参数及刀具运动轨迹的坐标值确定以后,编程人员可以根据数控系统规定的功能指令代码及程序段格式,逐段编写加工程序单。此外,还应填写有关的工艺文件,如数控加工工序卡片、数控刀具卡片、数控刀具明细表等。 4.制备控制介质 制备控制介质(移动硬盘)就是把编制好的程序单上的内容记录在控制介质上作为数控装置的输入信息。控制介质的类型因数控装置而异。也可直接通过数控装置上的键盘将程序输入存储器。
5.程序校验首件试切: 程序单和制备好的控制介质必须经过校验和试切削才能用于正式加 工。 第一章 数控加工编程基础 5.程序校验首件试切: 程序单和制备好的控制介质必须经过校验和试切削才能用于正式加 工。 一般采用空走刀校验、空运转画图校验以检查机床运动轨迹与动作 的正确性。在具有图形显示功能和动态模拟功能的数控机床上,用图形 模拟刀具与工件切削(模拟加工)的方法进行检验更为方便。但这些方 法只能检验出运动是否正确,不能检查被加工零件的加工精度。因此, 还要进行零件的试切削。当发现有加工误差时,应分析误差产生的原因, 采取措施加以纠正。 从以上内容来看,作为一名编程人员,不但要熟悉数控机床的结构、 数控系统的功能及有关标准,而且还必须是一名好的工艺人员,要熟悉 零件的加工工艺、装卡方法、刀具、切削用量的选择等方面的知识。
1.1.3 数控编程的方法 数控编程的方法有两种:1.手工编程和2.自动编程。 1.手工编程: 第一章 数控加工编程基础 1.1.3 数控编程的方法 数控编程的方法有两种:1.手工编程和2.自动编程。 1.手工编程: 用人工完成程序编制的全部工作(包括用通用计算机辅助进行数值计 算)称为手工编程。 对于几何形状较为简单的零件,数值计算较简单。程序段不多,采 用手工编程较容易完成,而且经济、及时。手工编程时,整个程序的编制 过程是由人工完成的。这要求编程人员不仅要熟悉数控代码及编程规则, 而且还必须具备机械加工工艺知识和数值计算能力。对于点位加工或几何 形状不太复杂(直线+圆弧)的零件,数控编程计算较简单,程序段不多, 手工编程即可实现。
数控手工编程的主要内容包括分析零件图样、确定加工过程、数学处理、编写程序清单、程序检查、输入程序和工件试切。手工编程的步骤如 第一章 数控加工编程基础 数控手工编程的主要内容包括分析零件图样、确定加工过程、数学处理、编写程序清单、程序检查、输入程序和工件试切。手工编程的步骤如 图1-2 图1-2
2.自动编程 自动编程是用计算机把人们输入的零件图纸信息改写成数控机床能执行的 数控加工程序,就是说数控编程的大部分工作由计算机来实现。 第一章 数控加工编程基础 2.自动编程 自动编程是用计算机把人们输入的零件图纸信息改写成数控机床能执行的 数控加工程序,就是说数控编程的大部分工作由计算机来实现。 自动编程也称计算机辅助编程,即程序编制工作的大部分或全部由计算机 来完成。如完成坐标值计算、编写零件加工程序单、自动地输出打印加工程序 单和制备控制介质等。自动编程方法减轻了编程人员的劳动强度,缩短了编程 时间,提高了编程质量,同时解决了手工编程无法解决的许多复杂零件的编程 难题。工件表面形状愈复杂,工艺过程愈繁琐,自动编程的优势愈明显。 自动编程的方法种类很多,发展也很迅速。根据编程信息的输入和计算机 对信息的处理方式的不同,可以分为以自动编程语言为基础的自动编程方法 (简称语言式自动编程)和以计算机绘图为基础的自动编程方法(简称图形交互式 自动编程)。
1.2 编程的基础知识 1.程序的构成 1.2.1 零件加工程序的结构 一个完整的零件加工程序由程序号(名)和若干个程序段组成,每个程序段 第一章 数控加工编程基础 1.2 编程的基础知识 1.2.1 零件加工程序的结构 1.程序的构成 一个完整的零件加工程序由程序号(名)和若干个程序段组成,每个程序段 由若干个指令字组成,每个指令字又由字母、数字、符号组成。例如: O0600 N0010 G92 X0 Y0; N0020 G90 G00 X50 Y60; N0030 G01 X10 Y50 F150 S300 T12 M03; ....... N0100 G00 X-50 Y-60 M02; 上面是一个完整的零件加工程序。它由一个程序号和10个程序段组成。 最前面的“O0600”是整个程序的程序号,也叫程序名。每一个独立的程序都 应有程序号。它可作为识别,调用该程序的标志。
程序号的格式为: 程序号(名)(Program Number):以号码识别加工程序时,在每一程序的前端指定的编号。 第一章 数控加工编程基础 程序号的格式为: 程序号(名)(Program Number):以号码识别加工程序时,在每一程序的前端指定的编号。 程序名是一个程序必需的标识符。 组成:由地址符后带若干位数字组成。地址符常见的有:“%”、“O”、 “P”等,视具体数控系统而定。 示例:国产华中I型系统 “%”,后面所带的数字一般为4~8位。如:%2000 不同的数控系统,程序号地址码所用的字符可不相同。如日本FANUC系统用o,美国AB公司的AB8400系统用 P ,而德国的SMK8M数控系统则用%作为程序号的地址码。编程时一定要根据说明书的规定使用,否则系统是不会接受的。
第一章 数控加工编程基础 程序名有两种形式:一种是英文字母O(%或P)和1~4位正整数组成;另一种是由英文字母开头,字母数字多字符混合组成的程序名(如TEST1 等)。一般要求单列一段。 O0600 N0010 G92 X0 Y0; N0020 G90 G00 X50 Y60; N0030 G01 X10 Y50 F150 S300 T12 M03; ....... N0100 G00 X-50 Y-60 M02;
2.程序段格式:是指程序段中的字、字符和数据的安排形式和书写 第一章 数控加工编程基础 2.程序段格式:是指程序段中的字、字符和数据的安排形式和书写 规则。 (1)程序段是:为了完成某一动作要求所需功能“字”的组合。每一个字 是一个控制机床的具体指令,它由一个英文字母开头,其后跟几个数字 构成,是数控加工程序中的一条语句。(“字” --X60) (2)程序段格式:(定义:程序段中指令的排列顺序和书写规则)。不同的 数控系统往往有不同的程序段格式。程序段格式不符合要求,数控系统 就不能接受。 数控系统曾用过的程序段格式有三种:1、固定顺序程序段格式,2、带 分隔符的固定顺序(也称表格顺序)程序段格式和 3、字地址程序段格式。前 两种在数控系统发展的早期阶段曾经使用过,但由于程序不直观,容易出错。 故现在已几乎不用,目前数控系统广泛采用的是字地址程序段格式(ISO)。 下面仅介绍这一种格式。
第一章 数控加工编程基础 字地址程序段格式也叫地址符可变程序段格式。前面的例子就是采用这种格式。这种格式的程序段的长短,字数和字长(位数)都是可变的。字的排列顺序没有严格要求。不需要的字以及与上一程序段相同的续效字可以不写。这种格式的优点是程序简短,直观,可读性强,易于检验,修改。因此,现代数控机床广泛采用这种格式。(地址数字格式程序是ISO)
地址符可变程序段格式的特点: 程序段中的每个指令均以字母(地址符)开始,其后再跟数字或无符号的数字。 指令字在程序段中的顺序没有严格的规定,即可以任意顺序的书写 。 上段相同的模态指令(包括G、M、F、S及尺寸指令等)可以省略不写。
国际标准IS0 6983—I-1982和我国的GB 8870—1988标准都推荐使用这种字地址程序段格式,并作了具体规定。 第一章 数控加工编程基础 国际标准IS0 6983—I-1982和我国的GB 8870—1988标准都推荐使用这种字地址程序段格式,并作了具体规定。 字地址程序段的一般格式为:
程序段可以认为是由若干个程序字(指令字)组成。而程序字又由地址码和数字及代数符号组成。程序“字”的组成如下例所示: 例如:N0020 G01 X25 Y-36 Z64 F100 S100 T02 M03; 程序段可以认为是由若干个程序字(指令字)组成。而程序字又由地址码和数字及代数符号组成。程序“字”的组成如下例所示: 程序段的一般格式中,各程序字可根据需要选用。不用的可省略,在程序段中表示地址码的英文字母可分为尺寸地址码和非尺寸地址码两类。
程序段号: Nxxxx—表示程序段号,N开头,其后xxxx表示其后最多可 跟4位数,数字最前的0可省略不写。 每个程序段以程序段号“Nxxxx”开头,每一程序段结束用“;”号, 表示程序结束以程序结束指令M02或M30作为整个程序结束的符号。 【还有的系统用LF( ISO ) 、CR( EIA )、EOB等符号结束程序段】,每个程序段中有若干个指令字,每个指令字表示一种功能。一个程序段表示一个完整的加工步骤或动作。 一个程序的最大长度取决于数控系统中零件程序存储区的容量。现代数控系统的存储区容量已足够大,一般情况下已足够使用。一个程序段的字符数也有一定的限制。如某些数控系统规定一个程序段的字符数≤90个,一旦大于限定的字符数时,应把它分成两个或多个程序段。
O1000 N0001 G90 G00 X30 Y40 LF N0002 GO1 X80 Y100 F100 S150 Tll M03 LF 例如: % O1000 N0001 G90 G00 X30 Y40 LF N0002 GO1 X80 Y100 F100 S150 Tll M03 LF ┆ ┆ N0010 G00 X-30 Y-40 M02 EM % 这是一个完整的零件加工程序,它由10个程序段组成,每个程序段以序号“N”开头,用“LF”(EIA代码用CR)作结束符,也有一些数控系统的程序段没有结束符。整个程序开始于程序号O1000。以便区别于其它程序,程序号由地址码(O)及程序编码(1000)组成。不同的数控系统程序号地址码不同,如FANUC6M用“0”,SMK8M系统则用“%”等。整个程序用“EM”结束。
在程序段中 ,必须明确组成程序段的各要素: 移动目标 : 终点坐标值X、Y、Z; 沿怎样的轨迹移动: 准备功能字G; 进给速度: 进给功能字F; 切削速度: 主轴转速功能字S; 使用刀具: 刀具功能字T; 机床辅助动作: 辅助功能字M。
常用地址码及其含义见表1—1。 第一章 数控加工编程基础 功 能 地 址 意 义 程序号 (ISO) O ,(EIA) P,% 程序序号 第一章 数控加工编程基础 常用地址码及其含义见表1—1。 功 能 地 址 意 义 程序号 (ISO) O ,(EIA) P,% 程序序号 程序段号 N 顺序号 准备功能 G 动作模式(直线、圆弧等) 尺寸字(坐标字) X、Y、Z 坐标移动指令 A、B、C、U、V、W 附加轴移动指令 R 圆弧半径 I、J、K 圆弧中心坐标 切削用量 F 进给量或进给速率(进给功能) S 主轴转速(主轴旋转功能) 刀具功能 T 刀具号、刀具补偿号 辅助功能 M 辅助装置的接通和断开 补偿值 H或D 补偿序号 暂停 P、X 暂停时间 子程序号指定 P 子程序序号 子程序重复次数 L 重复次数 参数 P、Q、R 固定循环
程序内容: 程序内容部分是整个程序的核心,由若干个程序段组成,每个程序段由一个或多个指令字构成,每个指令字由地址符和数字组成,它代表机床的一个位置或一个动作,每一程序段结束用“;”号。 程序段结束字:ISO标准用LF代码,EIA中用CR代码,也可用符号 “*” 或“;”表示。 (FANUC系统中,地址中的值如果带小数点,表示是毫米单位,如果不带小数点,表示是微米单位。如X2500. 表示X坐标2500毫米 X2500 表示X坐标2500微米)
加工程序的一般格式(ISO)举例: % // 开始符 O 2000 // 程序名 程序开始符、结束符是同一个字符,ISO代码中是%,EIA (美国电子工业学会标准)代码中是EP,书写时要单列一段。 加工程序的一般格式(ISO)举例: % // 开始符 O 2000 // 程序名 N10 G54 G00 X10 Y20 M03 S1000; // 程序主体 N20 G01 X60 Y30.0 F100 T02 M08; N30 X80; …… ; N200 M30; // 程序结束 % // 结束符
在执行主程序的过程中,如果需要,可多次重复调用子程序,有的还允许在子程序中再调用另外的子程序,即所谓“多层嵌套”,从而大大简化了编程工作。 第一章 数控加工编程基础 3.主程序和子程序 为了方便程序编写,有时也往往将一些多次重复用到的程序段,单独抽出做成子程序存放,这样就将整个加工程序做成了主-子程序的结构形式。 在执行主程序的过程中,如果需要,可多次重复调用子程序,有的还允许在子程序中再调用另外的子程序,即所谓“多层嵌套”,从而大大简化了编程工作。
数控加工程序可分为主程序和子程序。在 一个加工程序中,如果有几个连续的程序段在 多处重复出现(例如,在一块较大的工件上加 工多个相同形状和尺寸的部位),就可将这些 重复使用的程序段按规定的格式独立编写成子 程序,输入到数控装置量的子程序存储区中, 以备调用。程序中子程序以外的部分便称为主 程序。在执行主程序的过程中,如果需要,可 调用子程序,并可以多次重复调用。有些数控 系统,子程序执行过程中还可以调用其他的子 程序,即子程序嵌套。这样可以简化程序设计, 缩短程序的长度。带子程序的程序执行过程如: 图1-2所示。
子程序的调用 任何主程序中都可以调用和执行子程序,子程序可以嵌套子程序,从主程序最多可调用11个嵌套子程序。例如:主程序%28调用子程序L123,循环执行5次结束,用P5表示循环数;字程序L123又调用嵌套子程序L124,循环执行9次结束,用P9表示循环数;主程序结束。
1.子程序的结构 L200.SPF N10 G00 X…Y…Z… N20 …… …… N80 M17 ;子程序名 ; …… 子程序1: N01……; N××……M99 ; 子程序8: N01……LF 1.子程序的结构 L200.SPF N10 G00 X…Y…Z… N20 …… …… N80 M17 ;子程序名 ; 子程序结束 子程序内容
例1 加工板状零件,零件尺寸为100mm×80mm×20mm,材料为铝材。假设零件为半成品,100mm×80mm×20mm的外形尺寸已经加工到位,只是要加工四个形状一样的凸台,凸台高度为5mm。
1.零件图分析 该零件有四个形状一样的轮廓,可以采用子程序编程,为了实现在不同位置上子程序的调用,子程序需采用相对坐标值编程。 2.确定工件的装夹方式 本案例采用虎钳装夹,零件表面高出虎钳上表面>5mm;设定工件上表面的对称中心为编程零点。 3.确定数控加工刀具及加工工序卡 根据零件形状特点,选用φ10 mm的键槽铣刀进行加工。
数控加工工序卡 零件名称 板 数量(件) 1 日期 零件材料 铝 尺寸单位 mm 工作者 零件规格 100×80×20 备注 工序 名称 工艺要求 下料 100×80×20半成品板料一块 2 数控铣 工步 内容 刀具号 刀具类型 刀具直径/mm 主轴 转速r/min 进给 速度 mm / min 铣凸台轮廓 T01 键槽铣刀 φ10 2100 500
4.编写程序 % O0300; N010 G90 G54 ; N020 T01; N030 M06; N040 S2100 M03 F500; N050 G00 X0 Y0 Z5; N060 L1; N070 G00 X-50 Y0 ; N080 L1; N090 G00 X-50 Y-40 Z5; N100 L1; N110 G00 X0 Y-40 Z5; N120 L1; N130 G01 Z-5; N140 X-10 Y-10; …… N250 G00 Z100; N260 M30; L1 N005 G91; N015 G01 Z-10 M08; N025 G41 X5 Y5; N035 Y30; N045 X20; N055 G02 X5 Y-5 CR=5; N065 G03 X10 Y-10 CR=10; N075 G02 X5 Y-5 CR=5; N085 G01 Y-10; N095 X-40; N105 Z10 M09; N115 G40 X-5 Y-5; N125 G90 X0 Y0; N135 M17 ; (子程序结束)
1.2.2 数控机床的坐标系 1.坐标轴及运动方向的规定 (1)直线进给和圆周进给运动坐标系。 +B X、Y、Z Y +A X +C Z 第一章 数控加工编程基础 1.2.2 数控机床的坐标系 1.坐标轴及运动方向的规定 数控机床的坐标轴和运动方向,有统一的规定,并共同遵守。这样将给数控系统和机床的设计、程序编制和使用维修带来极大的便利。因此,ISO组织和我国有关部门都制定了相应的标准,并且两者是等效的。 (1)直线进给和圆周进给运动坐标系。 机床的一个直线进给运动或一个圆周进给运动定义一个坐标轴。标准规定采用右手直角笛卡儿坐标系,即直线进给运动用直角坐标系X、y、Z表示,常称为基本坐标系。X、y、Z坐标的相互关系用右手定则规定。围绕X、y、Z轴旋转的圆周进给坐标商分别用A、B、C坐标表示,其正向根据右手螺旋定则确定。如图1-3所示。 X Y Z X、Y、Z +A、+B、+C +C +B +A 图1-3
数控机床的进给运动是相对运动,有的是刀具相对于工件的运动(如车床),有的是工件相对于刀具的运动(如铣床)。所以标准统一规定:上述坐标系是假定工件不动,刀具相对于工件作进给运动的坐标系。如果是刀具不动,工件运动的坐标则用加“ ’ ”的字母表示。显然,工件运动坐标的正方向与刀具运动坐标的正方向相反。 按标准统一规定,以增大工件与刀具之间距离的方向(即增大工件尺寸的方向)为坐标轴的正方向。(即刀具远离工件的方向为坐标轴的正方向)
(2)机床坐标轴的确定方法。 图1-4至图1-7分别给出了几种典型机床的标准坐标系简图。图中字母表示运动的坐标,箭头表示正方向。这些坐标轴和运动方向是根据以下规定确定的。 图1-5 立式升降台铣床 图1-4 卧式车床图
1)Z坐标。规定平行于机床主轴(传递切削运动)的刀具运动坐标为Z 坐标,取刀具远离工件的方向为正方向。 图 1-6 卧式升降台铣床 图1-7 牛头刨床 1)Z坐标。规定平行于机床主轴(传递切削运动)的刀具运动坐标为Z 坐标,取刀具远离工件的方向为正方向。 对于刀具旋转的机床,如铣床、钻床、镗床等,平行于旋转刀具轴线的坐标为Z坐标,而对于工件旋转的机床,如车床、外圆磨床等,则平行于工件轴线的坐标为Z坐标。
对于没有主轴的机床,则规定垂直于工件装夹表面的坐标为Z坐标(如刨床)。 如果主轴能摆动,在摆动范围内只与主坐标系中的一个坐标平行时。则这个坐标就是Z坐标。如摆动范围内能与主坐标系中的多个坐标相平行时,则取垂直于工件装夹面的坐标作为Z坐标。 图1-7 牛头刨床
2)X坐标。规定X坐标轴为水平方向,且垂直于Z轴并平行于工件的装夹面。 对于工件旋转的机床(如车床,外圆磨床等),X坐标的方向是在工件的径向上,且平行于横向滑座。同样,取刀具远离工件的方向为X坐标的正方向。对于刀具旋转的机床(如铣床,镗床等),则规定:当Z轴为水平时,从刀具主轴后端向工件方向看,向右方向为X轴的正方向;当Z轴为垂直时,对于单立柱机床,面对刀具主轴向立柱方向看,向右方向为X轴的正方向。
3)Y坐标。Y坐标垂直于X、Z坐标。在确定了X、Z坐标的正方向后,可按 4)A、B、C坐标。A、B、C坐标分别为绕X、Y、Z坐标的回转进给运动坐 标,在确定了X、Y、Z坐标的正方向后,可按右手螺旋定则来确定A、 B、C坐标的正方向。 5)附加运动坐标。X、Y、Z为机床的主坐标系或称第一坐标系。如除了 第一坐标系以外还有平行于主坐标系的其他坐标系则称为附加坐标系。附加的第二坐标系命名为U、V、W。第三坐标系命名为P、Q、R。所谓第一坐标系是指与主轴最接近的直线运动坐标系,稍远的即为第二坐标系。 若除了A、B、C第一回转坐标系以外,还有其他的回转运动坐标,则命名为D
试标出图中各机床的坐标系。
(3)编程坐标系。 由于工件与刀具是一对相对运动。+X ’与+X、+Y ’与+Y、+Z ’与+Z有确定的关系。所以在数控编程时,为了方便,一律假定工件固定不动,全部用刀具运动的坐标系编程。也就是说只能用标准坐标系X、Y、Z、A、B、C在图纸上进行编程。这样,即使在编程人员不知刀具移近工件还是工件移近刀具的情况下。也能编制正确的程序。
2.机床坐标系与工件坐标系 (1)机床坐标系与机床原点。 机床坐标系是机床上固有的坐标系,并设有固定的坐标原点,其坐标和运动方向视机床的种类和结构而定。一般利用机床机械结构的基准线来确定。在机床说明书中均有规定。 机床坐标系的原点也称机床原点、机械原点。它是固有的点,不能随意改变。 注意:机床坐标系一般不作为编程 坐标系,仅作为工件坐标系 的参考坐标系。 工件坐标系与机床坐标系的关系
Z Y O X 机床回零
(2)工件坐标系。 工件坐标系是编程人员在编程时使用的,由编程人员以工件图纸上的某一 点为原点所建立的坐标系。 编程尺寸都按工件坐标系中的尺寸确定。故工件坐标系也称编程坐标系。 工件坐标系的原点也称工件原点、编程原点。它是可以用程序指令设置和 改变的。在一个零件的全部加工程序中,根据需要,可以一次或多次设定或改 变工件原点。
Y轴偏置量 X轴偏置量 工件原点 Z轴偏置量 Y轴 机床原点 X轴 Z轴 卧式数控机床的坐标系 Z 轴偏置量 立式数控机床的坐标系
(3)机床坐标系与工件坐标系的关系。 机床坐标系与工件坐标系的关系如图1-8所示。一般说来,工件坐标系的坐标轴与机床坐标系相应的坐标轴相平行,方向也相同,但原点不同。在加工中,工件随夹具在机床上安装后,要测量工件原点与机床原点之间的坐标距离,这个距离称为工件原点偏置。这个偏置值需预存到数控系统中。在加工时,工件原点偏置值便能自动加到工件坐标系上,使数控系统可按机床坐标系确定工时的坐标值。
工件原点与工件坐标系 工件原点:为编程方便在零件、工装夹具上选定的某一点或与之相关的点。该点也可以是对刀点重合。 工件坐标系:以工件原点为零点建立的一个坐标系,编程时,所有的尺寸都基于此坐标系计算。 工件原点偏置:工件随夹具在机床上安装后,工件原点与机床原点间的距离。 现代数控机床均可设置多个工件坐标系,在加工时通过G指令进行换置。
定义 绝对坐标编程和增量(相对)坐标编程 绝对坐标编程:编程中所有点的坐标值基于某一坐标系(机床或工件) 零点计量的编程方式。 相对坐标编程:编程中运动轨迹的终点坐标值是相对于起点计量的编程方式(增量坐标编程)。
绝对坐标 增量坐标 (25,50) (15,30)
选用原则:主要根据具体机床的坐标系,考虑编程的方便(如 表达方式:G90/G91; 选用原则:主要根据具体机床的坐标系,考虑编程的方便(如 图纸尺寸标注方式等)及加工精度的要求,选用坐 标的类型。 注意:在机床坐标系和工件坐标系中均可用绝对坐标编程;而在 使用相对坐标编程时,上述两个坐标系是无意义的。
第一种方法表示为: X12530 Z40525 μm 第二种方法表示为: X125.30 Z405.25 mm 4.最小设定单位与编程尺寸的表示法 机床的最小设定单位,即数控系统能实现的最小位移量,是机床的一个重要技术指标,又称最小指令增量或脉冲当量。一般为0.0001-0.01 mm,视具体数控机床而定。 在编程时,所有的编程尺寸都应转换成与最小设定单位相对应的数量。编程尺寸有两种表示法,不同的数控机床可有不同规定。一种是以最小设定单位(脉冲当量)为最小单位来表示。另一种是以毫米为单位,以有效位小数来表示。例如某坐标点的尺寸为X=125.30mm,Z=405.247 mm,最小设定单位为0.01mm,则: 第一种方法表示为: X12530 Z40525 μm 第二种方法表示为: X125.30 Z405.25 mm 目前这两种表示方法都有应用,不同的数控机床有不同的规定。编程时,数据用哪种方法表示一定要遵守具体机床的规定。
第一章 数控加工编程基础 1.2.3 功能代码简介 如前所述,零件加工程序主要是由一个个程序段构成的,程序段又是由程序字构成的。程序字可分为尺寸字和功能字。各种功能字是程序段的主要组成部分,功能字又称为:功能指令或功能代码。常用的功能代码有准备功能G代码和辅助功能M代码,另外,还有进给功能F代码,主轴转速功能S代码,刀具功能T代码等。 准备功能G代码和辅助功能M代码描述了程序段的各种操作和运动特征,是程序段的主要组成部分。国际上已广泛使用ISO制定的G代码和M代码标准。我国也已制定了与ISO标准等效的JB/T 3208-1999标准。
一、代码及其分类 定义:系统操作命令的总称,为代码或编程指令。它由文 字、数字、符号以及它们的组合组成,它是程序的最 小功能单元。 应当指出,有些国家或公司集团所制定的G、M代码的功能含义与ISO标准不完全相同。实际编程时,须按照用户使用说明书的规定执行。
1.准备功能G代码 功能:规定机床做某种操作的指令,包括运动线型、坐标系、坐 标平面、刀具补偿、暂停等操作。 第一章 数控加工编程基础 1.准备功能G代码 功能:规定机床做某种操作的指令,包括运动线型、坐标系、坐 标平面、刀具补偿、暂停等操作。 组成:G后带2位数字组成,有99-100种。有模态(续效)指 令与非模态(非续效)指令之分。 准备功能G代码,简称G功能、G指令或G代码。它是使机床或数控系统建立起某种加工方式的指令。G代码由地址码G后跟两位数字组成,从GOO至G99共有100种。 表1—2为我国JB3208--83标准中规定的G代码的定义。 (讲义P.13)
表1-2 主要准备G功能表 第一章 数控加工编程基础 组别 G代码 功能 01 G00 点定位(快速进给) G01 直线插补(切削进给) 第一章 数控加工编程基础 表1-2 主要准备G功能表 组别 G代码 功能 01 G00 点定位(快速进给) G01 直线插补(切削进给) G02 顺时针圆弧插补 G03 逆时针圆弧插补 00 G04 暂停 准确停止 02 G17 XY平面选择 G18 ZX平面选择 G19 YZ平面选择 09 G40 取消刀具补偿 G41 左刀具半径补偿 G42 右刀具半径补偿 13 G90 绝对尺寸编程 G91 增量(相对)尺寸编程
G代码分为模态代码(又称续效代码)和非模态代码(又称非续效代码)两类。模态代码表示该代码在一个程序段中被使用(如G01)后就一直有效,直到出现其他任一G代码(如G02)时才失效。同一模态代码在同一个程序段中不能同时出现,否则只有最后的代码有效。G代码通常位于程序段中尺寸字之前。 下面举一例说明模态代码的用法。 N001 G00 G17 X__ Y__ M03 M08; N002 G01 G42 X__ Y__ F__; N003 X__ Y__; N004 G02 X__ Y__ I__ J__; N005 X__ Y__ I__ J__; N006 G01 X__ Y__; N007 G00 G40 X__ Y__ M05 M09;
2.辅助功能M代码 功能:控制机床及其辅助装置的动作或状态。如开、停冷却 泵;主轴正反转、停转;程序结束等 组成:M后带2-3位数字组成,共有M00-M99种。有模态(续 效)指令与非模态(非续效)指令之分。 辅助功能代码,也称M功能、M指令或M代码。它由地址码M和其他两位数字组成。共有100种(MOO—M99)。它是控制机床辅助动作的指令,主要用作机床加工时的工艺性指令。如主轴的开、停、正反转,切削液的开、关,运动部件的夹紧与松开等。
表 1-3 M代码 功 能 M00 程序停止 M01 计划(任选)停止 M02 程序结束 M03 主轴顺时针旋转 M04 主轴逆时针旋转 表 1-3 M代码 功 能 M00 程序停止 M01 计划(任选)停止 M02 程序结束 M03 主轴顺时针旋转 M04 主轴逆时针旋转 M05 主轴停止旋转 M06 换刀 M08 冷却液开 M09 冷却液关 M30 程序结束并返回 M74 错误检测功能打开 M75 错误检测功能关闭 M98 子程序调用 M99 子程序调用返回
数控编程 辅助功能由M代码来实现,本机床可供用户使用的M代码列表如下: P.59 M代码 功能 M00 程序停止 M01 条件程序停止 M02 程序结束 M03 主轴正转 M04 主轴反转 M05 主轴停止 M06 刀具交换 M08 冷却开 M代码 功能 M09 冷却关 M18 主轴定向解除 M19 主轴定向 M29 刚性攻丝 M30 程序结束并返回程序头 M98 调用子程序 M99 子程序结束返回/重复执行 讲义P.15 一般地,一个程序段中,M代码最多可以有一个。 M指令国际标准IS01056—1975(E)。我国根据制订了部颁标准 JB3208—1983。它所规定的M00至 M99的功能。
M00 程序停止。暂停程序的执行,按“启动”键程序继续执行。 意义:通常用于加工中间有计划的人工干预, 数控编程 M00 程序停止。暂停程序的执行,按“启动”键程序继续执行。 意义:通常用于加工中间有计划的人工干预, 如测量、检查、更换压板等,因此也称为计 划暂停。 M01 条件程序停止。与M00一样,但仅在“条件停止( M01 )有 效”功能被软件或接口信号触发后才生效。加工中可 以随机设置控制其是否有效。 M02 程序结束。包括主程序与子程序结束皆可使用。 M03 主轴正转 。即从主轴尾端向头部看顺时针旋转(采用右旋刀具 的加工旋转方向。)
M04 主轴反转。即从主轴尾端向头部看逆时针旋转 数控编程 M04 主轴反转。即从主轴尾端向头部看逆时针旋转 M05 主轴停止。 M06 更换刀具。应用于加工中心,一般数控车床不用M06而采用 T__直接换刀。 M07 冷却开(第一冷却,雾状) M08 冷却开(第二冷却,液状) M09 冷却关 M17 子程序结束 M18 主轴定向解除 M19 主轴定向
M29 刚性攻丝 M30 程序结束并返回程序头 M98 调用子程序 M99 子程序调用结束返回/重复执行 数控编程 M29 刚性攻丝 M30 程序结束并返回程序头 M98 调用子程序 M99 子程序调用结束返回/重复执行 刚性攻丝( Rigid tapping ) 攻丝操作不使用浮动卡头而是由主轴的回转与攻丝进给轴的同步运行实现。主轴回转一转,攻丝轴的进给量等于丝锥的螺距,这样可提高精度和效率。 欲实现刚性攻丝,主轴上必须装有位置编码器(通常是 1024 脉冲 / 每转),并要求编制相应的梯形图,设定有关的系统参数。 铣床,车床(车削中心)都可实现刚性攻丝。但车床不能像铣床一样实现反攻丝。
3.F、S、T代码 (1)F代码-指定(合成)进给速度指令。 F代码为进给速度功能代码,它是模态代码(续效代码),用来指定进给速度,单位一般为mm/min,当进给速度与主轴转速有关时(如车螺纹、攻丝等),单位为mm/r,F代码常有两种表示方法。 1)编码法即在地址符F后跟一串数字代码,这些数字不直接表示进给速度的大小,而是机床进给速度数列的序号(编码号),具体的进给速度需查表确定。 2)直接指定法即F后面跟的数字就是进给速度的大小。例如:F100表示进给速度是100mm/min,这种方法较为直观,因此,现代数控机床大多采用这一方法。
F 指令 单位: F32——F为进给速度指令字,“32”表示小数点前取3位数,小数点后可跟2位数。 与主轴转速无关:mm/min 与主轴转速有关:mm/r 切螺纹/攻丝/套扣:mm/r 进给仅用于回转运动:rad/min F32——F为进给速度指令字,“32”表示小数点前取3位数,小数点后可跟2位数。
(2)S代码(切削速度)--指定主轴转速指令。 S代码为主轴转速功能代码。该代码为模态代码(续效代码),用来指定主轴的转速,单位为r/min。它以地址符S为首,后跟一串数字,这串数字的表示方法与F指令完全相同,也有编码法和直接指定法二种。 主轴的实际转速常用数控机床操作面板上的主轴速度倍率开关来调整。倍率开关通常在50%~200%之间设有许多挡位。编程时总是假定倍率开关指在100%的位置上。
(3)T代码--指定刀具号和刀具长度、半径存放寄存器号指令。 T代码为刀具功能代码。在有自动换刀功能的数控机床上,该指令用以选择所需的刀具号和刀补号。它以地址符T为首,其后跟一串数字,数字的位数和定义由不同的机床自行确定。一般用两位或四位数字来表示。例如:
1.3 常用准备功能指令的编程方法 1.3.1 与坐标系相关的指令 1.绝对坐标与增量(相对)坐标指令——G90、G91 1.3 常用准备功能指令的编程方法 功能指令是程序段组成的基本单位,是编制加工程序的基础。本节主要讨论常用的准备功能指令的编程方法与应用。下面所涉及的指令代码均以ISO标准为准。 1.3.1 与坐标系相关的指令 1.绝对坐标与增量(相对)坐标指令——G90、G91 在一般的机床数控系统中,为方便计算和编程,都允许绝对坐标方式和增量坐标方式及其混合方式编程。这就必须用G90、G91指令指定坐标方式。G90表示程序段中的坐标尺寸为绝对坐标值。G91则表示为增量坐标值。
例:图1-11示出AB和BC两个直线插补程序段的 绝对坐标方式:G90 C01 X30 Y40; 增量坐标方式:G91 C01 X-50 Y-30;
注意: 1)绝对坐标方式编程时终点的坐标值在绝对坐标系中确定,增量坐标方式编 程时终点的坐标值在增量坐标系中确定。 2)某些机床的增量坐标尺寸不用G91指定,而是在运动轨迹的起点建立平行于 X、Y、Z的增量坐标系U、V、W。如图2—11在B点建立U、V坐标系,其程序 段为: G01 U-50 V-30(增量尺寸) 它与程序段G91 C01 X-50 Y-30等效。 上述二种方法根据具体机床的规定而选用。
在编程中,绝对坐标系和增量坐标系均可采用。可从加工精度要求和编程方便程度等角度来考虑合理选用坐标系的类型。例如:如图2-10(a)所示,由一个固定基准给定零件的加工尺寸时,显然采用绝对坐标是方便的。而当加工尺寸是以图2-10(b)的形式给出各孔之间的间距时,采用增量坐标则是方便的。
2.坐标系设定指令——G54-G59、G92 编制程序时,首先要设定一个坐标系,程序中的坐标值均以此坐标系为根据,此坐标系称为工件坐标系。 般是对刀点)相对于机床坐标系的偏移量。当数控程序中出现 该指令时,数控系统即根据其中存放的偏移量确定加工坐标 系。 G92是根据刀具起始点与加工坐标系的相对关系确定加工坐标系, 其格式示例为G92 X20 Y30 Z40。它表示刀具当前位置(一般 为程序起点位置)处于加工坐标系的(20,30,40)处,这样 就等于通过刀具当前位置确定了加工坐标系的原点位置。
工件坐标系原点可以设定在工件基准或工艺基准上,也可以设定在卡盘端面中心(如数控车床)或工件的任意一点上。而刀具刀位点的起始位置(起刀点)可以放在机床原点或换刀点上,也可以是任意一点。 应该注意的G92指令只是设定坐标系原点的位置,执行该指令后,刀具(或机床)并不产生运动,仍在原来位置。所以在执行G92指令前刀具必须放在程序所要求的位置上。
第一章 数控加工编程基础 图1-23 对刀点与换刀点
预置工件坐标系的设定(G54-工件零点的设定) 预置工件坐标系G54~G59的设定,可在MDI(手动)方式菜单中选按“坐标系F3”,切换到工件坐标系G54设定屏幕。 如果欲将当前位置点设为G54的零点,可根据屏幕右上角显示的当前点在机床坐标系中的坐标值数据,在MDI命令行输入该数值后回车,则屏幕显示如图下所示。
预置工件坐标系的设定
图1-12为数控车床的工件坐标系设定 举例,为方便编程,通常将工件坐标系原 点设定在主轴轴线与工件右端面的交点处 (图1-12 Op)图中设 α=320,β=200,坐标系设定程序为: G92 X320 Z200;
3.坐标平面选择指令——G17、G18、G19 G17、G18、G19指令分别表示设定选择XY、ZX、 YZ平面为当前工作平面。对于三坐标运动的铣床和加工中心,特别是可以三坐标控制,任意二坐标联动的机床,及所谓2(1/2)坐标机床,常需要用这些指令制定机床在哪一平面进行运动。由于XY平面最常用,故G17可以省略,对于两坐标控制的机床,如车床总是在XZ平面内运动,故无需使用平面指令。 XY 插补平面 XZ 插补平面 YZ 插补平面
1.3.2 运动控制指令 1、快速定位(G00)(快速进给)模态代码(续效) 指令格式 G00 X__ Y__ Z__; 指令说明: 即刀具快速移动到指定坐标,用于刀具在非切削状态下的快速移动,其移动速度取决于机床本身的技术参数。 指令格式 G00 X__ Y__ Z__; 如:刀具快速移动到点(100,100,100)的指令格式为: G00 X100 Y100 Z100; 指令说明: (1)X、Y 、Z后面为终点坐标值。 (2)刀具所经过的路径不作严格的要求,可直线可折线。 (3)在G90时为终点在工件坐标系中的坐标; 在G91时为终点相对于起点的位移量。 (空间折线移动)
说明: 1、G00 一般用于加工前快速定位或加工后快速退刀。 2、为避免干涉,通常的做法是:不轻易三轴联动。一般先 数控编程 说明: 1、G00 一般用于加工前快速定位或加工后快速退刀。 2、为避免干涉,通常的做法是:不轻易三轴联动。一般先 移动一个轴,再在其它两轴构成的面内联动。 如:进刀时,先在安全高度Z上,移动(联动)X、Y 轴,再下移Z轴到工件附近。退刀时,先抬Z轴,再移 动X-Y轴。
数控编程 G00: 快速线型移动 执行该指令,刀具将以机床设定的空运行速度,由原在位置快速移动到给定位置。 1 卡盘 X 2 Z 工件
2、直线插补指令-G01 模态代码(续效) 指令格式 G01 X__ Y__ Z__ F__ ; 即刀具以指定的速度直线运动到指定的坐标位置,是进行切削运动的两种主要方式之一。 指令格式 G01 X__ Y__ Z__ F__ ; 如:刀具以250mm/min的速度直线插补运动到点(100,100,100)的指令格式为: G01 X100 Y100 Z100 F250; 其中:X、Y、Z为直线终点的绝对或增量(相对)坐标。 F为沿插补方向的进给速度。
对刀点:刀具相对于工件运动的起点,又称起刀点,也就是程序运行的起点。(G92 X– Y– Z--;) 数控编程 (1)X、Y 、Z后面为终点坐标值。 (2)刀具所经过的路径为直线。 (3)在G90时为终点在工件坐标系中的坐标; 在G91时为终点相对于起点的位移量。 指令说明 对刀点与换刀点 对刀点:刀具相对于工件运动的起点,又称起刀点,也就是程序运行的起点。(G92 X– Y– Z--;)
X 1 2 工件 Z G01: 直线插补 (带进给率:100%) 执行该指令,刀具将以设定的进给速度,由原在位置沿直线移动到给定位置。 卡盘 数控编程 G01: 直线插补 (带进给率:100%) 执行该指令,刀具将以设定的进给速度,由原在位置沿直线移动到给定位置。 X 1 卡盘 2 2 工件 Z
直线插补G01 (1)功能:刀具以指定的进给速度从当前点沿直线移动到目标点。 例3:如图所示,刀具从A点直线插补到B点。 数控编程 直线插补G01 (1)功能:刀具以指定的进给速度从当前点沿直线移动到目标点。 (2)格式:G01 X _ Y _ Z _ F _; 例3:如图所示,刀具从A点直线插补到B点。 以绝对坐标尺寸编程 G90 G01 X45 Y30 F100 ; 或以增量(相对)坐标尺寸编程 G91 G01 X35 Y15 F100; 直线插补
例2-1 车削加工如图1-13所示零件(精加工,直径φ40的外圆不加工)设A为起刀点,刀具由A点快进至B点,然后沿B—C—D—E—F方向切削,在快退至A点。 程序编制如下: O0020 N0010 G92 X50 Z10;(设定编程原点) N0020 G90 G00 X20 Z2 S600 T11 M03;(快进A—B) N0030 G01 X20 Z-14 F100; (车外圆B—C) N0040 G01 X20 Z-38; (车圆锥C—D) N0050 G01 X28 Z-48; (车外圆D—E) N0060 G01 X42 Z-48; (车平面E—F) N0070 G00 X50 Z10 M02; (快退至起刀点F—A)
例2-2 铣削加工如图1-14所示轮廓,P点为起刀点,刀具由P快速移至A点,然后沿A—B—O—A方向铣削,再快速返回P点。其程序如下: 1、用绝对值方式编程: O0050 N0010 G92 X28 Y20;(设定编程原点) N0020 G90 G00 X16 S600 T01 M03;(快速定位P—A) N0030 G01 X-8 Y8 F100;(直线插补A—B) N0040 X0 Y0;(直线插补B—O) N0050 X16 Y20;(直线插补O—A) N0060 G00 X28;(快速返回A—P) N0070 M02;
2、用增量值方式编程: O0050 N0010 G92 X28 Y20; N0020 G91 G00 X-12 Y20 S600 T01 M03; N0030 G01 X-24 Y-12 F100; N0040 X8 Y-8; N0050 X16 Y20; N0060 G00 X12 Y0; N0070 M02;
说明: (1)G01指令刀具从当前位置以联动的方式,按程序段中F指令 规定的合成进给速度,按合成的直线轨迹移动到程序段所 指定的终点。 数控编程 说明: (1)G01指令刀具从当前位置以联动的方式,按程序段中F指令 规定的合成进给速度,按合成的直线轨迹移动到程序段所 指定的终点。 (2)实际进给速度等于指令速度F与进给速度修调倍率的乘积。 (3)G01和F都是模态代码,如果后续的程序段不改变加工的线 型和进给速度,可以不再书写这些代码。 (4)G01可由同组的G00、G02、G03或G33功能注销。 (5)X、Y、Z为目标点坐标值,可以用绝对值和增量值表示,F 为合成进给速度; (6)第一个G01指令,其后一定写上F 的数值; (7)G01也可以写成G1;
G00、G01指令的使用 N0090 G00 X0 Y0 Z100.0 ; N0100 M05; N0110 M30; 数控编程 G00、G01指令的使用 程序如下: O0001 N0010 G90 G54; N0020 G00 X0.0 Y-20.0 Z–5.0 M03 S500 ; N0030 G01 X20.0 Y20.0 F100; N0040 Y50.0; N0050 X40.0 ; N0060 X50.0 Y40.0; N0070 Y20.0; N0080 X20.0; N0090 G00 X0 Y0 Z100.0 ; N0100 M05; N0110 M30; (FANUC系统中,地址中的值如果带小数点,表示是毫米单位,如果不带小数点,表示是微米单位。如X2500. 表示X坐标2500毫米 X2500 表示X坐标2500微米)
3、圆弧插补指令-G02-G03 这是两个圆弧运动控制指令,它们能实现圆弧插补加工,G02顺时针圆弧(顺圆)插补,G03逆时针圆弧(逆圆)插补。即刀具以指定的速度以圆弧运动到指定的位置。 指令格式: G17 X Y I J G90 G91 G18 G19 G02 G03 Z K ( ) R F 圆弧终点坐标值 I=X0-X1 XYZ IJK J=Y0-Y1
G02/G03有两种表达格式,一种为半径格式,使用参数值R。 如:G02 X100 Y100 Z100 R50 F250; 表示刀具以250mm/min的速度沿半径为50的顺时针圆弧运动至终点(100,100,100)。 其中R值的正负影响切削圆弧的角度,R值为正时,刀位起点到刀位终点的角度小于或等于180°;R值为负值时,刀位起点到刀位终点的角度大于或等于180°。
另一种为向量格式,使用参数I、J、K给出圆心坐标,并以相对于起始点的坐标增量表示。 例如:G02 X100 Y100 Z100 I50 J50 K50 F250; 表示刀具以250mm/min的速度沿一顺时针圆弧运动至点(100,100,100),该圆弧的圆心相对于起点的坐标增量为(50,50,50)。
I,J,K分别表示X,Y,Z 轴圆心的坐标减去圆弧起点的坐标,如下图所示。某项为零时可以省略。 数控编程 I,J,K分别表示X,Y,Z 轴圆心的坐标减去圆弧起点的坐标,如下图所示。某项为零时可以省略。 终点 X 起点 K I Z 圆心 Y J (X1-Y1) (X0-Y0) XYZ IJK I=X0-X1 J=Y0-Y1
在圆弧插补中,沿垂直于要加工的圆弧所在平面的坐标轴由正方向向负方向看,刀具相对于工件的转动方向是顺时针方向为G02,逆时针方向为G03。 数控编程 圆弧顺、逆的判断方法为: 在圆弧插补中,沿垂直于要加工的圆弧所在平面的坐标轴由正方向向负方向看,刀具相对于工件的转动方向是顺时针方向为G02,逆时针方向为G03。
数控编程 同理,在G18时,圆弧在XZ平面,沿Y轴的正方向向负看时,顺时针用G02,逆时针用G03。在G19时,圆弧在YZ平面,圆弧的顺逆也是这样判别。 不同平面的G02与G03选择
数控编程 G02: 顺时针圆弧插补 B A 工件 后置刀具
数控编程 G03: 逆时针圆弧插补 B A 工件 卡盘 后置刀具
圆 弧 插 补 指 令(G02/G03) 指令参数说明: 圆弧插补只能在某平面内进行。 数控编程 圆 弧 插 补 指 令(G02/G03) 指令参数说明: 圆弧插补只能在某平面内进行。 G17代码进行XY平面的指定,省略时就被默认为是G17 当在ZX(G18)和YZ(G19)平面上编程时,平面指定代 码不能省略。
指令说明 I=X0-X1 (1)F规定了沿圆弧切向的进给速度; (2)X、Y、Z为圆弧终点坐标值,如果采用增量坐标方式G91, 数控编程 指令说明 I=X0-X1 (1)F规定了沿圆弧切向的进给速度; (2)X、Y、Z为圆弧终点坐标值,如果采用增量坐标方式G91, X、Y、Z表示圆弧终点相对于圆弧起点在各坐标轴方 向上的增量; J=Y0-Y1 XYZ IJK (3) I、J、K表示圆弧圆心相对于圆弧起点在各坐标轴方 向上的增量,与G90或G91的定义无关; (圆心坐标值减起点坐标值) (4) R是圆弧半径,当圆弧所对应的圆心角为0°~180° 时,R取正值;圆心角为180°~360°时,R取负值; (5) I、J、K的值为零时可以省略; (6 )在同一程序段中,如果I、J、K与R同时出现则R有效。
数控编程 例1(编程算法)
圆弧AB: 绝对: G17 G90 G02 Xxb Yyb Rr1 Ff; 数控编程 (I、J、K值=圆心坐标值减起点坐标值) 圆弧AB: 绝对: G17 G90 G02 Xxb Yyb Rr1 Ff; 或 G17 G90 G02 Xxb Yyb I(x1-xa) (y1-ya) Ff ; 增量: G91 G02 X (xb-xa) Y (yb-ya) Rr1 Ff ; 或 G91 G02 X(xb-xa) Y(yb-ya) I(x1-xa) J(y1-ya) Ff ;
每段圆弧可有四个程序段表示 编制圆弧程序段 大圆弧AB G17 G90 G03 X0 Y25 R-25 F80; 数控编程 编制圆弧程序段 大圆弧AB 每段圆弧可有四个程序段表示 G17 G90 G03 X0 Y25 R-25 F80; G17 G90 G03 X0 Y25 I0 J25 F80; G91 G03 X-25 Y25 R-25 F80; G91 G03 X-25 Y25 I0 J25 F80; G91增量坐标原点 大圆弧AB超过180ºR取负值
小圆弧AB G17 G90 G03 X0 Y25 R25 F80; G17 G90 G03 X0 Y25 I-25 J0 F80; 数控编程 小圆弧AB G17 G90 G03 X0 Y25 R25 F80; G17 G90 G03 X0 Y25 I-25 J0 F80; G91 G03 X-25 Y25 R25 F80; G91 G03 X-25 Y25 I-25 J0 F80; G91增量坐标原点
如图所示,设起刀点在坐标原点O,刀具沿A-B-C路 线切削加工,使用绝对坐标与增量坐标方式编程。 数控编程 例 题 如图所示,设起刀点在坐标原点O,刀具沿A-B-C路 线切削加工,使用绝对坐标与增量坐标方式编程。 G92 设置加工原点 (起刀点)
M指令P.59 绝对坐标编程 增量坐标编程 G92 X0 Y0 ;(起刀点) G92 X0 Y0 ; 数控编程 M指令P.59 绝对坐标编程 G92 X0 Y0 ;(起刀点) G90 G17 G00 X200 Y40 M03 S500; G03 X140 Y100 I-60 J0(或R60) F100; G02 X120 Y60 I-50 J0(或R50); G00 X0 Y0 M05 ; M02; 增量坐标编程 G92 X0 Y0 ; G91 G17 G00 X200 Y40 M03 S500 ; G03 X-60 Y60 I-60 J0 (或R60) F100; G02 X-20 Y-40 I-50 J0(或R50); G00 X-120 Y-60; M05 ; M02; 注:可以省略J0
解:根据铣削加工圆弧方向的判断方法,图中C1为顺时针圆弧,C2为逆时针圆弧,C3为大于180 º的顺时针圆弧。程序编制如下: 例2-3 铣削加工如图1-17所示的曲线轮廓,设A点为起刀点,从点A沿圆C1、C2、C3到D点停止,方向如图所示,进给速度为100为㎜/min. 解:根据铣削加工圆弧方向的判断方法,图中C1为顺时针圆弧,C2为逆时针圆弧,C3为大于180 º的顺时针圆弧。程序编制如下: ⑴绝对值方式(圆心坐标参数法):
⑴绝对值方式:(半径R法) ⑵增量值方式:(半径R法) O0010 N010 G92 X0 Y18;(A点) N020 G90 G02 X18 Y0 R18 F100 S300 T01 M03 ; N030 G03 X68 Y0 R25; N040 G02 X88 Y20 R-20; N050 M02; ⑵增量值方式:(半径R法) N010 G92 X0 Y18; N020 G91 G02 X18 Y-18 R18 F100 S300 T01 M03; N030 G03 X50 Y0 R25; N040 G02 X20 Y20 R-20 ;
如图所示,起刀点在坐标原点O,从O点快速移动至A点,逆时针加工整圆,使用绝对坐标与增量坐标方式编程。 数控编程 指令整圆时,只能使用圆心坐标法-I、J、K表示圆弧半径,而不能使用 R。 例题 如图所示,起刀点在坐标原点O,从O点快速移动至A点,逆时针加工整圆,使用绝对坐标与增量坐标方式编程。 绝对坐标编程 G92 X0 Y0; G90 G00 X30 Y0 ; (A点) G03 X30 Y0 I-30 J0 F100; G00 X0 Y0; 增量坐标编程 G91 G00 X30 Y0; G03 X30 Y0 I-30 J0 F100; G00 X-30 Y0 ; 以后见到G02(G03) I_ J_ F_;的指令,都是指令整圆的插补指令。而G02(G03) X_ Y_ R_ F_;的指令形式则为圆弧插补半径R法。
数控编程 基本指令编程举例 如图所示零件 以φ30的孔定位 精铣外轮廓 暂不考虑刀具补偿
数控编程 节点计算 (150,160,120)
程序单(1) 程序头 程序主干 O0001 主程序号 N0010 G92 X150 Y160 Z120; 建立工件坐标系,编程零点w 数控编程 程序单(1) O0001 N0010 G92 X150 Y160 Z120; N0020 G90 G00 X100 Y60; N0030 Z-2 S100 M03; N0040 G01 X75 F100; N0050 X35; N0060 G02 X15 R10 ; N0070 G01 Y70; N0080 G03 X-15 R15; N0090 G01 Y60; N0100 G02 X-35 R10; N0110 G01 X-75; 主程序号 建立工件坐标系,编程零点w 快进到X=100,Y=60 Z轴快移到 Z= -2,主轴 直线插补至 X= 75,Y= 60, 直线插补至 X= 35,Y= 60 顺圆插补至 X=15,Y=60 直线插补至 X=15,Y=70 逆圆插补至 X= -15,Y=70 直线插补至 X= -15,Y=60 顺圆插补至 X= -35,Y=60 直线插补至 X= -75,Y=60 程序头 程序主干
程序单(2) 返回上层 程序尾 N0120 G09 Y0 ; 直线插补至 X= -75,Y=0处 N0130 X45; 数控编程 程序单(2) N0120 G09 Y0 ; N0130 X45; N0140 X75 Y20; N0150 Y65; N0160 G00 X100 Y60; N0170 Z120; N0180 X150 Y16; N0190 M05; N0200 M30; 直线插补至 X= -75,Y=0处 直线插补至 X= 45,Y=45 直线插补至 X= 75,Y=20 直线插补至 X=75,Y=65,轮廓完 快速退至 X=100,Y=60的下刀处 快速抬刀至 Z=120的对刀点平面 快速退刀至对刀点 程序结束 复位。 程序尾 返回上层
4、暂停G04指令 X__ 指令格式 G04 P__ 指令功能: 刀具作短暂的无进给光整加工; 数控编程 4、暂停G04指令 X__ 指令格式 G04 P__ 指令功能: 刀具作短暂的无进给光整加工; 指令说明:(1)地址码X可用小数,单位为秒S; (2)地址码 P只能用整数,单位为毫秒ms。 (3)G04程序段必须单独在一段中,该段中不 允许有其他指令。 例:程序暂停2.5S的加工程序。 G04 X2.5; 或G04 U2.5; 或G04 P2500;
数控编程 暂停指令G04使用格式说明 G04可使刀具作短暂无进给加工,在数控车床上可使工件空转使车削面光整以达到光洁度要求。常用于车槽、镗平面、锪孔等场合。不同的控制系统,其使用格式也有所不同,常见的有以下几种形式: G04 X_ 或G04 P_ 或G04 U_ 用X地址时,单位为秒s,可以用小数点; 用P地址时,单位为毫秒ms,不能用小数点,如P1000表示暂 停1秒; 用U地址时,其单位为转,其值为U/F转。如U40(若进给 速度为F10),表示工件空转40/10 = 4转
(1)G20 表示英制输入,G21 表示公制输入。G20何G21是两个 可以相互取代的代码,但不能再同一个程序段中同时使用 G20何G21. 数控编程 英制或公制输入指令: G20、G21 说明: (1)G20 表示英制输入,G21 表示公制输入。G20何G21是两个 可以相互取代的代码,但不能再同一个程序段中同时使用 G20何G21. (2)机床通电后的状态为G21状态。
数控编程 Z Y O XZ插补平面 G17 XY插补平面 G18 X YZ插补平面 G19
5、刀具补偿指令 (1)刀具半径补偿指令(G41、G42、G40) X__ Y__ D__ G01 G42 G41 G00 指令格式 数控编程 5、刀具补偿指令 (1)刀具半径补偿指令(G41、G42、G40) X__ Y__ D__ G01 G42 G41 G00 指令格式 指令说明 (1) X__ Y__ 表示刀具移动至工件轮廓上点的坐标值; (2) D__为刀具半径补偿寄存器地址符,寄存 器存储刀具半径补偿值; (3) G41左补偿,G42右补偿;G40取消刀具补偿 (4) 通过G00或G01运动指令建立刀具半径补偿。
数控编程 数控系统在计算轮廓切削加工程序时是“以刀具中心运动轨迹为编程轨迹”来描述的,但轮廓切削加工时,我们一般是以工件的轮廓尺寸为轨迹来编写程序的,此时刀具中心运动轨迹与工件轮廓轨迹重合,这就要求我们在实际加工中,必须考虑刀具半径对工件轮廓尺寸的影响,因此,在实际加工中,刀具中心的运动轨迹要与工件轮廓有一偏移矢量才能加工出符合要求的零件。(如图所示)
刀补位置的左右应是顺着编程轨迹前进的方向进行判断的,顺着编程轨迹方向刀具在工件左侧的为左刀补G41,反之为右刀补G42。如图所示。 数控编程 刀补位置的左右应是顺着编程轨迹前进的方向进行判断的,顺着编程轨迹方向刀具在工件左侧的为左刀补G41,反之为右刀补G42。如图所示。 逆铣 逆铣
当用G41指令时,刀具中心将走在编程轨迹前进方向的左侧;当用G42指令时,刀具中心将走在编程轨迹前进方向的右侧。 数控编程 当用G41指令时,刀具中心将走在编程轨迹前进方向的左侧;当用G42指令时,刀具中心将走在编程轨迹前进方向的右侧。 实际编程应用时,应根据是加工外形还是加工内孔以及整个切削走向等进行确定。当将刀具半径设置为负值时,G41和G42的执行效果将互相替代。
刀具半径补偿指令共有G41、G42、G40三个。其使用程序格式为: 数控编程 刀具半径补偿指令共有G41、G42、G40三个。其使用程序格式为: G90(G91)G17 G00(G01)G41(G42)X_ Y D G90(G91)G18 G00(G01)G41(G42)X_ Z D G90(G91)G19 G00(G01)G41(G42)Y_ Z D
在进行刀径补偿前,必须用G17或G18、G19指定刀径补偿是在哪个平面上进行。平面选择的切换必须在补偿取消的方式下进行,否则将产生报警。 数控编程 G90(G91)G17 G00(G01)G40 X Y G90(G91)G18 G00(G01)G40 X Z_ G90(G91)G19 G00(G01)G40 Y Z _ 在进行刀径补偿前,必须用G17或G18、G19指定刀径补偿是在哪个平面上进行。平面选择的切换必须在补偿取消的方式下进行,否则将产生报警。
刀径补偿指令程序就是在原G00或G01线性移动指令的格式上,加上了G41(G42、G40)...D...的指令代码。 数控编程 刀径补偿指令程序就是在原G00或G01线性移动指令的格式上,加上了G41(G42、G40)...D...的指令代码。 刀径补偿有D00~D99共100个地址号可用。其中,D00已为系统留作取消刀径补偿专用。补偿值可在MDI方式下键入。 X、Y及其坐标值还是按G00及G01的格式意义进行确定,和不考虑刀补时一样编程计算。 所不同的是,无刀补指令时刀具中心是走在程序路线上;有刀径补偿指令时刀具中心是走在程序路线的一侧,刀具刃口走在程序路线上。
G40—取消刀具补偿 G00 指令格式 G40 X__ Y__ G01 指令说明 X__ Y__ 表示刀具轨迹中取消刀具半径补偿点坐标值; 数控编程 G40—取消刀具补偿 G00 指令格式 G40 X__ Y__ G01 指令说明 X__ Y__ 表示刀具轨迹中取消刀具半径补偿点坐标值; (2)通过G00或G01运动指令取消刀具半径补偿; (3) G40必须和G41或G42成对使用。
数控编程 (2)刀具半径补偿的作用: 刀具半径补偿功能的作用是把以刀具中心为编程轨迹转变为以工件轮廓为编程轨迹,即要求数控系统根据程序中的工件轮廓和刀具半径,自动计算出刀具中心轨迹。 G40 刀具半径补偿取消指令,该指令与G41或G42配合使用,使用该指令后,使与其配合使用的G41或G42指令无效。
如图所示,刀具由O点至A点,采用刀具半径左补偿指令G41后,刀具将在直线插补过程中向左偏置一个半径值,使刀具中心移动到B点。 数控编程 例题 如图所示,刀具由O点至A点,采用刀具半径左补偿指令G41后,刀具将在直线插补过程中向左偏置一个半径值,使刀具中心移动到B点。 G41 G01 X50 Y40 F100 D01 …… G40 G00 X0 Y0
数控编程 B f e d c b A O C D E a h g 刀补建立是一个从无到有的渐变过程,从起点刀具中心点逐渐偏移至刀具运动轨迹的始点。刀补取消则是一个从有到无的渐变过程。刀具中心点到达该轨迹段的终点处时,刀具中心相对于终点的偏移矢量大小为零,即刀具中心就正好落在终点上。 刀补加载和解除的过程
上图所示方形零件轮廓考虑刀补后编写的程序如下: %0003 N1 G54 G90 G17 M03 S600 由G17指定刀补平面 数控编程 上图所示方形零件轮廓考虑刀补后编写的程序如下: %0003 N1 G54 G90 G17 M03 S600 由G17指定刀补平面 N2 G41 G00 X20.0 Y10.0 D01 刀补引入,由G41确定刀补方向,由D01指定刀补大小 N3 G01 Y50.0 F100 N4 X50.0 N5 Y20.0 N6 X10.0 N7 G00 G40 X0 Y0 M05 由G40解除刀补 N8 M30 刀补进行中
刀具中心在执行这一段(N2段)时,就移向该矢量的终点。刀补引入指令只能在G00、G01的线性段中进行,不能用于G02、G03的圆弧段中。 数控编程 当程序运行到含刀补引入的程序段N2后,运算装置即同时先行读入N3、N4两段,在N2的终点(N3的起点)处,作出一个矢量,该矢量的方向是与下一段N3的前进方向垂直向左(G41),大小等于刀补D01的值。 刀具中心在执行这一段(N2段)时,就移向该矢量的终点。刀补引入指令只能在G00、G01的线性段中进行,不能用于G02、G03的圆弧段中。
从N3程序段开始转入刀补方式行进状态。在此状态下,G00、G01、G02、G03都可使用。 数控编程 从N3程序段开始转入刀补方式行进状态。在此状态下,G00、G01、G02、G03都可使用。 它也是每次都先行读入两段,在进行偏移计算后得到刀具中心在该段终点的坐标,刀具中心就移向这点。 在刀补进行过程中,刀具中心的轨迹基本上就是编程轮廓轨迹的平行线,平行间距等于刀补D01的值。 由于刀径补偿指令都是模态指令,因此对补偿进行中的程序段而言,如果刀补形式没有什么变化的话,可不需再书写刀补指令。
当偏移计算得出的交点与原轮廓转角尖点偏离太远时,则自动插入转折型刀具路径,如下页图所示。 数控编程 现代数控机床的刀补功能已相当完善,如使用C功(P.63)能刀补的机床基本上都是采用预先读入前后几段线,进行平行偏移计算,求解出刀具中心偏移线的交点,作为前段线的终点,同时又是下一段线的起点,从而得到刀补轨迹的。 当偏移计算得出的交点与原轮廓转角尖点偏离太远时,则自动插入转折型刀具路径,如下页图所示。
数控编程 图 尖角刀补处理
数控编程 刀补解除(取消)则是一个从有到无的渐变过程,从上一个具有正常偏移轨迹线段的终点的法向矢量处开始,刀具中心渐渐往本线性轨迹段的终点方向移动,到达该轨迹段的终点处时,刀具中心相对于终点的偏移矢量大小为零,即刀具中心就正好落在终点上。 B f e d c b A O C D E a h g
需要注意的是,刀补的引入和取消要求必须在G00或G01路线段,但在刀补进行的中间轨迹线中,还是允许圆弧段轨迹的; 数控编程 需要注意的是,刀补的引入和取消要求必须在G00或G01路线段,但在刀补进行的中间轨迹线中,还是允许圆弧段轨迹的; 在刀补进行中的程序段之间不能有任何一个刀具不移动的指令程序段出现;在指定刀补平面执行刀补时,也不能出现连续两个仅第三轴移动的指令,否则将可能产生刀补自动取消然后又重新启动的刀补过程,因而在继续运行程序时出现过切或少切现象。
刀具半径补偿的意义 (1)为避免计算刀具轨迹,可直接用零件轮廓尺寸编程; (2)刀具因磨损、重磨、换新刀而引起刀具直径改变后, 数控编程 刀具半径补偿的意义 (1)为避免计算刀具轨迹,可直接用零件轮廓尺寸编程; (2)刀具因磨损、重磨、换新刀而引起刀具直径改变后, 不必修改程序,只需在刀具参数设置中输入变化后 的刀具半径。 (3)用同一程序、同一尺寸的刀具,利用刀具半径补偿、 可进行粗精加工 (4)同一轮廓的加工程序,同一把刀具,利用半径补偿, 可完成凸凹配合零件的加工,在模具的数控加工中 经常用到这种方法。
数控编程
刀具补偿注意事项: (1)机床通电后,为取消半径补偿状态。 数控编程 刀具补偿注意事项: (1)机床通电后,为取消半径补偿状态。 (2)G41、G42、G40不能和G02、G03一起使用,只能与G00或G01一起使 用,且刀具必须在指定平面内有一定距离的移动。 (3)在程序中用G42指令建立右刀补,铣削时对于工件产生逆铣效果, 故常用于粗铣,在程序中用G41指令建立刀具半径左补偿,铣削时 对于工件产生顺铣效果,故常用于精铣。 (4)一般情况下,刀具半径补偿量应为正值,如果补偿量为负值,则 G41和G42正好相互替代。 (5)在补偿建立阶段,铣刀的直线移动量要大于刀具半径补偿量,在 补偿状态下,铣削内侧园弧的半径要大于刀具半径补偿量,否则 补偿时会发生干涉,系统在执行相应程序段时将会产生报警,停 止运行。 (6)半径补偿为模态代码,在补偿状态时,若加入G28、G29、G30指 令,当这些指令被执行时,补偿状态将被暂时取消,但是控制系 统仍记忆着此补偿状态,因此在执行下一程序段时,有自动恢复 补偿状态。
数控编程 刀具补偿表中刀具长度补偿值用在 G43 、 G44 指令中.刀具半径补偿值用在 G41 、 G42 指令中。补偿值(刀具几何尺寸 〕 由两个分量组成:基本尺寸和磨损尺寸。控制器处理这些分量,计算最后尺寸(如总和长度、总和半径)。在激活补偿存储器时,这些最终尺寸有效。
数控编程 瑞士产对刀仪
数控编程 镗刀
数控编程 刀具的进退刀方式在铣削加工中是非常重要的,二维轮廓的铣削加工常见的进退刀方式有垂直进退刀、侧向进退刀和圆弧进退刀,如图3-27所示。垂直进刀路径短,但是如果机床传动系统间隙过大,会在加工表面留下驻刀痕迹,工件表面有接痕,常用于粗加工,侧向进刀和圆弧进刀,工件加工表面质量高,多用于精加工。
刀具长度补偿指令 G43 G44 G49 (1)刀具长度补偿产生的背景 数控编程 刀具长度补偿指令 G43 G44 G49 (1)刀具长度补偿产生的背景 加工中心运行时要经常交换刀具,而每一把刀具长度的不同给工作坐标系的设定带来了困难。可以想象第一把刀具正常切削工件,而更换另一把稍长的刀具后如果工作坐标系不变,将发生零件被过切或撞床的严重事故,因此,数控系统引入了刀具长度补偿的算法,从而产生了刀具长度补偿的指令。 球心点
数控编程 (2)刀具长度补偿原理 我们在设定Z轴工件零点时,让主轴锥孔基准面与所设定的Z轴工件零点理论上重合,在使用每一把刀具时可以让机床按刀具长度与工件零点升高一段距离,使每把刀具的刀尖正好在工件表面上,这段高度就是刀具长度补偿值(如下图所示)。
数控编程
数控编程 刀具长度补偿的作用 使用刀具长度补偿功能,可以在当实际使用刀具与编程时估计的刀具长度有出入时,或刀具磨损后刀具长度变短时,不需重新改动程序或重新进行对刀调整,仅只需改变刀具数据库中刀具长度补偿量即可。
刀具长度的概念 刀具长度是一个很重要的概念。 数控编程 刀具长度的概念 刀具长度是一个很重要的概念。 我们在对一个零件编程的时候,首先要指定零件的编程中心,然后才能建立工件编程坐标系,而此坐标系只是一个工件坐标系,零点一般在工件上。 长度补偿只是和Z坐标有关,它不象X、Y平面内的编程零点,因为刀具是由主轴锥孔定位而不改变,对于Z坐标的零点就不一样了。
(3)刀具长度补偿指令 G43 G00(G01) Z H_ G44 G00(G01) Z H_ G49 G00(G01) Z_ 数控编程 (3)刀具长度补偿指令 <1>G43 刀具长度补偿正补偿 <2>G44 刀具长度补偿负补偿 <3>G49 刀具长度补偿取消 G43 G00(G01) Z H_ 刀具长度正补偿G43 G44 G00(G01) Z H_ 刀具长度负补偿G44 取消刀具长度补偿 G49 G00(G01) Z_
执行G43时,Z实际值 = Z指令值 + (H xx) 数控编程 刀具长度正补偿G43 G43 G00(G01) Z H_ 刀具长度补偿正补偿指令G43是向Z轴正方向把刀具抬起,也就是说执行刀具长度补偿正补偿指令G43时,数控系统自动将Z轴编程指令值与对应于偏置号H_的偏置值作代数和,然后把所得结果作为终点坐标值进行加工(如图所示), G43 是模态指令。 如:G90 G54 G43 G00 Z50 H01; 执行G43时,Z实际值 = Z指令值 + (H xx)
执行G44时,Z实际值 = Z指令值 − (H xx) 数控编程 刀具长度负补偿指令G44 如:G90 G54 G44 G00 Z100 H01; G44 G00(G01) Z H_ 刀具长度补偿负补偿指令G44是把刀具向Z轴负方向偏置,也就是说执行刀具长度补偿负补偿指令G44时,数控系统自动将Z轴编程指令值与对应于偏置号H_的偏置值作代数差,然后把所得结果作为终点坐标值进行加工(如右图所示), G44 是模态指令。 执行G44时,Z实际值 = Z指令值 − (H xx)
数控编程 进行长度补偿时,刀具要有Z轴移动。如下图所示为不同的Z轴指令值下刀的实际位置,其中“G90 G54 G00 Z0;”语句在有长度补偿的情况下没有G43命令,将造成严重事故。 G90 G54 G43 G00 Z100 H01; G90 G54 G00 Z0; G90 G54 G43 G00 Z0 H01; 主轴 工件
刀具长度补偿的两种方式(绝对补偿形式、相对补偿形式) 数控编程 刀具长度补偿的两种方式(绝对补偿形式、相对补偿形式) 一是:用刀具的实际长度作为刀长的补偿(推荐使用这种方式) 二是:利用刀尖在Z方向上与编程零点的距离值(有正负之分) 作为补偿值。 相对补偿形式 用刀具的实际长度作为刀长的补偿
在实际生产加工中,常常使用刀座底面进行对刀,按刀座底面到工件基准面的距离设定工件坐标系; 数控编程 1、用刀具的实际长度作为刀长的补偿(推荐使用这种方式) 在实际生产加工中,常常使用刀座底面进行对刀,按刀座底面到工件基准面的距离设定工件坐标系; 编程时加上G43、G44指令;安装上刀具后,测出各刀尖相对于刀座底面的距离,将测量结果设置为刀长补偿值,如图所示。 刀座对刀时刀长补偿的设定 绝对补偿形式
绝对补偿形式:床回到机床零点时,工件坐标系零点,相对于刀架工作位上各刀刀尖位置的有向距离。当执行刀偏补偿时,各刀以此值设定各自的加工坐标系。 数控编程 用刀具的实际长度作为刀长的补偿(推荐使用这种方式)。使用刀长作为补偿就是使用对刀仪测量刀具的长度,然后把这个数值输入到刀具长度补偿寄存器中,作为刀长补偿。使用刀具长度作为刀长补偿的理由如下: 首先,使用刀具长度作为刀长补偿,可以避免在不同的工件加工中不断地修改刀长偏置。这样一把刀具用在不同的工件上也不用修改刀长偏置。在这种情况下,可以按照一定的刀具编号规则,给每一把刀具作档案,用一个小标牌写上每把刀具的相关参数,包括刀具的长度、半径等资料,事实上许多大型的机械加工型企业对数控加工设备的刀具管理都采用这种办法。 绝对补偿形式:床回到机床零点时,工件坐标系零点,相对于刀架工作位上各刀刀尖位置的有向距离。当执行刀偏补偿时,各刀以此值设定各自的加工坐标系。
数控编程 其次,使用刀具长度作为刀长补偿,可以让机床一边进行加工运行,一边在对刀仪上进行其他刀具的长度测量,而不必因为在机床上对刀而占用机床运行时间,这样可以充分发挥加工中心的效率。这样主轴移动到编程Z坐标点时,就是主轴坐标加上(或减去)刀具长度补偿后的Z坐标数值。
利用刀尖在Z方向上与编程零点的距离值(有正负之分)作为补偿值。 数控编程 利用刀尖在Z方向上与编程零点的距离值(有正负之分)作为补偿值。 如图可知,刀具长度补偿是补偿假定的刀具与实际刀具长度之间的差值,它使刀具在Z轴方向上的实际位移量比程序给定值增加或减少一个偏置量,这个偏置量通过数控系统的”偏置页面”设置在偏置存储器中,并用H代码指令偏置号。 相对补偿形式
数控编程 利用刀尖在Z方向上与编程零点的距离值(有正负之分)作为补偿值。这种方法适用于机床只有一个人操作而没有足够的时间来利用对刀仪测量刀具的长度时使用。这样做当用一把刀加工另外的工件时就要重新进行刀长补偿的设置。使用这种方法进行刀长补偿时,补偿值就是主轴从机床Z坐标零点移动到工件编程零点时的刀尖移动距离,因此此补偿值总是负值而且很大。
刀长补偿数据的设定如图所示,将多把刀具中最长或最短的刀具作为基准刀具,用Z向设定器对刀。 数控编程 刀长补偿数据的设定如图所示,将多把刀具中最长或最短的刀具作为基准刀具,用Z向设定器对刀。 在保持机床坐标值不变(刀座等高)的情况下,若分别测得各刀具到工件基准面的距离为A、B、C,以A为基准设定工件坐标系,则H01=0,H02=A−B,H03=A−C。 基准刀对刀时刀长补偿的设定
事实上,也可先在机床外,利用刀具预调仪精确测量每把刀具的轴向和径向尺寸,确定每把刀具的长度补偿值; 数控编程 事实上,也可先在机床外,利用刀具预调仪精确测量每把刀具的轴向和径向尺寸,确定每把刀具的长度补偿值; 然后,在机床上用其中最长或最短的一把刀具进行Z向对刀,确定工件坐标系。 这种机外刀具预调+机上对刀的方法,对刀精度和效率高,便于工艺文件的编写和生产组织,但投资较大。
数控编程 当程序中调用G49指令时,则G43或G44从该程序段起被取消;H00也可以作为G43和G44的取消指令,G49和H00一般在Z轴回原点后使用比较安全。 指令G49是取消G43(G44)指令的,其实我们不必使用这个指令,因为每把刀具都有自己的长度补偿,当换刀时,利用G43(G44)H指令赋予了自己的刀长补偿而自动取消了前一把刀具的长度补偿。
刀具长度方向的对刀: Z轴设定器:是用以对刀具长度补偿的一种测量装置。对刀准确、效率高等特 数控编程 刀具长度方向的对刀: Z轴设定器:是用以对刀具长度补偿的一种测量装置。对刀准确、效率高等特 点;缩短了加工准备时间。采用手动方式工作,即:对刀时, 机床的运动由操作者手动控制,特别适合单件、小批量生产; 自动对刀器:能在对刀时将对刀器产生的信号通过电缆输出至机床的数控系统, 以便结合专用的控制程序实现自动对刀、自动设定或更新刀 具的半径和长度补偿值; 对刀仪:用于机外对刀,在使用前就可测量出刀具的准确尺寸数据。 对刀仪 刀具长度测量 刀具直径测量 Z轴设定器 自动对刀器
数控编程 Z轴自动定位器
其中,(Hxx)是指xx寄存器中的补偿量,其值可以是正值或者是负值。当刀长补偿量取负值时,G43和G44的功效将互换。 数控编程 其中,(Hxx)是指xx寄存器中的补偿量,其值可以是正值或者是负值。当刀长补偿量取负值时,G43和G44的功效将互换。 刀具长度补偿指令通常用在下刀及提刀的直线段程序G00或G01中,使用多把刀具时,通常是每一把刀具对应一个刀长补偿号,下刀时使用G43或G44,该刀具加工结束后提刀时使用G49取消刀长补偿。如图3-27所示,编程如下:
设(H02)= 200 mm时: . . . 执行G44时,Z实际值 = Z指令值 − (H xx) 数控编程 设(H02)= 200 mm时: N1 G92 X0 Y0 Z0 设定当前点O为程序零点 N2 G90 G00 G44 Z10.0 H02 指定点A,实到点B N3 G01 Z−20.0 实到点C N4 Z10.0 实际返回点B N5 G00 G49 Z0 实际返回点O . . . 执行G44时,Z实际值 = Z指令值 − (H xx) 已知OO′=200,设定好B O′=10 图 刀长补偿实例
同样地,也可采用G43...H00或G44...H00来替代G49的取消刀具长度补偿功能。 数控编程 从上述程序例中可以看出,使用G43、G44相当于平移了Z轴原点,即将坐标原点O平移到了O'点处,后续程序中的Z坐标均相对于O'进行计算。使用G49时则又将Z轴原点平移回到了O点。 同样地,也可采用G43...H00或G44...H00来替代G49的取消刀具长度补偿功能。 已知OO′=200,设定好B O′=10
零件形状及刀补路线如右图所示,设对刀操作是采用刀座进行的,安装上Ø8 mm的刀具后,测得刀具伸出长度为45 mm,因此设置刀补地址数据为: 数控编程 刀补实例 零件形状及刀补路线如右图所示,设对刀操作是采用刀座进行的,安装上Ø8 mm的刀具后,测得刀具伸出长度为45 mm,因此设置刀补地址数据为: (D01)= 4, (H01)= 45。
数控编程
但考虑刀补后的程序适应性强,对不同长度、不同半径的刀具只需改变刀具补偿量即可。 数控编程 和前述不考虑刀补的轮廓铣削程序相比,可以看出:采用机床自动刀补的程序与不考虑刀补的程序并没有多大的不同,只是在原来的程序上增加了有关刀补指令而已。 但考虑刀补后的程序适应性强,对不同长度、不同半径的刀具只需改变刀具补偿量即可。 当然由于零件形状上的最小圆弧半径的限制,本零件的轮廓加工不可使用直径大于20 mm的铣刀。
数控编程 练习题: 如下图所示,设主轴转速为1000r/min,进给速率为85mm/min,A为 起点B为终点,请编写程序。
O0001; T01; M06; (刀具交换) G90 G54 G17 G00 X0 Y0 S1000 M03; 数控编程 O0001; T01; M06; (刀具交换) G90 G54 G17 G00 X0 Y0 S1000 M03; G02 I20.0 J0 F100; G03 X-20.0 Y20.0 I-20.0 J0; X-10.0 Y10.0 I0 J-10.0; G00 X0.0 Y0.0 M05; M30;
总结: 刀具; 广泛应用的为:C功能刀具半径补偿(P.63) 刀具补偿分为:刀具半径补偿(主要应用于数控铣床和加工中心) 数控编程 总结: 刀具补偿分为:刀具半径补偿(主要应用于数控铣床和加工中心) 刀具长度补偿(数控车床、数控钻床、加工中心) 刀具; 铣刀: 主要为刀具半径补偿 钻头:只有刀具长度补偿 车刀:需要两坐标长度补偿和刀具半径补偿 广泛应用的为:C功能刀具半径补偿(P.63)
总结: 6. 绝对坐标与相对坐标 G90—绝对坐标:相对与坐标原点的坐标 G91—相对坐标:相对于刀具前一位置的坐标 数控编程 总结: 6. 绝对坐标与相对坐标 G90—绝对坐标:相对与坐标原点的坐标 G91—相对坐标:相对于刀具前一位置的坐标 A点、B点、C点的绝对坐标分别是:(4,0)、(43,0)、(43,26) B点相对于A点的相对坐标是:(39,0) C点相对于A点的相对坐标是:(39,26) A点相对于C点的相对坐标是:(-39,-26)
总结: !关于代码的几点说明 1.代码分组 2.模态与非模态代码 3.开机默认代码 M代码与G代码分组,同组代码可以替换 数控编程 总结: !关于代码的几点说明 1.代码分组 M代码与G代码分组,同组代码可以替换 2.模态与非模态代码 非模态代码:当前程序段有效(非续效指令) 模态代码:续效指令,可以被同组代码替换或取消(用专门代码) S,F,X,Y,Z,A,B,C,T为模态代码; M代码与G代码分为模态和非模态; 3.开机默认代码 G90,G17,G00;(绝对坐标、XY平面、快速定位) M09,M05; (冷却关、主轴停) S0; (转速为0) T00; (刀具号无)
注意: 总结: 带有*记号的G代码,当电源接通时,系统处于这个G代码状态。 00组的G代码是非模态代码。 数控编程 总结: 注意: 带有*记号的G代码,当电源接通时,系统处于这个G代码状态。 00组的G代码是非模态代码。 如果使用G代码一览表中未列出的G代码,则出现报警。 在同一个程序段中可以指令几个不同组的G代码,若在同一个程序段中可以指令了两个以上的同组G代码时,后一个G代码有效。 在恒线速控制下,可设定主轴最大转速(G50)。 G代码分别用各组号表示。 G02、G03的顺逆方向由坐标系方向决定。
数控编程 总结: G代码被分为了不同的组,这是由于大多数的G代码是模态的,所谓模态G代码,是指这些G代码不只在当前的程序段中起作用,而且在以后的程序段中一直起作用,直到程序中出现另一个同组的G代码为止(续效性),同组的模态G代码控制同一个目标但起不同的作用,它们之间是不相容的。 如果程序中出现了未列在上表中的G代码,CNC会显示10号报警。 同一程序段中可以有几个G代码出现,但当两个或两个以上的同组G代码出现时,最后出现的一个(同组的)G代码有效。 在固定循环模态下,任何一个01组的G代码都将使固定循环模态自动取消,成为G80模态
刀具的选择 在使用对刀点确定加工原点时,就需要进行“对刀”。 所谓对刀是指使“刀位点”与“对刀点”重合的操作。每把刀具的半径与长度尺寸都是不同的,刀具装在机床上后,应在控制系统中设置刀具的基本位置。“刀位点”是指刀具的定位基准点。如下图所示,圆柱铣刀的刀位点是刀具中心线与刀具底面的交点;球头铣刀的刀位点是球头的球心点或球头顶点;车刀的刀位点是刀尖或刀尖圆弧中心;钻头的刀位点是钻头顶点。 球心点
钻铣常用刀具构成
数控镗铣床的常用对刀设备 机械式寻边器—偏心寻边器
常用对刀方式 对刀是确定工件在机床上的位置, 也即是确定工件坐标系与机床坐 标系的相互位置关系。对刀过程 一般是从各坐标方向分别进行, 它可理解为通过找正刀具与一个 在工件坐标系中有确定位置的点 (即对刀点)来实现。 常用对刀方式 零件简图 块规 X Y 工件原点 偏心式寻边器对刀 光电式寻边器对刀 心轴块规对刀
块规 X Y
量表式寻边器
光电式寻边器
问答题 1、数控加工编程的主要内容有哪些? 答:数控加工编程的主要内容有:分析零件图、确定工艺过程及工艺路线、 计算刀具轨迹的坐标值、编写加工程序、程序输入数控系统、程序校 验及首件试切等。 2、何谓对刀点?对刀点的选取对编程有何影响? 答:对刀点是指数控加工时,刀具相对工件运动的起点。这个起点也是编程时 程序的起点。对刀点选取合理,便于数学处理和编程简单;在机床上容易 找正;加工过程中便于检查及引起的加工误差小。 3、谓机床坐标系和工件坐标系?其主要区别是什么? 答:机床坐标系又称机械坐标系,是机床运动部件的进给运动坐标系,其坐标 轴及方向按标准规定。其坐标原点由厂家设定,称为机床原点(或零件)。 工件坐标又称编程坐标系,供编程用。
4、简述刀位点、换刀点和工件坐标原点。 答:刀位点是指确定刀具位置的基准点。带有多刀加工的数控机床,在加工 过程中如需换刀,编程时还要设一个换刀点。换刀点是转换刀具位置的 基准点。换刀点位置的确定应该不产生干涉。工件坐标系的原点也称为 工件零点或编程零点,其位置由编程者设定,一般设在工件的设计、工 艺基准处,便于尺寸计算。 5、数控铣床的可控轴数与数控车床的可控轴数有何不同? 答:数控铣床的坐标系一般有两轴半、三轴或四轴等联动。而数控车床坐标 系一般只有两轴联动。
6、刀具补偿有几种?半径补偿何作用?有哪些补偿指令? 答:刀具补偿一般有长度补偿和半径补偿。 刀具长度补偿可以是刀具实际长度补偿及位置补偿。 利用刀具半径补偿:用同一程序、同一尺寸的刀具进行粗、精加工;直接 用零件轮廓编程,避免计算刀心轨迹;刀具磨损、重磨、换刀而引起直径 改变后,不必修改程序,只需在刀具参数设置状态输入刀具半径改变的数 值;利用刀具补偿功能,可利用同一个程序,加工同一个公称尺寸的内、 外两个型面。 补偿指令G41、G42、G40;G43、G44、G49 。 7、数控铣床由哪些部分组成?数控装置的作用是什么? 答:数控铣床一般由控制介质、数控装置、伺服系统、机床本体四部分组 成。数控装置的作用是把控制介质存储的代码通过输入和读带,转换 成代码信息,用来控制运算器和输出装置,由输出装置输出放大的脉 冲来驱动伺服系统,使机床按规定要求运行。
8、G90 X20.0 Y15.0与G91 X20.0 Y15.0有什么区别? 答:G90表示绝对尺寸编程,X20.0、Y15.0表示的参考点坐标值是绝对坐标 值。G91表示增量尺寸编程,X20.0、Y15.0表示的参考点坐标值是相对 前一参考点的坐标值。 9、简述G00与G01程序段的主要区别? 答:G00指令要求刀具以点位控制方式从刀具所在位置用最快的速度移动到 指定位置,快速点定位移动速度不能用程序指令设定。G01是以直线插 补运算联动方式由某坐标点移动到另一坐标点,移动速度由进给功能 指令F设定,机床执行G01指令时,程序段中必须含有F指令。
10、刀具返回参考点的指令有几个?各在什么情况上使用? 答:刀具返回参考点的指令有两个。G28指令可以使刀具从任何位置以快速定 位方式经中间点返回参考点,常用于刀具自动换刀的程序段。G29指令使 刀具从参考点经由一个中间点而定位于定位终点。它通常紧跟在G28指令 之后。用G29指令使所有的被指令的轴以快速进给经由以前G28指令定义 的中间点,然后到达指定点。 11、何谓点位直线控制? 答:点位直线控制类型的数控机床不仅可以控制刀具或工作台由一个位置 点到另一个位置点的精确移动,还可以控制它们以给定的速度沿着平 行于某一坐标轴方向移动和在移动过程中进行加工;(该类型系统也可 控制刀具或工作台同时在两个轴向以相同的速度运动,从而沿着与坐 标轴成45º的斜线进行加工)。
12、何谓轮廓控制? 答:这类机床的控制系统可使刀具或工作台在几个坐标轴方向以各轴向的速 度同时协调联动,不仅能控制运动部件的起点与终点,还可以控制其运 动轨迹及轨迹上每一点的速度和位移。 13、什么是刀具半径补偿? 答:由于刀具总有一定的刀具半径或刀尖部分有一定的圆弧半径,所以在 零件轮廓加工过程中刀位点的运动轨迹并不是零件的实际轮廓,刀位 点必须偏移零件轮廓一个刀具半径,这种偏移称为刀具半径补偿。 14、什么是刀具长度补偿? 答:刀具长度补偿是为了使刀具顶端达到编程位置而进行的刀具位置补偿。 刀具长度补偿指令一般用于刀具轴向的补偿,使刀具在Z轴方向的实际 位移量大于或小于程序的给定量,从而使长度不一样的刀具的端面在 Z轴方向运动终点达到同一个实际的位置。
15、用圆柱铣刀加工平面,顺铣与逆铣有什么区别? 答:逆铣时铣刀切入过程与工件之间产生强烈摩擦,刀具易磨损,并使加工表面粗糙度变差,同时逆铣时有一个上台工件的分力,容易使工件振动和工夹松动,一般应用于粗加工。采用顺铣时,切入前铣刀不与零件产生摩擦,有利于提高刀具耐用度、降低表面粗糙度、铣削时向下压的分力有利增加工件夹持稳定性。另外采用顺铣法铣削铸件或表面有氧化皮的零件毛坯时,会使刀刃加速磨损甚至崩裂,故应用于精加工。数控机床采用了间隙补偿结构,窜刀现象可以克服,因此顺铣法铣削应用较多。 16、脉冲当量的定义,一般取值是多少?与机床加工精度有何关系? 答:所谓脉冲当量是指数控装置发出一个脉冲信号机床执行部件的位移 量。一般取0.01或0.001mm,脉冲当量越小,机床精度越高。
17、一个完整的加工程序由哪几部分组成?其开始部分和结束部分常用什么 符号及代码表示? 答:一个完整的程序是由程序号、程序内容、结束符号三部分组成。程序的 开始部分为程序号,常用的有O、P、%等符号。程序的结束部分主要采 用M02和M30指令。
刀具起点在(-40,0),法向切入(-20,0)点,切一个Φ40的整圆工件,并 法向切出返回(-40,0)点,根据下图中的刀具轨迹判断,正确的程序是( ) (A) …… N010 G90 G00 X-40.0 Y0 ; N020 G01 X-20.0 Y0 F200.0; N030 G02 X-20.0 Y0 I20.0 J0; N040 G01 X-40.0 Y0; …… (B) …… N010 G90 G00 X-40.0 Y0; N020 G90 G01 G41 X-20.0 Y0 D01 F200.0; N030 G02 X-20.0 Y0 I20.0 J0; N040 G01 X-40.0 Y0; …… (C)……doog! N010 G90 G00 X-40.0 Y0 ; N020 G01 G41 X-20.0 Y0 D01 F200.0; N030 G02 X-20.0 Y0 I20.0 J0; N040 G01 X-40.0 Y0; (D) N010 G90 G00 X-40.0 Y0; N020 G90 G01 G41 X-20.0 Y0 D)01 F200.0; N030 G02 X-20.0 Y0 I20.0 J0; N040 G01 G40 X-40.0 Y0; …… ……
谢谢