1. 数控铣削宏程序
数控铣削加工宏程序的编制与应用
在数控编程中,宏程序编程灵活、高效、快捷。宏程序不仅可以实现象子程序那样,对编制相同加工操作的程序非常有用,还可以完成子程序无法实现的特殊功能,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。
一、FANUC宏程序的理论基础
(一)FANUC宏程序的构成
1)包含变量
2)包含算术或逻辑运算(=)的程序段
3)包含控制语句(例如:GOTO,DO,END)的程序段
4)包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段
(二)FANUC宏程序的变量
FANUC数控系统变量表示形式为# 后跟1~4位数字,变量有四种:
1、FANUC宏程序的变量Ⅰ
变量号
变量类型
功能
#0
空变量该变量总是空
没有任何值能赋给该变量
2、FANUC宏程序的变量Ⅱ
变量号
变量类型
功能
#1——#33
局部变量
局部变量只能用在宏程序中存储数据,例如运算结果。当断电时局部变量被初始化为空,调用宏程序时自变量对局部变量赋值。
3、FANUC宏程序的变量Ⅲ
变量号
变量类型
功能
#100—#199
#500—#999
公共变量
公共变量在不同的宏程序中的意义相同当断电时变量#100 #199初始化为空变量
#500 #999 的数据保存即使断电也不丢失
4、FANUC宏程序的变量Ⅳ
变量号
变量类型
功能
#1000——
系统变量
系统变量用于读和写CNC 运行时各种数据的变化例如刀具的当前位置和补偿值等
(三)刀具补偿存储器C用G10指令进行设定
H代码的几何补偿值
G10L10P R ;
D代码的几何补偿值
G10L12P R ;
H代码的磨损补偿值
G10L11P R ;
D代码的磨损补偿值
G10L13P R ;
P:刀具补偿号
R:绝对值指令(G90)方式时的刀具补偿值。增量值指令(G91)方式时的刀具补偿值为该值与指定的刀具补偿号的值相加。
用G10改变工件坐标系零点偏移值
格式:G10L12PpIP ;
P=0:外部工件零点偏移值
P=1:工件坐标系G54的零点偏移值
P=2:工件坐标系G55的零点偏移值
P=3:工件坐标系G56的零点偏移值
P=4:工件坐标系G57的零点偏移值
P=5:工件坐标系G58的零点偏移值
P=5:工件坐标系G59的零点偏移值
IP: 对于绝对值指令(G90),为每个轴的工件零点偏移值。
对于增量值指令(G91),为每个轴加到设定的工件零点偏移值。
(四)FANUC宏程序运算符Ⅰ
1、FANUC宏程序运算符Ⅰ
功能
格式
备注
定义
#i=#j
加法
#i=#j+#k
减法
#i =#j- #k
乘法
#i =#j*#k
除法
#i=#j/#k
2、FANUC宏程序运算符Ⅱ
功能
格式
备注
正弦
#i=SIN[#j]
角度以度指定,如90º30’表示为90.5度
反正弦
#i=ASIN[#j]
余弦
#i=COS[#j]
反余弦
#i=ACOS[#j]
正切
#i=TAN[#j]
反正切
#i=ATAN[#j]
3、FANUC宏程序运算符Ⅲ
功能
格式
备注
平方根
#i=SQRT[#j]
绝对值
#i=ABS[#j]
舍入
#i=ROUND[#j]
上取整
#i=FIX[#j]
下取整
#i=FUP[#j]
自然对数
#i=LN[#j]
指数函数
#i=EXP[#j]
4、FANUC宏程序运算符Ⅳ
功能
格式
备注
或
#i=#j OR #k
逻辑运算一位一位的按二进制数执行
异或
#i=#j XOR #k
与
#i=#j AND #k
从BCD转为BIN
#i=BIN[#j]
用于与PMC的信号交换
从BIN转为BCD
#i=BCD[#j]
(五)FANUC宏程序的转移和循环
1、FANUC宏程序的转移和循环Ⅰ
无条件转移:GOTOn
(n为顺序号,1——99999)
例:GOTO10为转移到N10程序段
2、FANUC宏程序的转移和循环Ⅱ
条件转移:(IF语句)
IF [条件表达式] GOTOn
当指定的条件表达式满足时,转移到标有顺序号n的程序段,如果指定的条件表达式不满足时,执行下个程序段
3、FANUC宏程序的转移和循环Ⅲ
条件转移:(IF语句)
IF [条件表达式] GOTOn
如果变量#1的值大于10,转移到顺序号N20的程序段。
如果条件不满足 IF [#1 GT 10] GOTO 2
如果条件满足
程 序
程程序序
N20 G00 G90 X100. Y20.
:
4、FANUC宏程序的转移和循环Ⅳ
IF [条件表达式] THEN
当指定的条件表达式满足时,执行预先决定的宏程序语句。
例:IF [#1EQ #2] THEN #3=0;
(六)FANUC宏程序的循环
FANUC宏程序循环Ⅰ
WHILE [条件表达式] Dom;
(m=1,2,3)
条件不满足 条件满足
ENDm
注:循环允许嵌套,最多3层,但不允许交叉;
FANUC宏程序循环Ⅱ
FANUC宏程序循环Ⅲ
(七)FANUC宏程序的条件表达式运算符
运算符
含义
EQ
等于
NE
不等于
GT
大于
GE
大于或等于
LT
小于
LE
小于或等于
(九)FANUC宏程序的调用Ⅰ
FANUC宏程序的调用Ⅰ
非模态调用G65:
格式: G65PpLl<自变量指定>
其中
p:要调用的程序号
L:调用次数(默认为1)
自变量:数据传递到宏程序
FANUC宏程序的调用Ⅱ
模态调用(G66):
G66PpLl<自变量指定>;
程序点
G67;(取消模态)
其中
p:要调用的程序号
L:调用次数(默认为1)
自变量:数据传递到宏程序
(十)FANUC宏程序的自变量指定
1、FANUC宏程序的自变量指定I
地址
变量
地址
变量
地址
变量
A
#1
I
#4
T
#20
B
#2
J
#5
U
#21
C
#3
K
#6
V
#22
D
#7
M
#13
W
#23
E
#8
Q
#17
X
#24
F
#9
R
#18
Y
#25
H
#11
S
#19
Z
#26
2、FANUC宏程序的调用II
地址
变量
地址
变量
地址
变量
A
#1
K3
#12
J7
#23
B
#2
I4
#13
K7
#24
C
J4
#14
I8
#25
I
#4
K4
#15
J8
#26
J
#5
I5
#16
K8
#27
K
#6
J5
#17
I9
#28
I2
#7
K5
#18
J9
#29
J2
#8
I6
#19
K9
#30
K2
#9
J6
#20
I10
#31
I3
#10
K6
#21
J10
#32
J3
#11
I7
#22
K10
#33
二、FANUC宏程序的应用
(一)宏程序示例(铣圆)
#1=圆心坐标X值
#2=圆心坐标Y值
#3=园孔最终Z值
#4=圆孔直径
#5=刀具直径
#6=[#4+#5]/4 (进刀半径)
#7= #3+50 (进刀高度)
#8= [#1+#4]/2-#6(进刀圆弧起点X值)
#9 = #2 - #6 (进刀圆弧起点Y值)
#10= #1+#4/2 (铣圆起点X值)
#11= -#4/2 (I矢量)
#12= #2+#6(退刀圆弧Y值)
%
O100
M03S1000
G00G90G54G43H01Z100.
X#1Y#2
Z#7
G01Z#3 F100
G41D02X#8Y#9
G03X#10Y#2R#6
G03X#10Y#2I#11J0
G03X#8Y#12R#6
G01G40X#1Y#2
G00Z100.
M30
%
(二)宏程序示例(铣半圆球)
自上而下等角度水平圆弧环绕球面精加工
#1=(A)球面的圆弧半径
#2=(B)球头铣刀刀具半径
#3=(C)球面的起始角度
#4= (I)球面的终止角度,#4≤90°
#17=(Q)Z坐标每次递减量
#24=(X)球心坐标X值
#25=(Y)球心坐标Y值
#26=(Z)球心坐标Z值
%
O200
M03S1000
G00G90G541Z100.
G00X0Y0
G65P1912X Y Z A B C I Q
M30
%
O1912 (宏程序)
G52X#24Y#25Z#26
G00X0Y0Z[#1+30]
#12=#1+#2
WHILE [#3LT#4]DO1
#5 = #12*COS[#3]
#6 = #12*SIN[#3]
X[#5+#2] Y#2
G03X#5Y0R#2F1000
G02 I-#5
G03X[#5+#2]Y-#2R#2
G00Z[#7+1]
Y#2
#3 = #3 + #17
END 1
GOO Z[#1+30]
G52 X0 Y0 Z0
M99
%
注释说明
(主程序)
调用宏程序O1912
(空格处为变量赋值)
在球心处建立局部坐标
球心与刀心连线距离
如果#3<#4,循环1继续
任意角度刀心X坐标值
任意角度刀心Y坐标值
G00定位于下刀点
圆弧进刀
沿球面切削
圆弧退刀
提刀1
移到进刀点
角度#3每次递增#17
循环1结束
提刀
恢复G54坐标
宏程序结束返回
(三) 宏程序示例Ⅰ
采用Φ20R4铣刀加工SR30的球,已知球心坐标为(X0Y0Z-5.)
宏程序示例Ⅱ
1、分析:铣球程序一般采用自动编程来实现,但是,利用宏程序强大的功能同样也可以实现,而且程序更加简洁。
2、编程思路:
铣球可以认为是多个铣圆的组合。
3、排刀分布:
有两种方案,一是按Z向分布,二是按圆心角分布。从保证表面质量来看,最佳方案为按圆心角分布。
圆弧起点计算,从X正向开始起刀。
刀具根部R4的圆心在XZ平面的运动轨迹为与R30等距的圆R34(见图示中红色轨迹),刀尖点上4mm处的轨迹(即褐色轨迹)为红色轨迹沿X正向平移6毫米,刀尖点坐标为褐色轨迹沿Z轴向下平移4mm(即绿色轨迹)。
起始角度=ARCSIN((5+4)/34)=15.349º
起始位置X值=34*COS(15.349)+6=38.787
起始位置Z值=0 (通用表达式=34*sin(15.349)-5-4)
4、变量定义:
#1为圆心角,范围由(15.349,90)
#2为刀尖中心X值,#2=34*COS[#1]+6
#3为刀尖中心Z值,#3=34*SIN[#1]-5-4
%
O300
M03S3000;
G00G90G54Z100.;
#1=15.349
X50.Y0;
Z10.;
WHILE[#1 LE 90] DO1;
#2=34*COS[#1]+6;
#3=34*SIN[#1]-5-4;
G01Z#3F900;
X#2;
G02X#2Y0I-#2J0;
#1=#1+1;
END1;
G00Z100.;
M30;
%
(四)宏程序示例II
用Φ20R10铣刀加工轮廓处R5圆角
下面为铣外形的一段程序,采用刀具半径补偿
G00X2.5Y26.664
G01G41D01X-8.991Y2.023
G03X2.5Y-3.336I11.491J9.641
X32.969Y-.208I0.J150.
G02X44.955Y-10.952I2.031J-9.792
G03Y-49.048I199.09J-19.048
G02X33.452Y-59.88I-9.955J-.952
G03X-28.452I-30.952J-197.59
G02X-39.922Y-48.75I-1.548J9.88
G03Y-11.25I-148.823J18.75
G02X-27.969Y-.208I9.922J1.25
G03X2.5Y-3.336I30.469J146.872
X13.991Y2.023I0.J15.
G40G01X2.5Y26.664
编程思路:
利用G10指令修改刀具半径偏置值来实现倒圆角。
G10格式为G10L12P1R ,其中,P1表示修改D01,R后为刀具半径偏置值。
设定倒角的圆心角为变量#1,取值范围为0-90º
设定#2为刀具半径偏置值,取值=COS[#1]*15-5
设定#3为Z值,取值=SIN[#1]*[5+10]-5-10
%
O400
M03S3000
G00G90G54Z100.
#1=0
X2.5Y26.64
Z5.
WHILE [#1 LE 90] DO1
#2= COS[#1]*15-5
#3= SIN[#1]
*[5+10]-5-10
G10L12P1R#2
G01Z#3F900
G00X2.5Y26.664
G01G41D01X-8.991Y2.023
G03X2.5Y-3.336I11.491J9.641
X32.969Y-.208I0.J150.
G02X44.955Y-10.952I2.031
J-9.792
G03Y-49.048I199.09J-19.048
G02X33.452Y-59.88I-9.955J-.952
G03X-28.452I-30.952J-197.59
G02X-39.922Y-48.75I-1.548J9.88
G03Y-11.25I-148.823J18.75
G02X-27.969Y-.208I9.922J1.25
G03X2.5Y-3.336I30.469J146.87
X13.991Y2.023I0.J15.
G40G01X2.5Y26.664
#1=#1+5
END1
G00Z100.
M30
%
三、小结
随着现代制造技术的发展和数控机床的日益普及,数控加工得到广泛应用。对于加工形状简单的零件,计算比较简单,程序不多,采用手工编程较容易完成。因此,在点定位加工及由直线与圆弧组成的轮廓加工中,手工编程仍广泛应用。但对于形状复杂的零件,特别是具有非圆曲线、列表曲线及曲面的零件,用一般的手工编程就有一定的困难,且出错机率大,有的甚至无法编出程序。在CAD/CAM软件普遍应用的今天,手工编程的应用空间日趋缩小。但手工编程是自动编程的基础。宏程序的运用,其最大的特点就是将有规律的形状或尺寸用最短的程序段表示出来,具有极好的易读性和易修改性。
2. 加工中心宏程序铣圆详解
G02G90I#5Z-#1F200(顺时针转一圈,同时z值下降0.5,刀路半径是8)
IF[#1GE#3]GOTO2(如果#1大于等于8,则程序跳转到n2)
#1=#1+#2(新的#1值等于老#1加上0.5)
IF[#1LT#3]GOTO1如果#1小于8则程序回到n1
#1=#3
GOTO1这两段程序根本不会走,不知道这是个什么意思,你这程序有问题啊 ,n1到n2走完会在中间留下一个直径8深度8的圆柱,难道你后面一刀把它铣掉?
3. 加工中心怎么用宏程序编凹圆球 球半径是20 用R3的球头刀从上往下铣
不需要宏程序也能铣的,只要改变平面做圆弧就行,比如在G18或者G19平面,
用宏一层一层往下铣的话用勾股定律就行,A*A+B*B=C*C
4. 西门子840d铣床用宏程序编写一个长1米宽200MM,圆弧R180的程序怎么写,那位大哥会请教下小弟吧,谢谢!
西门子中唯一提到带宏字眼的就是宏指令 格式为define 名称 as 所用到的g功能或者m功能或者子程序或者变量等等
你说的应该宴陆是变量的应用,复杂的就不说了最简单的r参数你可以学学 细讲不好讲很多书中都有介绍的 r1=r2+r3如果这一句你看不懂就在学学数学基础吧 还有最拦并常用的跳转if 条件 goto 目标简祥迹
5. 加工中心手工编程内洗圆弧怎么编程,举例说明,谢谢
1、原理和圆规画圆差不多,把圆规张开(圆半径),针插在圆心,笔头从起点转到终点。
2、机床画圆是先移动到起点(笔头的纤岩起点)G1 x..y..
3、然后给出铣圆的R值,也就圆心到起点的距离,程序是G2(或G3) i..(或是J..圆规张开距离) X..Y..(笔头结束的位置)。
4、i和J是对应铣圆的方向,i对应X方向,J对应Y方向。
5、例:以X轴往负方向铣个直径10的半圆:
(1)G1 X0 Y0:
(2)G3i-5. X-10. Y0:
(5)如何用宏程序在圆上铣圆弧扩展阅读
具体步骤
数控手工编程的主要内容包括分析零件图样、确定加工过程、数学处理、编写程序清单、程序检查、输入程序和工件试切。
1、分析零件图样和工艺处理
首先根据图纸对零件的几何形状尺寸、技术要求进行分析,明确加工内容,决定加工方案、加工顺序,设计夹具,选择刀具、确定合理的走刀路线和切削用量等。同时还应充分发挥数控系统的性能,正确选择对刀点及进刀方式,尽量减少加工辅助时间。
2、数学处理
(1)编程前根据零件的几何特征,建立一个工件坐标系,根据图纸要求制定加工路线,在工件坐标系上计算出刀具的运动轨迹。对于形状比较简单的零件(如直线和圆弧组成的零件),只需计算出几何元素的起点、终点、圆弧的圆心、两几何元素的交点或切点的坐标值。
(2)对于形状复杂的零件(如非圆曲线、曲面组成的零件),数控系统的判凳插补功能不能满足零件的几何形状时,必须计算出曲面或曲线上一定数量的离散点,点与点之间用直线或圆弧逼近,根据要求的精度计算出节点间的距离。
3、编写零件程序单
加工路线和工艺参数确定以后,根据数控系统规定的指令代码及程序段格式,逐段编写零件程序。
4、程序输入
以前的数控机床的程序输入一般使用穿孔纸带,穿孔纸带上的程序代码通过纸带阅读装置送入数控系统。现代数控机床主要利用键盘将程序输入计算机中;通信控制的数控机床,程序可以由计算机接口传送。
5、程序校验与首件试切
(1)程序清单必须经过校验和试切才能正式使用。校验的方法是将程序内容输入到数控装置中,机床空刀运转,若是平面工件,可以用笔代刀,以坐标纸代替工件,画出加工路线,毁冲御以检查机床的运动轨迹是否正确。若数控机床有图形显示功能,可以采用模拟刀具切削过程的方法进行检验。
(2)但这些过程只能检验出运动是否正确,不能检查被加工零件的精度,因此必须进行零件的首件试切。首次试切时,应该以单程序段的运行方式进行加工,监视加工状况,调整切削参数和状态。
6. 西门子840d系统 落地式镗铣床用宏程序铣球形圆弧
看到这回答我才知道什么叫天外有天,时间过了这么久,但不说就是对你不负责任。
假设这个图是一个直径100的孔和一个长100宽60拐角是R10的圆弧角的长方形,圆心到长方形的一条长边距离160,主程序跑坐标子程序加工。下面用最简单的宏程序说明一下:
零点放直径100圆心,用直径20刀,铣100圆和R10的圆弧角省换刀。此为一刀切,子程也没功夫编。
G54G64G90G0Z50
R1=100/2-10 R2=60/2-10 R3=1
S500M03F1000
AA:
X0Y0
Z=R3
L1 调用子程序
G0Z50 提刀至安全高度
TRANS X190 坐标系绝对平移,坐标轴X有效
X0 X轴重定位,用G111也可以。
Z1
L2 子程序加工长方形
G0Z50
M30 程序结束
7. 加工中心分层铣圆用宏程序怎么编程
关于宏程序编程拍森,步骤细致复杂,要对宏程序有相当的了解。
举一个例题如下:
1、例如加工一个长半轴30,短半轴20一个椭圆,椭圆不是圆弧,所以我们不能用圆弧的方式来加椭圆,这里我们用一小段一小段的直线来拼接这个椭圆。
8. 加工中心铣整圆弧怎么编程
1、圆弧插补指令:
G02顺时针圆弧插补:沿着刀具进给穗茄路径,圆弧段为顺时针。
G03逆时针圆弧插补:沿着刀具进给路径,圆弧段位逆时针。
2、圆弧半径编程
格式:G02/G03X_Y_Z_R_F;
移到圆弧初始点;
G02/G03+圆弧终点坐标+R圆弧半径。(圆弧<或=半圆用+R;大于半圆(180度)小于整圆(360度)用-R。圆弧半径R编程不能用于整圆加工。)
数控编程的优缺点:
1、优点
主要用于点位加工(如钻、铰孔)或几何形状简单(如平面、方形槽)零件的加工,计算量小,程序段数有限,编程直观弊陵易于实现的情况等。
2、缺点
对猜卜察于具有空间自由曲面、复杂型腔的零件,刀具轨迹数据计算相当繁琐,工作量大,极易出错,且很难校对,有些甚至根本无法完成。
9. 加工中心G01铣圆弧
可以个屁,G01是直线插补,怎么能用在圆富上呢?用G02或G03再配合R,J,I圆心坐标使用。
10. 用宏程序铣 圆弧槽
G41D50;
G01X-300Y-50;
G03X300Y-50R600;