宏程序编程实例与技巧方法

更新时间:2023-08-20 16:03:01 阅读量: 高等教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数 控 加 工 编 程 及 操 作单 元 宏

用户宏程序编程

下午1时 分 下午 时38分

在数控编程中,宏程序编程灵活、高效、快捷,是 加工编程的重要补充。宏程序不仅可以实现象子程序那 样,例如,型腔加工宏程序、固定加工循环宏程序、球 面加工宏程序、锥面加工宏程序等。

用 户 宏 程 序 编 程

FANUC数控宏程序 数控宏程序 SIEMENS数控参数编程 数控参数编程

数 控 加 工 编 程 及 操 作单 元 宏

FANUC数控系统用户宏程序 FANUC数控系统用户宏程序一、构成1. 包含变量 2. 包含算术或逻辑运算(=)的程序段用 户 宏 程 序 编 程

下午1时 分 下午 时38分

3. 包含控制语句(例如:GOTO,DO,END)的程序段 4.包含宏程序调用指令(G65,G66,G67或其他G代码, M代码调用宏程序)的程序段2

数 控 加 工 编 程 及 操 作变量号 单 元 宏 变量类型 功能

二、FANUC宏程序的变量 二、FANUC宏程序的变量

下午1时 分 下午 时38分

FANUC数控系统变量表示形式为# 后跟1~4位 数字,变量种类有四种:

用 户 宏 程 序 编 程

空变量该变 没有任何值能赋给该变量 量总是空, #1— 局部变量 #1— 局部变量只能用在宏程序中存储 —#33 数据,例如运算结果。当断电时 局部变量被初始化为空,调用宏 程序时自变量对局部变量赋值。 #03

数 控 加 工 编 程 及 操 作单 元 宏 变量号 变量类型 功能 下午1时 分 下午 时38分

#100— #100— #199 #500— #500— #999 用 户 宏 程 序 编 程

公共变量

公共变量在不同的宏程序中的 意义相同当断电时变量#100 意义相同当断电时变量#100 #199初始化为空变量 #199初始化为空变量

#1000 ——

#500 #999 的数据保存即使断 电也不丢失 系统变量 系统变量用于读和写CNC 系统变量用于读和写CNC 运行 时各种数据的变化例如刀具的当 前位置和补偿值等

数 控 加 工 编 程 及 操 作单 元 宏

三、刀具补偿存储器C 三、刀具补偿存储器C用G10 指令进行设定H代码的几何补偿值 D代码的几何补偿值 H代码的磨损补偿值 D代码的磨损补偿值用 户 宏 程 序 编 程 P:刀具补偿号

下午1时 分 下午 时38分

G10L10P R G10L12P R G10L11P R G10L13P R

; ; ; ;

R:绝对值指令(G90)方式时的刀具补偿值。增量值 指令(G91)方式时的刀具补偿值为该值与指定的刀 具补偿号的值相加。5

数 控 加 工 编 程 及 操 作单 元 宏

四、 FANUC宏程序的转移和循环 FANUC宏程序的转移和循环例:GOTO10为转移到N10程序段。 2. 条件转移:( 语句) 条件转移:(IF语句) :( 语句 1)IF [条件表达式] GOTOn 用 户 宏 程 序 编 程

下午1时 分 下午 时38分

1. 无条件转移:GOTOn (n为顺序号,1——99999) 无条件转

移:

当指定的条件表达式满足时,转移到标有顺序号n的程序 段,如果指定的条件表达式不满足时,执行下个程序段。

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

2)IF [条件表达式] THEN 当指定的条件表达式满足时,执行预先决定的宏程序语句。 例:IF [#1EQ #2] THEN #3=0; 3. WHILE [条件表达式] DO m; [ ] m 用 户 宏 程 序 编 程 ENDm 注:循环允许嵌套,最多3层,但不允许交叉 循环允许嵌套, 条件 不满 足 (m=1,2,3) …… 条件满足 ……

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程8

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程9

数 控 加 工 编 程 及 操 作单 元 宏

五、运算符运算符 EQ NE GT GE LT LE用 户 宏 程 序 编 程

下午1时 分 下午 时38分

含义 等于 不等于 大于 大于或等于 小于 小于或等于

数 控 加 工 编 程 及 操 作单 元 宏

FANUC数控车削宏程序 FANUC数控车削宏程序1. 概念:

下午1时 分 下午 时38分

用 户 宏 程 序 编 程

“宏程序”一般指含有变量的程序。由宏程 序体和程序中调用宏程序的指令。即宏指令 构成。主要应用于抛物线、椭圆、双去想等 各种数控系统没有插补指令的轮廓曲线编程。 用户宏程序有两个要点:(1)在宏程序中存 用户宏程序有两个要点:(1)在宏程序中存 在变量;(2 在变量;(2)宏程序能依据变量完成某个 具体操作。11

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程

(2)特点:1)可以进行变量的算术运算、 )特点: 逻辑运算和函数的混合运算。还可以使用循 环语句、分支语句和子程序调用语句。2 环语句、分支语句和子程序调用语句。2) 宏程序能依据变量,用事先指定的变量代替 直接给出的数值,在调用宏程序或宏程序本 身执行时,得到计算好的变量值。3 身执行时,得到计算好的变量值。3)宏程 序通用性强,灵活方便,一个宏程序可以描 述一种曲线,曲线的各种参数用变量表示。

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

(3)基本原理 )宏程序编程是用户用变量作为数 据进行编程, 据进行编程,变量在编程中充当 媒介”作用。 “媒介”作用。在后续程序中可 以重新再赋值, 以重新再赋值,原来内容被新赋 的值所取代, 的值所取代,利用系统对变量值 进行计算和可以重新赋值的特性, 进行计算和可以重新赋值的特性, 使变量随程序的循环自动增加并 计算,实现加工过程的自动循环, 计算,实现加工过程的自动循环, 使之

自动计算出整个曲线无数个 密集坐标值, 密集坐标值,从而用很短的直线 或圆弧线逼近理想的轮廓曲线。 或圆弧线逼近理想的轮廓曲线。 用 户 宏 程 序 编 程13

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程14

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

3.变量与赋值 3.变量与赋值(1)变量表示法 用一个可赋值的代号“# ”(i=1,2,3……)来代替具体的 用一个可赋值的代号“#i”(i=1,2,3……)来代替具体的 坐标值或数据,这个代号“# 坐标值或数据,这个代号“#i” 就称为变量。 变量用变量符号“# 变量用变量符号“#”(变量的标志)和后续数值(变 量的标号)来表示,如#5,#21等,其后续数值不允许 量的标号)来表示,如#5,#21等,其后续数值不允许 用 户 宏 程 序 编 程 带小数点。 变量可以在宏程序体中使用,宏程序体中可以含有复杂 的表达式,并完成很复杂的计算。而普通加工程序直接 用G或数值编写,如“G00 X50 Z50”,而用户在编写 或数值编写,如“G00 Z50”,而用户在编写 宏程序时,数值可以直接指定或用变量指定,如“G00 宏程序时,数值可以直接指定或用变量指定,如“G00 X[#1+#1]F#3”15

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程16

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程17

数 控 加 工 编 程 及 操 作单 元 宏 下午1时 分 下午 时38分

用 户 宏 程 序 编 程18

数 控 加 工 编 程 及 操 作单 元 宏

宏程序零件编制实例1.抛物线宏程序的应用 1.抛物线宏程序的应用 如图所示。已知前端椭 圆的方程为抛物线,Z=圆的方程为抛物线,Z=X2/24.2。 X2/24.2。 设X轴步距为0.06,原始 轴步距为0.06,原始 毛坯为Φ30 70,T01为 毛坯为Φ30×70,T01为 Φ30× 粗车刀,T02为精车刀, 粗车刀,T02为精车刀, 各部分尺寸见图1 各部分尺寸见图1,试编 写加工程序。 用 户 宏 程 序 编 程 计算抛物线线底的直径: 将Z=20代入,的直径为 Z=20代入,的直径为 Φ22mm。 Φ22mm。

下午1时 分 下午 时38分

数 控 加 工 编 程 及 操 作单 元 宏

方法一:调用子程序O0010 G00 X100 Z100 ; T0101 S800 M03; ; G40 X30; ; G00 G42 Z2; #60=30; 设定毛坯最大切削量; 设定毛坯最大切削量; WHILE #60 GE 0.75; 判定毛坯余量是否大于 判定毛坯余量是否大于0.75 M98 P0009; 调用子程序 #60=#60-2.4;每次切削量单边为 每次切削量单边为1.2mm; 每次切削量单边为 ENDW; G00 G40 X100 Z100 ; M05; T0202;换2号精车刀; 号精车刀; 换 号精车刀 G40 X30 ; G00 G42 Z2; G01 Z0 F0.1; #60=0; 设定毛坯

切削量为 设定毛坯切削量为0 M98 P0009;调用子程序 调用子程序 ENDW; G00G40 X100 Z100; M30;

下午1时 分 下午 时38分

用 户 宏 程 序 编 程

数 控 加 工 编 程 及 操 作单 元 宏 O0009 #1=0; #1=0; #2=0; #2=0; WHILE #2 LE 20;判定z轴是否到终点 20;判定z #2=[#1]* #2=[#1]*[#1]/24.2; z轴变量 z轴变量 G01 X[#1+#60]Z[-[#2]] F0.2;抛物线插补; X[#1+#60]Z[F0.2;抛物线插补; #1=#1+0.06;设定x轴的步距为0.06; #1=#1+0.06;设定x轴的步距为0.06; ENDW; G01 W-5; WU3; W-10; U5; G00 Z0; M99; 下午1时 分 下午 时38分

用 户 宏 程 序 编 程

本文来源:https://www.bwwdw.com/article/f63j.html

Top